@axelar-network/interchain-token-service
Version:
Interchain token service for EVM chains to faciliate interchain token transfers and contract calls
226 lines (225 loc) • 10.8 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "Minter",
"sourceName": "contracts/utils/Minter.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "fromAccount",
"type": "address"
},
{
"internalType": "address",
"name": "toAccount",
"type": "address"
},
{
"internalType": "uint256",
"name": "accountRoles",
"type": "uint256"
}
],
"name": "InvalidProposedRoles",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "accountRoles",
"type": "uint256"
}
],
"name": "MissingAllRoles",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "accountRoles",
"type": "uint256"
}
],
"name": "MissingAnyOfRoles",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint8",
"name": "role",
"type": "uint8"
}
],
"name": "MissingRole",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "accountRoles",
"type": "uint256"
}
],
"name": "RolesAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "fromAccount",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "toAccount",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "accountRoles",
"type": "uint256"
}
],
"name": "RolesProposed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "accountRoles",
"type": "uint256"
}
],
"name": "RolesRemoved",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "fromMinter",
"type": "address"
}
],
"name": "acceptMintership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint8",
"name": "role",
"type": "uint8"
}
],
"name": "hasRole",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "isMinter",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "minter_",
"type": "address"
}
],
"name": "proposeMintership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "minter_",
"type": "address"
}
],
"name": "transferMintership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x6080604052348015600f57600080fd5b506105f28061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063aa271e1a11610050578063aa271e1a146100a8578063b5ef694d146100bb578063cf86a95a146100ce57600080fd5b806395a8c58d1461006c5780639c17667714610093575b600080fd5b61007f61007a366004610564565b6100e1565b604051901515815260200160405180910390f35b6100a66100a13660046105a1565b610103565b005b61007f6100b63660046105a1565b610112565b6100a66100c93660046105a1565b610124565b6100a66100dc3660046105a1565b61017c565b60006100fc6100ef846101be565b600160ff85161b16151590565b9392505050565b61010f813360006101d2565b50565b600061011e82826100e1565b92915050565b600061013f610132336101be565b600160ff84161b16151590565b61016c5760405163bb6c163960e01b815233600482015260ff821660248201526044015b60405180910390fd5b610178338360006101e8565b5050565b600061018a610132336101be565b6101b25760405163bb6c163960e01b815233600482015260ff82166024820152604401610163565b610178338360006101f9565b6000806101ca8361020a565b549392505050565b6101e38383600160ff85161b610277565b505050565b6101e38383600160ff85161b6102ea565b6101e38383600160ff85161b610389565b60007fde9bdca322e1a848f72215bc15cf2c87fe7749145789a9ee281a2a6290af26ab8260405160200161025a92919091825260601b6bffffffffffffffffffffffff1916602082015260340190565b604051602081830303815290604052805190602001209050919050565b8061028284846103d8565b146102d3576040517f6004fe400000000000000000000000000000000000000000000000000000000081526001600160a01b0380851660048301528316602482015260448101829052606401610163565b6102df838360006103ee565b6101e3838383610389565b6102fd6102f6846101be565b8216821490565b61032c57604051631fe9beed60e21b81526001600160a01b038416600482015260248101829052604401610163565b6103378383836103ee565b816001600160a01b0316836001600160a01b03167ff7158d1591c2cf17c0e6b9459d86365c47fe0969c79f40ef49e0c437d8f399148360405161037c91815260200190565b60405180910390a3505050565b6103956102f6846101be565b6103c457604051631fe9beed60e21b81526001600160a01b038416600482015260248101829052604401610163565b6103ce8382610403565b6101e38282610465565b6000806103e584846104b9565b54949350505050565b60006103fa84846104b9565b91909155505050565b60008119610410846101be565b16905061041d8382610535565b826001600160a01b03167fccf920c8facee98a9c2a6c6124f2857b87b17e9f3a819bfcc6945196ee77366b8360405161045891815260200190565b60405180910390a2505050565b600081610471846101be565b17905061047e8382610535565b826001600160a01b03167f34e73c57659d4b6809b53db4feee9b007b892e978114eda420d2991aba1501438360405161045891815260200190565b60007ff96e07b2f4fbb81c31567d2b261589af429e98f0958d53f7e6ad5d63aea0ab7c838360405160200161051793929190928352606091821b6bffffffffffffffffffffffff199081166020850152911b16603482015260480190565b60405160208183030381529060405280519060200120905092915050565b60006105408361020a565b919091555050565b80356001600160a01b038116811461055f57600080fd5b919050565b6000806040838503121561057757600080fd5b61058083610548565b9150602083013560ff8116811461059657600080fd5b809150509250929050565b6000602082840312156105b357600080fd5b6100fc8261054856fea2646970667358221220f581e9794a4250cce9a6de84914f564ea53ae8c738c821974509f9ecd21accd264736f6c634300081b0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063aa271e1a11610050578063aa271e1a146100a8578063b5ef694d146100bb578063cf86a95a146100ce57600080fd5b806395a8c58d1461006c5780639c17667714610093575b600080fd5b61007f61007a366004610564565b6100e1565b604051901515815260200160405180910390f35b6100a66100a13660046105a1565b610103565b005b61007f6100b63660046105a1565b610112565b6100a66100c93660046105a1565b610124565b6100a66100dc3660046105a1565b61017c565b60006100fc6100ef846101be565b600160ff85161b16151590565b9392505050565b61010f813360006101d2565b50565b600061011e82826100e1565b92915050565b600061013f610132336101be565b600160ff84161b16151590565b61016c5760405163bb6c163960e01b815233600482015260ff821660248201526044015b60405180910390fd5b610178338360006101e8565b5050565b600061018a610132336101be565b6101b25760405163bb6c163960e01b815233600482015260ff82166024820152604401610163565b610178338360006101f9565b6000806101ca8361020a565b549392505050565b6101e38383600160ff85161b610277565b505050565b6101e38383600160ff85161b6102ea565b6101e38383600160ff85161b610389565b60007fde9bdca322e1a848f72215bc15cf2c87fe7749145789a9ee281a2a6290af26ab8260405160200161025a92919091825260601b6bffffffffffffffffffffffff1916602082015260340190565b604051602081830303815290604052805190602001209050919050565b8061028284846103d8565b146102d3576040517f6004fe400000000000000000000000000000000000000000000000000000000081526001600160a01b0380851660048301528316602482015260448101829052606401610163565b6102df838360006103ee565b6101e3838383610389565b6102fd6102f6846101be565b8216821490565b61032c57604051631fe9beed60e21b81526001600160a01b038416600482015260248101829052604401610163565b6103378383836103ee565b816001600160a01b0316836001600160a01b03167ff7158d1591c2cf17c0e6b9459d86365c47fe0969c79f40ef49e0c437d8f399148360405161037c91815260200190565b60405180910390a3505050565b6103956102f6846101be565b6103c457604051631fe9beed60e21b81526001600160a01b038416600482015260248101829052604401610163565b6103ce8382610403565b6101e38282610465565b6000806103e584846104b9565b54949350505050565b60006103fa84846104b9565b91909155505050565b60008119610410846101be565b16905061041d8382610535565b826001600160a01b03167fccf920c8facee98a9c2a6c6124f2857b87b17e9f3a819bfcc6945196ee77366b8360405161045891815260200190565b60405180910390a2505050565b600081610471846101be565b17905061047e8382610535565b826001600160a01b03167f34e73c57659d4b6809b53db4feee9b007b892e978114eda420d2991aba1501438360405161045891815260200190565b60007ff96e07b2f4fbb81c31567d2b261589af429e98f0958d53f7e6ad5d63aea0ab7c838360405160200161051793929190928352606091821b6bffffffffffffffffffffffff199081166020850152911b16603482015260480190565b60405160208183030381529060405280519060200120905092915050565b60006105408361020a565b919091555050565b80356001600160a01b038116811461055f57600080fd5b919050565b6000806040838503121561057757600080fd5b61058083610548565b9150602083013560ff8116811461059657600080fd5b809150509250929050565b6000602082840312156105b357600080fd5b6100fc8261054856fea2646970667358221220f581e9794a4250cce9a6de84914f564ea53ae8c738c821974509f9ecd21accd264736f6c634300081b0033",
"linkReferences": {},
"deployedLinkReferences": {}
}