From b360bf9757c2ce7c0a28298a7eeeb0a334cd8015 Mon Sep 17 00:00:00 2001 From: nflnkr Date: Tue, 21 Mar 2023 17:43:08 +0300 Subject: [PATCH] fix self messages --- src/pages/dashboard/Content/Support/Chat.tsx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/pages/dashboard/Content/Support/Chat.tsx b/src/pages/dashboard/Content/Support/Chat.tsx index 788fbb8..c774c4b 100644 --- a/src/pages/dashboard/Content/Support/Chat.tsx +++ b/src/pages/dashboard/Content/Support/Chat.tsx @@ -8,15 +8,19 @@ import { useParams } from "react-router-dom"; import { GetMessagesRequest, TicketMessage } from "@root/model/ticket"; import { getTicketMessages, sendTicketMessage, subscribeToTicketMessages } from "@root/api/tickets"; import { enqueueSnackbar } from "notistack"; +import { useTicketStore } from "@root/stores/tickets"; export default function Chat() { const theme = useTheme(); + const tickets = useTicketStore(state => state.tickets); const messages = useMessageStore(state => state.messages); const [messageField, setMessageField] = useState(""); const ticketId = useParams().ticketId; const chatBoxRef = useRef(null); + const ticket = tickets.find(ticket => ticket.id === ticketId); + useEffect(function scrollOnNewMessage() { scrollToBottom(); }, [messages]); @@ -32,6 +36,7 @@ export default function Chat() { }; const controller = new AbortController(); + setMessages([]); getTicketMessages({ body: getTicketsBody, signal: controller.signal, @@ -58,7 +63,7 @@ export default function Chat() { onMessage(event) { console.log("SSE: message received:", event.data); if (event.data === "no tickets 4 user") return; - + try { const newMessage = JSON.parse(event.data) as TicketMessage; addMessages([newMessage]); @@ -67,7 +72,7 @@ export default function Chat() { } }, onError(event) { - console.log("SSE Error:", event); + console.log("SSE Error:", event); }, }); @@ -136,8 +141,8 @@ export default function Chat() { colorScheme: "dark", }} > - {messages.map((message, index) => - + {ticket && messages.map((message, index) => + )}