From 9b6e3cd92a9e46d22c83ef51c77cfc4726e319e0 Mon Sep 17 00:00:00 2001 From: Adesh Deshmukh Date: Tue, 16 Jun 2026 01:31:24 +0530 Subject: [PATCH] fix: stop mutating package-level columns variable in member list view MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The ListMembers function was modifying the global 'columns' variable when rendering in non-wide mode via utils.RemoveColumns. This meant that after the first non-wide call, every subsequent call — even with --wide — would see a truncated set of columns. Fix by making a local copy of the columns slice at the start of the function and operating on that instead. The global now serves only as a read-only template. Fixes #3 Signed-off-by: Adesh Deshmukh --- pkg/views/member/list/view.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pkg/views/member/list/view.go b/pkg/views/member/list/view.go index 737314e2a..1b2893522 100644 --- a/pkg/views/member/list/view.go +++ b/pkg/views/member/list/view.go @@ -37,6 +37,13 @@ var columns = []table.Column{ func ListMembers(members []*models.ProjectMemberEntity, wide bool) { var rows []table.Row + localColumns := columns + + if !wide { + colsToRemove := []string{"Role ID", "Project ID"} + localColumns = utils.RemoveColumns(localColumns, colsToRemove) + } + for _, member := range members { memberID := strconv.FormatInt(member.ID, 10) roleName := utils.CamelCaseToHR(member.RoleName) @@ -61,10 +68,8 @@ func ListMembers(members []*models.ProjectMemberEntity, wide bool) { projectID, }) } else { - colsToRemove := []string{"Role ID", "Project ID"} - columns = utils.RemoveColumns(columns, colsToRemove) rows = append(rows, table.Row{ - memberID, // Member Name + memberID, member.EntityName, memberType, roleName, @@ -72,7 +77,7 @@ func ListMembers(members []*models.ProjectMemberEntity, wide bool) { } } - m := tablelist.NewModel(columns, rows, len(rows)) + m := tablelist.NewModel(localColumns, rows, len(rows)) if _, err := tea.NewProgram(m).Run(); err != nil { fmt.Println("Error running program:", err)