For import progress show actually processed and total count

This commit is contained in:
Philipp Wolfer 2025-05-05 17:39:47 +02:00
parent b8e6ccffdb
commit 17cee9cb8b
No known key found for this signature in database
GPG key ID: 8FDF744D4919943B

View file

@ -51,8 +51,8 @@ func setupProgressBars(updateChan chan models.TransferProgress) progressBarUpdat
u := progressBarUpdater{ u := progressBarUpdater{
wg: wg, wg: wg,
progress: p, progress: p,
exportBar: initProgressBar(p, i18n.Tr("exporting")), exportBar: initExportProgressBar(p, i18n.Tr("exporting")),
importBar: initProgressBar(p, i18n.Tr("importing")), importBar: initImportProgressBar(p, i18n.Tr("importing")),
updateChan: updateChan, updateChan: updateChan,
} }
@ -112,8 +112,18 @@ func (u *progressBarUpdater) updateImportProgress(progress *models.Progress) {
bar.SetTotal(progress.Total, progress.Completed) 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() green := color.New(color.FgGreen).SprintFunc()
red := color.New(color.FgHiRed, color.Bold).SprintFunc()
return p.New(0, return p.New(0,
mpb.BarStyle(), mpb.BarStyle(),
mpb.PrependDecorators( mpb.PrependDecorators(
@ -127,8 +137,8 @@ func initProgressBar(p *mpb.Progress, name string) *mpb.Bar {
mpb.AppendDecorators( mpb.AppendDecorators(
decor.OnComplete( decor.OnComplete(
decor.OnAbort( decor.OnAbort(
decor.EwmaETA(decor.ET_STYLE_GO, 0, decor.WC{C: decor.DSyncWidth}), progressDecorator,
i18n.Tr("aborted"), red(i18n.Tr("aborted")),
), ),
i18n.Tr("done"), i18n.Tr("done"),
), ),