feat: add function for getting possible new internship statuses based on current one

This commit is contained in:
Veronika Fehérvíziová
2025-11-01 20:04:13 +01:00
parent 733090f643
commit 84d3459781

View File

@@ -32,4 +32,21 @@ export function prettyInternshipStatus(status: InternshipStatus) {
default:
throw new Error("Unknown status");
}
}
export function possibleNextStates(status: InternshipStatus) {
switch (status) {
case InternshipStatus.SUBMITTED:
return [InternshipStatus.CONFIRMED, InternshipStatus.DENIED];
case InternshipStatus.CONFIRMED:
return [InternshipStatus.SUBMITTED, InternshipStatus.DENIED, InternshipStatus.DEFENDED, InternshipStatus.NOT_DEFENDED];
case InternshipStatus.DENIED:
return [InternshipStatus.SUBMITTED, InternshipStatus.CONFIRMED];
case InternshipStatus.DEFENDED:
return [];
case InternshipStatus.NOT_DEFENDED:
return [];
default:
throw new Error("Unknown status");
}
}