UNPKG

@etherisc/registry-contracts

Version:

Etherisc's smart contracts for the registry.

2,163 lines (2,162 loc) 3.65 MB
{ "abi": [ { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "NftId", "name": "id", "type": "uint96" }, { "indexed": false, "internalType": "address", "name": "updatedBy", "type": "address" } ], "name": "LogChainRegistryObjectDataUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "NftId", "name": "id", "type": "uint96" }, { "indexed": false, "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "indexed": false, "internalType": "ObjectType", "name": "objectType", "type": "uint8" }, { "indexed": false, "internalType": "enum IChainRegistry.ObjectState", "name": "state", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "to", "type": "address" } ], "name": "LogChainRegistryObjectRegistered", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "NftId", "name": "id", "type": "uint96" }, { "indexed": false, "internalType": "enum IChainRegistry.ObjectState", "name": "stateNew", "type": "uint8" }, { "indexed": false, "internalType": "enum IChainRegistry.ObjectState", "name": "stateOld", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "setBy", "type": "address" } ], "name": "LogChainRegistryObjectStateSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "Version", "name": "version", "type": "uint48" }, { "indexed": false, "internalType": "address", "name": "implementation", "type": "address" }, { "indexed": false, "internalType": "address", "name": "activatedBy", "type": "address" } ], "name": "LogVersionableActivated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "inputs": [], "name": "BASE_DID", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "BUNDLE", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "CHAIN", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "INSTANCE", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ORACLE", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "POLICY", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PRODUCT", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PROTOCOL", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "REGISTRY", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "RISKPOOL", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "STAKE", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "UNDEFINED", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "implementation", "type": "address" }, { "internalType": "address", "name": "activatedBy", "type": "address" } ], "name": "activate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "implementation", "type": "address" }, { "internalType": "address", "name": "newOwner", "type": "address" }, { "internalType": "address", "name": "activatedBy", "type": "address" } ], "name": "activateAndSetOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "blockNumber", "outputs": [ { "internalType": "Blocknumber", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "chains", "outputs": [ { "internalType": "uint256", "name": "numberOfChains", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "decodeBundleData", "outputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "uint256", "name": "riskpoolId", "type": "uint256" }, { "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "string", "name": "displayName", "type": "string" }, { "internalType": "uint256", "name": "expiryAt", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "decodeComponentData", "outputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "uint256", "name": "componentId", "type": "uint256" }, { "internalType": "address", "name": "token", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "decodeInstanceData", "outputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "address", "name": "registry", "type": "address" }, { "internalType": "string", "name": "displayName", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "decodeRegistryData", "outputs": [ { "internalType": "address", "name": "registry", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "decodeStakeData", "outputs": [ { "internalType": "NftId", "name": "target", "type": "uint96" }, { "internalType": "ObjectType", "name": "targetType", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "decodeTokenData", "outputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "exists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "", "type": "uint96" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "extendBundleLifetime", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "getBundleNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getChainId", "outputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" } ], "name": "getChainNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "getComponentNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" } ], "name": "getInstanceNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" } ], "name": "getInstanceServiceFacade", "outputs": [ { "internalType": "contract IInstanceServiceFacade", "name": "instanceService", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getNft", "outputs": [ { "internalType": "contract IChainNft", "name": "nft", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "ObjectType", "name": "t", "type": "uint8" }, { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "getNftInfo", "outputs": [ { "components": [ { "internalType": "NftId", "name": "id", "type": "uint96" }, { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "ObjectType", "name": "objectType", "type": "uint8" }, { "internalType": "enum IChainRegistry.ObjectState", "name": "state", "type": "uint8" }, { "internalType": "string", "name": "uri", "type": "string" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "Blocknumber", "name": "mintedIn", "type": "uint32" }, { "internalType": "Blocknumber", "name": "updatedIn", "type": "uint32" }, { "internalType": "Version", "name": "version", "type": "uint48" } ], "internalType": "struct IChainRegistry.NftInfo", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" } ], "name": "getRegistryNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getStaking", "outputs": [ { "internalType": "contract IStaking", "name": "staking", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "address", "name": "token", "type": "address" } ], "name": "getTokenNftId", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getVersion", "outputs": [ { "internalType": "Version", "name": "", "type": "uint48" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "Version", "name": "_version", "type": "uint48" } ], "name": "getVersionInfo", "outputs": [ { "components": [ { "internalType": "Version", "name": "version", "type": "uint48" }, { "internalType": "address", "name": "implementation", "type": "address" }, { "internalType": "address", "name": "activatedBy", "type": "address" }, { "internalType": "Blocknumber", "name": "activatedIn", "type": "uint32" }, { "internalType": "Timestamp", "name": "activatedAt", "type": "uint40" } ], "internalType": "struct IVersionable.VersionInfo", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "implementsIChainRegistry", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "x", "type": "uint256" }, { "internalType": "uint8", "name": "shift", "type": "uint8" } ], "name": "intToBytes", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "Version", "name": "_version", "type": "uint48" } ], "name": "isActivated", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "ObjectType", "name": "t", "type": "uint8" } ], "name": "objects", "outputs": [ { "internalType": "uint256", "name": "numberOfObjects", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "nftOwner", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "registryAddress", "type": "address" } ], "name": "probeInstance", "outputs": [ { "internalType": "bool", "name": "isContract", "type": "bool" }, { "internalType": "uint256", "name": "contractSize", "type": "uint256" }, { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "bool", "name": "isValidId", "type": "bool" }, { "internalType": "contract IInstanceServiceFacade", "name": "instanceService", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "uint256", "name": "riskpoolId", "type": "uint256" }, { "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "internalType": "string", "name": "displayName", "type": "string" }, { "internalType": "uint256", "name": "expiryAt", "type": "uint256" } ], "name": "registerBundle", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "registerChain", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "instanceId", "type": "bytes32" }, { "internalType": "uint256", "name": "componentId", "type": "uint256" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "registerComponent", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "instanceRegistry", "type": "address" }, { "internalType": "string", "name": "displayName", "type": "string" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "registerInstance", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "address", "name": "registry", "type": "address" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "registerRegistry", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "target", "type": "uint96" }, { "internalType": "address", "name": "staker", "type": "address" } ], "name": "registerStake", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" }, { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "registerToken", "outputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "setNftContract", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "NftId", "name": "id", "type": "uint96" }, { "internalType": "enum IChainRegistry.ObjectState", "name": "stateNew", "type": "uint8" } ], "name": "setObjectState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "stakingAddress", "type": "address" } ], "name": "setStaking", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "chainId", "type": "uint256" } ], "name": "toChain", "outputs": [ { "internalType": "ChainId", "name": "", "type": "bytes5" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "x", "type": "bytes5" } ], "name": "toInt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "Blocknumber", "name": "x", "type": "uint32" } ], "name": "toInt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "Timestamp", "name": "x", "type": "uint40" } ], "name": "toInt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "t", "type": "uint256" } ], "name": "toObjectType", "outputs": [ { "internalType": "ObjectType", "name": "", "type": "uint8" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "ChainId", "name": "chain", "type": "bytes5" } ], "name": "toString", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "toString", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "i", "type": "uint256" } ], "name": "toString", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "Version", "name": "_version", "type": "uint48" } ], "name": "toVersionParts", "outputs": [ { "internalType": "VersionPart", "name": "major", "type": "uint16" }, { "internalType": "VersionPart", "name": "minor", "type": "uint16" }, { "internalType": "VersionPart", "name": "patch", "type": "uint16" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenDID", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "version", "outputs": [ { "internalType": "Version", "name": "", "type": "uint48" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "versionParts", "outputs": [ { "internalType": "VersionPart", "name": "major", "type": "uint16" }, { "internalType": "VersionPart", "name": "minor", "type": "uint16" }, { "internalType": "VersionPart", "name": "patch", "type": "uint16" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "versions", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ], "allSourcePaths": { "0": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/access/OwnableUpgradeable.sol", "1": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/proxy/utils/Initializable.sol", "14": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/token/ERC20/IERC20.sol", "15": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/token/ERC20/extensions/IERC20Metadata.sol", "3": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/utils/ContextUpgradeable.sol", "32": "contracts/registry/ChainRegistryV01.sol", "34": "contracts/registry/IChainNft.sol", "36": "contracts/registry/IChainRegistry.sol", "38": "contracts/registry/IInstanceRegistryFacade.sol", "39": "contracts/registry/IInstanceServiceFacade.sol", "4": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/utils/StringsUpgradeable.sol", "42": "contracts/shared/BaseTypes.sol", "43": "contracts/shared/IBaseTypes.sol", "44": "contracts/shared/IVersionType.sol", "45": "contracts/shared/IVersionable.sol", "47": "contracts/shared/UFixedMath.sol", "48": "contracts/shared/Versionable.sol", "49": "contracts/shared/VersionedOwnable.sol", "5": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/utils/math/MathUpgradeable.sol", "50": "contracts/staking/IStaking.sol" }, "ast": { "absolutePath": "contracts/registry/ChainRegistryV01.sol", "exportedSymbols": { "ChainId": [ 4447 ], "ChainRegistryV01": [ 3155 ], "IChainNft": [ 3494 ], "IChainRegistry": [ 4025 ], "IInstanceRegistryFacade": [ 4190 ], "IInstanceServiceFacade": [ 4295 ], "IStaking": [ 6479 ], "IVersionable": [ 4856 ], "NftId": [ 3353 ], "ObjectType": [ 3555 ], "StringsUpgradeable": [ 12263 ], "Version": [ 12269 ], "Versionable": [ 5891 ], "VersionedOwnable": [ 5965 ], "toChainId": [ 4516 ], "toNftId": [ 3447 ], "toVersion": [ 12435 ], "toVersionPart": [ 12383 ], "zeroVersion": [ 12454 ] }, "id": 3156, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 314, "literals": [ "solidity", "^", "0.8", ".19" ], "nodeType": "PragmaDirective", "src": "39:24:32" }, { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/utils/StringsUpgradeable.sol", "file": "@openzeppelin-upgradeable/contracts/utils/StringsUpgradeable.sol", "id": 316, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 12264, "src": "65:100:32", "symbolAliases": [ { "foreign": { "id": 315, "name": "StringsUpgradeable", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12263, "src": "73:18:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/shared/IBaseTypes.sol", "file": "../shared/IBaseTypes.sol", "id": 319, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 4754, "src": "167:60:32", "symbolAliases": [ { "foreign": { "id": 317, "name": "ChainId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4447, "src": "175:7:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 318, "name": "toChainId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4516, "src": "184:9:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/shared/IVersionType.sol", "file": "../shared/IVersionType.sol", "id": 324, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 12455, "src": "228:90:32", "symbolAliases": [ { "foreign": { "id": 320, "name": "Version", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12269, "src": "236:7:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 321, "name": "toVersion", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12435, "src": "245:9:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 322, "name": "toVersionPart", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12383, "src": "256:13:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 323, "name": "zeroVersion", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12454, "src": "271:11:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/shared/IVersionable.sol", "file": "../shared/IVersionable.sol", "id": 326, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 4857, "src": "319:56:32", "symbolAliases": [ { "foreign": { "id": 325, "name": "IVersionable", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4856, "src": "327:12:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/shared/Versionable.sol", "file": "../shared/Versionable.sol", "id": 328, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 5892, "src": "376:54:32", "symbolAliases": [ { "foreign": { "id": 327, "name": "Versionable", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5891, "src": "384:11:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/shared/VersionedOwnable.sol", "file": "../shared/VersionedOwnable.sol", "id": 330, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 5966, "src": "431:64:32", "symbolAliases": [ { "foreign": { "id": 329, "name": "VersionedOwnable", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5965, "src": "439:16:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/registry/IInstanceRegistryFacade.sol", "file": "./IInstanceRegistryFacade.sol", "id": 332, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 4191, "src": "497:70:32", "symbolAliases": [ { "foreign": { "id": 331, "name": "IInstanceRegistryFacade", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4190, "src": "505:23:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/registry/IInstanceServiceFacade.sol", "file": "./IInstanceServiceFacade.sol", "id": 334, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 4296, "src": "568:68:32", "symbolAliases": [ { "foreign": { "id": 333, "name": "IInstanceServiceFacade", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4295, "src": "576:22:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/registry/IChainRegistry.sol", "file": "./IChainRegistry.sol", "id": 338, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 4026, "src": "638:74:32", "symbolAliases": [ { "foreign": { "id": 335, "name": "IChainRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4025, "src": "646:14:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 336, "name": "IStaking", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6479, "src": "662:8:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 337, "name": "ObjectType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3555, "src": "672:10:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/registry/IChainNft.sol", "file": "./IChainNft.sol", "id": 342, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 3156, "sourceUnit": 3495, "src": "713:58:32", "symbolAliases": [ { "foreign": { "id": 339, "name": "IChainNft", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3494, "src": "721:9:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 340, "name": "NftId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3353, "src": "732:5:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" }, { "foreign": { "id": 341, "name": "toNftId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3447, "src": "739:7:32", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 343, "name": "VersionedOwnable", "nameLocations": [ "855:16:32" ], "nodeType": "IdentifierPath", "referencedDeclaration": 5965, "src": "855:16:32" }, "id": 344, "nodeType": "InheritanceSpecifier", "src": "855:16:32" }, { "baseName": { "id": 345, "name": "IChainRegistry", "nameLocations": [ "877:14:32" ], "nodeType": "IdentifierPath", "referencedDeclaration": 4025, "src": "877:14:32" }, "id": 346, "nodeType": "InheritanceSpecifier", "src": "877:14:32" } ], "canonicalName": "ChainRegistryV01", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, "id": 3155, "linearizedBaseContracts": [ 3155, 4025, 5965, 13768, 17126, 17084, 5891, 4856, 4443, 4753 ], "name": "ChainRegistryV01", "nameLocation": "831:16:32", "nodeType": "ContractDefinition", "nodes": [ { "global": false, "id": 349, "libraryName": { "id": 347, "name": "StringsUpgradeable", "nameLocations": [ "904:18:32" ], "nodeType": "IdentifierPath", "referencedDeclaration": 12263, "src": "904:18:32" }, "nodeType": "UsingForDirective", "src": "898:34:32", "typeName": { "id": 348, "name": "uint", "nodeType": "ElementaryTypeName", "src": "927:4:32", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } }, { "global": false, "id": 352, "libraryName": { "id": 350, "name": "StringsUpgradeable", "nameLocations": [ "943:18:32" ], "nodeType": "IdentifierPath", "referencedDeclaration": 12263, "src": "943:18:32" }, "nodeType": "UsingForDirective", "src": "937:37:32", "typeName": { "id": 351, "name": "address", "nodeType": "ElementaryTypeName", "src": "966:7:32", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address",