Commit 1132790778

1132790778bf29a552b596801be767c483cfca74

parent: 44312d0fdf

Verified · cmc

cmc <hello@cleberg.net> · 2026-09-30 02:05 UTC

Open the new issue after creating it

Layout: unified · split

gitbay/Views/Issues/IssueListView.swift +9 −1
@@ -9,8 +9,12 @@ struct IssueListView: View {
99 @State private var draftTitle = ""
1010 @State private var draftBody = ""
1111 @State private var draftFormat = "md"
12 @State private var createdIssue: Int64?
13
14 private let client: GitbayClient
1215
1316 init(client: GitbayClient, repo: String) {
17 self.client = client
1418 _model = State(initialValue: IssueListViewModel(client: client, repoPath: repo))
1519 _createModel = State(initialValue: IssueCreateViewModel(client: client, repoPath: repo))
1620 }
@@ -92,16 +96,20 @@ struct IssueListView: View {
9296 ) {
9397 createModel.format = draftFormat
9498 Task {
95 if await createModel.create(title: draftTitle, body: draftBody) != nil {
99 if let number = await createModel.create(title: draftTitle, body: draftBody) {
96100 draftTitle = ""
97101 draftBody = ""
98102 draftFormat = "md"
99103 composing = false
104 createdIssue = number
100105 await model.load()
101106 }
102107 }
103108 }
104109 }
110 .navigationDestination(item: $createdIssue) { number in
111 IssueView(client: client, repo: model.repoPath, number: number)
112 }
105113 .task { await model.loadIfNeeded() }
106114 .task { await createModel.loadTemplates() }
107115 .refreshable { await model.load() }