diff --git a/src/components/FloatingSupportChat/Chat.tsx b/src/components/FloatingSupportChat/Chat.tsx index 9dc4676..a6c562c 100644 --- a/src/components/FloatingSupportChat/Chat.tsx +++ b/src/components/FloatingSupportChat/Chat.tsx @@ -63,15 +63,16 @@ export default function Chat({ sx }: Props) { onMessage(event) { try { const newMessage = JSON.parse(event.data) as TicketMessage; - // console.log("SSE: parsed newMessage:", newMessage); + console.log("SSE: parsed newMessage:", newMessage); + if (!newMessage.id) throw new Error("Bad SSE response"); addOrUpdateUnauthMessages([newMessage]); } catch (error) { - // console.log("SSE: couldn't parse:", event.data); - // console.log("Error parsing message SSE", error); + console.log("SSE: couldn't parse:", event.data); + console.log("Error parsing SSE message", error); } }, onError(event) { - // console.log("SSE Error:", event); + console.log("SSE Error:", event); }, }); @@ -105,6 +106,13 @@ export default function Chat({ sx }: Props) { setMessageField(""); } + const handleTextfieldKeyPress: React.KeyboardEventHandler = (e) => { + if (e.key === "Enter" && !e.shiftKey) { + e.preventDefault(); + handleSendMessage(); + } + }; + return ( - {isChatOpened && } + {isChatOpened && + + } setIsChatOpened(prev => !prev)} diff --git a/src/stores/unauthTicket.ts b/src/stores/unauthTicket.ts index 25241cc..4a86eed 100644 --- a/src/stores/unauthTicket.ts +++ b/src/stores/unauthTicket.ts @@ -4,7 +4,7 @@ import { createJSONStorage, devtools, persist } from "zustand/middleware"; interface UnauthTicketStore { - ticket: Ticket | null; + ticket: Ticket | null; // TODO delete if unused sessionId: string | null; messages: TicketMessage[]; fetchState: "idle" | "fetching" | "all fetched";