Skip to content

Commit 311b6e0

Browse files
feat: support hideEventTypeDetails query param on booking pages (calcom#25565)
* fix: lint error * feat: support `hideEventTypeDetails` via query param Allow the event type details to be hidden based on the hideEventTypeDetails query parameter when not in embed mode * feat: add hideEventTypeDetails prop to EventMeta --------- Co-authored-by: Dhairyashil Shinde <93669429+dhairyashiil@users.noreply.github.com>
1 parent 308c7fa commit 311b6e0

3 files changed

Lines changed: 11 additions & 7 deletions

File tree

packages/features/bookings/Booker/Booker.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,8 @@ const BookerComponent = ({
431431
isPrivateLink={!!hashedLink}
432432
locale={userLocale}
433433
timeZones={timeZones}
434-
roundRobinHideOrgAndTeam={roundRobinHideOrgAndTeam}>
434+
roundRobinHideOrgAndTeam={roundRobinHideOrgAndTeam}
435+
hideEventTypeDetails={hideEventTypeDetails}>
435436
{eventMetaChildren}
436437
</EventMeta>
437438
)}

packages/features/bookings/Booker/components/EventMeta.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import { useEffect, useMemo } from "react";
44
import { shallow } from "zustand/shallow";
55

66
import { Timezone as PlatformTimezoneSelect } from "@calcom/atoms/timezone";
7-
import { useEmbedUiConfig, useIsEmbed } from "@calcom/embed-core/embed-iframe";
87
import { EventDetails, EventMembers, EventMetaSkeleton, EventTitle } from "@calcom/features/bookings";
98
import { useBookerStoreContext } from "@calcom/features/bookings/Booker/BookerStoreProvider";
109
import type { Timezone } from "@calcom/features/bookings/Booker/types";
@@ -56,6 +55,7 @@ export const EventMeta = ({
5655
children,
5756
selectedTimeslot,
5857
roundRobinHideOrgAndTeam,
58+
hideEventTypeDetails = false,
5959
}: {
6060
event?: Pick<
6161
BookerEvent,
@@ -94,6 +94,7 @@ export const EventMeta = ({
9494
children?: React.ReactNode;
9595
selectedTimeslot: string | null;
9696
roundRobinHideOrgAndTeam?: boolean;
97+
hideEventTypeDetails?: boolean;
9798
}) => {
9899
const { timeFormat, timezone } = useBookerTime();
99100
const [setTimezone] = useTimePreferences((state) => [state.setTimezone]);
@@ -107,9 +108,6 @@ export const EventMeta = ({
107108
shallow
108109
);
109110
const { i18n, t } = useLocale();
110-
const embedUiConfig = useEmbedUiConfig();
111-
const isEmbed = useIsEmbed();
112-
const hideEventTypeDetails = isEmbed ? embedUiConfig.hideEventTypeDetails : false;
113111
const [TimezoneSelect] = useMemo(
114112
() => (isPlatform ? [PlatformTimezoneSelect] : [WebTimezoneSelect]),
115113
[isPlatform]

packages/features/bookings/Booker/components/hooks/useBookerLayout.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export const useBookerLayout = (
5656
layout !== _layout
5757
) {
5858
const validLayout = bookerLayouts.enabledLayouts.find((userLayout) => userLayout === layout);
59-
validLayout && setLayout(validLayout);
59+
if (validLayout) setLayout(validLayout);
6060
}
6161
}, [bookerLayouts, setLayout, _layout, isEmbed, isMobile]);
6262

@@ -76,7 +76,12 @@ export const useBookerLayout = (
7676

7777
const shouldShowFormInDialog = shouldShowFormInDialogMap[layout];
7878

79-
const hideEventTypeDetails = isEmbed ? embedUiConfig.hideEventTypeDetails : false;
79+
const hideEventTypeDetailsParam = getQueryParam("hideEventTypeDetails");
80+
const hideEventTypeDetails = isEmbed
81+
? embedUiConfig.hideEventTypeDetails
82+
: typeof hideEventTypeDetailsParam === "string"
83+
? hideEventTypeDetailsParam === "true"
84+
: false;
8085

8186
return {
8287
shouldShowFormInDialog,

0 commit comments

Comments
 (0)