Skip to content

Rework mempool page #982

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Feb 11, 2019
Merged

Rework mempool page #982

merged 5 commits into from
Feb 11, 2019

Conversation

buck54321
Copy link
Member

Adjustments to the mempool page layout. Compare with current master and this mockup from #451.

image

image

Incorporates client-side mempool from #961 for live updates.

Moves likelyMineable totals and counts to their own explorer type. Creates a mempoolDump template to pass mempool stats to stimulus via data attributes.

WIP until at least the following are approved/discussed.

  1. Vote table columns. More or less? Compare to mockup. We also have the vote icons now that might come in handy. Tables get a little tight at low screen width. With the current set of columns, I needed to set the vote table to allow scrolling at the smallest widths.

  2. I have left the entire hash in place, though that has some unfortunate consequences at smaller widths.

  3. This PR removes "HODL" watermark. I think its an improvement. Other might not.

  4. I did not use the blue color from the mockup for sections headers, as that color already designates links. Should we use it anyway, or a different color, or leave them.

@ghost
Copy link

ghost commented Feb 4, 2019

Nice! What other sites need fixing? Also the mobile version is prettyt broken.

@buck54321
Copy link
Member Author

buck54321 commented Feb 4, 2019

@lte13 The /block and /tx pages will need similar work done. You could look at #451 to see where things are headed.

Also the mobile version is prettyt broken.

Are you talking about this PR in particular? Screenshots and suggestions are certainly appreciated.

@chappjc
Copy link
Member

chappjc commented Feb 4, 2019

The "HODL" watermark can certainly go. It was a gag that was so subtle it didn't really bug anyone. But still, it was a gag that ran it's course. :)

Some ideas for the votes table on mobile:

  • The Voting On and Best Block can perhaps be merged. It could stay called Voting On, but if it's the best block it could be like "312343 (best)".
  • Perhaps Validator ID could be removed. On mobile I'd argue that's fine.
  • Since width is so limited, both Total DCR and Time in Mempool could go on mobile too.

@buck54321
Copy link
Member Author

Rebased and tweaked vote table for mobile view.

image

@buck54321
Copy link
Member Author

@chappjc I just saw that you were thinking of hiding "Total DCR", and I hid the "Size" column instead. I left "Validator ID" because it might help explain why there are more than 5 votes on the best block, which is common (different agenda choices from different VSP).

@buck54321 buck54321 changed the title [WIP] Rework mempool page Rework mempool page Feb 6, 2019
@buck54321
Copy link
Member Author

Switched hidden mobile votes table column from Size to Total DCR. Removed WIP.

@chappjc
Copy link
Member

chappjc commented Feb 6, 2019

Thanks. Size is strangely useful because it gives you a hint if it is a regular solo, pool, or weird split ticket being spent.

@gozart1
Copy link
Member

gozart1 commented Feb 7, 2019

Using the "https://getbootstrap.com/docs/4.2/content/tables/#responsive-tables" utility class will make the table horizontally scrollable when screen real estate is tight. Not ideal, but probably the least bad solution. Best to scope it to the breakpoint where its actually needed.

Adjustments to the mempool page layout. See decred#451. Incorporates
client-side mempool from decred#961 for live updates.

Moves `likelyMineable` totals and counts to their own explorer
type. Creates a `mempoolDump` template to pass mempool stats
to stimulus via data attributes.
Hides size and time columns on the votes table at < 576 px
screen widths. A couple other column headers are abbreviated and
given a tooltip at the same breakpoint. Better dark mode bg color
for the transaction details panel. Dropped 'Best Block' boolean
column, instead just adding indicating the best block in the
'Voting On' column.

Fixes the exchange rate info on the homepage, which was not quite
adjusted to the new layout.
@buck54321
Copy link
Member Author

I did use table-responsive-md back in a15cfa4, and there was some discussion above of what columns might be able to be sacrificed to avoid scrolling altogether. Right now, it works down to 375px without a need for scrolling, but with the loss of a couple pieces of data, so it's definitely a trade-off.

I don't have a strong opinion either way.

Prepared CSS for wider application. Eliminated mempool.scss.
Copy link
Member

@chappjc chappjc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, except the nitpick about (best)

@gozart1 gozart1 merged commit a009a10 into decred:master Feb 11, 2019
buck54321 added a commit to buck54321/dcrdata that referenced this pull request Feb 18, 2019
Restyles /block page. Compare to prototype from decred#451.

Comparisons with prototype: Instead of the coinbase reward field,
which is listed below, I've included the size field on the left,
and added the fees field on the details pane. I've removed the
"Block Details" header and stole the description for the right pane,
as "Block Hashes" was not very accurate. This left the page a little
out of sync with the recently worked mempool page, so I'm certainly
open to adding it back if we can find the right description. Where
the prototype had a single table in which the transaction type was
selectable, the separate tables are left here and the table style
from decred#982 has been applied. This keeps everything no-js friendly.

Adds a couple of methods for custom time display to
`explorertypes.TimeDef`. The types are not mirrored in
`dbtypes.TimeDef`.

Tweaks the way live confirmation messaages are calculated so that
each `newblock.confirmations` controller target can have a custom
text.
buck54321 added a commit to buck54321/dcrdata that referenced this pull request Feb 18, 2019
Restyles /block page. Compare to prototype from decred#451.

Comparisons with prototype: Instead of the coinbase reward field,
which is listed below, I've included the size field on the left,
and added the fees field on the details pane. I've removed the
"Block Details" header and stole the description for the right pane,
as "Block Hashes" was not very accurate. This left the page a little
out of sync with the recently worked mempool page, so I'm certainly
open to adding it back if we can find the right description. Where
the prototype had a single table in which the transaction type was
selectable, the separate tables are left here and the table style
from decred#982 has been applied. This keeps everything no-js friendly.

Adds a couple of methods for custom time display to
`explorertypes.TimeDef`. The types are not mirrored in
`dbtypes.TimeDef`.

Tweaks the way live confirmation messaages are calculated so that
each `newblock.confirmations` controller target can have a custom
text.
buck54321 added a commit to buck54321/dcrdata that referenced this pull request Feb 18, 2019
Restyles /block page. Compare to prototype from decred#451.

Comparisons with prototype: Instead of the coinbase reward field,
which is listed below, I've included the size field on the left,
and added the fees field on the details pane. I've removed the
"Block Details" header and stole the description for the right pane,
as "Block Hashes" was not very accurate. This left the page a little
out of sync with the recently worked mempool page, so I'm certainly
open to adding it back if we can find the right description. Where
the prototype had a single table in which the transaction type was
selectable, the separate tables are left here and the table style
from decred#982 has been applied. This keeps everything no-js friendly.

Adds a couple of methods for custom time display to
`explorertypes.TimeDef`. The types are not mirrored in
`dbtypes.TimeDef`.

Tweaks the way live confirmation messaages are calculated so that
each `newblock.confirmations` controller target can have a custom
text.
@buck54321 buck54321 mentioned this pull request Feb 18, 2019
buck54321 added a commit to buck54321/dcrdata that referenced this pull request Feb 20, 2019
Restyles /block page. Compare to prototype from decred#451.

Comparisons with prototype: Instead of the coinbase reward field,
which is listed below, I've included the size field on the left,
and added the fees field on the details pane. I've removed the
"Block Details" header and stole the description for the right pane,
as "Block Hashes" was not very accurate. This left the page a little
out of sync with the recently worked mempool page, so I'm certainly
open to adding it back if we can find the right description. Where
the prototype had a single table in which the transaction type was
selectable, the separate tables are left here and the table style
from decred#982 has been applied. This keeps everything no-js friendly.

Adds a couple of methods for custom time display to
`explorertypes.TimeDef`. The types are not mirrored in
`dbtypes.TimeDef`.

Tweaks the way live confirmation messaages are calculated so that
each `newblock.confirmations` controller target can have a custom
text.
chappjc pushed a commit that referenced this pull request Feb 22, 2019
This restyles /block page.

Comparisons with prototype: Instead of the coinbase reward field,
which is listed below, I've included the size field on the left,
and added the fees field on the details pane. I've removed the
"Block Details" header and stole the description for the right pane,
as "Block Hashes" was not very accurate. This left the page a little
out of sync with the recently worked mempool page, so I'm certainly
open to adding it back if we can find the right description. Where
the prototype had a single table in which the transaction type was
selectable, the separate tables are left here and the table style
from #982 has been applied. This keeps everything no-js friendly.

Adds a couple of methods for custom time display to
`explorertypes.TimeDef`. The types are not mirrored in
`dbtypes.TimeDef`.

Tweaks the way live confirmation messages are calculated so that
each `newblock.confirmations` controller target can have a custom
text.

* tweak hash box. reorder table. fix and filter rate conversion

The hash box is lightened and a little vertical padding is added.

A couple of issues in the DCR->USD conversion are addressed. Now,
it will only show the conversion for blocks within that last hour,
since older figure should be converted using historical data.

* adjust padding. truncate less on count labels. simplify block hash

* lower line height where text wraps
@chappjc chappjc added this to the 4.1 milestone Mar 18, 2019
@chappjc chappjc modified the milestones: 4.1, 4.0 Mar 26, 2019
mkingori pushed a commit to mkingori/dcrdata that referenced this pull request Apr 9, 2020
This restyles /block page.

Comparisons with prototype: Instead of the coinbase reward field,
which is listed below, I've included the size field on the left,
and added the fees field on the details pane. I've removed the
"Block Details" header and stole the description for the right pane,
as "Block Hashes" was not very accurate. This left the page a little
out of sync with the recently worked mempool page, so I'm certainly
open to adding it back if we can find the right description. Where
the prototype had a single table in which the transaction type was
selectable, the separate tables are left here and the table style
from decred#982 has been applied. This keeps everything no-js friendly.

Adds a couple of methods for custom time display to
`explorertypes.TimeDef`. The types are not mirrored in
`dbtypes.TimeDef`.

Tweaks the way live confirmation messages are calculated so that
each `newblock.confirmations` controller target can have a custom
text.

* tweak hash box. reorder table. fix and filter rate conversion

The hash box is lightened and a little vertical padding is added.

A couple of issues in the DCR->USD conversion are addressed. Now,
it will only show the conversion for blocks within that last hour,
since older figure should be converted using historical data.

* adjust padding. truncate less on count labels. simplify block hash

* lower line height where text wraps
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants