Files
smom-dbis-138/artifacts/contracts/upgrades/ProxyFactory.sol/ProxyFactory.json

599 lines
42 KiB
JSON
Raw Normal View History

{
"_format": "hh-sol-artifact-1",
"contractName": "ProxyFactory",
"sourceName": "contracts/upgrades/ProxyFactory.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "admin",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "AccessControlBadConfirmation",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "bytes32",
"name": "neededRole",
"type": "bytes32"
}
],
"name": "AccessControlUnauthorizedAccount",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "beacon",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "BeaconCreated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "proxy",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
},
{
"indexed": false,
"internalType": "enum ProxyFactory.ProxyType",
"name": "proxyType",
"type": "uint8"
},
{
"indexed": false,
"internalType": "address",
"name": "deployer",
"type": "address"
}
],
"name": "ProxyDeployed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "previousAdminRole",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "newAdminRole",
"type": "bytes32"
}
],
"name": "RoleAdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleRevoked",
"type": "event"
},
{
"inputs": [],
"name": "DEFAULT_ADMIN_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "DEPLOYER_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "allProxies",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "beacons",
"outputs": [
{
"internalType": "contract UpgradeableBeacon",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "createBeacon",
"outputs": [
{
"internalType": "address",
"name": "beacon",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "beacon",
"type": "address"
},
{
"internalType": "bytes",
"name": "initData",
"type": "bytes"
}
],
"name": "deployBeaconProxy",
"outputs": [
{
"internalType": "address",
"name": "proxy",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
},
{
"internalType": "bytes",
"name": "initData",
"type": "bytes"
}
],
"name": "deployUUPSProxy",
"outputs": [
{
"internalType": "address",
"name": "proxy",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getAllProxies",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "getProxiesByImplementation",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getProxyCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "proxy",
"type": "address"
}
],
"name": "getProxyInfo",
"outputs": [
{
"components": [
{
"internalType": "address",
"name": "proxy",
"type": "address"
},
{
"internalType": "address",
"name": "implementation",
"type": "address"
},
{
"internalType": "enum ProxyFactory.ProxyType",
"name": "proxyType",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "deployedAt",
"type": "uint256"
},
{
"internalType": "address",
"name": "deployer",
"type": "address"
},
{
"internalType": "bool",
"name": "isActive",
"type": "bool"
}
],
"internalType": "struct ProxyFactory.ProxyInfo",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "getRoleAdmin",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "grantRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "hasRole",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "isProxy",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "proxies",
"outputs": [
{
"internalType": "address",
"name": "proxy",
"type": "address"
},
{
"internalType": "address",
"name": "implementation",
"type": "address"
},
{
"internalType": "enum ProxyFactory.ProxyType",
"name": "proxyType",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "deployedAt",
"type": "uint256"
},
{
"internalType": "address",
"name": "deployer",
"type": "address"
},
{
"internalType": "bool",
"name": "isActive",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "proxiesByImplementation",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "callerConfirmation",
"type": "address"
}
],
"name": "renounceRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "revokeRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x60803461007257601f611e0b38819003918201601f19168301916001600160401b038311848410176100775780849260209460405283398101031261007257516001600160a01b0381168103610072578061005c6100629261008d565b5061010b565b50604051611c3f90816101ac8239f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff1661010757818052816020526040822081835260205260408220600160ff198254161790553391600080516020611deb8339815191528180a4600190565b5090565b6001600160a01b031660008181527f740c5e3e456bed56f053f960110118ba9b95a1f5359a82283516fb2e81b6e37e60205260408120549091907ffc425f2263d0df187444b70e47283d622c70181c5baebb1306a01edba1ce184c9060ff166101a657808352826020526040832082845260205260408320600160ff19825416179055600080516020611deb833981519152339380a4600190565b50509056fe60806040818152600491823610156200001757600080fd5b600092833560e01c91826301ffc9a71462000bfa5750816303014cf61462000b9a578163248a9ca31462000b6e578163297103881462000b255781632f2ff15d1462000af457816336568abe1462000aa75781633aebb68214620009925781634548bcb0146200073257816377d764511462000638578163883edfb814620005ab57816391d14854146200056157816399a55b6a14620005405781639cad172a1462000502578163a217fddf14620004e5578163abe3f4c81462000317578163ad14e7d114620002bd578163c45527911462000235578163d475653b14620001a0578163d547741f1462000155575063ecd00261146200011657600080fd5b346200015157816003193601126200015157602090517ffc425f2263d0df187444b70e47283d622c70181c5baebb1306a01edba1ce184c8152f35b5080fd5b919050346200019c57806003193601126200019c576200019891356200019260016200018062000c6e565b93838752866020528620015462000f0a565b62000fb0565b5080f35b8280fd5b505034620001515760209060206003193601126200019c576001600160a01b039283620001cc62000c52565b16815260036020528181209382519081946020875493848152019684526020842093915b8383106200021b576200021787876200020c828c038362000db5565b519182918262000d3b565b0390f35b8454811688529681019660019485019490920191620001f0565b50503462000151576020366003190112620001515760c0916001600160a01b039160ff918190846200026662000c52565b168152600160205220928084541693620002a46001820154856003600285015494015495805198895285831660208a015288019160a01c1662000cb4565b60608501528116608084015260a01c16151560a0820152f35b9050346200019c5760203660031901126200019c57356002548110156200019c5760026020935260018060a01b03907f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0154169051908152f35b83833462000151576200032a3662000cd8565b9390916200033762000e8f565b6001600160a01b0394818616936200035185151562000e0e565b6200035f833b151562000e51565b8551926102d38085019085821067ffffffffffffffff831117620004d25791620003939391869593620010cb873962000dd8565b039082f08015620004c657841693835190620003af8262000d82565b85825260208201848152858301908482526060840192428452608085019433865260a0810194600186528a88526001602052828a89209251166001600160601b0360a01b83541617825582600183019451169380549551956003871015620004b25760209d508c9996937f30ef1553a63105702f882108fa2e5d7a430017dc06b8e110b9be4dd1b54a42299996938d9996936003936affffffffffffffffffffff60a81b968760ff60a01b809a60a01b16921617179055516002820155019451169184549351151560a01b169216171790556200048c8462001026565b84815260038852620004a1848383206200108c565b81519081523388820152a351908152f35b50634e487b7160e01b895260218d52602489fd5b508251903d90823e3d90fd5b634e487b7160e01b875260418b52602487fd5b505034620001515781600319360112620001515751908152602090f35b9050346200019c5760203660031901126200019c576020926001600160a01b0391839190836200053162000c52565b16825285522054169051908152f35b50503462000151578160031936011262000151576020906002549051908152f35b9050346200019c57816003193601126200019c578160209360ff926200058662000c6e565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b82843462000635578060031936011262000635578151918291600254808552602080950194600283527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace92905b82821062000614576200021786866200020c828b038362000db5565b83546001600160a01b031687529586019560019384019390910190620005f8565b80fd5b838334620001515760203660031901126200
"deployedBytecode": "0x60806040818152600491823610156200001757600080fd5b600092833560e01c91826301ffc9a71462000bfa5750816303014cf61462000b9a578163248a9ca31462000b6e578163297103881462000b255781632f2ff15d1462000af457816336568abe1462000aa75781633aebb68214620009925781634548bcb0146200073257816377d764511462000638578163883edfb814620005ab57816391d14854146200056157816399a55b6a14620005405781639cad172a1462000502578163a217fddf14620004e5578163abe3f4c81462000317578163ad14e7d114620002bd578163c45527911462000235578163d475653b14620001a0578163d547741f1462000155575063ecd00261146200011657600080fd5b346200015157816003193601126200015157602090517ffc425f2263d0df187444b70e47283d622c70181c5baebb1306a01edba1ce184c8152f35b5080fd5b919050346200019c57806003193601126200019c576200019891356200019260016200018062000c6e565b93838752866020528620015462000f0a565b62000fb0565b5080f35b8280fd5b505034620001515760209060206003193601126200019c576001600160a01b039283620001cc62000c52565b16815260036020528181209382519081946020875493848152019684526020842093915b8383106200021b576200021787876200020c828c038362000db5565b519182918262000d3b565b0390f35b8454811688529681019660019485019490920191620001f0565b50503462000151576020366003190112620001515760c0916001600160a01b039160ff918190846200026662000c52565b168152600160205220928084541693620002a46001820154856003600285015494015495805198895285831660208a015288019160a01c1662000cb4565b60608501528116608084015260a01c16151560a0820152f35b9050346200019c5760203660031901126200019c57356002548110156200019c5760026020935260018060a01b03907f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0154169051908152f35b83833462000151576200032a3662000cd8565b9390916200033762000e8f565b6001600160a01b0394818616936200035185151562000e0e565b6200035f833b151562000e51565b8551926102d38085019085821067ffffffffffffffff831117620004d25791620003939391869593620010cb873962000dd8565b039082f08015620004c657841693835190620003af8262000d82565b85825260208201848152858301908482526060840192428452608085019433865260a0810194600186528a88526001602052828a89209251166001600160601b0360a01b83541617825582600183019451169380549551956003871015620004b25760209d508c9996937f30ef1553a63105702f882108fa2e5d7a430017dc06b8e110b9be4dd1b54a42299996938d9996936003936affffffffffffffffffffff60a81b968760ff60a01b809a60a01b16921617179055516002820155019451169184549351151560a01b169216171790556200048c8462001026565b84815260038852620004a1848383206200108c565b81519081523388820152a351908152f35b50634e487b7160e01b895260218d52602489fd5b508251903d90823e3d90fd5b634e487b7160e01b875260418b52602487fd5b505034620001515781600319360112620001515751908152602090f35b9050346200019c5760203660031901126200019c576020926001600160a01b0391839190836200053162000c52565b16825285522054169051908152f35b50503462000151578160031936011262000151576020906002549051908152f35b9050346200019c57816003193601126200019c578160209360ff926200058662000c6e565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b82843462000635578060031936011262000635578151918291600254808552602080950194600283527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace92905b82821062000614576200021786866200020c828b038362000db5565b83546001600160a01b031687529586019560019384019390910190620005f8565b80fd5b8383346200015157602036600319011262000151576200065762000c52565b6200066162000e8f565b6001600160a01b03938185169162000689906200068084151562000e0e565b3b151562000e51565b82516103c48082019082821067ffffffffffffffff8311176200071f578591839162001846833985815230602082015203019085f090811562000712576020957f71a8466bb649fa9952eb7579fd94754b4e4345c604613f39182eff1c30267d6c9184875287528486209216938492836001600160601b0360a01b825416179055519480a38152f35b50505051903d90823e3d90fd5b634e487b7160e01b875260418452602487fd5b8383346200015157620007453662000cd8565b9390946200075262000e8f565b6001600160a01b0383811695909390861562000961578551978897635c60da1b60e01b8952888560209b8c935afa9788156200095757859862000914575b508651926104a88085019085821067ffffffffffffffff831117620009015791620007c593918695936200139e873962000dd8565b039083f08015620008f757831694845191620007e18362000d82565b8683528488840192169485835286840190
"linkReferences": {},
"deployedLinkReferences": {}
}