From a4eeaf58ff4029643a1b8dfbecc59abd161c0eb1 Mon Sep 17 00:00:00 2001 From: Christian Rocha Date: Tue, 5 Jul 2022 19:48:38 -0700 Subject: [PATCH] chore: organize tree style names --- ui/pages/repo/filesitem.go | 35 +++++++++++++++-------------- ui/styles/styles.go | 46 +++++++++++++++++++++----------------- 2 files changed, 43 insertions(+), 38 deletions(-) diff --git a/ui/pages/repo/filesitem.go b/ui/pages/repo/filesitem.go index 95f9d5a565b182d20e67e7d24e848654d5c0ebca..1934b440ad5ab1bea0869403dfbdcaf226b3d87f 100644 --- a/ui/pages/repo/filesitem.go +++ b/ui/pages/repo/filesitem.go @@ -96,12 +96,13 @@ func (d FileItemDelegate) Update(msg tea.Msg, m *list.Model) tea.Cmd { // Render implements list.ItemDelegate. func (d FileItemDelegate) Render(w io.Writer, m list.Model, index int, listItem list.Item) { - s := d.common.Styles.Tree i, ok := listItem.(FileItem) if !ok { return } + s := d.common.Styles.Tree + name := i.Title() size := humanize.Bytes(uint64(i.entry.Size())) size = strings.ReplaceAll(size, " ", "") @@ -109,32 +110,32 @@ func (d FileItemDelegate) Render(w io.Writer, m list.Model, index int, listItem if i.entry.IsTree() { size = strings.Repeat(" ", sizeLen) if index == m.Index() { - name = s.FileDirActive.Render(name) + name = s.Active.FileDir.Render(name) } else { - name = s.FileDirInactive.Render(name) + name = s.Normal.FileDir.Render(name) } } var nameStyle, sizeStyle, modeStyle lipgloss.Style mode := i.Mode() if index == m.Index() { - nameStyle = s.ItemActive - sizeStyle = s.FileSizeActive - modeStyle = s.FileModeActive - fmt.Fprint(w, s.ItemSelector.Render(">")) + nameStyle = s.Active.FileName + sizeStyle = s.Active.FileSize + modeStyle = s.Active.FileMode + fmt.Fprint(w, s.Selector.Render(">")) } else { - nameStyle = s.ItemInactive - sizeStyle = s.FileSizeInactive - modeStyle = s.FileModeInactive - fmt.Fprint(w, s.ItemSelector.Render(" ")) + nameStyle = s.Normal.FileName + sizeStyle = s.Normal.FileSize + modeStyle = s.Normal.FileMode + fmt.Fprint(w, s.Selector.Render(" ")) } sizeStyle = sizeStyle.Copy(). Width(8). Align(lipgloss.Right). MarginLeft(1) - leftMargin := s.ItemSelector.GetMarginLeft() + - s.ItemSelector.GetWidth() + - s.FileModeInactive.GetMarginLeft() + - s.FileModeInactive.GetWidth() + + leftMargin := s.Selector.GetMarginLeft() + + s.Selector.GetWidth() + + s.Normal.FileMode.GetMarginLeft() + + s.Normal.FileMode.GetWidth() + nameStyle.GetMarginLeft() + sizeStyle.GetHorizontalFrameSize() name = common.TruncateString(name, m.Width()-leftMargin) @@ -142,8 +143,8 @@ func (d FileItemDelegate) Render(w io.Writer, m list.Model, index int, listItem size = sizeStyle.Render(size) modeStr := modeStyle.Render(mode.String()) truncate := lipgloss.NewStyle().MaxWidth(m.Width() - - s.ItemSelector.GetHorizontalFrameSize() - - s.ItemSelector.GetWidth()) + s.Selector.GetHorizontalFrameSize() - + s.Selector.GetWidth()) fmt.Fprint(w, truncate.Render(fmt.Sprintf("%s%s%s", modeStr, diff --git a/ui/styles/styles.go b/ui/styles/styles.go index 2243a13e83188a03317e700f7c6a875f3613e349..f14ec339e88b6512ac9b5a3ce35a8b0ca156a035 100644 --- a/ui/styles/styles.go +++ b/ui/styles/styles.go @@ -85,18 +85,22 @@ type Styles struct { } Tree struct { - ItemSelector lipgloss.Style - ItemActive lipgloss.Style - ItemInactive lipgloss.Style - FileDirInactive lipgloss.Style - FileDirActive lipgloss.Style - FileModeInactive lipgloss.Style - FileModeActive lipgloss.Style - FileSizeInactive lipgloss.Style - FileSizeActive lipgloss.Style - FileContent lipgloss.Style - Paginator lipgloss.Style - NoItems lipgloss.Style + Normal struct { + FileName lipgloss.Style + FileDir lipgloss.Style + FileMode lipgloss.Style + FileSize lipgloss.Style + } + Active struct { + FileName lipgloss.Style + FileDir lipgloss.Style + FileMode lipgloss.Style + FileSize lipgloss.Style + } + Selector lipgloss.Style + FileContent lipgloss.Style + Paginator lipgloss.Style + NoItems lipgloss.Style } Spinner lipgloss.Style @@ -312,34 +316,34 @@ func DefaultStyles() *Styles { s.Ref.Paginator = s.Log.Paginator.Copy() - s.Tree.ItemSelector = s.Tree.ItemInactive.Copy(). + s.Tree.Selector = s.Tree.Normal.FileName.Copy(). Width(1). Foreground(selectorColor) - s.Tree.ItemInactive = lipgloss.NewStyle(). + s.Tree.Normal.FileName = lipgloss.NewStyle(). MarginLeft(1) - s.Tree.ItemActive = s.Tree.ItemInactive.Copy(). + s.Tree.Active.FileName = s.Tree.Normal.FileName.Copy(). Bold(true). Foreground(highlightColor) - s.Tree.FileDirInactive = lipgloss.NewStyle(). + s.Tree.Normal.FileDir = lipgloss.NewStyle(). Foreground(lipgloss.Color("39")) - s.Tree.FileDirActive = lipgloss.NewStyle(). + s.Tree.Active.FileDir = lipgloss.NewStyle(). Foreground(highlightColor) - s.Tree.FileModeInactive = s.Tree.ItemInactive.Copy(). + s.Tree.Normal.FileMode = s.Tree.Active.FileName.Copy(). Width(10). Foreground(lipgloss.Color("243")) - s.Tree.FileModeActive = s.Tree.FileModeInactive.Copy(). + s.Tree.Active.FileMode = s.Tree.Normal.FileMode.Copy(). Foreground(highlightColorDim) - s.Tree.FileSizeInactive = s.Tree.ItemInactive.Copy(). + s.Tree.Normal.FileSize = s.Tree.Normal.FileName.Copy(). Foreground(lipgloss.Color("243")) - s.Tree.FileSizeActive = s.Tree.ItemInactive.Copy(). + s.Tree.Active.FileSize = s.Tree.Normal.FileName.Copy(). Foreground(highlightColorDim) s.Tree.FileContent = lipgloss.NewStyle()