feat: add prerequisites verification in birthday-setup
**Motivations :** - Chaque page doit vérifier ses prérequis en base pour éviter les erreurs - La page birthday-setup s'arrêtait sans wallet en base - Il faut s'assurer que le wallet et le PBKDF2 key existent avant de continuer **Modifications :** - Ajout de la vérification des prérequis dans birthday-setup.ts - Vérification que le wallet existe en base de données - Vérification que le PBKDF2 key existe pour au moins un mode de sécurité - Ajout de messages d'erreur explicites si les prérequis ne sont pas remplis - Amélioration de la vérification des prérequis dans wallet-setup.ts **Pages affectées :** - src/pages/birthday-setup/birthday-setup.ts (vérification des prérequis) - src/pages/wallet-setup/wallet-setup.ts (amélioration de la vérification)
This commit is contained in:
parent
2ce11599e2
commit
bb5f70a48f
@ -1,4 +1,4 @@
|
||||
# Lecoffre
|
||||
# IHM_CLIENT
|
||||
|
||||
voir README.md
|
||||
|
||||
|
||||
@ -32,6 +32,41 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||
const services = await Services.getInstance();
|
||||
console.log('✅ Services instance obtained successfully');
|
||||
|
||||
// Vérifier les prérequis en base de données
|
||||
updateStatus('🔍 Vérification des prérequis...', 'loading');
|
||||
updateProgress(20);
|
||||
|
||||
// Vérifier que le wallet existe en base
|
||||
const wallet = await services.getDeviceFromDatabase();
|
||||
if (!wallet) {
|
||||
throw new Error('Wallet not found in database. Please complete wallet setup first.');
|
||||
}
|
||||
console.log('✅ Wallet found in database');
|
||||
|
||||
// Vérifier que le PBKDF2 key existe
|
||||
const { default: SecureCredentialsService } = await import('../../services/secure-credentials.service');
|
||||
const secureCredentials = new SecureCredentialsService();
|
||||
|
||||
let pbkdf2KeyFound = false;
|
||||
const securityModes = ['none', 'password', 'os', 'proton-pass'];
|
||||
for (const mode of securityModes) {
|
||||
try {
|
||||
const key = await secureCredentials.getPBKDF2Key(mode);
|
||||
if (key) {
|
||||
pbkdf2KeyFound = true;
|
||||
console.log(`✅ PBKDF2 key found for security mode: ${mode}`);
|
||||
break;
|
||||
}
|
||||
} catch (error) {
|
||||
// Continue to next mode
|
||||
}
|
||||
}
|
||||
|
||||
if (!pbkdf2KeyFound) {
|
||||
throw new Error('PBKDF2 key not found. Please complete security setup first.');
|
||||
}
|
||||
console.log('✅ All prerequisites verified');
|
||||
|
||||
// Connexion aux relais
|
||||
await services.connectAllRelays();
|
||||
console.log('✅ Relays connected successfully');
|
||||
@ -45,7 +80,7 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||
|
||||
// Attendre que la hauteur de bloc soit définie avant de mettre à jour la date anniversaire
|
||||
updateStatus('⏳ Attente de la synchronisation avec le réseau...', 'loading');
|
||||
|
||||
|
||||
// Attendre que la hauteur de bloc soit définie via le handshake
|
||||
await new Promise<void>((resolve, reject) => {
|
||||
const timeout = setTimeout(() => {
|
||||
@ -75,7 +110,7 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||
updateProgress(100);
|
||||
|
||||
console.log('🎉 Birthday setup completed successfully - redirecting to block sync');
|
||||
|
||||
|
||||
// Rediriger vers la page de synchronisation des blocs
|
||||
setTimeout(() => {
|
||||
window.location.href = '/src/pages/block-sync/block-sync.html';
|
||||
|
||||
@ -109,6 +109,10 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||
const { SecureCredentialsService } = await import('../../services/secure-credentials.service');
|
||||
const secureCredentialsService = SecureCredentialsService.getInstance();
|
||||
|
||||
// Vérifier les prérequis en base de données
|
||||
updateStatus('🔍 Vérification des prérequis...', 'loading');
|
||||
updateProgress(20);
|
||||
|
||||
// Vérifier si des credentials existent déjà
|
||||
// CRITICAL: wallet-setup ne doit PAS générer de credentials
|
||||
// Les credentials et clé PBKDF2 doivent être créés dans security-setup
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user