diff --git a/ui/src/pages/Inbox.tsx b/ui/src/pages/Inbox.tsx index 4d7f3b0b..cf7c1052 100644 --- a/ui/src/pages/Inbox.tsx +++ b/ui/src/pages/Inbox.tsx @@ -482,7 +482,7 @@ export function Inbox() { allCategoryFilter === "everything" || allCategoryFilter === "failed_runs"; const showAlertsCategory = allCategoryFilter === "everything" || allCategoryFilter === "alerts"; - const approvalsToRender = tab === "unread" ? actionableApprovals : filteredAllApprovals; + const approvalsToRender = tab === "all" ? filteredAllApprovals : actionableApprovals; const showTouchedSection = tab === "all" ? showTouchedCategory && hasTouchedIssues @@ -490,14 +490,13 @@ export function Inbox() { ? unreadTouchedIssues.length > 0 : hasTouchedIssues; const showJoinRequestsSection = - tab === "all" ? showJoinRequestsCategory && hasJoinRequests : hasJoinRequests; - const showApprovalsSection = - tab === "unread" - ? actionableApprovals.length > 0 - : showApprovalsCategory && filteredAllApprovals.length > 0; + tab === "all" ? showJoinRequestsCategory && hasJoinRequests : tab === "unread" && hasJoinRequests; + const showApprovalsSection = tab === "all" + ? showApprovalsCategory && filteredAllApprovals.length > 0 + : actionableApprovals.length > 0; const showFailedRunsSection = - tab === "all" ? showFailedRunsCategory && hasRunFailures : hasRunFailures; - const showAlertsSection = tab === "all" ? showAlertsCategory && hasAlerts : hasAlerts; + tab === "all" ? showFailedRunsCategory && hasRunFailures : tab === "unread" && hasRunFailures; + const showAlertsSection = tab === "all" ? showAlertsCategory && hasAlerts : tab === "unread" && hasAlerts; const visibleSections = [ showFailedRunsSection ? "failed_runs" : null, @@ -772,82 +771,52 @@ export function Inbox() { state={issueLinkState} className="flex min-w-0 cursor-pointer items-start gap-2 px-3 py-3 no-underline text-inherit transition-colors hover:bg-accent/50 sm:items-center sm:gap-3 sm:px-4" > - - - - {issue.title} - - - {issue.lastExternalCommentAt - ? `commented ${timeAgo(issue.lastExternalCommentAt)}` - : `updated ${timeAgo(issue.updatedAt)}`} - - - - {(isUnread || isFading) ? ( - { - e.preventDefault(); - e.stopPropagation(); - markReadMutation.mutate(issue.id); - }} - onKeyDown={(e) => { - if (e.key === "Enter" || e.key === " ") { - e.preventDefault(); - e.stopPropagation(); - markReadMutation.mutate(issue.id); - } - }} - className="hidden sm:inline-flex h-4 w-4 shrink-0 cursor-pointer items-center justify-center rounded-full transition-colors hover:bg-blue-500/20" - aria-label="Mark as read" - > - - - ) : ( - - )} - - - - - {issue.identifier ?? issue.id.slice(0, 8)} - - - - - {/* Unread dot - right side, vertically centered (mobile only; desktop keeps inline) */} - {(isUnread || isFading) && ( - { - e.preventDefault(); - e.stopPropagation(); - markReadMutation.mutate(issue.id); - }} - onKeyDown={(e) => { - if (e.key === "Enter" || e.key === " ") { + + {(isUnread || isFading) ? ( + { e.preventDefault(); e.stopPropagation(); markReadMutation.mutate(issue.id); - } - }} - className="shrink-0 self-center cursor-pointer sm:hidden" - aria-label="Mark as read" - > - + }} + onKeyDown={(e) => { + if (e.key === "Enter" || e.key === " ") { + e.preventDefault(); + e.stopPropagation(); + markReadMutation.mutate(issue.id); + } + }} + className="inline-flex h-4 w-4 cursor-pointer items-center justify-center rounded-full transition-colors hover:bg-blue-500/20" + aria-label="Mark as read" + > + + + ) : ( + + + + + + {issue.identifier ?? issue.id.slice(0, 8)} + + + + {issue.title} - )} + + + {issue.lastExternalCommentAt + ? `commented ${timeAgo(issue.lastExternalCommentAt)}` + : `updated ${timeAgo(issue.updatedAt)}`} + ); })}