Show issue state icons in lists

This commit is contained in:
Georg Bauer
2026-07-31 17:07:13 +02:00
parent f38c3c4939
commit e39695fc60
6 changed files with 48 additions and 21 deletions

View File

@@ -38,6 +38,7 @@ pub struct LabelRow {
#[derive(Clone, uniffi::Record)]
pub struct IssueRow {
pub number: i64,
pub state: String,
pub title: String,
pub summary: String,
pub meta: String,
@@ -288,6 +289,7 @@ pub fn issue_rows(issues: &[models::Issue]) -> Vec<IssueRow> {
.iter()
.map(|issue| IssueRow {
number: issue.number.unwrap_or_default(),
state: issue.state.clone().unwrap_or_else(|| "unknown".into()),
title: issue
.title
.clone()
@@ -1251,10 +1253,13 @@ mod tests {
assert_eq!(milestone_row.progress, 0.4);
assert_eq!(milestone_row.progress_accessibility, "2 closed, 3 open");
let issue = models::Issue {
state: Some("closed".into()),
milestone: Some(Box::new(milestone)),
..Default::default()
};
assert_eq!(issue_rows(&[issue])[0].milestone, "Version 1");
let row = &issue_rows(&[issue])[0];
assert_eq!(row.state, "closed");
assert_eq!(row.milestone, "Version 1");
}
#[test]