fix uninstall

This commit is contained in:
ABevier 2023-04-19 11:23:51 -04:00
parent 603ce7ab79
commit cc767e510b
No known key found for this signature in database
6 changed files with 20 additions and 35 deletions

View file

@ -1,5 +1,5 @@
import { ipcMain, app, BrowserWindow } from "electron";
import { getInstalledPackages } from "./tea-dir";
import { deletePackageFolder, getInstalledPackages } from "./tea-dir";
import { readSessionData, writeSessionData } from "./auth";
import type { Packages, Session } from "../../src/libs/types";
import * as log from "electron-log";
@ -133,15 +133,13 @@ export default function initializeHandlers() {
ipcMain.handle(
"delete-package",
async (_, { fullName, version }: { fullName: string; version: string }) => {
let error = "";
try {
log.info("deleting package:", fullName);
await deletePackageFolder(fullName, version);
} catch (e) {
log.error(e);
error = e.message;
return e;
}
return error;
}
);

View file

@ -30,7 +30,11 @@
for (const [i, v] of versions.entries()) {
if (i) {
// skip the latest version = 0
await packagesStore.deletePkg(pkg, v);
try {
await packagesStore.deletePkg(pkg, v);
} catch (e) {
console.error(e);
}
}
}
pruning = false;
@ -39,7 +43,7 @@
<section class="mt-4 bg-black">
<header class="flex">
<figure class="grow-1 w-1/3 relative">
<figure class="grow-1 relative w-1/3">
<img class="w-full" src={pkg.thumb_image_url} alt={pkg.full_name} />
{#if pkg.install_progress_percentage && pkg.install_progress_percentage < 100}
<div class="absolute left-0 top-0 z-40 h-full w-full bg-black bg-opacity-50">

View file

@ -231,10 +231,9 @@ export const setBadgeCount = async (count: number) => {
};
export const deletePackage = async (args: { fullName: string; version: string }) => {
try {
await ipcRenderer.invoke("delete-package", args);
} catch (error) {
log.error(error);
const result = await ipcRenderer.invoke("delete-package", args);
if (result instanceof Error) {
throw result;
}
};
@ -254,11 +253,6 @@ export const writePackageCache = async (pkgs: Packages) => {
}
};
export const installTeaCli = async (): Promise<string> => {
const res = await ipcRenderer.invoke("install-tea-cli");
return res.version;
};
export const topbarDoubleClick = async () => {
try {
ipcRenderer.invoke("topbar-double-click");

View file

@ -376,10 +376,6 @@ export const writePackageCache = async (pkgs: Packages) => {
console.log("write package cache", pkgs);
};
export const installTeaCli = async (): Promise<{ version: string; message: string }> => {
return { version: "0.0.0", message: "" };
};
export const topbarDoubleClick = async () => {
console.log("topbar double click");
};

View file

@ -1,7 +1,6 @@
import { writable } from "svelte/store";
import { goto } from "$app/navigation";
import { installTeaCli } from "@native";
const log = window.require("electron-log");
export default function initNavStore() {
@ -21,12 +20,6 @@ export default function initNavStore() {
let isMovingNext = false;
let isMovingBack = false;
installTeaCli().then((version: string) => {
if (!version) {
showWelcome.set(true);
}
});
return {
showWelcome,
historyStore,

View file

@ -222,6 +222,10 @@ To read more about this package go to [${guiPkg.homepage}](${guiPkg.homepage}).
}, 3000);
} catch (error) {
log.error(error);
notificationStore.add({
message: `Package ${pkg.full_name} failed to uninstall.`,
type: NotificationType.ERROR
});
}
};
@ -234,15 +238,11 @@ To read more about this package go to [${guiPkg.homepage}](${guiPkg.homepage}).
};
const deletePkg = async (pkg: GUIPackage, version: string) => {
try {
log.info("deleting package: ", pkg.full_name, " version: ", version);
await deletePackage({ fullName: pkg.full_name, version });
updatePackage(pkg.full_name, {
installed_versions: pkg.installed_versions?.filter((v) => v !== version)
});
} catch (error) {
log.error(error);
}
log.info("deleting package: ", pkg.full_name, " version: ", version);
await deletePackage({ fullName: pkg.full_name, version });
updatePackage(pkg.full_name, {
installed_versions: pkg.installed_versions?.filter((v) => v !== version)
});
};
const writePackageCacheWithDebounce = withDebounce(writePackageCache);