Added few functions to the platform

This commit is contained in:
2026-02-06 11:34:16 +01:00
parent bb5c3058b1
commit ccff904464
14 changed files with 2770 additions and 74 deletions

View File

@@ -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>
);
}