PTxInfo
The modifications in PTxInfo
from V1 version are highlighted.
It is the first field of the PScriptContext
structure.
It includes all the information regarding the transaction in which the script is included.
definition:
export const PTxInfo = pstruct({
PTxInfo: {
inputs: list( PTxInInfo.type ),
refInputs: list( PTxInInfo.type ),
outputs: list( PTxOut.type ),
fee: PValue.type,
mint: PValue.type,
dCertificates: list( PDCert.type ),
withdrawals: list( pair( PStakingCredential.type, int ) ),
interval: PPOSIXTimeRange.type,
signatories: list( PPubKeyHash.type ),
redeemers: list( pair( PScriptPurpose.type, data ) ),
datums: list( pair( PDatumHash.type, data ) ),
id: PTxId.type
}
})
Values implements all the properties defined on the TermList
utility term.
inputs
List of transaction inputs. Each input representing an unspent transaction output (UTXO) consumed by the current transaction.
type: list( PTxInInfo.type )
elements's type: PTxInInfo
refInputs
Reference inputs of the transaction. These UTXOs are referenced but not consumed by the transaction. This additional context/information maybe necessary for the contract logic but do not directly affect the transaction's output.
type: list( PTxInInfo.type )
elements's type: PTxInInfo
outputs
List of transaction outputs. Each output represents a new UTXO created by the transaction.
type: list( PTxOut.type )
elements's type: PTxOut
fee
Transaction fee paid for processing the transaction. Despite being only a value it always includes a single entry which represents the lovelaces paid as fees.
type: PValue.type
mint
Includes all tokens minted/burned in the transaction.
type: PValue.type
Being a value directly constructed by the node it always includes an entry for lovelaces
Since lovelaces can't be minted/burned the quantity will always be 0
dCertificates
List of delegation certificates included in the transaction.
type: list( PDCert.type )
elements's type: PDCert
withdrawals
A list of withdrawals from staking rewards. Each entry consists of a staking credential and the amount withdrawn.
type: list( pair( PStakingCredential.type, int ) )
elements's types:
interval
Time interval during which the transaction is valid.
type: PPOSIXTimeRange.type
signatories
A list of public key hashes of the parties that have signed the transaction to validate it.
type: list( PPubKeyHash.type )
elements's type: PPubKeyHash
redeemers
List of redeemers associated with the transaction, to understand how they are supposed to handle the transaction inputs and outputs.
type: list( pair( PScriptPurpose.type, data ) )
elements's types:
TermPair
PScriptPurpose
data
datums
A list of datums associated with the transaction. Each datum consists of a datum hash and the actual data, providing additional context or information for the transaction
type: list( pair( PDatumHash.type, data ) )
elements's types:
TermPair
PDatumHash
data
id
The unique identifier of the transaction, used to reference and track the specific transaction on the blockchain.
type: PTxId.type