41 lines
810 B
TypeScript
41 lines
810 B
TypeScript
// imports
|
|
|
|
import { useMutation } from "@tanstack/vue-query";
|
|
import axios from "~/configs/axios.config";
|
|
import { API_ENDPOINTS } from "~/constants";
|
|
|
|
// types
|
|
|
|
export type ReplyDocRequest = {
|
|
user_id: number;
|
|
message: string;
|
|
reply_id: number;
|
|
};
|
|
|
|
export type ReplyDocResponse = {
|
|
chat_id: number;
|
|
};
|
|
|
|
// methods
|
|
|
|
export const handleReplyDoc = async ({ user_id, message, reply_id }: ReplyDocRequest) => {
|
|
const payload = {
|
|
user_id,
|
|
message,
|
|
item_id: reply_id,
|
|
};
|
|
|
|
const { data } = await axios.post<ReplyDocResponse>(API_ENDPOINTS.branch.replyDoc, payload);
|
|
return data;
|
|
};
|
|
|
|
// composable
|
|
|
|
const useReplyDoc = () => {
|
|
return useMutation({
|
|
mutationFn: (data: ReplyDocRequest) => handleReplyDoc(data),
|
|
});
|
|
};
|
|
|
|
export default useReplyDoc;
|