From ab3db8a4ca89293ce0928177e8845d622f13755f Mon Sep 17 00:00:00 2001 From: Vidhu Kant Sharma Date: Wed, 15 Jun 2022 12:59:22 +0530 Subject: added pretty template for TextInput --- ui/input.go | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'ui/input.go') diff --git a/ui/input.go b/ui/input.go index 0aa2f06..a334943 100644 --- a/ui/input.go +++ b/ui/input.go @@ -33,14 +33,49 @@ func TextInput(label, errMessage string) string { return nil } + template := &p.PromptTemplates { + Valid: "\x1b[0m{{ . | magenta }}", + Invalid: "\x1b[0m{{ . | magenta }}\x1b[31m", + Success: "{{ . | cyan }}", + } + + prompt := p.Prompt { + Label: label, + Validate: validate, + Templates: template,} + res, err := prompt.Run() + if err != nil { + fmt.Println("Failed to run input prompt.", err.Error()) + os.Exit(1) + } + + return res +} + +func PasswordInput(label, errMessage string) string { + validate := func(input string) error { + if input == "" { + return errors.New(errMessage) + } + return nil + } + + template := &p.PromptTemplates { + Valid: "{{ . | cyan }}", + Invalid: "{{ . | cyan }}", + Success: "{{ . | blue }}", + } + prompt := p.Prompt { Label: label, + Templates: template, Validate: validate, + Mask: '*', } res, err := prompt.Run() if err != nil { - fmt.Println("Failed to run TextInput Prompt.", err.Error()) + fmt.Println("Failed to run input prompt.", err.Error()) os.Exit(1) } -- cgit v1.2.3