Added few functions to the platform
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
|
||||
import { useState, useEffect, useRef } from 'react';
|
||||
import useSWR from 'swr';
|
||||
import AlertModal from './AlertModal';
|
||||
|
||||
interface User {
|
||||
id: string;
|
||||
@@ -61,6 +62,12 @@ export default function ChatWindow({
|
||||
const [currentUser, setCurrentUser] = useState<User | null>(null);
|
||||
const [typingUsers, setTypingUsers] = useState<User[]>([]);
|
||||
const [readReceipts, setReadReceipts] = useState<Record<string, Date | null>>({});
|
||||
const [alertModal, setAlertModal] = useState<{
|
||||
show: boolean;
|
||||
type: 'success' | 'error' | 'info' | 'warning';
|
||||
title: string;
|
||||
message: string;
|
||||
} | null>(null);
|
||||
const messagesEndRef = useRef<HTMLDivElement>(null);
|
||||
const fileInputRef = useRef<HTMLInputElement>(null);
|
||||
const typingTimeoutRef = useRef<NodeJS.Timeout | null>(null);
|
||||
@@ -198,11 +205,21 @@ export default function ChatWindow({
|
||||
}).catch(console.error);
|
||||
} else {
|
||||
const error = await response.json();
|
||||
alert(error.error || 'Erreur lors de l\'envoi du message');
|
||||
setAlertModal({
|
||||
show: true,
|
||||
type: 'error',
|
||||
title: 'Erreur',
|
||||
message: error.error || 'Erreur lors de l\'envoi du message',
|
||||
});
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Erreur:', error);
|
||||
alert('Erreur lors de l\'envoi du message');
|
||||
setAlertModal({
|
||||
show: true,
|
||||
type: 'error',
|
||||
title: 'Erreur',
|
||||
message: 'Erreur lors de l\'envoi du message',
|
||||
});
|
||||
} finally {
|
||||
setIsSending(false);
|
||||
}
|
||||
@@ -584,6 +601,17 @@ export default function ChatWindow({
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{/* Modal d'alerte */}
|
||||
{alertModal && (
|
||||
<AlertModal
|
||||
isOpen={alertModal.show}
|
||||
type={alertModal.type}
|
||||
title={alertModal.title}
|
||||
message={alertModal.message}
|
||||
onClose={() => setAlertModal(null)}
|
||||
/>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user