57 lines
1.2 KiB
Go
57 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"log"
|
|
"log/slog"
|
|
"os"
|
|
|
|
"tasksquire/common"
|
|
"tasksquire/pages"
|
|
"tasksquire/taskwarrior"
|
|
|
|
tea "github.com/charmbracelet/bubbletea"
|
|
)
|
|
|
|
func main() {
|
|
ts := taskwarrior.NewTaskSquire("./test/taskrc")
|
|
ctx := context.Background()
|
|
common := common.NewCommon(ctx, ts)
|
|
|
|
file, err := os.OpenFile("app.log", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
|
|
if err != nil {
|
|
log.Fatalf("failed to open log file: %v", err)
|
|
}
|
|
defer file.Close()
|
|
|
|
// Create a new slog handler for the file
|
|
handler := slog.NewTextHandler(file, &slog.HandlerOptions{})
|
|
|
|
// Set the default logger to use the file handler
|
|
slog.SetDefault(slog.New(handler))
|
|
|
|
// form := huh.NewForm(
|
|
// huh.NewGroup(
|
|
// huh.NewSelect[string]().
|
|
// Options(huh.NewOptions(config.Reports...)...).
|
|
// Title("Report").
|
|
// Description("Choose the report to display").
|
|
// Value(&report),
|
|
// ),
|
|
// )
|
|
|
|
// err = form.Run()
|
|
// if err != nil {
|
|
// slog.Error("Uh oh:", err)
|
|
// os.Exit(1)
|
|
// }
|
|
m := pages.NewMainPage(common)
|
|
|
|
if _, err := tea.NewProgram(m, tea.WithAltScreen()).Run(); err != nil {
|
|
fmt.Println("Error running program:", err)
|
|
os.Exit(1)
|
|
}
|
|
|
|
}
|