Files
GithubStarsManager/RELEASE_FILTER_FEATURE.md
AmintaCCCP 277c340fbf 0.1.1
2025-07-29 17:40:55 +08:00

2.5 KiB
Raw Permalink Blame History

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: 通用弹窗组件

数据结构更新

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. 点击文件名直接下载

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