aboutsummaryrefslogtreecommitdiffstats
path: root/web_src/js/features/issue.ts
diff options
context:
space:
mode:
Diffstat (limited to 'web_src/js/features/issue.ts')
-rw-r--r--web_src/js/features/issue.ts23
1 files changed, 16 insertions, 7 deletions
diff --git a/web_src/js/features/issue.ts b/web_src/js/features/issue.ts
index a56015a2a2..911cf713d9 100644
--- a/web_src/js/features/issue.ts
+++ b/web_src/js/features/issue.ts
@@ -1,17 +1,21 @@
import type {Issue} from '../types.ts';
+// the getIssueIcon/getIssueColor logic should be kept the same as "templates/shared/issueicon.tmpl"
+
export function getIssueIcon(issue: Issue) {
if (issue.pull_request) {
if (issue.state === 'open') {
- if (issue.pull_request.draft === true) {
+ if (issue.pull_request.draft) {
return 'octicon-git-pull-request-draft'; // WIP PR
}
return 'octicon-git-pull-request'; // Open PR
- } else if (issue.pull_request.merged === true) {
+ } else if (issue.pull_request.merged) {
return 'octicon-git-merge'; // Merged PR
}
- return 'octicon-git-pull-request'; // Closed PR
- } else if (issue.state === 'open') {
+ return 'octicon-git-pull-request-closed'; // Closed PR
+ }
+
+ if (issue.state === 'open') {
return 'octicon-issue-opened'; // Open Issue
}
return 'octicon-issue-closed'; // Closed Issue
@@ -19,12 +23,17 @@ export function getIssueIcon(issue: Issue) {
export function getIssueColor(issue: Issue) {
if (issue.pull_request) {
- if (issue.pull_request.draft === true) {
- return 'grey'; // WIP PR
- } else if (issue.pull_request.merged === true) {
+ if (issue.state === 'open') {
+ if (issue.pull_request.draft) {
+ return 'grey'; // WIP PR
+ }
+ return 'green'; // Open PR
+ } else if (issue.pull_request.merged) {
return 'purple'; // Merged PR
}
+ return 'red'; // Closed PR
}
+
if (issue.state === 'open') {
return 'green'; // Open Issue
}