-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.go
More file actions
62 lines (53 loc) · 1.06 KB
/
main.go
File metadata and controls
62 lines (53 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
package main
import (
"fmt"
"io/ioutil"
"os"
"path/filepath"
"github.com/manifoldco/promptui"
art "go-cli/arithmatic"
generatoruuid "go-cli/generator-uuid"
"go-cli/pkg/logger"
)
func main() {
selectPrompt := promptui.Select{
Label: "Number Calculation",
Items: []string{
"Addition", "Substraction", "Multiplication", "Divition", "Generate UUID", "EXIT",
},
}
renderImages("intro.txt")
for {
_, result, err := selectPrompt.Run()
if err != nil {
logger.Error(err)
continue
}
fmt.Printf("\nYou choose %+v\n", result)
switch result {
case "Addition":
art.Addition()
continue
case "Substraction":
art.Substraction()
continue
case "Multiplication":
art.Multiplication()
continue
case "Divition":
art.Divition()
continue
case "Generate UUID":
generatoruuid.GenerateUUIDV4()
continue
case "EXIT":
renderImages("exit.txt")
os.Exit(0)
}
}
}
func renderImages(fileName string) {
path, _ := filepath.Abs(fileName)
b, _ := ioutil.ReadFile(path)
fmt.Printf("\033[1;36m%s\033[0m\n", string(b))
}