@settlemint/solidity-attestation-service
Version:
Smart contract set to use the Ethereum Attestation Service in SettleMint
462 lines • 15.5 kB
JSON
{
"compiler": {
"version": "0.8.27+commit.40a35a09"
},
"language": "Solidity",
"output": {
"abi": [
{
"inputs": [],
"type": "error",
"name": "InvalidNonce"
},
{
"inputs": [],
"type": "error",
"name": "InvalidShortString"
},
{
"inputs": [
{
"internalType": "string",
"name": "str",
"type": "string"
}
],
"type": "error",
"name": "StringTooLong"
},
{
"inputs": [],
"type": "event",
"name": "EIP712DomainChanged",
"anonymous": false
},
{
"inputs": [
{
"internalType": "uint256",
"name": "oldNonce",
"type": "uint256",
"indexed": false
},
{
"internalType": "uint256",
"name": "newNonce",
"type": "uint256",
"indexed": false
}
],
"type": "event",
"name": "NonceIncreased",
"anonymous": false
},
{
"inputs": [],
"stateMutability": "view",
"type": "function",
"name": "eip712Domain",
"outputs": [
{
"internalType": "bytes1",
"name": "fields",
"type": "bytes1"
},
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "version",
"type": "string"
},
{
"internalType": "uint256",
"name": "chainId",
"type": "uint256"
},
{
"internalType": "address",
"name": "verifyingContract",
"type": "address"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "uint256[]",
"name": "extensions",
"type": "uint256[]"
}
]
},
{
"inputs": [],
"stateMutability": "pure",
"type": "function",
"name": "getAttestTypeHash",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
]
},
{
"inputs": [],
"stateMutability": "view",
"type": "function",
"name": "getDomainSeparator",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
]
},
{
"inputs": [],
"stateMutability": "view",
"type": "function",
"name": "getName",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
]
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"stateMutability": "view",
"type": "function",
"name": "getNonce",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
]
},
{
"inputs": [],
"stateMutability": "pure",
"type": "function",
"name": "getRevokeTypeHash",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
]
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newNonce",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function",
"name": "increaseNonce"
}
],
"devdoc": {
"kind": "dev",
"methods": {
"constructor": {
"details": "Creates a new EIP1271Verifier instance.",
"params": {
"version": "The current major version of the signing domain"
}
},
"eip712Domain()": {
"details": "returns the fields and values that describe the domain separator used by this contract for EIP-712 signature."
},
"getAttestTypeHash()": {
"returns": {
"_0": "The EIP712 type hash for the attest function."
}
},
"getDomainSeparator()": {
"returns": {
"_0": "The domain separator used in the encoding of the signatures for attest, and revoke."
}
},
"getName()": {
"returns": {
"_0": "The EIP712 name."
}
},
"getNonce(address)": {
"params": {
"account": "The requested account."
},
"returns": {
"_0": "The current nonce."
}
},
"getRevokeTypeHash()": {
"returns": {
"_0": "The EIP712 type hash for the revoke function."
}
},
"increaseNonce(uint256)": {
"params": {
"newNonce": "The (higher) new value."
}
}
},
"version": 1
},
"userdoc": {
"kind": "user",
"methods": {
"getAttestTypeHash()": {
"notice": "Returns the EIP712 type hash for the attest function."
},
"getDomainSeparator()": {
"notice": "Returns the domain separator used in the encoding of the signatures for attest, and revoke."
},
"getName()": {
"notice": "Returns the EIP712 name."
},
"getNonce(address)": {
"notice": "Returns the current nonce per-account."
},
"getRevokeTypeHash()": {
"notice": "Returns the EIP712 type hash for the revoke function."
},
"increaseNonce(uint256)": {
"notice": "Provides users an option to invalidate nonces by increasing their nonces to (higher) new values."
}
},
"version": 1
}
},
"settings": {
"remappings": [
"@ethereum-attestation-service/=node_modules/@ethereum-attestation-service/",
"@openzeppelin/=node_modules/@openzeppelin/",
"forge-std/=lib/forge-std/src/",
"hardhat/=node_modules/hardhat/"
],
"optimizer": {
"enabled": true,
"runs": 200
},
"metadata": {
"bytecodeHash": "ipfs"
},
"compilationTarget": {
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/eip1271/EIP1271Verifier.sol": "EIP1271Verifier"
},
"evmVersion": "cancun",
"libraries": {},
"viaIR": true
},
"sources": {
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/Common.sol": {
"keccak256": "0x957bd2e6d0d6d637f86208b135c29fbaf4412cb08e5e7a61ede16b80561bf685",
"urls": [
"bzz-raw://da1dc9aedbb1d4d39c46c2235918d3adfbc5741dd34a46010cf425d134e7936d",
"dweb:/ipfs/QmWUk6bXnLaghS2riF3GTFEeURCzgYFMA5woa6AsgPwEgc"
],
"license": "MIT"
},
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/IEAS.sol": {
"keccak256": "0xdad0674defce04905dc7935f2756d6c477a6e876c0b1b7094b112a862f164c12",
"urls": [
"bzz-raw://49e448c26c08952df034692d2ab3519dd40a1ebbeae4ce68b294567441933880",
"dweb:/ipfs/QmWHcudjskUSCjgqsNWE65LVfWvcYB2vBn8RB1SmzvRLNR"
],
"license": "MIT"
},
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/ISchemaRegistry.sol": {
"keccak256": "0xea97dcd36a0c422169cbaac06698249e199049b627c16bff93fb8ab829058754",
"urls": [
"bzz-raw://d453a929ef64a69cd31195ec2ee5ed1193bfa29f633e13c960e92154c37ad158",
"dweb:/ipfs/QmXs1Z3njbHs2EMgHonrZDfcwdog4kozHY5tYNrhZK5yqz"
],
"license": "MIT"
},
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/ISemver.sol": {
"keccak256": "0x04a67939b4e1a8d0a51101b8f69f8882930bbdc66319f38023828625b5d1ff18",
"urls": [
"bzz-raw://3dd543fa0e33cef1ea757627f9c2a10a66ee1ce17aa9087f437c5b53a903c7f0",
"dweb:/ipfs/QmXsy6UsGBzF9zPCCjmiwPpCcX3tHqU13TmR67B69tKnR6"
],
"license": "MIT"
},
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/eip1271/EIP1271Verifier.sol": {
"keccak256": "0x590977110db1256cc00416bdf74eb8264a0eda358ccded303610369a2930b614",
"urls": [
"bzz-raw://ef015b3bee8859e6658c0eac6471d05f2991a5f4b6b5c2aa5571bbdab622d6e9",
"dweb:/ipfs/QmUHriGkixE62c5qWjyM9DWZFykDcjQ7T6Tbfi3DPD38ym"
],
"license": "MIT"
},
"node_modules/@ethereum-attestation-service/eas-contracts/contracts/resolver/ISchemaResolver.sol": {
"keccak256": "0xb7d1961ed928c620cddf35c2bf46845b10828bc5d73145214630202ed355b6bb",
"urls": [
"bzz-raw://cf1cabacfb15c9bace8280b540b52e5aa440e1b4eba675f9782c34ce0f03902f",
"dweb:/ipfs/QmakYcK4xbrijzvoaBCmBJK6HeaBqbXxWKtDQ1z62aXwCR"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/interfaces/IERC1271.sol": {
"keccak256": "0x66c7ec42c6c43712be2107a50ab4529379bc76a632b425babec698d9da921ac6",
"urls": [
"bzz-raw://dce2778f0b638adfc5ba29c2c618c855fe725fa74a16846386aa1d56a834aa04",
"dweb:/ipfs/QmPV9oWnzQdi58od266j62xvviavLNHqKLZfm6k2K1qy9E"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/interfaces/IERC5267.sol": {
"keccak256": "0xfb223a85dd0b2175cfbbaa325a744e2cd74ecd17c3df2b77b0722f991d2725ee",
"urls": [
"bzz-raw://84bf1dea0589ec49c8d15d559cc6d86ee493048a89b2d4adb60fbe705a3d89ae",
"dweb:/ipfs/Qmd56n556d529wk2pRMhYhm5nhMDhviwereodDikjs68w1"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/interfaces/IERC7913.sol": {
"keccak256": "0xe5a126930df1d54e4a6dd5fea09010c4a7db0ea974c6c17a1e6082879f5a032b",
"urls": [
"bzz-raw://2f58f5a90328536a6c68289916bfa4ed653d871319c7b2a416ab3f6263c4f2f5",
"dweb:/ipfs/Qmaa9DmgUA16Urz5fuF4RbFz2NaVpNLV41ddwykSdasFUd"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/Address.sol": {
"keccak256": "0x6d0ae6e206645341fd122d278c2cb643dea260c190531f2f3f6a0426e77b00c0",
"urls": [
"bzz-raw://032d1201d839435be2c85b72e33206b3ea980c569d6ebf7fa57d811ab580a82f",
"dweb:/ipfs/QmeqQjAtMvdZT2tG7zm39itcRJkuwu8AEReK6WRnLJ18DD"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/Bytes.sol": {
"keccak256": "0x1613f93e376ab96791fd29f79da754e253c3d766831bc8c42f50545662f49065",
"urls": [
"bzz-raw://e88ee314d50d0f323616f88d0ccf5e4110dbdec2775d8d42523bcc8b76ed36eb",
"dweb:/ipfs/QmQ18ygHRrDdz4AEZXy5PASUHvJk1SNWWKM3TyC1xvDedP"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/Errors.sol": {
"keccak256": "0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123",
"urls": [
"bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf",
"dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/Panic.sol": {
"keccak256": "0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a",
"urls": [
"bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a",
"dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/ShortStrings.sol": {
"keccak256": "0x1fcf8cceb1a67e6c8512267e780933c4a3f63ef44756e6c818fda79be51c8402",
"urls": [
"bzz-raw://617d7d57f6f9cd449068b4d23daf485676d083aae648e038d05eb3a13291de35",
"dweb:/ipfs/QmPADWPiGaSzZDFNpFEUx4ZPqhzPkYncBpHyTfAGcfsqzy"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/StorageSlot.sol": {
"keccak256": "0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97",
"urls": [
"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b",
"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/Strings.sol": {
"keccak256": "0xad148d59f05165f9217d0a9e1ac8f772abb02ea6aaad8a756315c532bf79f9f4",
"urls": [
"bzz-raw://15e3599867c2182f5831e9268b274b2ef2047825837df6b4d81c9e89254b093e",
"dweb:/ipfs/QmZbL7XAYr5RmaNaooPgZRmcDXaudfsYQfYD9y5iAECvpS"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol": {
"keccak256": "0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84",
"urls": [
"bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9",
"dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/cryptography/EIP712.sol": {
"keccak256": "0x17fc4574e07105b0180ef61f1b3cacd1820a3d37f29a4af1018d0a253c6399b5",
"urls": [
"bzz-raw://be46b3e1362dbcadbbb45ec92cdea849dceccea3e2795237f00c123aeae44746",
"dweb:/ipfs/QmSpyB8mud6xKiZaQnVtEPrxtTHGtyBgjs1PCYk4f2gesd"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol": {
"keccak256": "0x26670fef37d4adf55570ba78815eec5f31cb017e708f61886add4fc4da665631",
"urls": [
"bzz-raw://b16d45febff462bafd8a5669f904796a835baf607df58a8461916d3bf4f08c59",
"dweb:/ipfs/QmU2eJFpjmT4vxeJWJyLeQb8Xht1kdB8Y6MKLDPFA9WPux"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/cryptography/SignatureChecker.sol": {
"keccak256": "0x0f39d23ae345355f0913470b15d00c0434754302077ac97cdc038b5c000fc5cc",
"urls": [
"bzz-raw://d5ebc3233ff506c43e0f9960d2459403f878bbb63b7c71c318f16839564919ac",
"dweb:/ipfs/QmbctngFd6aQkHVqZeFAL3iHfw4X7wNgfsgUxX8t26U2m4"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/math/Math.sol": {
"keccak256": "0x1225214420c83ebcca88f2ae2b50f053aaa7df7bd684c3e878d334627f2edfc6",
"urls": [
"bzz-raw://6c5fab4970634f9ab9a620983dc1c8a30153981a0b1a521666e269d0a11399d3",
"dweb:/ipfs/QmVRnBC575MESGkEHndjujtR7qub2FzU9RWy9eKLp4hPZB"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/math/SafeCast.sol": {
"keccak256": "0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54",
"urls": [
"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8",
"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/math/SignedMath.sol": {
"keccak256": "0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3",
"urls": [
"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03",
"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"
],
"license": "MIT"
}
},
"version": 1
}