Skip to content

Releases: mqflive/syncpan-release

SyncPan v0.0.19

Choose a tag to compare

@mqflive mqflive released this 05 Jul 15:13

[0.0.19] - 2026-07-05

新增

  • 官网网站:新增 Next.js 官网(首页 / 下载 / 功能特性 / 定价 / 更新日志 / 免责声明),下载页支持 GitHub API + jsdelivr 自动获取最新版本
  • 平台切换+账号选择统一化:新增 PlatformAccountSwitcher 组件,文件浏览器、批量工具等页面统一平台/账号选择器,新增 pageAccountStore 全局状态管理
  • LAN 服务器批量命令扩展lan_server/misc.rs 新增广告插入/清理、批量转存/分享/重命名、链接转换、扫码登录等批量命令(+1290 行),覆盖所有批量工具的 LAN 调用
  • 更新时间选择器:新增 AirTimePicker 自定义控件,支持每日/每周频率选择 + 时/分弹窗选择,自动滚动到选中时间
  • 新增 hooksusePageAccount(页面账号管理)、useElapsedTimer(计时器)、useClickOutside(点击外部关闭)
  • 新增工具函数delay-mode-utils.ts(延迟模式计算)、event-listener-manager.ts(事件监听管理)、format.ts(格式化工具)
  • TMDB 双 API 容灾tmdb.rs 内置多域名 fallback,主域名不可用时自动切换备用域名

变更

  • 聚合任务弹窗重构AggregateTaskDialog 全面重构(+558/-498 行),重新布局双列配置区,优化交互流程
  • 聚合任务子组件重构ScheduleConfigPanelGroupPanelDeadlinePickerTmdbSearchButtonuseAggregateTaskForm 拆分重构,AirTimePicker 自定义样式
  • 移除设置页重复的功能配置区:删除 AdCleanSectionAdInsertSectionBatchRenameSectionBatchShareSectionRateLimiterSection 五个冗余设置子页面(共 -445 行),功能配置已内联到各自操作页
  • 存储模块重构storage/mod.rs 大幅重写(+195 行),优化数据存储架构
  • 文件浏览器重构FileBrowserPage.tsx + 子组件统一平台/账号选择逻辑,提取 AccountSelector 公共组件
  • 侧边栏导航重构Sidebar.tsx 按「核心功能/批量工具」分组,新增账号管理入口
  • Store 状态管理简化:各功能 store 移除重复的配置引用,优化类型定义
  • 加密模块优化crypto.rs 重构加解密逻辑
  • 全局样式微调globals.css 暗色模式优化
  • 任务页面工具栏重构TasksToolbar 组件拆分优化

修复

  • 批量转存/分享/重命名各页面的 UI 一致性修复
  • 文件浏览器暗色模式预览框样式修复
  • 各项配置面板边界 case 处理

移除

  • AdCleanSectionAdInsertSectionBatchRenameSectionBatchShareSectionRateLimiterSection 五个设置页子组件

SyncPan v0.0.18

Choose a tag to compare

@mqflive mqflive released this 28 Jun 15:51

[0.0.18] - 2026-06-28

新增

  • 统一防风控策略面板:设置页新增 RiskControlSection 组件,集中管理广告插入/清理、批量转存、链接转换、批量重命名、批量分享共 6 个功能模块的风控延迟 + 全局风控策略
  • 批量操作独立延迟模式:批量分享/批量重命名新增 delay_mode 参数,支持 Fast / Moderate / Conservative 三档随机延迟,含连续失败自动退避机制
  • 批量转存/链接转换自定义参数:预设模式支持展开高级参数面板,可独立调整单次间隔、小批次暂停、大批次暂停、智能降速上限
  • 全局风控运行时配置update_settings 联动 RateLimiter,支持动态调整批次大小、批次暂停、夜间时段、夜间倍率等参数,即时生效无需重启
  • 设置页模块化组件:新增 AdCleanSectionBatchRenameSectionBatchShareSectionRateLimiterSection 独立设置区块组件

变更

  • 目录树生成增强:重构 generate_tree 后端逻辑,优化 TreeResultPanel 展示、GenerateTreePage 布局,扩展 generateTreeStore 状态管理和树节点类型定义
  • 前端组件大重构:ad-clean、ad-insert、batch-rename、batch-share、batch-transfer、link-convert、generate-tree、aggregate-tasks 共 8 个面板组件大幅精简,净减少约 1000 行代码
  • Store 状态管理重构batchRenameStorebatchShareStoreadCleanStore 重构,优化状态结构和事件流
  • GUI 全局样式统一globals.css 统一样式变量,优化 SidebarFileTableTasksToolbar 等公共组件交互
  • 后端清理:移除 quark client/service 冗余代码,优化 rate_limiter 逻辑
  • NSIS 安装脚本更新hooks.nsh 增强安装钩子逻辑

修复

  • ShareConfigPanel 小调整

移除

  • 夸克 client/service 中的冗余代码

SyncPan v0.0.17

Choose a tag to compare

@mqflive mqflive released this 21 Jun 15:52

[0.0.17] - 2026-06-21

新增

  • 广告插入功能:批量将广告文件插入目标目录树,支持普通/极速(turbo)模式、暂停/继续/取消,含风控延迟配置
  • 我的分享页面:查看百度/夸克上创建的所有分享链接,支持批量按页/天数/日期范围获取、排序、导出 CSV、缓存(IndexedDB)
  • 分享列表虚拟滚动:接入 @tanstack/react-virtual,行高 48px overscan=10,万级数据不卡
  • IndexedDB 缓存服务share-cache.ts 替代 localStorage,无容量限制,桌面端/浏览器模式通用,30 分钟 TTL 自动过期
  • 分享真实密码获取:百度 surlinfoinrecord 接口获取隐藏提取码,MyShareItem 新增 sign 字段
  • 批量转存实战页面:多链接批量转存(解析/开始/暂停/继续/停止/重试/状态查询),独立防风控
  • 链接转换实战页面:批量链接转换(开始/停止/暂停/继续),独立防风控
  • 广告清理功能:批量扫描→确认→删除网盘中的广告文件,支持暂停/继续/取消
  • 目录树生成:递归生成网盘目录结构树(树形/列表双模式),支持导出到本地文件
  • 批量分享/重命名实战页面:替换原占位页面,提供完整的配置面板和结果预览
  • 文本文件预览:TXT 等文本文件悬停预览 + TextPreview 对话框,百度(picdocpreview)/夸克(下载链接)后端实现,截取前 256KB
  • 搜索页转存并分享:搜索结果一键转存到网盘并生成分享链接,已分享后支持一键复制
  • 分享解析快速模式parse_share_fast 跳过 cookie 预热,预检等轻量场景提速
  • 系统原生保存对话框save_file 命令弹出原生保存对话框,浏览器模式降级 Blob 下载
  • 文件浏览器文本预览preview_text_file 命令,支持 .txt/.md 等文本文件预览
  • 侧边栏运行状态指示:广告插入/批量转存/链接转换/批量重命名/广告清理/目录树生成/批量分享/我的分享 共 8 个功能页签支持运行状态灯(绿色脉冲/黄色暂停)
  • 路由级懒加载:所有页面 React.lazy() + Suspense 按需分包,减少首屏加载体积
  • VIP 心跳在线状态AuthStore.isOnline + 独立在线检测定时器(所有用户),侧边栏头像状态点联动
  • 分享缓存时间设置:设置页新增「我的分享」缓存时间配置(1~1440 分钟)
  • vite vendor 分包优化vendor-tauri/vendor-xlsx/vendor-virtual 独立 chunk
  • 多页面占位:生成目录树、清理广告页面占位导航
  • 新增依赖tauri-plugin-dialogtauri-plugin-fs@tauri-apps/plugin-dialog@tauri-apps/plugin-fsidbxlsxtokio-util

修复

  • SQLite 时区修正:全局 datetime('now')datetime('now', 'localtime')(schema + 5 个 repo)
  • 百度转存目录修复needs_precreate_transfer_dir 改为 true,最终 save_dir 由 API 创建,中间父目录仍需预创建
  • 暗色模式输入框强化:checkbox 添加 !important 样式修复,bg-input 色调加深
  • 聚合任务状态区分utils.ts 区分「失败」vs「部分失败」
  • 任务卡片暗色模式:错误标签颜色修正(text-status-danger → 暗色适配色)
  • 任务日志集数格式:「第X集」→「更X集」
  • status-error → status-danger 统一:通知/代理/设置页测试结果颜色统一
  • 广告插入风控延迟调整:快速档 300800ms → 5001200ms
  • VIP 重复验签移除is_vip() 已含完整验证,移除冗余二次验签
  • SSE 事件兼容浏览器:移除命名事件类型,确保浏览器 onmessage 能接收所有事件
  • 广告插入返回格式修正:LAN 模式返回 task_id 字符串而非对象

变更

  • 前端架构大重构store.ts(525行) 拆分为 9 个独立 store + re-export 入口
  • 页面组件化拆分AuthDialog(727行)/AccountsPage(676行)/AdInsertPage(617行)/MySharesPage(891行) 拆分为模块化子组件 + hooks
  • 心跳拆分useAuthHeartbeat 在线检测定时器 + VIP 心跳定时器,独立生命周期
  • 批量获取优化:push 追加代替全量展开 + 每 5 页 flush state + 缓存超限跳过写入
  • 缓存上限调低MAX_CACHE_PAGES 50 → 30,减少遍历开销
  • 滚动加载阈值放宽:100px → 200px,给虚拟滚动器足够缓冲
  • 全局 card-hover 阴影增强:悬停阴影加深
  • PlaceholderPages 瘦身:批量分享/重命名/生成目录树移除(已有实战页面)

SyncPan v0.0.16

Choose a tag to compare

@mqflive mqflive released this 08 Jun 16:40

[0.0.16] - 2026-06-09

新增

  • 任务卡片虚拟滚动:网格/列表视图引入 @tanstack/react-virtual,大量任务时仅渲染可视区域,大幅提升渲染性能
  • 百度安全验证友好提示:文件操作请求增加 newVerify=1 参数,errno=132 时提示用户到网页端完成验证
  • 百度文件操作增强诊断file_manager 增加 HTTP 状态码、完整响应日志,失败时输出 error 级别日志便于排查

修复

  • 内网穿透复制失败:非安全上下文(HTTP 192.168.x.x)下 Clipboard API 不可用,降级到 execCommand('copy') 方案
  • 移动端浏览器布局错乱:非 Tauri 环境小屏幕强制 1024px 桌面视口,避免布局挤压
  • NSIS 静默安装桌面快捷方式丢失:强制 SetShellVarContext current 用户上下文,exe 不存在时从注册表恢复路径
  • document.body 为空报错:暗黑模式初始化时增加 null 检查

变更

  • 调度器最小堆优化:用 BinaryHeap + Notify 唤醒替代全量遍历 + 固定间隔轮询,减少空转 CPU 占用
  • 存储批量查询优化transferred_files 从 N+1 逐条查询改为 get_all_batch 单次批量查询
  • 转存根目录模式自动展开:分享根目录只有一个文件夹时,自动展开其内容作为实际根,避免重复同名子文件夹
  • 广播通道扩容broadcast::channel 从 64 → 256,避免事件积压丢失
  • NSIS 安装模式tauri.conf.json 添加 installMode: "currentUser" 配置
  • cargo fmt 统一代码格式

SyncPan v0.0.15

Choose a tag to compare

@mqflive mqflive released this 08 Jun 11:34

[0.0.15] - 2026-06-08

变更

  • 拆分 lan_server.rslan_server/ 模块目录

SyncPan v0.0.14

Choose a tag to compare

@mqflive mqflive released this 08 Jun 03:28

[0.0.14] - 2026-06-08

新增

  • 内网穿透分享链接解析:网页版支持 parse_share_info,可输入分享链接查看分享信息
  • 内网穿透浏览子文件夹:网页版支持 list_share_folder,可选择绑定的监控目录
  • 发布脚本 CHANGELOG 检查:打 tag 前自动检查 CHANGELOG.md 是否包含当前版本条目

修复

  • 内网穿透删除文件失败delete_files 参数名与前端不一致(file_idspaths),导致百度 API 返回未知错误
  • 更新后桌面快捷方式丢失:删除了无效的 desktopIcon 配置项,NSIS 默认创建桌面快捷方式

SyncPan v0.0.13

Choose a tag to compare

@mqflive mqflive released this 08 Jun 00:48

[0.0.13] - 2026-06-08

新增

  • 单实例防护(改用官方插件):从 Win32 raw FFI 改为 tauri-plugin-single-instance,修复关闭到托盘后桌面图标激活窗口无法再次关闭的问题
  • NSIS 安装器图标:配置 installerIcon / uninstallerIcon,安装程序显示应用图标
  • 内网穿透 TMDB 搜索:添加 search_tmdb / get_tmdb_metadata 命令支持
  • 更新弹窗样式优化:图标改用铃铛、间距加大、标题描述分离显示

修复

  • 夸克扫码误判:细化状态码匹配,未知正数状态码视为等待中而非已扫码
  • 账号管理空平台显示:0 账号平台不再显示空状态区域

变更

  • GitHub 代理域名从 gh-proxy.com 更换为 gh-proxy.org

SyncPan v0.0.12

Choose a tag to compare

@mqflive mqflive released this 07 Jun 09:16

[0.0.12] - 2026-06-07

新增

  • 单实例防护:防止多开,再次启动时自动激活已有窗口(从托盘恢复)
  • NSIS 安装钩子:安装/卸载后自动刷新 Windows 图标缓存,解决升级后桌面图标不更新问题
  • GitHub 下载代理:通过 gh-proxy.com 代理 GitHub 资源下载,解决国内网络访问问题
    • 自动更新检查 (latest.json) 走代理
    • 安装包下载走代理
  • 常量集中管理:提取代理前缀、反馈链接、QQ 群等常量到统一位置,方便维护和修改

修复

  • 修复 announcements.json 中错误仓库引用(jlcodes99mqflive
  • 修复前后端 QQ 群链接占位符,改为真实加群链接
  • 修复夸克扫码登录中重复硬编码 URL,统一使用 Endpoints 常量

变更

  • VIP 购买链接改为官网首页
  • 反馈/帮助链接统一提取为 FEEDBACK_URL 常量

SyncPan v0.0.11

Choose a tag to compare

@mqflive mqflive released this 06 Jun 19:03
56ff74e

[0.0.11] - 2026-06-07

新增

  • 转存日志增强:日志显示平台标签前缀、时间、错误信息及更新集数
  • 保存路径根目录警告:编辑资源任务时选择根目录保存路径,弹窗提醒用户确认
  • 任务卡片集数显示优化:已播出/总集数药丸徽章(PlayCircle 图标),颜色编码区分进度
  • 已完结状态标识:已播出等于总集数时显示「X集全已完结」徽章(CheckCircle2 图标,暗黑模式适配)
  • 任务卡片悬停动画:鼠标悬停时卡片上移 + 阴影加深
  • 卡片选中视觉优化:蓝色边框 + ring 光晕效果
  • 未配置网盘置灰占位:单个网盘任务未配置时显示灰色占位
  • TMDB 双 API 自动切换api.tmdb.org 不可用时自动回退 api.themoviedb.org
  • 普通更新自动弹窗:检测到非强制更新时也自动弹出更新提示

修复

  • 转存日志不显示:修复日志写入使用 link.id 而查询使用 task.id 的 ID 不匹配问题
  • 日志 JSON 键名不匹配:后端返回 type/time,前端期望 log_type/created_at,统一修正并新增 id 字段
  • 删除任务日志未清理:删除聚合任务时同步删除关联的转存日志
  • 百度分享链接 surl 解析错误trim_start_matches('1') 误删所有前导 '1'(如 11eWBst...),改用 strip_prefix('1') 仅移除路径分隔符
  • 终端日志不可见cargo tauri dev 捕获 stdout 导致日志不显示,改用 stderr 输出;日志级别从 info 改为 debug
  • 列表/卡片视图状态不一致:修复「转存中」与「运行中」显示不统一问题
  • 暗黑模式已完结徽章白边:移除白色边框,改为透明边框
  • 强制更新弹窗可关闭:强制更新时移除关闭按钮和跳过版本选项

变更

  • 平台分组徽章从文件数改为集数显示(N集
  • 移除任务卡片进度条和已转存数,保留已播出/总集数
  • 编辑资源任务弹窗移除 TmdbMetaPreview 组件及「已追至第X集」显示
  • 工具栏布局调整:搜索框缩小,筛选项靠左排列,全选靠右
  • 版本号升级至 0.0.11

SyncPan v0.0.10

Choose a tag to compare

@mqflive mqflive released this 05 Jun 20:27
56ff74e

[0.0.10] - 2026-06-06

新增

  • 更新弹窗优化:弹窗加宽、更新日志区滚动限制、分类标题层级区分、粗体渲染
  • 更新弹窗版本标题过滤:跳过 ## [0.0.x] 版本号标题行
  • Rust 端 updater 请求updater_fetch_force_info 命令替代浏览器 fetch,避免 CORS 跨域问题
  • 发布辅助脚本npm run release:tag --prefix frontend 一键打 tag,npm run release:preflight --prefix frontend 发布前预检
  • CI tag 校验:release.yml 新增 tag 与 Cargo.toml 版本一致性校验

修复

  • 更新器网络错误静默处理,不再弹窗显示 error sending request 等网络级错误
  • CI check-rust job 先构建前端,避免 include_dir! 宏找不到 frontend/dist 报错