css_not_ok

This commit is contained in:
Pascal 2025-01-08 18:06:42 +01:00
parent 869c5edd93
commit 755a0d5a6f

View File

@ -349,6 +349,29 @@ class ChatElement extends HTMLElement {
throw new Error('No paired member found'); throw new Error('No paired member found');
} }
// Formater la date pour n'avoir que l'heure et la date
const now = new Date();
const formattedTime = now.toLocaleString('fr-FR', {
day: '2-digit',
month: '2-digit',
year: 'numeric',
hour: '2-digit',
minute: '2-digit'
});
// Créer le message au format attendu par messageStore
const newMessage = {
id: Date.now(),
sender: myAddresses[0],
text: messageText,
time: formattedTime,
type: 'text' as const
};
messageStore.addMessage(this.selectedMemberId!, newMessage);
this.messagesMock = messageStore.getMessages();
// Récupérer le process_id du parent (conversation) // Récupérer le process_id du parent (conversation)
const groupItem = this.shadowRoot?.querySelector('[data-process-id]'); const groupItem = this.shadowRoot?.querySelector('[data-process-id]');
const parentProcessId = groupItem?.getAttribute('data-process-id'); const parentProcessId = groupItem?.getAttribute('data-process-id');
@ -357,8 +380,6 @@ class ChatElement extends HTMLElement {
throw new Error('Parent process ID not found'); throw new Error('Parent process ID not found');
} }
const currentTimestamp = new Date().toISOString();
const messageTemplate = { const messageTemplate = {
process_id: parentProcessId, process_id: parentProcessId,
parent_id: null, parent_id: null,
@ -369,8 +390,8 @@ class ChatElement extends HTMLElement {
type: 'text', type: 'text',
content: messageText, content: messageText,
metadata: { metadata: {
created_at: currentTimestamp, created_at: formattedTime,
last_updated: currentTimestamp, last_updated: formattedTime,
sender: myAddresses[0], sender: myAddresses[0],
recipient: this.selectedMemberId recipient: this.selectedMemberId
} }
@ -409,7 +430,7 @@ class ChatElement extends HTMLElement {
}; };
console.log('Message template:', { console.log('Message template:', {
timestamp: currentTimestamp, timestamp: formattedTime,
template: messageTemplate template: messageTemplate
}); });
@ -443,46 +464,56 @@ class ChatElement extends HTMLElement {
// Load the list of members // Load the list of members
private async loadMemberChat(memberId: string | number) { private async loadMemberChat(memberId: string | number) {
const myAddresses = await this.getMemberFromDevice();
if (!myAddresses) {
console.error('No paired member found');
return;
}
this.selectedMemberId = String(memberId); this.selectedMemberId = String(memberId);
const memberMessages = this.messagesMock.find(m => String(m.memberId) === String(memberId)); const memberMessages = this.messagesMock.find(m => String(m.memberId) === String(memberId));
const chatHeader = this.shadowRoot?.querySelector('#chat-header'); const chatHeader = this.shadowRoot?.querySelector('#chat-header');
const messagesContainer = this.shadowRoot?.querySelector('#messages'); const messagesContainer = this.shadowRoot?.querySelector('#messages');
if (!chatHeader || !messagesContainer) return; if (!chatHeader || !messagesContainer) return;
const memberAddress = String(memberId); const memberAddress = String(memberId);
const emojis = await addressToEmoji(memberAddress); const emojis = await addressToEmoji(memberAddress);
chatHeader.textContent = `Chat with ${emojis}`; chatHeader.textContent = `Chat with ${emojis}`;
messagesContainer.innerHTML = ''; messagesContainer.innerHTML = '';
if (memberMessages) { if (memberMessages) {
for (const message of memberMessages.messages) { for (const message of memberMessages.messages) {
const messageElement = document.createElement('div'); const messageElement = document.createElement('div');
messageElement.className = 'message-container'; messageElement.className = 'message-container';
const messageContent = document.createElement('div'); const messageContent = document.createElement('div');
messageContent.className = 'message'; messageContent.className = 'message';
// Ajouter la classe 'user' si c'est votre message
if (message.sender === myAddresses[0]) {
messageContent.classList.add('user');
}
if (message.type === 'file') {
messageContent.innerHTML = `<a href="${message.fileData}" download="${message.fileName}" target="_blank">${message.fileName}</a>`;
} else {
const senderDisplay = message.sender === myAddresses[0]
? "Me"
: await addressToEmoji(memberAddress);
if (message.type === 'file') { messageContent.innerHTML = `
messageContent.innerHTML = `<a href="${message.fileData}" download="${message.fileName}" target="_blank">${message.fileName}</a>`; <strong>${senderDisplay}</strong>: ${message.text}
messageContent.classList.add('user'); <span style="float: right;">${message.time}</span>
} else { `;
const senderDisplay = message.sender === "4NK" }
? "Me"
: await addressToEmoji(memberAddress); messageElement.appendChild(messageContent);
messagesContainer.appendChild(messageElement);
messageContent.innerHTML = `<strong>${senderDisplay}</strong>: ${message.text} <span style="float: right;">${message.time}</span>`;
if (message.sender === "4NK") {
messageContent.classList.add('user');
}
}
messageElement.appendChild(messageContent);
messagesContainer.appendChild(messageElement);
} }
} }
this.scrollToBottom(messagesContainer); this.scrollToBottom(messagesContainer);
} }