fix: ai translations description for atoms (#17875)

* remove ai translations description for atoms

* PR feedback

* fixup

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
This commit is contained in:
Rajiv Sahal
2024-12-02 19:27:54 +00:00
committed by GitHub
co-authored by Benny Joo Somay Chauhan Morgan
parent 2e7a5a84a6
commit fe209df2be
5 changed files with 30 additions and 22 deletions
+3 -7
View File
@@ -1,6 +1,5 @@
import { AnimatePresence, LazyMotion, m } from "framer-motion";
import dynamic from "next/dynamic";
import { useSearchParams } from "next/navigation";
import { useEffect, useMemo, useRef } from "react";
import { Toaster } from "react-hot-toast";
import StickyBox from "react-sticky-box";
@@ -67,14 +66,10 @@ const BookerComponent = ({
isPlatform,
orgBannerUrl,
customClassNames,
areInstantMeetingParametersSet = false,
userLocale,
}: BookerProps & WrappedBookerProps) => {
const { t } = useLocale();
const searchParams = useSearchParams();
const areInstantMeetingParametersSet = !!event.data?.instantMeetingParameters
? searchParams &&
event.data.instantMeetingParameters.every((param) => Array.from(searchParams.values()).includes(param))
: true;
const [bookerState, setBookerState] = useBookerStore((state) => [state.state, state.setState], shallow);
const selectedDate = useBookerStore((state) => state.selectedDate);
@@ -358,6 +353,7 @@ const BookerComponent = ({
event={event.data}
isPending={event.isPending}
isPlatform={isPlatform}
locale={userLocale}
/>
{layout !== BookerLayouts.MONTH_VIEW &&
!(layout === "mobile" && bookerState === "booking") && (
@@ -1,5 +1,4 @@
import { m } from "framer-motion";
import { useSession } from "next-auth/react";
import dynamic from "next/dynamic";
import { useEffect, useMemo } from "react";
import { shallow } from "zustand/shallow";
@@ -12,9 +11,9 @@ import { EventMetaBlock } from "@calcom/features/bookings/components/event-meta/
import { useTimePreferences } from "@calcom/features/bookings/lib";
import type { BookerEvent } from "@calcom/features/bookings/types";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { locales as i18nLocales } from "@calcom/lib/i18n";
import { EventTypeAutoTranslatedField } from "@calcom/prisma/enums";
import i18nConfigration from "../../../../../i18n.json";
import { fadeInUp } from "../config";
import { useBookerStore } from "../store";
import { FromToTime } from "../utils/dates";
@@ -31,6 +30,7 @@ export const EventMeta = ({
isPending,
isPlatform = true,
classNames,
locale,
}: {
event?: Pick<
BookerEvent,
@@ -61,8 +61,8 @@ export const EventMeta = ({
eventMetaTitle?: string;
eventMetaTimezoneSelect?: string;
};
locale?: string | null;
}) => {
const session = useSession();
const { setTimezone, timeFormat, timezone } = useTimePreferences();
const selectedDuration = useBookerStore((state) => state.selectedDuration);
const selectedTimeslot = useBookerStore((state) => state.selectedTimeslot);
@@ -81,6 +81,7 @@ export const EventMeta = ({
() => (isPlatform ? [PlatformTimezoneSelect] : [WebTimezoneSelect]),
[isPlatform]
);
const i18nLocales = i18nConfigration.locale.targets.concat([i18nConfigration.locale.source]);
useEffect(() => {
//In case the event has lockTimeZone enabled ,set the timezone to event's attached availability timezone
@@ -107,7 +108,7 @@ export const EventMeta = ({
: isHalfFull
? "text-yellow-500"
: "text-bookinghighlight";
const userLocale = session.data?.user.locale ?? navigator.language;
const userLocale = locale ?? navigator.language;
const translatedDescription = (event?.fieldTranslations ?? []).find(
(trans) =>
trans.field === EventTypeAutoTranslatedField.DESCRIPTION &&
@@ -90,6 +90,8 @@ export interface BookerProps {
teamMemberEmail?: string | null;
crmOwnerRecordType?: string | null;
crmAppSlug?: string | null;
areInstantMeetingParametersSet?: boolean;
userLocale?: string | null;
}
export type WrappedBookerPropsMain = {
@@ -142,17 +142,19 @@ export const EventSetupTab = (
</>
)}
</div>
<div className="[&_label]:my-1 [&_label]:font-normal">
<SettingsToggle
title={t("translate_description_button")}
checked={!!autoTranslateDescriptionEnabled}
onCheckedChange={(value) => {
formMethods.setValue("autoTranslateDescriptionEnabled", value, { shouldDirty: true });
}}
disabled={!orgId}
tooltip={!orgId ? t("orgs_upgrade_to_enable_feature") : undefined}
/>
</div>
{!isPlatform && (
<div className="[&_label]:my-1 [&_label]:font-normal">
<SettingsToggle
title={t("translate_description_button")}
checked={!!autoTranslateDescriptionEnabled}
onCheckedChange={(value) => {
formMethods.setValue("autoTranslateDescriptionEnabled", value, { shouldDirty: true });
}}
disabled={!orgId}
tooltip={!orgId ? t("orgs_upgrade_to_enable_feature") : undefined}
/>
</div>
)}
<TextField
required
label={isPlatform ? "Slug" : t("URL")}
@@ -181,6 +181,11 @@ export const BookerWebWrapper = (props: BookerWebWrapperAtomProps) => {
theme: event.data?.profile.theme,
});
const areInstantMeetingParametersSet = !!event.data?.instantMeetingParameters
? searchParams &&
event.data.instantMeetingParameters.every((param) => Array.from(searchParams.values()).includes(param))
: true;
return (
<BookerComponent
{...props}
@@ -219,6 +224,8 @@ export const BookerWebWrapper = (props: BookerWebWrapperAtomProps) => {
schedule={schedule}
verifyCode={verifyCode}
isPlatform={false}
areInstantMeetingParametersSet={areInstantMeetingParametersSet}
userLocale={session?.user.locale}
/>
);
};