@credenza-web3/contracts
Version:
Credenza Contracts
284 lines (283 loc) • 23.1 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "ConnectedPackagingContract",
"sourceName": "contracts/ConnectedPackagingContract.sol",
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "addOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
},
{
"internalType": "address",
"name": "customerAddress",
"type": "address"
}
],
"name": "claimNFCID",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
},
{
"internalType": "string",
"name": "data",
"type": "string"
}
],
"name": "claimNFCPass",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "clearOwners",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getDescription",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getOwners",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getTrustedForwarder",
"outputs": [
{
"internalType": "address",
"name": "forwarder",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getVersion",
"outputs": [
{
"internalType": "string",
"name": "version",
"type": "string"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "isOwner",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "forwarder",
"type": "address"
}
],
"name": "isTrustedForwarder",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "removeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
}
],
"name": "retrieveNFCID",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
}
],
"name": "retrieveNFCPass",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
}
],
"name": "revokeNFCID",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
}
],
"name": "revokeNFCPass",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "description",
"type": "string"
}
],
"name": "setDescription",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_forwarder",
"type": "address"
}
],
"name": "setTrustedForwarder",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "serialNumber",
"type": "string"
},
{
"internalType": "address",
"name": "customerAddress",
"type": "address"
}
],
"name": "transferNFCID",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b5061002161001c610026565b61005a565b61016f565b60006014361080159061004357506003546001600160a01b031633145b15610055575060131936013560601c90565b503390565b600154158061008d575061008d61006f610026565b6001600160a01b031660009081526020819052604090205460ff1690565b6100e85760405162461bcd60e51b815260206004820152602260248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604482015261371760f11b606482015260840160405180910390fd5b6001600160a01b03811660009081526020819052604090205460ff161561010c5750565b6001600160a01b03166000818152602081905260408120805460ff191660019081179091558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319169091179055565b61101a8061017e6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80637065cb48116100a2578063a0e67e2b11610071578063a0e67e2b14610259578063a4c023051461026e578063c40b9e6a14610281578063ce1b815f14610294578063da742228146102a557600080fd5b80637065cb48146101f55780637ac3faa61461020857806390c3f38f1461021b5780639d19c1c31461022e57600080fd5b80632f54bf6e116100e95780632f54bf6e1461016957806331d47e9c146101a557806336a649d5146101b85780635260f5e6146101cb578063572b6c05146101d357600080fd5b80630d8e6e2c1461011b578063173825d9146101395780631a0925411461014e5780632c201da714610156575b600080fd5b6101236102b8565b6040516101309190610c65565b60405180910390f35b61014c610147366004610cb4565b6102d8565b005b6101236103a8565b61014c610164366004610d79565b61043a565b610195610177366004610cb4565b6001600160a01b031660009081526020819052604090205460ff1690565b6040519015158152602001610130565b6101236101b3366004610dc7565b6104af565b61014c6101c6366004610d79565b61055f565b61014c610669565b6101956101e1366004610cb4565b6003546001600160a01b0391821691161490565b61014c610203366004610cb4565b610714565b61014c610216366004610dc7565b6107cc565b61014c610229366004610dc7565b61083e565b61024161023c366004610dc7565b610882565b6040516001600160a01b039091168152602001610130565b6102616108b3565b6040516101309190610e04565b61014c61027c366004610dc7565b610914565b61014c61028f366004610e51565b610989565b6003546001600160a01b0316610241565b61014c6102b3366004610cb4565b6109f1565b6060604051806060016040528060228152602001610fc360229139905090565b60015415806102ed57506102ed610177610a40565b6103125760405162461bcd60e51b815260040161030990610eb5565b60405180910390fd5b6001600160a01b03811660009081526020819052604090205460ff1661037a5760405162461bcd60e51b815260206004820152601e60248201527f5461726765742061646472657373206973206e6f7420616e206f776e657200006044820152606401610309565b6001600160a01b0381166000908152602081905260409020805460ff191690556103a5600182610a74565b50565b6060600280546103b790610ef7565b80601f01602080910402602001604051908101604052809291908181526020018280546103e390610ef7565b80156104305780601f1061040557610100808354040283529160200191610430565b820191906000526020600020905b81548152906001019060200180831161041357829003601f168201915b5050505050905090565b600154158061044f575061044f610177610a40565b61046b5760405162461bcd60e51b815260040161030990610eb5565b8060048360405161047c9190610f32565b90815260405190819003602001902080546001600160a01b03929092166001600160a01b03199092169190911790555050565b60606005826040516104c19190610f32565b908152602001604051809103902080546104da90610ef7565b80601f016020809104026020016040519081016040528092919081815260200182805461050690610ef7565b80156105535780601f1061052857610100808354040283529160200191610553565b820191906000526020600020905b81548152906001019060200180831161053657829003601f168201915b50505050509050919050565b60015415806105745750610574610177610a40565b6105905760405162461bcd60e51b815260040161030990610eb5565b806001600160a01b03166004836040516105aa9190610f32565b908152604051908190036020019020546001600160a01b031614156105cd575050565b60006001600160a01b03166004836040516105e89190610f32565b908152604051908190036020019020546001600160a01b03161461046b5760405162461bcd60e51b815260206004820152602e60248201527f53657269616c206e756d6265722070726f766964656420616c7265616479206860448201526d30b99030b9b9b7b1b4b0ba34b7b760911b6064820152608401610309565b5050565b600154158061067e575061067e610177610a40565b61069a5760405162461bcd60e51b815260040161030990610eb5565b60005b600154811015610705576000806000600184815481106106bf576106bf610f4e565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806106fd81610f7a565b91505061069d565b5061071260016000610b7e565b565b60015415806107295750610729610177610a40565b6107455760405162461bcd60e51b815260040161030990610eb5565b6001600160a01b03811660009081526020819052604090205460ff16156107695750565b6001600160a01b03166000818152602081905260408120805460ff191660019081179091558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319169091179055565b60015415806107e157506107e1610177610a40565b6107fd5760405162461bcd60e51b815260040161030990610eb5565b6040518060200160405280600081525060058260405161081d9190610f32565b90815260200160405180910390209080519060200190610665929190610b9c565b60015415806108535750610853610177610a40565b61086f5760405162461bcd60e51b815260040161030990610eb5565b8051610665906002906020840190610b9c565b60006004826040516108949190610f32565b908152604051908190036020019020546001600160a01b031692915050565b6060600180548060200260200160405190810160405280929190818152602001828054801561043057602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108ed575050505050905090565b60015415806109295750610929610177610a40565b6109455760405162461bcd60e51b815260040161030990610eb5565b60006004826040516109579190610f32565b90815260405190819003602001902080546001600160a01b03929092166001600160a01b031990921691909117905550565b600154158061099e575061099e610177610a40565b6109ba5760405162461bcd60e51b815260040161030990610eb5565b806005836040516109cb9190610f32565b908152602001604051809103902090805190602001906109ec929190610b9c565b505050565b6001541580610a065750610a06610177610a40565b610a225760405162461bcd60e51b815260040161030990610eb5565b600380546001600160a01b0319166001600160a01b03831617905550565b600060143610801590610a5d57506003546001600160a01b031633145b15610a6f575060131936013560601c90565b503390565b60005b82548110156109ec57816001600160a01b0316838281548110610a9c57610a9c610f4e565b6000918252602090912001546001600160a01b03161415610b6c5782548390610ac790600190610f95565b81548110610ad757610ad7610f4e565b9060005260206000200160009054906101000a90046001600160a01b0316838281548110610b0757610b07610f4e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555082805480610b4557610b45610fac565b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80610b7681610f7a565b915050610a77565b50805460008255906000526020600020908101906103a59190610c20565b828054610ba890610ef7565b90600052602060002090601f016020900481019282610bca5760008555610c10565b82601f10610be357805160ff1916838001178555610c10565b82800160010185558215610c10579182015b82811115610c10578251825591602001919060010190610bf5565b50610c1c929150610c20565b5090565b5b80821115610c1c5760008155600101610c21565b60005b83811015610c50578181015183820152602001610c38565b83811115610c5f576000848401525b50505050565b6020815260008251806020840152610c84816040850160208701610c35565b601f01601f19169190910160400192915050565b80356001600160a01b0381168114610caf57600080fd5b919050565b600060208284031215610cc657600080fd5b610ccf82610c98565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610cfd57600080fd5b813567ffffffffffffffff80821115610d1857610d18610cd6565b604051601f8301601f19908116603f01168101908282118183101715610d4057610d40610cd6565b81604052838152866020858801011115610d5957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610d8c57600080fd5b823567ffffffffffffffff811115610da357600080fd5b610daf85828601610cec565b925050610dbe60208401610c98565b90509250929050565b600060208284031215610dd957600080fd5b813567ffffffffffffffff811115610df057600080fd5b610dfc84828501610cec565b949350505050565b6020808252825182820181905260009190848201906040850190845b81811015610e455783516001600160a01b031683529284019291840191600101610e20565b50909695505050505050565b60008060408385031215610e6457600080fd5b823567ffffffffffffffff80821115610e7c57600080fd5b610e8886838701610cec565b93506020850135915080821115610e9e57600080fd5b50610eab85828601610cec565b9150509250929050565b60208082526022908201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604082015261371760f11b606082015260800190565b600181811c90821680610f0b57607f821691505b60208210811415610f2c57634e487b7160e01b600052602260045260246000fd5b50919050565b60008251610f44818460208701610c35565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415610f8e57610f8e610f64565b5060010190565b600082821015610fa757610fa7610f64565b500390565b634e487b7160e01b600052603160045260246000fdfe436f6e6e65637465645061636b6167696e67436f6e7472616374207620302e322e30a26469706673582212206cb8444d9247f7595f2b5fa77702c46235d0a4c731918d246a38214a5e1acb6164736f6c634300080c0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c80637065cb48116100a2578063a0e67e2b11610071578063a0e67e2b14610259578063a4c023051461026e578063c40b9e6a14610281578063ce1b815f14610294578063da742228146102a557600080fd5b80637065cb48146101f55780637ac3faa61461020857806390c3f38f1461021b5780639d19c1c31461022e57600080fd5b80632f54bf6e116100e95780632f54bf6e1461016957806331d47e9c146101a557806336a649d5146101b85780635260f5e6146101cb578063572b6c05146101d357600080fd5b80630d8e6e2c1461011b578063173825d9146101395780631a0925411461014e5780632c201da714610156575b600080fd5b6101236102b8565b6040516101309190610c65565b60405180910390f35b61014c610147366004610cb4565b6102d8565b005b6101236103a8565b61014c610164366004610d79565b61043a565b610195610177366004610cb4565b6001600160a01b031660009081526020819052604090205460ff1690565b6040519015158152602001610130565b6101236101b3366004610dc7565b6104af565b61014c6101c6366004610d79565b61055f565b61014c610669565b6101956101e1366004610cb4565b6003546001600160a01b0391821691161490565b61014c610203366004610cb4565b610714565b61014c610216366004610dc7565b6107cc565b61014c610229366004610dc7565b61083e565b61024161023c366004610dc7565b610882565b6040516001600160a01b039091168152602001610130565b6102616108b3565b6040516101309190610e04565b61014c61027c366004610dc7565b610914565b61014c61028f366004610e51565b610989565b6003546001600160a01b0316610241565b61014c6102b3366004610cb4565b6109f1565b6060604051806060016040528060228152602001610fc360229139905090565b60015415806102ed57506102ed610177610a40565b6103125760405162461bcd60e51b815260040161030990610eb5565b60405180910390fd5b6001600160a01b03811660009081526020819052604090205460ff1661037a5760405162461bcd60e51b815260206004820152601e60248201527f5461726765742061646472657373206973206e6f7420616e206f776e657200006044820152606401610309565b6001600160a01b0381166000908152602081905260409020805460ff191690556103a5600182610a74565b50565b6060600280546103b790610ef7565b80601f01602080910402602001604051908101604052809291908181526020018280546103e390610ef7565b80156104305780601f1061040557610100808354040283529160200191610430565b820191906000526020600020905b81548152906001019060200180831161041357829003601f168201915b5050505050905090565b600154158061044f575061044f610177610a40565b61046b5760405162461bcd60e51b815260040161030990610eb5565b8060048360405161047c9190610f32565b90815260405190819003602001902080546001600160a01b03929092166001600160a01b03199092169190911790555050565b60606005826040516104c19190610f32565b908152602001604051809103902080546104da90610ef7565b80601f016020809104026020016040519081016040528092919081815260200182805461050690610ef7565b80156105535780601f1061052857610100808354040283529160200191610553565b820191906000526020600020905b81548152906001019060200180831161053657829003601f168201915b50505050509050919050565b60015415806105745750610574610177610a40565b6105905760405162461bcd60e51b815260040161030990610eb5565b806001600160a01b03166004836040516105aa9190610f32565b908152604051908190036020019020546001600160a01b031614156105cd575050565b60006001600160a01b03166004836040516105e89190610f32565b908152604051908190036020019020546001600160a01b03161461046b5760405162461bcd60e51b815260206004820152602e60248201527f53657269616c206e756d6265722070726f766964656420616c7265616479206860448201526d30b99030b9b9b7b1b4b0ba34b7b760911b6064820152608401610309565b5050565b600154158061067e575061067e610177610a40565b61069a5760405162461bcd60e51b815260040161030990610eb5565b60005b600154811015610705576000806000600184815481106106bf576106bf610f4e565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806106fd81610f7a565b91505061069d565b5061071260016000610b7e565b565b60015415806107295750610729610177610a40565b6107455760405162461bcd60e51b815260040161030990610eb5565b6001600160a01b03811660009081526020819052604090205460ff16156107695750565b6001600160a01b03166000818152602081905260408120805460ff191660019081179091558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319169091179055565b60015415806107e157506107e1610177610a40565b6107fd5760405162461bcd60e51b815260040161030990610eb5565b6040518060200160405280600081525060058260405161081d9190610f32565b90815260200160405180910390209080519060200190610665929190610b9c565b60015415806108535750610853610177610a40565b61086f5760405162461bcd60e51b815260040161030990610eb5565b8051610665906002906020840190610b9c565b60006004826040516108949190610f32565b908152604051908190036020019020546001600160a01b031692915050565b6060600180548060200260200160405190810160405280929190818152602001828054801561043057602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108ed575050505050905090565b60015415806109295750610929610177610a40565b6109455760405162461bcd60e51b815260040161030990610eb5565b60006004826040516109579190610f32565b90815260405190819003602001902080546001600160a01b03929092166001600160a01b031990921691909117905550565b600154158061099e575061099e610177610a40565b6109ba5760405162461bcd60e51b815260040161030990610eb5565b806005836040516109cb9190610f32565b908152602001604051809103902090805190602001906109ec929190610b9c565b505050565b6001541580610a065750610a06610177610a40565b610a225760405162461bcd60e51b815260040161030990610eb5565b600380546001600160a01b0319166001600160a01b03831617905550565b600060143610801590610a5d57506003546001600160a01b031633145b15610a6f575060131936013560601c90565b503390565b60005b82548110156109ec57816001600160a01b0316838281548110610a9c57610a9c610f4e565b6000918252602090912001546001600160a01b03161415610b6c5782548390610ac790600190610f95565b81548110610ad757610ad7610f4e565b9060005260206000200160009054906101000a90046001600160a01b0316838281548110610b0757610b07610f4e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555082805480610b4557610b45610fac565b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80610b7681610f7a565b915050610a77565b50805460008255906000526020600020908101906103a59190610c20565b828054610ba890610ef7565b90600052602060002090601f016020900481019282610bca5760008555610c10565b82601f10610be357805160ff1916838001178555610c10565b82800160010185558215610c10579182015b82811115610c10578251825591602001919060010190610bf5565b50610c1c929150610c20565b5090565b5b80821115610c1c5760008155600101610c21565b60005b83811015610c50578181015183820152602001610c38565b83811115610c5f576000848401525b50505050565b6020815260008251806020840152610c84816040850160208701610c35565b601f01601f19169190910160400192915050565b80356001600160a01b0381168114610caf57600080fd5b919050565b600060208284031215610cc657600080fd5b610ccf82610c98565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610cfd57600080fd5b813567ffffffffffffffff80821115610d1857610d18610cd6565b604051601f8301601f19908116603f01168101908282118183101715610d4057610d40610cd6565b81604052838152866020858801011115610d5957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610d8c57600080fd5b823567ffffffffffffffff811115610da357600080fd5b610daf85828601610cec565b925050610dbe60208401610c98565b90509250929050565b600060208284031215610dd957600080fd5b813567ffffffffffffffff811115610df057600080fd5b610dfc84828501610cec565b949350505050565b6020808252825182820181905260009190848201906040850190845b81811015610e455783516001600160a01b031683529284019291840191600101610e20565b50909695505050505050565b60008060408385031215610e6457600080fd5b823567ffffffffffffffff80821115610e7c57600080fd5b610e8886838701610cec565b93506020850135915080821115610e9e57600080fd5b50610eab85828601610cec565b9150509250929050565b60208082526022908201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604082015261371760f11b606082015260800190565b600181811c90821680610f0b57607f821691505b60208210811415610f2c57634e487b7160e01b600052602260045260246000fd5b50919050565b60008251610f44818460208701610c35565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415610f8e57610f8e610f64565b5060010190565b600082821015610fa757610fa7610f64565b500390565b634e487b7160e01b600052603160045260246000fdfe436f6e6e65637465645061636b6167696e67436f6e7472616374207620302e322e30a26469706673582212206cb8444d9247f7595f2b5fa77702c46235d0a4c731918d246a38214a5e1acb6164736f6c634300080c0033",
"linkReferences": {},
"deployedLinkReferences": {}
}