Commit Graph

42 Commits

Author SHA1 Message Date
Maciej Hirsz a3b6f6a5a1 Rust backend (#185) 2019-11-07 10:52:38 +01:00
Michael Müller 98175772e4 Process GRANDPA authority id (#179)
* Remove pubkey
* Remove superfluous whitespace
* Assign GRANDPA authority id as address
2019-09-19 10:32:04 +02:00
Maciej Hirsz d297202b7e feat: Pin Kusama (#171) 2019-08-26 18:21:02 +02:00
Maciej Hirsz 983919fd87 feat: Instead of delisting, push stale nodes to bottom (#161) 2019-07-02 14:52:06 +02:00
Maciej Hirsz 9730c730f3 Add chains overlay (#157)
* feat: Adding a show-all-chains button
* feat: Show all-chains overlay selector
2019-07-01 17:45:38 +02:00
Maciej Hirsz 5c1f3272c2 feat: pin Alexander as start of telemetry (#156) 2019-06-26 18:20:21 +02:00
Michael Müller ce9538485a Handle too many validators properly (#151)
* Revert debug flag
* Remove dead code
* Disallow subscribing if too many validators
2019-05-28 10:24:41 +02:00
Michael Müller 7add77137a Grandpa visualization optimizations + improvements (#150)
* Prefix CSS rules properly
* Fix Jdenticon placeholder
* Implement shouldComponentUpdate()
* Force casting of block numbers in backend
* Ensure array is properly sorted
* Fix backfilling and hold only limited blocks in memory
* Use proper ellipsis
* Display note if no grandpa data available yet
* Apply flexing only when two blocks are displayed
* Display consensus icons above all other elements
* Type authoritySetId properly
* Display loading screen only when necessary
* Only measure when necessary
* Reset state on tab change
* Remove tooltips and add keys
* fix: Remove some `any` types, fix list view CSS
* Fix updateState type
* Add keys to more elements
* Limit number of authorities for which vis works
2019-05-27 17:08:21 +02:00
Michael Müller 5d82253257 Display state of Grandpa (#134)
* Make it clear that settings apply only to list view

Since the consensus view will be added users could
mistake the settings as being applied there as well.

* Add Jdenticon

* Add Grandpa consensus visualisation

* Remove fade-in animation

* Update packages and yarn.lock

* Broadcast only delta of what changed

* Minor code improvements

* Use NodeId instead of Address in first dimension

By using the NodeId instead of the Address in the first
dimension of the consensus matrice we save quite some
space in the payload which is sent to the browser.

The commit also contains some minor refactoring.

* Refactoring and improving naming

* Display boxes only after size has been detected

This look a bit nicer, otherwise the UI will still adapt
the box sizes once everything has already been loaded up.

* Fix cache

* Send consensus info on first subscribe

So that frontend can immediately display the current state
and doesn't have to aggregate first.

* Increase cache size

* Send deltas only if block in cache

Otherwise the UI will update old blocks which
are still visible to an empty shell.

* Adjust cache size

* Make cache sizes dependent

* Ensure authority caches are aligned

If only one authority has already submitted consensus info
for a new block then the cache of that one is offset by one
from all other authorities.

* Handle restarts on authority set changes properly

* Fix backfill mechanism

* Extract function

* Display only blocks since last authority set change

* Handle authority set sent on connect

When nodes lose their connection to telemetry
or connect on first time they sent their current
authority set for the UI to have something to
display.

These sets don't contain an explicit block number,
because the set didn't change -- it just got resent.
In this case the set is `undefined`.

* Introduce Authority type

This is necessary to cover the case where one
node connects, submits its authority set containing
another node which has not yet connected to Telemetry.

In this case we still want to create a shell object
and fill it with the address.

* Handle corner case

In the case of only one block having been produced, two authorities,
and only one authority connected, the UI did not show up.

* Display placeholder if name not yet available

* Replace with camelCase

* Replace with correct types

* Replace grandpa icon

* Change consensus icon to cube (finalized block icon)

* Upgrade dependencies

* Implement thin backend instead of thick

* Cleanup and minor improvements

* Minor refactoring

* Extract common code into function

* Switch module to class

* Remove unused code

* Clean markup

* Remove unused code

* Revert "Upgrade dependencies"

This reverts commit bf4d9ea48b3417860ccf40f0c5122027ffc59689.

* Update polkadot-identicon in frontend

Change version number to `^1.1.45` and run
`npm update polkadot-identicon`.

* Run yarn install

* Update react-measure to 2.3.0

Changed version number, ran

	cd packages/frontend/ && npm update react-reasure &&
	cd ../../ && yarn install

* Improve typing by introducing partial type

* Reduce indexing operations

* Shorten function

* Shorten function

* Introduce initialiseConsensusViewByRef

* Remove dead conditional branch

* Return consensusView ref from initialiseConsensusView

*  Handle consensusView ref returned from initialiseConsensusView
2019-05-20 13:20:40 +02:00
Maciej Hirsz dc71df7911 Add finalized block info (#104) 2019-02-01 15:53:05 +01:00
Maciej Hirsz abe2ff5057 Fix sorting (#77) 2018-10-08 14:14:21 +02:00
Maciej Hirsz d299e2103a Render individual node changes on demand (#76) 2018-10-05 18:21:43 +02:00
YJ 8e16f7c129 Unit testing Connections.ts (#66)
* Jest, Enzyme test env setup

* unit tests for telemetry state update logic

* remove sinon, superfluous scripts

* Remove console log
2018-10-05 09:14:53 +02:00
Maciej Hirsz 717c5a3ac9 Only update hardware stats when necessary (#73) 2018-10-01 14:10:54 +02:00
Maciej Hirsz dd379676fd Clear nodes on re-subbing (#69) 2018-09-30 09:43:03 +02:00
Maciej Hirsz 8b7c620e2e Clean nodes on reconnect (#68) 2018-09-30 08:52:37 +02:00
Maciej Hirsz f9078c6979 Sparklines (#65) 2018-09-28 13:47:39 +02:00
Maciej Hirsz 250e0db51e Set location.hash to current chain (#63) 2018-09-27 22:26:47 +02:00
Maciej Hirsz c4bfc47c8a Fix chains merging (#62) 2018-09-27 21:49:00 +02:00
Maciej Hirsz bc9d47d358 Demystify Node state (#61) 2018-09-27 21:30:51 +02:00
Maciej Hirsz 62d2847bb0 Don't sort the list on every render (#58) 2018-09-27 17:01:51 +02:00
Maciej Hirsz e0012099c0 Pin using names (#49 again) (#51) 2018-09-24 21:53:16 +02:00
Maciej Hirsz 1559b82eb0 Allow to pin nodes to top of the list (#48)
* Refactored persistent state a bit
* Allow nodes to be pinned to top
2018-09-24 17:30:39 +02:00
maciejhirsz aadc4fc5bb Fix reconnecting 2018-07-26 13:53:21 +02:00
maciejhirsz 0945d7b4d6 Fixing the zombie UI state 2018-07-25 18:41:58 +02:00
maciejhirsz a909400678 Add ping to the client, reconnect on dead connections 2018-07-25 17:49:53 +02:00
maciejhirsz c12374209d Revert changes that should be on local only 2018-07-21 08:31:25 +02:00
maciejhirsz 42e7010697 Update block immediately after adding a node to the chain 2018-07-21 08:30:06 +02:00
maciejhirsz a6df9dc8e6 Show synced nodes above non-synced nodes 2018-07-19 13:00:30 +02:00
maciejhirsz 5c1480f9f5 Display location on map node details 2018-07-18 16:59:47 +02:00
maciejhirsz 38435ba2ff Fix network selection 2018-07-18 15:31:54 +02:00
maciejhirsz 7b57cb99dd Prepare for HTTPS 2018-07-18 13:06:25 +02:00
maciejhirsz f4a4f1091a Tweak map, remove legacy version msg 2018-07-17 17:03:06 +02:00
maciejhirsz efff299113 Map toggle, fix selecting chain 2018-07-16 16:39:18 +02:00
maciejhirsz 43a87deb9c Add hidden map 2018-07-15 22:50:41 +02:00
maciejhirsz 071c26ef51 Minor tweaks to time displays 2018-07-15 10:48:16 +02:00
maciejhirsz 2c073eac19 Working on map view 2018-07-14 22:56:20 +02:00
maciejhirsz 2d14c27d9e Resubscribe on reconnect 2018-07-14 15:52:53 +02:00
maciejhirsz 5c8a159588 Revert... 2018-07-13 23:42:00 +02:00
maciejhirsz 0a1ddeb11e Mark connection as online on open socket 2018-07-13 23:38:54 +02:00
maciejhirsz ef3f52f5c8 Offline indicator, average block time and stuff 2018-07-13 23:20:29 +02:00
maciejhirsz ea8d7ad77d Sort chains by node count 2018-07-12 16:04:04 +02:00