xiyidaiwa
b3eb1d01d9
fix: 标签优先显示策略 auto 模式按服务端优先级配置展示
...
- auto 模式用合并应用自身(含 sparkApp/apmApp)匹配 priority-config.json,
不再仅取单一子版,避免漏匹配。
- openDetail 区分「已安装页显式来源强制」与「其他页面按策略」;
非强制分支清除 forceViewingOrigin 粘性标志,避免跨入口状态泄漏。
- AppDetailModal 按 TagPriorityStrategy 响应式重算默认来源;
手动切标签仅本次会话预览,不持久。
- storeConfig.loadPriorityConfig 改用 axios(与渲染进程一致),
修复 Electron 下全局 fetch 失败导致配置为空、auto 全部回退 APM 的问题。
- 首页推荐列表 parseAppList 从 jsonUrl 提取分类,避免 category 误为 unknown。
2026-08-07 18:21:39 +08:00
xiyidaiwa
88499a56f8
feat: 新增「标签优先显示策略」设置(自动选择/Spark优先/APM优先,默认自动选择)
...
需求:在应用设置中新增标签优先显示策略配置,进入应用详情页时按所选策略决定
默认展示的来源(Spark/APM)标签;选中的标签即为安装时对应的来源。
实现:
- 新增 src/global/tagPriority.ts:策略('auto'|'spark'|'apm')共享模块,localStorage 持久化,
通过共享 ref 在设置页与详情页间同步(纯前端显示偏好,不触及后端安装脚本)。
- SettingsModal.vue:在「安装设置」中新增三选项分段控件(默认选中「自动选择」),
打开时加载、变更时即时保存。
- AppDetailModal.vue:新增 computeDefaultViewingOrigin,按策略计算默认 viewingOrigin:
自动选择→getHybridDefaultOrigin(应用配置优先级);Spark/APM 优先→优先选中对应标签,
若应用无该来源标签则回退优先级策略;仅有一个来源标签时默认展示该标签;
父组件显式指定的 viewingOrigin 仍具最高优先级。
vue-tsc --noEmit 通过。
2026-08-07 10:45:44 +08:00
xiyidaiwa
c1d2bef38a
ui: 隐藏首页致谢卡片(代码保留,v-if=false)
2026-08-03 14:35:05 +08:00
xiyidaiwa
3816703303
fix: 安全加固——queue-install 路径遍历校验 + 首页远程数据显式字段
...
针对 PR 安全审查的修复:
1. queue-install 路径遍历(阻断项,真实风险):
install-manager.ts 直接用渲染进程传入的 pkgname 拼装下载目录
/tmp/spark-store/download/ 与 ssinstall 命令参数 /,
此前未做任何校验。复用模块顶部 PKGNAME_PATTERN 对 pkgname 与 filename 做白名单校验,
拦截含 ../、/ 或非法字符的输入,杜绝路径遍历。
2. 首页远程数据展开(阻断项,纵深防御):
App.vue loadHome 此前用 { ...l } 直接展开远程 homelinks.json 到响应式数组,
可能注入未知属性。改为显式提取 name/url/icon/more/imgUrl/type/origin 已知字段构造,
仅保留可信字段(url 仍做必需校验以保首页正常渲染)。
注:check-installed 白名单(审查第1项)此前已在 4f772ba7 通过 parseAppPayload 修复,本次无改动。
vue-tsc --noEmit 通过。
2026-08-03 14:17:45 +08:00
xiyidaiwa
1569dad866
fix: 修复首页内容因 icon 字段校验被全部过滤的回归
...
回顾:上轮健壮性修改中,loadHome 对 homelinks.json 的解析新增了
'if (!url || !icon) continue' 的硬性校验。但远程 homelinks.json 实际
仅提供 name/more/imgUrl/type/url,并不含 icon 字段(首页图片统一由
imgUrl 提供),导致所有链接因缺少 icon 被跳过,首页区域1 变空白。
修正:
- App.vue loadHome:移除对 icon 的强制校验,仅校验 url 必需;icon 缺省为空串以兼容类型
- typedefinition HomeLink.icon:由必需 string 改为可选,反映真实数据源契约
vue-tsc --noEmit 通过,已重新打包验证(5.2.1.2-test)。
2026-08-03 12:05:57 +08:00
xiyidaiwa
4f772ba7eb
fix: 安全与健壮性排查修复(IPC 类型校验/AbortSignal/空名去重/窗口 await)
...
阻断项:
- install-manager: uninstall-installed / remove-installed / check-installed 由 any 改为 unknown + parseAppPayload 严格解析(PKGNAME_PATTERN 校验 pkgname,origin 仅限 spark|apm),消除命令注入风险;parseAppPayload/PKGNAME_PATTERN 提升至模块顶部复用并避免 TDZ
- App.vue openDetail: 参数由 Record<string,unknown> 收紧为 App | OpenDetailInput,新增 pkgname 运行时校验,避免访问 undefined 属性
改进项:
- App.vue homeLinks 去重:跳过空名称避免污染 seenNames,并对 links 数组与 HomeLink 必需字段做校验
- App.vue fetchWithRetry: 新增 AbortSignal 参数,递归链路传递,组件卸载时 rootAbortController.abort() 取消未完成任务
- index.ts showAndFocusMainWindow: 改为 async 并 await createWindow,调用点用 void 修饰避免 floating promise
vue-tsc --noEmit 通过。
2026-08-03 11:24:32 +08:00
xiyidaiwa
b89c001401
refactor: 基于 upstream/Erotica 重新整合本地功能(来源选择/合并详情/计数/窗口/首页)
...
将本地在 upstream !408(已安装应用合并+统计)之上的后续改动重新整合到最新 upstream/Erotica:
- 已安装应用:卸载/打开按 APM/Spark 来源选择;计数总数=APM+Spark 包数(双来源计为独立包)
- 查看详情:已安装页复用所有应用页合并详情视图(单来源优先已装类型,双来源自动模式)
- 窗口:恢复阈值改为 1600x900,过大回退默认尺寸并居中,不自动最大化
- 首页推荐:致谢卡片移至其他内容下方,加大标题/卡片/致谢间距
- 隐藏排行榜/荣耀榜侧栏入口(代码保留,v-if=false)
- 新增 scripts/test-build.sh 测试打包脚本(版本末段+1 加 -test)并更新 AGENTS.md
冲突文件(index.ts/App.vue/InstalledAppsModal.vue)均取本地完整实现(为上游版本的超集)。
2026-08-03 11:06:28 +08:00
xiyidaiwa and shenmo7192
77b4244f1d
!408 refactor(已安装应用): 合并 APM/Spark 分页为列表标签并新增统计
...
Merge pull request !408 from xiyidaiwa/Erotica
2026-07-29 06:47:41 +00:00
gfdgd-xi
c1b89cab1a
支持从git提取贡献者信息
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-07-27 16:22:57 +08:00
shenmo7192 and Gitee
17cbb7cff2
!407 style: 统一滚动条外观并将投稿应用窗口改为圆角
...
Merge pull request !407 from xiyidaiwa/Erotica
2026-07-24 14:13:49 +00:00
shenmo7192
bcf3252e4a
style(app-detail): add tooltip text for install buttons
...
为应用详情页和详情弹窗的两个安装按钮分别添加了对应的提示文案,提升用户体验
2026-07-24 10:26:40 +08:00
xiyidaiwa
910aec6cce
fix(app): 修复应用计数统计问题
...
- 将应用总数统计从 apps.value.length 改为 baseApps.value.length
- 确保分类统计基于正确的基础应用数据
- 解决了应用过滤后计数不准确的问题
2026-07-23 18:41:19 +08:00
xiyidaiwa
3d28010797
fix: 处理 PR 评审意见(副作用清理、滚动条分层与变量化)
...
- SubmitterWindow: onMounted 修改 body/html 背景后,在 onUnmounted 中恢复原始值,避免副作用泄漏。
- appstyle.css: 全局滚动条基础几何/颜色移至 @layer base,使 .scrollbar-muted/.scrollbar-nowidth 工具类优先级更高;
暗色 thumb 改用专用变量 --color-scrollbar-thumb-dark (#15203b),保留比 surface 略亮的可辨识反差(未改用 --color-surface-dark)。
- 评审建议"margin 改 padding"与"改用 .scrollbar-muted"经分析不成立:padding 不会内移滚动条、无法避开圆角,margin 才能把容器连同滚动条推离圆角;
.scrollbar-muted 为 0.4rem 细条,与其他页面 0.75rem 全局不一致,故保持 mr-4 mb-4 全局样式。
2026-07-22 01:39:52 +08:00
xiyidaiwa
df8c2d7eaa
style: 统一滚动条外观并将投稿应用窗口改为圆角
...
- 滚动条:主进程对 Linux 关闭 overlay 滚动条
(disable-features=OverlayScrollbar),使 CSS ::-webkit-scrollbar 自定义生效;
全局统一定义亮色 #94a3b8 / 暗色 #15203b(带极淡描边),宽度 0.75rem,亮暗一致。
- 投稿页:修复滚动条贯穿整个窗口、侵入标题栏(改为 flex 分栏,
标题栏 shrink-0,内容区单独滚动)。
- 应用管理页:移除 scrollbar-nowidth 隐藏与 scrollbar-thumb-* 覆盖色,
改由全局规则统一,与其他页面一致。
- 圆角页面:投稿页与已安装应用页滚动容器内缩 (mr-4 mb-4),
避免滚动条滚入圆角被裁切。
- 投稿应用窗口:独立窗口改为透明圆角窗口 (transparent + rounded-3xl + shadow-2xl),
与弹框风格统一;挂载时 body 背景透明以露出圆角。
- 标题栏:左上角蓝色圆点替换为软件图标 spark-store.svg。
- 更新中心:搜索框对齐主页样式(左侧图标、统一圆角与配色)。
2026-07-22 01:19:52 +08:00
shenmo7192
3b7f14862d
refactor(DownloadQueue): 移除无用的滚轮隐藏队列逻辑与相关依赖
...
移除了页面滚轮事件监听、isHidden状态和相关的DOM引用,简化组件逻辑
2026-07-18 22:11:54 +08:00
shenmo7192
367828f1f4
chore(vscode & download queue): 修复调试配置和下载面板交互问题
...
1. 给VSCode调试配置添加--no-sandbox参数以解决容器/权限问题
2. 修复下载队列面板收起时点击无响应的bug,调整隐藏状态的位移参数
3. 优化展开/收起切换逻辑,隐藏状态下点击会自动展开面板
2026-07-18 22:04:23 +08:00
shenmo7192
9323c368d6
style: 统一文件名小写处理并格式化代码
...
1. 对deb包名、打包文件名统一转为小写格式,避免大小写不一致问题
2. 格式化多处代码换行和缩进,提升代码可读性
2026-07-18 10:37:52 +08:00
shenmo7192
d67f7b3666
feat(submitter): 完善提交表单功能,优化交互与体验
...
1. 新增electronUtils接口用于获取文件路径,支持拖拽上传deb包
2. 交换贡献者与官网地址表单字段
3. 重构架构选择UI,按来源和架构排序并添加来源标识
4. 新增截图和图标上传格式校验,限制仅支持PNG
5. 优化截图上传区域样式,支持拖放上传
6. 拆分重置表单和提交成功后的状态清理逻辑
7. 重构架构排序逻辑,兼容新旧存储格式
2026-07-18 00:22:45 +08:00
shenmo7192
361dad1a64
feat(submitter): 新增自动获取git用户名并填充提交信息
...
扩展了提交器的自动填充能力,新增通过git config获取本地git用户名的能力,和原有邮箱获取逻辑结合,自动按照格式填充贡献者字段,优化用户提交体验
2026-07-17 23:12:10 +08:00
shenmo7192
5730c0bfea
feat(SubmitterWindow): add view submission queue button
...
add a button to open the submission queue page in new tab, alongside the close button in the header
2026-07-17 22:52:03 +08:00
shenmo7192
e8a2bb921b
refactor(electron+vue): 优化窗口拖拽和激活逻辑
...
1. 为提交窗口标题栏添加拖拽支持,同时关闭关闭按钮的拖拽区域
2. 重构窗口激活显示逻辑为复用函数showAndFocusMainWindow
3. 修复窗口实例管理和托盘图标点击的逻辑问题
2026-07-17 21:39:34 +08:00
shenmo7192
5a01d95e0f
feat(SubmitterWindow): add screenshot paste shortcut and refactor upload logic
...
新增截图粘贴上传功能,重构了截图上传的处理逻辑,将公共上传逻辑提取为importScreenshots方法,同时支持通过Ctrl+V粘贴截图直接上传,优化了截图文件的筛选和上传流程
2026-07-17 21:17:40 +08:00
shenmo7192
37217cd6fb
chore: 发布v5.2.1版本并优化布局交互
...
1. 调整AppGrid和主容器的高度样式,替换calc(100vh - 140px)为100%适配布局
2. 为下载队列添加滚轮隐藏/显示动画和交互逻辑
3. 优化主内容区域的flex布局结构,修复滚动和容器收缩问题
2026-07-17 21:12:50 +08:00
shenmo7192
f585be0dcd
feat(submitter): add form validation tips and improve submission checks
...
1. add real-time form validation prompt component for submission page
2. add URL validation for official website and screenshot format checks
3. refactor form validity calculation and user input status judgment
4. replace mirror switch with configurable base URL, support dev proxy path handling
5. add processing logic for base64 format screenshots
6. optimize history search and form reset logic
2026-07-16 15:56:13 +08:00
shenmo7192
e496449c31
refactor(app): adjust loading sequence of app data
...
调整了初始化时的数据加载顺序,将侧边栏预加载移至全部应用加载完成后执行,避免网络连接被抢占,同时简化了Promise调用逻辑
2026-07-16 14:04:27 +08:00
shenmo7192
0a908a31f6
chore: release v5.2.1 and improve submitter UI/UX
...
1. update version to 5.2.1 in changelog and package.json
2. add real-time upload progress display in submission window
3. optimize icon filename display and form reset logic
4. add success modal after successful submission
5. improve logging formatting in submitter backend
2026-07-16 14:03:40 +08:00
shenmo7192
68195a94f6
refactor(submitter): 重构分类处理逻辑,完善提交校验与安装包流程
...
1. 重构提交器的分类处理,移除硬编码的分类映射,改用后端返回的type字段
2. 添加categoryId同步逻辑,完善表单校验和提交数据
3. 优化图标处理逻辑,支持base64格式图标
4. 完善deb包元数据处理,自动生成规范的文件名
5. 新增更全面的提交字段校验和API业务错误处理
6. 补充安装脚本的目录复制规则
2026-07-16 13:57:39 +08:00
shenmo7192
387be920b1
refactor(apps): optimize home app list loading and grid layout
...
1. refactor home app list loading logic: use seen set instead of map, handle deduplication with spark priority
2. add vertical scrolling for small app grid when not using virtual scroll
3. remove unnecessary overflow-y-auto from main container
2026-07-16 10:27:18 +08:00
shenmo7192
c814c4b13d
fix: 修复重复应用显示问题,按来源优先级去重
...
1. 为首页链接和应用列表添加去重逻辑,spark 来源优先覆盖 apm
2. 优化数据处理方式,使用 Set 和 Map 避免重复数据
3. 更新日志输出的统计数字为去重后的实际数量
2026-07-16 10:14:32 +08:00
shenmo7192
46f79ca6fc
refactor(sidebar): 优化侧边栏加载逻辑,支持按来源仓库过滤请求
...
1. 新增SidebarEntry的origins字段标记入口所属仓库
2. 合并多仓库共享的侧边栏入口配置
3. 仅向实际存在的仓库发起分类和应用加载请求,减少无效404请求
4. 并行加载分类数据避免串行等待,调整预加载顺序优化网络资源占用
2026-07-16 00:40:38 +08:00
shenmo7192
c8783ed66c
chore(release): prepare v5.2.0 stable release
...
1. update debian changelog version from 5.2.0~alpha1 to 5.2.0
2. remove deprecated CI workflow backup files
3. fix duplicate loading issue by adding loadingTabs state
4. add effectiveLoading computed state to handle per-tab loading status
2026-07-15 20:25:04 +08:00
shenmo7192
937c0554ad
chore: 暂时关闭云端同步、收藏和评论功能
...
调整了多个页面的相关UI和逻辑代码,注释掉并隐藏了收藏、评论以及云端同步相关的按钮和实现逻辑,同时修改了侧边栏的品牌文案展示。
2026-07-14 14:21:35 +08:00
shenmo7192
0858797405
perf(App.vue): 修复首页列表N+1请求问题,优化加载性能
...
直接使用接口返回的列表数据构建应用对象,不再为每个应用单独请求app.json,应用详情将在用户点击时按需获取
2026-07-14 14:08:17 +08:00
shenmo7192
7420466d92
style: 统一代码格式与字符串引号风格
...
1. 替换单引号为双引号统一字符串格式
2. 拆分过长的函数调用与条件判断行提升可读性
3. 简化多行console.log调用为单行格式
4. 为侧边栏添加条目计数标签展示功能
2026-07-14 13:59:55 +08:00
shenmo7192
750e1d89e4
feat: add SPK share link support and optimize category count calculation
...
- add SPK share button in app detail pages and support parsing SPK links in search box
- fix category total count to exclude the all entry
- remove redundant count badge from sidebar tabs
- rewrite category count calculation with proper filtering of all entry
- update search category count logic to use base apps for all tab count
2026-07-14 13:39:20 +08:00
shenmo7192
b233fea4d5
refactor(install): 重构下载安装队列逻辑,拆分并发控制
...
1. 将下载与安装流程分离,实现并发下载限制与单安装实例控制
2. 新增任务阶段枚举,替换原有activeDownloads计数逻辑
3. 优化取消任务的处理流程,区分运行中和排队中的任务
4. 修复下载队列显示的统计错误,改为展示已完成任务数
5. 调整日志格式与代码注释,提升可读性
2026-07-13 23:06:05 +08:00
shenmo7192
6328f178d3
refactor(home): 重构首页与侧边栏,移除旧HomeList类型并支持首页列表侧边栏入口
...
1. 移除废弃的HomeList类型定义,新增homeList侧边栏类型
2. 重构AppGrid组件,添加showOrigin属性支持自定义显示来源标记
3. 简化HomeView组件,移除旧的列表展示逻辑与相关代码
4. 新增侧边栏首页列表入口加载与应用数据加载逻辑
5. 优化侧边栏计数与应用预加载逻辑,适配新的首页列表类型
2026-07-13 22:57:54 +08:00
shenmo7192
7c6bdf0e55
feat(submitter,update-center): add multiple features and optimize submission flow
...
1. add shell caller ssupdate command support
2. add pre-update system refresh for update center
3. add get-git-email IPC handler and auto-fill email
4. optimize deb submission UI and category handling
5. disable and auto-fill package name/version fields
6. add loading and error states for category list
7. fix category value matching for history data
2026-07-13 22:07:01 +08:00
shenmo7192
0aca5744b0
refactor(SubmitterWindow): 调整deb上传组件的位置
...
将deb安装包上传区域从表单下方移动到上方,优化页面填写流程
2026-07-13 18:35:28 +08:00
shenmo7192
bfa959ca1d
style: 移除所有组件的backdrop-blur和半透明背景效果
...
统一调整多处UI元素的样式,去掉不必要的backdrop-blur滤镜以及bg的透明度后缀,让界面视觉风格更简洁统一
2026-07-13 18:31:14 +08:00
shenmo7192
2bafa66004
style(ui): 调整弹窗和提交窗口的样式与布局
...
1. 为提交根容器添加overflow-y-auto防止内容溢出
2. 放大应用详情弹窗最大宽度从5xl到6xl
3. 提升弹窗和滚动区域的最大高度从85vh到90vh
4. 移除应用详情描述区域多余的overflow-y-auto
2026-07-13 18:28:27 +08:00
gfdgd-xi
5f2f07afbe
修复主窗口右侧有滚动条的问题
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-29 22:53:36 +08:00
gfdgd-xi
ebede13b2c
修复tag列表无法正确加载的问题
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-29 22:26:19 +08:00
gfdgd-xi
829b5495b2
新增联系邮箱输入框
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-29 22:07:43 +08:00
gfdgd-xi
5c64945517
移除投稿器源选择对话框
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-27 18:52:54 +08:00
gfdgd-xi
2cab0b2161
投稿器用自渲染对话框替换alert修复选择deb后无法编辑信息的问题
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-27 18:45:22 +08:00
gfdgd-xi
8b00334dc8
feat: 投稿器支持导出tar包
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-22 13:47:30 +08:00
gfdgd-xi
cd3e087cdf
修复投稿器加载多个异常程序截图的问题
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-17 11:21:38 +08:00
gfdgd-xi
3aa96f27c7
新增投稿器
...
Signed-off-by: gfdgd_xi <3025613752@qq.com >
2026-06-16 11:53:46 +08:00
zeqi and Gitee
f7eeddf6d9
调整Lists 区域标题在dark模式下的字体颜色,使其和欢迎语颜色一致,增加下载队列切换展开按钮在dark下的hover效果
...
Signed-off-by: zeqi <a202128502@163.com >
2026-06-06 14:05:54 +00:00