╭ changed ─────────────╮ │src/ui/Repo/Events.zig│ ╰──────────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭───────────────────────────────────────────────────╮ │187 .user => evt.User, │ │188 .repo => evt.Repo, │ │189 .issue => evt.Issue, │ │190 + .discussion => evt.Discussion,│ │191 .comment => evt.Comment, │ │192 .attach => evt.Attachment, │ │193 }; │ ╰───────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │230 item.author = try ui.Author.initFromEmail(admin_moment, arena, record.author_email); │ │231 if (!include_view_url) return item; │ │232 const route = ui.RoutablePage.repoIssueCommentsRoute(identity, item.id, 0) orelse return error.RouteTooLong; │ │233 + item.view_url = try route.toUrl(arena); │ │234 + }, │ │235 + .discussion => { │ │236 + const record = (try readRecord(evt.Discussion, hash_kind, arena, haxy_moment, id)) orelse return null; │ │237 + item.author = try ui.Author.initFromEmail(admin_moment, arena, record.author_email); │ │238 + if (!include_view_url) return item; │ │239 + const route = ui.RoutablePage.repoDiscussionCommentsRoute(identity, item.id, 0) orelse return error.RouteTooLong;│ │240 item.view_url = try route.toUrl(arena); │ │241 }, │ │242 .comment => { │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │248 const thread_kind = (try evt.readEventKind(hash_kind, kind_map, &thread_id)) orelse return item; │ │249 const route = switch (thread_kind) { │ │250 .issue => ui.RoutablePage.repoCommentsRoute(identity, &record.event.thread_id, item.id, 0), │ │251 + .discussion => ui.RoutablePage.repoDiscussionCommentRoute(identity, &record.event.thread_id, item.id, 0),│ │252 else => null, │ │253 } orelse return item; │ │254 item.view_url = try route.toUrl(arena); │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │262 const parent_kind = (try evt.readEventKind(hash_kind, kind_map, &parent_id)) orelse return item; │ │263 const route = switch (parent_kind) { │ │264 .issue => ui.RoutablePage.repoIssueCommentsRoute(identity, &record.event.parent_id, 0), │ │265 + .discussion => ui.RoutablePage.repoDiscussionCommentsRoute(identity, &record.event.parent_id, 0),│ │266 else => null, │ │267 } orelse return item; │ │268 item.view_url = try route.toUrl(arena); │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯