summaryrefslogtreecommitdiff
path: root/ui/views/views.go
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2025-04-08 14:37:33 +0200
committerSanto Cariotti <santo@dcariotti.me>2025-04-08 14:39:13 +0200
commit1f0d9ec8452f15c27cd33c4e3874454c35993743 (patch)
treec453a31ae5eb823aaf48868eea9fc4daf65f108b /ui/views/views.go
parentc5b10e28b358308d8349b940af09f64368172f2e (diff)
Use internal/pkg structure
Diffstat (limited to 'ui/views/views.go')
-rw-r--r--ui/views/views.go144
1 files changed, 0 insertions, 144 deletions
diff --git a/ui/views/views.go b/ui/views/views.go
deleted file mode 100644
index fa70035..0000000
--- a/ui/views/views.go
+++ /dev/null
@@ -1,144 +0,0 @@
-package views
-
-import (
- "errors"
- "os"
-
- "os/exec"
-
- tea "github.com/charmbracelet/bubbletea"
- "github.com/charmbracelet/lipgloss"
- "golang.org/x/term"
-)
-
-var logo = `
-▗▄▄▖ ▗▄▖ ▗▖ ▗▖ ▗▄▖ ▗▖ ▗▖▗▖ ▗▖ ▗▄▖
-▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌▐▛▚▖▐▌▐▛▚▖▐▌▐▌ ▐▌
-▐▛▀▚▖▐▛▀▜▌▐▛▀▜▌▐▛▀▜▌▐▌ ▝▜▌▐▌ ▝▜▌▐▛▀▜▌
-▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌▐▌ ▐▌
-`
-
-var (
- highlightColor = lipgloss.Color("#7ee2a8")
- errorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("#ff0000"))
- altCodeStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("#666666")).Bold(true)
- windowStyle = lipgloss.NewStyle().BorderForeground(highlightColor).Padding(2, 0).Align(lipgloss.Center).Border(lipgloss.RoundedBorder())
- inputStyle = lipgloss.NewStyle().Foreground(highlightColor)
-)
-
-// Get terminal size dynamically
-func GetTerminalSize() (width, height int) {
- fd := int(os.Stdin.Fd())
- if w, h, err := term.GetSize(fd); err == nil {
- return w, h
- }
- return 80, 24 // Default size if detection fails
-}
-
-// Clear terminal screen
-func ClearScreen() {
- if len(os.Getenv("DEBUG")) == 0 {
- cmd := exec.Command("clear")
- if os.Getenv("OS") == "Windows_NT" {
- cmd = exec.Command("cmd", "/c", "cls")
- }
- cmd.Stdout = os.Stdout
- cmd.Run()
- }
-}
-
-func getFormWidth(width int) int {
- formWidth := width * 2 / 3
- if formWidth > 80 {
- formWidth = 80 // Cap at 80 chars for readability
- } else if formWidth < 40 {
- formWidth = width - 4 // For small terminals
- }
-
- return formWidth
-}
-
-type RahannaModel struct {
- width int
- height int
- currentModel tea.Model
- auth AuthModel
- play PlayModel
-}
-
-func NewRahannaModel() RahannaModel {
- width, height := GetTerminalSize()
-
- auth := NewAuthModel(width, height)
- play := NewPlayModel(width, height)
-
- var currentModel tea.Model = auth
-
- if _, err := os.Stat(".rahannarc"); !errors.Is(err, os.ErrNotExist) {
- currentModel = play
- }
-
- return RahannaModel{
- width: width,
- height: height,
- currentModel: currentModel,
- auth: auth,
- play: play,
- }
-}
-
-func (m RahannaModel) Init() tea.Cmd {
- return m.currentModel.Init()
-}
-
-type switchModel struct {
- model tea.Model
-}
-
-func SwitchModelCmd(model tea.Model) tea.Cmd {
- s := switchModel{
- model: model,
- }
-
- return func() tea.Msg {
- return s
- }
-}
-
-func (m RahannaModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
- switch msg := msg.(type) {
- case switchModel:
- m.currentModel = msg.model
- return m, nil
- }
- var cmd tea.Cmd
- m.currentModel, cmd = m.currentModel.Update(msg)
- return m, cmd
-}
-
-func (m RahannaModel) View() string {
- return m.currentModel.View()
-}
-
-func handleExit(msg tea.Msg) tea.Cmd {
- switch msg := msg.(type) {
- case tea.KeyMsg:
- switch msg.String() {
- case "ctrl+c":
- return tea.Quit
- }
- }
-
- return nil
-}
-
-func getLogo(width int) string {
- logoStyle := lipgloss.NewStyle().
- Foreground(lipgloss.Color("#7ee2a8")).
- Bold(true).
- Align(lipgloss.Center).
- Width(width)
-
- return logoStyle.Render(logo)
-
-}