* validator-api: create node status cache with selection probabilies
Create a node status cache to complement the contract cache. Initially
we store the simulated active set selection probabilities.
* validator-api: add validator cache watch channel
* changelog: add note
* validator-api: clippy fixes
* validator-api: fix clippy
* validator-api: additional fields to inclusion probabilities response
* selection chance: revert back to 3 buckets
* selection chance: revert buckets again
* rustfmt
* validator-api: remove the old get_mixnode_inclusion_probability
* node-status-cache: return error when refreshing
* inclusion-simulator: cap on wall clock time
* node status cache: tidy
* feat(wallet-bonding): bonding page, new bond form wip
* feat(wallet-bonding): add node table component
feat(wallet-bonding): new dialog component
* feat(wallet-bonding): node settings flow
* feat(wallet-bonding): bond more flow (done)
* feat(wallet): use confirmation modal component
* feat(wallet-bonding): node menu ui
* refactor(wallet-bonding): bonding flow with new gasFee estimation
* feat(wallet-bonding): unbond with gasFee and request
* refactor(wallet-bonding): switch to simpledialog component to keep modals consistency
* feat(wallet-bonding): fetch mixnode status
* update coin types in new bonding page
* fix displayed denom
* rebuild BondedNodeCard using existing shared components
* create reuseable ActionMenu component
* new mixnode form
* add gateway bond form
* check balance and fetch fee on bond mixnode request
* node settings
* get node description
* fix up rust request
* lint fixes + used NodeTypeSelector component
* temporarily remove estimated operator reward
* update return on rust function
* dont display node name UI if name doesnt exist
* rebase develop
* fix uppercase address bug
Co-authored-by: Mark Sinclair <mmsinclair@gmail.com>
Co-authored-by: pierre <dommerc.pierre@gmail.com>