(fixed): updater progress percentage and improved updater card

This commit is contained in:
2025-06-15 14:12:21 +05:30
parent 547486fc76
commit 1670a757ca
3 changed files with 14 additions and 8 deletions

1
.gitignore vendored
View File

@@ -11,6 +11,7 @@ node_modules
dist dist
dist-ssr dist-ssr
*.local *.local
.github/workflows/.secrets
# Editor directories and files # Editor directories and files
.vscode/* .vscode/*

View File

@@ -29,6 +29,7 @@ export function AppSidebar() {
const { open } = useSidebar(); const { open } = useSidebar();
const { downloadAndInstallAppUpdate } = useAppUpdater(); const { downloadAndInstallAppUpdate } = useAppUpdater();
const [showBadge, setShowBadge] = useState(false); const [showBadge, setShowBadge] = useState(false);
const [showUpdateCard, setShowUpdateCard] = useState(false);
const topItems: Array<RoutesObj> = [ const topItems: Array<RoutesObj> = [
{ {
@@ -61,9 +62,11 @@ export function AppSidebar() {
if (open) { if (open) {
timeout = setTimeout(() => { timeout = setTimeout(() => {
setShowBadge(true); setShowBadge(true);
setShowUpdateCard(true);
}, 300); }, 300);
} else { } else {
setShowBadge(false); setShowBadge(false);
setShowUpdateCard(false);
} }
return () => { return () => {
@@ -153,13 +156,14 @@ export function AppSidebar() {
</TooltipContent> </TooltipContent>
</Tooltip> </Tooltip>
)} )}
{appUpdate && open && ( {appUpdate && open && showUpdateCard && (
<Card> <Card className="gap-4 py-0">
<CardHeader className="p-4 pb-0"> <CardHeader className="p-4 pb-0">
<CardTitle className="text-sm">Update Available (v{appUpdate.version})</CardTitle> <CardTitle className="text-sm">Update Available (v{appUpdate.version})</CardTitle>
<CardDescription> <CardDescription>
A new version of {config.appName} is available. Please update to the latest version for the best experience. A newer version of {config.appName} is available. Please update to the latest version for the best experience.
</CardDescription> </CardDescription>
<a className="text-xs font-semibold cursor-pointer mt-1" href={`https://github.com/neosubhamoy/neodlp/releases/tag/v${appUpdate.version}`} target="_blank"> Read Changelog</a>
</CardHeader> </CardHeader>
<CardContent className="grid gap-2.5 p-4"> <CardContent className="grid gap-2.5 p-4">
<AlertDialog> <AlertDialog>

View File

@@ -31,15 +31,16 @@ export default function useAppUpdater() {
switch (event.event) { switch (event.event) {
case 'Started': case 'Started':
contentLength = event.data.contentLength; contentLength = event.data.contentLength;
console.log(`started downloading ${event.data.contentLength} bytes`); console.log(`started downloading app update of ${event.data.contentLength} bytes`);
break; break;
case 'Progress': case 'Progress':
downloaded += event.data.chunkLength; downloaded += event.data.chunkLength;
setDownloadProgress(downloaded / (contentLength || 0)); const progress = (downloaded / (contentLength || 1)) * 100;
console.log(`downloaded ${downloaded} from ${contentLength}`); setDownloadProgress(Math.round(progress * 10) / 10);
console.log(`downloaded ${downloaded} bytes from ${contentLength} bytes of app update`);
break; break;
case 'Finished': case 'Finished':
console.log('download finished'); console.log('app update download finished');
setIsUpdating(false); setIsUpdating(false);
break; break;
} }