Refactor/Fix: Standardize Dialog Themes & Fix WebSocket Fragmentation. Detail: UserInfoDialog design refresh, standardized all dialogs, fixed backend WebSocketServer fragmentation bug.

This commit is contained in:
backuppc
2025-12-30 17:35:02 +09:00
parent 8528d0206c
commit 5fe21528fc
27 changed files with 590 additions and 411 deletions

View File

@@ -98,18 +98,18 @@ export function UserSearchDialog({
return (
<div
className="fixed inset-0 bg-black/60 flex items-center justify-center z-50"
className="fixed inset-0 bg-black/60 flex items-center justify-center z-50 backdrop-blur-sm"
onClick={onClose}
>
<div
className="glass-effect rounded-xl w-full max-w-lg max-h-[80vh] overflow-hidden flex flex-col"
className="dialog-container rounded-xl w-full max-w-lg max-h-[80vh] overflow-hidden flex flex-col transition-all duration-300"
onClick={(e) => e.stopPropagation()}
>
{/* 헤더 */}
<div className="p-4 border-b border-white/10 flex items-center justify-between shrink-0">
<div className="dialog-header p-4 flex items-center justify-between shrink-0">
<div className="flex items-center gap-2">
<Users className="w-5 h-5 text-primary-400" />
<h2 className="text-lg font-semibold text-white">{title}</h2>
<h2 className="dialog-title">{title}</h2>
</div>
<button
onClick={onClose}
@@ -156,11 +156,10 @@ export function UserSearchDialog({
onSelect(user);
onClose();
}}
className={`w-full text-left px-4 py-3 rounded-lg transition-colors flex items-center gap-3 ${
selectedUser?.id === user.id
className={`w-full text-left px-4 py-3 rounded-lg transition-colors flex items-center gap-3 ${selectedUser?.id === user.id
? 'bg-primary-500/30 border border-primary-400/50'
: 'bg-white/5 hover:bg-white/10 border border-transparent'
}`}
}`}
>
<div className="flex-1 min-w-0">
<div className="flex items-center gap-2">
@@ -186,7 +185,7 @@ export function UserSearchDialog({
</div>
{/* 푸터 */}
<div className="p-4 border-t border-white/10 flex items-center justify-between shrink-0">
<div className="dialog-footer p-4 flex items-center justify-between shrink-0">
<span className="text-sm text-white/50">
{filteredUsers.length} {selectedUser && `| 선택: ${selectedUser.id} (${selectedUser.name})`}
</span>