Skip to content

Commit 77006b2

Browse files
authored
Merge pull request #75 from mrepol742/master
Enhance homepage layout, responsiveness, and UI/UX consistency
2 parents 833d0a4 + 7283120 commit 77006b2

2 files changed

Lines changed: 240 additions & 264 deletions

File tree

app/components/Chat.tsx

Lines changed: 6 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -386,7 +386,7 @@ export default function Chat({ user }: { user: ChatUserShape }) {
386386
value={messageSearch}
387387
onChange={(e) => setMessageSearch(e.target.value)}
388388
placeholder="Search Message..."
389-
className="w-full bg-gray-50 border border-transparent rounded-xl py-2 pl-9 pr-4 text-sm text-gray-700 placeholder:text-gray-500 outline-none focus:border-blue-500/50 transition-colors shadow-inner"
389+
className="w-full bg-gray-50 border border-transparent rounded py-2 pl-9 pr-4 text-sm text-gray-700 placeholder:text-gray-500 outline-none focus:border-blue-500/50 transition-colors"
390390
/>
391391
</div>
392392
</div>
@@ -550,13 +550,13 @@ export default function Chat({ user }: { user: ChatUserShape }) {
550550
)}
551551

552552
{/* Input Area */}
553-
<div className="p-4 border-t border-gray-200 bg-white/[0.01] z-10 flex-shrink-0 pb-6 w-full">
553+
<div className="p-4 border-t border-gray-200 bg-white z-10 flex-shrink-0 pb-6 w-full">
554554
{attachments.length > 0 && (
555555
<div className="mb-3 flex flex-wrap gap-2 px-1">
556556
{attachments.map((file, index) => (
557557
<div
558558
key={index}
559-
className="bg-neutral-800/80 border border-gray-200 text-xs px-2.5 py-1.5 rounded-lg flex items-center gap-2 shadow-sm"
559+
className="bg-gray-200 border border-gray-200 text-xs px-2.5 py-1.5 rounded-lg flex items-center gap-2"
560560
>
561561
{file.type.startsWith("image/") ? (
562562
<Image
@@ -596,7 +596,7 @@ export default function Chat({ user }: { user: ChatUserShape }) {
596596
isDraggingOver
597597
? "border-blue-500/60 bg-blue-50 shadow-lg shadow-blue-500/10"
598598
: "border-gray-200 bg-gray-50 hover:border-gray-300 focus-within:border-blue-500/50 focus-within:bg-white focus-within:shadow-[0_0_15px_rgba(99,102,241,0.1)]"
599-
} transition-all duration-300 rounded-[24px] border flex items-end gap-2 p-2 shadow-sm backdrop-blur-md`}
599+
} transition-all duration-300 rounded-xl border flex items-end gap-2 p-2`}
600600
>
601601
<button
602602
onClick={() => fileInputRef.current?.click()}
@@ -635,7 +635,7 @@ export default function Chat({ user }: { user: ChatUserShape }) {
635635
className={`h-10 px-5 rounded-[20px] font-semibold text-[14px] flex items-center gap-2.5 transition-all duration-300 flex-shrink-0
636636
${
637637
canSendMessage
638-
? "bg-gradient-to-r from-blue-500 to-violet-500 hover:from-blue-400 hover:to-violet-400 text-gray-900 shadow-md shadow-blue-500/25 active:scale-95"
638+
? "bg-blue-500 text-white shadow-md shadow-blue-500/25"
639639
: "bg-gray-50 text-gray-500 cursor-not-allowed"
640640
}
641641
`}
@@ -671,7 +671,7 @@ export default function Chat({ user }: { user: ChatUserShape }) {
671671
{/* Right Sidebar */}
672672
{conversationId && (
673673
<div
674-
className={`w-full sm:w-[320px] flex-shrink-0 border-l border-gray-200 flex flex-col absolute right-0 top-0 bottom-0 h-full z-40 bg-white xl:bg-transparent xl:relative xl:transform-none transition-transform duration-300 ${showRightSidebar ? "translate-x-0" : "translate-x-full xl:translate-x-0 xl:hidden"}`}
674+
className={`w-full sm:w-[320px] flex-shrink-0 border-l border-gray-200 flex flex-col absolute right-0 top-0 bottom-0 h-full z-40 bg-white xl:relative xl:transform-none transition-transform duration-300 ${showRightSidebar ? "translate-x-0" : "translate-x-full xl:translate-x-0 xl:hidden"}`}
675675
>
676676
<div className="absolute top-4 right-4 xl:hidden">
677677
<button
@@ -693,43 +693,6 @@ export default function Chat({ user }: { user: ChatUserShape }) {
693693
<p className="text-[13px] text-gray-500 font-medium mt-1">
694694
{isGlobalActive ? "Community channel" : activeOtherUser?.email}
695695
</p>
696-
697-
<div className="flex items-center gap-3 mt-6 w-full justify-center">
698-
<button
699-
onClick={() => {
700-
const input = document.getElementById("message-search");
701-
if (input) {
702-
input.focus();
703-
}
704-
}}
705-
className="w-11 h-11 rounded-2xl bg-gray-50 flex items-center justify-center text-gray-500 hover:text-blue-600 hover:bg-gray-100 transition shadow-sm"
706-
title="Search Message"
707-
>
708-
<FontAwesomeIcon icon={faSearch} className="w-4 h-4" />
709-
</button>
710-
<button
711-
disabled={isGlobalActive}
712-
onClick={handleDeleteConversation}
713-
className={`w-11 h-11 rounded-2xl bg-gray-50 flex items-center justify-center text-gray-500 hover:bg-gray-100 transition shadow-sm ${isGlobalActive ? "opacity-50 cursor-not-allowed" : "hover:text-red-600"}`}
714-
title="Delete Conversation"
715-
>
716-
<FontAwesomeIcon icon={faTrash} className="w-4 h-4" />
717-
</button>
718-
<button
719-
onClick={() => toast.info("Channel info")}
720-
className="w-11 h-11 rounded-2xl bg-gray-50 flex items-center justify-center text-gray-500 hover:text-gray-900 hover:bg-gray-100 transition shadow-sm"
721-
title="Info"
722-
>
723-
<FontAwesomeIcon icon={faInfoCircle} className="w-4 h-4" />
724-
</button>
725-
<button
726-
onClick={() => toast.success("Notifications muted")}
727-
className="w-11 h-11 rounded-2xl bg-gray-50 flex items-center justify-center text-gray-500 hover:text-gray-900 hover:bg-gray-100 transition shadow-sm"
728-
title="Mute"
729-
>
730-
<FontAwesomeIcon icon={faBellSlash} className="w-4 h-4" />
731-
</button>
732-
</div>
733696
</div>
734697

735698
<div className="flex-1 overflow-y-auto p-6 space-y-6 [&::-webkit-scrollbar]:w-1.5 [&::-webkit-scrollbar-track]:bg-transparent [&::-webkit-scrollbar-thumb]:bg-gray-200 [&::-webkit-scrollbar-thumb]:rounded-full hover:[&::-webkit-scrollbar-thumb]:bg-white/30 border-t border-gray-200">

0 commit comments

Comments
 (0)