From 17cee9cb8bf852a4c11d41dec75c384475e3ddb8 Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Mon, 5 May 2025 17:39:47 +0200 Subject: [PATCH] For import progress show actually processed and total count --- internal/cli/progress.go | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/internal/cli/progress.go b/internal/cli/progress.go index b640815..6696226 100644 --- a/internal/cli/progress.go +++ b/internal/cli/progress.go @@ -51,8 +51,8 @@ func setupProgressBars(updateChan chan models.TransferProgress) progressBarUpdat u := progressBarUpdater{ wg: wg, progress: p, - exportBar: initProgressBar(p, i18n.Tr("exporting")), - importBar: initProgressBar(p, i18n.Tr("importing")), + exportBar: initExportProgressBar(p, i18n.Tr("exporting")), + importBar: initImportProgressBar(p, i18n.Tr("importing")), updateChan: updateChan, } @@ -112,8 +112,18 @@ func (u *progressBarUpdater) updateImportProgress(progress *models.Progress) { bar.SetTotal(progress.Total, progress.Completed) } -func initProgressBar(p *mpb.Progress, name string) *mpb.Bar { +func initExportProgressBar(p *mpb.Progress, name string) *mpb.Bar { + return initProgressBar(p, name, + decor.EwmaETA(decor.ET_STYLE_GO, 0, decor.WC{C: decor.DSyncWidth})) +} + +func initImportProgressBar(p *mpb.Progress, name string) *mpb.Bar { + return initProgressBar(p, name, decor.Counters(0, "%d / %d")) +} + +func initProgressBar(p *mpb.Progress, name string, progressDecorator decor.Decorator) *mpb.Bar { green := color.New(color.FgGreen).SprintFunc() + red := color.New(color.FgHiRed, color.Bold).SprintFunc() return p.New(0, mpb.BarStyle(), mpb.PrependDecorators( @@ -127,8 +137,8 @@ func initProgressBar(p *mpb.Progress, name string) *mpb.Bar { mpb.AppendDecorators( decor.OnComplete( decor.OnAbort( - decor.EwmaETA(decor.ET_STYLE_GO, 0, decor.WC{C: decor.DSyncWidth}), - i18n.Tr("aborted"), + progressDecorator, + red(i18n.Tr("aborted")), ), i18n.Tr("done"), ),