[VOL-5486] Fix deprecated versions
Change-Id: If0b888d6c2f33b2f415c8b03b08dc994bb3df3f4
Signed-off-by: Abhay Kumar <abhay.kumar@radisys.com>
diff --git a/vendor/github.com/cheggaaa/pb/v3/template.go b/vendor/github.com/cheggaaa/pb/v3/template.go
new file mode 100644
index 0000000..5272ac1
--- /dev/null
+++ b/vendor/github.com/cheggaaa/pb/v3/template.go
@@ -0,0 +1,89 @@
+package pb
+
+import (
+ "math/rand"
+ "sync"
+ "text/template"
+
+ "github.com/fatih/color"
+)
+
+// ProgressBarTemplate that template string
+type ProgressBarTemplate string
+
+// New creates new bar from template
+func (pbt ProgressBarTemplate) New(total int) *ProgressBar {
+ return New(total).SetTemplate(pbt)
+}
+
+// Start64 create and start new bar with given int64 total value
+func (pbt ProgressBarTemplate) Start64(total int64) *ProgressBar {
+ return New64(total).SetTemplate(pbt).Start()
+}
+
+// Start create and start new bar with given int total value
+func (pbt ProgressBarTemplate) Start(total int) *ProgressBar {
+ return pbt.Start64(int64(total))
+}
+
+var templateCacheMu sync.Mutex
+var templateCache = make(map[string]*template.Template)
+
+var defaultTemplateFuncs = template.FuncMap{
+ // colors
+ "black": color.New(color.FgBlack).SprintFunc(),
+ "red": color.New(color.FgRed).SprintFunc(),
+ "green": color.New(color.FgGreen).SprintFunc(),
+ "yellow": color.New(color.FgYellow).SprintFunc(),
+ "blue": color.New(color.FgBlue).SprintFunc(),
+ "magenta": color.New(color.FgMagenta).SprintFunc(),
+ "cyan": color.New(color.FgCyan).SprintFunc(),
+ "white": color.New(color.FgWhite).SprintFunc(),
+ "resetcolor": color.New(color.Reset).SprintFunc(),
+ "rndcolor": rndcolor,
+ "rnd": rnd,
+}
+
+func getTemplate(tmpl string) (t *template.Template, err error) {
+ templateCacheMu.Lock()
+ defer templateCacheMu.Unlock()
+ t = templateCache[tmpl]
+ if t != nil {
+ // found in cache
+ return
+ }
+ t = template.New("")
+ fillTemplateFuncs(t)
+ _, err = t.Parse(tmpl)
+ if err != nil {
+ t = nil
+ return
+ }
+ templateCache[tmpl] = t
+ return
+}
+
+func fillTemplateFuncs(t *template.Template) {
+ t.Funcs(defaultTemplateFuncs)
+ emf := make(template.FuncMap)
+ elementsM.Lock()
+ for k, v := range elements {
+ element := v
+ emf[k] = func(state *State, args ...string) string { return element.ProgressElement(state, args...) }
+ }
+ elementsM.Unlock()
+ t.Funcs(emf)
+ return
+}
+
+func rndcolor(s string) string {
+ c := rand.Intn(int(color.FgWhite-color.FgBlack)) + int(color.FgBlack)
+ return color.New(color.Attribute(c)).Sprint(s)
+}
+
+func rnd(args ...string) string {
+ if len(args) == 0 {
+ return ""
+ }
+ return args[rand.Intn(len(args))]
+}