Skip to content

Commit

Permalink
feat: protocol v0.1.0 support (#47)
Browse files Browse the repository at this point in the history
  • Loading branch information
markuslevonyak authored Sep 18, 2024
1 parent 6c099da commit 5e25bb3
Show file tree
Hide file tree
Showing 49 changed files with 152 additions and 28 deletions.
2 changes: 1 addition & 1 deletion pantos/common/blockchains/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -419,7 +419,7 @@ class VersionedContractAbi:
contract_abi : ContractAbi
Supported contract ABI.
version : semantic_version.Version
The semantic version of the contract ABI.
The version of the Pantos protocol.
"""
contract_abi: ContractAbi
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[{"type":"function","name":"getMajorProtocolVersion","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"getMinimumValidatorNodeSignatures","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPantosHub","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getPantosToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getValidatorNodes","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"isValidSenderNonce","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"nonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidValidatorNodeNonce","inputs":[{"name":"nonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"verifyAndForwardTransfer","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferRequest","components":[{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bool","internalType":"bool"},{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"verifyAndForwardTransferFrom","inputs":[{"name":"sourceBlockchainFactor","type":"uint256","internalType":"uint256"},{"name":"destinationBlockchainFactor","type":"uint256","internalType":"uint256"},{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferFromRequest","components":[{"name":"destinationBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"string","internalType":"string"},{"name":"sourceToken","type":"address","internalType":"address"},{"name":"destinationToken","type":"string","internalType":"string"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bool","internalType":"bool"},{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"verifyAndForwardTransferTo","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferToRequest","components":[{"name":"sourceBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sourceTransferId","type":"uint256","internalType":"uint256"},{"name":"sourceTransactionId","type":"string","internalType":"string"},{"name":"sender","type":"string","internalType":"string"},{"name":"recipient","type":"address","internalType":"address"},{"name":"sourceToken","type":"string","internalType":"string"},{"name":"destinationToken","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"}]},{"name":"signerAddresses","type":"address[]","internalType":"address[]"},{"name":"signatures","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"verifyTransfer","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferRequest","components":[{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"view"},{"type":"function","name":"verifyTransferFrom","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferFromRequest","components":[{"name":"destinationBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"string","internalType":"string"},{"name":"sourceToken","type":"address","internalType":"address"},{"name":"destinationToken","type":"string","internalType":"string"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"view"},{"type":"function","name":"verifyTransferTo","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferToRequest","components":[{"name":"sourceBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sourceTransferId","type":"uint256","internalType":"uint256"},{"name":"sourceTransactionId","type":"string","internalType":"string"},{"name":"sender","type":"string","internalType":"string"},{"name":"recipient","type":"address","internalType":"address"},{"name":"sourceToken","type":"string","internalType":"string"},{"name":"destinationToken","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"}]},{"name":"signerAddresses","type":"address[]","internalType":"address[]"},{"name":"signatures","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"view"},{"type":"event","name":"MinimumValidatorNodeSignaturesUpdated","inputs":[{"name":"minimumValidatorNodeSignatures","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PantosHubSet","inputs":[{"name":"pantosHub","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PantosTokenSet","inputs":[{"name":"pantosToken","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ValidatorNodeAdded","inputs":[{"name":"validatorNodeAddress","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ValidatorNodeRemoved","inputs":[{"name":"validatorNodeAddress","type":"address","indexed":false,"internalType":"address"}],"anonymous":false}]

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[{"type":"function","name":"getMajorProtocolVersion","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"getMinimumValidatorNodeSignatures","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPantosHub","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getPantosToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getValidatorNodes","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"isValidSenderNonce","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"nonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidValidatorNodeNonce","inputs":[{"name":"nonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"verifyAndForwardTransfer","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferRequest","components":[{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bool","internalType":"bool"},{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"verifyAndForwardTransferFrom","inputs":[{"name":"sourceBlockchainFactor","type":"uint256","internalType":"uint256"},{"name":"destinationBlockchainFactor","type":"uint256","internalType":"uint256"},{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferFromRequest","components":[{"name":"destinationBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"string","internalType":"string"},{"name":"sourceToken","type":"address","internalType":"address"},{"name":"destinationToken","type":"string","internalType":"string"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bool","internalType":"bool"},{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"verifyAndForwardTransferTo","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferToRequest","components":[{"name":"sourceBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sourceTransferId","type":"uint256","internalType":"uint256"},{"name":"sourceTransactionId","type":"string","internalType":"string"},{"name":"sender","type":"string","internalType":"string"},{"name":"recipient","type":"address","internalType":"address"},{"name":"sourceToken","type":"string","internalType":"string"},{"name":"destinationToken","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"}]},{"name":"signerAddresses","type":"address[]","internalType":"address[]"},{"name":"signatures","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"verifyTransfer","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferRequest","components":[{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"view"},{"type":"function","name":"verifyTransferFrom","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferFromRequest","components":[{"name":"destinationBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sender","type":"address","internalType":"address"},{"name":"recipient","type":"string","internalType":"string"},{"name":"sourceToken","type":"address","internalType":"address"},{"name":"destinationToken","type":"string","internalType":"string"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"serviceNode","type":"address","internalType":"address"},{"name":"fee","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"validUntil","type":"uint256","internalType":"uint256"}]},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"view"},{"type":"function","name":"verifyTransferTo","inputs":[{"name":"request","type":"tuple","internalType":"struct PantosTypes.TransferToRequest","components":[{"name":"sourceBlockchainId","type":"uint256","internalType":"uint256"},{"name":"sourceTransferId","type":"uint256","internalType":"uint256"},{"name":"sourceTransactionId","type":"string","internalType":"string"},{"name":"sender","type":"string","internalType":"string"},{"name":"recipient","type":"address","internalType":"address"},{"name":"sourceToken","type":"string","internalType":"string"},{"name":"destinationToken","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"nonce","type":"uint256","internalType":"uint256"}]},{"name":"signerAddresses","type":"address[]","internalType":"address[]"},{"name":"signatures","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"view"},{"type":"event","name":"MinimumValidatorNodeSignaturesUpdated","inputs":[{"name":"minimumValidatorNodeSignatures","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PantosHubSet","inputs":[{"name":"pantosHub","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PantosTokenSet","inputs":[{"name":"pantosToken","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ValidatorNodeAdded","inputs":[{"name":"validatorNodeAddress","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ValidatorNodeRemoved","inputs":[{"name":"validatorNodeAddress","type":"address","indexed":false,"internalType":"address"}],"anonymous":false}]

Large diffs are not rendered by default.

Loading

0 comments on commit 5e25bb3

Please sign in to comment.