mirror of
https://gitea.com/gitea/tea.git
synced 2026-06-06 03:08:44 +02:00
28ba9b915b
Reviewed-on: https://gitea.com/gitea/tea/pulls/1006 Reviewed-by: Zettat123 <39446+zettat123@noreply.gitea.com>
74 lines
1.5 KiB
Go
74 lines
1.5 KiB
Go
// Copyright 2026 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package print
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"gitea.dev/sdk"
|
|
)
|
|
|
|
// PullReviewCommentFields are all available fields to print with PullReviewCommentsList()
|
|
var PullReviewCommentFields = []string{
|
|
"id",
|
|
"body",
|
|
"reviewer",
|
|
"path",
|
|
"line",
|
|
"resolver",
|
|
"created",
|
|
"updated",
|
|
"url",
|
|
}
|
|
|
|
// PullReviewCommentsList prints a listing of pull review comments
|
|
func PullReviewCommentsList(comments []*gitea.PullReviewComment, output string, fields []string) error {
|
|
printables := make([]printable, len(comments))
|
|
for i, c := range comments {
|
|
printables[i] = &printablePullReviewComment{c}
|
|
}
|
|
t := tableFromItems(fields, printables, isMachineReadable(output))
|
|
return t.print(output)
|
|
}
|
|
|
|
type printablePullReviewComment struct {
|
|
*gitea.PullReviewComment
|
|
}
|
|
|
|
func (x printablePullReviewComment) FormatField(field string, machineReadable bool) string {
|
|
switch field {
|
|
case "id":
|
|
return fmt.Sprintf("%d", x.ID)
|
|
case "body":
|
|
return x.Body
|
|
case "reviewer":
|
|
if x.Reviewer != nil {
|
|
return formatUserName(x.Reviewer)
|
|
}
|
|
return ""
|
|
case "path":
|
|
return x.Path
|
|
case "line":
|
|
if x.LineNum != 0 {
|
|
return fmt.Sprintf("%d", x.LineNum)
|
|
}
|
|
if x.OldLineNum != 0 {
|
|
return fmt.Sprintf("%d", x.OldLineNum)
|
|
}
|
|
return ""
|
|
case "resolver":
|
|
if x.Resolver != nil {
|
|
return formatUserName(x.Resolver)
|
|
}
|
|
return ""
|
|
case "created":
|
|
return FormatTime(x.Created, machineReadable)
|
|
case "updated":
|
|
return FormatTime(x.Updated, machineReadable)
|
|
case "url":
|
|
return x.HTMLURL
|
|
}
|
|
return ""
|
|
}
|