From 5c05f2119d5d3e77b922b520a8961a9253f39441 Mon Sep 17 00:00:00 2001 From: NicolasCantu Date: Thu, 23 Jan 2025 19:49:49 +0100 Subject: [PATCH] Add function to get an address-pairingProcess map --- src/pages/chat/chat.ts | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/pages/chat/chat.ts b/src/pages/chat/chat.ts index ffa94b4..ecdbef2 100755 --- a/src/pages/chat/chat.ts +++ b/src/pages/chat/chat.ts @@ -49,6 +49,7 @@ class ChatElement extends HTMLElement { private messageState: number = 0; private selectedRole: string | null = null; private userProcessSet: Set = new Set(); + private addressMap: Record = {}; // map each address to its pairing process id constructor() { super(); @@ -636,6 +637,29 @@ class ChatElement extends HTMLElement { return new Blob(byteArrays, { type: type }); } + //To get a map with key: sp address, value: pairing process + async getAddressMap() { + const service = await Services.getInstance(); + const allMembers = await service.getAllMembers(); + + const addressMap: Record = {}; + + for (const [key, values] of Object.entries(allMembers)) { + + if (values.sp_addresses) { + for (let value of values.sp_addresses) { + this.addressMap[value] = key; + } + } else { + console.log(`No sp_addresses array found for key "${key}"`); + } + } + + console.log("ADDRESS MAP: ", this.addressMap); + this.addressMap = addressMap; + return this.addressMap; + } + private async toggleMembers(roleData: any, roleElement: HTMLElement) { let memberList = roleElement.querySelector('.member-list'); const roleName = roleElement.querySelector('.role-name')?.textContent || '';