diff --git a/src/pages/home/home.ts b/src/pages/home/home.ts index 65859ce..9f7c6a4 100755 --- a/src/pages/home/home.ts +++ b/src/pages/home/home.ts @@ -727,11 +727,11 @@ async function handleMainPairing(): Promise { console.log('🪙 Requesting faucet tokens for pairing...'); try { const services = await Services.getInstance(); - + // Ensure relays are connected before requesting faucet console.log('🔄 Ensuring relays are connected...'); await services.connectAllRelays(); - + await services.getTokensFromFaucet(); console.log('✅ Faucet tokens requested successfully'); } catch (error) { diff --git a/src/services/service.ts b/src/services/service.ts index d195764..7cad307 100755 --- a/src/services/service.ts +++ b/src/services/service.ts @@ -1709,7 +1709,8 @@ export default class Services { } // Injecter les clés depuis les credentials dans le device de la base de données - deviceFromDb.sp_wallet.spend_key = credentials.spendKey; + // spend_key doit être un objet {Secret: string} + deviceFromDb.sp_wallet.spend_key = {Secret: credentials.spendKey}; deviceFromDb.sp_wallet.scan_key = credentials.scanKey; // Restaurer le device complet avec toutes les informations (birthday, last_scan, clés) @@ -1722,9 +1723,16 @@ export default class Services { const deviceInMemory = this.dumpDeviceFromMemory(); if (deviceInMemory?.sp_wallet && credentials.spendKey && credentials.scanKey) { // Mettre à jour les clés dans le device en mémoire - deviceInMemory.sp_wallet.spend_key = credentials.spendKey; + // spend_key doit être un objet {Secret: string} + deviceInMemory.sp_wallet.spend_key = {Secret: credentials.spendKey}; deviceInMemory.sp_wallet.scan_key = credentials.scanKey; - + + console.log('🔧 Injected keys:', { + spend_key_type: typeof deviceInMemory.sp_wallet.spend_key, + scan_key_type: typeof deviceInMemory.sp_wallet.scan_key, + spend_key_secret: deviceInMemory.sp_wallet.spend_key?.Secret ? 'present' : 'missing' + }); + // Restaurer le device avec les clés mises à jour this.restoreDevice(deviceInMemory); console.log('✅ Wallet keys injected and device restored');