Skip to content

Commit 35c28a9

Browse files
devolt5Copilot
andcommitted
Revert order of messages
Co-authored-by: Copilot <copilot@github.com>
1 parent 24ade20 commit 35c28a9

1 file changed

Lines changed: 41 additions & 38 deletions

File tree

src/components/Messages.tsx

Lines changed: 41 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -42,49 +42,52 @@ export function Messages({
4242

4343
return (
4444
<div className="flex flex-col gap-1.5 px-1 py-1.5">
45-
{items.map((msg) => (
46-
<div
47-
key={msg.id}
48-
className={`flex gap-1.5 items-start ${msg.dialogId && onMessageClick ? "cursor-pointer hover:opacity-80 active:opacity-60 transition-opacity" : "cursor-pointer"}`}
49-
onClick={() => {
50-
if (msg.dialogId && onMessageClick) {
51-
onMessageClick(msg.dialogId, msg.id);
52-
} else {
53-
onMarkAsRead?.(msg.id);
54-
}
55-
}}
56-
>
57-
{/* Avatar */}
45+
{items
46+
.slice()
47+
.reverse()
48+
.map((msg) => (
5849
<div
59-
className={`shrink-0 w-6 h-6 rounded-full flex items-center justify-center text-white font-semibold ${senderColor(msg.sender)}`}
60-
style={{ fontSize: "9px" }}
61-
title={msg.sender}
50+
key={msg.id}
51+
className={`flex gap-1.5 items-start ${msg.dialogId && onMessageClick ? "cursor-pointer hover:opacity-80 active:opacity-60 transition-opacity" : "cursor-pointer"}`}
52+
onClick={() => {
53+
if (msg.dialogId && onMessageClick) {
54+
onMessageClick(msg.dialogId, msg.id);
55+
} else {
56+
onMarkAsRead?.(msg.id);
57+
}
58+
}}
6259
>
63-
{senderInitial(msg.sender)}
64-
</div>
65-
66-
{/* Bubble */}
67-
<div className="flex-1 min-w-0">
68-
<div className="flex items-baseline gap-1 mb-0.5">
69-
<span className="text-[9px] font-semibold text-stone-600 truncate">
70-
{msg.sender}
71-
</span>
72-
<span className="text-[8px] text-stone-400 shrink-0">
73-
{formatTime(msg.timestamp)}
74-
</span>
75-
{!msg.read && (
76-
<Bell
77-
className="w-4 h-4 text-amber-500 animate-[bell-shake_0.75s_infinite]"
78-
fill="currentColor"
79-
/>
80-
)}
60+
{/* Avatar */}
61+
<div
62+
className={`shrink-0 w-6 h-6 rounded-full flex items-center justify-center text-white font-semibold ${senderColor(msg.sender)}`}
63+
style={{ fontSize: "9px" }}
64+
title={msg.sender}
65+
>
66+
{senderInitial(msg.sender)}
8167
</div>
82-
<div className="bg-stone-100 border border-stone-200 rounded-lg rounded-tl-none px-2 py-1 text-[10px] text-stone-700 leading-snug wrap-break-word">
83-
{msg.content}
68+
69+
{/* Bubble */}
70+
<div className="flex-1 min-w-0">
71+
<div className="flex items-baseline gap-1 mb-0.5">
72+
<span className="text-[9px] font-semibold text-stone-600 truncate">
73+
{msg.sender}
74+
</span>
75+
<span className="text-[8px] text-stone-400 shrink-0">
76+
{formatTime(msg.timestamp)}
77+
</span>
78+
{!msg.read && (
79+
<Bell
80+
className="w-4 h-4 text-amber-500 animate-[bell-shake_0.75s_infinite]"
81+
fill="currentColor"
82+
/>
83+
)}
84+
</div>
85+
<div className="bg-stone-100 border border-stone-200 rounded-lg rounded-tl-none px-2 py-1 text-[10px] text-stone-700 leading-snug wrap-break-word">
86+
{msg.content}
87+
</div>
8488
</div>
8589
</div>
86-
</div>
87-
))}
90+
))}
8891
</div>
8992
);
9093
}

0 commit comments

Comments
 (0)