'use client'; import { signOut, useSession } from 'next-auth/react'; import { useLogoutMutation } from '@akinon/next/data/client/user'; import { ROUTES } from '@theme/routes'; import { Icon, Link } from '@theme/components'; import { usePathname } from 'next/navigation'; import clsx from 'clsx'; import { useLocalization } from '@akinon/next/hooks'; const ACCOUNT_MENU_ITEMS = [ { translationKey: 'account.base.menu.my_orders', href: ROUTES.ACCOUNT_ORDERS, testId: 'account-orders' }, { translationKey: 'account.base.menu.my_profile', href: ROUTES.ACCOUNT_PROFILE, testId: 'account-profile' }, { translationKey: 'account.base.menu.address_book', href: ROUTES.ACCOUNT_ADDRESS, testId: 'account-address' }, { translationKey: 'account.base.menu.change_email', href: ROUTES.ACCOUNT_CHANGE_EMAIL, testId: 'account-change-email' }, { translationKey: 'account.base.menu.change_password', href: ROUTES.ACCOUNT_CHANGE_PASSWORD, testId: 'account-change-password' }, { translationKey: 'account.base.menu.my_wishlist', href: ROUTES.ACCOUNT_WISHLIST, testId: 'account-wishlist' }, { translationKey: 'account.base.menu.my_vouchers', href: ROUTES.ACCOUNT_COUPONS, testId: 'account-coupons' }, { translationKey: 'account.base.menu.faq', href: ROUTES.ACCOUNT_FAQ, testId: 'account-faq' }, { translationKey: 'account.base.menu.contact_us', href: ROUTES.ACCOUNT_CONTACT, testId: 'account-contact' } ]; export default function AccountMenu() { const { t } = useLocalization(); const { data: session, status } = useSession(); const [logout] = useLogoutMutation(); const pathname = usePathname(); const accountMenuRegex = new RegExp(`^${ROUTES.ACCOUNT}/?$`).test(pathname); const handleLogout = async () => { logout() .unwrap() .then(() => { signOut({ callbackUrl: '/' }); }) .catch(); }; return (

{t('account.base.menu.my_account')}

{t('account.base.menu.hello')}{' '} {status === 'authenticated' && `, ${session.user.firstName}`}

); }