Update handleRenewToken

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

View File

@ -394,74 +394,34 @@ export async function registerAllListeners() {
if (event.data.type !== MessageType.RENEW_TOKEN) {
return;
}
try {
console.log('📥 [GetProfile] Réception de la demande');
const { sessionToken } = event.data;
if (!sessionToken || !tokenService.validateToken(sessionToken, event.origin)) {
throw new Error('Invalid or expired session token');
}
console.log('🔍 [GetProfile] Récupération des profils');
const processes = await services.getProcesses();
console.log('Processes après résolution:', processes);
let decryptedData: Record<string, string> = {};
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(
{
type: MessageType.DATA_RETRIEVED,
data: decryptedData,
sessionToken
},
event.origin
);
} catch (e) {
console.error('❌ Erreur:', e);
errorResponse(`Failed to get profile: ${e}`, event.origin);
const tokenService = await TokenService.getInstance();
const refreshToken = event.data.refreshToken;
if (!refreshToken) {
throw new Error('No refresh token provided');
}
const newAccessToken = await tokenService.refreshAccessToken(refreshToken, event.origin);
if (!newAccessToken) {
throw new Error('Failed to refresh token');
}
window.parent.postMessage(
{
type: MessageType.RENEW_TOKEN,
accessToken: newAccessToken,
refreshToken: refreshToken
},
event.origin
);
} catch (error) {
const errorMsg = `Failed to renew token: ${error}`;
errorResponse(errorMsg, event.origin);
}
};
}
window.addEventListener('message', handleRequestLink);
window.addEventListener('message', handleAddProfile);