diff --git a/packages/embeds/embed-core/index.html b/packages/embeds/embed-core/index.html index dc82ab5a23..4d02bd7072 100644 --- a/packages/embeds/embed-core/index.html +++ b/packages/embeds/embed-core/index.html @@ -438,6 +438,11 @@

Test Column View

+ +
+

Test Column View Hide Event Type Details

+
+

Test Page Params Forwarding

diff --git a/packages/embeds/embed-core/playground.ts b/packages/embeds/embed-core/playground.ts index 35af9372fd..a0d76f76fd 100644 --- a/packages/embeds/embed-core/playground.ts +++ b/packages/embeds/embed-core/playground.ts @@ -538,12 +538,47 @@ if (only === "all" || only == "ns:columnView") { }, } ); + Cal.ns.columnView("on", { action: "*", callback, }); } +if (only === "all" || only == "ns:columnViewHideEventTypeDetails") { + // Create a namespace "second". It can be accessed as Cal.ns.second with the exact same API as Cal + Cal("init", "columnViewHideEventTypeDetails", { + debug: true, + origin: origin, + }); + + Cal.ns.columnViewHideEventTypeDetails( + "inline", + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + //@ts-ignore + { + elementOrSelector: "#cal-booking-place-columnViewHideEventTypeDetails .place", + calLink: "free/30min", + config: { + iframeAttrs: { + id: "cal-booking-place-columnView-iframe", + }, + "flag.coep": "true", + layout: "column_view", + }, + } + ); + + Cal.ns.columnViewHideEventTypeDetails("ui", { + hideEventTypeDetails: true, + }); + + Cal.ns.columnViewHideEventTypeDetails("on", { + action: "*", + callback, + }); +} + if (only === "all" || only == "ns:autoScrollTest") { if (!calLink) { throw new Error("cal-link parameter is required for autoScrollTest"); diff --git a/packages/features/bookings/Booker/Booker.tsx b/packages/features/bookings/Booker/Booker.tsx index 2af7953dde..6f4090b315 100644 --- a/packages/features/bookings/Booker/Booker.tsx +++ b/packages/features/bookings/Booker/Booker.tsx @@ -259,8 +259,6 @@ const BookerComponent = ({ return null; } - const shouldShowMeta = !hideEventTypeDetails; - return ( <> {event.data && !isPlatform ? : <>} @@ -329,46 +327,42 @@ const BookerComponent = ({ )} )} - {shouldShowMeta && ( - - - {orgBannerUrl && !isPlatform && ( - org banner - )} - + + {!hideEventTypeDetails && orgBannerUrl && !isPlatform && ( + org banner - {layout !== BookerLayouts.MONTH_VIEW && - !(layout === "mobile" && bookerState === "booking") && ( -
- -
- )} -
-
- )} + )} + + {layout !== BookerLayouts.MONTH_VIEW && + !(layout === "mobile" && bookerState === "booking") && ( +
+ +
+ )} + + {EventBooker} @@ -377,18 +371,10 @@ const BookerComponent = ({ + className="md:border-subtle ml-[-1px] h-full flex-shrink px-5 py-3 md:border-l lg:w-[var(--booker-main-width)]"> ; -type Options = { - hideEventTypeDetails?: boolean; -}; - -export const useBookerLayout = ( - event: Pick | undefined | null, - options?: Options -) => { +export const useBookerLayout = (event: Pick | undefined | null) => { const [_layout, setLayout] = useBookerStore((state) => [state.layout, state.setLayout], shallow); const isEmbed = useIsEmbed(); const isMobile = useMediaQuery("(max-width: 768px)"); @@ -81,7 +74,7 @@ export const useBookerLayout = ( const shouldShowFormInDialog = shouldShowFormInDialogMap[layout]; - const hideEventTypeDetails = isEmbed ? embedUiConfig.hideEventTypeDetails : !!options?.hideEventTypeDetails; + const hideEventTypeDetails = isEmbed ? embedUiConfig.hideEventTypeDetails : false; return { shouldShowFormInDialog, diff --git a/packages/platform/atoms/booker/BookerPlatformWrapper.tsx b/packages/platform/atoms/booker/BookerPlatformWrapper.tsx index b01fe714c4..2620a5d7ba 100644 --- a/packages/platform/atoms/booker/BookerPlatformWrapper.tsx +++ b/packages/platform/atoms/booker/BookerPlatformWrapper.tsx @@ -80,7 +80,6 @@ export type BookerPlatformWrapperAtomProps = Omit< locationUrl?: string; view?: VIEW_TYPE; metadata?: Record; - hideEventTypeDetails?: boolean; }; type VIEW_TYPE = keyof typeof BookerLayouts; @@ -188,7 +187,7 @@ export const BookerPlatformWrapper = ( event.data.length = props.duration; } - const bookerLayout = useBookerLayout(event.data, { hideEventTypeDetails: props.hideEventTypeDetails }); + const bookerLayout = useBookerLayout(event.data); useInitializeBookerStore({ ...props, eventId: event.data?.id,