diff --git a/neode-ui/src/views/Home.vue b/neode-ui/src/views/Home.vue index 5f8ca3a1..45fdf8de 100644 --- a/neode-ui/src/views/Home.vue +++ b/neode-ui/src/views/Home.vue @@ -359,6 +359,7 @@ const line2Text = computed(() => showWelcomeBlock.value ? displayLine2.value : L onBeforeUnmount(() => { if (typingInterval) clearInterval(typingInterval) if (systemStatsInterval) clearInterval(systemStatsInterval) + if (walletRefreshInterval) clearInterval(walletRefreshInterval) }) watch(() => loginTransition.pendingWelcomeTyping, (pending) => { if (pending) showWelcomeBlock.value = true }) @@ -519,6 +520,10 @@ const cloudFolderDisplay = computed(() => cloudFolderCount.value !== null ? Stri onMounted(async () => { try { const usage = await fileBrowserClient.getUsage(); cloudStorageUsed.value = usage.totalSize; cloudFolderCount.value = usage.folderCount } catch { /* not running */ } loadSystemStats(); systemStatsInterval = setInterval(loadSystemStats, 10000); checkUpdateStatus(); loadWeb5Status() + // Poll wallet balances/transactions like Web5.vue does — without this a + // pending on-chain receive (or a fresh instant payment) only shows up + // after a manual wallet action or a remount. + walletRefreshInterval = setInterval(loadWeb5Status, 30000) }) // Wallet modals @@ -594,6 +599,7 @@ const systemStats = computed(() => ({ const systemUptimeDisplay = computed(() => { if (homeStatus.stats.uptimeSecs === 0) return t('home.systemMonitoring'); const days = Math.floor(homeStatus.stats.uptimeSecs / 86400); const hours = Math.floor((homeStatus.stats.uptimeSecs % 86400) / 3600); if (days > 0) return `Uptime: ${days}d ${hours}h`; const mins = Math.floor((homeStatus.stats.uptimeSecs % 3600) / 60); return `Uptime: ${hours}h ${mins}m` }) let systemStatsInterval: ReturnType | null = null +let walletRefreshInterval: ReturnType | null = null async function loadSystemStats() { await homeStatus.refresh(packages.value) diff --git a/neode-ui/src/views/home/HomeWalletCard.vue b/neode-ui/src/views/home/HomeWalletCard.vue index f2b6bd4c..c9c37fbf 100644 --- a/neode-ui/src/views/home/HomeWalletCard.vue +++ b/neode-ui/src/views/home/HomeWalletCard.vue @@ -67,15 +67,16 @@
- +
@@ -83,18 +84,25 @@
+{{ tx.amount_sats.toLocaleString() }} sats {{ tx.num_confirmations === 0 ? 'Unconfirmed' : tx.num_confirmations + ' conf' }} + + {{ railBadge(tx) }} +

{{ tx.tx_hash }}

{{ formatTxTime(tx.time_stamp) }} - +
@@ -181,7 +189,7 @@