mirror of
https://github.com/AmintaCCCP/GithubStarsManager.git
synced 2025-11-25 02:34:54 +08:00
2.5 KiB
2.5 KiB
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 列表只显示包含匹配关键词的文件
- 支持多个过滤器同时激活
- 提供清除所有筛选的快捷操作
技术实现
新增组件
- FilterModal: 过滤器编辑弹窗
- AssetFilterManager: 过滤器管理组件
- Modal: 通用弹窗组件
数据结构更新
interface AssetFilter {
id: string;
name: string;
keywords: string[];
}
Store 更新
- 添加
assetFilters状态 - 添加过滤器的增删改查操作
- 持久化过滤器配置
UI 改进
- 移除平台图标显示
- 优化下拉列表布局
- 增强文件信息展示
- 改进交互体验
使用示例
创建 macOS 过滤器
- 点击"新建过滤器"按钮
- 输入名称: "macOS"
- 添加关键词: "mac", "dmg", "darwin"
- 点击"创建"
使用过滤器
- 在过滤器列表中点击"macOS"
- Release 列表自动筛选,只显示包含 macOS 相关文件的 Release
- 点击文件名直接下载
这个更新让用户能够更灵活地筛选和下载所需的文件,提供了更好的用户体验。