cic-contracts/python-contract-interfaces/cic_contracts/base.py
lash 3d2b2fa612 Add CIC package
Add abi signature encoding list

Add cic package
2024-08-01 22:21:15 +01:00

24 lines
671 B
Python

# external imports
from chainlib.eth.tx import (
TxFactory,
TxFormat,
)
from chainlib.eth.contract import (
ABIContractEncoder,
ABIContractType,
)
class CICTxHelper(TxFactory):
def single_address_method(self, method, contract_address, sender_address, address, tx_format=TxFormat.JSONRPC):
enc = ABIContractEncoder()
enc.method(method)
enc.typ(ABIContractType.ADDRESS)
enc.address(address)
data = enc.get()
tx = self.template(sender_address, contract_address, use_nonce=True)
tx = self.set_code(tx, data)
tx = self.finalize(tx, tx_format)
return tx