tab_show_ok

This commit is contained in:
Pascal 2025-01-22 15:52:11 +01:00
parent 2be46741ed
commit ab2324d2a6

View File

@ -48,7 +48,7 @@ class ChatElement extends HTMLElement {
}));
private messageState: number = 0;
private selectedRole: string | null = null;
private userProcessesSet: Set<string> | null = null;
private userProcessSet: Set<string> = new Set();
constructor() {
super();
@ -707,7 +707,7 @@ class ChatElement extends HTMLElement {
return null;
}
private switchTab(tabType: string, tabs: NodeListOf<Element>) {
private async switchTab(tabType: string, tabs: NodeListOf<Element>) {
// Mettre à jour les classes des onglets
tabs.forEach(tab => {
tab.classList.toggle('active', tab.getAttribute('data-tab') === tabType);
@ -727,7 +727,8 @@ class ChatElement extends HTMLElement {
// Charger le contenu approprié
switch (tabType) {
case 'processes':
this.loadAllProcesses();
const processSet = await this.getProcessesWhereTheCurrentMemberIs();
await this.loadAllProcesses(processSet);
break;
case 'members':
this.loadAllMembers();
@ -737,12 +738,9 @@ class ChatElement extends HTMLElement {
}
}
//Load all processes
private async loadAllProcesses() {
private async loadAllProcesses(processSet: Set<string>) {
console.log('🎯 Loading all processes');
const processSet = this.userProcessesSet;
console.log("Je suis le processSet dans loadAllProcesses :" ,processSet);
console.log("Je suis le processSet dans loadAllProcesses :", processSet);
const dbRequest = indexedDB.open('4nk');
@ -797,9 +795,9 @@ class ChatElement extends HTMLElement {
const oneProcess = process.states[0].commited_in;
// Si le processus est dans notre Set, ajouter une classe spéciale
if (processSet?.has(oneProcess)) {
li.classList.add('my-process');
console.log("Je suis le processus dans le set :" ,oneProcess);
if (processSet.has(oneProcess)) {
li.classList.add('my-process');
console.log("Je suis le processus dans le set :", oneProcess);
}
li.setAttribute('data-process-id', oneProcess);
@ -914,18 +912,16 @@ class ChatElement extends HTMLElement {
//fonction qui renvoie les processus où le sp_adress est impliqué
private async getProcessesWhereTheCurrentMemberIs() {
const service = await Services.getInstance();
try {
const currentMember = await service.getMemberFromDevice();
if (!currentMember) {
console.error('❌ Pas de membre trouvé');
return new Set<string>();
return this.userProcessSet;
}
console.log("Mon adresse:", currentMember[0]);
const processes = await this.getProcesses();
const processSet = new Set<string>();
for (const {key, value} of processes) {
const processName = await key;
@ -937,17 +933,15 @@ class ChatElement extends HTMLElement {
);
if (hasCurrentUser) {
processSet.add(processName);
this.userProcessSet.add(processName);
console.log("Ajout du process au Set:", processName);
}
}
this.userProcessesSet = processSet;
console.log("Ensemble des processus :", processSet);
return processSet;
return this.userProcessSet;
} catch (e) {
console.error('❌ Erreur:', e);
return new Set<string>();
return this.userProcessSet;
}
}
@ -1266,7 +1260,8 @@ class ChatElement extends HTMLElement {
} else {
console.log("🔍 Chargement des processus par défaut");
await this.getProcessesWhereTheCurrentMemberIs();
await this.loadAllProcesses();
const processSet = await this.getProcessesWhereTheCurrentMemberIs();
await this.loadAllProcesses(processSet);
}
if (this.selectedMember && this.selectedMember.length > 0) {