@axelar-network/axelarjs-sdk
Version:
The JavaScript SDK for Axelar Network
181 lines (180 loc) • 24.2 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "ReceiverImplementation",
"sourceName": "contracts/deposit-service/ReceiverImplementation.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "gateway_",
"type": "address"
},
{
"internalType": "string",
"name": "wrappedSymbol_",
"type": "string"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "InvalidAddress",
"type": "error"
},
{
"inputs": [],
"name": "InvalidStringLength",
"type": "error"
},
{
"inputs": [],
"name": "InvalidSymbol",
"type": "error"
},
{
"inputs": [],
"name": "NativeTransferFailed",
"type": "error"
},
{
"inputs": [],
"name": "NothingDeposited",
"type": "error"
},
{
"inputs": [],
"name": "TokenApproveFailed",
"type": "error"
},
{
"inputs": [],
"name": "TokenTransferFailed",
"type": "error"
},
{
"inputs": [],
"name": "UnwrapFailed",
"type": "error"
},
{
"inputs": [],
"name": "WrapFailed",
"type": "error"
},
{
"inputs": [],
"name": "gateway",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "refundAddress",
"type": "address"
},
{
"internalType": "string",
"name": "destinationChain",
"type": "string"
},
{
"internalType": "string",
"name": "destinationAddress",
"type": "string"
}
],
"name": "receiveAndSendNative",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "refundAddress",
"type": "address"
},
{
"internalType": "string",
"name": "destinationChain",
"type": "string"
},
{
"internalType": "string",
"name": "destinationAddress",
"type": "string"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
}
],
"name": "receiveAndSendToken",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "refundAddress",
"type": "address"
},
{
"internalType": "address",
"name": "recipient",
"type": "address"
}
],
"name": "receiveAndUnwrapNative",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "wrappedSymbol",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "wrappedToken",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x60c06040523480156200001157600080fd5b50604051620014b8380380620014b8833981016040819052620000349162000217565b81816001600160a01b0382166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03821660808190526040516349ad89fb60e11b81526000919063935b13f69062000094908590600401620002e5565b60206040518083038186803b158015620000ad57600080fd5b505afa158015620000c2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e891906200031a565b6001600160a01b03161415620001115760405163010466f160e21b815260040160405180910390fd5b62000127816200013560201b62000b351760201c565b60a052506200036792505050565b8051600090829015806200014a5750601f8151115b156200016957604051638dc6ac0160e01b815260040160405180910390fd5b600062000176826200033f565b82516040805160ff9092169290921760208201819052925001604051602081830303815290604052620001a9906200033f565b949350505050565b80516001600160a01b0381168114620001c957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101562000201578181015183820152602001620001e7565b8381111562000211576000848401525b50505050565b600080604083850312156200022b57600080fd5b6200023683620001b1565b60208401519092506001600160401b03808211156200025457600080fd5b818501915085601f8301126200026957600080fd5b8151818111156200027e576200027e620001ce565b604051601f8201601f19908116603f01168101908382118183101715620002a957620002a9620001ce565b81604052828152886020848701011115620002c357600080fd5b620002d6836020830160208801620001e4565b80955050505050509250929050565b602081526000825180602084015262000306816040850160208701620001e4565b601f01601f19169190910160400192915050565b6000602082840312156200032d57600080fd5b6200033882620001b1565b9392505050565b8051602080830151919081101562000361576000198160200360031b1b821691505b50919050565b60805160a0516110f4620003c46000396000818161010d01528181610458015261072d015260008181607c0152818161041c0152818161065b015281816106ed015281816107ec015281816109f90152610ab501526110f46000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c8063a97a8d1611610050578063a97a8d16146100d8578063b28f104b146100eb578063fee8cf4e146100fe57600080fd5b8063116191b61461007757806388ccd044146100bb578063996c6cc3146100d0575b600080fd5b61009e7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ce6100c9366004610d22565b610147565b005b61009e610418565b6100ce6100e6366004610da4565b6104f6565b6100ce6100f9366004610e27565b6107b9565b61013a604080518082019091527f000000000000000000000000000000000000000000000000000000000000000060ff81168252602082015290565b6040516100b29190610f2c565b6000610151610418565b90506000336001600160a01b0316635cb732be6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561019057600080fd5b505af11580156101a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c89190610f46565b90506001600160a01b03811615610276576001600160a01b0384166101eb573393505b6040516370a0823160e01b815230600482015261027090829086906001600160a01b038316906370a08231906024015b60206040518083038186803b15801561023357600080fd5b505afa158015610247573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026b9190610f63565b610bc4565b50505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b1580156102b857600080fd5b505afa1580156102cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f09190610f63565b905080610310576040516369b95dc960e01b815260040160405180910390fd5b6040517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b15801561036b57600080fd5b505af115801561037f573d6000803e3d6000fd5b505050506000846001600160a01b03168260405160006040518083038185875af1925050503d80600081146103d0576040519150601f19603f3d011682016040523d82523d6000602084013e6103d5565b606091505b5050905080610410576040517ff4b3b1bc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663935b13f6610485604080518082019091527f000000000000000000000000000000000000000000000000000000000000000060ff81168252602082015290565b6040518263ffffffff1660e01b81526004016104a19190610f2c565b60206040518083038186803b1580156104b957600080fd5b505afa1580156104cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f19190610f46565b905090565b6000336001600160a01b0316635cb732be6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561053357600080fd5b505af1158015610547573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056b9190610f46565b90506001600160a01b038116156105c8576001600160a01b03861661058e573395505b6040516370a0823160e01b81523060048201526105c290829088906001600160a01b038316906370a082319060240161021b565b506107b2565b60006105d2610418565b905047806105f3576040516369b95dc960e01b815260040160405180910390fd5b816001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b15801561062e57600080fd5b505af1158015610642573d6000803e3d6000fd5b505060405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018690528616935063095ea7b392506044019050602060405180830381600087803b1580156106b257600080fd5b505af11580156106c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ea9190610f7c565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166326ef699d8888888861075a604080518082019091527f000000000000000000000000000000000000000000000000000000000000000060ff81168252602082015290565b876040518763ffffffff1660e01b815260040161077c96959493929190610fc7565b600060405180830381600087803b15801561079657600080fd5b505af11580156107aa573d6000803e3d6000fd5b505050505050505b5050505050565b6040517f935b13f60000000000000000000000000000000000000000000000000000000081526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063935b13f6906108239086908690600401611016565b60206040518083038186803b15801561083b57600080fd5b505afa15801561084f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108739190610f46565b90506000336001600160a01b0316635cb732be6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156108b257600080fd5b505af11580156108c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ea9190610f46565b90506001600160a01b03811615610948576001600160a01b03891661090d573398505b6040516370a0823160e01b81523060048201526109419082908b906001600160a01b038316906370a082319060240161021b565b5050610b2c565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b15801561098a57600080fd5b505afa15801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190610f63565b9050806109e2576040516369b95dc960e01b815260040160405180910390fd5b60405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301526024820183905284169063095ea7b390604401602060405180830381600087803b158015610a4c57600080fd5b505af1158015610a60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a849190610f7c565b506040517f26ef699d0000000000000000000000000000000000000000000000000000000081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906326ef699d90610af6908c908c908c908c908c908c908a9060040161102a565b600060405180830381600087803b158015610b1057600080fd5b505af1158015610b24573d6000803e3d6000fd5b505050505050505b50505050505050565b805160009082901580610b495750601f8151115b15610b80576040517f8dc6ac0100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610b8b8261107b565b82516040805160ff9092169290921760208201819052925001604051602081830303815290604052610bbc9061107b565b949350505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790529151600092839290871691610c4e91906110a2565b6000604051808303816000865af19150503d8060008114610c8b576040519150601f19603f3d011682016040523d82523d6000602084013e610c90565b606091505b50915091506000828015610cbc575081511580610cbc575081806020019051810190610cbc9190610f7c565b9050801580610cd357506001600160a01b0386163b155b15610410576040517f045c4b0200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0381168114610d1f57600080fd5b50565b60008060408385031215610d3557600080fd5b8235610d4081610d0a565b91506020830135610d5081610d0a565b809150509250929050565b60008083601f840112610d6d57600080fd5b50813567ffffffffffffffff811115610d8557600080fd5b602083019150836020828501011115610d9d57600080fd5b9250929050565b600080600080600060608688031215610dbc57600080fd5b8535610dc781610d0a565b9450602086013567ffffffffffffffff80821115610de457600080fd5b610df089838a01610d5b565b90965094506040880135915080821115610e0957600080fd5b50610e1688828901610d5b565b969995985093965092949392505050565b60008060008060008060006080888a031215610e4257600080fd5b8735610e4d81610d0a565b9650602088013567ffffffffffffffff80821115610e6a57600080fd5b610e768b838c01610d5b565b909850965060408a0135915080821115610e8f57600080fd5b610e9b8b838c01610d5b565b909650945060608a0135915080821115610eb457600080fd5b50610ec18a828b01610d5b565b989b979a50959850939692959293505050565b60005b83811015610eef578181015183820152602001610ed7565b838111156102705750506000910152565b60008151808452610f18816020860160208601610ed4565b601f01601f19169290920160200192915050565b602081526000610f3f6020830184610f00565b9392505050565b600060208284031215610f5857600080fd5b8151610f3f81610d0a565b600060208284031215610f7557600080fd5b5051919050565b600060208284031215610f8e57600080fd5b81518015158114610f3f57600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b608081526000610fdb60808301888a610f9e565b8281036020840152610fee818789610f9e565b905082810360408401526110028186610f00565b915050826060830152979650505050505050565b602081526000610bbc602083018486610f9e565b60808152600061103e60808301898b610f9e565b828103602084015261105181888a610f9e565b90508281036040840152611066818688610f9e565b91505082606083015298975050505050505050565b8051602080830151919081101561109c576000198160200360031b1b821691505b50919050565b600082516110b4818460208701610ed4565b919091019291505056fea26469706673582212203ff4690b62b03c0c5357a65bd25e163ca4912f9c2a670da46272b377e4fd49e564736f6c63430008090033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c8063a97a8d1611610050578063a97a8d16146100d8578063b28f104b146100eb578063fee8cf4e146100fe57600080fd5b8063116191b61461007757806388ccd044146100bb578063996c6cc3146100d0575b600080fd5b61009e7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ce6100c9366004610d22565b610147565b005b61009e610418565b6100ce6100e6366004610da4565b6104f6565b6100ce6100f9366004610e27565b6107b9565b61013a604080518082019091527f000000000000000000000000000000000000000000000000000000000000000060ff81168252602082015290565b6040516100b29190610f2c565b6000610151610418565b90506000336001600160a01b0316635cb732be6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561019057600080fd5b505af11580156101a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c89190610f46565b90506001600160a01b03811615610276576001600160a01b0384166101eb573393505b6040516370a0823160e01b815230600482015261027090829086906001600160a01b038316906370a08231906024015b60206040518083038186803b15801561023357600080fd5b505afa158015610247573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026b9190610f63565b610bc4565b50505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b1580156102b857600080fd5b505afa1580156102cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f09190610f63565b905080610310576040516369b95dc960e01b815260040160405180910390fd5b6040517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b15801561036b57600080fd5b505af115801561037f573d6000803e3d6000fd5b505050506000846001600160a01b03168260405160006040518083038185875af1925050503d80600081146103d0576040519150601f19603f3d011682016040523d82523d6000602084013e6103d5565b606091505b5050905080610410576040517ff4b3b1bc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663935b13f6610485604080518082019091527f000000000000000000000000000000000000000000000000000000000000000060ff81168252602082015290565b6040518263ffffffff1660e01b81526004016104a19190610f2c565b60206040518083038186803b1580156104b957600080fd5b505afa1580156104cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f19190610f46565b905090565b6000336001600160a01b0316635cb732be6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561053357600080fd5b505af1158015610547573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056b9190610f46565b90506001600160a01b038116156105c8576001600160a01b03861661058e573395505b6040516370a0823160e01b81523060048201526105c290829088906001600160a01b038316906370a082319060240161021b565b506107b2565b60006105d2610418565b905047806105f3576040516369b95dc960e01b815260040160405180910390fd5b816001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b15801561062e57600080fd5b505af1158015610642573d6000803e3d6000fd5b505060405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018690528616935063095ea7b392506044019050602060405180830381600087803b1580156106b257600080fd5b505af11580156106c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ea9190610f7c565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166326ef699d8888888861075a604080518082019091527f000000000000000000000000000000000000000000000000000000000000000060ff81168252602082015290565b876040518763ffffffff1660e01b815260040161077c96959493929190610fc7565b600060405180830381600087803b15801561079657600080fd5b505af11580156107aa573d6000803e3d6000fd5b505050505050505b5050505050565b6040517f935b13f60000000000000000000000000000000000000000000000000000000081526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063935b13f6906108239086908690600401611016565b60206040518083038186803b15801561083b57600080fd5b505afa15801561084f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108739190610f46565b90506000336001600160a01b0316635cb732be6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156108b257600080fd5b505af11580156108c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ea9190610f46565b90506001600160a01b03811615610948576001600160a01b03891661090d573398505b6040516370a0823160e01b81523060048201526109419082908b906001600160a01b038316906370a082319060240161021b565b5050610b2c565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b15801561098a57600080fd5b505afa15801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190610f63565b9050806109e2576040516369b95dc960e01b815260040160405180910390fd5b60405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301526024820183905284169063095ea7b390604401602060405180830381600087803b158015610a4c57600080fd5b505af1158015610a60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a849190610f7c565b506040517f26ef699d0000000000000000000000000000000000000000000000000000000081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906326ef699d90610af6908c908c908c908c908c908c908a9060040161102a565b600060405180830381600087803b158015610b1057600080fd5b505af1158015610b24573d6000803e3d6000fd5b505050505050505b50505050505050565b805160009082901580610b495750601f8151115b15610b80576040517f8dc6ac0100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610b8b8261107b565b82516040805160ff9092169290921760208201819052925001604051602081830303815290604052610bbc9061107b565b949350505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790529151600092839290871691610c4e91906110a2565b6000604051808303816000865af19150503d8060008114610c8b576040519150601f19603f3d011682016040523d82523d6000602084013e610c90565b606091505b50915091506000828015610cbc575081511580610cbc575081806020019051810190610cbc9190610f7c565b9050801580610cd357506001600160a01b0386163b155b15610410576040517f045c4b0200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0381168114610d1f57600080fd5b50565b60008060408385031215610d3557600080fd5b8235610d4081610d0a565b91506020830135610d5081610d0a565b809150509250929050565b60008083601f840112610d6d57600080fd5b50813567ffffffffffffffff811115610d8557600080fd5b602083019150836020828501011115610d9d57600080fd5b9250929050565b600080600080600060608688031215610dbc57600080fd5b8535610dc781610d0a565b9450602086013567ffffffffffffffff80821115610de457600080fd5b610df089838a01610d5b565b90965094506040880135915080821115610e0957600080fd5b50610e1688828901610d5b565b969995985093965092949392505050565b60008060008060008060006080888a031215610e4257600080fd5b8735610e4d81610d0a565b9650602088013567ffffffffffffffff80821115610e6a57600080fd5b610e768b838c01610d5b565b909850965060408a0135915080821115610e8f57600080fd5b610e9b8b838c01610d5b565b909650945060608a0135915080821115610eb457600080fd5b50610ec18a828b01610d5b565b989b979a50959850939692959293505050565b60005b83811015610eef578181015183820152602001610ed7565b838111156102705750506000910152565b60008151808452610f18816020860160208601610ed4565b601f01601f19169290920160200192915050565b602081526000610f3f6020830184610f00565b9392505050565b600060208284031215610f5857600080fd5b8151610f3f81610d0a565b600060208284031215610f7557600080fd5b5051919050565b600060208284031215610f8e57600080fd5b81518015158114610f3f57600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b608081526000610fdb60808301888a610f9e565b8281036020840152610fee818789610f9e565b905082810360408401526110028186610f00565b915050826060830152979650505050505050565b602081526000610bbc602083018486610f9e565b60808152600061103e60808301898b610f9e565b828103602084015261105181888a610f9e565b90508281036040840152611066818688610f9e565b91505082606083015298975050505050505050565b8051602080830151919081101561109c576000198160200360031b1b821691505b50919050565b600082516110b4818460208701610ed4565b919091019291505056fea26469706673582212203ff4690b62b03c0c5357a65bd25e163ca4912f9c2a670da46272b377e4fd49e564736f6c63430008090033",
"linkReferences": {},
"deployedLinkReferences": {}
}