mirror of
https://gitee.com/spark-store-project/spark-store
synced 2026-06-22 14:13:49 +08:00
feat: 添加APM安装确认弹窗并重构APM检查流程
1. 新增全局状态控制APM安装弹窗显示 2. 新建ApmInstallConfirmModal弹窗组件 3. 将主进程的APM安装弹窗逻辑迁移到前端Vue组件 4. 更新package.json版本到5.1.0 5. 简化安装和升级流程中的APM检查逻辑
This commit is contained in:
+28
@@ -152,6 +152,12 @@
|
||||
@success="onUninstallSuccess"
|
||||
/>
|
||||
|
||||
<ApmInstallConfirmModal
|
||||
:show="showApmInstallDialog"
|
||||
@close="closeApmInstallDialog"
|
||||
@confirm="confirmApmInstall"
|
||||
/>
|
||||
|
||||
<AboutModal :show="showAboutModal" @close="closeAboutModal" />
|
||||
|
||||
<SettingsModal :show="showSettingsModal" @close="closeSettingsModal" />
|
||||
@@ -173,6 +179,7 @@ import DownloadDetail from "./components/DownloadDetail.vue";
|
||||
import InstalledAppsModal from "./components/InstalledAppsModal.vue";
|
||||
import UpdateCenterModal from "./components/UpdateCenterModal.vue";
|
||||
import UninstallConfirmModal from "./components/UninstallConfirmModal.vue";
|
||||
import ApmInstallConfirmModal from "./components/ApmInstallConfirmModal.vue";
|
||||
import AboutModal from "./components/AboutModal.vue";
|
||||
import SettingsModal from "./components/SettingsModal.vue";
|
||||
import {
|
||||
@@ -181,6 +188,7 @@ import {
|
||||
currentAppSparkInstalled,
|
||||
currentAppApmInstalled,
|
||||
currentStoreMode,
|
||||
showApmInstallDialog,
|
||||
getHybridDefaultOrigin,
|
||||
loadPriorityConfig,
|
||||
} from "./global/storeConfig";
|
||||
@@ -964,6 +972,22 @@ const onUninstallSuccess = () => {
|
||||
}
|
||||
};
|
||||
|
||||
const closeApmInstallDialog = () => {
|
||||
showApmInstallDialog.value = false;
|
||||
};
|
||||
|
||||
const confirmApmInstall = async () => {
|
||||
showApmInstallDialog.value = false;
|
||||
closeDetail();
|
||||
await nextTick();
|
||||
const apmApp = apps.value.find((a) => a.pkgname === "apm");
|
||||
if (apmApp) {
|
||||
openDetail(apmApp);
|
||||
} else {
|
||||
searchQuery.value = "apm";
|
||||
}
|
||||
};
|
||||
|
||||
const installCompleteCallback = (pkgname?: string) => {
|
||||
if (currentApp.value && (!pkgname || currentApp.value.pkgname === pkgname)) {
|
||||
checkAppInstalled(currentApp.value);
|
||||
@@ -1276,6 +1300,10 @@ onMounted(async () => {
|
||||
}
|
||||
});
|
||||
|
||||
window.ipcRenderer.on("trigger-apm-install-dialog", () => {
|
||||
showApmInstallDialog.value = true;
|
||||
});
|
||||
|
||||
window.ipcRenderer.on(
|
||||
"deep-link-install",
|
||||
(_event: IpcRendererEvent, pkgname: string) => {
|
||||
|
||||
Reference in New Issue
Block a user