@materia-dex/materia-contracts-proxy
Version:
Proxy contract for the Materia protocol
515 lines • 19.3 kB
JSON
{
"abi": [
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
},
{
"internalType": "address",
"name": "sourceLocation",
"type": "address"
},
{
"internalType": "uint256",
"name": "sourceLocationId",
"type": "uint256"
},
{
"internalType": "address",
"name": "location",
"type": "address"
},
{
"internalType": "bool",
"name": "submitable",
"type": "bool"
},
{
"internalType": "string",
"name": "methodSignature",
"type": "string"
},
{
"internalType": "string",
"name": "returnAbiParametersArray",
"type": "string"
},
{
"internalType": "bool",
"name": "isInternal",
"type": "bool"
},
{
"internalType": "bool",
"name": "needsSender",
"type": "bool"
},
{
"internalType": "uint256",
"name": "position",
"type": "uint256"
}
],
"name": "addFunctionality",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
},
{
"internalType": "address",
"name": "sourceLocation",
"type": "address"
},
{
"internalType": "uint256",
"name": "sourceLocationId",
"type": "uint256"
},
{
"internalType": "address",
"name": "location",
"type": "address"
},
{
"internalType": "bool",
"name": "submitable",
"type": "bool"
},
{
"internalType": "string",
"name": "methodSignature",
"type": "string"
},
{
"internalType": "string",
"name": "returnAbiParametersArray",
"type": "string"
},
{
"internalType": "bool",
"name": "isInternal",
"type": "bool"
},
{
"internalType": "bool",
"name": "needsSender",
"type": "bool"
}
],
"name": "addFunctionality",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "clearCallingContext",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "functionalitiesToJSON",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "start",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "l",
"type": "uint256"
}
],
"name": "functionalitiesToJSON",
"outputs": [
{
"internalType": "string",
"name": "functionsJSONArray",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "functionalityNames",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "start",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "l",
"type": "uint256"
}
],
"name": "functionalityNames",
"outputs": [
{
"internalType": "string",
"name": "functionsJSONArray",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
}
],
"name": "functionalityToJSON",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getFunctionalitiesAmount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
}
],
"name": "getFunctionalityData",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "string",
"name": "",
"type": "string"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getProxy",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
}
],
"name": "hasFunctionality",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "sourceLocation",
"type": "address"
},
{
"internalType": "uint256",
"name": "getMinimumBlockNumberSourceLocationId",
"type": "uint256"
},
{
"internalType": "address",
"name": "getMinimumBlockNumberFunctionalityAddress",
"type": "address"
},
{
"internalType": "uint256",
"name": "getEmergencyMinimumBlockNumberSourceLocationId",
"type": "uint256"
},
{
"internalType": "address",
"name": "getEmergencyMinimumBlockNumberFunctionalityAddress",
"type": "address"
},
{
"internalType": "uint256",
"name": "getEmergencySurveyStakingSourceLocationId",
"type": "uint256"
},
{
"internalType": "address",
"name": "getEmergencySurveyStakingFunctionalityAddress",
"type": "address"
},
{
"internalType": "uint256",
"name": "checkVoteResultSourceLocationId",
"type": "uint256"
},
{
"internalType": "address",
"name": "checkVoteResultFunctionalityAddress",
"type": "address"
}
],
"name": "init",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "functionality",
"type": "address"
}
],
"name": "isAuthorizedFunctionality",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "functionality",
"type": "address"
}
],
"name": "isValidFunctionality",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "uint8",
"name": "submitable",
"type": "uint8"
},
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "preConditionCheck",
"outputs": [
{
"internalType": "address",
"name": "location",
"type": "address"
},
{
"internalType": "bytes",
"name": "payload",
"type": "bytes"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "codeName",
"type": "string"
}
],
"name": "removeFunctionality",
"outputs": [
{
"internalType": "bool",
"name": "removed",
"type": "bool"
},
{
"internalType": "uint256",
"name": "position",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "location",
"type": "address"
}
],
"name": "setCallingContext",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "setProxy",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "proposalAddress",
"type": "address"
}
],
"name": "setupFunctionality",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
}
],
"evm": {
"bytecode": {
"object": "",
"sourceMap": ""
},
"deployedBytecode": {
"object": "",
"sourceMap": ""
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.0+commit.c7dfd78e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"sourceLocation\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sourceLocationId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"location\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"submitable\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"methodSignature\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"returnAbiParametersArray\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"isInternal\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"needsSender\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"position\",\"type\":\"uint256\"}],\"name\":\"addFunctionality\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"sourceLocation\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sourceLocationId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"location\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"submitable\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"methodSignature\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"returnAbiParametersArray\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"isInternal\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"needsSender\",\"type\":\"bool\"}],\"name\":\"addFunctionality\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clearCallingContext\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"functionalitiesToJSON\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l\",\"type\":\"uint256\"}],\"name\":\"functionalitiesToJSON\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"functionsJSONArray\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"functionalityNames\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l\",\"type\":\"uint256\"}],\"name\":\"functionalityNames\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"functionsJSONArray\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"}],\"name\":\"functionalityToJSON\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFunctionalitiesAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"}],\"name\":\"getFunctionalityData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProxy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"}],\"name\":\"hasFunctionality\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sourceLocation\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"getMinimumBlockNumberSourceLocationId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"getMinimumBlockNumberFunctionalityAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"getEmergencyMinimumBlockNumberSourceLocationId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"getEmergencyMinimumBlockNumberFunctionalityAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"getEmergencySurveyStakingSourceLocationId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"getEmergencySurveyStakingFunctionalityAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"checkVoteResultSourceLocationId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"checkVoteResultFunctionalityAddress\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"functionality\",\"type\":\"address\"}],\"name\":\"isAuthorizedFunctionality\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"functionality\",\"type\":\"address\"}],\"name\":\"isValidFunctionality\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint8\",\"name\":\"submitable\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"preConditionCheck\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"location\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"codeName\",\"type\":\"string\"}],\"name\":\"removeFunctionality\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"removed\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"position\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"location\",\"type\":\"address\"}],\"name\":\"setCallingContext\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setProxy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"proposalAddress\",\"type\":\"address\"}],\"name\":\"setupFunctionality\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/IMVDFunctionalitiesManager.sol\":\"IMVDFunctionalitiesManager\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":9999},\"remappings\":[]},\"sources\":{\"contracts/interfaces/IMVDFunctionalitiesManager.sol\":{\"keccak256\":\"0x050d033b3f1926ad9e2c4f0fbe7f90f81329031bc20f74a3763f94807ebbe1c9\",\"license\":\"GPL3\",\"urls\":[\"bzz-raw://ff6127103e5d260211c12c4724885a0ef94af693ca66f153d790bd362bbcc75e\",\"dweb:/ipfs/QmPWzoX8mm18cbLGtuybLpEkUWd4cPD6yYtLnTdUeWKMXQ\"]}},\"version\":1}",
"bytecode": ""
}