-
- {selectedIssue.state === 'OPEN' ? (
-
- ) : (
-
- )}
-
- #{selectedIssue.number} {selectedIssue.title}
-
-
-
- {(() => {
- const isValidating = validatingIssues.has(selectedIssue.number);
- const cached = cachedValidations.get(selectedIssue.number);
- const isStale =
- cached &&
- (Date.now() - new Date(cached.validatedAt).getTime()) / (1000 * 60 * 60) > 24;
-
- if (isValidating) {
- return (
-
- );
- }
-
- if (cached && !isStale) {
- return (
- <>
-
-
- >
- );
- }
-
- if (cached && isStale) {
- return (
- <>
-
-
- >
- );
- }
-
- return (
-
- );
- })()}
-
-
-
-
- {/* Title */}
-
{selectedIssue.title}
-
- {/* Meta info */}
-
-
- {selectedIssue.state === 'OPEN' ? 'Open' : 'Closed'}
-
-
- #{selectedIssue.number} opened {formatDate(selectedIssue.createdAt)} by{' '}
- {selectedIssue.author.login}
-
-
-
- {/* Labels */}
- {selectedIssue.labels.length > 0 && (
-
- {selectedIssue.labels.map((label) => (
-
- {label.name}
-
- ))}
-
- )}
-
- {/* Assignees */}
- {selectedIssue.assignees && selectedIssue.assignees.length > 0 && (
-
-
-
Assigned to:
-
- {selectedIssue.assignees.map((assignee) => (
-
- {assignee.avatarUrl && (
-
- )}
- {assignee.login}
-
- ))}
-
-
- )}
-
- {/* Linked Pull Requests */}
- {selectedIssue.linkedPRs && selectedIssue.linkedPRs.length > 0 && (
-
-
-
- Linked Pull Requests
-
-
- {selectedIssue.linkedPRs.map((pr) => (
-
-
-
- {pr.state === 'open'
- ? 'Open'
- : pr.state === 'merged'
- ? 'Merged'
- : 'Closed'}
-
- #{pr.number}
- {pr.title}
-
-
-
- ))}
-
-
- )}
-
- {/* Body */}
- {selectedIssue.body ? (
-
{selectedIssue.body}
- ) : (
-
No description provided.
- )}
-
- {/* Open in GitHub CTA */}
-
-
- View comments, add reactions, and more on GitHub.
-
-
-
-