feat(final-docs): hasRequired/allUploaded on FinalDocumentStatus for optional-uploads mode

This commit is contained in:
Matt
2026-06-10 14:58:39 +02:00
parent 2c311bc65a
commit d89f67ba57
2 changed files with 52 additions and 3 deletions

View File

@@ -18,6 +18,8 @@ export type FinalDocumentStatus = {
deadlinePassed: boolean
requirements: FinalDocRequirement[]
allRequiredUploaded: boolean
hasRequired: boolean // any slot is marked required
allUploaded: boolean // every listed slot has a file (false when no slots exist)
}
// A LIVE_FINAL round is "open for documents" during the lead-up — while it is
@@ -94,6 +96,8 @@ export async function getFinalDocumentStatusForProject(
const required = reqStatuses.filter((r) => r.isRequired)
const allRequiredUploaded = required.length > 0 && required.every((r) => r.uploaded)
const hasRequired = required.length > 0
const allUploaded = reqStatuses.length > 0 && reqStatuses.every((r) => r.uploaded)
const deadline = round.windowCloseAt ?? null
return {
roundId: round.id,
@@ -102,6 +106,8 @@ export async function getFinalDocumentStatusForProject(
deadlinePassed: deadline ? new Date() > deadline : false,
requirements: reqStatuses,
allRequiredUploaded,
hasRequired,
allUploaded,
}
}