MujicaUI

Git · #315

PullRequestCard 浅色主题渲染快照
浅色 · 渲染快照
PullRequestCard 深色主题渲染快照
深色 · 渲染快照

315 PullRequestCard 拉取请求卡片

用途

概览一个拉取请求:标题、作者、状态、检查、评审人与差异统计。

最小示例

pr := git.PullRequest{Number: 42, Title: "Add git components", Author: "Sakiko", Head: "feature", Base: "main",
	ChecksPassed: 3, Reviewers: []git.Reviewer{{Name: "Uika", State: git.ReviewApproved}}, Added: 120, Deleted: 8, Files: 6}
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	if git.PullRequestCard(c, pr, git.PullRequestCardOptions{}).Changed() {
		// open the pull request
	}
}
ui.Render(view, 400, 300, 1)

签名:func PullRequestCard(c *ui.Context, pr PullRequest, opts PullRequestCardOptions) ChoiceResult

参数

PullRequest

字段类型默认值含义
Numberint必填编号,须为正。
Titlestring必填标题。
Authorstring""作者。
StatePullRequestStatePullRequestOpenOpen、Draft、Merged、Closed;未知值 panic。
Head, Basestring""源分支与目标分支,都有值时显示。
ChecksPassed, ChecksFailed, ChecksPendingint0检查计数;为负 panic。
Reviewers[]Reviewernil评审人与状态(Pending、Approved、ChangesRequested)。
Added, Deleted, Filesint0差异统计。

PullRequestCardOptions

字段类型默认值含义
Disabledboolfalse禁用打开。

返回 ChoiceResult。

状态

  • 状态徽章同时使用图标、文字与描边颜色。
  • 检查以图标加数字显示,朗读完整说明;为 0 的类别不显示。
  • 评审人以头像加角标图标表示状态,名称与状态写入提示和朗读文本。

事件

  • Changed():点击标题或在标题上按 Enter,表示打开。

键盘操作

  • Tab 到标题链接,Enter 或 Space 打开。

限制

  • 数据由调用方获取;组件不刷新检查状态。