feat: Enhance messaging page scrolling and typing indicator UI, and add socket acknowledgement timeouts for messaging actions.

This commit is contained in:
pradeepkumar
2026-02-11 07:36:40 +05:30
parent 50e593d7ae
commit a3880bf9a7
2 changed files with 46 additions and 7 deletions

View File

@@ -161,7 +161,13 @@ class SocketService {
resolve({ success: false, error: 'Not connected' });
return;
}
const timeout = setTimeout(() => {
resolve({ success: false, error: 'Socket timeout' });
}, 10000);
this.socket.emit('join_conversation', { conversationId }, (response: { success: boolean; error?: string }) => {
clearTimeout(timeout);
resolve(response);
});
});
@@ -183,10 +189,17 @@ class SocketService {
resolve({ success: false, error: 'Not connected' });
return;
}
// Timeout fallback in case acknowledgement never arrives
const timeout = setTimeout(() => {
resolve({ success: false, error: 'Socket timeout' });
}, 10000);
this.socket.emit(
'send_message',
{ conversationId, message },
(response: { success: boolean; message?: Message; error?: string }) => {
clearTimeout(timeout);
resolve(response);
}
);
@@ -213,7 +226,13 @@ class SocketService {
resolve({ success: false, error: 'Not connected' });
return;
}
const timeout = setTimeout(() => {
resolve({ success: false, error: 'Socket timeout' });
}, 10000);
this.socket.emit('mark_read', { conversationId }, (response: { success: boolean; error?: string }) => {
clearTimeout(timeout);
resolve(response);
});
});