UNPKG

@eth-optimism/contracts-periphery

Version:

[Optimism] External (out-of-protocol) L1 and L2 smart contracts for Optimism

156 lines (155 loc) 9.56 kB
{ "_format": "hh-sol-artifact-1", "contractName": "FaucetHelper", "sourceName": "contracts/testing/helpers/FaucetHelper.sol", "abi": [ { "inputs": [], "name": "EIP712_DOMAIN_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PROOF_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "consumeNonce", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "currentNonce", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "bytes32", "name": "nonce", "type": "bytes32" }, { "internalType": "bytes32", "name": "id", "type": "bytes32" } ], "internalType": "struct AdminFaucetAuthModule.Proof", "name": "_proof", "type": "tuple" }, { "internalType": "bytes", "name": "_name", "type": "bytes" }, { "internalType": "bytes", "name": "_version", "type": "bytes" }, { "internalType": "uint256", "name": "_chainid", "type": "uint256" }, { "internalType": "address", "name": "_verifyingContract", "type": "address" } ], "name": "getDigestWithEIP712Domain", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "bytes32", "name": "nonce", "type": "bytes32" }, { "internalType": "bytes32", "name": "id", "type": "bytes32" } ], "internalType": "struct AdminFaucetAuthModule.Proof", "name": "_proof", "type": "tuple" } ], "name": "getProofStructHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b506105e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c8063adb610a311610050578063adb610a314610142578063b163a6b81461014b578063c7977be71461015e57600080fd5b806334b1511814610077578063796dfbfa146100915780638b3e3bf61461011b575b600080fd5b61007f610185565b60405190815260200160405180910390f35b61007f61009f3660046103f3565b805160208083015160409384015184517fd4283507dc7a8282faa6b4c8c18bacbb74dbbab5467342e6f581656f3577236e8185015273ffffffffffffffffffffffffffffffffffffffff9094168486015260608401919091526080808401919091528351808403909101815260a0909201909252805191012090565b61007f7fd4283507dc7a8282faa6b4c8c18bacbb74dbbab5467342e6f581656f3577236e81565b61007f60005481565b61007f6101593660046104c1565b6101c5565b61007f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81565b60008054818061019483610551565b919050556040516020016101aa91815260200190565b60405160208183030381529060405280519060200120905090565b8351602080860191909120845185830120604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f9481019490945283019190915260608201526080810183905273ffffffffffffffffffffffffffffffffffffffff821660a0820152600090819060c00160405160208183030381529060405280519060200120905061032f816102d489805160208083015160409384015184517fd4283507dc7a8282faa6b4c8c18bacbb74dbbab5467342e6f581656f3577236e8185015273ffffffffffffffffffffffffffffffffffffffff9094168486015260608401919091526080808401919091528351808403909101815260a0909201909252805191012090565b6040517f19010000000000000000000000000000000000000000000000000000000000006020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b803573ffffffffffffffffffffffffffffffffffffffff8116811461038d57600080fd5b919050565b6000606082840312156103a457600080fd5b6040516060810181811067ffffffffffffffff821117156103c7576103c761033a565b6040529050806103d683610369565b815260208301356020820152604083013560408201525092915050565b60006060828403121561040557600080fd5b61040f8383610392565b9392505050565b600082601f83011261042757600080fd5b813567ffffffffffffffff808211156104425761044261033a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019082821181831017156104885761048861033a565b816040528381528660208588010111156104a157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060e086880312156104d957600080fd5b6104e38787610392565b9450606086013567ffffffffffffffff8082111561050057600080fd5b61050c89838a01610416565b9550608088013591508082111561052257600080fd5b5061052f88828901610416565b93505060a0860135915061054560c08701610369565b90509295509295909350565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036105a9577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea2646970667358221220dd0256401c2294e00aa26072a1c3c293f134d2bf23f3f8f908ee9fdbc5c20f0664736f6c634300080f0033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c8063adb610a311610050578063adb610a314610142578063b163a6b81461014b578063c7977be71461015e57600080fd5b806334b1511814610077578063796dfbfa146100915780638b3e3bf61461011b575b600080fd5b61007f610185565b60405190815260200160405180910390f35b61007f61009f3660046103f3565b805160208083015160409384015184517fd4283507dc7a8282faa6b4c8c18bacbb74dbbab5467342e6f581656f3577236e8185015273ffffffffffffffffffffffffffffffffffffffff9094168486015260608401919091526080808401919091528351808403909101815260a0909201909252805191012090565b61007f7fd4283507dc7a8282faa6b4c8c18bacbb74dbbab5467342e6f581656f3577236e81565b61007f60005481565b61007f6101593660046104c1565b6101c5565b61007f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81565b60008054818061019483610551565b919050556040516020016101aa91815260200190565b60405160208183030381529060405280519060200120905090565b8351602080860191909120845185830120604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f9481019490945283019190915260608201526080810183905273ffffffffffffffffffffffffffffffffffffffff821660a0820152600090819060c00160405160208183030381529060405280519060200120905061032f816102d489805160208083015160409384015184517fd4283507dc7a8282faa6b4c8c18bacbb74dbbab5467342e6f581656f3577236e8185015273ffffffffffffffffffffffffffffffffffffffff9094168486015260608401919091526080808401919091528351808403909101815260a0909201909252805191012090565b6040517f19010000000000000000000000000000000000000000000000000000000000006020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b803573ffffffffffffffffffffffffffffffffffffffff8116811461038d57600080fd5b919050565b6000606082840312156103a457600080fd5b6040516060810181811067ffffffffffffffff821117156103c7576103c761033a565b6040529050806103d683610369565b815260208301356020820152604083013560408201525092915050565b60006060828403121561040557600080fd5b61040f8383610392565b9392505050565b600082601f83011261042757600080fd5b813567ffffffffffffffff808211156104425761044261033a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019082821181831017156104885761048861033a565b816040528381528660208588010111156104a157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060e086880312156104d957600080fd5b6104e38787610392565b9450606086013567ffffffffffffffff8082111561050057600080fd5b61050c89838a01610416565b9550608088013591508082111561052257600080fd5b5061052f88828901610416565b93505060a0860135915061054560c08701610369565b90509295509295909350565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036105a9577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea2646970667358221220dd0256401c2294e00aa26072a1c3c293f134d2bf23f3f8f908ee9fdbc5c20f0664736f6c634300080f0033", "linkReferences": {}, "deployedLinkReferences": {} }