From ce423bd90b71b9c49a3b07e065ed460549d8a935 Mon Sep 17 00:00:00 2001 From: hailin Date: Thu, 2 Jul 2026 15:52:23 +0800 Subject: [PATCH] style: elevate enterprise admin visual foundation --- frontend/src/components/app/AppFilterBar.tsx | 12 +++++--- frontend/src/components/app/AppPage.tsx | 4 +-- frontend/src/components/app/AppPageHeader.tsx | 17 ++++++----- frontend/src/components/app/AppSection.tsx | 4 +-- frontend/src/components/app/AppSidebar.tsx | 29 ++++++++++++------- frontend/src/components/app/AppTopbar.tsx | 12 ++++---- frontend/src/components/ui/card.tsx | 2 +- .../src/features/tickets/TicketFilterBar.tsx | 2 +- .../features/tickets/TicketMetricCards.tsx | 22 +++++++------- frontend/src/styles/globals.css | 26 ++++++++--------- frontend/tailwind.config.ts | 13 ++++++++- 11 files changed, 85 insertions(+), 58 deletions(-) diff --git a/frontend/src/components/app/AppFilterBar.tsx b/frontend/src/components/app/AppFilterBar.tsx index 697fea7..4fe13cc 100644 --- a/frontend/src/components/app/AppFilterBar.tsx +++ b/frontend/src/components/app/AppFilterBar.tsx @@ -1,5 +1,7 @@ import type * as React from 'react' +import { Card, CardContent } from '@/components/ui/card' + type AppFilterBarProps = { children: React.ReactNode actions?: React.ReactNode @@ -7,9 +9,11 @@ type AppFilterBarProps = { export function AppFilterBar({ children, actions }: AppFilterBarProps) { return ( -
-
{children}
- {actions ?
{actions}
: null} -
+ + +
{children}
+ {actions ?
{actions}
: null} +
+
) } diff --git a/frontend/src/components/app/AppPage.tsx b/frontend/src/components/app/AppPage.tsx index 96ec379..1e95d3b 100644 --- a/frontend/src/components/app/AppPage.tsx +++ b/frontend/src/components/app/AppPage.tsx @@ -16,8 +16,8 @@ const maxWidthClass: Record, string> = { export function AppPage({ children, className, contentClassName, maxWidth = '7xl' }: AppPageProps) { return ( -
-
+
+
{children}
diff --git a/frontend/src/components/app/AppPageHeader.tsx b/frontend/src/components/app/AppPageHeader.tsx index 2eee90f..329c010 100644 --- a/frontend/src/components/app/AppPageHeader.tsx +++ b/frontend/src/components/app/AppPageHeader.tsx @@ -9,15 +9,18 @@ type AppPageHeaderProps = { export function AppPageHeader({ title, description, meta, actions }: AppPageHeaderProps) { return ( -
-
-
-

{title}

- {meta} +
+
+
+
+
+

{title}

+ {meta} +
+ {description ?

{description}

: null}
- {description ?

{description}

: null} + {actions ?
{actions}
: null}
- {actions ?
{actions}
: null}
) } diff --git a/frontend/src/components/app/AppSection.tsx b/frontend/src/components/app/AppSection.tsx index 567d65c..8ccb6cd 100644 --- a/frontend/src/components/app/AppSection.tsx +++ b/frontend/src/components/app/AppSection.tsx @@ -12,14 +12,14 @@ type AppSectionProps = { export function AppSection({ title, description, action, children }: AppSectionProps) { return ( - +
{title} {description ? {description} : null}
{action}
- {children} + {children}
) } diff --git a/frontend/src/components/app/AppSidebar.tsx b/frontend/src/components/app/AppSidebar.tsx index b26fcc5..bd34ca8 100644 --- a/frontend/src/components/app/AppSidebar.tsx +++ b/frontend/src/components/app/AppSidebar.tsx @@ -65,9 +65,16 @@ type SidebarNavContentProps = { function SidebarBrand() { return ( -
-

AI 工单平台

-

企业技术支持工作台

+
+
+
+ +
+
+

AI 工单平台

+

企业服务治理中台

+
+
) } @@ -77,7 +84,7 @@ function SidebarNavContent({ groups, currentHash, onNavigate }: SidebarNavConten