All files / src/components/pages/user/mypage/mypage-setting index.tsx

100% Statements 29/29
100% Branches 2/2
100% Functions 2/2
100% Lines 29/29

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 301x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x  
'use client';
import { useLogout, useWithdraw } from '@/hooks/use-auth';
import { useUpdateMyNotification } from '@/hooks/use-user/use-user-notification';
import { User } from '@/types/service/user';
 
import { MyPageActionButton, MyPageToggleButton } from '../mypage-setting-button';
 
interface Props {
  user: User;
}
 
export const MyPageSetting = ({ user }: Props) => {
  const { mutate } = useUpdateMyNotification();
  const logout = useLogout();
  const withdraw = useWithdraw();
 
  return (
    <section className='bg-mono-white flex flex-col gap-3 px-3 py-6'>
      <MyPageToggleButton
        value={user.isNotificationEnabled}
        onClick={() => mutate({ isNotificationEnabled: !user.isNotificationEnabled })}
      >
        알림 받기
      </MyPageToggleButton>
      <MyPageActionButton onClick={logout}>로그아웃</MyPageActionButton>
      <MyPageActionButton onClick={withdraw}>회원탈퇴</MyPageActionButton>
    </section>
  );
};