diff --git a/packages/features/eventtypes/components/tabs/limits/EventLimitsTab.tsx b/packages/features/eventtypes/components/tabs/limits/EventLimitsTab.tsx index 777345c478..4145e046e6 100644 --- a/packages/features/eventtypes/components/tabs/limits/EventLimitsTab.tsx +++ b/packages/features/eventtypes/components/tabs/limits/EventLimitsTab.tsx @@ -389,6 +389,7 @@ export const EventLimitsTab = ({ eventType, customClassNames }: EventLimitsTabPr const onlyFirstAvailableSlotLocked = shouldLockDisableProps("onlyShowFirstAvailableSlot"); const periodTypeLocked = shouldLockDisableProps("periodType"); const offsetStartLockedProps = shouldLockDisableProps("offsetStart"); + const maxActiveBookingsPerBookerLocked = shouldLockDisableProps("maxActiveBookingsPerBooker"); const [offsetToggle, setOffsetToggle] = useState(formMethods.getValues("offsetStart") > 0); const [maxActiveBookingsPerBookerToggle, setMaxActiveBookingsPerBookerToggle] = useState( @@ -687,7 +688,9 @@ export const EventLimitsTab = ({ eventType, customClassNames }: EventLimitsTabPr ); }} /> - + { diff --git a/packages/features/eventtypes/components/tabs/limits/MaxActiveBookingsPerBookerController.tsx b/packages/features/eventtypes/components/tabs/limits/MaxActiveBookingsPerBookerController.tsx index 75d4f9dc92..03caeb927a 100644 --- a/packages/features/eventtypes/components/tabs/limits/MaxActiveBookingsPerBookerController.tsx +++ b/packages/features/eventtypes/components/tabs/limits/MaxActiveBookingsPerBookerController.tsx @@ -7,7 +7,17 @@ import classNames from "@calcom/ui/classNames"; import { SettingsToggle } from "@calcom/ui/components/form"; import { TextField, CheckboxField } from "@calcom/ui/components/form"; -export default function MaxActiveBookingsPerBookerController() { +type maxActiveBookingsPerBookerLockedProps = { + disabled: boolean; + LockedIcon: false | JSX.Element; + isLocked: boolean; +}; + +export default function MaxActiveBookingsPerBookerController({ + maxActiveBookingsPerBookerLocked, +}: { + maxActiveBookingsPerBookerLocked: maxActiveBookingsPerBookerLockedProps; +}) { const { t } = useLocale(); const formMethods = useFormContext(); @@ -19,6 +29,7 @@ export default function MaxActiveBookingsPerBookerController() { const maxActiveBookingPerBookerOfferReschedule = formMethods.watch( "maxActiveBookingPerBookerOfferReschedule" ); + return ( { onChange(e.target.value === "" ? null : parseInt(e.target.value, 10)); }} @@ -64,6 +77,7 @@ export default function MaxActiveBookingsPerBookerController() { checked={!!maxActiveBookingPerBookerOfferReschedule} descriptionAsLabel description={t("offer_to_reschedule_last_booking")} + disabled={maxActiveBookingsPerBookerLocked.disabled} onChange={(e) => { formMethods.setValue("maxActiveBookingPerBookerOfferReschedule", e.target.checked, { shouldDirty: true,