From f732f775c26d1822edd902b364064dfb90b9359f Mon Sep 17 00:00:00 2001 From: NicolasCantu Date: Wed, 29 Oct 2025 20:32:22 +0100 Subject: [PATCH] Fix pairing page HTML layout and relay timeout issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Motivations :** - Le HTML de la page de pairing était cassé avec tous les blocs à la suite - Le script s'arrêtait sur l'attente des relays sans timeout de fallback - Le CSS de 4nk.css était chargé après le CSS inline, causant des conflits **Modifications :** - pairing.html : Déplacé le lien vers 4nk.css avant le CSS inline pour éviter les conflits - service.ts : Ajouté un timeout de 10 secondes dans getRelayReadyPromise() pour éviter l'attente infinie - service.ts : Ajouté une résolution manuelle de relayReadyPromise dans connectAllRelays() si le handshake timeout - service.ts : Supprimé le paramètre reject inutilisé dans la Promise **Pages affectées :** - src/pages/pairing/pairing.html : Ordre de chargement CSS corrigé - src/services/service.ts : Timeout et fallback pour les relays --- src/pages/pairing/pairing.html | 2 +- src/services/service.ts | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/pages/pairing/pairing.html b/src/pages/pairing/pairing.html index da1b462..7a750d4 100644 --- a/src/pages/pairing/pairing.html +++ b/src/pages/pairing/pairing.html @@ -4,6 +4,7 @@ Pairing - LeCoffre + -
diff --git a/src/services/service.ts b/src/services/service.ts index 9917218..9fcb0c4 100755 --- a/src/services/service.ts +++ b/src/services/service.ts @@ -572,6 +572,8 @@ export default class Services { `⚠️ No handshake received within timeout, but continuing with ${connectedUrls.length} connections` ); // Continue anyway - we have connections even without handshake + // Resolve the relay ready promise manually since we have connections + this.resolveRelayReady(); } } else { console.warn(`⚠️ No relay connections established`); @@ -590,8 +592,18 @@ export default class Services { if (!this.relayReadyPromise) { console.log('🔍 DEBUG: Creating new relay ready promise'); - this.relayReadyPromise = new Promise(resolve => { + this.relayReadyPromise = new Promise((resolve) => { this.relayReadyResolver = resolve; + + // Timeout après 10 secondes si aucun handshake n'arrive + setTimeout(() => { + if (this.relayReadyResolver) { + console.warn('⚠️ Relay ready timeout - resolving anyway'); + this.relayReadyResolver(); + this.relayReadyResolver = null; + this.relayReadyPromise = null; + } + }, 10000); }); } else { console.log('🔍 DEBUG: Returning existing relay ready promise');