fix: improve birthday-setup waiting mechanism and button text
**Motivations :** - Le texte du bouton était toujours 'Terminer l'initialisation' au lieu de 'Synchroniser les blocs' - La boucle d'attente de la hauteur de bloc était inefficace et atteignait le timeout - Il faut une approche plus robuste pour attendre le handshake **Modifications :** - Changement du texte du bouton de 'Terminer l'initialisation' à 'Synchroniser les blocs' - Remplacement de la boucle d'attente par une approche basée sur Promise avec timeout - Augmentation du timeout à 15 secondes pour laisser plus de temps au handshake - Amélioration de la logique d'attente de la hauteur de bloc **Pages affectées :** - src/pages/birthday-setup/birthday-setup.html (texte du bouton) - src/pages/birthday-setup/birthday-setup.ts (mécanisme d'attente)
This commit is contained in:
parent
309e2902cf
commit
ce38e01037
@ -112,7 +112,7 @@
|
||||
<div class="progress-bar" id="progressBar"></div>
|
||||
</div>
|
||||
|
||||
<button class="continue-btn" id="continueBtn" disabled>Terminer l'initialisation</button>
|
||||
<button class="continue-btn" id="continueBtn" disabled>Synchroniser les blocs</button>
|
||||
</div>
|
||||
|
||||
<script type="module" src="./birthday-setup.ts"></script>
|
||||
|
||||
@ -67,22 +67,26 @@ 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');
|
||||
let blockHeightAttempts = 0;
|
||||
const blockHeightMaxAttempts = 100; // Augmenter à 100 tentatives (10 secondes)
|
||||
while (blockHeightAttempts < blockHeightMaxAttempts) {
|
||||
const blockHeight = services.getCurrentBlockHeight();
|
||||
if (blockHeight !== -1) {
|
||||
console.log(`✅ Block height set: ${blockHeight}`);
|
||||
break;
|
||||
}
|
||||
console.log(`⏳ Waiting for block height (attempt ${blockHeightAttempts + 1}/${blockHeightMaxAttempts})...`);
|
||||
await new Promise(resolve => setTimeout(resolve, 100));
|
||||
blockHeightAttempts++;
|
||||
}
|
||||
|
||||
if (services.getCurrentBlockHeight() === -1) {
|
||||
throw new Error('Failed to get block height from relay');
|
||||
}
|
||||
// Attendre que la hauteur de bloc soit définie via le handshake
|
||||
await new Promise<void>((resolve, reject) => {
|
||||
const timeout = setTimeout(() => {
|
||||
reject(new Error('Timeout waiting for block height'));
|
||||
}, 15000); // 15 secondes de timeout
|
||||
|
||||
const checkBlockHeight = () => {
|
||||
const blockHeight = services.getCurrentBlockHeight();
|
||||
if (blockHeight !== -1) {
|
||||
console.log(`✅ Block height set: ${blockHeight}`);
|
||||
clearTimeout(timeout);
|
||||
resolve();
|
||||
} else {
|
||||
setTimeout(checkBlockHeight, 100);
|
||||
}
|
||||
};
|
||||
|
||||
checkBlockHeight();
|
||||
});
|
||||
|
||||
// Mettre à jour la date anniversaire du wallet
|
||||
await services.updateDeviceBlockHeight();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user