Skip to content

Commit 48e6b22

Browse files
committed
fixed the UI of send section and message display
1 parent d69f8fd commit 48e6b22

File tree

3 files changed

+36
-13
lines changed

3 files changed

+36
-13
lines changed

client/src/App.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import Home from './pages/Home';
77
import Profile from './pages/Profile';
88
import { Toaster } from "@/components/ui/sonner";
99
import EditProfileForm from './pages/EditProfileForm';
10-
import { MessagePage } from './components/Messages/MessagePage';
10+
import { MessagePage } from './pages/MessagePage';
1111

1212
const App = () => {
1313

client/src/components/Messages/Message.tsx

Lines changed: 34 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ import {
1010
} from "@/components/ui/resizable"
1111
import { TooltipProvider } from "@/components/ui/tooltip"
1212
import axios from "axios"
13+
import { Separator } from "@/components/ui/separator"
14+
import { Textarea } from "@/components/ui/textarea"
15+
import { Button } from "@/components/ui/button"
1316

1417
const backendUrl = import.meta.env.VITE_BACKEND_URL || 'http://localhost:5000';
1518

@@ -135,25 +138,45 @@ export function Message() {
135138
<ResizableHandle withHandle />
136139
<ResizablePanel minSize={30} className="flex flex-col">
137140
<div className="flex-grow overflow-auto">
138-
{selectedUser && (
141+
142+
{selectedUser ? (
139143
<div>
140144
<h3>Chat with {selectedUser.username}</h3>
141-
<div>
145+
<div className="flex-1 whitespace-pre-wrap p-4 text-sm">
142146
{chatMessages.map((msg, index) => (
143147
<div key={index}>
144148
<strong>{msg.sender_username === currentUserId ? "You" : selectedUser.username}:</strong> {msg.message}
145149
</div>
146150
))}
147151
</div>
148-
<input
149-
type="text"
150-
value={message}
151-
onChange={(e) => setMessage(e.target.value)}
152-
placeholder="Type a message"
153-
/>
154-
<button onClick={handleSendMessage}>Send</button>
155-
</div>
156-
)}
152+
<Separator className="mt-auto" />
153+
<div className="p-4">
154+
<form>
155+
<div className="grid gap-4">
156+
<Textarea
157+
className="p-4"
158+
value={message}
159+
onChange={(e) => setMessage(e.target.value)}
160+
placeholder="Type a message"
161+
/>
162+
<div className="flex items-center">
163+
<Button
164+
onClick={handleSendMessage}
165+
size="sm"
166+
className="ml-auto"
167+
>
168+
Send
169+
</Button>
170+
</div>
171+
</div>
172+
</form>
173+
</div>
174+
</div>
175+
) : (
176+
<div className="p-8 text-center text-muted-foreground">
177+
No message selected
178+
</div>
179+
)}
157180
</div>
158181
</ResizablePanel>
159182
</ResizablePanelGroup>

client/src/components/Messages/MessagePage.tsx renamed to client/src/pages/MessagePage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import {
44
SidebarTrigger,
55
} from "@/components/ui/sidebar"
66
import { SidebarLeft } from '@/components/Sidebar/Sidebar'
7-
import { Message } from "./Message";
7+
import { Message } from "../components/Messages/Message";
88

99
export const MessagePage: React.FC = () => {
1010

0 commit comments

Comments
 (0)