add contracts, add abis, temprarily return a modal in custom blocks (build and replace with metokens modal)

This commit is contained in:
Seroxdesign
2023-03-22 11:36:48 -04:00
parent 7a10bf87d8
commit 0782f277ac
6 changed files with 902 additions and 0 deletions

View File

@@ -51,6 +51,8 @@ const PlayerSectionInner: React.FC<
return <PlayerAchievements {...{ player, isOwnProfile, editing }} />;
case BoxTypes.PLAYER_COMPLETED_QUESTS:
return <PlayerCompletedQuests {...{ player, isOwnProfile, editing }} />;
case BoxTypes.PLAYER_METOKENS:
return <PlayerCompletedQuests {...{ player, isOwnProfile, editing }} />;
case BoxTypes.EMBEDDED_URL: {
const { url } = metadata ?? {};
return url ? <EmbeddedUrl {...{ url, editing }} /> : null;

View File

@@ -0,0 +1,197 @@
export default [
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'asset',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'burner',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'recipient',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'meTokensBurned',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'assetsReturned',
type: 'uint256',
},
],
name: 'Burn',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'asset',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'donor',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'assetsDeposited',
type: 'uint256',
},
],
name: 'Donate',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'asset',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'depositor',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'recipient',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'assetsDeposited',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'meTokensMinted',
type: 'uint256',
},
],
name: 'Mint',
type: 'event',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'meTokensBurned', type: 'uint256' },
{ internalType: 'address', name: 'recipient', type: 'address' },
],
name: 'burn',
outputs: [
{ internalType: 'uint256', name: 'assetsReturned', type: 'uint256' },
],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'meTokensBurned', type: 'uint256' },
{ internalType: 'address', name: 'sender', type: 'address' },
],
name: 'calculateAssetsReturned',
outputs: [
{ internalType: 'uint256', name: 'assetsReturned', type: 'uint256' },
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'assetsDeposited', type: 'uint256' },
],
name: 'calculateMeTokensMinted',
outputs: [
{ internalType: 'uint256', name: 'meTokensMinted', type: 'uint256' },
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'assetsDeposited', type: 'uint256' },
],
name: 'donate',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'assetsDeposited', type: 'uint256' },
{ internalType: 'address', name: 'recipient', type: 'address' },
],
name: 'mint',
outputs: [
{ internalType: 'uint256', name: 'meTokensMinted', type: 'uint256' },
],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'assetsDeposited', type: 'uint256' },
{ internalType: 'address', name: 'recipient', type: 'address' },
{ internalType: 'uint256', name: 'deadline', type: 'uint256' },
{ internalType: 'uint8', name: 'vSig', type: 'uint8' },
{ internalType: 'bytes32', name: 'rSig', type: 'bytes32' },
{ internalType: 'bytes32', name: 'sSig', type: 'bytes32' },
],
name: 'mintWithPermit',
outputs: [
{ internalType: 'uint256', name: 'meTokensMinted', type: 'uint256' },
],
stateMutability: 'nonpayable',
type: 'function',
},
];

View File

@@ -0,0 +1,284 @@
export default [
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'uint256', name: 'id', type: 'uint256' },
],
name: 'CancelUpdate',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'uint256', name: 'id', type: 'uint256' },
],
name: 'Deactivate',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'uint256', name: 'id', type: 'uint256' },
],
name: 'FinishUpdate',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'uint256', name: 'id', type: 'uint256' },
{
indexed: false,
internalType: 'uint256',
name: 'targetRefundRatio',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint32',
name: 'targetReserveWeight',
type: 'uint32',
},
{
indexed: false,
internalType: 'bool',
name: 'reconfigure',
type: 'bool',
},
{
indexed: false,
internalType: 'uint256',
name: 'startTime',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'endTime',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'endCooldown',
type: 'uint256',
},
],
name: 'InitUpdate',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'uint256', name: 'id', type: 'uint256' },
{
indexed: false,
internalType: 'address',
name: 'owner',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'asset',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'refundRatio',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'baseY',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint32',
name: 'reserveWeight',
type: 'uint32',
},
{
indexed: false,
internalType: 'bytes',
name: 'encodedVaultArgs',
type: 'bytes',
},
],
name: 'Register',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'uint256', name: 'id', type: 'uint256' },
{
indexed: false,
internalType: 'address',
name: 'newOwner',
type: 'address',
},
],
name: 'TransferHubOwnership',
type: 'event',
},
{
inputs: [{ internalType: 'uint256', name: 'id', type: 'uint256' }],
name: 'cancelUpdate',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [],
name: 'count',
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'id', type: 'uint256' }],
name: 'deactivate',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'id', type: 'uint256' }],
name: 'finishUpdate',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'id', type: 'uint256' }],
name: 'getBasicHubInfo',
outputs: [
{ internalType: 'uint256', name: 'refundRatio', type: 'uint256' },
{ internalType: 'address', name: 'owner', type: 'address' },
{ internalType: 'address', name: 'vault', type: 'address' },
{ internalType: 'address', name: 'asset', type: 'address' },
{ internalType: 'bool', name: 'updating', type: 'bool' },
{ internalType: 'bool', name: 'active', type: 'bool' },
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'id', type: 'uint256' }],
name: 'getHubInfo',
outputs: [
{
components: [
{ internalType: 'uint256', name: 'startTime', type: 'uint256' },
{ internalType: 'uint256', name: 'endTime', type: 'uint256' },
{ internalType: 'uint256', name: 'endCooldown', type: 'uint256' },
{ internalType: 'uint256', name: 'refundRatio', type: 'uint256' },
{
internalType: 'uint256',
name: 'targetRefundRatio',
type: 'uint256',
},
{ internalType: 'address', name: 'owner', type: 'address' },
{ internalType: 'address', name: 'vault', type: 'address' },
{ internalType: 'address', name: 'asset', type: 'address' },
{ internalType: 'bool', name: 'updating', type: 'bool' },
{ internalType: 'bool', name: 'reconfigure', type: 'bool' },
{ internalType: 'bool', name: 'active', type: 'bool' },
],
internalType: 'struct HubInfo',
name: '',
type: 'tuple',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'hubCooldown',
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'hubDuration',
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'hubWarmup',
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{ internalType: 'uint256', name: 'id', type: 'uint256' },
{ internalType: 'uint256', name: 'targetRefundRatio', type: 'uint256' },
{ internalType: 'uint32', name: 'targetReserveWeight', type: 'uint32' },
],
name: 'initUpdate',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'owner', type: 'address' },
{ internalType: 'address', name: 'asset', type: 'address' },
{ internalType: 'contract IVault', name: 'vault', type: 'address' },
{ internalType: 'uint256', name: 'refundRatio', type: 'uint256' },
{ internalType: 'uint256', name: 'baseY', type: 'uint256' },
{ internalType: 'uint32', name: 'reserveWeight', type: 'uint32' },
{ internalType: 'bytes', name: 'encodedVaultArgs', type: 'bytes' },
],
name: 'register',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'period', type: 'uint256' }],
name: 'setHubCooldown',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'period', type: 'uint256' }],
name: 'setHubDuration',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'period', type: 'uint256' }],
name: 'setHubWarmup',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'uint256', name: 'id', type: 'uint256' },
{ internalType: 'address', name: 'newOwner', type: 'address' },
],
name: 'transferHubOwnership',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
];

View File

@@ -0,0 +1,13 @@
export default [
{
inputs: [
{ internalType: 'string', name: 'name', type: 'string' },
{ internalType: 'string', name: 'symbol', type: 'string' },
{ internalType: 'address', name: 'diamond', type: 'address' },
],
name: 'create',
outputs: [{ internalType: 'address', name: '', type: 'address' }],
stateMutability: 'nonpayable',
type: 'function',
},
];

View File

@@ -0,0 +1,402 @@
export default [
{
inputs: [],
stateMutability: 'nonpayable',
type: 'constructor',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'meToken',
type: 'address',
},
],
name: 'CancelResubscribe',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'from',
type: 'address',
},
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
],
name: 'CancelTransferMeTokenOwnership',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'from',
type: 'address',
},
{ indexed: false, internalType: 'address', name: 'to', type: 'address' },
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
],
name: 'ClaimMeTokenOwnership',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'meToken',
type: 'address',
},
],
name: 'FinishResubscribe',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'targetHubId',
type: 'uint256',
},
{
indexed: false,
internalType: 'address',
name: 'migration',
type: 'address',
},
{
indexed: false,
internalType: 'bytes',
name: 'encodedMigrationArgs',
type: 'bytes',
},
],
name: 'InitResubscribe',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: true,
internalType: 'address',
name: 'owner',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'minted',
type: 'uint256',
},
{
indexed: false,
internalType: 'address',
name: 'asset',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'assetsDeposited',
type: 'uint256',
},
{ indexed: false, internalType: 'string', name: 'name', type: 'string' },
{
indexed: false,
internalType: 'string',
name: 'symbol',
type: 'string',
},
{
indexed: false,
internalType: 'uint256',
name: 'hubId',
type: 'uint256',
},
],
name: 'Subscribe',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'from',
type: 'address',
},
{ indexed: false, internalType: 'address', name: 'to', type: 'address' },
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
],
name: 'TransferMeTokenOwnership',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'bool', name: 'add', type: 'bool' },
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'amount',
type: 'uint256',
},
],
name: 'UpdateBalanceLocked',
type: 'event',
},
{
anonymous: false,
inputs: [
{ indexed: false, internalType: 'bool', name: 'add', type: 'bool' },
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'amount',
type: 'uint256',
},
],
name: 'UpdateBalancePooled',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'address',
name: 'meToken',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'newBalance',
type: 'uint256',
},
],
name: 'UpdateBalances',
type: 'event',
},
{
inputs: [{ internalType: 'address', name: 'meToken', type: 'address' }],
name: 'cancelResubscribe',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [],
name: 'cancelTransferMeTokenOwnership',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'oldOwner', type: 'address' }],
name: 'claimMeTokenOwnership',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'meToken', type: 'address' }],
name: 'finishResubscribe',
outputs: [
{
components: [
{ internalType: 'address', name: 'owner', type: 'address' },
{ internalType: 'uint256', name: 'hubId', type: 'uint256' },
{ internalType: 'uint256', name: 'balancePooled', type: 'uint256' },
{ internalType: 'uint256', name: 'balanceLocked', type: 'uint256' },
{ internalType: 'uint256', name: 'startTime', type: 'uint256' },
{ internalType: 'uint256', name: 'endTime', type: 'uint256' },
{ internalType: 'uint256', name: 'targetHubId', type: 'uint256' },
{ internalType: 'address', name: 'migration', type: 'address' },
],
internalType: 'struct MeTokenInfo',
name: '',
type: 'tuple',
},
],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'meToken', type: 'address' }],
name: 'getBasicMeTokenInfo',
outputs: [
{ internalType: 'address', name: 'owner', type: 'address' },
{ internalType: 'uint256', name: 'hubId', type: 'uint256' },
{ internalType: 'uint256', name: 'balancePooled', type: 'uint256' },
{ internalType: 'uint256', name: 'balanceLocked', type: 'uint256' },
{ internalType: 'address', name: 'migration', type: 'address' },
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'meToken', type: 'address' }],
name: 'getMeTokenInfo',
outputs: [
{
components: [
{ internalType: 'address', name: 'owner', type: 'address' },
{ internalType: 'uint256', name: 'hubId', type: 'uint256' },
{ internalType: 'uint256', name: 'balancePooled', type: 'uint256' },
{ internalType: 'uint256', name: 'balanceLocked', type: 'uint256' },
{ internalType: 'uint256', name: 'startTime', type: 'uint256' },
{ internalType: 'uint256', name: 'endTime', type: 'uint256' },
{ internalType: 'uint256', name: 'targetHubId', type: 'uint256' },
{ internalType: 'address', name: 'migration', type: 'address' },
],
internalType: 'struct MeTokenInfo',
name: '',
type: 'tuple',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'owner', type: 'address' }],
name: 'getOwnerMeToken',
outputs: [{ internalType: 'address', name: '', type: 'address' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'oldOwner', type: 'address' }],
name: 'getPendingOwner',
outputs: [{ internalType: 'address', name: '', type: 'address' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'targetHubId', type: 'uint256' },
{ internalType: 'address', name: 'migration', type: 'address' },
{ internalType: 'bytes', name: 'encodedMigrationArgs', type: 'bytes' },
],
name: 'initResubscribe',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'owner', type: 'address' }],
name: 'isOwner',
outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'meTokenDuration',
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'meTokenWarmup',
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
stateMutability: 'view',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'period', type: 'uint256' }],
name: 'setMeTokenDuration',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'uint256', name: 'period', type: 'uint256' }],
name: 'setMeTokenWarmup',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'string', name: 'name', type: 'string' },
{ internalType: 'string', name: 'symbol', type: 'string' },
{ internalType: 'uint256', name: 'hubId', type: 'uint256' },
{ internalType: 'uint256', name: 'assetsDeposited', type: 'uint256' },
],
name: 'subscribe',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [{ internalType: 'address', name: 'newOwner', type: 'address' }],
name: 'transferMeTokenOwnership',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{ internalType: 'address', name: 'meToken', type: 'address' },
{ internalType: 'uint256', name: 'newBalance', type: 'uint256' },
],
name: 'updateBalances',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
];

View File

@@ -0,0 +1,4 @@
export const metokenRegistry = '0x8b91FcF2230ab04A46e2D83aaF062EC1B5AAAa5c';
export const metokenFactory = '0x8D4ee3599aF814bF3Aa884c161f0dE81d9e97225';
export const hubFacet = '0x4555cf6E984186F6C0dfeba1A26764b21553B39f';
export const foundryFacet = '0xA56AAF637b057a5EDf7b7252D0B7280042E71335';