From 9289363cc1e067986686350dc2a22e3d60e82c54 Mon Sep 17 00:00:00 2001 From: raphjaph Date: Sat, 16 Nov 2024 01:00:22 -0800 Subject: [PATCH 1/2] Show runestone on tx page --- src/subcommand/server.rs | 7 +++++++ src/templates/transaction.rs | 1 + 2 files changed, 8 insertions(+) diff --git a/src/subcommand/server.rs b/src/subcommand/server.rs index 6d661ce281..55db2632f5 100644 --- a/src/subcommand/server.rs +++ b/src/subcommand/server.rs @@ -1021,11 +1021,17 @@ impl Server { let inscription_count = index.inscription_count(txid)?; + let runestone = Runestone::decipher(&transaction).and_then(|artifact| match artifact { + Artifact::Runestone(runestone) => Some(runestone), + Artifact::Cenotaph(_) => None, + }); + Ok(if accept_json { Json(api::Transaction { chain: server_config.chain, etching: index.get_etching(txid)?, inscription_count, + runestone, transaction, txid, }) @@ -1035,6 +1041,7 @@ impl Server { chain: server_config.chain, etching: index.get_etching(txid)?, inscription_count, + runestone, transaction, txid, } diff --git a/src/templates/transaction.rs b/src/templates/transaction.rs index a353e8a7ba..a75c363b84 100644 --- a/src/templates/transaction.rs +++ b/src/templates/transaction.rs @@ -5,6 +5,7 @@ pub struct TransactionHtml { pub chain: Chain, pub etching: Option, pub inscription_count: u32, + pub runestone: Option, pub transaction: Transaction, pub txid: Txid, } From cbf49af572e3c72ca04fec8948fda553194158d3 Mon Sep 17 00:00:00 2001 From: raphjaph Date: Thu, 26 Dec 2024 23:05:09 +0100 Subject: [PATCH 2/2] Amend --- src/templates/transaction.rs | 1 + templates/transaction.html | 2 ++ tests/json_api.rs | 1 + 3 files changed, 4 insertions(+) diff --git a/src/templates/transaction.rs b/src/templates/transaction.rs index a75c363b84..ee7ec5d06c 100644 --- a/src/templates/transaction.rs +++ b/src/templates/transaction.rs @@ -49,6 +49,7 @@ mod tests { TransactionHtml { chain: Chain::Mainnet, etching: None, + runestone: None, inscription_count: 0, txid: transaction.compute_txid(), transaction, diff --git a/templates/transaction.html b/templates/transaction.html index aa183ec59a..cc15dfb4a9 100644 --- a/templates/transaction.html +++ b/templates/transaction.html @@ -12,6 +12,8 @@

Inscription Geneses

etching
{{ rune }}
%% } +%% if let Some(runestone) = &self.runestone { +%% }

{{"Input".tally(self.transaction.input.len())}}

    diff --git a/tests/json_api.rs b/tests/json_api.rs index 5606d7929b..baa67e6dcd 100644 --- a/tests/json_api.rs +++ b/tests/json_api.rs @@ -524,6 +524,7 @@ fn get_transaction() { serde_json::from_str::(&response.text().unwrap()).unwrap(), api::Transaction { chain: Chain::Mainnet, + runestone: None, etching: None, inscription_count: 0, transaction,