Files
dmail-front/src/pages/received/Components/MessageFavorite.tsx
T
2025-07-23 15:44:46 +03:30

32 lines
1.2 KiB
TypeScript

import { Star1 } from 'iconsax-react'
import { FC, useState } from 'react'
import { useNavigate, useParams } from 'react-router-dom'
import { useMoveToFavorite, useUnFavoriteMessage } from '../hooks/useEmailData'
const MessageFavorite: FC<{ flagged: boolean }> = ({ flagged }) => {
const [isFavorite, setIsFavorite] = useState<boolean>(flagged)
const { id, mailbox } = useParams<{ id: string, mailbox: string }>()
const { mutate: moveToFavorite } = useMoveToFavorite()
const { mutate: unFavoriteMessage } = useUnFavoriteMessage()
const navigate = useNavigate()
return (
<Star1 onClick={() => {
if (isFavorite) {
unFavoriteMessage({ messageId: id || '', mailbox: mailbox || '' }, {
onSuccess: () => {
navigate(-1)
}
})
} else {
moveToFavorite({ messageId: id || '', mailbox: mailbox || '' }, {
onSuccess: () => {
navigate(-1)
}
})
}
setIsFavorite(!isFavorite)
}} size={18} variant={isFavorite ? 'Bold' : 'Outline'} color={isFavorite ? '#FFC107' : 'black'} />
)
}
export default MessageFavorite