# 组件说明文档

## 已完成的组件

### 1. Sidebar 组件
**文件**: `components/Sidebar.tsx`

左侧导航栏，包含：
- Logo 展示
- 7个导航菜单项（Assets, ALP, Swap, Lending, Transparency, Ecosystem, Points）
- Global TVL 信息卡片
- FAQs 链接
- 激活状态管理

**使用示例**:
```tsx
import Sidebar from "@/components/Sidebar";
<Sidebar />
```

---

### 2. NavItem 组件
**文件**: `components/NavItem.tsx`

可复用的导航项组件，支持：
- 图标展示
- 文本标签
- 激活/未激活状态
- 点击事件处理

**Props**:
- `icon`: 图标路径
- `label`: 显示文本
- `isActive`: 是否激活
- `onClick`: 点击回调函数

---

### 3. TopBar 组件
**文件**: `components/TopBar.tsx`

顶部导航栏，包含：
- 面包屑导航（ASSETX > Product > Detail）
- 钱包按钮
- 地址按钮（0x12...4F82）

**使用示例**:
```tsx
import TopBar from "@/components/TopBar";
<TopBar />
```

---

### 4. Breadcrumb 组件
**文件**: `components/Breadcrumb.tsx`

面包屑导航组件，支持：
- 多级导航展示
- 自动添加分隔符（>）
- 最后一项高亮显示

**Props**:
```typescript
interface BreadcrumbItem {
  label: string;
  href?: string;
}

interface BreadcrumbProps {
  items: BreadcrumbItem[];
}
```

**使用示例**:
```tsx
import Breadcrumb from "@/components/Breadcrumb";

const items = [
  { label: "ASSETX" },
  { label: "Product" },
  { label: "Detail" }
];

<Breadcrumb items={items} />
```

---

### 5. TabNavigation 组件
**文件**: `components/TabNavigation.tsx`

标签页导航组件，支持：
- 多个标签切换
- 激活状态下划线
- 点击事件回调
- 默认激活标签设置

**Props**:
```typescript
interface Tab {
  id: string;
  label: string;
}

interface TabNavigationProps {
  tabs: Tab[];
  defaultActiveId?: string;
  onTabChange?: (tabId: string) => void;
}
```

**使用示例**:
```tsx
import TabNavigation from "@/components/TabNavigation";

const tabs = [
  { id: "overview", label: "Overview" },
  { id: "description", label: "Asset Description" },
  { id: "analytics", label: "Analytics" },
];

<TabNavigation
  tabs={tabs}
  defaultActiveId="overview"
  onTabChange={(tabId) => console.log(tabId)}
/>
```

---

### 6. ContentSection 组件
**文件**: `components/ContentSection.tsx`

内容区域容器组件，包含：
- TabNavigation 集成
- 内容展示区域
- 标签状态管理

**使用示例**:
```tsx
import ContentSection from "@/components/ContentSection";
<ContentSection />
```

---

## 组件依赖关系

```
page.tsx
├── Sidebar
│   └── NavItem (多个)
├── TopBar
│   └── Breadcrumb
└── ContentSection
    └── TabNavigation
```

## 样式系统

所有组件使用 Tailwind CSS，自定义颜色：

```typescript
// tailwind.config.ts
colors: {
  'bg-subtle': '#f9fafb',
  'bg-surface': '#ffffff',
  'border-normal': '#e5e7eb',
  'border-gray': '#f3f4f6',
  'text-primary': '#111827',
  'text-tertiary': '#9ca1af',
  'fill-secondary-click': '#f3f4f6',
}
```

## 状态管理

当前使用 React Hooks 进行本地状态管理：
- `Sidebar`: 使用 `useState` 管理激活菜单项
- `TabNavigation`: 使用 `useState` 管理激活标签
- 所有组件都是客户端组件（"use client"）

## 图标资源

所有图标位于 `public/` 目录：
- `logo.svg` - ASSETX Logo
- `icon-assets.svg` - Assets 图标
- `icon-alp.svg` - ALP 图标
- `icon-swap.svg` - Swap 图标
- `icon-lending.svg` - Lending 图标
- `icon-transparency.svg` - Transparency 图标
- `icon-ecosystem.svg` - Ecosystem 图标
- `icon-points.svg` - Points 图标
- `icon-chevron-right.svg` - 面包屑箭头
- `icon-wallet.svg` - 钱包图标
- `icon-notification.svg` - 通知图标
- `icon-copy.svg` - 复制图标
- `icon-faq.png` - FAQ 图标
