diff --git a/features/utxo-list-progressive-loading.md b/features/utxo-list-progressive-loading.md index cc95c4a..159ac09 100644 --- a/features/utxo-list-progressive-loading.md +++ b/features/utxo-list-progressive-loading.md @@ -43,7 +43,8 @@ Raccourcir le chargement de la page [Liste des UTXO](https://dashboard.certifica - Format 7 champs (nouveau) et 6 champs (ancien avec `address`) gérés par `parseUtxoLine`. - Catégories fichier : `bloc_rewards`, `ancrages`, `changes` (et `anchor`/`change`/`fee` si présents). Le parser accepte les deux formes pour ancrages/changes. - `actualiser` recharge depuis le fichier (même flux que le chargement initial). -- **Frais** : la section « Frais » reste vide en chargement fichier (données issues du RPC / OP_RETURN, non stockées dans `utxo_list.txt`). +- **Frais** : la section « Frais » reste vide en chargement fichier (données issues du RPC / OP_RETURN, non stockées dans `utxo_list.txt`). Message explicatif affiché : « Les frais ne sont pas disponibles en chargement fichier (source RPC uniquement). » +- **Changes** : colonnes « Type » et « Date » supprimées (Date souvent vide depuis le fichier). ## Modalités de déploiement diff --git a/signet-dashboard/public/utxo-list.html b/signet-dashboard/public/utxo-list.html index 8f3aadb..263c24b 100644 --- a/signet-dashboard/public/utxo-list.html +++ b/signet-dashboard/public/utxo-list.html @@ -469,14 +469,11 @@ Statut `; } else { - // Pour la section changes, ajouter une colonne pour indiquer si c'est un change d'ancrage if (categoryName === 'changes') { tableHTML += ` Montant (🛡)${getSortArrow('amount', state.sortColumn, state.sortDirection)} Montant (✅)${getSortArrow('amount', state.sortColumn, state.sortDirection)} - Date Confirmé${getSortArrow('confirmed', state.sortColumn, state.sortDirection)} - Type Statut `; } else { @@ -527,25 +524,19 @@ } else { tableHTML += `${amountBTC.toLocaleString('fr-FR')} 🛡`; tableHTML += `${amountSats.toLocaleString('fr-FR')} ✅`; - // Date pour les changes - if (utxo.blockTime) { - const date = new Date(utxo.blockTime * 1000); - tableHTML += `${date.toLocaleString('fr-FR', { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit' })}`; - } else { - tableHTML += '-'; + if (categoryName !== 'changes') { + if (utxo.blockTime) { + const date = new Date(utxo.blockTime * 1000); + tableHTML += `${date.toLocaleString('fr-FR', { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit' })}`; + } else { + tableHTML += '-'; + } } } - // Colonne Confirmé : coche si confirmé, sinon vide const isConfirmed = (utxo.confirmations || 0) > 0; tableHTML += `${isConfirmed ? '✓' : ''}`; - // Colonne Type (uniquement pour les changes) - if (categoryName === 'changes') { - const changeType = utxo.isAnchorChange ? '🔗 Transaction d\'ancrage' : '🔄 Transaction normale'; - tableHTML += `${changeType}`; - } - // Colonne Statut (— si source fichier, pas de RPC) let statusText = ''; let statusClass = ''; @@ -793,6 +784,9 @@ function renderFeesTable(fees, categoryName, categoryLabel) { if (fees.length === 0) { + const emptyReason = utxosFromFile + ? 'Les frais ne sont pas disponibles en chargement fichier (source RPC uniquement).' + : 'Aucune transaction avec frais onchain enregistrée.'; return `
@@ -802,7 +796,7 @@ Total des frais : 0 ✅
-
Aucune transaction avec frais onchain enregistrée.
+
${emptyReason}
`; }