@settlemint/solidity-attestation-service
Version:
Smart contract set to use the Ethereum Attestation Service in SettleMint
447 lines • 14.8 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/",
"eth-gas-reporter/=node_modules/eth-gas-reporter/",
"forge-std/=lib/forge-std/src/",
"hardhat/=node_modules/hardhat/"
],
"optimizer": {
"enabled": true,
"runs": 10000
},
"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": "0x3d4cd07258d675b6dfa3d9dfd623a77b38fb9935f4a5381ff4bc969948720976",
"urls": [
"bzz-raw://30abb60a4d98ad9a33de4fa5e9072342e12df3a79e9c71b5f59ce049ae8cd535",
"dweb:/ipfs/QmT6NXJDjsf8H14nPYQsFELDB8q5ZTmG9cjdX2bEQJW7ST"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/interfaces/IERC5267.sol": {
"keccak256": "0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92",
"urls": [
"bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a",
"dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP"
],
"license": "MIT"
},
"node_modules/@openzeppelin/contracts/utils/Address.sol": {
"keccak256": "0xaaa1d17c1129b127a4a401db2fbd72960e2671474be3d08cae71ccdc42f7624c",
"urls": [
"bzz-raw://cb2f27cd3952aa667e198fba0d9b7bcec52fbb12c16f013c25fe6fb52b29cc0e",
"dweb:/ipfs/QmeuohBFoeyDPZA9JNCTEDz3VBfBD4EABWuWXVhHAuEpKR"
],
"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": "0x81c274a60a7ae232ae3dc9ff3a4011b4849a853c13b0832cd3351bb1bb2f0dae",
"urls": [
"bzz-raw://9da0c20dc74358a2a76330818f3bac9d1e2ce3371aec847b9cbf5d147fbae4f6",
"dweb:/ipfs/QmeczhmnFv1hbXKGLwbYXY6Rrytc9a5A2YaRi5QMMgjPnb"
],
"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": "0x0c60057e7351874f086db8dc9291b7ada9ad62cb7725befd2991430d04a74572",
"urls": [
"bzz-raw://33cdfd1fc36410d45046f88ff9864350146b194736c32834baa38d99b843ffbe",
"dweb:/ipfs/QmdVmqgFKjgEBURy4KUwWDA6J1LEg1BKcHcXsx4nkeHAD2"
],
"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": "0xbdc3bb48ccedb818cd75a6d74a16df55a822e9f6d3cc54c59f576f10aab67b5f",
"urls": [
"bzz-raw://2284f25f2478f419d7781573b17a89d0e7c5589a865d55e2d6ed5163aee23aa8",
"dweb:/ipfs/QmNsr2625APBQiNKpYnX5VcSnYgfUHR9Uzzp9pRXjoDqK7"
],
"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
}