Whenever an `Announcement` is parsed as transparent transaction info, we obtain
information about the UTXOs involved in that transaction. It would be nice to
display this information when we look up the UTXO, but there is no way to query
it from neptune-core.
This commit caches that information in order to display it.
Specifically, it extends `AppState` with a (smart pointer to) vector of
`TransparentUtxoInfo` (a new type). The vector, or its existing entries, are
extended with new information when it becomes available.
At this point the vector is rather silly because it is not persisted, and the
app reboots more often than not, resulting in a clear cache. A future commit
will persist this data.
Closes#5
Addresses #6
changes:
* field Mining Reward --> Coinbase. (actual reward)
* add field Expected Coinbase (expected/calced reward)
this field only displays if different from actual coinbase.
* add field Cumulative Proof-of-Work
* change tooltip 🛈 --> ⓘ . for mobile devices. (hopefully)
* css: make tooltip text bold, so the ⓘ is stronger.
Changes:
+ present not-found page for unhandled uri paths, eg /stuff
+ display the tip-height on front page
+ add favicon and neptune logo to front page
+ use ServerDir instead of ServeFile for /image and /css
+ add help tooltips for fields on front page
+ use monospace font for digests
Changes:
1. integrates pico minimal responsive css framework for light/dark
themes and overall better looks.
2. adds a not-found page for bad url queries.
3. catches axum/serde deserialization errors of user input and routes
them to the not-found page with a helpful hint (parse error msg)