@vechain/vebetterdao-contracts
Version:
Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.
2,364 lines (2,363 loc) • 159 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "X2EarnApps",
"sourceName": "contracts/x-2-earn-apps/X2EarnApps.sol",
"abi": [
{
"inputs": [],
"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"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
}
],
"name": "AddressEmptyCode",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "CooldownNotExpired",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "CreatorNFTAlreadyUsed",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "ERC1967InvalidImplementation",
"type": "error"
},
{
"inputs": [],
"name": "ERC1967NonPayable",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "timepoint",
"type": "uint256"
},
{
"internalType": "uint48",
"name": "clock",
"type": "uint48"
}
],
"name": "ERC5805FutureLookup",
"type": "error"
},
{
"inputs": [],
"name": "ERC6372InconsistentClock",
"type": "error"
},
{
"inputs": [],
"name": "EndorsementsPaused",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "current",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "max",
"type": "uint256"
}
],
"name": "ExceedsMaxPointsPerApp",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "max",
"type": "uint256"
}
],
"name": "ExceedsMaxPointsPerNode",
"type": "error"
},
{
"inputs": [],
"name": "FailedInnerCall",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "available",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "requested",
"type": "uint256"
}
],
"name": "InsufficientAvailablePoints",
"type": "error"
},
{
"inputs": [],
"name": "InvalidInitialization",
"type": "error"
},
{
"inputs": [],
"name": "InvalidPointsAmount",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "NodeManagementXAppAlreadyIncluded",
"type": "error"
},
{
"inputs": [],
"name": "NodeNotAllowedToEndorse",
"type": "error"
},
{
"inputs": [],
"name": "NotInitializing",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "bits",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "SafeCastOverflowedUintDowncast",
"type": "error"
},
{
"inputs": [],
"name": "UUPSUnauthorizedCallContext",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "slot",
"type": "bytes32"
}
],
"name": "UUPSUnsupportedProxiableUUID",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "X2EarnAlreadyCreator",
"type": "error"
},
{
"inputs": [],
"name": "X2EarnAlreadyEndorser",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnAppAlreadyEndorsed",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnAppAlreadyExists",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnAppBlacklisted",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "X2EarnInvalidAddress",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "percentage",
"type": "uint256"
}
],
"name": "X2EarnInvalidAllocationPercentage",
"type": "error"
},
{
"inputs": [],
"name": "X2EarnInvalidStartIndex",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnMaxCreatorsReached",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnMaxManagersReached",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnMaxModeratorsReached",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnMaxRewardDistributorsReached",
"type": "error"
},
{
"inputs": [],
"name": "X2EarnNodeCooldownActive",
"type": "error"
},
{
"inputs": [],
"name": "X2EarnNonEndorser",
"type": "error"
},
{
"inputs": [],
"name": "X2EarnNonNodeHolder",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "X2EarnNonexistentApp",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "X2EarnNonexistentCreator",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "moderator",
"type": "address"
}
],
"name": "X2EarnNonexistentModerator",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "distributorAddress",
"type": "address"
}
],
"name": "X2EarnNonexistentRewardDistributor",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "X2EarnUnauthorizedUser",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "X2EarnUnverifiedCreator",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"indexed": false,
"internalType": "string",
"name": "name",
"type": "string"
},
{
"indexed": false,
"internalType": "bool",
"name": "appAvailableForAllocationVoting",
"type": "bool"
}
],
"name": "AppAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "oldAdmin",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "newAdmin",
"type": "address"
}
],
"name": "AppAdminUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "endorser",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "points",
"type": "uint256"
}
],
"name": "AppEndorsed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bool",
"name": "endorsed",
"type": "bool"
}
],
"name": "AppEndorsementStatusUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "string",
"name": "oldMetadataURI",
"type": "string"
},
{
"indexed": false,
"internalType": "string",
"name": "newMetadataURI",
"type": "string"
}
],
"name": "AppMetadataURIUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
}
],
"name": "AppSelfBlacklisted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "points",
"type": "uint256"
}
],
"name": "AppUnendorsed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint48",
"name": "startBlock",
"type": "uint48"
},
{
"indexed": false,
"internalType": "uint48",
"name": "endBlock",
"type": "uint48"
}
],
"name": "AppUnendorsedGracePeriodStarted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "string",
"name": "oldBaseURI",
"type": "string"
},
{
"indexed": false,
"internalType": "string",
"name": "newBaseURI",
"type": "string"
}
],
"name": "BaseURIUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bool",
"name": "isBlacklisted",
"type": "bool"
}
],
"name": "BlacklistUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "oldCooldownPeriod",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newCooldownPeriod",
"type": "uint256"
}
],
"name": "CooldownPeriodUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "creatorAddress",
"type": "address"
}
],
"name": "CreatorAddedToApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "CreatorRemovedFromApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "oldThreshold",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newThreshold",
"type": "uint256"
}
],
"name": "EndorsementScoreThresholdUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bool",
"name": "paused",
"type": "bool"
}
],
"name": "EndorsementsPausedUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "oldGracePeriod",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newGracePeriod",
"type": "uint256"
}
],
"name": "GracePeriodUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint64",
"name": "version",
"type": "uint64"
}
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "oldMax",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newMax",
"type": "uint256"
}
],
"name": "MaxPointsPerAppUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "oldMax",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newMax",
"type": "uint256"
}
],
"name": "MaxPointsPerNodePerAppUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "moderator",
"type": "address"
}
],
"name": "ModeratorAddedToApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "moderator",
"type": "address"
}
],
"name": "ModeratorRemovedFromApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"components": [
{
"internalType": "uint256",
"name": "strength",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "thunder",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "mjolnir",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "veThorX",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "strengthX",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "thunderX",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "mjolnirX",
"type": "uint256"
}
],
"indexed": true,
"internalType": "struct EndorsementUtils.NodeStrengthScores",
"name": "nodeStrengthScores",
"type": "tuple"
}
],
"name": "NodeStrengthScoresUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "distributorAddress",
"type": "address"
}
],
"name": "RewardDistributorAddedToApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "distributorAddress",
"type": "address"
}
],
"name": "RewardDistributorRemovedFromApp",
"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"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldPercentage",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newPercentage",
"type": "uint256"
}
],
"name": "TeamAllocationPercentageUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "oldTeamWalletAddress",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "newTeamWalletAddress",
"type": "address"
}
],
"name": "TeamWalletAddressUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "Upgraded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bool",
"name": "isAvailable",
"type": "bool"
}
],
"name": "VotingEligibilityUpdated",
"type": "event"
},
{
"inputs": [],
"name": "CLOCK_MODE",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "DEFAULT_ADMIN_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "GOVERNANCE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_CREATORS",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_MODERATORS",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_REWARD_DISTRIBUTORS",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MIGRATION_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "UPGRADER_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "UPGRADE_INTERFACE_VERSION",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_moderator",
"type": "address"
}
],
"name": "addAppModerator",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_creator",
"type": "address"
}
],
"name": "addCreator",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_distributor",
"type": "address"
}
],
"name": "addRewardDistributor",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "allEligibleApps",
"outputs": [
{
"internalType": "bytes32[]",
"name": "",
"type": "bytes32[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "app",
"outputs": [
{
"components": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "address",
"name": "teamWalletAddress",
"type": "address"
},
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "metadataURI",
"type": "string"
},
{
"internalType": "uint256",
"name": "createdAtTimestamp",
"type": "uint256"
},
{
"internalType": "bool",
"name": "appAvailableForAllocationVoting",
"type": "bool"
}
],
"internalType": "struct X2EarnAppsDataTypes.AppWithDetailsReturnType",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "appAdmin",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "appCreators",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "appExists",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "appModerators",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "appURI",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "apps",
"outputs": [
{
"components": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "address",
"name": "teamWalletAddress",
"type": "address"
},
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "metadataURI",
"type": "string"
},
{
"internalType": "uint256",
"name": "createdAtTimestamp",
"type": "uint256"
},
{
"internalType": "bool",
"name": "appAvailableForAllocationVoting",
"type": "bool"
}
],
"internalType": "struct X2EarnAppsDataTypes.AppWithDetailsReturnType[]",
"name": "",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "baseURI",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "canUnendorse",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "checkEndorsement",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "clock",
"outputs": [
{
"internalType": "uint48",
"name": "",
"type": "uint48"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "cooldownPeriod",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "creatorApps",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"
}
],
"name": "enableRewardsPoolForNewApp",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "points",
"type": "uint256"
}
],
"name": "endorseApp",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "endorsementScoreThreshold",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "endorsementsPaused",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "getEndorserNodes",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "getEndorsers",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodeActiveEndorsements",
"outputs": [
{
"components": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "points",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "endorsedAtRound",
"type": "uint256"
}
],
"internalType": "struct X2EarnAppsStorageTypes.Endorsement[]",
"name": "",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodeAvailablePoints",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodeEndorsementScore",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "getNodePointsForApp",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodePointsInfo",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "totalPoints",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "usedPoints",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "availablePoints",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "lockedPoints",
"type": "uint256"
}
],
"internalType": "struct X2EarnAppsStorageTypes.NodePointsInfo",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodeUsedPoints",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"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": "appId",
"type": "bytes32"
}
],
"name": "getScore",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "timepoint",
"type": "uint256"
}
],
"name": "getScoreAtTimepoint",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "getUsersEndorsementScore",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "gracePeriod",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"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": "string",
"name": "appName",
"type": "string"
}
],
"name": "hashAppName",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_maxPointsPerNodePerApp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_maxPointsPerApp",
"type": "uint256"
}
],
"name": "initializeV8",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "isAppAdmin",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "isAppModerator",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "isAppUnendorsed",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "isBlacklisted",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "creator",
"type": "address"
}
],
"name": "isCreatorOfAnyApp",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "timepoint",
"type": "uint256"
}
],
"name": "isEligible",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "isEligibleNow",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "isRewardDistributor",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "markMigrationComplete",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "maxPointsPerApp",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "maxPointsPerNodePerApp",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "appId",
"type": "bytes32"
}
],
"name": "metadataURI",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "migrationCompleted",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "nodeLevel",
"type": "uint8"
}
],
"name": "nodeLevelEndorsementScore",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pauseEndorsements",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "proxiableUUID",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_creator",
"type": "address"
}
],
"name": "removeAppCreator",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "_moderator",
"type": "address"
}
],
"name": "removeAppModerator",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_appId",
"type": "bytes32"