diff --git a/apps/web/components/Shell.tsx b/apps/web/components/Shell.tsx index 4b69e84c..c5d31f2a 100644 --- a/apps/web/components/Shell.tsx +++ b/apps/web/components/Shell.tsx @@ -34,6 +34,7 @@ import HelpMenuItem from "@ee/components/support/HelpMenuItem"; import classNames from "@lib/classNames"; import { WEBAPP_URL } from "@lib/config/constants"; import { shouldShowOnboarding } from "@lib/getting-started"; +import useMeQuery from "@lib/hooks/useMeQuery"; import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@lib/telemetry"; import { trpc } from "@lib/trpc"; @@ -46,16 +47,6 @@ import pkg from "../package.json"; import { useViewerI18n } from "./I18nLanguageHandler"; import Logo from "./Logo"; -export function useMeQuery() { - const meQuery = trpc.useQuery(["viewer.me"], { - retry(failureCount) { - return failureCount > 3; - }, - }); - - return meQuery; -} - function useRedirectToLoginIfUnauthenticated(isPublic = false) { const { data: session, status } = useSession(); const loading = status === "loading"; diff --git a/apps/web/components/availability/Schedule.tsx b/apps/web/components/availability/Schedule.tsx index 3e2fc28e..f64e3416 100644 --- a/apps/web/components/availability/Schedule.tsx +++ b/apps/web/components/availability/Schedule.tsx @@ -14,9 +14,9 @@ import Dropdown, { DropdownMenuTrigger, DropdownMenuContent } from "@calcom/ui/D import { defaultDayRange } from "@lib/availability"; import { weekdayNames } from "@lib/core/i18n/weekday"; +import useMeQuery from "@lib/hooks/useMeQuery"; import { TimeRange } from "@lib/types/schedule"; -import { useMeQuery } from "@components/Shell"; import Select from "@components/ui/form/Select"; dayjs.extend(utc); diff --git a/apps/web/components/booking/BookingListItem.tsx b/apps/web/components/booking/BookingListItem.tsx index 38df362d..85c0ef1c 100644 --- a/apps/web/components/booking/BookingListItem.tsx +++ b/apps/web/components/booking/BookingListItem.tsx @@ -12,9 +12,9 @@ import { Dialog, DialogClose, DialogContent, DialogFooter, DialogHeader } from " import { TextArea } from "@calcom/ui/form/fields"; import { HttpError } from "@lib/core/http/error"; +import useMeQuery from "@lib/hooks/useMeQuery"; import { inferQueryOutput, trpc } from "@lib/trpc"; -import { useMeQuery } from "@components/Shell"; import { RescheduleDialog } from "@components/dialog/RescheduleDialog"; import TableActions, { ActionType } from "@components/ui/TableActions"; diff --git a/apps/web/components/team/currentUser.tsx b/apps/web/components/team/currentUser.tsx deleted file mode 100644 index cae76842..00000000 --- a/apps/web/components/team/currentUser.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import { useMeQuery } from "@components/Shell"; - -export const useCurrentUser = () => { - const query = useMeQuery(); - const user = query.data; - return user?.id; -}; diff --git a/apps/web/ee/components/TrialBanner.tsx b/apps/web/ee/components/TrialBanner.tsx index eed8e19e..6c6ccacb 100644 --- a/apps/web/ee/components/TrialBanner.tsx +++ b/apps/web/ee/components/TrialBanner.tsx @@ -4,8 +4,7 @@ import Button from "@calcom/ui/Button"; import { TRIAL_LIMIT_DAYS } from "@lib/config/constants"; import { useLocale } from "@lib/hooks/useLocale"; - -import { useMeQuery } from "@components/Shell"; +import useMeQuery from "@lib/hooks/useMeQuery"; const TrialBanner = () => { const { t } = useLocale(); diff --git a/apps/web/lib/hooks/useCurrentUserId.ts b/apps/web/lib/hooks/useCurrentUserId.ts new file mode 100644 index 00000000..a9023f63 --- /dev/null +++ b/apps/web/lib/hooks/useCurrentUserId.ts @@ -0,0 +1,9 @@ +import useMeQuery from "./useMeQuery"; + +export const useCurrentUserId = () => { + const query = useMeQuery(); + const user = query.data; + return user?.id; +}; + +export default useCurrentUserId; diff --git a/apps/web/lib/hooks/useMeQuery.ts b/apps/web/lib/hooks/useMeQuery.ts new file mode 100644 index 00000000..a8d0a051 --- /dev/null +++ b/apps/web/lib/hooks/useMeQuery.ts @@ -0,0 +1,13 @@ +import { trpc } from "../trpc"; + +export function useMeQuery() { + const meQuery = trpc.useQuery(["viewer.me"], { + retry(failureCount) { + return failureCount > 3; + }, + }); + + return meQuery; +} + +export default useMeQuery;