fix: properly aligned TUI layout with consistent spacing

This commit is contained in:
2025-11-05 13:33:49 +00:00
parent 4bf0b2d5de
commit e377a8f490

View File

@@ -192,28 +192,30 @@ func (m BackupExecutionModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
func (m BackupExecutionModel) View() string { func (m BackupExecutionModel) View() string {
var s strings.Builder var s strings.Builder
// Clear screen with newlines and render header
s.WriteString("\n\n")
header := titleStyle.Render("🔄 Backup Execution") header := titleStyle.Render("🔄 Backup Execution")
s.WriteString(fmt.Sprintf("\n%s\n\n", header)) s.WriteString(header)
s.WriteString("\n\n")
// Backup details // Backup details - properly aligned
s.WriteString(fmt.Sprintf("%-12s %s\n", "Type:", m.backupType)) s.WriteString(fmt.Sprintf(" %-10s %s\n", "Type:", m.backupType))
if m.databaseName != "" { if m.databaseName != "" {
s.WriteString(fmt.Sprintf("%-12s %s\n", "Database:", m.databaseName)) s.WriteString(fmt.Sprintf(" %-10s %s\n", "Database:", m.databaseName))
} }
if m.ratio > 0 { if m.ratio > 0 {
s.WriteString(fmt.Sprintf("%-12s %d\n", "Sample Ratio:", m.ratio)) s.WriteString(fmt.Sprintf(" %-10s %d\n", "Sample:", m.ratio))
} }
s.WriteString(fmt.Sprintf("%-12s %s\n", "Duration:", time.Since(m.startTime).Round(time.Second))) s.WriteString(fmt.Sprintf(" %-10s %s\n", "Duration:", time.Since(m.startTime).Round(time.Second)))
s.WriteString("\n") s.WriteString("\n")
// Status with spinner // Status with spinner
if !m.done { if !m.done {
spinner := []string{"⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"} spinner := []string{"⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"}
frame := int(time.Since(m.startTime).Milliseconds()/100) % len(spinner) frame := int(time.Since(m.startTime).Milliseconds()/100) % len(spinner)
s.WriteString(fmt.Sprintf("%-12s %s %s\n", "Status:", spinner[frame], m.status)) s.WriteString(fmt.Sprintf(" %s %s\n", spinner[frame], m.status))
} else { } else {
s.WriteString(fmt.Sprintf("%-12s %s\n", "Status:", m.status)) s.WriteString(fmt.Sprintf(" %s\n\n", m.status))
s.WriteString("\n")
if m.err != nil { if m.err != nil {
s.WriteString(fmt.Sprintf(" ❌ Error: %v\n", m.err)) s.WriteString(fmt.Sprintf(" ❌ Error: %v\n", m.err))
@@ -223,7 +225,7 @@ func (m BackupExecutionModel) View() string {
for _, line := range lines { for _, line := range lines {
line = strings.TrimSpace(line) line = strings.TrimSpace(line)
if line != "" { if line != "" {
s.WriteString(line + "\n") s.WriteString(" " + line + "\n")
} }
} }
} }