github.com/kubeshop/testkube@v1.17.23/pkg/ui/spinner.go (about) 1 package ui 2 3 import "github.com/pterm/pterm" 4 5 var ( 6 checkInfoPrinter = pterm.Info. 7 WithMessageStyle(pterm.NewStyle(pterm.FgWhite, pterm.BgDefault)). 8 WithPrefix(pterm.Prefix{Text: " ️", Style: pterm.NewStyle(pterm.FgDefault, pterm.BgDefault)}) 9 10 checkOkPrinter = pterm.Info. 11 WithMessageStyle(pterm.NewStyle(pterm.FgWhite, pterm.BgDefault)). 12 WithPrefix(pterm.Prefix{Text: "✅", Style: pterm.NewStyle(pterm.FgDefault, pterm.BgDefault)}) 13 14 checkFailPrinter = pterm.Info. 15 WithMessageStyle(pterm.NewStyle(pterm.FgRed, pterm.BgDefault)). 16 WithPrefix(pterm.Prefix{Text: "❗", Style: pterm.NewStyle(pterm.FgDefault, pterm.BgDefault)}) 17 ) 18 19 func NewSpinner(t string) *pterm.SpinnerPrinter { 20 s := pterm.DefaultSpinner. 21 WithSequence(` ⠋ `, ` ⠹ `, ` ⠼ `, ` ⠦ `, ` ⠇ `) 22 s.SuccessPrinter = checkOkPrinter 23 s.InfoPrinter = checkInfoPrinter 24 s.FailPrinter = checkFailPrinter 25 sp, _ := s.Start(t) 26 return sp 27 }