Files
release-action/src/ReleaseValidator.ts
2025-02-17 16:15:54 -05:00

22 lines
611 B
TypeScript

export class ReleaseValidator {
constructor(private updateOnlyUnreleased: boolean) {}
validateReleaseUpdate(releaseResponse: ReleaseStageArguments) {
if (!this.updateOnlyUnreleased) {
return
}
if (!releaseResponse.draft && !releaseResponse.prerelease) {
throw new Error(
`Tried to update "${releaseResponse.name ?? "release"}" which is neither a draft or prerelease. (updateOnlyUnreleased is on)`
)
}
}
}
export type ReleaseStageArguments = {
draft: boolean
name: string | null
prerelease: boolean
}