@vechain/vebetterdao-contracts
Version:
Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.
125 lines (124 loc) • 15.8 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "PassportSignalingLogic",
"sourceName": "contracts/ve-better-passport/libraries/PassportSignalingLogic.sol",
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "signaler",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "app",
"type": "bytes32"
}
],
"name": "SignalerAssignedToApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "signaler",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "app",
"type": "bytes32"
}
],
"name": "SignalerRemovedFromApp",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "user",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "signaler",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "app",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"name": "UserSignaled",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "user",
"type": "address"
},
{
"indexed": false,
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"name": "UserSignalsReset",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "user",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "app",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"name": "UserSignalsResetForApp",
"type": "event"
}
],
"bytecode": "0x610caf61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061008d5760003560e01c80630fa794ba1461009257806326b320ab146100b4578063451e100d146100d4578063943e7100146100f4578063c60ef11d14610114578063cb156fb014610134578063ce371f0614610154578063dc8debb014610174578063ebd695c314610194575b600080fd5b81801561009e57600080fd5b506100b26100ad3660046109f9565b6101b4565b005b8180156100c057600080fd5b506100b26100cf366004610aba565b61027d565b8180156100e057600080fd5b506100b26100ef3660046109f9565b61034b565b81801561010057600080fd5b506100b261010f366004610aba565b61037b565b81801561012057600080fd5b506100b261012f366004610ae6565b610425565b81801561014057600080fd5b506100b261014f366004610ae6565b610441565b81801561016057600080fd5b506100b261016f3660046109f9565b6104ff565b81801561018057600080fd5b506100b261018f366004610ae6565b61050d565b8180156101a057600080fd5b506100b26101af366004610b01565b610591565b60006101be6105a5565b6001600160a01b038416600090815260238201602052604081208054908290559192506101ea856105c9565b9050806001600160a01b0316856001600160a01b031614610235576001600160a01b03811660009081526023840160205260408120805484929061022f908490610b30565b90915550505b846001600160a01b03167f1ebbf7da6e1ef1fb76df73897af6ec2fe552869d2be5ea5bb56770b82f27dd6c8560405161026e9190610b49565b60405180910390a25050505050565b60006102876105a5565b9050826102db5760405162461bcd60e51b815260206004820181905260248201527f426f745369676e616c696e673a206170702063616e6e6f74206265207a65726f60448201526064015b60405180910390fd5b6001600160a01b0382166103015760405162461bcd60e51b81526004016102d290610b97565b6001600160a01b0382166000818152602583016020526040808220869055518592917fd8c22d7f098517032ec270986bbe55478d2e791ccf89ee272402d487810b125491a3505050565b60006103556105a5565b336000908152602582016020526040902054909150610375848285610621565b50505050565b60006103856105a5565b60048082015460405163238e8a7760e21b81529293506001600160a01b031691638e3a29dc916103b9918791339101610bd8565b602060405180830381865afa1580156103d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fa9190610bef565b6104165760405162461bcd60e51b81526004016102d290610c11565b610420838361027d565b505050565b61043e8160405180602001604052806000815250610809565b50565b600061044b6105a5565b6001600160a01b0380841660009081526025830160205260409081902054600480850154925163238e8a7760e21b815294955090939190921691638e3a29dc91610499918591339101610bd8565b602060405180830381865afa1580156104b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104da9190610bef565b6104f65760405162461bcd60e51b81526004016102d290610c11565b6104208361050d565b6105098282610809565b5050565b60006105176105a5565b90506001600160a01b03821661053f5760405162461bcd60e51b81526004016102d290610b97565b6001600160a01b038216600081815260258301602052604080822080549083905590519092839290917f617eb548e66b4e7465391879780b27e77c43a7af63e9dd6cf2e7076daff890579190a3505050565b600061059b6105a5565b6024019190915550565b7f273c9387b78d9b22e6f3371bb3aa3a918f53507e8cacc54e4831933cbb84410090565b6000806105d46105a5565b6001600160a01b0384166000908152601782016020526040812091925090610602906105ff90610980565b90565b90506001600160a01b03811661061a57509192915050565b9392505050565b600061062b6105a5565b90506000610638856105c9565b600085815260268401602090815260408083206001600160a01b038a168452825280832080549084905588845260278701909252822080549394509092839290610683908490610b30565b90915550506001600160a01b038616600090815260238401602052604090205481116106de576001600160a01b0386166000908152602384016020526040812080548392906106d3908490610b30565b909155506106fa9050565b6001600160a01b03861660009081526023840160205260408120555b816001600160a01b0316866001600160a01b0316146107bf576001600160a01b03821660009081526023840160205260409020548111610769576001600160a01b03821660009081526023840160205260408120805483929061075e908490610b30565b909155506107859050565b6001600160a01b03821660009081526023840160205260408120555b600085815260268401602090815260408083206001600160a01b0386168452909152812080548392906107b9908490610b30565b90915550505b84866001600160a01b03167fd1a3831b3da91367737710ecdb8c8262265b33fa319568dd2a124926d26a7192866040516107f99190610b49565b60405180910390a3505050505050565b60006108136105a5565b6001600160a01b0384166000908152602382016020526040812080549293509061083c83610c60565b90915550503360009081526025820160209081526040808320548084526026850183528184206001600160a01b038816855290925282208054919261088083610c60565b9091555050600081815260278301602052604081208054916108a183610c60565b919050555060006108b1856105c9565b9050806001600160a01b0316856001600160a01b03161461092d576001600160a01b038116600090815260238401602052604081208054916108f283610c60565b9091555050600082815260268401602090815260408083206001600160a01b0385168452909152812080549161092783610c60565b91905055505b81336001600160a01b0316866001600160a01b03167ff25f15e8ef26f4be9336774a49507bb309a1336536723f5fde89b14057949dbd876040516109719190610b49565b60405180910390a45050505050565b805460009080156109be576109a88361099a600184610b30565b600091825260209091200190565b54600160601b90046001600160a01b031661061a565b60009392505050565b80356001600160a01b03811681146109de57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610a0c57600080fd5b610a15836109c7565b915060208301356001600160401b0380821115610a3157600080fd5b818501915085601f830112610a4557600080fd5b813581811115610a5757610a576109e3565b604051601f8201601f19908116603f01168101908382118183101715610a7f57610a7f6109e3565b81604052828152886020848701011115610a9857600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60008060408385031215610acd57600080fd5b82359150610add602084016109c7565b90509250929050565b600060208284031215610af857600080fd5b61061a826109c7565b600060208284031215610b1357600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610b4357610b43610b1a565b92915050565b600060208083528351808285015260005b81811015610b7657858101830151858201604001528201610b5a565b506000604082860101526040601f19601f8301168501019250505092915050565b60208082526021908201527f426f745369676e616c696e673a20757365722063616e6e6f74206265207a65726040820152606f60f81b606082015260800190565b9182526001600160a01b0316602082015260400190565b600060208284031215610c0157600080fd5b8151801515811461061a57600080fd5b6020808252602f908201527f426f745369676e616c696e673a2063616c6c6572206973206e6f7420616e206160408201526e0646d696e206f66207468652061707608c1b606082015260800190565b600060018201610c7257610c72610b1a565b506001019056fea26469706673582212205e9e6a5a4cbc7c747d39398822bc20924c8d8c99e9944f0fc095ce5f5b666dbe64736f6c63430008140033",
"deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061008d5760003560e01c80630fa794ba1461009257806326b320ab146100b4578063451e100d146100d4578063943e7100146100f4578063c60ef11d14610114578063cb156fb014610134578063ce371f0614610154578063dc8debb014610174578063ebd695c314610194575b600080fd5b81801561009e57600080fd5b506100b26100ad3660046109f9565b6101b4565b005b8180156100c057600080fd5b506100b26100cf366004610aba565b61027d565b8180156100e057600080fd5b506100b26100ef3660046109f9565b61034b565b81801561010057600080fd5b506100b261010f366004610aba565b61037b565b81801561012057600080fd5b506100b261012f366004610ae6565b610425565b81801561014057600080fd5b506100b261014f366004610ae6565b610441565b81801561016057600080fd5b506100b261016f3660046109f9565b6104ff565b81801561018057600080fd5b506100b261018f366004610ae6565b61050d565b8180156101a057600080fd5b506100b26101af366004610b01565b610591565b60006101be6105a5565b6001600160a01b038416600090815260238201602052604081208054908290559192506101ea856105c9565b9050806001600160a01b0316856001600160a01b031614610235576001600160a01b03811660009081526023840160205260408120805484929061022f908490610b30565b90915550505b846001600160a01b03167f1ebbf7da6e1ef1fb76df73897af6ec2fe552869d2be5ea5bb56770b82f27dd6c8560405161026e9190610b49565b60405180910390a25050505050565b60006102876105a5565b9050826102db5760405162461bcd60e51b815260206004820181905260248201527f426f745369676e616c696e673a206170702063616e6e6f74206265207a65726f60448201526064015b60405180910390fd5b6001600160a01b0382166103015760405162461bcd60e51b81526004016102d290610b97565b6001600160a01b0382166000818152602583016020526040808220869055518592917fd8c22d7f098517032ec270986bbe55478d2e791ccf89ee272402d487810b125491a3505050565b60006103556105a5565b336000908152602582016020526040902054909150610375848285610621565b50505050565b60006103856105a5565b60048082015460405163238e8a7760e21b81529293506001600160a01b031691638e3a29dc916103b9918791339101610bd8565b602060405180830381865afa1580156103d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fa9190610bef565b6104165760405162461bcd60e51b81526004016102d290610c11565b610420838361027d565b505050565b61043e8160405180602001604052806000815250610809565b50565b600061044b6105a5565b6001600160a01b0380841660009081526025830160205260409081902054600480850154925163238e8a7760e21b815294955090939190921691638e3a29dc91610499918591339101610bd8565b602060405180830381865afa1580156104b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104da9190610bef565b6104f65760405162461bcd60e51b81526004016102d290610c11565b6104208361050d565b6105098282610809565b5050565b60006105176105a5565b90506001600160a01b03821661053f5760405162461bcd60e51b81526004016102d290610b97565b6001600160a01b038216600081815260258301602052604080822080549083905590519092839290917f617eb548e66b4e7465391879780b27e77c43a7af63e9dd6cf2e7076daff890579190a3505050565b600061059b6105a5565b6024019190915550565b7f273c9387b78d9b22e6f3371bb3aa3a918f53507e8cacc54e4831933cbb84410090565b6000806105d46105a5565b6001600160a01b0384166000908152601782016020526040812091925090610602906105ff90610980565b90565b90506001600160a01b03811661061a57509192915050565b9392505050565b600061062b6105a5565b90506000610638856105c9565b600085815260268401602090815260408083206001600160a01b038a168452825280832080549084905588845260278701909252822080549394509092839290610683908490610b30565b90915550506001600160a01b038616600090815260238401602052604090205481116106de576001600160a01b0386166000908152602384016020526040812080548392906106d3908490610b30565b909155506106fa9050565b6001600160a01b03861660009081526023840160205260408120555b816001600160a01b0316866001600160a01b0316146107bf576001600160a01b03821660009081526023840160205260409020548111610769576001600160a01b03821660009081526023840160205260408120805483929061075e908490610b30565b909155506107859050565b6001600160a01b03821660009081526023840160205260408120555b600085815260268401602090815260408083206001600160a01b0386168452909152812080548392906107b9908490610b30565b90915550505b84866001600160a01b03167fd1a3831b3da91367737710ecdb8c8262265b33fa319568dd2a124926d26a7192866040516107f99190610b49565b60405180910390a3505050505050565b60006108136105a5565b6001600160a01b0384166000908152602382016020526040812080549293509061083c83610c60565b90915550503360009081526025820160209081526040808320548084526026850183528184206001600160a01b038816855290925282208054919261088083610c60565b9091555050600081815260278301602052604081208054916108a183610c60565b919050555060006108b1856105c9565b9050806001600160a01b0316856001600160a01b03161461092d576001600160a01b038116600090815260238401602052604081208054916108f283610c60565b9091555050600082815260268401602090815260408083206001600160a01b0385168452909152812080549161092783610c60565b91905055505b81336001600160a01b0316866001600160a01b03167ff25f15e8ef26f4be9336774a49507bb309a1336536723f5fde89b14057949dbd876040516109719190610b49565b60405180910390a45050505050565b805460009080156109be576109a88361099a600184610b30565b600091825260209091200190565b54600160601b90046001600160a01b031661061a565b60009392505050565b80356001600160a01b03811681146109de57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610a0c57600080fd5b610a15836109c7565b915060208301356001600160401b0380821115610a3157600080fd5b818501915085601f830112610a4557600080fd5b813581811115610a5757610a576109e3565b604051601f8201601f19908116603f01168101908382118183101715610a7f57610a7f6109e3565b81604052828152886020848701011115610a9857600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60008060408385031215610acd57600080fd5b82359150610add602084016109c7565b90509250929050565b600060208284031215610af857600080fd5b61061a826109c7565b600060208284031215610b1357600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610b4357610b43610b1a565b92915050565b600060208083528351808285015260005b81811015610b7657858101830151858201604001528201610b5a565b506000604082860101526040601f19601f8301168501019250505092915050565b60208082526021908201527f426f745369676e616c696e673a20757365722063616e6e6f74206265207a65726040820152606f60f81b606082015260800190565b9182526001600160a01b0316602082015260400190565b600060208284031215610c0157600080fd5b8151801515811461061a57600080fd5b6020808252602f908201527f426f745369676e616c696e673a2063616c6c6572206973206e6f7420616e206160408201526e0646d696e206f66207468652061707608c1b606082015260800190565b600060018201610c7257610c72610b1a565b506001019056fea26469706673582212205e9e6a5a4cbc7c747d39398822bc20924c8d8c99e9944f0fc095ce5f5b666dbe64736f6c63430008140033",
"linkReferences": {},
"deployedLinkReferences": {}
}