checkpoint: add more colour

- Add a colour for fields
- Add a colour for the account's display name
This commit is contained in:
Dan Anglin 2024-02-24 13:10:41 +00:00
parent 72c2c4796a
commit f4af81947e
Signed by: dananglin
GPG key ID: 0C1D44CFBEE68638
5 changed files with 45 additions and 32 deletions

View file

@ -67,9 +67,9 @@ func (a Account) String() string {
%s
%s
Followers: %d
Following: %d
Statuses: %d
%s %d
%s %d
%s %d
%s
%s
@ -84,28 +84,28 @@ func (a Account) String() string {
for _, field := range a.Fields {
metadata += fmt.Sprintf(
"\n %s: %s",
field.Name,
utilities.FieldFormat(field.Name),
utilities.StripHTMLTags(field.Value),
)
}
return fmt.Sprintf(
format,
a.DisplayName,
utilities.DisplayNameFormat(a.DisplayName),
a.Username,
utilities.Header("ACCOUNT ID:"),
utilities.HeaderFormat("ACCOUNT ID:"),
a.ID,
utilities.Header("JOINED ON:"),
utilities.HeaderFormat("JOINED ON:"),
utilities.FormatDate(a.CreatedAt),
utilities.Header("STATS:"),
a.FollowersCount,
a.FollowingCount,
a.StatusCount,
utilities.Header("BIOGRAPHY:"),
utilities.HeaderFormat("STATS:"),
utilities.FieldFormat("Followers:"), a.FollowersCount,
utilities.FieldFormat("Followeing:"), a.FollowingCount,
utilities.FieldFormat("Statuses:"), a.StatusCount,
utilities.HeaderFormat("BIOGRAPHY:"),
utilities.WrapLine(utilities.StripHTMLTags(a.Note), "\n ", 80),
utilities.Header("METADATA:"),
utilities.HeaderFormat("METADATA:"),
metadata,
utilities.Header("ACCOUNT URL:"),
utilities.HeaderFormat("ACCOUNT URL:"),
a.URL,
)
}

View file

@ -123,23 +123,26 @@ func (i InstanceV2) String() string {
Running GoToSocial %s
%s
name: %s
username: %s
email: %s
%s %s
%s %s
%s %s
`
return fmt.Sprintf(
format,
utilities.Header("INSTANCE:"),
utilities.HeaderFormat("INSTANCE:"),
i.Title,
i.Description,
utilities.Header("DOMAIN:"),
utilities.HeaderFormat("DOMAIN:"),
i.Domain,
utilities.Header("VERSION:"),
utilities.HeaderFormat("VERSION:"),
i.Version,
utilities.Header("CONTACT:"),
i.Contact.Account.DisplayName,
utilities.HeaderFormat("CONTACT:"),
utilities.FieldFormat("Name:"),
utilities.DisplayNameFormat(i.Contact.Account.DisplayName),
utilities.FieldFormat("Username:"),
i.Contact.Account.Username,
utilities.FieldFormat("Email:"),
i.Contact.Email,
)
}

View file

@ -179,21 +179,21 @@ func (s Status) String() string {
return fmt.Sprintf(
format,
s.Account.DisplayName,
utilities.DisplayNameFormat(s.Account.DisplayName),
s.Account.Username,
utilities.Header("CONTENT:"),
utilities.HeaderFormat("CONTENT:"),
utilities.StripHTMLTags(s.Content),
utilities.Header("STATUS ID:"),
utilities.HeaderFormat("STATUS ID:"),
s.ID,
utilities.Header("CREATED AT:"),
utilities.HeaderFormat("CREATED AT:"),
utilities.FormatTime(s.CreatedAt),
utilities.Header("STATS:"),
utilities.HeaderFormat("STATS:"),
s.RebloggsCount,
s.FavouritesCount,
s.RepliesCount,
utilities.Header("VISIBILITY:"),
utilities.HeaderFormat("VISIBILITY:"),
s.Visibility,
utilities.Header("URL:"),
utilities.HeaderFormat("URL:"),
s.URL,
)
}

View file

@ -19,9 +19,9 @@ func (t Timeline) String() string {
builder.WriteString(t.Name + "\n" + separator + "\n")
for _, status := range t.Statuses {
builder.WriteString(status.Account.DisplayName + " (@" + status.Account.Username + ")\n\n")
builder.WriteString(utilities.DisplayNameFormat(status.Account.DisplayName) + " (@" + status.Account.Username + ")\n\n")
builder.WriteString(utilities.WrapLine(utilities.StripHTMLTags(status.Content), "\n", 80) + "\n\n")
builder.WriteString("ID: " + status.ID + "\tCreated at: " + utilities.FormatTime(status.CreatedAt) + "\n")
builder.WriteString(utilities.FieldFormat("ID:") + " " + status.ID + "\t" + utilities.FieldFormat("Created at:") + " " + utilities.FormatTime(status.CreatedAt) + "\n")
builder.WriteString(separator + "\n")
}

View file

@ -11,6 +11,8 @@ import (
const (
reset = "\033[0m"
boldblue = "\033[34;1m"
boldmagenta = "\033[35;1m"
green = "\033[32m"
)
func StripHTMLTags(text string) string {
@ -52,10 +54,18 @@ func WrapLine(line, separator string, charLimit int) string {
return builder.String()
}
func Header(text string) string {
func HeaderFormat(text string) string {
return boldblue + text + reset
}
func FieldFormat(text string) string {
return green + text + reset
}
func DisplayNameFormat(text string) string {
return boldmagenta + text + reset
}
func FormatDate(date time.Time) string {
return date.Local().Format("02 Jan 2006")
}