gofmt: main.go

This commit is contained in:
Muhammad Nauman Raza 2025-01-25 14:26:22 +00:00
parent 7ca4ba64db
commit 02b9894112
Signed by: devraza
GPG key ID: 91EAD6081011574B

View file

@ -1,52 +1,52 @@
package main package main
import ( import (
"fmt" "fmt"
"log" "log"
"strconv" "strconv"
"strings" "strings"
"github.com/charmbracelet/bubbles/textinput" "github.com/charmbracelet/bubbles/textinput"
"github.com/charmbracelet/lipgloss"
tea "github.com/charmbracelet/bubbletea" tea "github.com/charmbracelet/bubbletea"
"github.com/charmbracelet/lipgloss"
) )
var ( var (
command = lipgloss.NewStyle().Foreground(lipgloss.Color("12")).Background(lipgloss.Color("235")) command = lipgloss.NewStyle().Foreground(lipgloss.Color("12")).Background(lipgloss.Color("235"))
list = lipgloss.NewStyle().Bold(true) list = lipgloss.NewStyle().Bold(true)
padding = lipgloss.NewStyle().PaddingTop(1).PaddingLeft(2) padding = lipgloss.NewStyle().PaddingTop(1).PaddingLeft(2)
red = lipgloss.NewStyle().Bold(true).Foreground(lipgloss.Color("9")) red = lipgloss.NewStyle().Bold(true).Foreground(lipgloss.Color("9"))
green = lipgloss.NewStyle().Bold(true).Foreground(lipgloss.Color("10")) green = lipgloss.NewStyle().Bold(true).Foreground(lipgloss.Color("10"))
) )
func enqueue(queue []int64, number string) []int64 { func enqueue(queue []int64, number string) []int64 {
integer, err := strconv.ParseInt(number, 10, 64) integer, err := strconv.ParseInt(number, 10, 64)
if err != nil { if err != nil {
fmt.Println("Error:", err) fmt.Println("Error:", err)
} }
if len(queue) < 5 { if len(queue) < 5 {
queue = append([]int64{integer}, queue...) queue = append([]int64{integer}, queue...)
} }
return queue return queue
} }
func dequeue(queue []int64) []int64 { func dequeue(queue []int64) []int64 {
if len(queue) > 0 { if len(queue) > 0 {
queue = queue[:len(queue)-1] queue = queue[:len(queue)-1]
} }
return queue return queue
} }
func check(queue []int64) string { func check(queue []int64) string {
if len(queue) == 0 { if len(queue) == 0 {
return fmt.Sprintf("The queue is currently %v", green.Render("empty")) return fmt.Sprintf("The queue is currently %v", green.Render("empty"))
} else if len(queue) == 5 { } else if len(queue) == 5 {
return fmt.Sprintf("The queue is currently %v", red.Render("full")) return fmt.Sprintf("The queue is currently %v", red.Render("full"))
} else { } else {
return fmt.Sprintf("The queue is currently neither %v nor %v", green.Render("empty"), red.Render("full")) return fmt.Sprintf("The queue is currently neither %v nor %v", green.Render("empty"), red.Render("full"))
} }
} }
type ( type (
@ -55,9 +55,9 @@ type (
type model struct { type model struct {
textInput textinput.Model textInput textinput.Model
queue []int64 queue []int64
status string status string
show bool show bool
err error err error
} }
@ -86,23 +86,23 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
switch msg.Type { switch msg.Type {
case tea.KeyCtrlC: case tea.KeyCtrlC:
return m, tea.Quit return m, tea.Quit
case tea.KeyEnter: case tea.KeyEnter:
arguments := strings.Split(m.textInput.Value(), " ") arguments := strings.Split(m.textInput.Value(), " ")
switch arguments[0] { switch arguments[0] {
case "enqueue": case "enqueue":
m.show = false m.show = false
m.queue = enqueue(m.queue, arguments[1]) m.queue = enqueue(m.queue, arguments[1])
case "dequeue": case "dequeue":
m.show = false m.show = false
m.queue = dequeue(m.queue) m.queue = dequeue(m.queue)
case "check": case "check":
m.show = true m.show = true
m.status = check(m.queue) m.status = check(m.queue)
default: default:
m.show = true m.show = true
m.status = red.Render("This action is unsupported") m.status = red.Render("This action is unsupported")
} }
} }
case errMsg: case errMsg:
m.err = msg m.err = msg
@ -114,28 +114,28 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
} }
func (m model) View() string { func (m model) View() string {
command_list := fmt.Sprintf( command_list := fmt.Sprintf(
"Valid commands: %s, %s, %s", "Valid commands: %s, %s, %s",
command.Render(" enqueue "), command.Render(" enqueue "),
command.Render(" dequeue "), command.Render(" dequeue "),
command.Render(" check "), command.Render(" check "),
) )
if m.show { if m.show {
return padding.Render(fmt.Sprintf( return padding.Render(fmt.Sprintf(
"%v\n\n%v\n\n%s", "%v\n\n%v\n\n%s",
command_list, command_list,
m.status, m.status,
m.textInput.View(), m.textInput.View(),
)) + "\n" )) + "\n"
} else { } else {
return padding.Render(fmt.Sprintf( return padding.Render(fmt.Sprintf(
"%v\n\n%v\n\n%s", "%v\n\n%v\n\n%s",
command_list, command_list,
list.Render(fmt.Sprintf("%v", m.queue)), list.Render(fmt.Sprintf("%v", m.queue)),
m.textInput.View(), m.textInput.View(),
)) + "\n" )) + "\n"
} }
} }
func main() { func main() {