import { useFeedback } from '@/hooks/chat-hooks'; | |
import { useSetModalState } from '@/hooks/common-hooks'; | |
import { IFeedbackRequestBody } from '@/interfaces/request/chat'; | |
import { getMessagePureId } from '@/utils/chat'; | |
import { useCallback } from 'react'; | |
export const useSendFeedback = (messageId: string) => { | |
const { visible, hideModal, showModal } = useSetModalState(); | |
const { feedback, loading } = useFeedback(); | |
const onFeedbackOk = useCallback( | |
async (params: IFeedbackRequestBody) => { | |
const ret = await feedback({ | |
...params, | |
messageId: getMessagePureId(messageId), | |
}); | |
if (ret === 0) { | |
hideModal(); | |
} | |
}, | |
[feedback, hideModal, messageId], | |
); | |
return { | |
loading, | |
onFeedbackOk, | |
visible, | |
hideModal, | |
showModal, | |
}; | |
}; | |