package main import ( "os" "marmic/servicetrade-toolbox/internal/api" "marmic/servicetrade-toolbox/internal/menu" "marmic/servicetrade-toolbox/internal/ui" ) func main() { ui.DisplayStartScreen() email, password, err := ui.PromptCredentials() if err != nil { ui.DisplayError("Error getting credentials:", err) os.Exit(1) } session := api.NewSession() err = session.Login(email, password) if err != nil { ui.DisplayError("Authentication failed:", err) os.Exit(1) } ui.DisplayMessage("Login successful!") mainMenu := menu.GetMainMenu() for { choice := menu.DisplayMenuAndGetChoice(mainMenu, "Main Menu") if choice == len(mainMenu)+1 { ui.ClearScreen() ui.DisplayMessage("Logging out...") err := session.Logout() if err != nil { ui.DisplayError("Error during logout: ", err) } else { ui.DisplayMessage("Logout successful.") } ui.DisplayMessage("Exiting ServiceTrade CLI Toolbox. Goodbye!") return } mainMenu[choice-1].Handler(session) } }