package formatter import ( "encoding/json" "fmt" "git.db.org.ai/dborg/internal/models" "strings" ) func FormatGitHubLeads(lead *models.GitHubLeadsStreamResponse, jsonOutput bool) (string, error) { if jsonOutput { data, err := json.Marshal(lead.Lead) if err != nil { return "", fmt.Errorf("failed to marshal GitHub lead: %w", err) } return string(data), nil } var output strings.Builder output.WriteString(fmt.Sprintf("Repository: %s\n", lead.Lead.Repository)) output.WriteString(fmt.Sprintf("Author: %s\n", lead.Lead.Author)) output.WriteString(fmt.Sprintf("Email: %s\n", lead.Lead.Email)) output.WriteString(fmt.Sprintf("Commit: %s\n", lead.Lead.Commit)) output.WriteString(fmt.Sprintf("Date: %s\n", lead.Lead.Date)) output.WriteString(fmt.Sprintf("Message: %s\n", lead.Lead.Message)) output.WriteString("---\n") return output.String(), nil }