Files
Udit TakkarGitHubKeith WilliamsDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
e3a9f54ba5 feat: Configure cancellation reason (#26872)
* feat: Configure cancellation reason

* fix: use enums

* tests: add unit tests

* fix: type error

* chore: remove duplicate dialog

* fix: type erro

* refator: improvements

* refator: improvements

---------

Co-authored-by: Keith Williams <[email protected]>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-02-24 13:35:51 -03:00

22 lines
673 B
TypeScript

import { CancellationReasonRequirement } from "@calcom/prisma/enums";
export function isCancellationReasonRequired(
setting: CancellationReasonRequirement | null | undefined,
isHost: boolean
): boolean {
const requirement = setting ?? CancellationReasonRequirement.MANDATORY_HOST_ONLY;
switch (requirement) {
case CancellationReasonRequirement.OPTIONAL_BOTH:
return false;
case CancellationReasonRequirement.MANDATORY_BOTH:
return true;
case CancellationReasonRequirement.MANDATORY_HOST_ONLY:
return isHost;
case CancellationReasonRequirement.MANDATORY_ATTENDEE_ONLY:
return !isHost;
default:
return false;
}
}