UNPKG

@axelar-network/interchain-token-service

Version:

Interchain token service for EVM chains to faciliate interchain token transfers and contract calls

248 lines (247 loc) 10.4 kB
{ "_format": "hh-sol-artifact-1", "contractName": "ERC20", "sourceName": "contracts/interchain-token/ERC20.sol", "abi": [ { "inputs": [], "name": "InvalidAccount", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x6080604052348015600f57600080fd5b506105288061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100f2578063a457c2d714610112578063a9059cbb14610125578063dd62ed3e1461013857600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100cc57806339509351146100df575b600080fd5b6100a061009b3660046103e1565b610163565b60405190151581526020015b60405180910390f35b6100be60025481565b6040519081526020016100ac565b6100a06100da36600461040b565b61017a565b6100a06100ed3660046103e1565b6101d1565b6100be610100366004610448565b60006020819052908152604090205481565b6100a06101203660046103e1565b610208565b6100a06101333660046103e1565b61023f565b6100be61014636600461046a565b600160209081526000928352604080842090915290825290205481565b600061017033848461024c565b5060015b92915050565b6001600160a01b038316600090815260016020908152604080832033845290915281205460001981146101bb576101bb85336101b686856104cc565b61024c565b6101c68585856102e9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104df565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104cc565b60006101703384846102e9565b6001600160a01b038316158061026957506001600160a01b038216155b1561028757604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316158061030657506001600160a01b038216155b1561032457604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383166000908152602081905260408120805483929061034c9084906104cc565b90915550506001600160a01b038216600090815260208190526040812080548392906103799084906104df565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516102dc91815260200190565b80356001600160a01b03811681146103dc57600080fd5b919050565b600080604083850312156103f457600080fd5b6103fd836103c5565b946020939093013593505050565b60008060006060848603121561042057600080fd5b610429846103c5565b9250610437602085016103c5565b929592945050506040919091013590565b60006020828403121561045a57600080fd5b610463826103c5565b9392505050565b6000806040838503121561047d57600080fd5b610486836103c5565b9150610494602084016103c5565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101745761017461049d565b808201808211156101745761017461049d56fea264697066735822122056ed9256cef87f996f3f8d631c60c7fb487d4caa9e7fc8531bf65f7119b257df64736f6c634300081b0033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100f2578063a457c2d714610112578063a9059cbb14610125578063dd62ed3e1461013857600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100cc57806339509351146100df575b600080fd5b6100a061009b3660046103e1565b610163565b60405190151581526020015b60405180910390f35b6100be60025481565b6040519081526020016100ac565b6100a06100da36600461040b565b61017a565b6100a06100ed3660046103e1565b6101d1565b6100be610100366004610448565b60006020819052908152604090205481565b6100a06101203660046103e1565b610208565b6100a06101333660046103e1565b61023f565b6100be61014636600461046a565b600160209081526000928352604080842090915290825290205481565b600061017033848461024c565b5060015b92915050565b6001600160a01b038316600090815260016020908152604080832033845290915281205460001981146101bb576101bb85336101b686856104cc565b61024c565b6101c68585856102e9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104df565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104cc565b60006101703384846102e9565b6001600160a01b038316158061026957506001600160a01b038216155b1561028757604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316158061030657506001600160a01b038216155b1561032457604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383166000908152602081905260408120805483929061034c9084906104cc565b90915550506001600160a01b038216600090815260208190526040812080548392906103799084906104df565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516102dc91815260200190565b80356001600160a01b03811681146103dc57600080fd5b919050565b600080604083850312156103f457600080fd5b6103fd836103c5565b946020939093013593505050565b60008060006060848603121561042057600080fd5b610429846103c5565b9250610437602085016103c5565b929592945050506040919091013590565b60006020828403121561045a57600080fd5b610463826103c5565b9392505050565b6000806040838503121561047d57600080fd5b610486836103c5565b9150610494602084016103c5565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101745761017461049d565b808201808211156101745761017461049d56fea264697066735822122056ed9256cef87f996f3f8d631c60c7fb487d4caa9e7fc8531bf65f7119b257df64736f6c634300081b0033", "linkReferences": {}, "deployedLinkReferences": {} }