retrieving chats

This commit is contained in:
Nikolai Petukhov
2024-10-04 11:21:21 +03:00
parent 073c61977f
commit d1e824ab77
11 changed files with 338 additions and 88 deletions

View File

@@ -45,7 +45,7 @@ const Account = () => {
const {ok, data} = await get('/auth/' + username);
if (!ok) {
displayMessage("Some error with auth", MessageType.ERROR);
displayMessage("Some error with auth:" + data.message, MessageType.ERROR);
return;
}

View File

@@ -74,7 +74,7 @@ const emojis = [
];
const Chat = () => {
const [interlocutorId, setInterlocutorId] = useState(0);
const [interlocutorId, setInterlocutorId] = useState("");
const [messages, setMessages] = useState([]);
const [newMessage, setNewMessage] = useState("");
const [showEmojiPicker, setShowEmojiPicker] = useState(false);
@@ -83,7 +83,8 @@ const Chat = () => {
const navigate = useNavigate();
useEffect(() => {
const id = parseInt(localStorage.getItem("interlocutorId"), 10) || 0;
// const id = parseInt(localStorage.getItem("interlocutorId"), 10) || 0;
const id = localStorage.getItem("interlocutorId")
setInterlocutorId(id);
socket.current = new WebSocket("ws://localhost:8080");

View File

@@ -1,64 +1,30 @@
import React from "react";
import React, {useEffect, useState} from "react";
import HomeTitle from "../components/home/HomeTitle.jsx";
import ChatsList from "../components/home/ChatsList.jsx";
import Header from "../components/home/Header.jsx";
import {displayMessage} from "../backend/notifications/notifications";
import {MessageType} from "../backend/notifications/message";
import {get} from "../backend/api";
const Home = () => {
const [chats, setChats] = useState([])
// temp for testing
const chats = [
{
name: "Alice Johnson",
id: 123456,
lastMessage: "See you later!"
},
{
name: "Bob Smith",
id: 654321,
lastMessage: "Got it, thanks!"
},
{
name: "Charlie Brown",
id: 234567,
lastMessage: "How's the project going? How's the project going? How's the project going?" +
"How's the project going? How's the project going?"
},
{
name: "David Clark",
id: 765432,
lastMessage: "I'll send the files."
},
{
name: "Eve Adams",
id: 345678,
lastMessage: "Let's meet tomorrow."
},
{
name: "Frank Wright",
id: 876543,
lastMessage: "Can you review this?"
},
{
name: "Grace Lee",
id: 456789,
lastMessage: "Thanks for your help!"
},
{
name: "Hannah Scott",
id: 987654,
lastMessage: "See you at the meeting."
},
{
name: "Ian Davis",
id: 567890,
lastMessage: "Let me know when you're free."
},
{
name: "Jill Thompson",
id: 678901,
lastMessage: "I'll catch up with you later."
async function retrieveChats() {
const username = localStorage.getItem("username");
if (!username) {
displayMessage("You're not logged in!", MessageType.WARN);
return;
}
];
const {ok, data} = await get('/chat/list/' + username);
if (!ok) {
displayMessage(data.message, MessageType.ERROR);
return;
}
setChats(data.chats);
}
useEffect(() => {retrieveChats().then()}, [])
return (
<div className="homeWrapper">