"use client" import Link from "next/link" import { useIntl } from "react-intl" import { MembershipLevelEnum } from "@/constants/membershipLevels" import { logout } from "@/constants/routes/handleAuth" import { trpc } from "@/lib/trpc/client" import { ArrowRightIcon } from "@/components/Icons" import Divider from "@/components/TempDesignSystem/Divider" import Caption from "@/components/TempDesignSystem/Text/Caption" import Subtitle from "@/components/TempDesignSystem/Text/Subtitle" import useLang from "@/hooks/useLang" import { useTrapFocus } from "@/hooks/useTrapFocus" import styles from "./myPagesMenuContent.module.css" import type { MyPagesMenuContentProps } from "@/types/components/header/myPagesMenu" export default function MyPagesMenuContent({ membership, navigation, toggleOpenStateFn, user, }: MyPagesMenuContentProps) { const intl = useIntl() const lang = useLang() const myPagesMenuContentRef = useTrapFocus() const membershipLevel = trpc.contentstack.loyaltyLevels.byLevel.useQuery( { level: MembershipLevelEnum[membership?.membershipLevel!], }, { enabled: !!membership?.membershipLevel } ).data const membershipPoints = membership?.currentPoints const introClassName = membershipLevel && membershipPoints ? `${styles.intro}` : `${styles.intro} ${styles.noMembership}` if (!navigation) { return null } return ( ) }