Various minor fixes
This commit is contained in:
parent
1e9a3f01c1
commit
f5fd7a8a34
@ -36,7 +36,7 @@ class ChatElement extends HTMLElement {
|
||||
|
||||
private processId: string | null = null;
|
||||
private processRoles: any | null = null;
|
||||
private selectedMember: string[] = [];
|
||||
private selectedMember: string[] | null = [];
|
||||
private notifications: LocalNotification[] = [];
|
||||
private notificationBadge = document.querySelector('.notification-badge');
|
||||
private notificationBoard = document.getElementById('notification-board');
|
||||
@ -53,7 +53,6 @@ class ChatElement extends HTMLElement {
|
||||
constructor() {
|
||||
super();
|
||||
this.attachShadow({ mode: 'open' });
|
||||
this.processId = this.getAttribute('process-id');
|
||||
|
||||
this.shadowRoot!.innerHTML = `
|
||||
|
||||
@ -377,7 +376,7 @@ class ChatElement extends HTMLElement {
|
||||
const memberList = document.createElement('div');
|
||||
memberList.className = 'member-list active';
|
||||
|
||||
for (const memberAddress of members) {
|
||||
for (const [processId, member] of Object.entries(members)) {
|
||||
const memberItem = document.createElement('li');
|
||||
memberItem.className = 'member-item';
|
||||
|
||||
@ -387,7 +386,7 @@ class ChatElement extends HTMLElement {
|
||||
const emojiSpan = document.createElement('span');
|
||||
emojiSpan.className = 'member-emoji';
|
||||
|
||||
const emojis = await addressToEmoji(memberAddress);
|
||||
const emojis = await addressToEmoji(processId);
|
||||
emojiSpan.textContent = `Member : ${emojis}`;
|
||||
|
||||
memberContainer.appendChild(emojiSpan);
|
||||
@ -396,7 +395,7 @@ class ChatElement extends HTMLElement {
|
||||
|
||||
memberItem.addEventListener('click', async () => {
|
||||
try {
|
||||
await this.loadMemberChat([memberAddress]);
|
||||
await this.loadMemberChat(member.sp_addresses);
|
||||
} catch (error) {
|
||||
console.error('Error loading member chat:', error);
|
||||
}
|
||||
@ -624,12 +623,8 @@ class ChatElement extends HTMLElement {
|
||||
|
||||
memberItem.onclick = async (event) => {
|
||||
event.stopPropagation();
|
||||
// Stocker le rôle sélectionné
|
||||
this.selectedRole = roleName;
|
||||
console.log('🎭 Selected role:', this.selectedRole);
|
||||
|
||||
try {
|
||||
await this.loadMemberChat([member.sp_addresses]);
|
||||
try {
|
||||
await this.loadMemberChat(member.sp_addresses);
|
||||
} catch (error) {
|
||||
console.error('❌ Error handling member click:', error);
|
||||
}
|
||||
@ -826,9 +821,9 @@ class ChatElement extends HTMLElement {
|
||||
members: Array.from(uniqueMembers.values())
|
||||
};
|
||||
|
||||
roleContainer.addEventListener('click', (event) => {
|
||||
roleContainer.addEventListener('click', async (event) => {
|
||||
event.stopPropagation();
|
||||
this.toggleMembers(filteredRoleData, roleItem);
|
||||
await this.toggleMembers(filteredRoleData, roleItem);
|
||||
});
|
||||
|
||||
roleContainer.appendChild(roleNameSpan);
|
||||
|
@ -30,7 +30,7 @@ export default class Services {
|
||||
private database: any;
|
||||
private routingInstance!: ModalService;
|
||||
private relayAddresses: { [wsurl: string]: string } = {};
|
||||
private membersList: Record<any, Process> = {};
|
||||
private membersList: Record<string, Member> = {};
|
||||
// Private constructor to prevent direct instantiation from outside
|
||||
private constructor() {}
|
||||
|
||||
@ -331,65 +331,67 @@ export default class Services {
|
||||
|
||||
public async createDmProcess(
|
||||
otherMember: string[],
|
||||
parentProcess: string,
|
||||
): Promise<ApiReturn> {
|
||||
try {
|
||||
console.log('🚀 Début createMessagingProcess');
|
||||
console.log('📝 Parent Process ID:', parentProcess);
|
||||
console.log('👥 Other Member:', otherMember);
|
||||
if (otherMember.length === 0) {
|
||||
throw new Error('Can\'t open dm with empty user');
|
||||
}
|
||||
try {
|
||||
console.log('🚀 Début createDmProcess');
|
||||
console.log('👥 Other Member:', otherMember);
|
||||
|
||||
if (!this.isPaired()) {
|
||||
throw new Error('Device not paired');
|
||||
}
|
||||
if (!this.isPaired()) {
|
||||
throw new Error('Device not paired');
|
||||
}
|
||||
|
||||
const myAddresses = await this.getMemberFromDevice();
|
||||
console.log('🔑 Mes adresses:', myAddresses);
|
||||
const myAddresses = await this.getMemberFromDevice();
|
||||
console.log('🔑 Mes adresses:', myAddresses);
|
||||
|
||||
if (!myAddresses) {
|
||||
throw new Error('No paired member found');
|
||||
}
|
||||
if (!myAddresses) {
|
||||
throw new Error('No paired member found');
|
||||
}
|
||||
|
||||
const messagingTemplate = {
|
||||
parent_id: parentProcess,
|
||||
message: '',
|
||||
roles: {
|
||||
dm: {
|
||||
members: [
|
||||
{ sp_addresses: myAddresses },
|
||||
{ sp_addresses: otherMember }
|
||||
],
|
||||
validation_rules: [
|
||||
{
|
||||
quorum: 0.01,
|
||||
fields: ['message'],
|
||||
min_sig_member: 0.01,
|
||||
},
|
||||
],
|
||||
storages: [storageUrl]
|
||||
}
|
||||
}
|
||||
};
|
||||
const dmTemplate = {
|
||||
description: 'dm',
|
||||
message: '',
|
||||
roles: {
|
||||
dm: {
|
||||
members: [
|
||||
{ sp_addresses: myAddresses },
|
||||
{ sp_addresses: otherMember }
|
||||
],
|
||||
validation_rules: [
|
||||
{
|
||||
quorum: 0.01,
|
||||
fields: ['message', 'description', 'roles'],
|
||||
min_sig_member: 0.01,
|
||||
},
|
||||
],
|
||||
storages: [storageUrl]
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
console.log('📋 Template final:', JSON.stringify(messagingTemplate, null, 2));
|
||||
console.log('👥 Création du process message comme enfant de:', parentProcess);
|
||||
console.log('📋 Template final:', JSON.stringify(dmTemplate, null, 2));
|
||||
|
||||
const relayAddress = this.getAllRelays()[0]['spAddress'];
|
||||
const feeRate = 1;
|
||||
const initState = JSON.stringify(messagingTemplate);
|
||||
const relayAddress = this.getAllRelays()[0]['spAddress'];
|
||||
const feeRate = 1;
|
||||
const initState = JSON.stringify(dmTemplate);
|
||||
|
||||
const result = this.sdkClient.create_new_process(
|
||||
JSON.stringify(messagingTemplate),
|
||||
null,
|
||||
relayAddress,
|
||||
feeRate
|
||||
);
|
||||
// console.log('✅ Process message créé:', result);
|
||||
await this.checkConnections ([{ sp_addresses: otherMember}]);
|
||||
|
||||
return result;
|
||||
} catch (e) {
|
||||
console.error('❌ Erreur:', e);
|
||||
throw e;
|
||||
}
|
||||
const result = this.sdkClient.create_new_process(
|
||||
initState,
|
||||
null,
|
||||
relayAddress,
|
||||
feeRate
|
||||
);
|
||||
|
||||
return result;
|
||||
|
||||
} catch (e) {
|
||||
console.error('❌ Erreur:', e);
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
// Create prd update for current process and update
|
||||
@ -1042,9 +1044,8 @@ export default class Services {
|
||||
* Retourne la liste de tous les membres
|
||||
* @returns Un tableau contenant tous les membres
|
||||
*/
|
||||
public getAllMembers(): Process[] {
|
||||
console.log('🔍 Liste complète des membres:', Object.values(this.membersList));
|
||||
return Object.values(this.membersList);
|
||||
public getAllMembers(): Record<string, Member> {
|
||||
return this.membersList;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user