"use client" import { useSession } from "next-auth/react" import { useEffect, useState } from "react" import { Dialog, DialogTrigger, Modal, ModalOverlay, Popover, } from "react-aria-components" import { useIntl } from "react-intl" import { Avatar } from "@scandic-hotels/design-system/Avatar" import { Button } from "@scandic-hotels/design-system/Button" import { Divider } from "@scandic-hotels/design-system/Divider" import SkeletonShimmer from "@scandic-hotels/design-system/SkeletonShimmer" import { Typography } from "@scandic-hotels/design-system/Typography" import { trpc } from "@scandic-hotels/trpc/client" import useLang from "@/hooks/useLang" import { getInitials } from "../utils" import styles from "./user-menu.module.css" export function UserMenu({ isMobile = false }: { isMobile?: boolean }) { const intl = useIntl() const lang = useLang() const session = useSession() const [loginLink, setLoginLink] = useState(`/${lang}/login`) const { data: profileData, isLoading, isSuccess, isError, } = trpc.partner.sas.getEuroBonusProfile.useQuery(undefined, { enabled: session.status === "authenticated", }) useEffect(() => { setLoginLink(`/${lang}/login?redirectTo=${window?.location.href}`) }, [lang, setLoginLink]) const firstName = profileData?.firstName const lastName = profileData?.lastName return (