Skip to content
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

Transaction Information Page Enhancements #478

Open
picarodias opened this issue Feb 16, 2022 · 0 comments
Open

Transaction Information Page Enhancements #478

picarodias opened this issue Feb 16, 2022 · 0 comments
Assignees
Labels

Comments

@picarodias
Copy link

picarodias commented Feb 16, 2022

This epic will cover adjustments to the Transaction Information Page, to align the data presented with the transaction interface of NWM.

Designs

Transaction Information Screen

Technical Notes

  • Current Transaction Information Page
  • Endpoints being used:
  • It seems like Invocations are not returned by neither of those endpoints. Joe mentioned we could only fetch the Entry Invocation, but I'm not sure if there's a different endpoint for that.
    • Maybe we're supposed to read the invocation from the disassembled Invocation script?
    • I'll leave the Invocations Section blocked for now.

Requirements

Transfer events

Existing Section

  • Fix Address link style.
    • Address links must be pink.

Details

Existing Section
Add new blocks of information.

  • label: TRIGGER

    • possible values:
      • Application
      • OnPersist
      • PostPersist
      • Verification
      • System
      • All
  • label: VM STATE

    • possible values (Colorcoded):
      • HALT (Green)
      • FAULT (Red)

If VM STATE equals FAULT, the panel expands to show:

  • label: EXCEPTION
    • text: Error returned by the exception.
    • button: Copy
      • On Click: Copies error message to the clipboard

Signatures

Pending Design
Replaces the existing Signers section

  • section title: Signatures

For each address signing the transaction:

  • address: signer's address
  • text: Signature Scope for that address
    • possible values:
      • None
      • Call by Entry
      • Global
      • Custom Contracts
      • Custom Groups
    • For Custom Contracts and Custom Groups, component is expandable:
      • List of allowed Contracts or Groups

Note: we might or not add labels to Address and Signature Scope, depending on design decisions.

Invocations

Pending backend source confirmation

New Section
Same interface for Invocations.

  • section title: Notifications

For each Notification (expandable, starts closed):

  • text: Contract Name
  • label: HASH
    • hash: Contract Hash
    • button: Copy
      • On Click: Copies Hash to the Clipboard
  • text: Method Name
  • for each Parameter in the Invocation:
    • number: Parameter Index
    • text: Parameter Name
    • label: Parameter Type
    • dropdown: Toggle Type
    • text: Parameter Value
    • button: Copy
      • On Click: Copies Parameter Value to the clipboard

If Parameter is an Array:

  • Render items in the array as nested parameters.
    • Check design.
  • For nested parameters, don't render
    • Parameter Name
    • Parameter Type
  • If any item in the Array is another Array, just render it's content as a string.

Notifications

New Section, replaces current Notifications
We're gathering the existing single notifications into a unified blocked section. Same interface for Invocations.

  • section title: Notifications

For each Notification (expandable, starts closed):

  • text: Contract Name
  • label: HASH
    • hash: Contract Hash
    • button: Copy
      • On Click: Copies Hash to the Clipboard
  • text: Method Name
  • for each Parameter in the Notification:
    • number: Parameter Index
    • text: Parameter Name
    • label: Parameter Type
    • dropdown: Toggle Type
    • text: Parameter Value
    • button: Copy
      • On Click: Copies Parameter Value to the clipboard

If Parameter is an Array:

  • Render items in the array as nested parameters.
  • For nested parameters, don't render
    • Parameter Name
    • Parameter Type
  • If any item in the Array is another Array, just render it's content as a string.

Raw Script

Existing Section

  • Move it to the end of the page
  • Add Copy button:
    • On Click: Copies Raw Script to the Clipboard

Disassembled Script

  • Move it to the end of the page
  • Add Copy button:
    • On Click: Copies Raw Script to the Clipboard
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant