MCPcopy Create free account
hub / github.com/cli/cli / issueProjectList

Function issueProjectList

pkg/cmd/issue/view/view.go:417–449  ·  view source on GitHub ↗
(issue api.Issue)

Source from the content-addressed store, hash-verified

415}
416
417func issueProjectList(issue api.Issue) string {
418 totalCount := issue.ProjectCards.TotalCount + issue.ProjectItems.TotalCount
419 count := len(issue.ProjectCards.Nodes) + len(issue.ProjectItems.Nodes)
420
421 if count == 0 {
422 return ""
423 }
424
425 projectNames := make([]string, 0, count)
426
427 for _, project := range issue.ProjectItems.Nodes {
428 colName := project.Status.Name
429 if colName == "" {
430 colName = "No Status"
431 }
432 projectNames = append(projectNames, fmt.Sprintf("%s (%s)", project.Project.Title, colName))
433 }
434
435 // TODO: Remove v1 classic project logic when completely deprecated
436 for _, project := range issue.ProjectCards.Nodes {
437 colName := project.Column.Name
438 if colName == "" {
439 colName = "Awaiting triage"
440 }
441 projectNames = append(projectNames, fmt.Sprintf("%s (%s)", project.Project.Name, colName))
442 }
443
444 list := strings.Join(projectNames, ", ")
445 if totalCount > count {
446 list += ", …"
447 }
448 return list
449}
450
451func issueLabelList(issue *api.Issue, cs *iostreams.ColorScheme) string {
452 if len(issue.Labels.Nodes) == 0 {

Callers 2

printRawIssuePreviewFunction · 0.85
printHumanIssuePreviewFunction · 0.85

Calls 1

JoinMethod · 0.80

Tested by

no test coverage detected