Files
ColdBreeze-chat-web/src/common/hook/useAddLocalFileMessage.ts
T
2023-05-15 13:26:55 +08:00

21 lines
753 B
TypeScript

// import React from 'react'
import { useDispatch } from "react-redux";
import { addMessage, MessagePayload } from "../../app/slices/message";
import { addChannelMsg } from "../../app/slices/message.channel";
import { addUserMsg } from "../../app/slices/message.user";
import { ChatContext } from "../../types/common";
interface IProps {
context: ChatContext;
to: number;
}
export default function useAddLocalFileMessage({ context, to }: IProps) {
const dispatch = useDispatch();
const addContextMessage = context == "channel" ? addChannelMsg : addUserMsg;
const addLocalFileMessage = (data: MessagePayload) => {
dispatch(addMessage(data));
dispatch(addContextMessage({ id: to, mid: data.mid }));
};
return addLocalFileMessage;
}