feat: 仅保留混合模式并根据架构动态构建请求路径

- 删除 AppSidebar.vue 中的 StoreModeSwitcher 引入并删除该组件。
- 强制设置当前商店模式为 'hybrid'。
- 修复了因为 `window.apm_store.arch` 包含 `-store` 或 `-apm` 后缀导致路径替换异常的问题,现在会通过动态添加后缀来构建资源请求路径,以兼容 Spark Store 和 APM Store 服务器不同的资源组织结构。
This commit is contained in:
vmomenv
2026-03-12 01:39:00 +00:00
parent 16f7b62491
commit 70cab0182d
10 changed files with 48 additions and 169 deletions

View File

@@ -428,14 +428,23 @@ ipcMain.handle("check-installed", async (_event, payload: any) => {
let isInstalled = false;
if (origin === "apm") {
const { code, stdout } = await runCommandCapture("apm", ["list", "--installed"]);
const { code, stdout } = await runCommandCapture("apm", [
"list",
"--installed",
]);
if (code === 0) {
// eslint-disable-next-line no-control-regex
const cleanStdout = stdout.replace(/\x1b\[[0-9;]*m/g, "");
const lines = cleanStdout.split("\n");
for (const line of lines) {
const trimmed = line.trim();
if (!trimmed || trimmed.startsWith("Listing") || trimmed.startsWith("[INFO]") || trimmed.startsWith("警告")) continue;
if (
!trimmed ||
trimmed.startsWith("Listing") ||
trimmed.startsWith("[INFO]") ||
trimmed.startsWith("警告")
)
continue;
if (trimmed.includes("/")) {
const installedPkg = trimmed.split("/")[0].trim();
if (installedPkg === pkgname) {