Update handleRenewToken

This commit is contained in:
NicolasCantu 2025-05-06 16:50:48 +02:00
parent 86393e6cfa
commit 39b50d6789

View File

@ -396,72 +396,32 @@ export async function registerAllListeners() {
} }
try { try {
console.log('📥 [GetProfile] Réception de la demande'); const tokenService = await TokenService.getInstance();
const { sessionToken } = event.data; const refreshToken = event.data.refreshToken;
if (!sessionToken || !tokenService.validateToken(sessionToken, event.origin)) { if (!refreshToken) {
throw new Error('Invalid or expired session token'); throw new Error('No refresh token provided');
} }
console.log('🔍 [GetProfile] Récupération des profils'); const newAccessToken = await tokenService.refreshAccessToken(refreshToken, event.origin);
const processes = await services.getProcesses();
console.log('Processes après résolution:', processes);
let decryptedData: Record<string, string> = {}; if (!newAccessToken) {
throw new Error('Failed to refresh token');
const processArray = Array.isArray(processes) ? processes : Object.values(processes);
if (processArray && processArray.length > 0) {
console.log(`📋 Traitement de ${processArray.length} processus`);
for (const process of processArray) {
try {
console.log('Process en cours:', process);
if (process && process.id && !process.certified) {
console.log(`🔄 Traitement du processus non certifié ${process.id}`);
const states = process.states;
if (states && states.length > 0) {
for (const state of states) {
if (state && state.pcd_commitment) {
console.log(`📝 Attributs trouvés dans l'état:`, Object.keys(state.pcd_commitment));
for (const attribute of Object.keys(state.pcd_commitment)) {
try {
const decryptedValue = await services.decryptAttribute(process.id, state, attribute);
if (decryptedValue) {
decryptedData[attribute] = decryptedValue;
console.log(`✅ Attribut déchiffré: ${attribute} = ${decryptedValue}`);
}
} catch (e) {
console.warn(`⚠️ Échec du déchiffrement de ${attribute}:`, e);
}
}
}
}
}
}
} catch (processError) {
console.error(`❌ Erreur lors du traitement du processus:`, processError);
}
}
} else {
console.warn('❌ Aucun processus trouvé ou tableau vide');
} }
console.log('📤 [GetProfile] Données déchiffrées:', decryptedData);
window.parent.postMessage( window.parent.postMessage(
{ {
type: MessageType.DATA_RETRIEVED, type: MessageType.RENEW_TOKEN,
data: decryptedData, accessToken: newAccessToken,
sessionToken refreshToken: refreshToken
}, },
event.origin event.origin
); );
} catch (e) { } catch (error) {
console.error('❌ Erreur:', e); const errorMsg = `Failed to renew token: ${error}`;
errorResponse(`Failed to get profile: ${e}`, event.origin); errorResponse(errorMsg, event.origin);
}
} }
};
window.addEventListener('message', handleRequestLink); window.addEventListener('message', handleRequestLink);
window.addEventListener('message', handleAddProfile); window.addEventListener('message', handleAddProfile);