From ede460bf7942d15cedcb837ed64ea8e5cd7a3202 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=83=9E=E3=83=AA=E3=82=A6=E3=82=B9?= Date: Fri, 30 Dec 2022 22:07:09 -0500 Subject: [PATCH] Adjusted post rendering, added comments --- ui/views/posts/posts.go | 54 +++++++++++++++++++++++++++++++++++------ 1 file changed, 46 insertions(+), 8 deletions(-) diff --git a/ui/views/posts/posts.go b/ui/views/posts/posts.go index b03b39a..58334fc 100644 --- a/ui/views/posts/posts.go +++ b/ui/views/posts/posts.go @@ -55,6 +55,20 @@ var ( Background(lipgloss.Color("#F25D94")). MarginRight(2). Underline(true) + + postAuthorStyle = lipgloss.NewStyle(). + Foreground(lipgloss.Color("#F25D94")). + Padding(0, 1) + + postSubjectStyle = lipgloss.NewStyle(). + Foreground(lipgloss.Color("#FFFFFF")). + Background(lipgloss.Color("#F25D94")). + Padding(0, 1) + + replyAuthorStyle = lipgloss.NewStyle(). + Foreground(lipgloss.Color("#FFFFFF")). + Background(lipgloss.Color("#888B7E")). + Padding(0, 1) ) type KeyMap struct { @@ -250,18 +264,42 @@ func (m *Model) renderViewport(post *post.Post) string { m.ctx.Logger.Error(err) m.glam = nil } - vp = fmt.Sprintf( - "# %s\n\n%s", - post.Subject, - post.Body, - ) - out, err := m.glam.Render(vp) + adj := "writes" + if post.Subject[len(post.Subject)-1:] == "?" { + adj = "asks" + } + + body, err := m.glam.Render(post.Body) if err != nil { m.ctx.Logger.Error(err) - out = vp + body = post.Body + } + vp = fmt.Sprintf( + " %s\n %s\n%s", + postAuthorStyle.Render( + fmt.Sprintf("%s %s:", post.Author.Name, adj), + ), + postSubjectStyle.Render(post.Subject), + body, + ) + + for _, reply := range post.Replies { + body, err := m.glam.Render(reply.Body) + if err != nil { + m.ctx.Logger.Error(err) + body = reply.Body + } + vp = fmt.Sprintf( + "%s\n\n %s\n%s", + vp, + replyAuthorStyle.Render( + fmt.Sprintf("%s writes:", reply.Author.Name), + ), + body, + ) } m.viewportOpen = true - return out + return vp }