amount added to LockReleased event

This commit is contained in:
PedroCailleret committed 2022-12-20 17:33:58 -03:00
1 parent ffa0fe22e3
commit cb93b4db4b
21 files changed
+100 -57

No files matched your search

@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -254,6 +254,12 @@
"internalType": "bytes32",
"name": "lockId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "LockReleased",
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../build-info/916d546d680bb337e1c490eb628d93df.json"
"buildInfo": "../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/0043b38db58c3ff291cf622f3b61e1a3.json"
"buildInfo": "../../../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
+1 -1
View File
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../build-info/948b888bf726ea051449ea823f31e46a.json"
"buildInfo": "../../build-info/35b01c3398ab10e738bc36ca68343c23.json"
}
+8 -2
View File
@@ -290,6 +290,12 @@
"internalType": "bytes32",
"name": "lockId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "LockReleased",
@@ -910,8 +916,8 @@
"type": "receive"
}
],
"bytecode": "0x608060405260018055604051620028a1380380620028a18339810160408190526200002a916200049d565b600080546001600160a01b031916339081178255604051909182917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76908290a3506200007685620000a3565b620000818362000133565b6200008c84620001bd565b620000988282620002a1565b505050505062000620565b6000546001600160a01b03163314620000f25760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b806004557f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b8511816040516200012891815260200190565b60405180910390a150565b6000546001600160a01b031633146200017e5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b60028190556040516001600160a01b03821681527fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9060200162000128565b6000546001600160a01b03163314620002085760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b80516000905b808210156200026e57600062000246848481518110620002325762000232620005bb565b60200260200101516200038760201b60201c565b6000908152600660205260409020805460ff191660019081179091559290920191506200020e565b50507f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d781604051620001289190620005d1565b6000546001600160a01b03163314620002ec5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b815180620003025763df9578836000526004601cfd5b81518114620003195763ff633a386000526004601cfd5b60208301602083016020830282015b8083146200037f578251600052600b60205260406000208251815550815183517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a600080a360208301925060208201915062000328565b505050505050565b600c1b611000600160ac1b031690565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715620003d857620003d862000397565b604052919050565b60006001600160401b03821115620003fc57620003fc62000397565b5060051b60200190565b6001600160a01b03811681146200041c57600080fd5b50565b600082601f8301126200043157600080fd5b815160206200044a6200044483620003e0565b620003ad565b82815260059290921b840181019181810190868411156200046a57600080fd5b8286015b8481101562000492578051620004848162000406565b83529183019183016200046e565b509695505050505050565b600080600080600060a08688031215620004b657600080fd5b8551602080880151919650906001600160401b0380821115620004d857600080fd5b620004e68a838b016200041f565b965060408901519150620004fa8262000406565b6060890151919550808211156200051057600080fd5b6200051e8a838b016200041f565b945060808901519150808211156200053557600080fd5b508701601f810189136200054857600080fd5b8051620005596200044482620003e0565b81815260059190911b8201830190838101908b8311156200057957600080fd5b928401925b82841015620005a95783518015158114620005995760008081fd5b825292840192908401906200057e565b80955050505050509295509295909350565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b81811015620006145783516001600160a01b031683529284019291840191600101620005ed565b50909695505050505050565b61227180620006306000396000f3fe6080604052600436106101a55760003560e01c806372fada5c116100e15780638e2749d61161008a57806398a268711161006457806398a268711461056b578063c52164c61461059b578063d6e8b973146105bb578063f7d0e04b146105db57600080fd5b80638e2749d6146105045780638e2a3d36146105245780639872dbfe1461055557600080fd5b80637f94f65d116100bb5780637f94f65d1461048c5780638652b37e146104ac5780638da5cb5b146104cc57600080fd5b806372fada5c1461041f578063758d77d41461043f57806377cd38a41461045f57600080fd5b8063363179721161014e578063574983c811610128578063574983c81461039e5780635fd8c710146103be57806369cc6af4146103d35780636a1460241461040357600080fd5b80633631797214610313578063461f3120146103335780634b2ae9801461037357600080fd5b806316d722401161017f57806316d722401461023357806329cc7d10146102dc5780632dfdf0b5146102fc57600080fd5b806304937320146101b15780630d2a2d44146101f157806313af40351461021357600080fd5b366101ac57005b600080fd5b3480156101bd57600080fd5b506101de6101cc366004611b2c565b60056020526000908152604090205481565b6040519081526020015b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611c39565b6105fb565b005b34801561021f57600080fd5b5061021161022e366004611c76565b6106ec565b34801561023f57600080fd5b5061029861024e366004611b2c565b600860205260009081526040902080546001820154600283015460038401546004850154600586015460069096015494959394929391926001600160a01b03918216928216911687565b6040805197885260208801969096529486019390935260608501919091526001600160a01b03908116608085015290811660a08401521660c082015260e0016101e8565b3480156102e857600080fd5b506101de6102f7366004611c93565b61078d565b34801561030857600080fd5b506003546101de9081565b34801561031f57600080fd5b5061021161032e366004611d70565b610978565b34801561033f57600080fd5b5061036361034e366004611b2c565b60096020526000908152604090205460ff1681565b60405190151581526020016101e8565b34801561037f57600080fd5b506101de61038e36600461Line truncated
"deployedBytecode": "0x6080604052600436106101a55760003560e01c806372fada5c116100e15780638e2749d61161008a57806398a268711161006457806398a268711461056b578063c52164c61461059b578063d6e8b973146105bb578063f7d0e04b146105db57600080fd5b80638e2749d6146105045780638e2a3d36146105245780639872dbfe1461055557600080fd5b80637f94f65d116100bb5780637f94f65d1461048c5780638652b37e146104ac5780638da5cb5b146104cc57600080fd5b806372fada5c1461041f578063758d77d41461043f57806377cd38a41461045f57600080fd5b8063363179721161014e578063574983c811610128578063574983c81461039e5780635fd8c710146103be57806369cc6af4146103d35780636a1460241461040357600080fd5b80633631797214610313578063461f3120146103335780634b2ae9801461037357600080fd5b806316d722401161017f57806316d722401461023357806329cc7d10146102dc5780632dfdf0b5146102fc57600080fd5b806304937320146101b15780630d2a2d44146101f157806313af40351461021357600080fd5b366101ac57005b600080fd5b3480156101bd57600080fd5b506101de6101cc366004611b2c565b60056020526000908152604090205481565b6040519081526020015b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611c39565b6105fb565b005b34801561021f57600080fd5b5061021161022e366004611c76565b6106ec565b34801561023f57600080fd5b5061029861024e366004611b2c565b600860205260009081526040902080546001820154600283015460038401546004850154600586015460069096015494959394929391926001600160a01b03918216928216911687565b6040805197885260208801969096529486019390935260608501919091526001600160a01b03908116608085015290811660a08401521660c082015260e0016101e8565b3480156102e857600080fd5b506101de6102f7366004611c93565b61078d565b34801561030857600080fd5b506003546101de9081565b34801561031f57600080fd5b5061021161032e366004611d70565b610978565b34801561033f57600080fd5b5061036361034e366004611b2c565b60096020526000908152604090205460ff1681565b60405190151581526020016101e8565b34801561037f57600080fd5b506101de61038e366004611c76565b600c1b611000600160ac1b031690565b3480156103aa57600080fd5b506102116103b9366004611b2c565b610a38565b3480156103ca57600080fd5b50610211610ab6565b3480156103df57600080fd5b506103636103ee366004611c76565b600b6020526000908152604090205460ff1681565b34801561040f57600080fd5b506101de670de0b6b3a764000081565b34801561042b57600080fd5b5061021161043a366004611b2c565b610b40565b34801561044b57600080fd5b5061021161045a366004611dbc565b610bc8565b34801561046b57600080fd5b506101de61047a366004611b2c565b600a6020526000908152604090205481565b34801561049857600080fd5b506102116104a7366004611e20565b610f9e565b3480156104b857600080fd5b506101de6104c7366004611e4c565b611031565b3480156104d857600080fd5b506000546104ec906001600160a01b031681565b6040516001600160a01b0390911681526020016101e8565b34801561051057600080fd5b5061021161051f366004611f00565b611211565b34801561053057600080fd5b5061054461053f366004611b2c565b611379565b6040516101e8959493929190611f42565b34801561056157600080fd5b506101de60045481565b34801561057757600080fd5b50610363610586366004611b2c565b60066020526000908152604090205460ff1681565b3480156105a757600080fd5b506002546104ec906001600160a01b031681565b3480156105c757600080fd5b506102116105d6366004611fcf565b611443565b3480156105e757600080fd5b506102116105f6366004611c76565b61151b565b6000546001600160a01b031633146106495760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b80516000905b808210156106b057600061068984848151811061066e5761066e612099565b6020026020010151611000600160ac1b03600c9190911b1690565b6000908152600660205260409020805460ff1916600190811790915592909201915061064f565b50507f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d7816040516106e191906120af565b60405180910390a150565b6000546001600160a01b031633146107355760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401610640565b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b6001600160a01b0385166000908152600b6020526040812054869060ff166107c857604051630abc194760e11b815260040160405180910390fd5b6107d06115a2565b915060006040518060a0016040528088815260200187878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050908252503360208201526001600160a01b038a166040820152600160609091015290506108456115b2565b8315610855576108553385610f9e565b6000838152600760209081526040909120825181558183015180518493610883926001850192910190611a93565b5060408201516002820180546001600160a01b0392831673ffffffffffffffffffffffffffffffffffffffff199091161790556060830151600392830180546080909501511515600160a01b027fffffffffffffffffffffff00000000000000000000000000000000000000000090951691909216179290921790915561090d9080546001019055565b6109198233308a6115dd565b61092260018055565b604080518481526001600160a01b038a16602082015290810188905233907f25ac57b911b0f66b64c294827f539545fbc3ddd002cafab117776274f3241e4c9060600160405180910390a2505095945050505050565b6109806115b2565b61098983611674565b6109938282611211565b60008381526007602052604090206003810154600160a01b900460ff16151560011415Line truncated
"bytecode": "0x608060405260018055604051620028c0380380620028c08339810160408190526200002a916200049d565b600080546001600160a01b031916339081178255604051909182917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76908290a3506200007685620000a3565b620000818362000133565b6200008c84620001bd565b620000988282620002a1565b505050505062000620565b6000546001600160a01b03163314620000f25760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b806004557f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b8511816040516200012891815260200190565b60405180910390a150565b6000546001600160a01b031633146200017e5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b60028190556040516001600160a01b03821681527fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9060200162000128565b6000546001600160a01b03163314620002085760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b80516000905b808210156200026e57600062000246848481518110620002325762000232620005bb565b60200260200101516200038760201b60201c565b6000908152600660205260409020805460ff191660019081179091559290920191506200020e565b50507f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d781604051620001289190620005d1565b6000546001600160a01b03163314620002ec5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b815180620003025763df9578836000526004601cfd5b81518114620003195763ff633a386000526004601cfd5b60208301602083016020830282015b8083146200037f578251600052600b60205260406000208251815550815183517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a600080a360208301925060208201915062000328565b505050505050565b600c1b611000600160ac1b031690565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715620003d857620003d862000397565b604052919050565b60006001600160401b03821115620003fc57620003fc62000397565b5060051b60200190565b6001600160a01b03811681146200041c57600080fd5b50565b600082601f8301126200043157600080fd5b815160206200044a6200044483620003e0565b620003ad565b82815260059290921b840181019181810190868411156200046a57600080fd5b8286015b8481101562000492578051620004848162000406565b83529183019183016200046e565b509695505050505050565b600080600080600060a08688031215620004b657600080fd5b8551602080880151919650906001600160401b0380821115620004d857600080fd5b620004e68a838b016200041f565b965060408901519150620004fa8262000406565b6060890151919550808211156200051057600080fd5b6200051e8a838b016200041f565b945060808901519150808211156200053557600080fd5b508701601f810189136200054857600080fd5b8051620005596200044482620003e0565b81815260059190911b8201830190838101908b8311156200057957600080fd5b928401925b82841015620005a95783518015158114620005995760008081fd5b825292840192908401906200057e565b80955050505050509295509295909350565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b81811015620006145783516001600160a01b031683529284019291840191600101620005ed565b50909695505050505050565b61229080620006306000396000f3fe6080604052600436106101a55760003560e01c806372fada5c116100e15780638e2749d61161008a57806398a268711161006457806398a268711461056b578063c52164c61461059b578063d6e8b973146105bb578063f7d0e04b146105db57600080fd5b80638e2749d6146105045780638e2a3d36146105245780639872dbfe1461055557600080fd5b80637f94f65d116100bb5780637f94f65d1461048c5780638652b37e146104ac5780638da5cb5b146104cc57600080fd5b806372fada5c1461041f578063758d77d41461043f57806377cd38a41461045f57600080fd5b8063363179721161014e578063574983c811610128578063574983c81461039e5780635fd8c710146103be57806369cc6af4146103d35780636a1460241461040357600080fd5b80633631797214610313578063461f3120146103335780634b2ae9801461037357600080fd5b806316d722401161017f57806316d722401461023357806329cc7d10146102dc5780632dfdf0b5146102fc57600080fd5b806304937320146101b15780630d2a2d44146101f157806313af40351461021357600080fd5b366101ac57005b600080fd5b3480156101bd57600080fd5b506101de6101cc366004611b4b565b60056020526000908152604090205481565b6040519081526020015b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611c58565b6105fb565b005b34801561021f57600080fd5b5061021161022e366004611c95565b6106ec565b34801561023f57600080fd5b5061029861024e366004611b4b565b600860205260009081526040902080546001820154600283015460038401546004850154600586015460069096015494959394929391926001600160a01b03918216928216911687565b6040805197885260208801969096529486019390935260608501919091526001600160a01b03908116608085015290811660a08401521660c082015260e0016101e8565b3480156102e857600080fd5b506101de6102f7366004611cb2565b61078d565b34801561030857600080fd5b506003546101de9081565b34801561031f57600080fd5b5061021161032e366004611d8f565b610978565b34801561033f57600080fd5b5061036361034e366004611b4b565b60096020526000908152604090205460ff1681565b60405190151581526020016101e8565b34801561037f57600080fd5b506101de61038e36600461Line truncated
"deployedBytecode": "0x6080604052600436106101a55760003560e01c806372fada5c116100e15780638e2749d61161008a57806398a268711161006457806398a268711461056b578063c52164c61461059b578063d6e8b973146105bb578063f7d0e04b146105db57600080fd5b80638e2749d6146105045780638e2a3d36146105245780639872dbfe1461055557600080fd5b80637f94f65d116100bb5780637f94f65d1461048c5780638652b37e146104ac5780638da5cb5b146104cc57600080fd5b806372fada5c1461041f578063758d77d41461043f57806377cd38a41461045f57600080fd5b8063363179721161014e578063574983c811610128578063574983c81461039e5780635fd8c710146103be57806369cc6af4146103d35780636a1460241461040357600080fd5b80633631797214610313578063461f3120146103335780634b2ae9801461037357600080fd5b806316d722401161017f57806316d722401461023357806329cc7d10146102dc5780632dfdf0b5146102fc57600080fd5b806304937320146101b15780630d2a2d44146101f157806313af40351461021357600080fd5b366101ac57005b600080fd5b3480156101bd57600080fd5b506101de6101cc366004611b4b565b60056020526000908152604090205481565b6040519081526020015b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611c58565b6105fb565b005b34801561021f57600080fd5b5061021161022e366004611c95565b6106ec565b34801561023f57600080fd5b5061029861024e366004611b4b565b600860205260009081526040902080546001820154600283015460038401546004850154600586015460069096015494959394929391926001600160a01b03918216928216911687565b6040805197885260208801969096529486019390935260608501919091526001600160a01b03908116608085015290811660a08401521660c082015260e0016101e8565b3480156102e857600080fd5b506101de6102f7366004611cb2565b61078d565b34801561030857600080fd5b506003546101de9081565b34801561031f57600080fd5b5061021161032e366004611d8f565b610978565b34801561033f57600080fd5b5061036361034e366004611b4b565b60096020526000908152604090205460ff1681565b60405190151581526020016101e8565b34801561037f57600080fd5b506101de61038e366004611c95565b600c1b611000600160ac1b031690565b3480156103aa57600080fd5b506102116103b9366004611b4b565b610a38565b3480156103ca57600080fd5b50610211610ab6565b3480156103df57600080fd5b506103636103ee366004611c95565b600b6020526000908152604090205460ff1681565b34801561040f57600080fd5b506101de670de0b6b3a764000081565b34801561042b57600080fd5b5061021161043a366004611b4b565b610b40565b34801561044b57600080fd5b5061021161045a366004611ddb565b610bc8565b34801561046b57600080fd5b506101de61047a366004611b4b565b600a6020526000908152604090205481565b34801561049857600080fd5b506102116104a7366004611e3f565b610fbd565b3480156104b857600080fd5b506101de6104c7366004611e6b565b611050565b3480156104d857600080fd5b506000546104ec906001600160a01b031681565b6040516001600160a01b0390911681526020016101e8565b34801561051057600080fd5b5061021161051f366004611f1f565b611230565b34801561053057600080fd5b5061054461053f366004611b4b565b611398565b6040516101e8959493929190611f61565b34801561056157600080fd5b506101de60045481565b34801561057757600080fd5b50610363610586366004611b4b565b60066020526000908152604090205460ff1681565b3480156105a757600080fd5b506002546104ec906001600160a01b031681565b3480156105c757600080fd5b506102116105d6366004611fee565b611462565b3480156105e757600080fd5b506102116105f6366004611c95565b61153a565b6000546001600160a01b031633146106495760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b80516000905b808210156106b057600061068984848151811061066e5761066e6120b8565b6020026020010151611000600160ac1b03600c9190911b1690565b6000908152600660205260409020805460ff1916600190811790915592909201915061064f565b50507f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d7816040516106e191906120ce565b60405180910390a150565b6000546001600160a01b031633146107355760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401610640565b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b6001600160a01b0385166000908152600b6020526040812054869060ff166107c857604051630abc194760e11b815260040160405180910390fd5b6107d06115c1565b915060006040518060a0016040528088815260200187878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050908252503360208201526001600160a01b038a166040820152600160609091015290506108456115d1565b8315610855576108553385610fbd565b6000838152600760209081526040909120825181558183015180518493610883926001850192910190611ab2565b5060408201516002820180546001600160a01b0392831673ffffffffffffffffffffffffffffffffffffffff199091161790556060830151600392830180546080909501511515600160a01b027fffffffffffffffffffffff00000000000000000000000000000000000000000090951691909216179290921790915561090d9080546001019055565b6109198233308a6115fc565b61092260018055565b604080518481526001600160a01b038a16602082015290810188905233907f25ac57b911b0f66b64c294827f539545fbc3ddd002cafab117776274f3241e4c9060600160405180910390a2505095945050505050565b6109806115d1565b61098983611693565b6109938282611230565b60008381526007602052604090206003810154600160a01b900460ff16151560011415Line truncated
"linkReferences": {},
"deployedLinkReferences": {}
}
+2 -1
View File
@@ -28,7 +28,8 @@ interface EventAndErrors {
);
event LockReleased(
address indexed buyer,
bytes32 lockId
bytes32 lockId,
uint256 amount
);
event LockReturned(
address indexed buyer,
+34 -27
View File
@@ -34,11 +34,10 @@ contract P2PIX is
IReputation public reputation;
Counters.Counter public depositCount;
/// @dev Default blocks that lock will hold tokens.
uint256 public defaultLockBlocks;
/// @dev The scalar of BRZ token.
uint256 constant public WAD = 1e18;
uint256 public constant WAD = 1e18;
/// @dev Stores an relayer's last computed credit.
mapping(uint256 => uint256) public userRecord;
@@ -213,8 +212,10 @@ contract P2PIX is
uint256 spendLimit;
(spendLimit) = _limiter(userCredit / WAD);
if (l.amount > (spendLimit * WAD) || l.amount > 1e6 ether)
revert AmountNotAllowed();
if (
l.amount > (spendLimit * WAD) ||
l.amount > 1e6 ether
) revert AmountNotAllowed();
_addLock(lockID, l, d);
// Halt execution and output `lockID`.
@@ -324,7 +325,7 @@ contract P2PIX is
}
}
emit LockReleased(l.buyerAddress, lockID);
emit LockReleased(l.buyerAddress, lockID, lockAmount);
}
/// @notice Unlocks expired locks.
@@ -333,9 +334,9 @@ contract P2PIX is
/// @dev For each successfull unexpired lock recovered,
/// `userRecord[_castAddrToKey(l.relayerAddress)]` is decreased by half of its value.
/// @dev Function sighash: 0x8e2749d6.
function unlockExpired(
bytes32[] calldata lockIDs
) public {
function unlockExpired(bytes32[] calldata lockIDs)
public
{
uint256 i;
uint256 locksSize = lockIDs.length;
@@ -403,10 +404,9 @@ contract P2PIX is
emit DepositWithdrawn(msg.sender, depositID, amount);
}
function setRoot(
address addr,
bytes32 merkleroot
) public {
function setRoot(address addr, bytes32 merkleroot)
public
{
if (addr == msg.sender) {
sellerAllowList[
_castAddrToKey(addr)
@@ -425,27 +425,30 @@ contract P2PIX is
emit FundsWithdrawn(msg.sender, balance);
}
function setReputation(
IReputation _reputation
) public onlyOwner {
function setReputation(IReputation _reputation)
public
onlyOwner
{
assembly {
sstore(reputation.slot, _reputation)
}
emit ReputationUpdated(address(_reputation));
}
function setDefaultLockBlocks(
uint256 _blocks
) public onlyOwner {
function setDefaultLockBlocks(uint256 _blocks)
public
onlyOwner
{
assembly {
sstore(defaultLockBlocks.slot, _blocks)
}
emit LockBlocksUpdated(_blocks);
}
function setValidSigners(
address[] memory _validSigners
) public onlyOwner {
function setValidSigners(address[] memory _validSigners)
public
onlyOwner
{
unchecked {
uint256 i;
uint256 len = _validSigners.length;
@@ -589,9 +592,11 @@ contract P2PIX is
) revert AddressDenied();
}
function _limiter(
uint256 _userCredit
) internal view returns (uint256 _spendLimit) {
function _limiter(uint256 _userCredit)
internal
view
returns (uint256 _spendLimit)
{
// enconde the fx sighash and args
bytes memory encodedParams = abi.encodeWithSelector(
IReputation.limiter.selector,
@@ -631,9 +636,11 @@ contract P2PIX is
/// @notice Public method that handles `address`
/// to `uint256` safe type casting.
/// @dev Function sighash: 0x4b2ae980.
function _castAddrToKey(
address _addr
) public pure returns (uint256 _key) {
function _castAddrToKey(address _addr)
public
pure
returns (uint256 _key)
{
_key = uint256(uint160(address(_addr))) << 12;
}
}
+8 -5
View File
@@ -23,7 +23,7 @@ export interface EventAndErrorsInterface extends utils.Interface {
"FundsWithdrawn(address,uint256)": EventFragment;
"LockAdded(address,bytes32,uint256,uint256)": EventFragment;
"LockBlocksUpdated(uint256)": EventFragment;
"LockReleased(address,bytes32)": EventFragment;
"LockReleased(address,bytes32,uint256)": EventFragment;
"LockReturned(address,bytes32)": EventFragment;
"ReputationUpdated(address)": EventFragment;
"RootUpdated(address,bytes32)": EventFragment;
@@ -131,9 +131,10 @@ export type LockBlocksUpdatedEventFilter =
export interface LockReleasedEventObject {
buyer: string;
lockId: string;
amount: BigNumber;
}
export type LockReleasedEvent = TypedEvent<
[string, string],
[string, string, BigNumber],
LockReleasedEventObject
>;
@@ -278,13 +279,15 @@ export interface EventAndErrors extends BaseContract {
"LockBlocksUpdated(uint256)"(blocks?: null): LockBlocksUpdatedEventFilter;
LockBlocksUpdated(blocks?: null): LockBlocksUpdatedEventFilter;
"LockReleased(address,bytes32)"(
"LockReleased(address,bytes32,uint256)"(
buyer?: PromiseOrValue<string> | null,
lockId?: null
lockId?: null,
amount?: null
): LockReleasedEventFilter;
LockReleased(
buyer?: PromiseOrValue<string> | null,
lockId?: null
lockId?: null,
amount?: null
): LockReleasedEventFilter;
"LockReturned(address,bytes32)"(
@@ -262,6 +262,12 @@ const _abi = [
name: "lockId",
type: "bytes32",
},
{
indexed: false,
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "LockReleased",
type: "event",
@@ -302,6 +302,12 @@ const _abi = [
name: "lockId",
type: "bytes32",
},
{
indexed: false,
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "LockReleased",
type: "event",
@@ -923,7 +929,7 @@ const _abi = [
];
const _bytecode =
"0x608060405260018055604051620028a1380380620028a18339810160408190526200002a916200049d565b600080546001600160a01b031916339081178255604051909182917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76908290a3506200007685620000a3565b620000818362000133565b6200008c84620001bd565b620000988282620002a1565b505050505062000620565b6000546001600160a01b03163314620000f25760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b806004557f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b8511816040516200012891815260200190565b60405180910390a150565b6000546001600160a01b031633146200017e5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b60028190556040516001600160a01b03821681527fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9060200162000128565b6000546001600160a01b03163314620002085760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b80516000905b808210156200026e57600062000246848481518110620002325762000232620005bb565b60200260200101516200038760201b60201c565b6000908152600660205260409020805460ff191660019081179091559290920191506200020e565b50507f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d781604051620001289190620005d1565b6000546001600160a01b03163314620002ec5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b815180620003025763df9578836000526004601cfd5b81518114620003195763ff633a386000526004601cfd5b60208301602083016020830282015b8083146200037f578251600052600b60205260406000208251815550815183517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a600080a360208301925060208201915062000328565b505050505050565b600c1b611000600160ac1b031690565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715620003d857620003d862000397565b604052919050565b60006001600160401b03821115620003fc57620003fc62000397565b5060051b60200190565b6001600160a01b03811681146200041c57600080fd5b50565b600082601f8301126200043157600080fd5b815160206200044a6200044483620003e0565b620003ad565b82815260059290921b840181019181810190868411156200046a57600080fd5b8286015b8481101562000492578051620004848162000406565b83529183019183016200046e565b509695505050505050565b600080600080600060a08688031215620004b657600080fd5b8551602080880151919650906001600160401b0380821115620004d857600080fd5b620004e68a838b016200041f565b965060408901519150620004fa8262000406565b6060890151919550808211156200051057600080fd5b6200051e8a838b016200041f565b945060808901519150808211156200053557600080fd5b508701601f810189136200054857600080fd5b8051620005596200044482620003e0565b81815260059190911b8201830190838101908b8311156200057957600080fd5b928401925b82841015620005a95783518015158114620005995760008081fd5b825292840192908401906200057e565b80955050505050509295509295909350565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b81811015620006145783516001600160a01b031683529284019291840191600101620005ed565b50909695505050505050565b61227180620006306000396000f3fe6080604052600436106101a55760003560e01c806372fada5c116100e15780638e2749d61161008a57806398a268711161006457806398a268711461056b578063c52164c61461059b578063d6e8b973146105bb578063f7d0e04b146105db57600080fd5b80638e2749d6146105045780638e2a3d36146105245780639872dbfe1461055557600080fd5b80637f94f65d116100bb5780637f94f65d1461048c5780638652b37e146104ac5780638da5cb5b146104cc57600080fd5b806372fada5c1461041f578063758d77d41461043f57806377cd38a41461045f57600080fd5b8063363179721161014e578063574983c811610128578063574983c81461039e5780635fd8c710146103be57806369cc6af4146103d35780636a1460241461040357600080fd5b80633631797214610313578063461f3120146103335780634b2ae9801461037357600080fd5b806316d722401161017f57806316d722401461023357806329cc7d10146102dc5780632dfdf0b5146102fc57600080fd5b806304937320146101b15780630d2a2d44146101f157806313af40351461021357600080fd5b366101ac57005b600080fd5b3480156101bd57600080fd5b506101de6101cc366004611b2c565b60056020526000908152604090205481565b6040519081526020015b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611c39565b6105fb565b005b34801561021f57600080fd5b5061021161022e366004611c76565b6106ec565b34801561023f57600080fd5b5061029861024e366004611b2c565b600860205260009081526040902080546001820154600283015460038401546004850154600586015460069096015494959394929391926001600160a01b03918216928216911687565b6040805197885260208801969096529486019390935260608501919091526001600160a01b03908116608085015290811660a08401521660c082015260e0016101e8565b3480156102e857600080fd5b506101de6102f7366004611c93565b61078d565b34801561030857600080fd5b506003546101de9081565b34801561031f57600080fd5b5061021161032e366004611d70565b610978565b34801561033f57600080fd5b5061036361034e366004611b2c565b60096020526000908152604090205460ff1681565b60405190151581526020016101e8565b34801561037f57600080fd5b506101de61038e366004611c76565b600cLine truncated
"0x608060405260018055604051620028c0380380620028c08339810160408190526200002a916200049d565b600080546001600160a01b031916339081178255604051909182917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76908290a3506200007685620000a3565b620000818362000133565b6200008c84620001bd565b620000988282620002a1565b505050505062000620565b6000546001600160a01b03163314620000f25760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b806004557f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b8511816040516200012891815260200190565b60405180910390a150565b6000546001600160a01b031633146200017e5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b60028190556040516001600160a01b03821681527fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9060200162000128565b6000546001600160a01b03163314620002085760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b80516000905b808210156200026e57600062000246848481518110620002325762000232620005bb565b60200260200101516200038760201b60201c565b6000908152600660205260409020805460ff191660019081179091559290920191506200020e565b50507f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d781604051620001289190620005d1565b6000546001600160a01b03163314620002ec5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401620000e9565b815180620003025763df9578836000526004601cfd5b81518114620003195763ff633a386000526004601cfd5b60208301602083016020830282015b8083146200037f578251600052600b60205260406000208251815550815183517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a600080a360208301925060208201915062000328565b505050505050565b600c1b611000600160ac1b031690565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715620003d857620003d862000397565b604052919050565b60006001600160401b03821115620003fc57620003fc62000397565b5060051b60200190565b6001600160a01b03811681146200041c57600080fd5b50565b600082601f8301126200043157600080fd5b815160206200044a6200044483620003e0565b620003ad565b82815260059290921b840181019181810190868411156200046a57600080fd5b8286015b8481101562000492578051620004848162000406565b83529183019183016200046e565b509695505050505050565b600080600080600060a08688031215620004b657600080fd5b8551602080880151919650906001600160401b0380821115620004d857600080fd5b620004e68a838b016200041f565b965060408901519150620004fa8262000406565b6060890151919550808211156200051057600080fd5b6200051e8a838b016200041f565b945060808901519150808211156200053557600080fd5b508701601f810189136200054857600080fd5b8051620005596200044482620003e0565b81815260059190911b8201830190838101908b8311156200057957600080fd5b928401925b82841015620005a95783518015158114620005995760008081fd5b825292840192908401906200057e565b80955050505050509295509295909350565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b81811015620006145783516001600160a01b031683529284019291840191600101620005ed565b50909695505050505050565b61229080620006306000396000f3fe6080604052600436106101a55760003560e01c806372fada5c116100e15780638e2749d61161008a57806398a268711161006457806398a268711461056b578063c52164c61461059b578063d6e8b973146105bb578063f7d0e04b146105db57600080fd5b80638e2749d6146105045780638e2a3d36146105245780639872dbfe1461055557600080fd5b80637f94f65d116100bb5780637f94f65d1461048c5780638652b37e146104ac5780638da5cb5b146104cc57600080fd5b806372fada5c1461041f578063758d77d41461043f57806377cd38a41461045f57600080fd5b8063363179721161014e578063574983c811610128578063574983c81461039e5780635fd8c710146103be57806369cc6af4146103d35780636a1460241461040357600080fd5b80633631797214610313578063461f3120146103335780634b2ae9801461037357600080fd5b806316d722401161017f57806316d722401461023357806329cc7d10146102dc5780632dfdf0b5146102fc57600080fd5b806304937320146101b15780630d2a2d44146101f157806313af40351461021357600080fd5b366101ac57005b600080fd5b3480156101bd57600080fd5b506101de6101cc366004611b4b565b60056020526000908152604090205481565b6040519081526020015b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611c58565b6105fb565b005b34801561021f57600080fd5b5061021161022e366004611c95565b6106ec565b34801561023f57600080fd5b5061029861024e366004611b4b565b600860205260009081526040902080546001820154600283015460038401546004850154600586015460069096015494959394929391926001600160a01b03918216928216911687565b6040805197885260208801969096529486019390935260608501919091526001600160a01b03908116608085015290811660a08401521660c082015260e0016101e8565b3480156102e857600080fd5b506101de6102f7366004611cb2565b61078d565b34801561030857600080fd5b506003546101de9081565b34801561031f57600080fd5b5061021161032e366004611d8f565b610978565b34801561033f57600080fd5b5061036361034e366004611b4b565b60096020526000908152604090205460ff1681565b60405190151581526020016101e8565b34801561037f57600080fd5b506101de61038e366004611c95565b600cLine truncated
type P2PIXConstructorParams =
| [signer?: Signer]
+8 -5
View File
@@ -286,7 +286,7 @@ export interface P2PIXInterface extends utils.Interface {
"FundsWithdrawn(address,uint256)": EventFragment;
"LockAdded(address,bytes32,uint256,uint256)": EventFragment;
"LockBlocksUpdated(uint256)": EventFragment;
"LockReleased(address,bytes32)": EventFragment;
"LockReleased(address,bytes32,uint256)": EventFragment;
"LockReturned(address,bytes32)": EventFragment;
"OwnerUpdated(address,address)": EventFragment;
"ReputationUpdated(address)": EventFragment;
@@ -396,9 +396,10 @@ export type LockBlocksUpdatedEventFilter =
export interface LockReleasedEventObject {
buyer: string;
lockId: string;
amount: BigNumber;
}
export type LockReleasedEvent = TypedEvent<
[string, string],
[string, string, BigNumber],
LockReleasedEventObject
>;
@@ -1001,13 +1002,15 @@ export interface P2PIX extends BaseContract {
"LockBlocksUpdated(uint256)"(blocks?: null): LockBlocksUpdatedEventFilter;
LockBlocksUpdated(blocks?: null): LockBlocksUpdatedEventFilter;
"LockReleased(address,bytes32)"(
"LockReleased(address,bytes32,uint256)"(
buyer?: PromiseOrValue<string> | null,
lockId?: null
lockId?: null,
amount?: null
): LockReleasedEventFilter;
LockReleased(
buyer?: PromiseOrValue<string> | null,
lockId?: null
lockId?: null,
amount?: null
): LockReleasedEventFilter;
"LockReturned(address,bytes32)"(
+9 -4
View File
@@ -1251,7 +1251,7 @@ describe("P2PIX", () => {
expect(tx).to.be.ok;
await expect(tx)
.to.emit(p2pix, "LockReleased")
.withArgs(acc02.address, lockID);
.withArgs(acc02.address, lockID, storage1.amount);
expect(storage1.expirationBlock).to.eq(
ethers.BigNumber.from(16),
);
@@ -1358,6 +1358,11 @@ describe("P2PIX", () => {
["uint256", "uint256", "address"],
[0, 25, acc02.address],
);
const storage1: Lock = await p2pix.callStatic.mapLocks(lockID);
const storage2: Lock = await p2pix.callStatic.mapLocks(lockID2);
const storage3: Lock = await p2pix.callStatic.mapLocks(lockID3);
// relayerPremium == 0
const tx = await p2pix
.connect(acc01)
@@ -1412,13 +1417,13 @@ describe("P2PIX", () => {
expect(tx2).to.be.ok;
await expect(tx)
.to.emit(p2pix, "LockReleased")
.withArgs(acc02.address, lockID);
.withArgs(acc02.address, lockID, storage1.amount);
await expect(tx1)
.to.emit(p2pix, "LockReleased")
.withArgs(acc02.address, lockID2);
.withArgs(acc02.address, lockID2, storage2.amount);
await expect(tx2)
.to.emit(p2pix, "LockReleased")
.withArgs(acc02.address, lockID3);
.withArgs(acc02.address, lockID3, storage3.amount);
expect(used1).to.eq(true);
expect(used2).to.eq(true);
expect(used3).to.eq(true);