@zoralabs/coins 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +33 -33
- package/CHANGELOG.md +7 -0
- package/abis/Coin.json +2 -14
- package/abis/ICoin.json +2 -14
- package/abis/IZoraFactory.json +9 -9
- package/abis/ZoraFactoryImpl.json +9 -9
- package/addresses/8453.json +2 -2
- package/addresses/84532.json +2 -2
- package/dist/index.cjs +11 -28
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +11 -28
- package/dist/index.js.map +1 -1
- package/dist/wagmiGenerated.d.ts +10 -20
- package/dist/wagmiGenerated.d.ts.map +1 -1
- package/package/wagmiGenerated.ts +11 -28
- package/package.json +1 -1
- package/src/Coin.sol +2 -2
- package/src/ZoraFactoryImpl.sol +2 -2
- package/src/interfaces/ICoin.sol +6 -8
- package/src/interfaces/IZoraFactory.sol +8 -8
- package/src/utils/CoinConstants.sol +1 -1
- package/src/version/ContractVersionBase.sol +1 -1
- package/test/Coin.t.sol +7 -4
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../package/wagmiGenerated.ts"],"sourcesContent":["//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Coin\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const coinABI = [\n {\n type: 'constructor',\n inputs: [\n {\n name: '_protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n },\n { name: '_protocolRewards', internalType: 'address', type: 'address' },\n { name: '_weth', internalType: 'address', type: 'address' },\n {\n name: '_nonfungiblePositionManager',\n internalType: 'address',\n type: 'address',\n },\n { name: '_swapRouter', internalType: 'address', type: 'address' },\n ],\n stateMutability: 'nonpayable',\n },\n { type: 'receive', stateMutability: 'payable' },\n {\n type: 'function',\n inputs: [],\n name: 'DOMAIN_SEPARATOR',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'MAX_TOTAL_SUPPLY',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'MIN_ORDER_SIZE',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'PLATFORM_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'PROTOCOL_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'TOKEN_CREATOR_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'TOTAL_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'TRADE_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'WETH',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'addOwner',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'accounts', internalType: 'address[]', type: 'address[]' },\n ],\n name: 'addOwners',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'spender', internalType: 'address', type: 'address' },\n ],\n name: 'allowance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'approve',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'amount', internalType: 'uint256', type: 'uint256' }],\n name: 'burn',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'recipient', internalType: 'address', type: 'address' },\n { name: 'orderSize', internalType: 'uint256', type: 'uint256' },\n { name: 'minAmountOut', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'tradeReferrer', internalType: 'address', type: 'address' },\n ],\n name: 'buy',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [{ name: 'pushEthRewards', internalType: 'bool', type: 'bool' }],\n name: 'claimSecondaryRewards',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'currency',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'decimals',\n outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'payoutRecipient_', internalType: 'address', type: 'address' },\n { name: 'owners_', internalType: 'address[]', type: 'address[]' },\n { name: 'tokenURI_', internalType: 'string', type: 'string' },\n { name: 'name_', internalType: 'string', type: 'string' },\n { name: 'symbol_', internalType: 'string', type: 'string' },\n { name: 'platformReferrer_', internalType: 'address', type: 'address' },\n { name: 'currency_', internalType: 'address', type: 'address' },\n { name: 'tickLower_', internalType: 'int24', type: 'int24' },\n ],\n name: 'initialize',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'isOwner',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'lpTokenId',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'name',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'nonces',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'nonfungiblePositionManager',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'onERC721Received',\n outputs: [{ name: '', internalType: 'bytes4', type: 'bytes4' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'owners',\n outputs: [{ name: '', internalType: 'address[]', type: 'address[]' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'payoutRecipient',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'v', internalType: 'uint8', type: 'uint8' },\n { name: 'r', internalType: 'bytes32', type: 'bytes32' },\n { name: 's', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'permit',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'platformReferrer',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'poolAddress',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'protocolRewardRecipient',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'protocolRewards',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'removeOwner',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'accounts', internalType: 'address[]', type: 'address[]' },\n ],\n name: 'removeOwners',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'revokeOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'recipient', internalType: 'address', type: 'address' },\n { name: 'orderSize', internalType: 'uint256', type: 'uint256' },\n { name: 'minAmountOut', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'tradeReferrer', internalType: 'address', type: 'address' },\n ],\n name: 'sell',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'newURI', internalType: 'string', type: 'string' }],\n name: 'setContractURI',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'newPayoutRecipient', internalType: 'address', type: 'address' },\n ],\n name: 'setPayoutRecipient',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'swapRouter',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'symbol',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'tokenURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'totalSupply',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transfer',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'from', internalType: 'address', type: 'address' },\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transferFrom',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'amount0Delta', internalType: 'int256', type: 'int256' },\n { name: 'amount1Delta', internalType: 'int256', type: 'int256' },\n { name: '', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'uniswapV3SwapCallback',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'owner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'spender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Approval',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'buyer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tradeReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'coinsPurchased',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'amountFee',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'amountSold',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'comment',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n ],\n name: 'CoinBuy',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'creatorPayoutAddress',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'platformReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'marketRewards',\n internalType: 'struct ICoin.MarketRewards',\n type: 'tuple',\n components: [\n {\n name: 'totalAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'totalAmountCoin', internalType: 'uint256', type: 'uint256' },\n {\n name: 'creatorPayoutAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'creatorPayoutAmountCoin',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'platformReferrerAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'platformReferrerAmountCoin',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'protocolAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'protocolAmountCoin',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n indexed: false,\n },\n ],\n name: 'CoinMarketRewards',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'prevRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'CoinPayoutRecipientUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'seller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tradeReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'coinsSold',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'amountFee',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'amountPurchased',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'comment',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n ],\n name: 'CoinSell',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'creatorPayoutRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'platformReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tradeReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'creatorReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'platformReferrerReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'traderReferrerReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'protocolReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'CoinTradeRewards',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'senderBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'recipientBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'CoinTransfer',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newURI',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n { name: 'name', internalType: 'string', type: 'string', indexed: false },\n ],\n name: 'ContractMetadataUpdated',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'ContractURIUpdated' },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'prevOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnerUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'from', internalType: 'address', type: 'address', indexed: true },\n { name: 'to', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Transfer',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'AddressInsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'AddressZero' },\n { type: 'error', inputs: [], name: 'AlreadyOwner' },\n { type: 'error', inputs: [], name: 'ECDSAInvalidSignature' },\n {\n type: 'error',\n inputs: [{ name: 'length', internalType: 'uint256', type: 'uint256' }],\n name: 'ECDSAInvalidSignatureLength',\n },\n {\n type: 'error',\n inputs: [{ name: 's', internalType: 'bytes32', type: 'bytes32' }],\n name: 'ECDSAInvalidSignatureS',\n },\n {\n type: 'error',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'allowance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientAllowance',\n },\n {\n type: 'error',\n inputs: [\n { name: 'sender', internalType: 'address', type: 'address' },\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientBalance',\n },\n {\n type: 'error',\n inputs: [{ name: 'approver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidApprover',\n },\n {\n type: 'error',\n inputs: [{ name: 'receiver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidReceiver',\n },\n {\n type: 'error',\n inputs: [{ name: 'sender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSender',\n },\n {\n type: 'error',\n inputs: [{ name: 'spender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSpender',\n },\n { type: 'error', inputs: [], name: 'ERC20TransferAmountMismatch' },\n {\n type: 'error',\n inputs: [{ name: 'deadline', internalType: 'uint256', type: 'uint256' }],\n name: 'ERC2612ExpiredSignature',\n },\n {\n type: 'error',\n inputs: [\n { name: 'signer', internalType: 'address', type: 'address' },\n { name: 'owner', internalType: 'address', type: 'address' },\n ],\n name: 'ERC2612InvalidSigner',\n },\n { type: 'error', inputs: [], name: 'EthAmountMismatch' },\n { type: 'error', inputs: [], name: 'EthAmountTooSmall' },\n { type: 'error', inputs: [], name: 'EthTransferFailed' },\n { type: 'error', inputs: [], name: 'EthTransferInvalid' },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n { type: 'error', inputs: [], name: 'InitialOrderSizeTooLarge' },\n { type: 'error', inputs: [], name: 'InsufficientFunds' },\n { type: 'error', inputs: [], name: 'InsufficientLiquidity' },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'currentNonce', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'InvalidAccountNonce',\n },\n { type: 'error', inputs: [], name: 'InvalidCurrencyLowerTick' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidMarketType' },\n { type: 'error', inputs: [], name: 'InvalidWethLowerTick' },\n { type: 'error', inputs: [], name: 'MarketAlreadyGraduated' },\n { type: 'error', inputs: [], name: 'MarketNotGraduated' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'NotOwner' },\n { type: 'error', inputs: [], name: 'OneOwnerRequired' },\n { type: 'error', inputs: [], name: 'OnlyOwner' },\n { type: 'error', inputs: [], name: 'OnlyPool' },\n { type: 'error', inputs: [], name: 'OnlyWeth' },\n { type: 'error', inputs: [], name: 'OwnerCannotBeAddressZero' },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'SlippageBoundsExceeded' },\n { type: 'error', inputs: [], name: 'UseRevokeOwnershipToRemoveSelf' },\n] as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// ZoraFactoryImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const zoraFactoryImplABI = [\n {\n type: 'constructor',\n inputs: [{ name: '_coinImpl', internalType: 'address', type: 'address' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'coinImpl',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'payoutRecipient', internalType: 'address', type: 'address' },\n { name: 'owners', internalType: 'address[]', type: 'address[]' },\n { name: 'uri', internalType: 'string', type: 'string' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'platformReferrer', internalType: 'address', type: 'address' },\n { name: 'currency', internalType: 'address', type: 'address' },\n { name: 'tickLower', internalType: 'int24', type: 'int24' },\n { name: 'orderSize', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'deploy',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'implementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'initialOwner', internalType: 'address', type: 'address' },\n ],\n name: 'initialize',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'deployer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'creator',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'payoutRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'platformReferrer',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'tokenURI',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n { name: 'name', internalType: 'string', type: 'string', indexed: false },\n {\n name: 'symbol',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n {\n name: 'coin',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'pool',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'CoinCreated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'AddressInsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'ERC1167FailedCreateClone' },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n { type: 'error', inputs: [], name: 'ERC20TransferAmountMismatch' },\n { type: 'error', inputs: [], name: 'EthTransferInvalid' },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n] as const\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../package/wagmiGenerated.ts"],"sourcesContent":["//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Coin\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const coinABI = [\n {\n type: 'constructor',\n inputs: [\n {\n name: '_protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n },\n { name: '_protocolRewards', internalType: 'address', type: 'address' },\n { name: '_weth', internalType: 'address', type: 'address' },\n {\n name: '_nonfungiblePositionManager',\n internalType: 'address',\n type: 'address',\n },\n { name: '_swapRouter', internalType: 'address', type: 'address' },\n ],\n stateMutability: 'nonpayable',\n },\n { type: 'receive', stateMutability: 'payable' },\n {\n type: 'function',\n inputs: [],\n name: 'DOMAIN_SEPARATOR',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'MAX_TOTAL_SUPPLY',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'MIN_ORDER_SIZE',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'PLATFORM_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'PROTOCOL_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'TOKEN_CREATOR_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'TOTAL_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'TRADE_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'WETH',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'addOwner',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'accounts', internalType: 'address[]', type: 'address[]' },\n ],\n name: 'addOwners',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'spender', internalType: 'address', type: 'address' },\n ],\n name: 'allowance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'approve',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'amount', internalType: 'uint256', type: 'uint256' }],\n name: 'burn',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'recipient', internalType: 'address', type: 'address' },\n { name: 'orderSize', internalType: 'uint256', type: 'uint256' },\n { name: 'minAmountOut', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'tradeReferrer', internalType: 'address', type: 'address' },\n ],\n name: 'buy',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [{ name: 'pushEthRewards', internalType: 'bool', type: 'bool' }],\n name: 'claimSecondaryRewards',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'currency',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'decimals',\n outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'payoutRecipient_', internalType: 'address', type: 'address' },\n { name: 'owners_', internalType: 'address[]', type: 'address[]' },\n { name: 'tokenURI_', internalType: 'string', type: 'string' },\n { name: 'name_', internalType: 'string', type: 'string' },\n { name: 'symbol_', internalType: 'string', type: 'string' },\n { name: 'platformReferrer_', internalType: 'address', type: 'address' },\n { name: 'currency_', internalType: 'address', type: 'address' },\n { name: 'tickLower_', internalType: 'int24', type: 'int24' },\n ],\n name: 'initialize',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'isOwner',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'lpTokenId',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'name',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'nonces',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'nonfungiblePositionManager',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'onERC721Received',\n outputs: [{ name: '', internalType: 'bytes4', type: 'bytes4' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'owners',\n outputs: [{ name: '', internalType: 'address[]', type: 'address[]' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'payoutRecipient',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'v', internalType: 'uint8', type: 'uint8' },\n { name: 'r', internalType: 'bytes32', type: 'bytes32' },\n { name: 's', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'permit',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'platformReferrer',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'poolAddress',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'protocolRewardRecipient',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'protocolRewards',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'removeOwner',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'accounts', internalType: 'address[]', type: 'address[]' },\n ],\n name: 'removeOwners',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'revokeOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'recipient', internalType: 'address', type: 'address' },\n { name: 'orderSize', internalType: 'uint256', type: 'uint256' },\n { name: 'minAmountOut', internalType: 'uint256', type: 'uint256' },\n { name: 'sqrtPriceLimitX96', internalType: 'uint160', type: 'uint160' },\n { name: 'tradeReferrer', internalType: 'address', type: 'address' },\n ],\n name: 'sell',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'newURI', internalType: 'string', type: 'string' }],\n name: 'setContractURI',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'newPayoutRecipient', internalType: 'address', type: 'address' },\n ],\n name: 'setPayoutRecipient',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'pure',\n },\n {\n type: 'function',\n inputs: [],\n name: 'swapRouter',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'symbol',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'tokenURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'totalSupply',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transfer',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'from', internalType: 'address', type: 'address' },\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transferFrom',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'amount0Delta', internalType: 'int256', type: 'int256' },\n { name: 'amount1Delta', internalType: 'int256', type: 'int256' },\n { name: '', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'uniswapV3SwapCallback',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'owner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'spender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Approval',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'buyer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tradeReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'coinsPurchased',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'amountFee',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'amountSold',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'CoinBuy',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'payoutRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'platformReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'marketRewards',\n internalType: 'struct ICoin.MarketRewards',\n type: 'tuple',\n components: [\n {\n name: 'totalAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'totalAmountCoin', internalType: 'uint256', type: 'uint256' },\n {\n name: 'creatorPayoutAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'creatorPayoutAmountCoin',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'platformReferrerAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'platformReferrerAmountCoin',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'protocolAmountCurrency',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'protocolAmountCoin',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n indexed: false,\n },\n ],\n name: 'CoinMarketRewards',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'prevRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'CoinPayoutRecipientUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'seller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tradeReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'coinsSold',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'amountFee',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'amountPurchased',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'CoinSell',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'payoutRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'platformReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tradeReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'creatorReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'platformReferrerReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'traderReferrerReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'protocolReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n ],\n name: 'CoinTradeRewards',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'senderBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'recipientBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'CoinTransfer',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newURI',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n { name: 'name', internalType: 'string', type: 'string', indexed: false },\n ],\n name: 'ContractMetadataUpdated',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'ContractURIUpdated' },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'prevOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnerUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'from', internalType: 'address', type: 'address', indexed: true },\n { name: 'to', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Transfer',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'AddressInsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'AddressZero' },\n { type: 'error', inputs: [], name: 'AlreadyOwner' },\n { type: 'error', inputs: [], name: 'ECDSAInvalidSignature' },\n {\n type: 'error',\n inputs: [{ name: 'length', internalType: 'uint256', type: 'uint256' }],\n name: 'ECDSAInvalidSignatureLength',\n },\n {\n type: 'error',\n inputs: [{ name: 's', internalType: 'bytes32', type: 'bytes32' }],\n name: 'ECDSAInvalidSignatureS',\n },\n {\n type: 'error',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'allowance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientAllowance',\n },\n {\n type: 'error',\n inputs: [\n { name: 'sender', internalType: 'address', type: 'address' },\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientBalance',\n },\n {\n type: 'error',\n inputs: [{ name: 'approver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidApprover',\n },\n {\n type: 'error',\n inputs: [{ name: 'receiver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidReceiver',\n },\n {\n type: 'error',\n inputs: [{ name: 'sender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSender',\n },\n {\n type: 'error',\n inputs: [{ name: 'spender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSpender',\n },\n { type: 'error', inputs: [], name: 'ERC20TransferAmountMismatch' },\n {\n type: 'error',\n inputs: [{ name: 'deadline', internalType: 'uint256', type: 'uint256' }],\n name: 'ERC2612ExpiredSignature',\n },\n {\n type: 'error',\n inputs: [\n { name: 'signer', internalType: 'address', type: 'address' },\n { name: 'owner', internalType: 'address', type: 'address' },\n ],\n name: 'ERC2612InvalidSigner',\n },\n { type: 'error', inputs: [], name: 'EthAmountMismatch' },\n { type: 'error', inputs: [], name: 'EthAmountTooSmall' },\n { type: 'error', inputs: [], name: 'EthTransferFailed' },\n { type: 'error', inputs: [], name: 'EthTransferInvalid' },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n { type: 'error', inputs: [], name: 'InitialOrderSizeTooLarge' },\n { type: 'error', inputs: [], name: 'InsufficientFunds' },\n { type: 'error', inputs: [], name: 'InsufficientLiquidity' },\n {\n type: 'error',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'currentNonce', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'InvalidAccountNonce',\n },\n { type: 'error', inputs: [], name: 'InvalidCurrencyLowerTick' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidMarketType' },\n { type: 'error', inputs: [], name: 'InvalidWethLowerTick' },\n { type: 'error', inputs: [], name: 'MarketAlreadyGraduated' },\n { type: 'error', inputs: [], name: 'MarketNotGraduated' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'NotOwner' },\n { type: 'error', inputs: [], name: 'OneOwnerRequired' },\n { type: 'error', inputs: [], name: 'OnlyOwner' },\n { type: 'error', inputs: [], name: 'OnlyPool' },\n { type: 'error', inputs: [], name: 'OnlyWeth' },\n { type: 'error', inputs: [], name: 'OwnerCannotBeAddressZero' },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'SlippageBoundsExceeded' },\n { type: 'error', inputs: [], name: 'UseRevokeOwnershipToRemoveSelf' },\n] as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// ZoraFactoryImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nexport const zoraFactoryImplABI = [\n {\n type: 'constructor',\n inputs: [{ name: '_coinImpl', internalType: 'address', type: 'address' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'coinImpl',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'payoutRecipient', internalType: 'address', type: 'address' },\n { name: 'owners', internalType: 'address[]', type: 'address[]' },\n { name: 'uri', internalType: 'string', type: 'string' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'platformReferrer', internalType: 'address', type: 'address' },\n { name: 'currency', internalType: 'address', type: 'address' },\n { name: 'tickLower', internalType: 'int24', type: 'int24' },\n { name: 'orderSize', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'deploy',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'payable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'implementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [\n { name: 'initialOwner', internalType: 'address', type: 'address' },\n ],\n name: 'initialize',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n stateMutability: 'payable',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'payoutRecipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'platformReferrer',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'currency',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n { name: 'uri', internalType: 'string', type: 'string', indexed: false },\n { name: 'name', internalType: 'string', type: 'string', indexed: false },\n {\n name: 'symbol',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n {\n name: 'coin',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'pool',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'version',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n ],\n name: 'CoinCreated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'AddressInsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'ERC1167FailedCreateClone' },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n { type: 'error', inputs: [], name: 'ERC20TransferAmountMismatch' },\n { type: 'error', inputs: [], name: 'EthTransferInvalid' },\n { type: 'error', inputs: [], name: 'FailedInnerCall' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n] as const\n"],"mappings":"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","names":[]}
|
package/dist/wagmiGenerated.d.ts
CHANGED
|
@@ -771,18 +771,13 @@ export declare const coinABI: readonly [{
|
|
|
771
771
|
readonly internalType: "uint256";
|
|
772
772
|
readonly type: "uint256";
|
|
773
773
|
readonly indexed: false;
|
|
774
|
-
}, {
|
|
775
|
-
readonly name: "comment";
|
|
776
|
-
readonly internalType: "string";
|
|
777
|
-
readonly type: "string";
|
|
778
|
-
readonly indexed: false;
|
|
779
774
|
}];
|
|
780
775
|
readonly name: "CoinBuy";
|
|
781
776
|
}, {
|
|
782
777
|
readonly type: "event";
|
|
783
778
|
readonly anonymous: false;
|
|
784
779
|
readonly inputs: readonly [{
|
|
785
|
-
readonly name: "
|
|
780
|
+
readonly name: "payoutRecipient";
|
|
786
781
|
readonly internalType: "address";
|
|
787
782
|
readonly type: "address";
|
|
788
783
|
readonly indexed: true;
|
|
@@ -899,18 +894,13 @@ export declare const coinABI: readonly [{
|
|
|
899
894
|
readonly internalType: "uint256";
|
|
900
895
|
readonly type: "uint256";
|
|
901
896
|
readonly indexed: false;
|
|
902
|
-
}, {
|
|
903
|
-
readonly name: "comment";
|
|
904
|
-
readonly internalType: "string";
|
|
905
|
-
readonly type: "string";
|
|
906
|
-
readonly indexed: false;
|
|
907
897
|
}];
|
|
908
898
|
readonly name: "CoinSell";
|
|
909
899
|
}, {
|
|
910
900
|
readonly type: "event";
|
|
911
901
|
readonly anonymous: false;
|
|
912
902
|
readonly inputs: readonly [{
|
|
913
|
-
readonly name: "
|
|
903
|
+
readonly name: "payoutRecipient";
|
|
914
904
|
readonly internalType: "address";
|
|
915
905
|
readonly type: "address";
|
|
916
906
|
readonly indexed: true;
|
|
@@ -1463,12 +1453,7 @@ export declare const zoraFactoryImplABI: readonly [{
|
|
|
1463
1453
|
readonly type: "event";
|
|
1464
1454
|
readonly anonymous: false;
|
|
1465
1455
|
readonly inputs: readonly [{
|
|
1466
|
-
readonly name: "
|
|
1467
|
-
readonly internalType: "address";
|
|
1468
|
-
readonly type: "address";
|
|
1469
|
-
readonly indexed: true;
|
|
1470
|
-
}, {
|
|
1471
|
-
readonly name: "creator";
|
|
1456
|
+
readonly name: "caller";
|
|
1472
1457
|
readonly internalType: "address";
|
|
1473
1458
|
readonly type: "address";
|
|
1474
1459
|
readonly indexed: true;
|
|
@@ -1481,14 +1466,14 @@ export declare const zoraFactoryImplABI: readonly [{
|
|
|
1481
1466
|
readonly name: "platformReferrer";
|
|
1482
1467
|
readonly internalType: "address";
|
|
1483
1468
|
readonly type: "address";
|
|
1484
|
-
readonly indexed:
|
|
1469
|
+
readonly indexed: true;
|
|
1485
1470
|
}, {
|
|
1486
1471
|
readonly name: "currency";
|
|
1487
1472
|
readonly internalType: "address";
|
|
1488
1473
|
readonly type: "address";
|
|
1489
1474
|
readonly indexed: false;
|
|
1490
1475
|
}, {
|
|
1491
|
-
readonly name: "
|
|
1476
|
+
readonly name: "uri";
|
|
1492
1477
|
readonly internalType: "string";
|
|
1493
1478
|
readonly type: "string";
|
|
1494
1479
|
readonly indexed: false;
|
|
@@ -1512,6 +1497,11 @@ export declare const zoraFactoryImplABI: readonly [{
|
|
|
1512
1497
|
readonly internalType: "address";
|
|
1513
1498
|
readonly type: "address";
|
|
1514
1499
|
readonly indexed: false;
|
|
1500
|
+
}, {
|
|
1501
|
+
readonly name: "version";
|
|
1502
|
+
readonly internalType: "string";
|
|
1503
|
+
readonly type: "string";
|
|
1504
|
+
readonly indexed: false;
|
|
1515
1505
|
}];
|
|
1516
1506
|
readonly name: "CoinCreated";
|
|
1517
1507
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wagmiGenerated.d.ts","sourceRoot":"","sources":["../package/wagmiGenerated.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,OAAO
|
|
1
|
+
{"version":3,"file":"wagmiGenerated.d.ts","sourceRoot":"","sources":["../package/wagmiGenerated.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAg7BV,CAAA;AAMV,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+OrB,CAAA"}
|
|
@@ -509,12 +509,6 @@ export const coinABI = [
|
|
|
509
509
|
type: 'uint256',
|
|
510
510
|
indexed: false,
|
|
511
511
|
},
|
|
512
|
-
{
|
|
513
|
-
name: 'comment',
|
|
514
|
-
internalType: 'string',
|
|
515
|
-
type: 'string',
|
|
516
|
-
indexed: false,
|
|
517
|
-
},
|
|
518
512
|
],
|
|
519
513
|
name: 'CoinBuy',
|
|
520
514
|
},
|
|
@@ -523,7 +517,7 @@ export const coinABI = [
|
|
|
523
517
|
anonymous: false,
|
|
524
518
|
inputs: [
|
|
525
519
|
{
|
|
526
|
-
name: '
|
|
520
|
+
name: 'payoutRecipient',
|
|
527
521
|
internalType: 'address',
|
|
528
522
|
type: 'address',
|
|
529
523
|
indexed: true,
|
|
@@ -664,12 +658,6 @@ export const coinABI = [
|
|
|
664
658
|
type: 'uint256',
|
|
665
659
|
indexed: false,
|
|
666
660
|
},
|
|
667
|
-
{
|
|
668
|
-
name: 'comment',
|
|
669
|
-
internalType: 'string',
|
|
670
|
-
type: 'string',
|
|
671
|
-
indexed: false,
|
|
672
|
-
},
|
|
673
661
|
],
|
|
674
662
|
name: 'CoinSell',
|
|
675
663
|
},
|
|
@@ -678,7 +666,7 @@ export const coinABI = [
|
|
|
678
666
|
anonymous: false,
|
|
679
667
|
inputs: [
|
|
680
668
|
{
|
|
681
|
-
name: '
|
|
669
|
+
name: 'payoutRecipient',
|
|
682
670
|
internalType: 'address',
|
|
683
671
|
type: 'address',
|
|
684
672
|
indexed: true,
|
|
@@ -1060,13 +1048,7 @@ export const zoraFactoryImplABI = [
|
|
|
1060
1048
|
anonymous: false,
|
|
1061
1049
|
inputs: [
|
|
1062
1050
|
{
|
|
1063
|
-
name: '
|
|
1064
|
-
internalType: 'address',
|
|
1065
|
-
type: 'address',
|
|
1066
|
-
indexed: true,
|
|
1067
|
-
},
|
|
1068
|
-
{
|
|
1069
|
-
name: 'creator',
|
|
1051
|
+
name: 'caller',
|
|
1070
1052
|
internalType: 'address',
|
|
1071
1053
|
type: 'address',
|
|
1072
1054
|
indexed: true,
|
|
@@ -1081,7 +1063,7 @@ export const zoraFactoryImplABI = [
|
|
|
1081
1063
|
name: 'platformReferrer',
|
|
1082
1064
|
internalType: 'address',
|
|
1083
1065
|
type: 'address',
|
|
1084
|
-
indexed:
|
|
1066
|
+
indexed: true,
|
|
1085
1067
|
},
|
|
1086
1068
|
{
|
|
1087
1069
|
name: 'currency',
|
|
@@ -1089,12 +1071,7 @@ export const zoraFactoryImplABI = [
|
|
|
1089
1071
|
type: 'address',
|
|
1090
1072
|
indexed: false,
|
|
1091
1073
|
},
|
|
1092
|
-
{
|
|
1093
|
-
name: 'tokenURI',
|
|
1094
|
-
internalType: 'string',
|
|
1095
|
-
type: 'string',
|
|
1096
|
-
indexed: false,
|
|
1097
|
-
},
|
|
1074
|
+
{ name: 'uri', internalType: 'string', type: 'string', indexed: false },
|
|
1098
1075
|
{ name: 'name', internalType: 'string', type: 'string', indexed: false },
|
|
1099
1076
|
{
|
|
1100
1077
|
name: 'symbol',
|
|
@@ -1114,6 +1091,12 @@ export const zoraFactoryImplABI = [
|
|
|
1114
1091
|
type: 'address',
|
|
1115
1092
|
indexed: false,
|
|
1116
1093
|
},
|
|
1094
|
+
{
|
|
1095
|
+
name: 'version',
|
|
1096
|
+
internalType: 'string',
|
|
1097
|
+
type: 'string',
|
|
1098
|
+
indexed: false,
|
|
1099
|
+
},
|
|
1117
1100
|
],
|
|
1118
1101
|
name: 'CoinCreated',
|
|
1119
1102
|
},
|
package/package.json
CHANGED
package/src/Coin.sol
CHANGED
|
@@ -185,7 +185,7 @@ contract Coin is
|
|
|
185
185
|
|
|
186
186
|
_handleMarketRewards();
|
|
187
187
|
|
|
188
|
-
emit CoinBuy(msg.sender, recipient, tradeReferrer, amountOut, currency, tradeReward, trueOrderSize
|
|
188
|
+
emit CoinBuy(msg.sender, recipient, tradeReferrer, amountOut, currency, tradeReward, trueOrderSize);
|
|
189
189
|
|
|
190
190
|
return amountOut;
|
|
191
191
|
}
|
|
@@ -245,7 +245,7 @@ contract Coin is
|
|
|
245
245
|
|
|
246
246
|
_handleMarketRewards();
|
|
247
247
|
|
|
248
|
-
emit CoinSell(msg.sender, recipient, tradeReferrer, orderSize, currency, tradeReward, payoutSize
|
|
248
|
+
emit CoinSell(msg.sender, recipient, tradeReferrer, orderSize, currency, tradeReward, payoutSize);
|
|
249
249
|
|
|
250
250
|
return amountOut;
|
|
251
251
|
}
|
package/src/ZoraFactoryImpl.sol
CHANGED
|
@@ -54,14 +54,14 @@ contract ZoraFactoryImpl is IZoraFactory, UUPSUpgradeable, ReentrancyGuardUpgrad
|
|
|
54
54
|
emit CoinCreated(
|
|
55
55
|
msg.sender,
|
|
56
56
|
payoutRecipient,
|
|
57
|
-
payoutRecipient,
|
|
58
57
|
coin.platformReferrer(),
|
|
59
58
|
coin.currency(),
|
|
60
59
|
uri,
|
|
61
60
|
name,
|
|
62
61
|
symbol,
|
|
63
62
|
address(coin),
|
|
64
|
-
coin.poolAddress()
|
|
63
|
+
coin.poolAddress(),
|
|
64
|
+
coin.contractVersion()
|
|
65
65
|
);
|
|
66
66
|
|
|
67
67
|
return address(coin);
|
package/src/interfaces/ICoin.sol
CHANGED
|
@@ -66,13 +66,13 @@ interface ICoin {
|
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
/// @notice Emitted when market rewards are distributed
|
|
69
|
-
/// @param
|
|
69
|
+
/// @param payoutRecipient The address of the creator rewards payout recipient
|
|
70
70
|
/// @param platformReferrer The address of the platform referrer
|
|
71
71
|
/// @param protocolRewardRecipient The address of the protocol reward recipient
|
|
72
72
|
/// @param currency The address of the currency
|
|
73
73
|
/// @param marketRewards The rewards accrued from the market's liquidity position
|
|
74
74
|
event CoinMarketRewards(
|
|
75
|
-
address indexed
|
|
75
|
+
address indexed payoutRecipient,
|
|
76
76
|
address indexed platformReferrer,
|
|
77
77
|
address protocolRewardRecipient,
|
|
78
78
|
address currency,
|
|
@@ -94,8 +94,7 @@ interface ICoin {
|
|
|
94
94
|
uint256 coinsPurchased,
|
|
95
95
|
address currency,
|
|
96
96
|
uint256 amountFee,
|
|
97
|
-
uint256 amountSold
|
|
98
|
-
string comment // TODO remove after backend approval
|
|
97
|
+
uint256 amountSold
|
|
99
98
|
);
|
|
100
99
|
|
|
101
100
|
/// @notice Emitted when coins are sold
|
|
@@ -113,8 +112,7 @@ interface ICoin {
|
|
|
113
112
|
uint256 coinsSold,
|
|
114
113
|
address currency,
|
|
115
114
|
uint256 amountFee,
|
|
116
|
-
uint256 amountPurchased
|
|
117
|
-
string comment // TODO remove after backend approval
|
|
115
|
+
uint256 amountPurchased
|
|
118
116
|
);
|
|
119
117
|
|
|
120
118
|
/// @notice Emitted when a coin is transferred
|
|
@@ -126,7 +124,7 @@ interface ICoin {
|
|
|
126
124
|
event CoinTransfer(address indexed sender, address indexed recipient, uint256 amount, uint256 senderBalance, uint256 recipientBalance);
|
|
127
125
|
|
|
128
126
|
/// @notice Emitted when trade rewards are distributed
|
|
129
|
-
/// @param
|
|
127
|
+
/// @param payoutRecipient The address of the creator rewards payout recipient
|
|
130
128
|
/// @param platformReferrer The address of the platform referrer
|
|
131
129
|
/// @param tradeReferrer The address of the trade referrer
|
|
132
130
|
/// @param protocolRewardRecipient The address of the protocol reward recipient
|
|
@@ -136,7 +134,7 @@ interface ICoin {
|
|
|
136
134
|
/// @param protocolReward The reward for the protocol
|
|
137
135
|
/// @param currency The address of the currency
|
|
138
136
|
event CoinTradeRewards(
|
|
139
|
-
address indexed
|
|
137
|
+
address indexed payoutRecipient,
|
|
140
138
|
address indexed platformReferrer,
|
|
141
139
|
address indexed tradeReferrer,
|
|
142
140
|
address protocolRewardRecipient,
|