# Release 下载功能更新

## 功能概述

根据用户需求，我们对 Release 下载功能进行了以下更新：

### 1. 下拉列表显示所有 Assets
- 下拉列表现在显示 GitHub Release 页面的所有 Assets
- 文件名与 GitHub Assets 的文件名完全一致
- 不再区分平台，显示所有可用文件

### 2. 详细文件信息
下拉列表中每个文件显示：
- **文件名**: 与 GitHub Assets 完全一致
- **文件大小**: 格式化显示（B, KB, MB, GB）
- **更新时间**: 相对时间显示（如 "2 days ago"）
- **下载次数**: 显示该文件的下载统计

### 3. 点击下载
- 整个文件名区域都可以点击
- 点击后直接触发下载，打开新标签页
- 支持鼠标悬停效果，提升用户体验

### 4. 自定义过滤器系统
替换原有的平台筛选，改为更灵活的自定义过滤器：

#### 过滤器管理
- **新建过滤器**: 用户可以创建自定义过滤器
- **编辑过滤器**: 修改现有过滤器的名称和关键词
- **删除过滤器**: 删除不需要的过滤器
- **弹窗操作**: 新增和修改都使用弹窗方式

#### 过滤器配置
- **过滤器名称**: 如 "macOS", "Windows", "Linux" 等
- **关键词匹配**: 支持多个关键词，如：
  - macOS 过滤器: ["mac", "dmg", "darwin"]
  - Windows 过滤器: ["win", "exe", "msi"]
  - Linux 过滤器: ["linux", "deb", "rpm", "appimage"]

#### 过滤器使用
- 点击过滤器名称激活/取消激活
- 激活后，Release 列表只显示包含匹配关键词的文件
- 支持多个过滤器同时激活
- 提供清除所有筛选的快捷操作

## 技术实现

### 新增组件
1. **FilterModal**: 过滤器编辑弹窗
2. **AssetFilterManager**: 过滤器管理组件
3. **Modal**: 通用弹窗组件

### 数据结构更新
```typescript
interface AssetFilter {
  id: string;
  name: string;
  keywords: string[];
}
```

### Store 更新
- 添加 `assetFilters` 状态
- 添加过滤器的增删改查操作
- 持久化过滤器配置

### UI 改进
- 移除平台图标显示
- 优化下拉列表布局
- 增强文件信息展示
- 改进交互体验

## 使用示例

### 创建 macOS 过滤器
1. 点击"新建过滤器"按钮
2. 输入名称: "macOS"
3. 添加关键词: "mac", "dmg", "darwin"
4. 点击"创建"

### 使用过滤器
1. 在过滤器列表中点击"macOS"
2. Release 列表自动筛选，只显示包含 macOS 相关文件的 Release
3. 点击文件名直接下载

这个更新让用户能够更灵活地筛选和下载所需的文件，提供了更好的用户体验。