diff --git a/.env.example b/.env.example
index 8bf8f266..08b32035 100644
--- a/.env.example
+++ b/.env.example
@@ -4,34 +4,37 @@ MAINNET_RPC_URL=
INUFRA_KEY=
ETHERSCAN_API_KEY=
ETHERSCAN_API_KEY_OPTIMISM=
-MODERATOR_ADDRESS=
+RELAYER_ADDRESS=
#this is the private key of the first account of a default hardhat/anvil setup
PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
#optional:
ALCHEMY_KEY=
THEGRAPH_API_TOKEN=
+SATSUMA_DEPLOY_KEY=
#these are deterministic when deployed in that order on a fresh node with hardhat (anvil) seed
IPNFT_ADDRESS=0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512
-SOS_ADDRESS=0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9
-AUTHORIZER_ADDRESS=0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9
+SOS_ADDRESS=0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0
+AUTHORIZER_ADDRESS=0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9
-USDC_ADDRESS=0x0165878A594ca255338adfa4d48449f69242Eb8F
-DAO_TOKEN_ADDRESS=0xa513E6E4b8f2a923D98304ec87F64353C4D5C853
-VDAO_TOKEN_ADDRESS=0x2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6
+USDC_ADDRESS=0x5FC8d32690cc91D4c39d9d3abcBD16989F875707
+DAO_TOKEN_ADDRESS=0x0165878A594ca255338adfa4d48449f69242Eb8F
+VDAO_TOKEN_ADDRESS=0xa513E6E4b8f2a923D98304ec87F64353C4D5C853
-PRICEFEED_ADDRESS=0x8A791620dd6260079BF849Dc5567aDC3F2FdC318
-TERMS_ACCEPTED_PERMISSIONER_ADDRESS=0x610178dA211FEF7D417bC0e6FeD39F05609AD788
+PRICEFEED_ADDRESS=0x2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6
+TERMS_ACCEPTED_PERMISSIONER_ADDRESS=0x8A791620dd6260079BF849Dc5567aDC3F2FdC318
-TOKENIZER_ADDRESS=0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0
-STAKED_LOCKING_CROWDSALE_ADDRESS=0x9A676e781A523b5d0C0e43731313A708CB607508
+TOKENIZER_ADDRESS=0xB7f8BC63BbcaD18155201308C8f3540b07f84F5e
+STAKED_LOCKING_CROWDSALE_ADDRESS=0x0B306BF915C4d645ff596e518fAf3F9669b97016
-USDC6_ADDRESS=0x9A9f2CCfdE556A7E9Ff0848998Aa4a0CFD8863AE
-WETH_ADDRESS=0x59b670e9fA9D0A427751Af201D676719a970857b
+USDC6_ADDRESS=0x68B1D87F95878fE05B998F19b66F4baba5De1aed
+WETH_ADDRESS=0x4ed7c70F96B99c776995fB64377f0d4aB3B0e1C1
+PLAIN_CROWDSALE_ADDRESS=0x7a2088a1bFc9d81c55368AE168C2C02570cB814F
-PLAIN_CROWDSALE_ADDRESS=0x4A679253410272dd5232B3Ff7cF5dbB88f295319
+#this is created during the tokenizer deployment
+IPTOKEN_IMPLEMENTATION_ADDRESS=0x0DCd1Bf9A1b36cE34237eEaFef220932846BCD82
#these are generated when running the fixture scripts
-IPTS_ADDRESS=0x1F708C24a0D3A740cD47cC0444E9480899f3dA7D
-LOCKED_IPTS_ADDRESS=0x06cd7788D77332cF1156f1E327eBC090B5FF16a3
\ No newline at end of file
+IPTS_ADDRESS=0x8dAF17A20c9DBA35f005b6324F493785D239719d
+LOCKED_IPTS_ADDRESS=0x16eBC21B3d38Db5e3EE1a022bEBA8Ec87D4CDbe6
\ No newline at end of file
diff --git a/README.md b/README.md
index e9202da1..e5b7ba26 100644
--- a/README.md
+++ b/README.md
@@ -16,19 +16,78 @@ IP-NFTs allow their users to tokenize intellectual property. This repo contains
| Crowdsale | [0xf0a8d23f38e9cbbe01c4ed37f23bd519b65bc6c2](https://etherscan.io/address/0xf0a8d23f38e9cbbe01c4ed37f23bd519b65bc6c2#code) | |
| StakedLockingCrowdSale | [0x35Bce29F52f51f547998717CD598068Afa2B29B7](https://etherscan.io/address/0x35Bce29F52f51f547998717CD598068Afa2B29B7#code) | |
-- Subgraph:
+#### Subgraph
+
+API: https://api.thegraph.com/subgraphs/name/moleculeprotocol/ip-nft-mainnet
+Playground: https://api.thegraph.com/subgraphs/name/moleculeprotocol/ip-nft-mainnet/graphql
tokenizer implementation 1.2: 0xE8701330F196FeFe415b28dAA767AB076F42557A
tokenizer implementation 1.1: 0x9C70FA8c87D7e94Fd63eeCCcA657D5c4224a36f3
iptoken implementation: 0x9E4fc6E6d1A64e3429aB852d3CB31AD7aa06997A
ipnft implementation 2.4: 0x6B179Dffac5E190c670176606f552cB792847f80
-Defender Relayer that signs off minting requests from our side:
-0x3D30452c48F2448764d5819a9A2b684Ae2CC5AcF
+#### Defender Relayer
+
+signs off minting requests from our side: 0x3D30452c48F2448764d5819a9A2b684Ae2CC5AcF
---
-### Goerli
+### Sepolia
+
+| Contract | Address | Explorer |
+| ------------------ | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| IPNFT | 0x152B444e60C526fe4434C721561a077269FcF61a | |
+| Swap | 0x9e4c638e703d0Af3a3B9eb488dE79A16d402698f | |
+| Authorizer | 0x7a9F3773352e4ee0Da6307Cd32C45fE89602129A | |
+| Terms Permissioner | 0xC05D649368d8A5e2E98CAa205d47795de5fCB599 | |
+| Tokenizer | 0xca63411FF5187431028d003eD74B57531408d2F9 | |
+| Crowdsale | 0x8cA737E2cdaE1Ceb332bEf7ba9eA711a3a2f8037 | |
+| Staked Crowdsale | 0xd1cE2EA7d3b0C9cAB025A4aD762FC00315141ad7 | |
+
+#### Subgraphs
+
+on Satsuma, Tech Account
+
+API: https://subgraph.satsuma-prod.com/techs-team--4017766/moleculexyz-ipnft-sepolia/version/v0.0.1/api
+Playground: https://subgraph.satsuma-prod.com/techs-team--4017766/moleculexyz-ipnft-sepolia/playground
+
+#### Defender Relayer
+
+signs off minting requests from our side: 0xd7B298c9fB0377124d01D4E826d9D5beFB7CD6FE
+
+#### Tokens
+
+| Contract | Address | |
+| -------------- | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| USDC | 0x309EFD49752803D0B3Ddba2B66A7A900F99B4E70 | |
+| Bio Dao | 0x62f3cBab2C84fbA31DEc50CD21dbb5577333C69a | |
+| vested Bio Dao | 0x19A3036b828bffB5E14da2659E950E76f8e6BAA2 | |
+
+old
+Plain Crowdsale 0xc272b3e980ee3c1e52a9814b1a1d6c48295e8d91 https://sepolia.etherscan.io/address/0xc272b3e980ee3c1e52a9814b1a1d6c48295e8d91
+
+```
+IPNFT_ADDRESS=0x152B444e60C526fe4434C721561a077269FcF61a
+ipnft impl 0x67881bbE2d58f5eeb2f2cad3a1FB7Bb6CB834A5A
+SOS_ADDRESS=0x9e4c638e703d0Af3a3B9eb488dE79A16d402698f
+AUTHORIZER_ADDRESS=0x7a9F3773352e4ee0Da6307Cd32C45fE89602129A
+
+TERMS_ACCEPTED_PERMISSIONER_ADDRESS=0xC05D649368d8A5e2E98CAa205d47795de5fCB599
+TOKENIZER_ADDRESS=0xca63411FF5187431028d003eD74B57531408d2F9
+CROWDSALE_ADDRESS=0x8cA737E2cdaE1Ceb332bEf7ba9eA711a3a2f8037
+STAKED_LOCKING_CROWDSALE_ADDRESS=0xd1cE2EA7d3b0C9cAB025A4aD762FC00315141ad7
+
+initial IP Token implementation=0xB16e92029De283800df9030De2F255DcB99F19e9
+tokenizer imple 0x672d3389b5c5a050ad93100d548817d87edc8597
+
+USDC_ADDRESS=0x309EFD49752803D0B3Ddba2B66A7A900F99B4E70
+DAO_TOKEN_ADDRESS=0x62f3cBab2C84fbA31DEc50CD21dbb5577333C69a
+VDAO_TOKEN_ADDRESS=0x19A3036b828bffB5E14da2659E950E76f8e6BAA2
+```
+
+---
+
+### ~~Deprecated Goerli~~
| Contract | Address | Actions |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@@ -54,11 +113,7 @@ Defender Relayer that signs off minting requests from our side:
- Blind Permissioner: 0xec68a1fc8d4c2834f8dfbdb56691f9f0a3d6be11
-### Sepolia
-
-Plain Crowdsale 0xc272b3e980ee3c1e52a9814b1a1d6c48295e8d91 https://sepolia.etherscan.io/address/0xc272b3e980ee3c1e52a9814b1a1d6c48295e8d91
-
-#### some test tokens
+#### ~~Tokens~~
| Token name | Symbol | address |
| ------------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------- |
diff --git a/script/DeploySuite.s.sol b/script/DeploySuite.s.sol
index 01130ba0..0a8446a3 100644
--- a/script/DeploySuite.s.sol
+++ b/script/DeploySuite.s.sol
@@ -15,15 +15,13 @@ import { SignedMintAuthorizer } from "../src/SignedMintAuthorizer.sol";
*/
contract DeploySuite is Script {
function run() public {
- address moderator = vm.envAddress("MODERATOR_ADDRESS");
+ address relayer = vm.envAddress("RELAYER_ADDRESS");
vm.startBroadcast();
- IPNFT implementation = new IPNFT();
- ERC1967Proxy proxy = new ERC1967Proxy(address(implementation), "");
- IPNFT ipnft = IPNFT(address(proxy));
- ipnft.initialize();
+
+ IPNFT ipnft = IPNFT(address(new ERC1967Proxy(address(new IPNFT()), abi.encodeWithSelector(IPNFT.initialize.selector, ""))));
SchmackoSwap swap = new SchmackoSwap();
- SignedMintAuthorizer authorizer = new SignedMintAuthorizer(moderator);
+ SignedMintAuthorizer authorizer = new SignedMintAuthorizer(relayer);
ipnft.setAuthorizer(authorizer);
console.log("IPNFT_ADDRESS=%s", address(ipnft));
diff --git a/script/DeployTokenizer.s.sol b/script/DeployTokenizer.s.sol
index d2f12104..99645336 100644
--- a/script/DeployTokenizer.s.sol
+++ b/script/DeployTokenizer.s.sol
@@ -5,35 +5,36 @@ import "forge-std/Script.sol";
import "forge-std/console.sol";
import { IPNFT } from "../src/IPNFT.sol";
import { Tokenizer } from "../src/Tokenizer.sol";
+import { IPToken } from "../src/IPToken.sol";
import { ERC1967Proxy } from "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
import { BioPriceFeed } from "../src/BioPriceFeed.sol";
import { IPermissioner, TermsAcceptedPermissioner } from "../src/Permissioner.sol";
+import { CrowdSale } from "../src/crowdsale/CrowdSale.sol";
import { StakedLockingCrowdSale } from "../src/crowdsale/StakedLockingCrowdSale.sol";
contract DeployTokenizerInfrastructure is Script {
function run() public {
vm.startBroadcast();
address ipnftAddress = vm.envAddress("IPNFT_ADDRESS");
- BioPriceFeed feed = new BioPriceFeed();
- IPermissioner p = new TermsAcceptedPermissioner();
+ IPermissioner permissioner = new TermsAcceptedPermissioner();
Tokenizer tokenizer = Tokenizer(
address(
- new ERC1967Proxy(
- address(new Tokenizer()), ""
- )
+ address(new ERC1967Proxy(address(new Tokenizer()), abi.encodeWithSelector(Tokenizer.initialize.selector, ipnftAddress, permissioner)))
)
);
- tokenizer.initialize(IPNFT(ipnftAddress), p);
+ IPToken initialIpTokenImplementation = new IPToken();
+ tokenizer.setIPTokenImplementation(initialIpTokenImplementation);
+ CrowdSale crowdSale = new CrowdSale();
StakedLockingCrowdSale stakedLockingCrowdSale = new StakedLockingCrowdSale();
-
vm.stopBroadcast();
- console.log("PRICEFEED_ADDRESS=%s", address(feed));
- console.log("TERMS_ACCEPTED_PERMISSIONER_ADDRESS=%s", address(p));
+ console.log("TERMS_ACCEPTED_PERMISSIONER_ADDRESS=%s", address(permissioner));
console.log("TOKENIZER_ADDRESS=%s", address(tokenizer));
+ console.log("CROWDSALE_ADDRESS=%s", address(crowdSale));
console.log("STAKED_LOCKING_CROWDSALE_ADDRESS=%s", address(stakedLockingCrowdSale));
+ console.log("initial IP Token implementation=%s", address(initialIpTokenImplementation));
}
}
diff --git a/script/IPNFT.s.sol b/script/IPNFT.s.sol
index f05a8394..e3d77055 100644
--- a/script/IPNFT.s.sol
+++ b/script/IPNFT.s.sol
@@ -9,8 +9,12 @@ import "../src/IPNFT.sol";
contract Deploy is Script {
function run() public {
vm.startBroadcast();
- IPNFT ipnft = IPNFT(address(new ERC1967Proxy(address(new IPNFT()), "")));
- ipnft.initialize();
+ IPNFT ipnft = IPNFT(
+ address(
+ new ERC1967Proxy(address(new IPNFT()),
+ abi.encodeWithSelector(IPNFT.initialize.selector, ""))
+ )
+ );
vm.stopBroadcast();
console.log("IPNFT_ADDRESS=%s", address(ipnft));
diff --git a/script/dev/Ipnft.s.sol b/script/dev/Ipnft.s.sol
index c06fab56..adf1c920 100644
--- a/script/dev/Ipnft.s.sol
+++ b/script/dev/Ipnft.s.sol
@@ -24,8 +24,12 @@ contract DeployIpnftSuite is CommonScript {
function run() public {
prepareAddresses();
vm.startBroadcast(deployer);
- IPNFT ipnft = IPNFT(address(new ERC1967Proxy(address(new IPNFT()), "")));
- ipnft.initialize();
+ IPNFT ipnft = IPNFT(
+ address(
+ new ERC1967Proxy(address(new IPNFT()),
+ abi.encodeWithSelector(IPNFT.initialize.selector, ""))
+ )
+ );
SchmackoSwap swap = new SchmackoSwap();
diff --git a/script/dev/Tokenizer.s.sol b/script/dev/Tokenizer.s.sol
index 7d2bb92f..98630a55 100644
--- a/script/dev/Tokenizer.s.sol
+++ b/script/dev/Tokenizer.s.sol
@@ -16,17 +16,16 @@ contract DeployTokenizer is CommonScript {
function run() public {
prepareAddresses();
vm.startBroadcast(deployer);
- Tokenizer tokenizer = Tokenizer(
- address(
- new ERC1967Proxy(
- address(new Tokenizer()), ""
- )
- )
- );
+ Tokenizer tokenizer = Tokenizer(address(new ERC1967Proxy(address(new Tokenizer()), "")));
IPermissioner permissioner = IPermissioner(vm.envAddress("TERMS_ACCEPTED_PERMISSIONER_ADDRESS"));
tokenizer.initialize(IPNFT(vm.envAddress("IPNFT_ADDRESS")), permissioner);
+
+ IPToken initialIpTokenImplementation = new IPToken();
+ tokenizer.setIPTokenImplementation(initialIpTokenImplementation);
+
vm.stopBroadcast();
console.log("TOKENIZER_ADDRESS=%s", address(tokenizer));
+ console.log("IPTOKEN_IMPLEMENTATION_ADDRESS=%s", address(initialIpTokenImplementation));
}
}
diff --git a/src/SignedMintAuthorizer.sol b/src/SignedMintAuthorizer.sol
index 84e51b0c..51e04b40 100644
--- a/src/SignedMintAuthorizer.sol
+++ b/src/SignedMintAuthorizer.sol
@@ -10,12 +10,16 @@ import { IAuthorizeMints, SignedMintAuthorization } from "./IAuthorizeMints.sol"
contract SignedMintAuthorizer is IAuthorizeMints, Ownable {
mapping(address => bool) trustedSigners;
+ event SignerTrustChanged(address indexed signer, bool trusted);
+
constructor(address initialSigner) Ownable() {
trustedSigners[initialSigner] = true;
+ emit SignerTrustChanged(initialSigner, true);
}
function trustSigner(address signer, bool trust) external onlyOwner {
trustedSigners[signer] = trust;
+ emit SignerTrustChanged(signer, trust);
}
/// @inheritdoc IAuthorizeMints
diff --git a/subgraph/README.md b/subgraph/README.md
index 75f8951a..3235814e 100644
--- a/subgraph/README.md
+++ b/subgraph/README.md
@@ -1,5 +1,15 @@
# IPNFT subgraph
+## Sepolia
+
+API: https://subgraph.satsuma-prod.com/techs-team--4017766/moleculexyz-ipnft-sepolia/version/v0.0.1/api
+Playground: https://subgraph.satsuma-prod.com/techs-team--4017766/moleculexyz-ipnft-sepolia/playground
+
+## Mainnet
+
+API: https://api.thegraph.com/subgraphs/name/moleculeprotocol/ip-nft-mainnet
+Playground: https://api.thegraph.com/subgraphs/name/moleculeprotocol/ip-nft-mainnet/graphql
+
## Prerequisites
- you can deploy contracts locally (see [the main README](../README.md))
diff --git a/subgraph/abis/CrowdSale.json b/subgraph/abis/CrowdSale.json
index 42038142..417e9f58 100644
--- a/subgraph/abis/CrowdSale.json
+++ b/subgraph/abis/CrowdSale.json
@@ -1,591 +1,591 @@
[
{
+ "type": "constructor",
"inputs": [],
- "stateMutability": "nonpayable",
- "type": "constructor"
- },
- {
- "inputs": [],
- "name": "AlreadyClaimed",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadDecimals",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadSaleDuration",
- "type": "error"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "claim",
"inputs": [
{
- "internalType": "enum SaleState",
- "name": "expected",
- "type": "uint8"
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "enum SaleState",
- "name": "actual",
- "type": "uint8"
+ "name": "permission",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "BadSaleState",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadSalesAmount",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BidTooLow",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "FeesTooHigh",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "SaleAlreadyActive",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "SaleClosedForBids",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "SaleNotConcluded",
- "type": "error"
+ "outputs": [
+ {
+ "name": "auctionTokens",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "refunds",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "claimResults",
"inputs": [
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "SaleNotFund",
- "type": "error"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "contribution",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": true,
- "internalType": "address",
- "name": "bidder",
- "type": "address"
- },
+ "name": "contributor",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint256",
- "name": "amount",
- "type": "uint256"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Bid",
- "type": "event"
+ "stateMutability": "view"
+ },
+ {
+ "type": "function",
+ "name": "currentFeeBp",
+ "inputs": [],
+ "outputs": [
+ {
+ "name": "",
+ "type": "uint16",
+ "internalType": "uint16"
+ }
+ ],
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "getClaimableAmounts",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": true,
- "internalType": "address",
- "name": "claimer",
- "type": "address"
- },
+ "name": "bidder",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint256",
- "name": "claimed",
- "type": "uint256"
+ "name": "auctionTokens",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "refunded",
- "type": "uint256"
+ "name": "refunds",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Claimed",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "getSaleInfo",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "ClaimedAuctionTokens",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
+ "outputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "",
+ "type": "tuple",
+ "internalType": "struct SaleInfo",
+ "components": [
+ {
+ "name": "state",
+ "type": "uint8",
+ "internalType": "enum SaleState"
+ },
+ {
+ "name": "total",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "surplus",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "claimed",
+ "type": "bool",
+ "internalType": "bool"
+ },
+ {
+ "name": "feeBp",
+ "type": "uint16",
+ "internalType": "uint16"
+ }
+ ]
}
],
- "name": "ClaimedFundingGoal",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
- "inputs": [
+ "type": "function",
+ "name": "owner",
+ "inputs": [],
+ "outputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "Failed",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "placeBid",
"inputs": [
{
- "indexed": false,
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "biddingTokenAmount",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "permission",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "FeesUpdated",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "renounceOwnership",
+ "inputs": [],
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "setCurrentFeesBp",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "previousOwner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "newFeeBp",
+ "type": "uint16",
+ "internalType": "uint16"
}
],
- "name": "OwnershipTransferred",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "settle",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "totalBids",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "surplus",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Settled",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "startSale",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "issuer",
- "type": "address"
- },
- {
+ "name": "sale",
+ "type": "tuple",
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "indexed": false,
- "internalType": "struct Sale",
- "name": "sale",
- "type": "tuple"
- },
- {
- "indexed": false,
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
+ ]
}
],
- "name": "Started",
- "type": "event"
- },
- {
- "inputs": [
- {
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "internalType": "bytes",
- "name": "permission",
- "type": "bytes"
- }
- ],
- "name": "claim",
"outputs": [
{
- "internalType": "uint256",
- "name": "auctionTokens",
- "type": "uint256"
- },
- {
- "internalType": "uint256",
- "name": "refunds",
- "type": "uint256"
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "transferOwnership",
"inputs": [
{
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "newOwner",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "claimResults",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "event",
+ "name": "Bid",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
},
{
- "internalType": "address",
- "name": "contributor",
- "type": "address"
- }
- ],
- "name": "contribution",
- "outputs": [
- {
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "currentFeeBp",
- "outputs": [
+ "name": "bidder",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
{
- "internalType": "uint16",
- "name": "",
- "type": "uint16"
+ "name": "amount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Claimed",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
},
{
- "internalType": "address",
- "name": "bidder",
- "type": "address"
- }
- ],
- "name": "getClaimableAmounts",
- "outputs": [
+ "name": "claimer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
{
- "internalType": "uint256",
- "name": "auctionTokens",
- "type": "uint256"
+ "name": "claimed",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "refunds",
- "type": "uint256"
+ "name": "refunded",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "ClaimedAuctionTokens",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
- }
- ],
- "name": "getSaleInfo",
- "outputs": [
- {
- "components": [
- {
- "internalType": "enum SaleState",
- "name": "state",
- "type": "uint8"
- },
- {
- "internalType": "uint256",
- "name": "total",
- "type": "uint256"
- },
- {
- "internalType": "uint256",
- "name": "surplus",
- "type": "uint256"
- },
- {
- "internalType": "bool",
- "name": "claimed",
- "type": "bool"
- },
- {
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
- }
- ],
- "internalType": "struct SaleInfo",
- "name": "",
- "type": "tuple"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [],
- "name": "owner",
- "outputs": [
+ "type": "event",
+ "name": "ClaimedFundingGoal",
+ "inputs": [
{
- "internalType": "address",
- "name": "",
- "type": "address"
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Failed",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
- },
- {
- "internalType": "uint256",
- "name": "biddingTokenAmount",
- "type": "uint256"
- },
- {
- "internalType": "bytes",
- "name": "permission",
- "type": "bytes"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "name": "placeBid",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [],
- "name": "renounceOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "type": "event",
+ "name": "FeesUpdated",
+ "inputs": [
+ {
+ "name": "feeBp",
+ "type": "uint16",
+ "indexed": false,
+ "internalType": "uint16"
+ }
+ ],
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "OwnershipTransferred",
"inputs": [
{
- "internalType": "uint16",
- "name": "newFeeBp",
- "type": "uint16"
+ "name": "previousOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "newOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "name": "setCurrentFeesBp",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Settled",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "totalBids",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "surplus",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "name": "settle",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Started",
"inputs": [
{
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "issuer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "sale",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "internalType": "struct Sale",
- "name": "sale",
- "type": "tuple"
+ ]
+ },
+ {
+ "name": "feeBp",
+ "type": "uint16",
+ "indexed": false,
+ "internalType": "uint16"
}
],
- "name": "startSale",
- "outputs": [
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "AlreadyClaimed",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BadDecimals",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BadSaleDuration",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BadSaleState",
+ "inputs": [
{
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "expected",
+ "type": "uint8",
+ "internalType": "enum SaleState"
+ },
+ {
+ "name": "actual",
+ "type": "uint8",
+ "internalType": "enum SaleState"
}
- ],
- "stateMutability": "nonpayable",
- "type": "function"
+ ]
},
{
+ "type": "error",
+ "name": "BadSalesAmount",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BidTooLow",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "FeesTooHigh",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleAlreadyActive",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleClosedForBids",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleNotConcluded",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleNotFund",
"inputs": [
{
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
- ],
- "name": "transferOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ ]
}
]
diff --git a/subgraph/abis/IERC20Metadata.json b/subgraph/abis/IERC20Metadata.json
index 177ac839..2ec1d7c4 100644
--- a/subgraph/abis/IERC20Metadata.json
+++ b/subgraph/abis/IERC20Metadata.json
@@ -1,224 +1,224 @@
[
{
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "spender",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "value",
- "type": "uint256"
- }
- ],
- "name": "Approval",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "from",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "value",
- "type": "uint256"
- }
- ],
- "name": "Transfer",
- "type": "event"
- },
- {
+ "type": "function",
+ "name": "allowance",
"inputs": [
{
- "internalType": "address",
"name": "owner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "spender",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "allowance",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "approve",
"inputs": [
{
- "internalType": "address",
"name": "spender",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "approve",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "balanceOf",
"inputs": [
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "balanceOf",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "decimals",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint8",
"name": "",
- "type": "uint8"
+ "type": "uint8",
+ "internalType": "uint8"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "name",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "symbol",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "totalSupply",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "transfer",
"inputs": [
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transfer",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "transferFrom",
"inputs": [
{
- "internalType": "address",
"name": "from",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transferFrom",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "event",
+ "name": "Approval",
+ "inputs": [
+ {
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "spender",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "value",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Transfer",
+ "inputs": [
+ {
+ "name": "from",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "to",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "value",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
}
]
diff --git a/subgraph/abis/IPNFT.json b/subgraph/abis/IPNFT.json
index 3e07646d..d342d424 100644
--- a/subgraph/abis/IPNFT.json
+++ b/subgraph/abis/IPNFT.json
@@ -1,890 +1,890 @@
[
{
+ "type": "constructor",
"inputs": [],
- "stateMutability": "nonpayable",
- "type": "constructor"
- },
- {
- "inputs": [],
- "name": "BadDuration",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "InsufficientBalance",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "MintingFeeTooLow",
- "type": "error"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "approve",
"inputs": [
{
- "internalType": "uint256",
- "name": "id",
- "type": "uint256"
+ "name": "to",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "NotOwningReservation",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ToZeroAddress",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "Unauthorized",
- "type": "error"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "balanceOf",
"inputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "previousAdmin",
- "type": "address"
- },
+ "name": "owner",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "newAdmin",
- "type": "address"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "AdminChanged",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "burn",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "approved",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Approval",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "canRead",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
+ "name": "reader",
+ "type": "address",
+ "internalType": "address"
},
{
- "indexed": true,
- "internalType": "address",
- "name": "operator",
- "type": "address"
- },
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "bool",
- "name": "approved",
- "type": "bool"
+ "name": "",
+ "type": "bool",
+ "internalType": "bool"
}
],
- "name": "ApprovalForAll",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
- "inputs": [
+ "type": "function",
+ "name": "contractURI",
+ "inputs": [],
+ "outputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "authorizer",
- "type": "address"
+ "name": "",
+ "type": "string",
+ "internalType": "string"
}
],
- "name": "AuthorizerUpdated",
- "type": "event"
+ "stateMutability": "pure"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "getApproved",
"inputs": [
{
- "indexed": false,
- "internalType": "uint256",
- "name": "_fromTokenId",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_toTokenId",
- "type": "uint256"
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "BatchMetadataUpdate",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
+ "outputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "beacon",
- "type": "address"
+ "name": "",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "BeaconUpgraded",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "grantReadAccess",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
+ "name": "reader",
+ "type": "address",
+ "internalType": "address"
},
{
- "indexed": true,
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "string",
- "name": "tokenURI",
- "type": "string"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "string",
- "name": "symbol",
- "type": "string"
- }
- ],
- "name": "IPNFTMinted",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
+ "name": "until",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Initialized",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_tokenId",
- "type": "uint256"
- }
- ],
- "name": "MetadataUpdate",
- "type": "event"
+ "type": "function",
+ "name": "initialize",
+ "inputs": [],
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "isApprovedForAll",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "previousOwner",
- "type": "address"
+ "name": "owner",
+ "type": "address",
+ "internalType": "address"
},
{
- "indexed": true,
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "operator",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "OwnershipTransferred",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
+ "outputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "account",
- "type": "address"
+ "name": "",
+ "type": "bool",
+ "internalType": "bool"
}
],
- "name": "Paused",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "mintReservation",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
+ "name": "to",
+ "type": "address",
+ "internalType": "address"
},
{
- "indexed": true,
- "internalType": "address",
- "name": "reader",
- "type": "address"
+ "name": "reservationId",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "until",
- "type": "uint256"
- }
- ],
- "name": "ReadAccessGranted",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
+ "name": "_tokenURI",
+ "type": "string",
+ "internalType": "string"
+ },
{
- "indexed": true,
- "internalType": "address",
- "name": "reserver",
- "type": "address"
+ "name": "_symbol",
+ "type": "string",
+ "internalType": "string"
},
{
- "indexed": true,
- "internalType": "uint256",
- "name": "reservationId",
- "type": "uint256"
+ "name": "authorization",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "Reserved",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "from",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
+ "outputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Transfer",
- "type": "event"
+ "stateMutability": "payable"
},
{
- "anonymous": false,
- "inputs": [
+ "type": "function",
+ "name": "name",
+ "inputs": [],
+ "outputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "account",
- "type": "address"
+ "name": "",
+ "type": "string",
+ "internalType": "string"
}
],
- "name": "Unpaused",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
- "inputs": [
+ "type": "function",
+ "name": "owner",
+ "inputs": [],
+ "outputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "implementation",
- "type": "address"
+ "name": "",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "Upgraded",
- "type": "event"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "ownerOf",
"inputs": [
{
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
- {
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "approve",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
+ "outputs": [
{
- "internalType": "address",
- "name": "owner",
- "type": "address"
+ "name": "",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "balanceOf",
+ "stateMutability": "view"
+ },
+ {
+ "type": "function",
+ "name": "pause",
+ "inputs": [],
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "paused",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [
+ "type": "function",
+ "name": "proxiableUUID",
+ "inputs": [],
+ "outputs": [
{
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
+ "name": "",
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "name": "burn",
+ "stateMutability": "view"
+ },
+ {
+ "type": "function",
+ "name": "renounceOwnership",
+ "inputs": [],
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "reservations",
"inputs": [
{
- "internalType": "address",
- "name": "reader",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "canRead",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "reserve",
"inputs": [],
- "name": "contractURI",
"outputs": [
{
- "internalType": "string",
- "name": "",
- "type": "string"
+ "name": "reservationId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "safeTransferFrom",
"inputs": [
{
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- }
- ],
- "name": "getApproved",
- "outputs": [
+ "name": "from",
+ "type": "address",
+ "internalType": "address"
+ },
{
- "internalType": "address",
- "name": "",
- "type": "address"
+ "name": "to",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "safeTransferFrom",
"inputs": [
{
- "internalType": "address",
- "name": "reader",
- "type": "address"
+ "name": "from",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "to",
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "until",
- "type": "uint256"
+ "name": "data",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "grantReadAccess",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
- "name": "initialize",
+ "type": "function",
+ "name": "setApprovalForAll",
+ "inputs": [
+ {
+ "name": "operator",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "approved",
+ "type": "bool",
+ "internalType": "bool"
+ }
+ ],
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "setAuthorizer",
"inputs": [
{
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
+ "name": "authorizer_",
+ "type": "address",
+ "internalType": "contract IAuthorizeMints"
+ }
+ ],
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "supportsInterface",
+ "inputs": [
{
- "internalType": "address",
- "name": "operator",
- "type": "address"
+ "name": "interfaceId",
+ "type": "bytes4",
+ "internalType": "bytes4"
}
],
- "name": "isApprovedForAll",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "symbol",
"inputs": [
{
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "reservationId",
- "type": "uint256"
- },
- {
- "internalType": "string",
- "name": "_tokenURI",
- "type": "string"
- },
- {
- "internalType": "string",
- "name": "_symbol",
- "type": "string"
- },
- {
- "internalType": "bytes",
- "name": "authorization",
- "type": "bytes"
- }
- ],
- "name": "mintReservation",
- "outputs": [
- {
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "payable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "name",
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "symbol",
"inputs": [],
- "name": "owner",
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "tokenURI",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "ownerOf",
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "pause",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
- "name": "paused",
- "outputs": [
+ "type": "function",
+ "name": "transferFrom",
+ "inputs": [
{
- "internalType": "bool",
- "name": "",
- "type": "bool"
+ "name": "from",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "to",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
- "name": "proxiableUUID",
- "outputs": [
+ "type": "function",
+ "name": "transferOwnership",
+ "inputs": [
{
- "internalType": "bytes32",
- "name": "",
- "type": "bytes32"
+ "name": "newOwner",
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "unpause",
"inputs": [],
- "name": "renounceOwnership",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "upgradeTo",
"inputs": [
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "newImplementation",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "reservations",
- "outputs": [
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "upgradeToAndCall",
+ "inputs": [
{
- "internalType": "address",
- "name": "",
- "type": "address"
+ "name": "newImplementation",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "data",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "stateMutability": "view",
- "type": "function"
+ "outputs": [],
+ "stateMutability": "payable"
},
{
+ "type": "function",
+ "name": "withdrawAll",
"inputs": [],
- "name": "reserve",
- "outputs": [
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "event",
+ "name": "AdminChanged",
+ "inputs": [
{
- "internalType": "uint256",
- "name": "reservationId",
- "type": "uint256"
+ "name": "previousAdmin",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
+ },
+ {
+ "name": "newAdmin",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Approval",
"inputs": [
{
- "internalType": "address",
- "name": "from",
- "type": "address"
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "address",
- "name": "to",
- "type": "address"
+ "name": "approved",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "name": "safeTransferFrom",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "ApprovalForAll",
"inputs": [
{
- "internalType": "address",
- "name": "from",
- "type": "address"
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "address",
- "name": "to",
- "type": "address"
+ "name": "operator",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- },
+ "name": "approved",
+ "type": "bool",
+ "indexed": false,
+ "internalType": "bool"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "AuthorizerUpdated",
+ "inputs": [
{
- "internalType": "bytes",
- "name": "data",
- "type": "bytes"
+ "name": "authorizer",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
}
],
- "name": "safeTransferFrom",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "BatchMetadataUpdate",
"inputs": [
{
- "internalType": "address",
- "name": "operator",
- "type": "address"
+ "name": "_fromTokenId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
},
{
- "internalType": "bool",
- "name": "approved",
- "type": "bool"
+ "name": "_toTokenId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "name": "setApprovalForAll",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "BeaconUpgraded",
"inputs": [
{
- "internalType": "contract IAuthorizeMints",
- "name": "authorizer_",
- "type": "address"
+ "name": "beacon",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "name": "setAuthorizer",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "IPNFTMinted",
"inputs": [
{
- "internalType": "bytes4",
- "name": "interfaceId",
- "type": "bytes4"
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "tokenURI",
+ "type": "string",
+ "indexed": false,
+ "internalType": "string"
+ },
+ {
+ "name": "symbol",
+ "type": "string",
+ "indexed": false,
+ "internalType": "string"
}
],
- "name": "supportsInterface",
- "outputs": [
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Initialized",
+ "inputs": [
{
- "internalType": "bool",
- "name": "",
- "type": "bool"
+ "name": "version",
+ "type": "uint8",
+ "indexed": false,
+ "internalType": "uint8"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "MetadataUpdate",
"inputs": [
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "_tokenId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "name": "symbol",
- "outputs": [
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "OwnershipTransferred",
+ "inputs": [
{
- "internalType": "string",
- "name": "",
- "type": "string"
+ "name": "previousOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "newOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [],
- "name": "symbol",
- "outputs": [
+ "type": "event",
+ "name": "Paused",
+ "inputs": [
{
- "internalType": "string",
- "name": "",
- "type": "string"
+ "name": "account",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "ReadAccessGranted",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "reader",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "until",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "name": "tokenURI",
- "outputs": [
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Reserved",
+ "inputs": [
{
- "internalType": "string",
- "name": "",
- "type": "string"
+ "name": "reserver",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "reservationId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Transfer",
"inputs": [
{
- "internalType": "address",
"name": "from",
- "type": "address"
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "name": "transferFrom",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Unpaused",
"inputs": [
{
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "account",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
}
],
- "name": "transferOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "unpause",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Upgraded",
"inputs": [
{
- "internalType": "address",
- "name": "newImplementation",
- "type": "address"
+ "name": "implementation",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "name": "upgradeTo",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "BadDuration",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "InsufficientBalance",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "MintingFeeTooLow",
+ "inputs": []
},
{
+ "type": "error",
+ "name": "NotOwningReservation",
"inputs": [
{
- "internalType": "address",
- "name": "newImplementation",
- "type": "address"
- },
- {
- "internalType": "bytes",
- "name": "data",
- "type": "bytes"
+ "name": "id",
+ "type": "uint256",
+ "internalType": "uint256"
}
- ],
- "name": "upgradeToAndCall",
- "outputs": [],
- "stateMutability": "payable",
- "type": "function"
+ ]
},
{
- "inputs": [],
- "name": "withdrawAll",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "type": "error",
+ "name": "ToZeroAddress",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "Unauthorized",
+ "inputs": []
}
]
diff --git a/subgraph/abis/IPToken.json b/subgraph/abis/IPToken.json
index 9ec01528..a3300de1 100644
--- a/subgraph/abis/IPToken.json
+++ b/subgraph/abis/IPToken.json
@@ -1,551 +1,556 @@
[
{
+ "type": "constructor",
"inputs": [],
- "name": "OnlyIssuerOrOwner",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "TokenCapped",
- "type": "error"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "spender",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "value",
- "type": "uint256"
- }
- ],
- "name": "Approval",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "atSupply",
- "type": "uint256"
- }
- ],
- "name": "Capped",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
- }
- ],
- "name": "Initialized",
- "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"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "from",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "value",
- "type": "uint256"
- }
- ],
- "name": "Transfer",
- "type": "event"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "allowance",
"inputs": [
{
- "internalType": "address",
"name": "owner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "spender",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "allowance",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "approve",
"inputs": [
{
- "internalType": "address",
"name": "spender",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "approve",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "balanceOf",
"inputs": [
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "balanceOf",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "burn",
"inputs": [
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "burn",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "burnFrom",
"inputs": [
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "burnFrom",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "cap",
+ "inputs": [],
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "capped",
+ "inputs": [],
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "decimals",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint8",
"name": "",
- "type": "uint8"
+ "type": "uint8",
+ "internalType": "uint8"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "decreaseAllowance",
"inputs": [
{
- "internalType": "address",
"name": "spender",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "subtractedValue",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "decreaseAllowance",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "hash",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "increaseAllowance",
"inputs": [
{
- "internalType": "address",
"name": "spender",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "addedValue",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "increaseAllowance",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "initialize",
"inputs": [
{
- "internalType": "string",
"name": "name",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
},
{
- "internalType": "string",
"name": "symbol",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
},
{
+ "name": "metadata_",
+ "type": "tuple",
+ "internalType": "struct Metadata",
"components": [
{
- "internalType": "uint256",
"name": "ipnftId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "originalOwner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "string",
"name": "agreementCid",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
- ],
- "internalType": "struct Metadata",
- "name": "metadata_",
- "type": "tuple"
+ ]
}
],
- "name": "initialize",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "issue",
"inputs": [
{
- "internalType": "address",
"name": "receiver",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "issue",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "issuer",
+ "inputs": [],
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "metadata",
+ "inputs": [],
"outputs": [
{
+ "name": "",
+ "type": "tuple",
+ "internalType": "struct Metadata",
"components": [
{
- "internalType": "uint256",
"name": "ipnftId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "originalOwner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "string",
"name": "agreementCid",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
- ],
- "internalType": "struct Metadata",
- "name": "",
- "type": "tuple"
+ ]
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "name",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "owner",
+ "inputs": [],
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "renounceOwnership",
+ "inputs": [],
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "symbol",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "totalIssued",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "totalSupply",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "transfer",
"inputs": [
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transfer",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "transferFrom",
"inputs": [
{
- "internalType": "address",
"name": "from",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transferFrom",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "transferOwnership",
"inputs": [
{
- "internalType": "address",
"name": "newOwner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "transferOwnership",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "uri",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
+ },
+ {
+ "type": "event",
+ "name": "Approval",
+ "inputs": [
+ {
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "spender",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "value",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Capped",
+ "inputs": [
+ {
+ "name": "atSupply",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Initialized",
+ "inputs": [
+ {
+ "name": "version",
+ "type": "uint8",
+ "indexed": false,
+ "internalType": "uint8"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "OwnershipTransferred",
+ "inputs": [
+ {
+ "name": "previousOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "newOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Transfer",
+ "inputs": [
+ {
+ "name": "from",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "to",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "value",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "OnlyIssuerOrOwner",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "TokenCapped",
+ "inputs": []
}
]
diff --git a/subgraph/abis/Mintpass.json b/subgraph/abis/Mintpass.json
index 7c491cd0..0fa776d0 100644
--- a/subgraph/abis/Mintpass.json
+++ b/subgraph/abis/Mintpass.json
@@ -1,810 +1,810 @@
[
{
+ "type": "constructor",
"inputs": [
{
- "internalType": "address",
"name": "ipnftContract",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "nonpayable",
- "type": "constructor"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
- "name": "AlreadyRedeemed",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ApprovalOwnerIsOperator",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ApprovalToCurrentOwner",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BalanceQueryZeroAddress",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ERC721ReceiverNotReceived",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "InvalidCall",
- "type": "error"
- },
- {
- "inputs": [
- {
- "internalType": "uint256",
- "name": "id",
- "type": "uint256"
- }
- ],
- "name": "MintPassRevoked",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "NonExistentToken",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "NotERC721Receiver",
- "type": "error"
- },
- {
- "inputs": [
- {
- "internalType": "uint256",
- "name": "id",
- "type": "uint256"
- }
- ],
- "name": "NotOwningMintpass",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "NotRedeemable",
- "type": "error"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "approved",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- }
- ],
- "name": "Approval",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "operator",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "bool",
- "name": "approved",
- "type": "bool"
- }
- ],
- "name": "ApprovalForAll",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- }
- ],
- "name": "Burned",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- }
- ],
- "name": "Redeemed",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- }
- ],
- "name": "Revoked",
- "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": "address",
- "name": "from",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- }
- ],
- "name": "Transfer",
- "type": "event"
- },
- {
- "inputs": [],
+ "type": "function",
"name": "DEFAULT_ADMIN_ROLE",
+ "inputs": [],
"outputs": [
{
- "internalType": "bytes32",
"name": "",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "MODERATOR",
+ "inputs": [],
"outputs": [
{
- "internalType": "bytes32",
"name": "",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "REDEEMER",
+ "inputs": [],
"outputs": [
{
- "internalType": "bytes32",
"name": "",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "approve",
"inputs": [
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "approve",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "authorizeMint",
"inputs": [
{
- "internalType": "address",
"name": "minter",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "bytes",
"name": "data",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "authorizeMint",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "authorizeReservation",
"inputs": [
{
- "internalType": "address",
"name": "reserver",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "authorizeReservation",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "balanceOf",
"inputs": [
{
- "internalType": "address",
"name": "owner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "balanceOf",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "baseTokenURI",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "batchMint",
"inputs": [
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "batchMint",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "burn",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "burn",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "getApproved",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "getApproved",
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "getRoleAdmin",
"inputs": [
{
- "internalType": "bytes32",
"name": "role",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "name": "getRoleAdmin",
"outputs": [
{
- "internalType": "bytes32",
"name": "",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "grantRole",
"inputs": [
{
- "internalType": "bytes32",
"name": "role",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
},
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "grantRole",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "hasRole",
"inputs": [
{
- "internalType": "bytes32",
"name": "role",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
},
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "hasRole",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "isApprovedForAll",
"inputs": [
{
- "internalType": "address",
"name": "owner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "operator",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "isApprovedForAll",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "isRedeemable",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "isRedeemable",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "name",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "pure"
},
{
+ "type": "function",
+ "name": "ownerOf",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "ownerOf",
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "redeem",
"inputs": [
{
- "internalType": "bytes",
"name": "data",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "redeem",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "renounceRole",
"inputs": [
{
- "internalType": "bytes32",
"name": "role",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
},
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "renounceRole",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "revoke",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "revoke",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "revokeRole",
"inputs": [
{
- "internalType": "bytes32",
"name": "role",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
},
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "revokeRole",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "safeTransferFrom",
"inputs": [
{
- "internalType": "address",
"name": "from",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "safeTransferFrom",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "safeTransferFrom",
"inputs": [
{
- "internalType": "address",
"name": "from",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "bytes",
"name": "_data",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "safeTransferFrom",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "setApprovalForAll",
"inputs": [
{
- "internalType": "address",
"name": "operator",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "bool",
"name": "approved",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "name": "setApprovalForAll",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "supportsInterface",
"inputs": [
{
- "internalType": "bytes4",
"name": "interfaceId",
- "type": "bytes4"
+ "type": "bytes4",
+ "internalType": "bytes4"
}
],
- "name": "supportsInterface",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "symbol",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "pure"
},
{
+ "type": "function",
+ "name": "tokenURI",
"inputs": [
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "tokenURI",
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "totalSupply",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "transferFrom",
"inputs": [
{
- "internalType": "address",
"name": "from",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "to",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transferFrom",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "event",
+ "name": "Approval",
+ "inputs": [
+ {
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "approved",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "ApprovalForAll",
+ "inputs": [
+ {
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "operator",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "approved",
+ "type": "bool",
+ "indexed": false,
+ "internalType": "bool"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Burned",
+ "inputs": [
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Redeemed",
+ "inputs": [
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Revoked",
+ "inputs": [
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "RoleAdminChanged",
+ "inputs": [
+ {
+ "name": "role",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ },
+ {
+ "name": "previousAdminRole",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ },
+ {
+ "name": "newAdminRole",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "RoleGranted",
+ "inputs": [
+ {
+ "name": "role",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ },
+ {
+ "name": "account",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "sender",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "RoleRevoked",
+ "inputs": [
+ {
+ "name": "role",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ },
+ {
+ "name": "account",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "sender",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Transfer",
+ "inputs": [
+ {
+ "name": "from",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "to",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "AlreadyRedeemed",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ApprovalOwnerIsOperator",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ApprovalToCurrentOwner",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BalanceQueryZeroAddress",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ERC721ReceiverNotReceived",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "InvalidCall",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "MintPassRevoked",
+ "inputs": [
+ {
+ "name": "id",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ]
+ },
+ {
+ "type": "error",
+ "name": "NonExistentToken",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "NotERC721Receiver",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "NotOwningMintpass",
+ "inputs": [
+ {
+ "name": "id",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ]
+ },
+ {
+ "type": "error",
+ "name": "NotRedeemable",
+ "inputs": []
}
]
diff --git a/subgraph/abis/SchmackoSwap.json b/subgraph/abis/SchmackoSwap.json
index 337e619d..e728a952 100644
--- a/subgraph/abis/SchmackoSwap.json
+++ b/subgraph/abis/SchmackoSwap.json
@@ -1,458 +1,458 @@
[
{
- "inputs": [],
- "name": "InsufficientAllowance",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ListingNotFound",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "NotOnAllowlist",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "Unauthorized",
- "type": "error"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "listingId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "buyer",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "bool",
- "name": "_isAllowed",
- "type": "bool"
- }
- ],
- "name": "AllowlistUpdated",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "listingId",
- "type": "uint256"
- },
- {
- "components": [
- {
- "internalType": "contract IERC721",
- "name": "tokenContract",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "creator",
- "type": "address"
- },
- {
- "internalType": "contract IERC20",
- "name": "paymentToken",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "askPrice",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "beneficiary",
- "type": "address"
- },
- {
- "internalType": "enum ListingState",
- "name": "listingState",
- "type": "uint8"
- }
- ],
- "indexed": false,
- "internalType": "struct SchmackoSwap.Listing",
- "name": "listing",
- "type": "tuple"
- }
- ],
- "name": "Listed",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "listingId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "buyer",
- "type": "address"
- },
- {
- "components": [
- {
- "internalType": "contract IERC721",
- "name": "tokenContract",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "creator",
- "type": "address"
- },
- {
- "internalType": "contract IERC20",
- "name": "paymentToken",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "askPrice",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "beneficiary",
- "type": "address"
- },
- {
- "internalType": "enum ListingState",
- "name": "listingState",
- "type": "uint8"
- }
- ],
- "indexed": false,
- "internalType": "struct SchmackoSwap.Listing",
- "name": "listing",
- "type": "tuple"
- }
- ],
- "name": "Purchased",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "listingId",
- "type": "uint256"
- },
- {
- "components": [
- {
- "internalType": "contract IERC721",
- "name": "tokenContract",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "tokenId",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "creator",
- "type": "address"
- },
- {
- "internalType": "contract IERC20",
- "name": "paymentToken",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "askPrice",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "beneficiary",
- "type": "address"
- },
- {
- "internalType": "enum ListingState",
- "name": "listingState",
- "type": "uint8"
- }
- ],
- "indexed": false,
- "internalType": "struct SchmackoSwap.Listing",
- "name": "listing",
- "type": "tuple"
- }
- ],
- "name": "Unlisted",
- "type": "event"
- },
- {
+ "type": "function",
+ "name": "cancel",
"inputs": [
{
- "internalType": "uint256",
"name": "listingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "cancel",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "changeBuyerAllowance",
"inputs": [
{
- "internalType": "uint256",
"name": "listingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "buyerAddress",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "bool",
"name": "_isAllowed",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "name": "changeBuyerAllowance",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "changeBuyerAllowance",
"inputs": [
{
- "internalType": "uint256",
"name": "listingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address[]",
"name": "buyerAddresses",
- "type": "address[]"
+ "type": "address[]",
+ "internalType": "address[]"
},
{
- "internalType": "bool",
"name": "_isAllowed",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "name": "changeBuyerAllowance",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "fulfill",
"inputs": [
{
- "internalType": "uint256",
"name": "listingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "fulfill",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "isAllowed",
"inputs": [
{
- "internalType": "uint256",
"name": "listingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "buyerAddress",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "isAllowed",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "list",
"inputs": [
{
- "internalType": "contract IERC721",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC721"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "contract IERC20",
"name": "paymentToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20"
},
{
- "internalType": "uint256",
"name": "askPrice",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "list",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "list",
"inputs": [
{
- "internalType": "contract IERC721",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC721"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "contract IERC20",
"name": "paymentToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20"
},
{
- "internalType": "uint256",
"name": "askPrice",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "list",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "listings",
"inputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "listings",
"outputs": [
{
- "internalType": "contract IERC721",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC721"
},
{
- "internalType": "uint256",
"name": "tokenId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "creator",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "contract IERC20",
"name": "paymentToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20"
},
{
- "internalType": "uint256",
"name": "askPrice",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "enum ListingState",
"name": "listingState",
- "type": "uint8"
+ "type": "uint8",
+ "internalType": "enum ListingState"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "supportsInterface",
"inputs": [
{
- "internalType": "bytes4",
"name": "interfaceId",
- "type": "bytes4"
+ "type": "bytes4",
+ "internalType": "bytes4"
}
],
- "name": "supportsInterface",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
+ }
+ ],
+ "stateMutability": "view"
+ },
+ {
+ "type": "event",
+ "name": "AllowlistUpdated",
+ "inputs": [
+ {
+ "name": "listingId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "buyer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "_isAllowed",
+ "type": "bool",
+ "indexed": false,
+ "internalType": "bool"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Listed",
+ "inputs": [
+ {
+ "name": "listingId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "listing",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct SchmackoSwap.Listing",
+ "components": [
+ {
+ "name": "tokenContract",
+ "type": "address",
+ "internalType": "contract IERC721"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "creator",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "paymentToken",
+ "type": "address",
+ "internalType": "contract IERC20"
+ },
+ {
+ "name": "askPrice",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "beneficiary",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "listingState",
+ "type": "uint8",
+ "internalType": "enum ListingState"
+ }
+ ]
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Purchased",
+ "inputs": [
+ {
+ "name": "listingId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "buyer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "listing",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct SchmackoSwap.Listing",
+ "components": [
+ {
+ "name": "tokenContract",
+ "type": "address",
+ "internalType": "contract IERC721"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "creator",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "paymentToken",
+ "type": "address",
+ "internalType": "contract IERC20"
+ },
+ {
+ "name": "askPrice",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "beneficiary",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "listingState",
+ "type": "uint8",
+ "internalType": "enum ListingState"
+ }
+ ]
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Unlisted",
+ "inputs": [
+ {
+ "name": "listingId",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "listing",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct SchmackoSwap.Listing",
+ "components": [
+ {
+ "name": "tokenContract",
+ "type": "address",
+ "internalType": "contract IERC721"
+ },
+ {
+ "name": "tokenId",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "creator",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "paymentToken",
+ "type": "address",
+ "internalType": "contract IERC20"
+ },
+ {
+ "name": "askPrice",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "beneficiary",
+ "type": "address",
+ "internalType": "address"
+ },
+ {
+ "name": "listingState",
+ "type": "uint8",
+ "internalType": "enum ListingState"
+ }
+ ]
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "InsufficientAllowance",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ListingNotFound",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "NotOnAllowlist",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "Unauthorized",
+ "inputs": []
}
]
diff --git a/subgraph/abis/SharedSalesDistributor.json b/subgraph/abis/SharedSalesDistributor.json
index fd02cb89..82976d74 100644
--- a/subgraph/abis/SharedSalesDistributor.json
+++ b/subgraph/abis/SharedSalesDistributor.json
@@ -1,381 +1,381 @@
[
{
- "inputs": [],
- "name": "InsufficientBalance",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ListingMismatch",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ListingNotFulfilled",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "NotClaimingYet",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "OnlyIssuer",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "UncappedToken",
- "type": "error"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "address",
- "name": "previousAdmin",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "address",
- "name": "newAdmin",
- "type": "address"
- }
- ],
- "name": "AdminChanged",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "beacon",
- "type": "address"
- }
- ],
- "name": "BeaconUpgraded",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
- }
- ],
- "name": "Initialized",
- "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"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "molecules",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "address",
- "name": "paymentToken",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "paidPrice",
- "type": "uint256"
- }
- ],
- "name": "SalesActivated",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "molecules",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "claimer",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "amount",
- "type": "uint256"
- }
- ],
- "name": "SharesClaimed",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "implementation",
- "type": "address"
- }
- ],
- "name": "Upgraded",
- "type": "event"
- },
- {
+ "type": "function",
+ "name": "afterSale",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
},
{
- "internalType": "contract IERC20",
"name": "paymentToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20"
},
{
- "internalType": "uint256",
"name": "paidPrice",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
],
- "name": "afterSale",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "afterSale",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
},
{
- "internalType": "uint256",
"name": "listingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
],
- "name": "afterSale",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "claim",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
},
{
- "internalType": "bytes",
"name": "permissions",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "claim",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "claimableTokens",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
},
{
- "internalType": "address",
"name": "holder",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "claimableTokens",
"outputs": [
{
- "internalType": "contract IERC20",
"name": "paymentToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "initialize",
"inputs": [
{
- "internalType": "contract SchmackoSwap",
"name": "_schmackoSwap",
- "type": "address"
+ "type": "address",
+ "internalType": "contract SchmackoSwap"
}
],
- "name": "initialize",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "owner",
+ "inputs": [],
"outputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "proxiableUUID",
+ "inputs": [],
"outputs": [
{
- "internalType": "bytes32",
"name": "",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "renounceOwnership",
+ "inputs": [],
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "sales",
"inputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "sales",
"outputs": [
{
- "internalType": "uint256",
"name": "fulfilledListingId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "contract IERC20",
"name": "paymentToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20"
},
{
- "internalType": "uint256",
"name": "paidPrice",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "transferOwnership",
"inputs": [
{
- "internalType": "address",
"name": "newOwner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "transferOwnership",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "upgradeTo",
"inputs": [
{
- "internalType": "address",
"name": "newImplementation",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "upgradeTo",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "upgradeToAndCall",
"inputs": [
{
- "internalType": "address",
"name": "newImplementation",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "bytes",
"name": "data",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "upgradeToAndCall",
"outputs": [],
- "stateMutability": "payable",
- "type": "function"
+ "stateMutability": "payable"
+ },
+ {
+ "type": "event",
+ "name": "AdminChanged",
+ "inputs": [
+ {
+ "name": "previousAdmin",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
+ },
+ {
+ "name": "newAdmin",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "BeaconUpgraded",
+ "inputs": [
+ {
+ "name": "beacon",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Initialized",
+ "inputs": [
+ {
+ "name": "version",
+ "type": "uint8",
+ "indexed": false,
+ "internalType": "uint8"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "OwnershipTransferred",
+ "inputs": [
+ {
+ "name": "previousOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "newOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "SalesActivated",
+ "inputs": [
+ {
+ "name": "molecules",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "paymentToken",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
+ },
+ {
+ "name": "paidPrice",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "SharesClaimed",
+ "inputs": [
+ {
+ "name": "molecules",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "claimer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "amount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Upgraded",
+ "inputs": [
+ {
+ "name": "implementation",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "InsufficientBalance",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ListingMismatch",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ListingNotFulfilled",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "NotClaimingYet",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "OnlyIssuer",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "UncappedToken",
+ "inputs": []
}
]
diff --git a/subgraph/abis/StakedLockingCrowdSale.json b/subgraph/abis/StakedLockingCrowdSale.json
index c8635483..b10408fc 100644
--- a/subgraph/abis/StakedLockingCrowdSale.json
+++ b/subgraph/abis/StakedLockingCrowdSale.json
@@ -1,1227 +1,1227 @@
[
{
- "inputs": [],
- "name": "AlreadyClaimed",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadDecimals",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadPrice",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadSaleDuration",
- "type": "error"
- },
- {
+ "type": "function",
+ "name": "claim",
"inputs": [
{
- "internalType": "enum SaleState",
- "name": "expected",
- "type": "uint8"
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "enum SaleState",
- "name": "actual",
- "type": "uint8"
+ "name": "permission",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "BadSaleState",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BadSalesAmount",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "BidTooLow",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "FeesTooHigh",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "IncompatibleVestingContract",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "InvalidDuration",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "SaleAlreadyActive",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "SaleClosedForBids",
- "type": "error"
+ "outputs": [
+ {
+ "name": "auctionTokens",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "refunds",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
- "name": "SaleNotConcluded",
- "type": "error"
+ "type": "function",
+ "name": "claimResults",
+ "inputs": [
+ {
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "contribution",
"inputs": [
{
- "internalType": "uint256",
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "contributor",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [
+ {
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "SaleNotFund",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "UnmanageableVestingContract",
- "type": "error"
+ "stateMutability": "view"
},
{
- "inputs": [],
- "name": "UnsupportedInitializer",
- "type": "error"
+ "type": "function",
+ "name": "createOrReturnTimelockContract",
+ "inputs": [
+ {
+ "name": "underlyingToken",
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
+ }
+ ],
+ "outputs": [
+ {
+ "name": "lockedTokenContract",
+ "type": "address",
+ "internalType": "contract TimelockedToken"
+ }
+ ],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "currentFeeBp",
"inputs": [],
- "name": "UnsupportedVestingContract",
- "type": "error"
+ "outputs": [
+ {
+ "name": "",
+ "type": "uint16",
+ "internalType": "uint16"
+ }
+ ],
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "getClaimableAmounts",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": true,
- "internalType": "address",
"name": "bidder",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [
+ {
+ "name": "auctionTokens",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "amount",
- "type": "uint256"
+ "name": "refunds",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Bid",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "getClaimableStakes",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": true,
- "internalType": "address",
- "name": "claimer",
- "type": "address"
- },
+ "name": "refunds",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint256",
- "name": "claimed",
- "type": "uint256"
+ "name": "refundedStakes",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "refunded",
- "type": "uint256"
+ "name": "vestedStakes",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Claimed",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "getSaleInfo",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "ClaimedAuctionTokens",
- "type": "event"
+ "outputs": [
+ {
+ "name": "",
+ "type": "tuple",
+ "internalType": "struct SaleInfo",
+ "components": [
+ {
+ "name": "state",
+ "type": "uint8",
+ "internalType": "enum SaleState"
+ },
+ {
+ "name": "total",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "surplus",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "claimed",
+ "type": "bool",
+ "internalType": "bool"
+ },
+ {
+ "name": "feeBp",
+ "type": "uint16",
+ "internalType": "uint16"
+ }
+ ]
+ }
+ ],
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "lockingContracts",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "ClaimedFundingGoal",
- "type": "event"
+ "outputs": [
+ {
+ "name": "",
+ "type": "address",
+ "internalType": "contract TimelockedToken"
+ }
+ ],
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "owner",
+ "inputs": [],
+ "outputs": [
+ {
+ "name": "",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "stateMutability": "view"
+ },
+ {
+ "type": "function",
+ "name": "placeBid",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "claimer",
- "type": "address"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "stakesClaimed",
- "type": "uint256"
+ "name": "biddingTokenAmount",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "stakesRefunded",
- "type": "uint256"
+ "name": "permission",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "ClaimedStakes",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "renounceOwnership",
+ "inputs": [],
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "salesLockingDuration",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Failed",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "FeesUpdated",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "salesStaking",
"inputs": [
{
- "indexed": true,
- "internalType": "contract TimelockedToken",
- "name": "lockingContract",
- "type": "address"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [
+ {
+ "name": "stakedToken",
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "indexed": true,
- "internalType": "contract IERC20Metadata",
- "name": "underlyingToken",
- "type": "address"
+ "name": "stakesVestingContract",
+ "type": "address",
+ "internalType": "contract TokenVesting"
+ },
+ {
+ "name": "wadFixedStakedPerBidPrice",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "LockingContractCreated",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "setCurrentFeesBp",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "previousOwner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "newFeeBp",
+ "type": "uint16",
+ "internalType": "uint16"
}
],
- "name": "OwnershipTransferred",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "settle",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "totalBids",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "surplus",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Settled",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "stakesOf",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": true,
- "internalType": "address",
"name": "bidder",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "stakedAmount",
- "type": "uint256"
- },
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint256",
- "name": "price",
- "type": "uint256"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Staked",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "startSale",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "issuer",
- "type": "address"
- },
- {
+ "name": "sale",
+ "type": "tuple",
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "indexed": false,
- "internalType": "struct Sale",
- "name": "sale",
- "type": "tuple"
+ ]
},
{
- "components": [
- {
- "internalType": "contract IERC20Metadata",
- "name": "stakedToken",
- "type": "address"
- },
- {
- "internalType": "contract TokenVesting",
- "name": "stakesVestingContract",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "wadFixedStakedPerBidPrice",
- "type": "uint256"
- }
- ],
- "indexed": false,
- "internalType": "struct StakingInfo",
- "name": "staking",
- "type": "tuple"
+ "name": "stakedToken",
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "indexed": false,
- "internalType": "contract TimelockedToken",
- "name": "lockingToken",
- "type": "address"
+ "name": "stakesVestingContract",
+ "type": "address",
+ "internalType": "contract TokenVesting"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "lockingDuration",
- "type": "uint256"
+ "name": "wadFixedStakedPerBidPrice",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "stakingDuration",
- "type": "uint256"
- },
+ "name": "lockingDuration",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
+ "name": "saleId",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Started",
- "type": "event"
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "startSale",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "issuer",
- "type": "address"
- },
- {
+ "name": "",
+ "type": "tuple",
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "indexed": false,
- "internalType": "struct Sale",
- "name": "sale",
- "type": "tuple"
- },
- {
- "indexed": false,
- "internalType": "contract TimelockedToken",
- "name": "lockingToken",
- "type": "address"
+ ]
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "lockingDuration",
- "type": "uint256"
- },
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "Started",
- "type": "event"
+ "stateMutability": "pure"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "startSale",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "issuer",
- "type": "address"
- },
- {
+ "name": "",
+ "type": "tuple",
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
- },
- {
- "internalType": "uint256",
- "name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
- "name": "closingTime",
- "type": "uint64"
- },
- {
- "internalType": "contract IPermissioner",
- "name": "permissioner",
- "type": "address"
- }
- ],
- "indexed": false,
- "internalType": "struct Sale",
- "name": "sale",
- "type": "tuple"
- },
- {
- "indexed": false,
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
- }
- ],
- "name": "Started",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "contract TokenVesting",
- "name": "tokenVesting",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "bool",
- "name": "trusted",
- "type": "bool"
- }
- ],
- "name": "UpdatedTrustedTokenVestings",
- "type": "event"
- },
- {
- "inputs": [
- {
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "internalType": "bytes",
- "name": "permission",
- "type": "bytes"
+ "name": "salesAmount",
+ "type": "uint256",
+ "internalType": "uint256"
+ },
+ {
+ "name": "closingTime",
+ "type": "uint64",
+ "internalType": "uint64"
+ },
+ {
+ "name": "permissioner",
+ "type": "address",
+ "internalType": "contract IPermissioner"
+ }
+ ]
}
],
- "name": "claim",
"outputs": [
{
- "internalType": "uint256",
- "name": "auctionTokens",
- "type": "uint256"
- },
- {
- "internalType": "uint256",
- "name": "refunds",
- "type": "uint256"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "pure"
},
{
+ "type": "function",
+ "name": "transferOwnership",
"inputs": [
{
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "newOwner",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "claimResults",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "trustVestingContract",
"inputs": [
{
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
- },
- {
- "internalType": "address",
- "name": "contributor",
- "type": "address"
- }
- ],
- "name": "contribution",
- "outputs": [
- {
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "stakesVestingContract",
+ "type": "address",
+ "internalType": "contract TokenVesting"
}
],
- "stateMutability": "view",
- "type": "function"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "trustedVestingContracts",
"inputs": [
{
- "internalType": "contract IERC20Metadata",
- "name": "underlyingToken",
- "type": "address"
+ "name": "",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "createOrReturnTimelockContract",
"outputs": [
{
- "internalType": "contract TimelockedToken",
- "name": "lockedTokenContract",
- "type": "address"
+ "name": "",
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
- "name": "currentFeeBp",
- "outputs": [
+ "type": "function",
+ "name": "untrustVestingContract",
+ "inputs": [
{
- "internalType": "uint16",
- "name": "",
- "type": "uint16"
+ "name": "stakesVestingContract",
+ "type": "address",
+ "internalType": "contract TokenVesting"
}
],
- "stateMutability": "view",
- "type": "function"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
+ "type": "event",
+ "name": "Bid",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "bidder",
- "type": "address"
- }
- ],
- "name": "getClaimableAmounts",
- "outputs": [
- {
- "internalType": "uint256",
- "name": "auctionTokens",
- "type": "uint256"
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "uint256",
- "name": "refunds",
- "type": "uint256"
+ "name": "amount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Claimed",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "refunds",
- "type": "uint256"
- }
- ],
- "name": "getClaimableStakes",
- "outputs": [
+ "name": "claimer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
{
- "internalType": "uint256",
- "name": "refundedStakes",
- "type": "uint256"
+ "name": "claimed",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "vestedStakes",
- "type": "uint256"
+ "name": "refunded",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "ClaimedAuctionTokens",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
- }
- ],
- "name": "getSaleInfo",
- "outputs": [
- {
- "components": [
- {
- "internalType": "enum SaleState",
- "name": "state",
- "type": "uint8"
- },
- {
- "internalType": "uint256",
- "name": "total",
- "type": "uint256"
- },
- {
- "internalType": "uint256",
- "name": "surplus",
- "type": "uint256"
- },
- {
- "internalType": "bool",
- "name": "claimed",
- "type": "bool"
- },
- {
- "internalType": "uint16",
- "name": "feeBp",
- "type": "uint16"
- }
- ],
- "internalType": "struct SaleInfo",
- "name": "",
- "type": "tuple"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "ClaimedFundingGoal",
"inputs": [
{
- "internalType": "address",
- "name": "",
- "type": "address"
- }
- ],
- "name": "lockingContracts",
- "outputs": [
- {
- "internalType": "contract TimelockedToken",
- "name": "",
- "type": "address"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "owner",
- "outputs": [
- {
- "internalType": "address",
- "name": "",
- "type": "address"
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "ClaimedStakes",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "biddingTokenAmount",
- "type": "uint256"
+ "name": "claimer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "bytes",
- "name": "permission",
- "type": "bytes"
+ "name": "stakesClaimed",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "stakesRefunded",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "name": "placeBid",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "renounceOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Failed",
"inputs": [
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
- }
- ],
- "name": "salesLockingDuration",
- "outputs": [
- {
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "FeesUpdated",
"inputs": [
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "feeBp",
+ "type": "uint16",
+ "indexed": false,
+ "internalType": "uint16"
}
],
- "name": "salesStaking",
- "outputs": [
- {
- "internalType": "contract IERC20Metadata",
- "name": "stakedToken",
- "type": "address"
- },
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "LockingContractCreated",
+ "inputs": [
{
- "internalType": "contract TokenVesting",
- "name": "stakesVestingContract",
- "type": "address"
+ "name": "lockingContract",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract TimelockedToken"
},
{
- "internalType": "uint256",
- "name": "wadFixedStakedPerBidPrice",
- "type": "uint256"
+ "name": "underlyingToken",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract IERC20Metadata"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "OwnershipTransferred",
"inputs": [
{
- "internalType": "uint16",
- "name": "newFeeBp",
- "type": "uint16"
+ "name": "previousOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "newOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "name": "setCurrentFeesBp",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Settled",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "totalBids",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "surplus",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "name": "settle",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Staked",
"inputs": [
{
- "internalType": "uint256",
"name": "saleId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "bidder",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "address",
- "name": "bidder",
- "type": "address"
- }
- ],
- "name": "stakesOf",
- "outputs": [
+ "name": "stakedAmount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "price",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Started",
"inputs": [
{
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "issuer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "sale",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "internalType": "struct Sale",
- "name": "sale",
- "type": "tuple"
+ ]
},
{
- "internalType": "contract IERC20Metadata",
- "name": "stakedToken",
- "type": "address"
+ "name": "staking",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct StakingInfo",
+ "components": [
+ {
+ "name": "stakedToken",
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
+ },
+ {
+ "name": "stakesVestingContract",
+ "type": "address",
+ "internalType": "contract TokenVesting"
+ },
+ {
+ "name": "wadFixedStakedPerBidPrice",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ]
},
{
- "internalType": "contract TokenVesting",
- "name": "stakesVestingContract",
- "type": "address"
+ "name": "lockingToken",
+ "type": "address",
+ "indexed": false,
+ "internalType": "contract TimelockedToken"
},
{
- "internalType": "uint256",
- "name": "wadFixedStakedPerBidPrice",
- "type": "uint256"
+ "name": "lockingDuration",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "lockingDuration",
- "type": "uint256"
- }
- ],
- "name": "startSale",
- "outputs": [
+ "name": "stakingDuration",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
{
- "internalType": "uint256",
- "name": "saleId",
- "type": "uint256"
+ "name": "feeBp",
+ "type": "uint16",
+ "indexed": false,
+ "internalType": "uint16"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Started",
"inputs": [
{
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "issuer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "sale",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "internalType": "struct Sale",
- "name": "",
- "type": "tuple"
+ ]
},
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
- }
- ],
- "name": "startSale",
- "outputs": [
+ "name": "lockingToken",
+ "type": "address",
+ "indexed": false,
+ "internalType": "contract TimelockedToken"
+ },
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "lockingDuration",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "feeBp",
+ "type": "uint16",
+ "indexed": false,
+ "internalType": "uint16"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Started",
"inputs": [
{
+ "name": "saleId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
+ "name": "issuer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "sale",
+ "type": "tuple",
+ "indexed": false,
+ "internalType": "struct Sale",
"components": [
{
- "internalType": "contract IERC20Metadata",
"name": "auctionToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "contract IERC20Metadata",
"name": "biddingToken",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "fundingGoal",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
"name": "salesAmount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "closingTime",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "contract IPermissioner",
"name": "permissioner",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
- ],
- "internalType": "struct Sale",
- "name": "",
- "type": "tuple"
- }
- ],
- "name": "startSale",
- "outputs": [
+ ]
+ },
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "feeBp",
+ "type": "uint16",
+ "indexed": false,
+ "internalType": "uint16"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "UpdatedTrustedTokenVestings",
"inputs": [
{
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "tokenVesting",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract TokenVesting"
+ },
+ {
+ "name": "trusted",
+ "type": "bool",
+ "indexed": false,
+ "internalType": "bool"
}
],
- "name": "transferOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [
- {
- "internalType": "contract TokenVesting",
- "name": "stakesVestingContract",
- "type": "address"
- }
- ],
- "name": "trustVestingContract",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "type": "error",
+ "name": "AlreadyClaimed",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BadDecimals",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BadPrice",
+ "inputs": []
},
{
+ "type": "error",
+ "name": "BadSaleDuration",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BadSaleState",
"inputs": [
{
- "internalType": "address",
- "name": "",
- "type": "address"
- }
- ],
- "name": "trustedVestingContracts",
- "outputs": [
+ "name": "expected",
+ "type": "uint8",
+ "internalType": "enum SaleState"
+ },
{
- "internalType": "bool",
- "name": "",
- "type": "bool"
+ "name": "actual",
+ "type": "uint8",
+ "internalType": "enum SaleState"
}
- ],
- "stateMutability": "view",
- "type": "function"
+ ]
+ },
+ {
+ "type": "error",
+ "name": "BadSalesAmount",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "BidTooLow",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "FeesTooHigh",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "IncompatibleVestingContract",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "InvalidDuration",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleAlreadyActive",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleClosedForBids",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "SaleNotConcluded",
+ "inputs": []
},
{
+ "type": "error",
+ "name": "SaleNotFund",
"inputs": [
{
- "internalType": "contract TokenVesting",
- "name": "stakesVestingContract",
- "type": "address"
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
}
- ],
- "name": "untrustVestingContract",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ ]
+ },
+ {
+ "type": "error",
+ "name": "UnmanageableVestingContract",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "UnsupportedInitializer",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "UnsupportedVestingContract",
+ "inputs": []
},
{
"anonymous": false,
diff --git a/subgraph/abis/TermsAcceptedPermissioner.json b/subgraph/abis/TermsAcceptedPermissioner.json
index 9c904cb6..5155046a 100644
--- a/subgraph/abis/TermsAcceptedPermissioner.json
+++ b/subgraph/abis/TermsAcceptedPermissioner.json
@@ -1,139 +1,139 @@
[
{
- "inputs": [],
- "name": "InvalidSignature",
- "type": "error"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "tokenContract",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "signer",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "bytes",
- "name": "signature",
- "type": "bytes"
- }
- ],
- "name": "TermsAccepted",
- "type": "event"
- },
- {
+ "type": "function",
+ "name": "accept",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
},
{
- "internalType": "address",
"name": "_for",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "bytes",
"name": "signature",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "accept",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "isValidSignature",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
},
{
- "internalType": "address",
"name": "signer",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "bytes",
"name": "signature",
- "type": "bytes"
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "isValidSignature",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "specificTermsV1",
"inputs": [
{
+ "name": "metadata",
+ "type": "tuple",
+ "internalType": "struct Metadata",
"components": [
{
- "internalType": "uint256",
"name": "ipnftId",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "address",
"name": "originalOwner",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "string",
"name": "agreementCid",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
- ],
- "internalType": "struct Metadata",
- "name": "metadata",
- "type": "tuple"
+ ]
}
],
- "name": "specificTermsV1",
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "specificTermsV1",
"inputs": [
{
- "internalType": "contract IPToken",
"name": "tokenContract",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IPToken"
}
],
- "name": "specificTermsV1",
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
+ }
+ ],
+ "stateMutability": "view"
+ },
+ {
+ "type": "event",
+ "name": "TermsAccepted",
+ "inputs": [
+ {
+ "name": "tokenContract",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "signer",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "signature",
+ "type": "bytes",
+ "indexed": false,
+ "internalType": "bytes"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "InvalidSignature",
+ "inputs": []
}
]
diff --git a/subgraph/abis/TimelockedToken.json b/subgraph/abis/TimelockedToken.json
index 14ea5a1b..1ac2fe50 100644
--- a/subgraph/abis/TimelockedToken.json
+++ b/subgraph/abis/TimelockedToken.json
@@ -1,429 +1,429 @@
[
{
- "inputs": [],
- "name": "DuplicateSchedule",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "NotSupported",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "ScheduleOutOfRange",
- "type": "error"
- },
- {
- "inputs": [],
- "name": "StillLocked",
- "type": "error"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "owner",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "spender",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "value",
- "type": "uint256"
- }
- ],
- "name": "Approval",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
- }
- ],
- "name": "Initialized",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "scheduleId",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "beneficiary",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "creator",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "amount",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint64",
- "name": "expiresAt",
- "type": "uint64"
- }
- ],
- "name": "ScheduleCreated",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "scheduleId",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "beneficiary",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "amount",
- "type": "uint256"
- }
- ],
- "name": "ScheduleReleased",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "from",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "to",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "value",
- "type": "uint256"
- }
- ],
- "name": "Transfer",
- "type": "event"
- },
- {
+ "type": "function",
+ "name": "allowance",
"inputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "allowance",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "pure"
},
{
+ "type": "function",
+ "name": "approve",
"inputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "approve",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "pure"
},
{
+ "type": "function",
+ "name": "balanceOf",
"inputs": [
{
- "internalType": "address",
"name": "account",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "balanceOf",
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "decimals",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint8",
"name": "",
- "type": "uint8"
+ "type": "uint8",
+ "internalType": "uint8"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "initialize",
"inputs": [
{
- "internalType": "contract IERC20Metadata",
"name": "underlyingToken_",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
}
],
- "name": "initialize",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "lock",
"inputs": [
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "internalType": "uint64",
"name": "expiresAt",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
}
],
- "name": "lock",
"outputs": [
{
- "internalType": "bytes32",
"name": "scheduleId",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
- "inputs": [],
+ "type": "function",
"name": "name",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "release",
"inputs": [
{
- "internalType": "bytes32",
"name": "scheduleId",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "name": "release",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "releaseMany",
"inputs": [
{
- "internalType": "bytes32[]",
"name": "scheduleIds",
- "type": "bytes32[]"
+ "type": "bytes32[]",
+ "internalType": "bytes32[]"
}
],
- "name": "releaseMany",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "schedules",
"inputs": [
{
- "internalType": "bytes32",
"name": "",
- "type": "bytes32"
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "name": "schedules",
"outputs": [
{
- "internalType": "uint64",
"name": "expiresAt",
- "type": "uint64"
+ "type": "uint64",
+ "internalType": "uint64"
},
{
- "internalType": "address",
"name": "beneficiary",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "amount",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "symbol",
+ "inputs": [],
"outputs": [
{
- "internalType": "string",
"name": "",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
- "inputs": [],
+ "type": "function",
"name": "totalSupply",
+ "inputs": [],
"outputs": [
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "stateMutability": "view",
- "type": "function"
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "transfer",
"inputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transfer",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "pure"
},
{
+ "type": "function",
+ "name": "transferFrom",
"inputs": [
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "address",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "uint256",
"name": "",
- "type": "uint256"
+ "type": "uint256",
+ "internalType": "uint256"
}
],
- "name": "transferFrom",
"outputs": [
{
- "internalType": "bool",
"name": "",
- "type": "bool"
+ "type": "bool",
+ "internalType": "bool"
}
],
- "stateMutability": "pure",
- "type": "function"
+ "stateMutability": "pure"
},
{
- "inputs": [],
+ "type": "function",
"name": "underlyingToken",
+ "inputs": [],
"outputs": [
{
- "internalType": "contract IERC20Metadata",
"name": "",
- "type": "address"
+ "type": "address",
+ "internalType": "contract IERC20Metadata"
+ }
+ ],
+ "stateMutability": "view"
+ },
+ {
+ "type": "event",
+ "name": "Approval",
+ "inputs": [
+ {
+ "name": "owner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "spender",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "value",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Initialized",
+ "inputs": [
+ {
+ "name": "version",
+ "type": "uint8",
+ "indexed": false,
+ "internalType": "uint8"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "ScheduleCreated",
+ "inputs": [
+ {
+ "name": "scheduleId",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ },
+ {
+ "name": "beneficiary",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "creator",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "amount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ },
+ {
+ "name": "expiresAt",
+ "type": "uint64",
+ "indexed": false,
+ "internalType": "uint64"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "ScheduleReleased",
+ "inputs": [
+ {
+ "name": "scheduleId",
+ "type": "bytes32",
+ "indexed": true,
+ "internalType": "bytes32"
+ },
+ {
+ "name": "beneficiary",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "amount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "Transfer",
+ "inputs": [
+ {
+ "name": "from",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "to",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "value",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
+ }
+ ],
+ "anonymous": false
+ },
+ {
+ "type": "error",
+ "name": "DuplicateSchedule",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "NotSupported",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ScheduleOutOfRange",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "StillLocked",
+ "inputs": []
}
]
diff --git a/subgraph/abis/Tokenizer.json b/subgraph/abis/Tokenizer.json
index a2193313..47b09165 100644
--- a/subgraph/abis/Tokenizer.json
+++ b/subgraph/abis/Tokenizer.json
@@ -1,316 +1,398 @@
[
{
+ "type": "constructor",
"inputs": [],
- "stateMutability": "nonpayable",
- "type": "constructor"
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "initialize",
+ "inputs": [
+ {
+ "name": "_ipnft",
+ "type": "address",
+ "internalType": "contract IPNFT"
+ },
+ {
+ "name": "_permissioner",
+ "type": "address",
+ "internalType": "contract IPermissioner"
+ }
+ ],
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "ipTokenImplementation",
"inputs": [],
- "name": "AlreadyTokenized",
- "type": "error"
+ "outputs": [
+ {
+ "name": "",
+ "type": "address",
+ "internalType": "contract IPToken"
+ }
+ ],
+ "stateMutability": "view"
},
{
+ "type": "function",
+ "name": "owner",
"inputs": [],
- "name": "MustOwnIpnft",
- "type": "error"
+ "outputs": [
+ {
+ "name": "",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "stateMutability": "view"
},
{
- "anonymous": false,
- "inputs": [
+ "type": "function",
+ "name": "permissioner",
+ "inputs": [],
+ "outputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "previousAdmin",
- "type": "address"
- },
+ "name": "",
+ "type": "address",
+ "internalType": "contract IPermissioner"
+ }
+ ],
+ "stateMutability": "view"
+ },
+ {
+ "type": "function",
+ "name": "proxiableUUID",
+ "inputs": [],
+ "outputs": [
{
- "indexed": false,
- "internalType": "address",
- "name": "newAdmin",
- "type": "address"
+ "name": "",
+ "type": "bytes32",
+ "internalType": "bytes32"
}
],
- "name": "AdminChanged",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "reinit",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "beacon",
- "type": "address"
+ "name": "_permissioner",
+ "type": "address",
+ "internalType": "contract IPermissioner"
}
],
- "name": "BeaconUpgraded",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "renounceOwnership",
+ "inputs": [],
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "setIPTokenImplementation",
"inputs": [
{
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
+ "name": "_ipTokenImplementation",
+ "type": "address",
+ "internalType": "contract IPToken"
}
],
- "name": "Initialized",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "synthesized",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "previousOwner",
- "type": "address"
- },
+ "name": "",
+ "type": "uint256",
+ "internalType": "uint256"
+ }
+ ],
+ "outputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "",
+ "type": "address",
+ "internalType": "contract IPToken"
}
],
- "name": "OwnershipTransferred",
- "type": "event"
+ "stateMutability": "view"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "tokenizeIpnft",
"inputs": [
{
- "indexed": true,
- "internalType": "uint256",
- "name": "moleculesId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "uint256",
"name": "ipnftId",
- "type": "uint256"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "tokenContract",
- "type": "address"
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "address",
- "name": "emitter",
- "type": "address"
+ "name": "tokenAmount",
+ "type": "uint256",
+ "internalType": "uint256"
},
{
- "indexed": false,
- "internalType": "uint256",
- "name": "amount",
- "type": "uint256"
+ "name": "tokenSymbol",
+ "type": "string",
+ "internalType": "string"
},
{
- "indexed": false,
- "internalType": "string",
"name": "agreementCid",
- "type": "string"
+ "type": "string",
+ "internalType": "string"
},
{
- "indexed": false,
- "internalType": "string",
- "name": "name",
- "type": "string"
- },
+ "name": "signedAgreement",
+ "type": "bytes",
+ "internalType": "bytes"
+ }
+ ],
+ "outputs": [
{
- "indexed": false,
- "internalType": "string",
- "name": "symbol",
- "type": "string"
+ "name": "token",
+ "type": "address",
+ "internalType": "contract IPToken"
}
],
- "name": "TokensCreated",
- "type": "event"
+ "stateMutability": "nonpayable"
},
{
- "anonymous": false,
+ "type": "function",
+ "name": "transferOwnership",
"inputs": [
{
- "indexed": true,
- "internalType": "address",
- "name": "implementation",
- "type": "address"
+ "name": "newOwner",
+ "type": "address",
+ "internalType": "address"
}
],
- "name": "Upgraded",
- "type": "event"
+ "outputs": [],
+ "stateMutability": "nonpayable"
},
{
+ "type": "function",
+ "name": "upgradeTo",
"inputs": [
{
- "internalType": "contract IPNFT",
- "name": "_ipnft",
- "type": "address"
+ "name": "newImplementation",
+ "type": "address",
+ "internalType": "address"
+ }
+ ],
+ "outputs": [],
+ "stateMutability": "nonpayable"
+ },
+ {
+ "type": "function",
+ "name": "upgradeToAndCall",
+ "inputs": [
+ {
+ "name": "newImplementation",
+ "type": "address",
+ "internalType": "address"
},
{
- "internalType": "contract IPermissioner",
- "name": "_permissioner",
- "type": "address"
+ "name": "data",
+ "type": "bytes",
+ "internalType": "bytes"
}
],
- "name": "initialize",
"outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "stateMutability": "payable"
},
{
- "inputs": [],
- "name": "owner",
- "outputs": [
+ "type": "event",
+ "name": "AdminChanged",
+ "inputs": [
{
- "internalType": "address",
- "name": "",
- "type": "address"
+ "name": "previousAdmin",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
+ },
+ {
+ "name": "newAdmin",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [],
- "name": "proxiableUUID",
- "outputs": [
+ "type": "event",
+ "name": "BeaconUpgraded",
+ "inputs": [
{
- "internalType": "bytes32",
- "name": "",
- "type": "bytes32"
+ "name": "beacon",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "IPTokenImplementationUpdated",
"inputs": [
{
- "internalType": "contract IPermissioner",
- "name": "_permissioner",
- "type": "address"
+ "name": "old",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract IPToken"
+ },
+ {
+ "name": "_new",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract IPToken"
}
],
- "name": "reinit",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [],
- "name": "renounceOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "type": "event",
+ "name": "Initialized",
+ "inputs": [
+ {
+ "name": "version",
+ "type": "uint8",
+ "indexed": false,
+ "internalType": "uint8"
+ }
+ ],
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "OwnershipTransferred",
"inputs": [
{
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
+ "name": "previousOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
+ },
+ {
+ "name": "newOwner",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "name": "synthesized",
- "outputs": [
+ "anonymous": false
+ },
+ {
+ "type": "event",
+ "name": "PermissionerUpdated",
+ "inputs": [
{
- "internalType": "contract IPToken",
- "name": "",
- "type": "address"
+ "name": "old",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract IPermissioner"
+ },
+ {
+ "name": "_new",
+ "type": "address",
+ "indexed": true,
+ "internalType": "contract IPermissioner"
}
],
- "stateMutability": "view",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "TokensCreated",
"inputs": [
{
- "internalType": "uint256",
+ "name": "moleculesId",
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
+ },
+ {
"name": "ipnftId",
- "type": "uint256"
+ "type": "uint256",
+ "indexed": true,
+ "internalType": "uint256"
},
{
- "internalType": "uint256",
- "name": "tokenAmount",
- "type": "uint256"
+ "name": "tokenContract",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
},
{
- "internalType": "string",
- "name": "tokenSymbol",
- "type": "string"
+ "name": "emitter",
+ "type": "address",
+ "indexed": false,
+ "internalType": "address"
+ },
+ {
+ "name": "amount",
+ "type": "uint256",
+ "indexed": false,
+ "internalType": "uint256"
},
{
- "internalType": "string",
"name": "agreementCid",
- "type": "string"
+ "type": "string",
+ "indexed": false,
+ "internalType": "string"
},
{
- "internalType": "bytes",
- "name": "signedAgreement",
- "type": "bytes"
- }
- ],
- "name": "tokenizeIpnft",
- "outputs": [
+ "name": "name",
+ "type": "string",
+ "indexed": false,
+ "internalType": "string"
+ },
{
- "internalType": "contract IPToken",
- "name": "token",
- "type": "address"
+ "name": "symbol",
+ "type": "string",
+ "indexed": false,
+ "internalType": "string"
}
],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
+ "type": "event",
+ "name": "Upgraded",
"inputs": [
{
- "internalType": "address",
- "name": "newOwner",
- "type": "address"
+ "name": "implementation",
+ "type": "address",
+ "indexed": true,
+ "internalType": "address"
}
],
- "name": "transferOwnership",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "anonymous": false
},
{
- "inputs": [
- {
- "internalType": "address",
- "name": "newImplementation",
- "type": "address"
- }
- ],
- "name": "upgradeTo",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
+ "type": "error",
+ "name": "AlreadyTokenized",
+ "inputs": []
},
{
- "inputs": [
- {
- "internalType": "address",
- "name": "newImplementation",
- "type": "address"
- },
- {
- "internalType": "bytes",
- "name": "data",
- "type": "bytes"
- }
- ],
- "name": "upgradeToAndCall",
- "outputs": [],
- "stateMutability": "payable",
- "type": "function"
+ "type": "error",
+ "name": "MustOwnIpnft",
+ "inputs": []
+ },
+ {
+ "type": "error",
+ "name": "ZeroAddress",
+ "inputs": []
},
{
"anonymous": false,
diff --git a/subgraph/config/goerli.js b/subgraph/config/goerli.js
deleted file mode 100644
index 9116650e..00000000
--- a/subgraph/config/goerli.js
+++ /dev/null
@@ -1,33 +0,0 @@
-const path = require('node:path')
-require('dotenv').config({
- debug: true,
- path: path.resolve(process.cwd(), '../.env')
-})
-
-module.exports = {
- network: 'goerli',
- ipnft: {
- address: '0xaf7358576C9F7cD84696D28702fC5ADe33cce0e9',
- startBlock: 9099302
- },
- schmackoSwap: {
- address: '0x67D8ed102E2168A46FA342e39A5f7D16c103Bd0d',
- startBlock: 9099302
- },
- tokenizer: {
- address: '0xb12494eeA6B992d0A1Db3C5423BE7a2d2337F58c',
- startBlock: 9142681
- },
- crowdSale: {
- address: '0x8c83DA72b4591bE526ca8C7cb848bC89c0e23373',
- startBlock: 9933419
- },
- stakedLockingCrowdSale: {
- address: '0x46c3369dece07176ad7164906d3593aa4c126d35',
- startBlock: 9168705
- },
- termsAcceptedPermissioner: {
- address: '0xd735d9504cce32F2cd665b779D699B4157686fcd',
- startBlock: 9417050
- }
-}
diff --git a/subgraph/config/sepolia.js b/subgraph/config/sepolia.js
new file mode 100644
index 00000000..739cbcd4
--- /dev/null
+++ b/subgraph/config/sepolia.js
@@ -0,0 +1,27 @@
+module.exports = {
+ network: 'sepolia',
+ ipnft: {
+ address: '0x152B444e60C526fe4434C721561a077269FcF61a',
+ startBlock: 5300057
+ },
+ schmackoSwap: {
+ address: '0x9e4c638e703d0Af3a3B9eb488dE79A16d402698f',
+ startBlock: 5300057
+ },
+ tokenizer: {
+ address: '0xca63411FF5187431028d003eD74B57531408d2F9',
+ startBlock: 5300057
+ },
+ crowdSale: {
+ address: '0x8cA737E2cdaE1Ceb332bEf7ba9eA711a3a2f8037',
+ startBlock: 5300057
+ },
+ stakedLockingCrowdSale: {
+ address: '0xd1cE2EA7d3b0C9cAB025A4aD762FC00315141ad7',
+ startBlock: 5300057
+ },
+ termsAcceptedPermissioner: {
+ address: '0xC05D649368d8A5e2E98CAa205d47795de5fCB599',
+ startBlock: 5300057
+ }
+}
diff --git a/subgraph/package.json b/subgraph/package.json
index 702f3dbf..393d6320 100644
--- a/subgraph/package.json
+++ b/subgraph/package.json
@@ -6,9 +6,9 @@
"codegen": "graph codegen",
"build": "graph codegen && graph build",
"prepare:local": "mustache config/local.js subgraph.template.yaml > subgraph.yaml",
- "prepare:goerli": "mustache config/goerli.js subgraph.template.yaml > subgraph.yaml",
+ "prepare:sepolia": "mustache config/sepolia.js subgraph.template.yaml > subgraph.yaml",
"prepare:mainnet": "mustache config/mainnet.js subgraph.template.yaml > subgraph.yaml",
- "deploy:goerli": "graph deploy --product hosted-service moleculeprotocol/ip-nft-goerli",
+ "deploy:sepolia": "env-cmd -x -f ../.env graph deploy moleculexyz-ipnft-sepolia --version-label v0.0.1 --node https://subgraphs.alchemy.com/api/subgraphs/deploy --ipfs https://ipfs.satsuma.xyz --deploy-key \\$SATSUMA_DEPLOY_KEY",
"deploy": "graph deploy --product hosted-service moleculeprotocol/ip-nft-mainnet",
"create:local": "graph create --node http://localhost:8020/ moleculeprotocol/ipnft-subgraph",
"remove:local": "graph remove --node http://localhost:8020/ moleculeprotocol/ipnft-subgraph",
@@ -22,5 +22,7 @@
"matchstick-as": "0.5.2",
"mustache": "^4.2.0"
},
- "devDependencies": {}
+ "devDependencies": {
+ "env-cmd": "^10.1.0"
+ }
}
diff --git a/subgraph/tsconfig.json b/subgraph/tsconfig.json
index 5c5d17c9..96e62116 100644
--- a/subgraph/tsconfig.json
+++ b/subgraph/tsconfig.json
@@ -1,4 +1,6 @@
{
"extends": "@graphprotocol/graph-ts/types/tsconfig.base.json",
- "include": ["src"]
-}
+ "include": [
+ "src"
+ ]
+}
\ No newline at end of file
diff --git a/subgraph/yarn.lock b/subgraph/yarn.lock
index 241b4c39..4d264c0e 100644
--- a/subgraph/yarn.lock
+++ b/subgraph/yarn.lock
@@ -1162,6 +1162,11 @@ commander@^2.20.3:
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
+commander@^4.0.0:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
+ integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
+
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
@@ -1226,7 +1231,7 @@ create-require@^1.1.0:
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
-cross-spawn@7.0.3, cross-spawn@^7.0.3:
+cross-spawn@7.0.3, cross-spawn@^7.0.0, cross-spawn@^7.0.3:
version "7.0.3"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
@@ -1404,6 +1409,14 @@ enquirer@2.3.6:
dependencies:
ansi-colors "^4.1.1"
+env-cmd@^10.1.0:
+ version "10.1.0"
+ resolved "https://registry.yarnpkg.com/env-cmd/-/env-cmd-10.1.0.tgz#c7f5d3b550c9519f137fdac4dd8fb6866a8c8c4b"
+ integrity sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==
+ dependencies:
+ commander "^4.0.0"
+ cross-spawn "^7.0.0"
+
err-code@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/err-code/-/err-code-3.0.1.tgz#a444c7b992705f2b120ee320b09972eef331c920"