feat(update-center): 实现集中式软件更新中心功能

新增更新中心模块,支持管理 APM 和传统 deb 软件更新任务
- 添加更新任务队列管理、状态跟踪和日志记录功能
- 实现更新项忽略配置持久化存储
- 新增更新确认对话框和迁移提示
- 优化主窗口关闭时的任务保护机制
- 添加单元测试覆盖核心逻辑
This commit is contained in:
2026-04-09 08:19:51 +08:00
parent 97bb8e5f59
commit 0b17ada45a
37 changed files with 6389 additions and 342 deletions
@@ -0,0 +1,44 @@
<template>
<div
v-if="show"
class="absolute inset-0 flex items-center justify-center bg-slate-950/45 px-4"
>
<div
class="w-full max-w-md rounded-3xl border border-amber-200 bg-white p-6 shadow-2xl dark:border-amber-500/30 dark:bg-slate-900"
>
<p class="text-lg font-semibold text-slate-900 dark:text-white">
关闭确认
</p>
<p class="mt-2 text-sm text-slate-600 dark:text-slate-300">
更新仍在进行中确定关闭此窗口吗
</p>
<div class="mt-4 flex justify-end gap-3">
<button
type="button"
class="rounded-2xl border border-slate-200/70 px-4 py-2 text-sm font-semibold text-slate-600 dark:border-slate-700 dark:text-slate-200"
@click="$emit('close')"
>
继续查看
</button>
<button
type="button"
class="rounded-2xl bg-amber-500 px-4 py-2 text-sm font-semibold text-white"
@click="$emit('confirm')"
>
确认关闭
</button>
</div>
</div>
</div>
</template>
<script setup lang="ts">
defineProps<{
show: boolean;
}>();
defineEmits<{
(e: "close"): void;
(e: "confirm"): void;
}>();
</script>