UNPKG

@excubiae/contracts

Version:
1 lines 14.4 kB
{"abi":[{"type":"function","name":"check","inputs":[{"name":"subject","type":"address","internalType":"address"},{"name":"evidence","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"checked","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getAppendedBytes","inputs":[],"outputs":[{"name":"appendedBytes","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialized","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"error","name":"AlreadyInitialized","inputs":[]}],"bytecode":{"object":"0x6080604052348015600e575f5ffd5b506102a78061001c5f395ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c8063158ef93e1461004e5780638129fc1c1461006f578063b41a4b1914610079578063e2b240851461008e575b5f5ffd5b5f5461005a9060ff1681565b60405190151581526020015b60405180910390f35b6100776100a5565b005b6100816100af565b6040516100669190610186565b61005a61009c3660046101d9565b50600192915050565b6100ad6100be565b565b60606100b96100c6565b905090565b6100ad6100d1565b60606100b930610139565b5f5460ff161561010d576040517f0dc149f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b60405164ffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3833b0116808252602090810190602d908301843c60408101815101604052919050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b5f5f5f604084860312156101eb575f5ffd5b833573ffffffffffffffffffffffffffffffffffffffff8116811461020e575f5ffd5b9250602084013567ffffffffffffffff811115610229575f5ffd5b8401601f81018613610239575f5ffd5b803567ffffffffffffffff81111561024f575f5ffd5b866020828401011115610260575f5ffd5b93966020919091019550929350505056fea264697066735822122033c30c40968a7ddf2e8260a9e3006dc7f6c3a8a82a2262a5feb7362de7c7163464736f6c634300081c0033","sourceMap":"256:560:20:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b506004361061004a575f3560e01c8063158ef93e1461004e5780638129fc1c1461006f578063b41a4b1914610079578063e2b240851461008e575b5f5ffd5b5f5461005a9060ff1681565b60405190151581526020015b60405180910390f35b6100776100a5565b005b6100816100af565b6040516100669190610186565b61005a61009c3660046101d9565b50600192915050565b6100ad6100be565b565b60606100b96100c6565b905090565b6100ad6100d1565b60606100b930610139565b5f5460ff161561010d576040517f0dc149f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b60405164ffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3833b0116808252602090810190602d908301843c60408101815101604052919050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b5f5f5f604084860312156101eb575f5ffd5b833573ffffffffffffffffffffffffffffffffffffffff8116811461020e575f5ffd5b9250602084013567ffffffffffffffff811115610229575f5ffd5b8401601f81018613610239575f5ffd5b803567ffffffffffffffff81111561024f575f5ffd5b866020828401011115610260575f5ffd5b93966020919091019550929350505056fea264697066735822122033c30c40968a7ddf2e8260a9e3006dc7f6c3a8a82a2262a5feb7362de7c7163464736f6c634300081c0033","sourceMap":"256:560:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;556:23:63;;;;;;;;;;;;179:14:133;;172:22;154:41;;142:2;127:18;556:23:63;;;;;;;;754:61;;;:::i;:::-;;1047:122;;;:::i;:::-;;;;;;;:::i;861:152:1:-;;;;;;:::i;:::-;-1:-1:-1;803:4:20;;974:32:1;-1:-1:-1;;861:152:1;754:61:63;795:13;:11;:13::i;:::-;754:61::o;1047:122::-;1098:26;1143:19;:17;:19::i;:::-;1136:26;;1047:122;:::o;346:77:20:-;397:19;:17;:19::i;1742:147:63:-;1802:26;1847:35;1876:4;1847:20;:35::i;1388:129::-;1442:11;;;;1438:44;;;1462:20;;;;;;;;;;;;;;1438:44;1492:11;:18;;;;1506:4;1492:18;;;1388:129::o;37363:452:132:-;37534:4;37528:11;37569:12;37583:32;37587:21;;37583:32;37565:51;37552:65;;;37713:4;37696:22;;;;37610:4;;37673:15;;37599:8;37651:68;37772:4;37766;37762:15;37755:4;37749:11;37745:33;37739:4;37732:47;37363:452;;;:::o;206:475:133:-;353:2;342:9;335:21;316:4;385:6;379:13;428:6;423:2;412:9;408:18;401:34;487:6;482:2;474:6;470:15;465:2;454:9;450:18;444:50;543:1;538:2;529:6;518:9;514:22;510:31;503:42;672:2;602:66;597:2;589:6;585:15;581:88;570:9;566:104;562:113;554:121;;;206:475;;;;:::o;686:783::-;765:6;773;781;834:2;822:9;813:7;809:23;805:32;802:52;;;850:1;847;840:12;802:52;889:9;876:23;939:42;932:5;928:54;921:5;918:65;908:93;;997:1;994;987:12;908:93;1020:5;-1:-1:-1;1076:2:133;1061:18;;1048:32;1103:18;1092:30;;1089:50;;;1135:1;1132;1125:12;1089:50;1158:22;;1211:4;1203:13;;1199:27;-1:-1:-1;1189:55:133;;1240:1;1237;1230:12;1189:55;1280:2;1267:16;1306:18;1298:6;1295:30;1292:50;;;1338:1;1335;1328:12;1292:50;1383:7;1378:2;1369:6;1365:2;1361:15;1357:24;1354:37;1351:57;;;1404:1;1401;1394:12;1351:57;686:783;;1435:2;1427:11;;;;;-1:-1:-1;1457:6:133;;-1:-1:-1;;;686:783:133:o","linkReferences":{}},"methodIdentifiers":{"check(address,bytes)":"e2b24085","getAppendedBytes()":"b41a4b19","initialize()":"8129fc1c","initialized()":"158ef93e"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"subject\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"evidence\",\"type\":\"bytes\"}],\"name\":\"check\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"checked\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAppendedBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"appendedBytes\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Extends BaseChecker to implement FreeForAll validation logic.\",\"kind\":\"dev\",\"methods\":{\"check(address,bytes)\":{\"details\":\"External view function that calls the `_check` method, allowing derived contracts to implement custom validation logic.\",\"params\":{\"evidence\":\"Custom validation data.\",\"subject\":\"The address to validate.\"},\"returns\":{\"checked\":\"Boolean indicating whether the validation passed.\"}},\"getAppendedBytes()\":{\"details\":\"Leverages `LibClone` to extract arguments from the clone's runtime bytecode.\",\"returns\":{\"appendedBytes\":\"The appended bytes extracted from the clone.\"}},\"initialize()\":{\"details\":\"Calls the internal `_initialize` function to set up the clone. Reverts if the clone is already initialized.\"}},\"title\":\"FreeForAllChecker\",\"version\":1},\"userdoc\":{\"errors\":{\"AlreadyInitialized()\":[{\"notice\":\"Error thrown when the clone is already initialized.\"}]},\"kind\":\"user\",\"methods\":{\"check(address,bytes)\":{\"notice\":\"Validates a subject's evidence.\"},\"getAppendedBytes()\":{\"notice\":\"Retrieves appended arguments from the clone.\"},\"initialize()\":{\"notice\":\"Initializes the clone.\"},\"initialized()\":{\"notice\":\"Tracks whether the clone has been initialized.\"}},\"notice\":\"Free for all validator.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/extensions/freeForAll/FreeForAllChecker.sol\":\"FreeForAllChecker\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200000},\"remappings\":[\":@openzeppelin/=node_modules/@openzeppelin/\",\":@semaphore-protocol/=node_modules/@semaphore-protocol/\",\":@solady/=node_modules/solady/\",\":@zk-kit/=node_modules/@zk-kit/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=node_modules/forge-std/\",\":hardhat/=node_modules/hardhat/\",\":poseidon-solidity/=node_modules/poseidon-solidity/\",\":solady/=node_modules/solady/\"]},\"sources\":{\"contracts/checker/BaseChecker.sol\":{\"keccak256\":\"0xd5a0aa62b6c617581fad10a727f4961c9f567983c58fea0c00cd9599712f5e8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7572f9ace9d914d465401d506ecf9aa360e5458eae4a15fc9f9be1da7a925ab9\",\"dweb:/ipfs/QmX5cvUd6Vr7Jy1cYLcMtGfFjs4RTfgHQ4JSBnUp9CMJSs\"]},\"contracts/extensions/freeForAll/FreeForAllChecker.sol\":{\"keccak256\":\"0xb03341e3af4056dbb84b84aaa2c88f2da333cedb2d528e5af892e0909c4ba3b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://903099057e725a85c14021cf1ca703733ef9647dfc58af78909fa2db2c60d243\",\"dweb:/ipfs/QmaQCryfepr7DtBzucxJnWMtfJxG9my6o2zVMGJEpEfdTb\"]},\"contracts/interfaces/IBaseChecker.sol\":{\"keccak256\":\"0x2e78c67cfe2594fbe999da0a5102099feec5b7344023f6f95c862130d8097b4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dd6235abb53aed81c48eef7847af7fd9533ceb81afd3670541e29c1f41c275c1\",\"dweb:/ipfs/Qmbjmk4hjb4awhdk3v7WbZC3NuSeWoioewcp8FyBhkMfRB\"]},\"contracts/interfaces/IClone.sol\":{\"keccak256\":\"0xc3f6a08a3ce1db7e80dd496c6631d4d9d7a409729e67ed543411baac396369e7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d9e531790090250216d4c89b58e06b6cb942d79e94614c4e70f57021c4fdccef\",\"dweb:/ipfs/QmaGuDzcBxCr1XpWQiqB6M7GcsVaXeaouQFXsN53MnKLff\"]},\"contracts/proxy/Clone.sol\":{\"keccak256\":\"0x6453f61944f6a5e19d23c930abae166f01bc1613506fd0204e8c541e611b8164\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://520e2bdb7935ac9181d7474a61129151bb2096513e62793ff1c5220827662720\",\"dweb:/ipfs/QmXCDDZfJjX9EaK6QtwDE9FHK7z6ZsG6Ebgrt4CFxxL1wU\"]},\"node_modules/solady/src/utils/LibClone.sol\":{\"keccak256\":\"0x1388494b421db04cf6f33ab69580edc5b187328688818504b87eaea9fa3c0d2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f6bf027d6fe4f102360bf7e988923f73510697a87d970b28093a0d950d9a3e5\",\"dweb:/ipfs/QmUhdrSqiwhBp2cZPef6jcTfQ8Md3KoyfnK2ZteseAvude\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AlreadyInitialized"},{"inputs":[{"internalType":"address","name":"subject","type":"address"},{"internalType":"bytes","name":"evidence","type":"bytes"}],"stateMutability":"view","type":"function","name":"check","outputs":[{"internalType":"bool","name":"checked","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getAppendedBytes","outputs":[{"internalType":"bytes","name":"appendedBytes","type":"bytes"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"check(address,bytes)":{"details":"External view function that calls the `_check` method, allowing derived contracts to implement custom validation logic.","params":{"evidence":"Custom validation data.","subject":"The address to validate."},"returns":{"checked":"Boolean indicating whether the validation passed."}},"getAppendedBytes()":{"details":"Leverages `LibClone` to extract arguments from the clone's runtime bytecode.","returns":{"appendedBytes":"The appended bytes extracted from the clone."}},"initialize()":{"details":"Calls the internal `_initialize` function to set up the clone. Reverts if the clone is already initialized."}},"version":1},"userdoc":{"kind":"user","methods":{"check(address,bytes)":{"notice":"Validates a subject's evidence."},"getAppendedBytes()":{"notice":"Retrieves appended arguments from the clone."},"initialize()":{"notice":"Initializes the clone."},"initialized()":{"notice":"Tracks whether the clone has been initialized."}},"version":1}},"settings":{"remappings":["@openzeppelin/=node_modules/@openzeppelin/","@semaphore-protocol/=node_modules/@semaphore-protocol/","@solady/=node_modules/solady/","@zk-kit/=node_modules/@zk-kit/","eth-gas-reporter/=node_modules/eth-gas-reporter/","forge-std/=node_modules/forge-std/","hardhat/=node_modules/hardhat/","poseidon-solidity/=node_modules/poseidon-solidity/","solady/=node_modules/solady/"],"optimizer":{"enabled":true,"runs":200000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/extensions/freeForAll/FreeForAllChecker.sol":"FreeForAllChecker"},"evmVersion":"prague","libraries":{}},"sources":{"contracts/checker/BaseChecker.sol":{"keccak256":"0xd5a0aa62b6c617581fad10a727f4961c9f567983c58fea0c00cd9599712f5e8c","urls":["bzz-raw://7572f9ace9d914d465401d506ecf9aa360e5458eae4a15fc9f9be1da7a925ab9","dweb:/ipfs/QmX5cvUd6Vr7Jy1cYLcMtGfFjs4RTfgHQ4JSBnUp9CMJSs"],"license":"MIT"},"contracts/extensions/freeForAll/FreeForAllChecker.sol":{"keccak256":"0xb03341e3af4056dbb84b84aaa2c88f2da333cedb2d528e5af892e0909c4ba3b9","urls":["bzz-raw://903099057e725a85c14021cf1ca703733ef9647dfc58af78909fa2db2c60d243","dweb:/ipfs/QmaQCryfepr7DtBzucxJnWMtfJxG9my6o2zVMGJEpEfdTb"],"license":"MIT"},"contracts/interfaces/IBaseChecker.sol":{"keccak256":"0x2e78c67cfe2594fbe999da0a5102099feec5b7344023f6f95c862130d8097b4a","urls":["bzz-raw://dd6235abb53aed81c48eef7847af7fd9533ceb81afd3670541e29c1f41c275c1","dweb:/ipfs/Qmbjmk4hjb4awhdk3v7WbZC3NuSeWoioewcp8FyBhkMfRB"],"license":"MIT"},"contracts/interfaces/IClone.sol":{"keccak256":"0xc3f6a08a3ce1db7e80dd496c6631d4d9d7a409729e67ed543411baac396369e7","urls":["bzz-raw://d9e531790090250216d4c89b58e06b6cb942d79e94614c4e70f57021c4fdccef","dweb:/ipfs/QmaGuDzcBxCr1XpWQiqB6M7GcsVaXeaouQFXsN53MnKLff"],"license":"MIT"},"contracts/proxy/Clone.sol":{"keccak256":"0x6453f61944f6a5e19d23c930abae166f01bc1613506fd0204e8c541e611b8164","urls":["bzz-raw://520e2bdb7935ac9181d7474a61129151bb2096513e62793ff1c5220827662720","dweb:/ipfs/QmXCDDZfJjX9EaK6QtwDE9FHK7z6ZsG6Ebgrt4CFxxL1wU"],"license":"MIT"},"node_modules/solady/src/utils/LibClone.sol":{"keccak256":"0x1388494b421db04cf6f33ab69580edc5b187328688818504b87eaea9fa3c0d2c","urls":["bzz-raw://8f6bf027d6fe4f102360bf7e988923f73510697a87d970b28093a0d950d9a3e5","dweb:/ipfs/QmUhdrSqiwhBp2cZPef6jcTfQ8Md3KoyfnK2ZteseAvude"],"license":"MIT"}},"version":1},"id":20}