forked from cerc-io/plugeth
graphql: add transaction signature values (#20623)
The feature update allows the GraphQL API endpoint to retrieve transaction signature R,S,V parameters. Co-authored-by: amitshah <amitshah0t7@gmail.com> Co-authored-by: Felix Lange <fjl@twurst.com>
This commit is contained in:
parent
675f4e75b8
commit
34bb132b10
@ -314,6 +314,33 @@ func (t *Transaction) Logs(ctx context.Context) (*[]*Log, error) {
|
|||||||
return &ret, nil
|
return &ret, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (t *Transaction) R(ctx context.Context) (hexutil.Big, error) {
|
||||||
|
tx, err := t.resolve(ctx)
|
||||||
|
if err != nil || tx == nil {
|
||||||
|
return hexutil.Big{}, err
|
||||||
|
}
|
||||||
|
_, r, _ := tx.RawSignatureValues()
|
||||||
|
return hexutil.Big(*r), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *Transaction) S(ctx context.Context) (hexutil.Big, error) {
|
||||||
|
tx, err := t.resolve(ctx)
|
||||||
|
if err != nil || tx == nil {
|
||||||
|
return hexutil.Big{}, err
|
||||||
|
}
|
||||||
|
_, _, s := tx.RawSignatureValues()
|
||||||
|
return hexutil.Big(*s), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *Transaction) V(ctx context.Context) (hexutil.Big, error) {
|
||||||
|
tx, err := t.resolve(ctx)
|
||||||
|
if err != nil || tx == nil {
|
||||||
|
return hexutil.Big{}, err
|
||||||
|
}
|
||||||
|
v, _, _ := tx.RawSignatureValues()
|
||||||
|
return hexutil.Big(*v), nil
|
||||||
|
}
|
||||||
|
|
||||||
type BlockType int
|
type BlockType int
|
||||||
|
|
||||||
// Block represents an Ethereum block.
|
// Block represents an Ethereum block.
|
||||||
|
@ -115,6 +115,9 @@ const schema string = `
|
|||||||
# Logs is a list of log entries emitted by this transaction. If the
|
# Logs is a list of log entries emitted by this transaction. If the
|
||||||
# transaction has not yet been mined, this field will be null.
|
# transaction has not yet been mined, this field will be null.
|
||||||
logs: [Log!]
|
logs: [Log!]
|
||||||
|
r: BigInt!
|
||||||
|
s: BigInt!
|
||||||
|
v: BigInt!
|
||||||
}
|
}
|
||||||
|
|
||||||
# BlockFilterCriteria encapsulates log filter criteria for a filter applied
|
# BlockFilterCriteria encapsulates log filter criteria for a filter applied
|
||||||
|
Loading…
Reference in New Issue
Block a user