msg_in_indexedDB_ok

This commit is contained in:
Pascal 2025-01-13 23:34:05 +01:00
parent c9195601e8
commit c521d34504

View File

@ -18,6 +18,7 @@ import { getCorrectDOM } from '../../utils/document.utils';
import chatStyle from '../../../public/style/chat.css?inline';
import { addressToEmoji } from '../../utils/sp-address.utils';
import Database from '../../services/database.service';
import Services from '../../services/service';
const storageUrl = `/storage`;
@ -60,6 +61,7 @@ class ChatElement extends HTMLElement {
name: member.name,
roleName: 'Default Role'
}));
private messageState: number = 0;
constructor() {
@ -319,9 +321,9 @@ class ChatElement extends HTMLElement {
],
validation_rules: [
{
quorum: 1.0,
quorum: 0.01,
fields: ['messages'],
min_sig_member: 1.0,
min_sig_member: 0.01,
},
],
storages: [storageUrl]
@ -340,26 +342,6 @@ class ChatElement extends HTMLElement {
);
console.log('✅ Process message créé:', result);
const db = await Database.getInstance();
await db.addObject({
storeName: 'diffs',
key: (result as any).process_id,
object: {
value_commitment: {
process_id: (result as any).process_id,
parent_id: processId,
description: 'messaging',
roles: messagingTemplate.roles,
states: [{
encrypted_pcd: messagingTemplate
}]
},
timestamp: Date.now()
}
});
console.log('💾 Process message sauvegardé dans diffs');
return result;
} catch (e) {
console.error('❌ Erreur:', e);
@ -420,37 +402,38 @@ class ChatElement extends HTMLElement {
return;
}
const recipientRole = Object.entries(messageProcess.roles).find(([_, roleData]: [string, any]) =>
roleData.members?.some((member: any) =>
member.sp_addresses.includes(this.selectedMemberId)
)
)?.[0] || 'default';
const timestamp = Date.now();
const uniqueKey = `${this.getAttribute('process-id')}${timestamp}`;
const messageTemplate = {
value_commitment: uniqueKey,
messaging_id: this.getAttribute('process-id'),
description: 'message_content',
state: 'sent',
content: {
text: messageText,
timestamp: timestamp,
sender: myAddresses[0],
recipient: this.selectedMemberId
recipient: this.selectedMemberId,
messageState: this.messageState
},
roles: {
[recipientRole]: messageProcess.roles[recipientRole]
users: {
members: [
{ sp_addresses: myAddresses },
{ sp_addresses: [this.selectedMemberId] }
]
}
}
};
console.log('📝 Template message:', messageTemplate);
const db = await Database.getInstance();
await db.addObject({
storeName: 'diffs',
object: messageTemplate,
key: null
});
const result = await this.sdkClient.create_new_process(
JSON.stringify(messageTemplate),
messageProcess.process_id,
'relay_address',
1
);
console.log('✅ Message créé:', result);
messageInput.value = '';
await this.loadMemberChat(this.selectedMemberId);
} catch (error) {
console.error('❌ Erreur envoi message:', error);