Update issue state to new serialization

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
This commit is contained in:
Sebastian Martinez
2022-06-22 13:49:11 +02:00
parent b2c2aeea3c
commit 638fecfc79
3 changed files with 13 additions and 13 deletions
+4 -5
View File
@@ -90,7 +90,7 @@
padding: 0.5rem 1rem;
border-radius: 1.25rem;
}
.opened {
.open {
color: var(--color-positive);
background-color: var(--color-positive-background);
}
@@ -114,7 +114,6 @@
{#await Issue.getIssue(project.urn, issue, project.seed.api)}
<Loading center />
{:then issue}
{@const state = issue.state === "open" ? "open" : "closed"}
<div class="issue">
<header>
<div class="summary">
@@ -126,10 +125,10 @@
</div>
<div
class="summary-state"
class:closed={issue.state !== "open"}
class:opened={issue.state == "open"}
class:closed={issue.state.status === "closed"}
class:open={issue.state.status === "open"}
>
{capitalize(state)}
{capitalize(issue.state.status)}
</div>
</div>
<div class="text-small">
+2 -2
View File
@@ -99,8 +99,8 @@
<div class="state">
<div
class="state-icon"
class:closed={issue.state !== "open"}
class:open={issue.state === "open"}
class:closed={issue.state.status === "closed"}
class:open={issue.state.status === "open"}
/>
</div>
<div class="column-left">
+7 -6
View File
@@ -11,7 +11,12 @@ export interface IIssue {
timestamp: number;
}
export type State = { closed: { reason: string } } | "open";
export type State = {
status: "open";
} | {
status: "closed";
reason: string;
};
export interface Comment {
author: Author;
@@ -36,11 +41,7 @@ export type Label = string;
export function groupIssues(issues: Issue[]): { open: Issue[]; closed: Issue[] } {
return issues.reduce((acc, issue) => {
if (issue.state === 'open') {
acc.open.push(issue);
} else {
acc.closed.push(issue);
}
acc[issue.state.status].push(issue);
return acc;
}, { open: [] as Issue[], closed: [] as Issue[] });
}