diff --git a/.graphclient/index.ts b/.graphclient/index.ts new file mode 100644 index 00000000..ae3c2b69 --- /dev/null +++ b/.graphclient/index.ts @@ -0,0 +1,1690 @@ +// @ts-nocheck +import { GraphQLResolveInfo, SelectionSetNode, FieldNode, GraphQLScalarType, GraphQLScalarTypeConfig } from 'graphql' +import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core' +import { gql } from '@graphql-mesh/utils' + +import type { GetMeshOptions } from '@graphql-mesh/runtime' +import type { YamlConfig } from '@graphql-mesh/types' +import { PubSub } from '@graphql-mesh/utils' +import { DefaultLogger } from '@graphql-mesh/utils' +import MeshCache from '@graphql-mesh/cache-localforage' +import { fetch as fetchFn } from '@whatwg-node/fetch' + +import { MeshResolvedSource } from '@graphql-mesh/runtime' +import { MeshTransform, MeshPlugin } from '@graphql-mesh/types' +import GraphqlHandler from '@graphql-mesh/graphql' +import BareMerger from '@graphql-mesh/merger-bare' +import { printWithCache } from '@graphql-mesh/utils' +import { createMeshHTTPHandler, MeshHTTPHandler } from '@graphql-mesh/http' +import { getMesh, ExecuteMeshFn, SubscribeMeshFn, MeshContext as BaseMeshContext, MeshInstance } from '@graphql-mesh/runtime' +import { MeshStore, FsStoreStorageAdapter } from '@graphql-mesh/store' +import { path as pathModule } from '@graphql-mesh/cross-helpers' +import { ImportFn } from '@graphql-mesh/types' +import type { UnlockTypes } from './sources/unlock/types' +import * as importedModule$0 from './sources/unlock/introspectionSchema' +export type Maybe = T | null +export type InputMaybe = Maybe +export type Exact = { [K in keyof T]: T[K] } +export type MakeOptional = Omit & { [SubKey in K]?: Maybe } +export type MakeMaybe = Omit & { [SubKey in K]: Maybe } +export type RequireFields = Omit & { [P in K]-?: NonNullable } + +/** All built-in and custom scalars, mapped to their actual values */ +export type Scalars = { + ID: string + String: string + Boolean: boolean + Int: number + Float: number + BigDecimal: any + BigInt: any + Bytes: any + Int8: any +} + +export type BlockChangedFilter = { + number_gte: Scalars['Int'] +} + +export type Block_height = { + hash?: InputMaybe + number?: InputMaybe + number_gte?: InputMaybe +} + +export type Key = { + /** Unique identifier for a key (combination of lock address and token id) */ + id: Scalars['ID'] + /** In the Unlock ecosystem, a “Lock” is a smart contract that creates (or “mints”) NFTs */ + lock: Lock + /** TokenId for a given key */ + tokenId: Scalars['BigInt'] + /** The address of the key owner */ + owner: Scalars['Bytes'] + /** An assigned title set on an Unlock key which gives a specific wallet address authorization to transfer, share or cancel */ + manager?: Maybe + /** Time the key expires */ + expiration: Scalars['BigInt'] + /** The tokenURI on an NFT is a unique identifier */ + tokenURI?: Maybe + /** Block key was created */ + createdAtBlock: Scalars['BigInt'] + /** Timestamp of the block in which the key was created */ + createdAt: Scalars['BigInt'] + /** Invoked by a Lock manager to expire the user's key and perform a refund and cancellation of the key */ + cancelled?: Maybe + /** list of transaction hashes for purchase/extensions of a specific token */ + transactionsHash?: Maybe> +} + +export type Key_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + lock?: InputMaybe + lock_not?: InputMaybe + lock_gt?: InputMaybe + lock_lt?: InputMaybe + lock_gte?: InputMaybe + lock_lte?: InputMaybe + lock_in?: InputMaybe> + lock_not_in?: InputMaybe> + lock_contains?: InputMaybe + lock_contains_nocase?: InputMaybe + lock_not_contains?: InputMaybe + lock_not_contains_nocase?: InputMaybe + lock_starts_with?: InputMaybe + lock_starts_with_nocase?: InputMaybe + lock_not_starts_with?: InputMaybe + lock_not_starts_with_nocase?: InputMaybe + lock_ends_with?: InputMaybe + lock_ends_with_nocase?: InputMaybe + lock_not_ends_with?: InputMaybe + lock_not_ends_with_nocase?: InputMaybe + lock_?: InputMaybe + tokenId?: InputMaybe + tokenId_not?: InputMaybe + tokenId_gt?: InputMaybe + tokenId_lt?: InputMaybe + tokenId_gte?: InputMaybe + tokenId_lte?: InputMaybe + tokenId_in?: InputMaybe> + tokenId_not_in?: InputMaybe> + owner?: InputMaybe + owner_not?: InputMaybe + owner_gt?: InputMaybe + owner_lt?: InputMaybe + owner_gte?: InputMaybe + owner_lte?: InputMaybe + owner_in?: InputMaybe> + owner_not_in?: InputMaybe> + owner_contains?: InputMaybe + owner_not_contains?: InputMaybe + manager?: InputMaybe + manager_not?: InputMaybe + manager_gt?: InputMaybe + manager_lt?: InputMaybe + manager_gte?: InputMaybe + manager_lte?: InputMaybe + manager_in?: InputMaybe> + manager_not_in?: InputMaybe> + manager_contains?: InputMaybe + manager_not_contains?: InputMaybe + expiration?: InputMaybe + expiration_not?: InputMaybe + expiration_gt?: InputMaybe + expiration_lt?: InputMaybe + expiration_gte?: InputMaybe + expiration_lte?: InputMaybe + expiration_in?: InputMaybe> + expiration_not_in?: InputMaybe> + tokenURI?: InputMaybe + tokenURI_not?: InputMaybe + tokenURI_gt?: InputMaybe + tokenURI_lt?: InputMaybe + tokenURI_gte?: InputMaybe + tokenURI_lte?: InputMaybe + tokenURI_in?: InputMaybe> + tokenURI_not_in?: InputMaybe> + tokenURI_contains?: InputMaybe + tokenURI_contains_nocase?: InputMaybe + tokenURI_not_contains?: InputMaybe + tokenURI_not_contains_nocase?: InputMaybe + tokenURI_starts_with?: InputMaybe + tokenURI_starts_with_nocase?: InputMaybe + tokenURI_not_starts_with?: InputMaybe + tokenURI_not_starts_with_nocase?: InputMaybe + tokenURI_ends_with?: InputMaybe + tokenURI_ends_with_nocase?: InputMaybe + tokenURI_not_ends_with?: InputMaybe + tokenURI_not_ends_with_nocase?: InputMaybe + createdAtBlock?: InputMaybe + createdAtBlock_not?: InputMaybe + createdAtBlock_gt?: InputMaybe + createdAtBlock_lt?: InputMaybe + createdAtBlock_gte?: InputMaybe + createdAtBlock_lte?: InputMaybe + createdAtBlock_in?: InputMaybe> + createdAtBlock_not_in?: InputMaybe> + createdAt?: InputMaybe + createdAt_not?: InputMaybe + createdAt_gt?: InputMaybe + createdAt_lt?: InputMaybe + createdAt_gte?: InputMaybe + createdAt_lte?: InputMaybe + createdAt_in?: InputMaybe> + createdAt_not_in?: InputMaybe> + cancelled?: InputMaybe + cancelled_not?: InputMaybe + cancelled_in?: InputMaybe> + cancelled_not_in?: InputMaybe> + transactionsHash?: InputMaybe> + transactionsHash_not?: InputMaybe> + transactionsHash_contains?: InputMaybe> + transactionsHash_contains_nocase?: InputMaybe> + transactionsHash_not_contains?: InputMaybe> + transactionsHash_not_contains_nocase?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> +} + +export type Key_orderBy = + | 'id' + | 'lock' + | 'lock__id' + | 'lock__address' + | 'lock__name' + | 'lock__symbol' + | 'lock__expirationDuration' + | 'lock__tokenAddress' + | 'lock__price' + | 'lock__version' + | 'lock__totalKeys' + | 'lock__maxNumberOfKeys' + | 'lock__maxKeysPerAddress' + | 'lock__createdAtBlock' + | 'lock__lastKeyMintedAt' + | 'lock__deployer' + | 'lock__numberOfReceipts' + | 'tokenId' + | 'owner' + | 'manager' + | 'expiration' + | 'tokenURI' + | 'createdAtBlock' + | 'createdAt' + | 'cancelled' + | 'transactionsHash' + +export type Lock = { + /** Unique ID for the Lock object (uses the lock address) */ + id: Scalars['ID'] + /** Address of the lock */ + address: Scalars['Bytes'] + /** A descriptive name for a collection of NFTs in this contract */ + name?: Maybe + /** Token symbol */ + symbol?: Maybe + /** Duration is set the on the lock when you deploy and the expiration which is set on each key when they are minted */ + expirationDuration?: Maybe + /** Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 */ + tokenAddress: Scalars['Bytes'] + /** Price of the keys sold by the lock */ + price: Scalars['BigInt'] + /** An assigned role set on a Lock contract which gives the highest level of permissions to the wallet address set to that role */ + lockManagers: Array + /** Unlock Protocol version of a minting contract */ + version: Scalars['BigInt'] + /** Number of keys minted (expired or not) */ + totalKeys: Scalars['BigInt'] + /** Maximum number of keys for sale */ + maxNumberOfKeys?: Maybe + /** The maximum number of keys allowed for a single address */ + maxKeysPerAddress?: Maybe + /** Refer to key entity */ + keys?: Maybe> + /** Which block the lock was created */ + createdAtBlock?: Maybe + /** The timestamp of the block in which the last key was minted */ + lastKeyMintedAt?: Maybe + /** Address of the lock deployer */ + deployer: Scalars['Bytes'] + /** Total number of receipts of lock */ + numberOfReceipts: Scalars['BigInt'] +} + +export type LockkeysArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe +} + +export type LockStats = { + /** Transaction Hash */ + id: Scalars['ID'] + /** Total locks deployed */ + totalLocksDeployed: Scalars['BigInt'] + /** Total keys sold */ + totalKeysSold: Scalars['BigInt'] +} + +export type LockStats_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + totalLocksDeployed?: InputMaybe + totalLocksDeployed_not?: InputMaybe + totalLocksDeployed_gt?: InputMaybe + totalLocksDeployed_lt?: InputMaybe + totalLocksDeployed_gte?: InputMaybe + totalLocksDeployed_lte?: InputMaybe + totalLocksDeployed_in?: InputMaybe> + totalLocksDeployed_not_in?: InputMaybe> + totalKeysSold?: InputMaybe + totalKeysSold_not?: InputMaybe + totalKeysSold_gt?: InputMaybe + totalKeysSold_lt?: InputMaybe + totalKeysSold_gte?: InputMaybe + totalKeysSold_lte?: InputMaybe + totalKeysSold_in?: InputMaybe> + totalKeysSold_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> +} + +export type LockStats_orderBy = 'id' | 'totalLocksDeployed' | 'totalKeysSold' + +export type Lock_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + address?: InputMaybe + address_not?: InputMaybe + address_gt?: InputMaybe + address_lt?: InputMaybe + address_gte?: InputMaybe + address_lte?: InputMaybe + address_in?: InputMaybe> + address_not_in?: InputMaybe> + address_contains?: InputMaybe + address_not_contains?: InputMaybe + name?: InputMaybe + name_not?: InputMaybe + name_gt?: InputMaybe + name_lt?: InputMaybe + name_gte?: InputMaybe + name_lte?: InputMaybe + name_in?: InputMaybe> + name_not_in?: InputMaybe> + name_contains?: InputMaybe + name_contains_nocase?: InputMaybe + name_not_contains?: InputMaybe + name_not_contains_nocase?: InputMaybe + name_starts_with?: InputMaybe + name_starts_with_nocase?: InputMaybe + name_not_starts_with?: InputMaybe + name_not_starts_with_nocase?: InputMaybe + name_ends_with?: InputMaybe + name_ends_with_nocase?: InputMaybe + name_not_ends_with?: InputMaybe + name_not_ends_with_nocase?: InputMaybe + symbol?: InputMaybe + symbol_not?: InputMaybe + symbol_gt?: InputMaybe + symbol_lt?: InputMaybe + symbol_gte?: InputMaybe + symbol_lte?: InputMaybe + symbol_in?: InputMaybe> + symbol_not_in?: InputMaybe> + symbol_contains?: InputMaybe + symbol_contains_nocase?: InputMaybe + symbol_not_contains?: InputMaybe + symbol_not_contains_nocase?: InputMaybe + symbol_starts_with?: InputMaybe + symbol_starts_with_nocase?: InputMaybe + symbol_not_starts_with?: InputMaybe + symbol_not_starts_with_nocase?: InputMaybe + symbol_ends_with?: InputMaybe + symbol_ends_with_nocase?: InputMaybe + symbol_not_ends_with?: InputMaybe + symbol_not_ends_with_nocase?: InputMaybe + expirationDuration?: InputMaybe + expirationDuration_not?: InputMaybe + expirationDuration_gt?: InputMaybe + expirationDuration_lt?: InputMaybe + expirationDuration_gte?: InputMaybe + expirationDuration_lte?: InputMaybe + expirationDuration_in?: InputMaybe> + expirationDuration_not_in?: InputMaybe> + tokenAddress?: InputMaybe + tokenAddress_not?: InputMaybe + tokenAddress_gt?: InputMaybe + tokenAddress_lt?: InputMaybe + tokenAddress_gte?: InputMaybe + tokenAddress_lte?: InputMaybe + tokenAddress_in?: InputMaybe> + tokenAddress_not_in?: InputMaybe> + tokenAddress_contains?: InputMaybe + tokenAddress_not_contains?: InputMaybe + price?: InputMaybe + price_not?: InputMaybe + price_gt?: InputMaybe + price_lt?: InputMaybe + price_gte?: InputMaybe + price_lte?: InputMaybe + price_in?: InputMaybe> + price_not_in?: InputMaybe> + lockManagers?: InputMaybe> + lockManagers_not?: InputMaybe> + lockManagers_contains?: InputMaybe> + lockManagers_contains_nocase?: InputMaybe> + lockManagers_not_contains?: InputMaybe> + lockManagers_not_contains_nocase?: InputMaybe> + version?: InputMaybe + version_not?: InputMaybe + version_gt?: InputMaybe + version_lt?: InputMaybe + version_gte?: InputMaybe + version_lte?: InputMaybe + version_in?: InputMaybe> + version_not_in?: InputMaybe> + totalKeys?: InputMaybe + totalKeys_not?: InputMaybe + totalKeys_gt?: InputMaybe + totalKeys_lt?: InputMaybe + totalKeys_gte?: InputMaybe + totalKeys_lte?: InputMaybe + totalKeys_in?: InputMaybe> + totalKeys_not_in?: InputMaybe> + maxNumberOfKeys?: InputMaybe + maxNumberOfKeys_not?: InputMaybe + maxNumberOfKeys_gt?: InputMaybe + maxNumberOfKeys_lt?: InputMaybe + maxNumberOfKeys_gte?: InputMaybe + maxNumberOfKeys_lte?: InputMaybe + maxNumberOfKeys_in?: InputMaybe> + maxNumberOfKeys_not_in?: InputMaybe> + maxKeysPerAddress?: InputMaybe + maxKeysPerAddress_not?: InputMaybe + maxKeysPerAddress_gt?: InputMaybe + maxKeysPerAddress_lt?: InputMaybe + maxKeysPerAddress_gte?: InputMaybe + maxKeysPerAddress_lte?: InputMaybe + maxKeysPerAddress_in?: InputMaybe> + maxKeysPerAddress_not_in?: InputMaybe> + keys_?: InputMaybe + createdAtBlock?: InputMaybe + createdAtBlock_not?: InputMaybe + createdAtBlock_gt?: InputMaybe + createdAtBlock_lt?: InputMaybe + createdAtBlock_gte?: InputMaybe + createdAtBlock_lte?: InputMaybe + createdAtBlock_in?: InputMaybe> + createdAtBlock_not_in?: InputMaybe> + lastKeyMintedAt?: InputMaybe + lastKeyMintedAt_not?: InputMaybe + lastKeyMintedAt_gt?: InputMaybe + lastKeyMintedAt_lt?: InputMaybe + lastKeyMintedAt_gte?: InputMaybe + lastKeyMintedAt_lte?: InputMaybe + lastKeyMintedAt_in?: InputMaybe> + lastKeyMintedAt_not_in?: InputMaybe> + deployer?: InputMaybe + deployer_not?: InputMaybe + deployer_gt?: InputMaybe + deployer_lt?: InputMaybe + deployer_gte?: InputMaybe + deployer_lte?: InputMaybe + deployer_in?: InputMaybe> + deployer_not_in?: InputMaybe> + deployer_contains?: InputMaybe + deployer_not_contains?: InputMaybe + numberOfReceipts?: InputMaybe + numberOfReceipts_not?: InputMaybe + numberOfReceipts_gt?: InputMaybe + numberOfReceipts_lt?: InputMaybe + numberOfReceipts_gte?: InputMaybe + numberOfReceipts_lte?: InputMaybe + numberOfReceipts_in?: InputMaybe> + numberOfReceipts_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> +} + +export type Lock_orderBy = + | 'id' + | 'address' + | 'name' + | 'symbol' + | 'expirationDuration' + | 'tokenAddress' + | 'price' + | 'lockManagers' + | 'version' + | 'totalKeys' + | 'maxNumberOfKeys' + | 'maxKeysPerAddress' + | 'keys' + | 'createdAtBlock' + | 'lastKeyMintedAt' + | 'deployer' + | 'numberOfReceipts' + +/** Defines the order direction, either ascending or descending */ +export type OrderDirection = 'asc' | 'desc' + +export type Query = { + lock?: Maybe + locks: Array + key?: Maybe + keys: Array + unlockDailyData?: Maybe + unlockDailyDatas: Array + lockStats: Array + unlockStats: Array + receipt?: Maybe + receipts: Array + /** Access to subgraph metadata */ + _meta?: Maybe<_Meta_> +} + +export type QuerylockArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QuerylocksArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QuerykeyArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QuerykeysArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QueryunlockDailyDataArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QueryunlockDailyDatasArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QuerylockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QueryunlockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QueryreceiptArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type QueryreceiptsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type Query_metaArgs = { + block?: InputMaybe +} + +export type Receipt = { + /** Transaction Hash */ + id: Scalars['ID'] + /** Timestamp */ + timestamp: Scalars['BigInt'] + /** Sender of the transaction */ + sender: Scalars['String'] + /** Payer in the case of an ERC20 lock renewal, the sender and payer might differ */ + payer?: Maybe + /** Address of the Lock smart contract */ + lockAddress: Scalars['String'] + /** Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 */ + tokenAddress: Scalars['String'] + /** amount */ + amountTransferred: Scalars['BigInt'] + /** Total gas paid */ + gasTotal: Scalars['BigInt'] + /** Increasing number of receipt */ + receiptNumber: Scalars['BigInt'] +} + +export type Receipt_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + timestamp?: InputMaybe + timestamp_not?: InputMaybe + timestamp_gt?: InputMaybe + timestamp_lt?: InputMaybe + timestamp_gte?: InputMaybe + timestamp_lte?: InputMaybe + timestamp_in?: InputMaybe> + timestamp_not_in?: InputMaybe> + sender?: InputMaybe + sender_not?: InputMaybe + sender_gt?: InputMaybe + sender_lt?: InputMaybe + sender_gte?: InputMaybe + sender_lte?: InputMaybe + sender_in?: InputMaybe> + sender_not_in?: InputMaybe> + sender_contains?: InputMaybe + sender_contains_nocase?: InputMaybe + sender_not_contains?: InputMaybe + sender_not_contains_nocase?: InputMaybe + sender_starts_with?: InputMaybe + sender_starts_with_nocase?: InputMaybe + sender_not_starts_with?: InputMaybe + sender_not_starts_with_nocase?: InputMaybe + sender_ends_with?: InputMaybe + sender_ends_with_nocase?: InputMaybe + sender_not_ends_with?: InputMaybe + sender_not_ends_with_nocase?: InputMaybe + payer?: InputMaybe + payer_not?: InputMaybe + payer_gt?: InputMaybe + payer_lt?: InputMaybe + payer_gte?: InputMaybe + payer_lte?: InputMaybe + payer_in?: InputMaybe> + payer_not_in?: InputMaybe> + payer_contains?: InputMaybe + payer_contains_nocase?: InputMaybe + payer_not_contains?: InputMaybe + payer_not_contains_nocase?: InputMaybe + payer_starts_with?: InputMaybe + payer_starts_with_nocase?: InputMaybe + payer_not_starts_with?: InputMaybe + payer_not_starts_with_nocase?: InputMaybe + payer_ends_with?: InputMaybe + payer_ends_with_nocase?: InputMaybe + payer_not_ends_with?: InputMaybe + payer_not_ends_with_nocase?: InputMaybe + lockAddress?: InputMaybe + lockAddress_not?: InputMaybe + lockAddress_gt?: InputMaybe + lockAddress_lt?: InputMaybe + lockAddress_gte?: InputMaybe + lockAddress_lte?: InputMaybe + lockAddress_in?: InputMaybe> + lockAddress_not_in?: InputMaybe> + lockAddress_contains?: InputMaybe + lockAddress_contains_nocase?: InputMaybe + lockAddress_not_contains?: InputMaybe + lockAddress_not_contains_nocase?: InputMaybe + lockAddress_starts_with?: InputMaybe + lockAddress_starts_with_nocase?: InputMaybe + lockAddress_not_starts_with?: InputMaybe + lockAddress_not_starts_with_nocase?: InputMaybe + lockAddress_ends_with?: InputMaybe + lockAddress_ends_with_nocase?: InputMaybe + lockAddress_not_ends_with?: InputMaybe + lockAddress_not_ends_with_nocase?: InputMaybe + tokenAddress?: InputMaybe + tokenAddress_not?: InputMaybe + tokenAddress_gt?: InputMaybe + tokenAddress_lt?: InputMaybe + tokenAddress_gte?: InputMaybe + tokenAddress_lte?: InputMaybe + tokenAddress_in?: InputMaybe> + tokenAddress_not_in?: InputMaybe> + tokenAddress_contains?: InputMaybe + tokenAddress_contains_nocase?: InputMaybe + tokenAddress_not_contains?: InputMaybe + tokenAddress_not_contains_nocase?: InputMaybe + tokenAddress_starts_with?: InputMaybe + tokenAddress_starts_with_nocase?: InputMaybe + tokenAddress_not_starts_with?: InputMaybe + tokenAddress_not_starts_with_nocase?: InputMaybe + tokenAddress_ends_with?: InputMaybe + tokenAddress_ends_with_nocase?: InputMaybe + tokenAddress_not_ends_with?: InputMaybe + tokenAddress_not_ends_with_nocase?: InputMaybe + amountTransferred?: InputMaybe + amountTransferred_not?: InputMaybe + amountTransferred_gt?: InputMaybe + amountTransferred_lt?: InputMaybe + amountTransferred_gte?: InputMaybe + amountTransferred_lte?: InputMaybe + amountTransferred_in?: InputMaybe> + amountTransferred_not_in?: InputMaybe> + gasTotal?: InputMaybe + gasTotal_not?: InputMaybe + gasTotal_gt?: InputMaybe + gasTotal_lt?: InputMaybe + gasTotal_gte?: InputMaybe + gasTotal_lte?: InputMaybe + gasTotal_in?: InputMaybe> + gasTotal_not_in?: InputMaybe> + receiptNumber?: InputMaybe + receiptNumber_not?: InputMaybe + receiptNumber_gt?: InputMaybe + receiptNumber_lt?: InputMaybe + receiptNumber_gte?: InputMaybe + receiptNumber_lte?: InputMaybe + receiptNumber_in?: InputMaybe> + receiptNumber_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> +} + +export type Receipt_orderBy = + | 'id' + | 'timestamp' + | 'sender' + | 'payer' + | 'lockAddress' + | 'tokenAddress' + | 'amountTransferred' + | 'gasTotal' + | 'receiptNumber' + +export type Subscription = { + lock?: Maybe + locks: Array + key?: Maybe + keys: Array + unlockDailyData?: Maybe + unlockDailyDatas: Array + lockStats: Array + unlockStats: Array + receipt?: Maybe + receipts: Array + /** Access to subgraph metadata */ + _meta?: Maybe<_Meta_> +} + +export type SubscriptionlockArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionlocksArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionkeyArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionkeysArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionunlockDailyDataArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionunlockDailyDatasArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionlockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionunlockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionreceiptArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type SubscriptionreceiptsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ +} + +export type Subscription_metaArgs = { + block?: InputMaybe +} + +export type UnlockDailyData = { + /** Day identifier */ + id: Scalars['ID'] + /** Number of locks deployed on that day */ + lockDeployed: Scalars['BigInt'] + /** Total number of locks deployed */ + totalLockDeployed: Scalars['BigInt'] + /** Daily number of keys sold */ + keysSold: Scalars['BigInt'] + /** Total number of keys sold */ + totalKeysSold: Scalars['BigInt'] + /** Daily number of active locks (active locks have minted at least one membership in the last 30 days */ + activeLocks?: Maybe> + /** Total value exchanged on the network */ + grossNetworkProduct: Scalars['BigInt'] +} + +export type UnlockDailyData_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + lockDeployed?: InputMaybe + lockDeployed_not?: InputMaybe + lockDeployed_gt?: InputMaybe + lockDeployed_lt?: InputMaybe + lockDeployed_gte?: InputMaybe + lockDeployed_lte?: InputMaybe + lockDeployed_in?: InputMaybe> + lockDeployed_not_in?: InputMaybe> + totalLockDeployed?: InputMaybe + totalLockDeployed_not?: InputMaybe + totalLockDeployed_gt?: InputMaybe + totalLockDeployed_lt?: InputMaybe + totalLockDeployed_gte?: InputMaybe + totalLockDeployed_lte?: InputMaybe + totalLockDeployed_in?: InputMaybe> + totalLockDeployed_not_in?: InputMaybe> + keysSold?: InputMaybe + keysSold_not?: InputMaybe + keysSold_gt?: InputMaybe + keysSold_lt?: InputMaybe + keysSold_gte?: InputMaybe + keysSold_lte?: InputMaybe + keysSold_in?: InputMaybe> + keysSold_not_in?: InputMaybe> + totalKeysSold?: InputMaybe + totalKeysSold_not?: InputMaybe + totalKeysSold_gt?: InputMaybe + totalKeysSold_lt?: InputMaybe + totalKeysSold_gte?: InputMaybe + totalKeysSold_lte?: InputMaybe + totalKeysSold_in?: InputMaybe> + totalKeysSold_not_in?: InputMaybe> + activeLocks?: InputMaybe> + activeLocks_not?: InputMaybe> + activeLocks_contains?: InputMaybe> + activeLocks_contains_nocase?: InputMaybe> + activeLocks_not_contains?: InputMaybe> + activeLocks_not_contains_nocase?: InputMaybe> + grossNetworkProduct?: InputMaybe + grossNetworkProduct_not?: InputMaybe + grossNetworkProduct_gt?: InputMaybe + grossNetworkProduct_lt?: InputMaybe + grossNetworkProduct_gte?: InputMaybe + grossNetworkProduct_lte?: InputMaybe + grossNetworkProduct_in?: InputMaybe> + grossNetworkProduct_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> +} + +export type UnlockDailyData_orderBy = + | 'id' + | 'lockDeployed' + | 'totalLockDeployed' + | 'keysSold' + | 'totalKeysSold' + | 'activeLocks' + | 'grossNetworkProduct' + +export type UnlockStats = { + /** Identifier */ + id: Scalars['ID'] + /** Total number of locks deployed */ + totalLockDeployed: Scalars['BigInt'] + /** Total number of keys sold */ + totalKeysSold: Scalars['BigInt'] + /** Total value exchanged on the network */ + grossNetworkProduct: Scalars['BigInt'] +} + +export type UnlockStats_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + totalLockDeployed?: InputMaybe + totalLockDeployed_not?: InputMaybe + totalLockDeployed_gt?: InputMaybe + totalLockDeployed_lt?: InputMaybe + totalLockDeployed_gte?: InputMaybe + totalLockDeployed_lte?: InputMaybe + totalLockDeployed_in?: InputMaybe> + totalLockDeployed_not_in?: InputMaybe> + totalKeysSold?: InputMaybe + totalKeysSold_not?: InputMaybe + totalKeysSold_gt?: InputMaybe + totalKeysSold_lt?: InputMaybe + totalKeysSold_gte?: InputMaybe + totalKeysSold_lte?: InputMaybe + totalKeysSold_in?: InputMaybe> + totalKeysSold_not_in?: InputMaybe> + grossNetworkProduct?: InputMaybe + grossNetworkProduct_not?: InputMaybe + grossNetworkProduct_gt?: InputMaybe + grossNetworkProduct_lt?: InputMaybe + grossNetworkProduct_gte?: InputMaybe + grossNetworkProduct_lte?: InputMaybe + grossNetworkProduct_in?: InputMaybe> + grossNetworkProduct_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> +} + +export type UnlockStats_orderBy = 'id' | 'totalLockDeployed' | 'totalKeysSold' | 'grossNetworkProduct' + +export type _Block_ = { + /** The hash of the block */ + hash?: Maybe + /** The block number */ + number: Scalars['Int'] + /** Integer representation of the timestamp stored in blocks for the chain */ + timestamp?: Maybe +} + +/** The type for the top-level _meta field */ +export type _Meta_ = { + /** + * Information about a specific subgraph block. The hash of the block + * will be null if the _meta field has a block constraint that asks for + * a block number. It will be filled if the _meta field has no block constraint + * and therefore asks for the latest block + * + */ + block: _Block_ + /** The deployment ID */ + deployment: Scalars['String'] + /** If `true`, the subgraph encountered indexing errors at some past block */ + hasIndexingErrors: Scalars['Boolean'] +} + +export type _SubgraphErrorPolicy_ = + /** Data will be returned even if the subgraph has indexing errors */ + | 'allow' + /** If the subgraph has indexing errors, data will be omitted. The default. */ + | 'deny' + +export type WithIndex = TObject & Record +export type ResolversObject = WithIndex + +export type ResolverTypeWrapper = Promise | T + +export type ResolverWithResolve = { + resolve: ResolverFn +} + +export type LegacyStitchingResolver = { + fragment: string + resolve: ResolverFn +} + +export type NewStitchingResolver = { + selectionSet: string | ((fieldNode: FieldNode) => SelectionSetNode) + resolve: ResolverFn +} +export type StitchingResolver = + | LegacyStitchingResolver + | NewStitchingResolver +export type Resolver = + | ResolverFn + | ResolverWithResolve + | StitchingResolver + +export type ResolverFn = ( + parent: TParent, + args: TArgs, + context: TContext, + info: GraphQLResolveInfo +) => Promise | TResult + +export type SubscriptionSubscribeFn = ( + parent: TParent, + args: TArgs, + context: TContext, + info: GraphQLResolveInfo +) => AsyncIterable | Promise> + +export type SubscriptionResolveFn = ( + parent: TParent, + args: TArgs, + context: TContext, + info: GraphQLResolveInfo +) => TResult | Promise + +export interface SubscriptionSubscriberObject { + subscribe: SubscriptionSubscribeFn<{ [key in TKey]: TResult }, TParent, TContext, TArgs> + resolve?: SubscriptionResolveFn +} + +export interface SubscriptionResolverObject { + subscribe: SubscriptionSubscribeFn + resolve: SubscriptionResolveFn +} + +export type SubscriptionObject = + | SubscriptionSubscriberObject + | SubscriptionResolverObject + +export type SubscriptionResolver = + | ((...args: any[]) => SubscriptionObject) + | SubscriptionObject + +export type TypeResolveFn = ( + parent: TParent, + context: TContext, + info: GraphQLResolveInfo +) => Maybe | Promise> + +export type IsTypeOfResolverFn = (obj: T, context: TContext, info: GraphQLResolveInfo) => boolean | Promise + +export type NextResolverFn = () => Promise + +export type DirectiveResolverFn = ( + next: NextResolverFn, + parent: TParent, + args: TArgs, + context: TContext, + info: GraphQLResolveInfo +) => TResult | Promise + +/** Mapping between all available schema types and the resolvers types */ +export type ResolversTypes = ResolversObject<{ + BigDecimal: ResolverTypeWrapper + BigInt: ResolverTypeWrapper + BlockChangedFilter: BlockChangedFilter + Block_height: Block_height + Boolean: ResolverTypeWrapper + Bytes: ResolverTypeWrapper + Float: ResolverTypeWrapper + ID: ResolverTypeWrapper + Int: ResolverTypeWrapper + Int8: ResolverTypeWrapper + Key: ResolverTypeWrapper + Key_filter: Key_filter + Key_orderBy: Key_orderBy + Lock: ResolverTypeWrapper + LockStats: ResolverTypeWrapper + LockStats_filter: LockStats_filter + LockStats_orderBy: LockStats_orderBy + Lock_filter: Lock_filter + Lock_orderBy: Lock_orderBy + OrderDirection: OrderDirection + Query: ResolverTypeWrapper<{}> + Receipt: ResolverTypeWrapper + Receipt_filter: Receipt_filter + Receipt_orderBy: Receipt_orderBy + String: ResolverTypeWrapper + Subscription: ResolverTypeWrapper<{}> + UnlockDailyData: ResolverTypeWrapper + UnlockDailyData_filter: UnlockDailyData_filter + UnlockDailyData_orderBy: UnlockDailyData_orderBy + UnlockStats: ResolverTypeWrapper + UnlockStats_filter: UnlockStats_filter + UnlockStats_orderBy: UnlockStats_orderBy + _Block_: ResolverTypeWrapper<_Block_> + _Meta_: ResolverTypeWrapper<_Meta_> + _SubgraphErrorPolicy_: _SubgraphErrorPolicy_ +}> + +/** Mapping between all available schema types and the resolvers parents */ +export type ResolversParentTypes = ResolversObject<{ + BigDecimal: Scalars['BigDecimal'] + BigInt: Scalars['BigInt'] + BlockChangedFilter: BlockChangedFilter + Block_height: Block_height + Boolean: Scalars['Boolean'] + Bytes: Scalars['Bytes'] + Float: Scalars['Float'] + ID: Scalars['ID'] + Int: Scalars['Int'] + Int8: Scalars['Int8'] + Key: Key + Key_filter: Key_filter + Lock: Lock + LockStats: LockStats + LockStats_filter: LockStats_filter + Lock_filter: Lock_filter + Query: {} + Receipt: Receipt + Receipt_filter: Receipt_filter + String: Scalars['String'] + Subscription: {} + UnlockDailyData: UnlockDailyData + UnlockDailyData_filter: UnlockDailyData_filter + UnlockStats: UnlockStats + UnlockStats_filter: UnlockStats_filter + _Block_: _Block_ + _Meta_: _Meta_ +}> + +export type entityDirectiveArgs = {} + +export type entityDirectiveResolver = DirectiveResolverFn< + Result, + Parent, + ContextType, + Args +> + +export type subgraphIdDirectiveArgs = { + id: Scalars['String'] +} + +export type subgraphIdDirectiveResolver = DirectiveResolverFn< + Result, + Parent, + ContextType, + Args +> + +export type derivedFromDirectiveArgs = { + field: Scalars['String'] +} + +export type derivedFromDirectiveResolver = DirectiveResolverFn< + Result, + Parent, + ContextType, + Args +> + +export interface BigDecimalScalarConfig extends GraphQLScalarTypeConfig { + name: 'BigDecimal' +} + +export interface BigIntScalarConfig extends GraphQLScalarTypeConfig { + name: 'BigInt' +} + +export interface BytesScalarConfig extends GraphQLScalarTypeConfig { + name: 'Bytes' +} + +export interface Int8ScalarConfig extends GraphQLScalarTypeConfig { + name: 'Int8' +} + +export type KeyResolvers = ResolversObject<{ + id?: Resolver + lock?: Resolver + tokenId?: Resolver + owner?: Resolver + manager?: Resolver, ParentType, ContextType> + expiration?: Resolver + tokenURI?: Resolver, ParentType, ContextType> + createdAtBlock?: Resolver + createdAt?: Resolver + cancelled?: Resolver, ParentType, ContextType> + transactionsHash?: Resolver>, ParentType, ContextType> + __isTypeOf?: IsTypeOfResolverFn +}> + +export type LockResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['Lock'] = ResolversParentTypes['Lock'] +> = ResolversObject<{ + id?: Resolver + address?: Resolver + name?: Resolver, ParentType, ContextType> + symbol?: Resolver, ParentType, ContextType> + expirationDuration?: Resolver, ParentType, ContextType> + tokenAddress?: Resolver + price?: Resolver + lockManagers?: Resolver, ParentType, ContextType> + version?: Resolver + totalKeys?: Resolver + maxNumberOfKeys?: Resolver, ParentType, ContextType> + maxKeysPerAddress?: Resolver, ParentType, ContextType> + keys?: Resolver>, ParentType, ContextType, RequireFields> + createdAtBlock?: Resolver, ParentType, ContextType> + lastKeyMintedAt?: Resolver, ParentType, ContextType> + deployer?: Resolver + numberOfReceipts?: Resolver + __isTypeOf?: IsTypeOfResolverFn +}> + +export type LockStatsResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['LockStats'] = ResolversParentTypes['LockStats'] +> = ResolversObject<{ + id?: Resolver + totalLocksDeployed?: Resolver + totalKeysSold?: Resolver + __isTypeOf?: IsTypeOfResolverFn +}> + +export type QueryResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['Query'] = ResolversParentTypes['Query'] +> = ResolversObject<{ + lock?: Resolver, ParentType, ContextType, RequireFields> + locks?: Resolver, ParentType, ContextType, RequireFields> + key?: Resolver, ParentType, ContextType, RequireFields> + keys?: Resolver, ParentType, ContextType, RequireFields> + unlockDailyData?: Resolver< + Maybe, + ParentType, + ContextType, + RequireFields + > + unlockDailyDatas?: Resolver< + Array, + ParentType, + ContextType, + RequireFields + > + lockStats?: Resolver< + Array, + ParentType, + ContextType, + RequireFields + > + unlockStats?: Resolver< + Array, + ParentType, + ContextType, + RequireFields + > + receipt?: Resolver, ParentType, ContextType, RequireFields> + receipts?: Resolver, ParentType, ContextType, RequireFields> + _meta?: Resolver, ParentType, ContextType, Partial> +}> + +export type ReceiptResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['Receipt'] = ResolversParentTypes['Receipt'] +> = ResolversObject<{ + id?: Resolver + timestamp?: Resolver + sender?: Resolver + payer?: Resolver, ParentType, ContextType> + lockAddress?: Resolver + tokenAddress?: Resolver + amountTransferred?: Resolver + gasTotal?: Resolver + receiptNumber?: Resolver + __isTypeOf?: IsTypeOfResolverFn +}> + +export type SubscriptionResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['Subscription'] = ResolversParentTypes['Subscription'] +> = ResolversObject<{ + lock?: SubscriptionResolver< + Maybe, + 'lock', + ParentType, + ContextType, + RequireFields + > + locks?: SubscriptionResolver< + Array, + 'locks', + ParentType, + ContextType, + RequireFields + > + key?: SubscriptionResolver, 'key', ParentType, ContextType, RequireFields> + keys?: SubscriptionResolver< + Array, + 'keys', + ParentType, + ContextType, + RequireFields + > + unlockDailyData?: SubscriptionResolver< + Maybe, + 'unlockDailyData', + ParentType, + ContextType, + RequireFields + > + unlockDailyDatas?: SubscriptionResolver< + Array, + 'unlockDailyDatas', + ParentType, + ContextType, + RequireFields + > + lockStats?: SubscriptionResolver< + Array, + 'lockStats', + ParentType, + ContextType, + RequireFields + > + unlockStats?: SubscriptionResolver< + Array, + 'unlockStats', + ParentType, + ContextType, + RequireFields + > + receipt?: SubscriptionResolver< + Maybe, + 'receipt', + ParentType, + ContextType, + RequireFields + > + receipts?: SubscriptionResolver< + Array, + 'receipts', + ParentType, + ContextType, + RequireFields + > + _meta?: SubscriptionResolver, '_meta', ParentType, ContextType, Partial> +}> + +export type UnlockDailyDataResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['UnlockDailyData'] = ResolversParentTypes['UnlockDailyData'] +> = ResolversObject<{ + id?: Resolver + lockDeployed?: Resolver + totalLockDeployed?: Resolver + keysSold?: Resolver + totalKeysSold?: Resolver + activeLocks?: Resolver>, ParentType, ContextType> + grossNetworkProduct?: Resolver + __isTypeOf?: IsTypeOfResolverFn +}> + +export type UnlockStatsResolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['UnlockStats'] = ResolversParentTypes['UnlockStats'] +> = ResolversObject<{ + id?: Resolver + totalLockDeployed?: Resolver + totalKeysSold?: Resolver + grossNetworkProduct?: Resolver + __isTypeOf?: IsTypeOfResolverFn +}> + +export type _Block_Resolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['_Block_'] = ResolversParentTypes['_Block_'] +> = ResolversObject<{ + hash?: Resolver, ParentType, ContextType> + number?: Resolver + timestamp?: Resolver, ParentType, ContextType> + __isTypeOf?: IsTypeOfResolverFn +}> + +export type _Meta_Resolvers< + ContextType = MeshContext, + ParentType extends ResolversParentTypes['_Meta_'] = ResolversParentTypes['_Meta_'] +> = ResolversObject<{ + block?: Resolver + deployment?: Resolver + hasIndexingErrors?: Resolver + __isTypeOf?: IsTypeOfResolverFn +}> + +export type Resolvers = ResolversObject<{ + BigDecimal?: GraphQLScalarType + BigInt?: GraphQLScalarType + Bytes?: GraphQLScalarType + Int8?: GraphQLScalarType + Key?: KeyResolvers + Lock?: LockResolvers + LockStats?: LockStatsResolvers + Query?: QueryResolvers + Receipt?: ReceiptResolvers + Subscription?: SubscriptionResolvers + UnlockDailyData?: UnlockDailyDataResolvers + UnlockStats?: UnlockStatsResolvers + _Block_?: _Block_Resolvers + _Meta_?: _Meta_Resolvers +}> + +export type DirectiveResolvers = ResolversObject<{ + entity?: entityDirectiveResolver + subgraphId?: subgraphIdDirectiveResolver + derivedFrom?: derivedFromDirectiveResolver +}> + +export type MeshContext = UnlockTypes.Context & BaseMeshContext + +import { fileURLToPath } from '@graphql-mesh/utils' +const baseDir = pathModule.join(pathModule.dirname(fileURLToPath(import.meta.url)), '..') + +const importFn: ImportFn = (moduleId: string) => { + const relativeModuleId = (pathModule.isAbsolute(moduleId) ? pathModule.relative(baseDir, moduleId) : moduleId) + .split('\\') + .join('/') + .replace(baseDir + '/', '') + switch (relativeModuleId) { + case '.graphclient/sources/unlock/introspectionSchema': + return Promise.resolve(importedModule$0) as T + + default: + return Promise.reject(new Error(`Cannot find module '${relativeModuleId}'.`)) + } +} + +const rootStore = new MeshStore( + '.graphclient', + new FsStoreStorageAdapter({ + cwd: baseDir, + importFn, + fileType: 'ts', + }), + { + readonly: true, + validate: false, + } +) + +export const rawServeConfig: YamlConfig.Config['serve'] = undefined as any +export async function getMeshOptions(): Promise { + const pubsub = new PubSub() + const sourcesStore = rootStore.child('sources') + const logger = new DefaultLogger('GraphClient') + const cache = new (MeshCache as any)({ + ...({} as any), + importFn, + store: rootStore.child('cache'), + pubsub, + logger, + } as any) + + const sources: MeshResolvedSource[] = [] + const transforms: MeshTransform[] = [] + const additionalEnvelopPlugins: MeshPlugin[] = [] + const unlockTransforms = [] + const additionalTypeDefs = [] as any[] + const unlockHandler = new GraphqlHandler({ + name: 'unlock', + config: { endpoint: 'https://api.thegraph.com/subgraphs/name/unlock-protocol/{context.network:goerli-v2}' }, + baseDir, + cache, + pubsub, + store: sourcesStore.child('unlock'), + logger: logger.child('unlock'), + importFn, + }) + sources[0] = { + name: 'unlock', + handler: unlockHandler, + transforms: unlockTransforms, + } + const additionalResolvers = [] as any[] + const merger = new (BareMerger as any)({ + cache, + pubsub, + logger: logger.child('bareMerger'), + store: rootStore.child('bareMerger'), + }) + + return { + sources, + transforms, + additionalTypeDefs, + additionalResolvers, + cache, + pubsub, + merger, + logger, + additionalEnvelopPlugins, + get documents() { + return [ + { + document: LockStatsQueryDocument, + get rawSDL() { + return printWithCache(LockStatsQueryDocument) + }, + location: 'LockStatsQueryDocument.graphql', + }, + { + document: UserKeysQueryDocument, + get rawSDL() { + return printWithCache(UserKeysQueryDocument) + }, + location: 'UserKeysQueryDocument.graphql', + }, + { + document: UserLocksQueryDocument, + get rawSDL() { + return printWithCache(UserLocksQueryDocument) + }, + location: 'UserLocksQueryDocument.graphql', + }, + ] + }, + fetchFn, + } +} + +export function createBuiltMeshHTTPHandler(): MeshHTTPHandler { + return createMeshHTTPHandler({ + baseDir, + getBuiltMesh: getBuiltGraphClient, + rawServeConfig: undefined, + }) +} + +let meshInstance$: Promise | undefined + +export function getBuiltGraphClient(): Promise { + if (meshInstance$ == null) { + meshInstance$ = getMeshOptions() + .then((meshOptions) => getMesh(meshOptions)) + .then((mesh) => { + const id = mesh.pubsub.subscribe('destroy', () => { + meshInstance$ = undefined + mesh.pubsub.unsubscribe(id) + }) + return mesh + }) + } + return meshInstance$ +} + +export const execute: ExecuteMeshFn = (...args) => getBuiltGraphClient().then(({ execute }) => execute(...args)) + +export const subscribe: SubscribeMeshFn = (...args) => getBuiltGraphClient().then(({ subscribe }) => subscribe(...args)) +export function getBuiltGraphSDK(globalContext?: TGlobalContext) { + const sdkRequester$ = getBuiltGraphClient().then(({ sdkRequesterFactory }) => sdkRequesterFactory(globalContext)) + return getSdk((...args) => sdkRequester$.then((sdkRequester) => sdkRequester(...args))) +} +export type LockStatsQueryQueryVariables = Exact<{ + lockId: Scalars['ID'] +}> + +export type LockStatsQueryQuery = { + locks: Array> +} + +export type UserKeysQueryQueryVariables = Exact<{ + user: Scalars['Bytes'] +}> + +export type UserKeysQueryQuery = { keys: Array & { lock: Pick }> } + +export type UserLocksQueryQueryVariables = Exact<{ + user: Scalars['Bytes'] +}> + +export type UserLocksQueryQuery = { locks: Array> } + +export const LockStatsQueryDocument = gql` + query LockStatsQuery($lockId: ID!) { + locks(where: { id: $lockId }) { + id + address + name + symbol + totalKeys + maxNumberOfKeys + expirationDuration + price + } + } +` as unknown as DocumentNode +export const UserKeysQueryDocument = gql` + query UserKeysQuery($user: Bytes!) { + keys(where: { owner: $user }) { + id + lock { + id + name + } + tokenId + owner + } + } +` as unknown as DocumentNode +export const UserLocksQueryDocument = gql` + query UserLocksQuery($user: Bytes!) { + locks(where: { lockManagers: [$user] }) { + id + address + name + } + } +` as unknown as DocumentNode + +export type Requester = (doc: DocumentNode, vars?: V, options?: C) => Promise | AsyncIterable +export function getSdk(requester: Requester) { + return { + LockStatsQuery(variables: LockStatsQueryQueryVariables, options?: C): Promise { + return requester(LockStatsQueryDocument, variables, options) as Promise + }, + UserKeysQuery(variables: UserKeysQueryQueryVariables, options?: C): Promise { + return requester(UserKeysQueryDocument, variables, options) as Promise + }, + UserLocksQuery(variables: UserLocksQueryQueryVariables, options?: C): Promise { + return requester(UserLocksQueryDocument, variables, options) as Promise + }, + } +} +export type Sdk = ReturnType diff --git a/.graphclient/schema.graphql b/.graphclient/schema.graphql new file mode 100644 index 00000000..1941b457 --- /dev/null +++ b/.graphclient/schema.graphql @@ -0,0 +1,1229 @@ +schema { + query: Query + subscription: Subscription +} + +"Marks the GraphQL type as indexable entity. Each type that should be an entity is required to be annotated with this directive." +directive @entity on OBJECT + +"Defined a Subgraph ID for an object type" +directive @subgraphId(id: String!) on OBJECT + +"creates a virtual field on the entity that may be queried but cannot be set manually through the mappings API." +directive @derivedFrom(field: String!) on FIELD_DEFINITION + +scalar BigDecimal + +scalar BigInt + +input BlockChangedFilter { + number_gte: Int! +} + +input Block_height { + hash: Bytes + number: Int + number_gte: Int +} + +scalar Bytes + +""" +8 bytes signed integer +""" +scalar Int8 + +type Key { + """ + Unique identifier for a key (combination of lock address and token id) + """ + id: ID! + """ + In the Unlock ecosystem, a “Lock” is a smart contract that creates (or “mints”) NFTs + """ + lock: Lock! + """ + TokenId for a given key + """ + tokenId: BigInt! + """ + The address of the key owner + """ + owner: Bytes! + """ + An assigned title set on an Unlock key which gives a specific wallet address authorization to transfer, share or cancel + """ + manager: Bytes + """ + Time the key expires + """ + expiration: BigInt! + """ + The tokenURI on an NFT is a unique identifier + """ + tokenURI: String + """ + Block key was created + """ + createdAtBlock: BigInt! + """ + Timestamp of the block in which the key was created + """ + createdAt: BigInt! + """ + Invoked by a Lock manager to expire the user's key and perform a refund and cancellation of the key + """ + cancelled: Boolean + """ + list of transaction hashes for purchase/extensions of a specific token + """ + transactionsHash: [String!] +} + +input Key_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + lock: String + lock_not: String + lock_gt: String + lock_lt: String + lock_gte: String + lock_lte: String + lock_in: [String!] + lock_not_in: [String!] + lock_contains: String + lock_contains_nocase: String + lock_not_contains: String + lock_not_contains_nocase: String + lock_starts_with: String + lock_starts_with_nocase: String + lock_not_starts_with: String + lock_not_starts_with_nocase: String + lock_ends_with: String + lock_ends_with_nocase: String + lock_not_ends_with: String + lock_not_ends_with_nocase: String + lock_: Lock_filter + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + owner: Bytes + owner_not: Bytes + owner_gt: Bytes + owner_lt: Bytes + owner_gte: Bytes + owner_lte: Bytes + owner_in: [Bytes!] + owner_not_in: [Bytes!] + owner_contains: Bytes + owner_not_contains: Bytes + manager: Bytes + manager_not: Bytes + manager_gt: Bytes + manager_lt: Bytes + manager_gte: Bytes + manager_lte: Bytes + manager_in: [Bytes!] + manager_not_in: [Bytes!] + manager_contains: Bytes + manager_not_contains: Bytes + expiration: BigInt + expiration_not: BigInt + expiration_gt: BigInt + expiration_lt: BigInt + expiration_gte: BigInt + expiration_lte: BigInt + expiration_in: [BigInt!] + expiration_not_in: [BigInt!] + tokenURI: String + tokenURI_not: String + tokenURI_gt: String + tokenURI_lt: String + tokenURI_gte: String + tokenURI_lte: String + tokenURI_in: [String!] + tokenURI_not_in: [String!] + tokenURI_contains: String + tokenURI_contains_nocase: String + tokenURI_not_contains: String + tokenURI_not_contains_nocase: String + tokenURI_starts_with: String + tokenURI_starts_with_nocase: String + tokenURI_not_starts_with: String + tokenURI_not_starts_with_nocase: String + tokenURI_ends_with: String + tokenURI_ends_with_nocase: String + tokenURI_not_ends_with: String + tokenURI_not_ends_with_nocase: String + createdAtBlock: BigInt + createdAtBlock_not: BigInt + createdAtBlock_gt: BigInt + createdAtBlock_lt: BigInt + createdAtBlock_gte: BigInt + createdAtBlock_lte: BigInt + createdAtBlock_in: [BigInt!] + createdAtBlock_not_in: [BigInt!] + createdAt: BigInt + createdAt_not: BigInt + createdAt_gt: BigInt + createdAt_lt: BigInt + createdAt_gte: BigInt + createdAt_lte: BigInt + createdAt_in: [BigInt!] + createdAt_not_in: [BigInt!] + cancelled: Boolean + cancelled_not: Boolean + cancelled_in: [Boolean!] + cancelled_not_in: [Boolean!] + transactionsHash: [String!] + transactionsHash_not: [String!] + transactionsHash_contains: [String!] + transactionsHash_contains_nocase: [String!] + transactionsHash_not_contains: [String!] + transactionsHash_not_contains_nocase: [String!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [Key_filter] + or: [Key_filter] +} + +enum Key_orderBy { + id + lock + lock__id + lock__address + lock__name + lock__symbol + lock__expirationDuration + lock__tokenAddress + lock__price + lock__version + lock__totalKeys + lock__maxNumberOfKeys + lock__maxKeysPerAddress + lock__createdAtBlock + lock__lastKeyMintedAt + lock__deployer + lock__numberOfReceipts + tokenId + owner + manager + expiration + tokenURI + createdAtBlock + createdAt + cancelled + transactionsHash +} + +type Lock { + """ + Unique ID for the Lock object (uses the lock address) + """ + id: ID! + """ + Address of the lock + """ + address: Bytes! + """ + A descriptive name for a collection of NFTs in this contract + """ + name: String + """ + Token symbol + """ + symbol: String + """ + Duration is set the on the lock when you deploy and the expiration which is set on each key when they are minted + """ + expirationDuration: BigInt + """ + Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 + """ + tokenAddress: Bytes! + """ + Price of the keys sold by the lock + """ + price: BigInt! + """ + An assigned role set on a Lock contract which gives the highest level of permissions to the wallet address set to that role + """ + lockManagers: [Bytes!]! + """ + Unlock Protocol version of a minting contract + """ + version: BigInt! + """ + Number of keys minted (expired or not) + """ + totalKeys: BigInt! + """ + Maximum number of keys for sale + """ + maxNumberOfKeys: BigInt + """ + The maximum number of keys allowed for a single address + """ + maxKeysPerAddress: BigInt + """ + Refer to key entity + """ + keys(skip: Int = 0, first: Int = 100, orderBy: Key_orderBy, orderDirection: OrderDirection, where: Key_filter): [Key!] + """ + Which block the lock was created + """ + createdAtBlock: BigInt + """ + The timestamp of the block in which the last key was minted + """ + lastKeyMintedAt: BigInt + """ + Address of the lock deployer + """ + deployer: Bytes! + """ + Total number of receipts of lock + """ + numberOfReceipts: BigInt! +} + +type LockStats { + """ + Transaction Hash + """ + id: ID! + """ + Total locks deployed + """ + totalLocksDeployed: BigInt! + """ + Total keys sold + """ + totalKeysSold: BigInt! +} + +input LockStats_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + totalLocksDeployed: BigInt + totalLocksDeployed_not: BigInt + totalLocksDeployed_gt: BigInt + totalLocksDeployed_lt: BigInt + totalLocksDeployed_gte: BigInt + totalLocksDeployed_lte: BigInt + totalLocksDeployed_in: [BigInt!] + totalLocksDeployed_not_in: [BigInt!] + totalKeysSold: BigInt + totalKeysSold_not: BigInt + totalKeysSold_gt: BigInt + totalKeysSold_lt: BigInt + totalKeysSold_gte: BigInt + totalKeysSold_lte: BigInt + totalKeysSold_in: [BigInt!] + totalKeysSold_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [LockStats_filter] + or: [LockStats_filter] +} + +enum LockStats_orderBy { + id + totalLocksDeployed + totalKeysSold +} + +input Lock_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + address: Bytes + address_not: Bytes + address_gt: Bytes + address_lt: Bytes + address_gte: Bytes + address_lte: Bytes + address_in: [Bytes!] + address_not_in: [Bytes!] + address_contains: Bytes + address_not_contains: Bytes + name: String + name_not: String + name_gt: String + name_lt: String + name_gte: String + name_lte: String + name_in: [String!] + name_not_in: [String!] + name_contains: String + name_contains_nocase: String + name_not_contains: String + name_not_contains_nocase: String + name_starts_with: String + name_starts_with_nocase: String + name_not_starts_with: String + name_not_starts_with_nocase: String + name_ends_with: String + name_ends_with_nocase: String + name_not_ends_with: String + name_not_ends_with_nocase: String + symbol: String + symbol_not: String + symbol_gt: String + symbol_lt: String + symbol_gte: String + symbol_lte: String + symbol_in: [String!] + symbol_not_in: [String!] + symbol_contains: String + symbol_contains_nocase: String + symbol_not_contains: String + symbol_not_contains_nocase: String + symbol_starts_with: String + symbol_starts_with_nocase: String + symbol_not_starts_with: String + symbol_not_starts_with_nocase: String + symbol_ends_with: String + symbol_ends_with_nocase: String + symbol_not_ends_with: String + symbol_not_ends_with_nocase: String + expirationDuration: BigInt + expirationDuration_not: BigInt + expirationDuration_gt: BigInt + expirationDuration_lt: BigInt + expirationDuration_gte: BigInt + expirationDuration_lte: BigInt + expirationDuration_in: [BigInt!] + expirationDuration_not_in: [BigInt!] + tokenAddress: Bytes + tokenAddress_not: Bytes + tokenAddress_gt: Bytes + tokenAddress_lt: Bytes + tokenAddress_gte: Bytes + tokenAddress_lte: Bytes + tokenAddress_in: [Bytes!] + tokenAddress_not_in: [Bytes!] + tokenAddress_contains: Bytes + tokenAddress_not_contains: Bytes + price: BigInt + price_not: BigInt + price_gt: BigInt + price_lt: BigInt + price_gte: BigInt + price_lte: BigInt + price_in: [BigInt!] + price_not_in: [BigInt!] + lockManagers: [Bytes!] + lockManagers_not: [Bytes!] + lockManagers_contains: [Bytes!] + lockManagers_contains_nocase: [Bytes!] + lockManagers_not_contains: [Bytes!] + lockManagers_not_contains_nocase: [Bytes!] + version: BigInt + version_not: BigInt + version_gt: BigInt + version_lt: BigInt + version_gte: BigInt + version_lte: BigInt + version_in: [BigInt!] + version_not_in: [BigInt!] + totalKeys: BigInt + totalKeys_not: BigInt + totalKeys_gt: BigInt + totalKeys_lt: BigInt + totalKeys_gte: BigInt + totalKeys_lte: BigInt + totalKeys_in: [BigInt!] + totalKeys_not_in: [BigInt!] + maxNumberOfKeys: BigInt + maxNumberOfKeys_not: BigInt + maxNumberOfKeys_gt: BigInt + maxNumberOfKeys_lt: BigInt + maxNumberOfKeys_gte: BigInt + maxNumberOfKeys_lte: BigInt + maxNumberOfKeys_in: [BigInt!] + maxNumberOfKeys_not_in: [BigInt!] + maxKeysPerAddress: BigInt + maxKeysPerAddress_not: BigInt + maxKeysPerAddress_gt: BigInt + maxKeysPerAddress_lt: BigInt + maxKeysPerAddress_gte: BigInt + maxKeysPerAddress_lte: BigInt + maxKeysPerAddress_in: [BigInt!] + maxKeysPerAddress_not_in: [BigInt!] + keys_: Key_filter + createdAtBlock: BigInt + createdAtBlock_not: BigInt + createdAtBlock_gt: BigInt + createdAtBlock_lt: BigInt + createdAtBlock_gte: BigInt + createdAtBlock_lte: BigInt + createdAtBlock_in: [BigInt!] + createdAtBlock_not_in: [BigInt!] + lastKeyMintedAt: BigInt + lastKeyMintedAt_not: BigInt + lastKeyMintedAt_gt: BigInt + lastKeyMintedAt_lt: BigInt + lastKeyMintedAt_gte: BigInt + lastKeyMintedAt_lte: BigInt + lastKeyMintedAt_in: [BigInt!] + lastKeyMintedAt_not_in: [BigInt!] + deployer: Bytes + deployer_not: Bytes + deployer_gt: Bytes + deployer_lt: Bytes + deployer_gte: Bytes + deployer_lte: Bytes + deployer_in: [Bytes!] + deployer_not_in: [Bytes!] + deployer_contains: Bytes + deployer_not_contains: Bytes + numberOfReceipts: BigInt + numberOfReceipts_not: BigInt + numberOfReceipts_gt: BigInt + numberOfReceipts_lt: BigInt + numberOfReceipts_gte: BigInt + numberOfReceipts_lte: BigInt + numberOfReceipts_in: [BigInt!] + numberOfReceipts_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [Lock_filter] + or: [Lock_filter] +} + +enum Lock_orderBy { + id + address + name + symbol + expirationDuration + tokenAddress + price + lockManagers + version + totalKeys + maxNumberOfKeys + maxKeysPerAddress + keys + createdAtBlock + lastKeyMintedAt + deployer + numberOfReceipts +} + +""" +Defines the order direction, either ascending or descending +""" +enum OrderDirection { + asc + desc +} + +type Query { + lock( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Lock + locks( + skip: Int = 0 + first: Int = 100 + orderBy: Lock_orderBy + orderDirection: OrderDirection + where: Lock_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Lock!]! + key( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Key + keys( + skip: Int = 0 + first: Int = 100 + orderBy: Key_orderBy + orderDirection: OrderDirection + where: Key_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Key!]! + unlockDailyData( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): UnlockDailyData + unlockDailyDatas( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockDailyData_orderBy + orderDirection: OrderDirection + where: UnlockDailyData_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockDailyData!]! + lockStats( + skip: Int = 0 + first: Int = 100 + orderBy: LockStats_orderBy + orderDirection: OrderDirection + where: LockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [LockStats!]! + unlockStats( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockStats_orderBy + orderDirection: OrderDirection + where: UnlockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockStats!]! + receipt( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Receipt + receipts( + skip: Int = 0 + first: Int = 100 + orderBy: Receipt_orderBy + orderDirection: OrderDirection + where: Receipt_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Receipt!]! + """ + Access to subgraph metadata + """ + _meta(block: Block_height): _Meta_ +} + +type Receipt { + """ + Transaction Hash + """ + id: ID! + """ + Timestamp + """ + timestamp: BigInt! + """ + Sender of the transaction + """ + sender: String! + """ + Payer in the case of an ERC20 lock renewal, the sender and payer might differ + """ + payer: String + """ + Address of the Lock smart contract + """ + lockAddress: String! + """ + Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 + """ + tokenAddress: String! + """ + amount + """ + amountTransferred: BigInt! + """ + Total gas paid + """ + gasTotal: BigInt! + """ + Increasing number of receipt + """ + receiptNumber: BigInt! +} + +input Receipt_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + timestamp: BigInt + timestamp_not: BigInt + timestamp_gt: BigInt + timestamp_lt: BigInt + timestamp_gte: BigInt + timestamp_lte: BigInt + timestamp_in: [BigInt!] + timestamp_not_in: [BigInt!] + sender: String + sender_not: String + sender_gt: String + sender_lt: String + sender_gte: String + sender_lte: String + sender_in: [String!] + sender_not_in: [String!] + sender_contains: String + sender_contains_nocase: String + sender_not_contains: String + sender_not_contains_nocase: String + sender_starts_with: String + sender_starts_with_nocase: String + sender_not_starts_with: String + sender_not_starts_with_nocase: String + sender_ends_with: String + sender_ends_with_nocase: String + sender_not_ends_with: String + sender_not_ends_with_nocase: String + payer: String + payer_not: String + payer_gt: String + payer_lt: String + payer_gte: String + payer_lte: String + payer_in: [String!] + payer_not_in: [String!] + payer_contains: String + payer_contains_nocase: String + payer_not_contains: String + payer_not_contains_nocase: String + payer_starts_with: String + payer_starts_with_nocase: String + payer_not_starts_with: String + payer_not_starts_with_nocase: String + payer_ends_with: String + payer_ends_with_nocase: String + payer_not_ends_with: String + payer_not_ends_with_nocase: String + lockAddress: String + lockAddress_not: String + lockAddress_gt: String + lockAddress_lt: String + lockAddress_gte: String + lockAddress_lte: String + lockAddress_in: [String!] + lockAddress_not_in: [String!] + lockAddress_contains: String + lockAddress_contains_nocase: String + lockAddress_not_contains: String + lockAddress_not_contains_nocase: String + lockAddress_starts_with: String + lockAddress_starts_with_nocase: String + lockAddress_not_starts_with: String + lockAddress_not_starts_with_nocase: String + lockAddress_ends_with: String + lockAddress_ends_with_nocase: String + lockAddress_not_ends_with: String + lockAddress_not_ends_with_nocase: String + tokenAddress: String + tokenAddress_not: String + tokenAddress_gt: String + tokenAddress_lt: String + tokenAddress_gte: String + tokenAddress_lte: String + tokenAddress_in: [String!] + tokenAddress_not_in: [String!] + tokenAddress_contains: String + tokenAddress_contains_nocase: String + tokenAddress_not_contains: String + tokenAddress_not_contains_nocase: String + tokenAddress_starts_with: String + tokenAddress_starts_with_nocase: String + tokenAddress_not_starts_with: String + tokenAddress_not_starts_with_nocase: String + tokenAddress_ends_with: String + tokenAddress_ends_with_nocase: String + tokenAddress_not_ends_with: String + tokenAddress_not_ends_with_nocase: String + amountTransferred: BigInt + amountTransferred_not: BigInt + amountTransferred_gt: BigInt + amountTransferred_lt: BigInt + amountTransferred_gte: BigInt + amountTransferred_lte: BigInt + amountTransferred_in: [BigInt!] + amountTransferred_not_in: [BigInt!] + gasTotal: BigInt + gasTotal_not: BigInt + gasTotal_gt: BigInt + gasTotal_lt: BigInt + gasTotal_gte: BigInt + gasTotal_lte: BigInt + gasTotal_in: [BigInt!] + gasTotal_not_in: [BigInt!] + receiptNumber: BigInt + receiptNumber_not: BigInt + receiptNumber_gt: BigInt + receiptNumber_lt: BigInt + receiptNumber_gte: BigInt + receiptNumber_lte: BigInt + receiptNumber_in: [BigInt!] + receiptNumber_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [Receipt_filter] + or: [Receipt_filter] +} + +enum Receipt_orderBy { + id + timestamp + sender + payer + lockAddress + tokenAddress + amountTransferred + gasTotal + receiptNumber +} + +type Subscription { + lock( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Lock + locks( + skip: Int = 0 + first: Int = 100 + orderBy: Lock_orderBy + orderDirection: OrderDirection + where: Lock_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Lock!]! + key( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Key + keys( + skip: Int = 0 + first: Int = 100 + orderBy: Key_orderBy + orderDirection: OrderDirection + where: Key_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Key!]! + unlockDailyData( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): UnlockDailyData + unlockDailyDatas( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockDailyData_orderBy + orderDirection: OrderDirection + where: UnlockDailyData_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockDailyData!]! + lockStats( + skip: Int = 0 + first: Int = 100 + orderBy: LockStats_orderBy + orderDirection: OrderDirection + where: LockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [LockStats!]! + unlockStats( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockStats_orderBy + orderDirection: OrderDirection + where: UnlockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockStats!]! + receipt( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Receipt + receipts( + skip: Int = 0 + first: Int = 100 + orderBy: Receipt_orderBy + orderDirection: OrderDirection + where: Receipt_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Receipt!]! + """ + Access to subgraph metadata + """ + _meta(block: Block_height): _Meta_ +} + +type UnlockDailyData { + """ + Day identifier + """ + id: ID! + """ + Number of locks deployed on that day + """ + lockDeployed: BigInt! + """ + Total number of locks deployed + """ + totalLockDeployed: BigInt! + """ + Daily number of keys sold + """ + keysSold: BigInt! + """ + Total number of keys sold + """ + totalKeysSold: BigInt! + """ + Daily number of active locks (active locks have minted at least one membership in the last 30 days + """ + activeLocks: [Bytes!] + """ + Total value exchanged on the network + """ + grossNetworkProduct: BigInt! +} + +input UnlockDailyData_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + lockDeployed: BigInt + lockDeployed_not: BigInt + lockDeployed_gt: BigInt + lockDeployed_lt: BigInt + lockDeployed_gte: BigInt + lockDeployed_lte: BigInt + lockDeployed_in: [BigInt!] + lockDeployed_not_in: [BigInt!] + totalLockDeployed: BigInt + totalLockDeployed_not: BigInt + totalLockDeployed_gt: BigInt + totalLockDeployed_lt: BigInt + totalLockDeployed_gte: BigInt + totalLockDeployed_lte: BigInt + totalLockDeployed_in: [BigInt!] + totalLockDeployed_not_in: [BigInt!] + keysSold: BigInt + keysSold_not: BigInt + keysSold_gt: BigInt + keysSold_lt: BigInt + keysSold_gte: BigInt + keysSold_lte: BigInt + keysSold_in: [BigInt!] + keysSold_not_in: [BigInt!] + totalKeysSold: BigInt + totalKeysSold_not: BigInt + totalKeysSold_gt: BigInt + totalKeysSold_lt: BigInt + totalKeysSold_gte: BigInt + totalKeysSold_lte: BigInt + totalKeysSold_in: [BigInt!] + totalKeysSold_not_in: [BigInt!] + activeLocks: [Bytes!] + activeLocks_not: [Bytes!] + activeLocks_contains: [Bytes!] + activeLocks_contains_nocase: [Bytes!] + activeLocks_not_contains: [Bytes!] + activeLocks_not_contains_nocase: [Bytes!] + grossNetworkProduct: BigInt + grossNetworkProduct_not: BigInt + grossNetworkProduct_gt: BigInt + grossNetworkProduct_lt: BigInt + grossNetworkProduct_gte: BigInt + grossNetworkProduct_lte: BigInt + grossNetworkProduct_in: [BigInt!] + grossNetworkProduct_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [UnlockDailyData_filter] + or: [UnlockDailyData_filter] +} + +enum UnlockDailyData_orderBy { + id + lockDeployed + totalLockDeployed + keysSold + totalKeysSold + activeLocks + grossNetworkProduct +} + +type UnlockStats { + """ + Identifier + """ + id: ID! + """ + Total number of locks deployed + """ + totalLockDeployed: BigInt! + """ + Total number of keys sold + """ + totalKeysSold: BigInt! + """ + Total value exchanged on the network + """ + grossNetworkProduct: BigInt! +} + +input UnlockStats_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + totalLockDeployed: BigInt + totalLockDeployed_not: BigInt + totalLockDeployed_gt: BigInt + totalLockDeployed_lt: BigInt + totalLockDeployed_gte: BigInt + totalLockDeployed_lte: BigInt + totalLockDeployed_in: [BigInt!] + totalLockDeployed_not_in: [BigInt!] + totalKeysSold: BigInt + totalKeysSold_not: BigInt + totalKeysSold_gt: BigInt + totalKeysSold_lt: BigInt + totalKeysSold_gte: BigInt + totalKeysSold_lte: BigInt + totalKeysSold_in: [BigInt!] + totalKeysSold_not_in: [BigInt!] + grossNetworkProduct: BigInt + grossNetworkProduct_not: BigInt + grossNetworkProduct_gt: BigInt + grossNetworkProduct_lt: BigInt + grossNetworkProduct_gte: BigInt + grossNetworkProduct_lte: BigInt + grossNetworkProduct_in: [BigInt!] + grossNetworkProduct_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [UnlockStats_filter] + or: [UnlockStats_filter] +} + +enum UnlockStats_orderBy { + id + totalLockDeployed + totalKeysSold + grossNetworkProduct +} + +type _Block_ { + """ + The hash of the block + """ + hash: Bytes + """ + The block number + """ + number: Int! + """ + Integer representation of the timestamp stored in blocks for the chain + """ + timestamp: Int +} + +""" +The type for the top-level _meta field +""" +type _Meta_ { + """ + Information about a specific subgraph block. The hash of the block + will be null if the _meta field has a block constraint that asks for + a block number. It will be filled if the _meta field has no block constraint + and therefore asks for the latest block + """ + block: _Block_! + """ + The deployment ID + """ + deployment: String! + """ + If `true`, the subgraph encountered indexing errors at some past block + """ + hasIndexingErrors: Boolean! +} + +enum _SubgraphErrorPolicy_ { + """ + Data will be returned even if the subgraph has indexing errors + """ + allow + """ + If the subgraph has indexing errors, data will be omitted. The default. + """ + deny +} diff --git a/.graphclient/sources/unlock/introspectionSchema.ts b/.graphclient/sources/unlock/introspectionSchema.ts new file mode 100644 index 00000000..9b260652 --- /dev/null +++ b/.graphclient/sources/unlock/introspectionSchema.ts @@ -0,0 +1,13615 @@ +// @ts-nocheck +import { buildASTSchema } from 'graphql' + +const schemaAST = { + kind: 'Document', + definitions: [ + { + kind: 'SchemaDefinition', + operationTypes: [ + { + kind: 'OperationTypeDefinition', + operation: 'query', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Query', + }, + }, + }, + { + kind: 'OperationTypeDefinition', + operation: 'subscription', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Subscription', + }, + }, + }, + ], + directives: [], + }, + { + kind: 'DirectiveDefinition', + description: { + kind: 'StringValue', + value: 'Marks the GraphQL type as indexable entity. Each type that should be an entity is required to be annotated with this directive.', + }, + name: { + kind: 'Name', + value: 'entity', + }, + arguments: [], + repeatable: false, + locations: [ + { + kind: 'Name', + value: 'OBJECT', + }, + ], + }, + { + kind: 'DirectiveDefinition', + description: { + kind: 'StringValue', + value: 'Defined a Subgraph ID for an object type', + }, + name: { + kind: 'Name', + value: 'subgraphId', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + directives: [], + }, + ], + repeatable: false, + locations: [ + { + kind: 'Name', + value: 'OBJECT', + }, + ], + }, + { + kind: 'DirectiveDefinition', + description: { + kind: 'StringValue', + value: 'creates a virtual field on the entity that may be queried but cannot be set manually through the mappings API.', + }, + name: { + kind: 'Name', + value: 'derivedFrom', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'field', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + directives: [], + }, + ], + repeatable: false, + locations: [ + { + kind: 'Name', + value: 'FIELD_DEFINITION', + }, + ], + }, + { + kind: 'ScalarTypeDefinition', + name: { + kind: 'Name', + value: 'BigDecimal', + }, + directives: [], + }, + { + kind: 'ScalarTypeDefinition', + name: { + kind: 'Name', + value: 'BigInt', + }, + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'number_gte', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Block_height', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'hash', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'number', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'number_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'ScalarTypeDefinition', + name: { + kind: 'Name', + value: 'Bytes', + }, + directives: [], + }, + { + kind: 'ScalarTypeDefinition', + description: { + kind: 'StringValue', + value: '8 bytes signed integer\n', + block: true, + }, + name: { + kind: 'Name', + value: 'Int8', + }, + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Key', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Unique identifier for a key (combination of lock address and token id)', + block: true, + }, + name: { + kind: 'Name', + value: 'id', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'In the Unlock ecosystem, a “Lock” is a smart contract that creates (or “mints”) NFTs', + block: true, + }, + name: { + kind: 'Name', + value: 'lock', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'TokenId for a given key', + block: true, + }, + name: { + kind: 'Name', + value: 'tokenId', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The address of the key owner', + block: true, + }, + name: { + kind: 'Name', + value: 'owner', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'An assigned title set on an Unlock key which gives a specific wallet address authorization to transfer, share or cancel', + block: true, + }, + name: { + kind: 'Name', + value: 'manager', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Time the key expires', + block: true, + }, + name: { + kind: 'Name', + value: 'expiration', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The tokenURI on an NFT is a unique identifier', + block: true, + }, + name: { + kind: 'Name', + value: 'tokenURI', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Block key was created', + block: true, + }, + name: { + kind: 'Name', + value: 'createdAtBlock', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Timestamp of the block in which the key was created', + block: true, + }, + name: { + kind: 'Name', + value: 'createdAt', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: "Invoked by a Lock manager to expire the user's key and perform a refund and cancellation of the key", + block: true, + }, + name: { + kind: 'Name', + value: 'cancelled', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Boolean', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'list of transaction hashes for purchase/extensions of a specific token', + block: true, + }, + name: { + kind: 'Name', + value: 'transactionsHash', + }, + arguments: [], + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Key_filter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lock_', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenId_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'owner_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'manager_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expiration_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAt_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'cancelled', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Boolean', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'cancelled_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Boolean', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'cancelled_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Boolean', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'cancelled_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Boolean', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash_not', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash_contains', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash_contains_nocase', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash_not_contains', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash_not_contains_nocase', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Filter for the block changed event.', + block: true, + }, + name: { + kind: 'Name', + value: '_change_block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'and', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_filter', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'or', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_filter', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: 'Key_orderBy', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__address', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__name', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__symbol', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__expirationDuration', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__tokenAddress', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__price', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__version', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__totalKeys', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__maxNumberOfKeys', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__maxKeysPerAddress', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__createdAtBlock', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__lastKeyMintedAt', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__deployer', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lock__numberOfReceipts', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'tokenId', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'owner', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'manager', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'expiration', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'tokenURI', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'createdAt', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'cancelled', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'transactionsHash', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Lock', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Unique ID for the Lock object (uses the lock address)', + block: true, + }, + name: { + kind: 'Name', + value: 'id', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Address of the lock', + block: true, + }, + name: { + kind: 'Name', + value: 'address', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'A descriptive name for a collection of NFTs in this contract', + block: true, + }, + name: { + kind: 'Name', + value: 'name', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Token symbol', + block: true, + }, + name: { + kind: 'Name', + value: 'symbol', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Duration is set the on the lock when you deploy and the expiration which is set on each key when they are minted', + block: true, + }, + name: { + kind: 'Name', + value: 'expirationDuration', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: "Address of the 'currency' ERC20 contract if the keys are priced using an ERC20", + block: true, + }, + name: { + kind: 'Name', + value: 'tokenAddress', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Price of the keys sold by the lock', + block: true, + }, + name: { + kind: 'Name', + value: 'price', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'An assigned role set on a Lock contract which gives the highest level of permissions to the wallet address set to that role', + block: true, + }, + name: { + kind: 'Name', + value: 'lockManagers', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Unlock Protocol version of a minting contract', + block: true, + }, + name: { + kind: 'Name', + value: 'version', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Number of keys minted (expired or not)', + block: true, + }, + name: { + kind: 'Name', + value: 'totalKeys', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Maximum number of keys for sale', + block: true, + }, + name: { + kind: 'Name', + value: 'maxNumberOfKeys', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The maximum number of keys allowed for a single address', + block: true, + }, + name: { + kind: 'Name', + value: 'maxKeysPerAddress', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Refer to key entity', + block: true, + }, + name: { + kind: 'Name', + value: 'keys', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_filter', + }, + }, + directives: [], + }, + ], + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Which block the lock was created', + block: true, + }, + name: { + kind: 'Name', + value: 'createdAtBlock', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The timestamp of the block in which the last key was minted', + block: true, + }, + name: { + kind: 'Name', + value: 'lastKeyMintedAt', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Address of the lock deployer', + block: true, + }, + name: { + kind: 'Name', + value: 'deployer', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total number of receipts of lock', + block: true, + }, + name: { + kind: 'Name', + value: 'numberOfReceipts', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'LockStats', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Transaction Hash', + block: true, + }, + name: { + kind: 'Name', + value: 'id', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total locks deployed', + block: true, + }, + name: { + kind: 'Name', + value: 'totalLocksDeployed', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total keys sold', + block: true, + }, + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'LockStats_filter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Filter for the block changed event.', + block: true, + }, + name: { + kind: 'Name', + value: '_change_block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'and', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats_filter', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'or', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats_filter', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: 'LockStats_orderBy', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalLocksDeployed', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Lock_filter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'address_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'name_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'symbol_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'price_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers_not', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers_contains', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers_contains_nocase', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers_not_contains', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers_not_contains_nocase', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'version_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keys_', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'deployer_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Filter for the block changed event.', + block: true, + }, + name: { + kind: 'Name', + value: '_change_block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'and', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_filter', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'or', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_filter', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: 'Lock_orderBy', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'address', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'name', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'symbol', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'expirationDuration', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'price', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lockManagers', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'version', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalKeys', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'maxNumberOfKeys', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'maxKeysPerAddress', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'keys', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'createdAtBlock', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lastKeyMintedAt', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'deployer', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'numberOfReceipts', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + description: { + kind: 'StringValue', + value: 'Defines the order direction, either ascending or descending', + block: true, + }, + name: { + kind: 'Name', + value: 'OrderDirection', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'asc', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'desc', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Query', + }, + fields: [ + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'lock', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'locks', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'key', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'keys', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'unlockDailyData', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'unlockDailyDatas', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'lockStats', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'unlockStats', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'receipt', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'receipts', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Access to subgraph metadata', + block: true, + }, + name: { + kind: 'Name', + value: '_meta', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_Meta_', + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Receipt', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Transaction Hash', + block: true, + }, + name: { + kind: 'Name', + value: 'id', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Timestamp', + block: true, + }, + name: { + kind: 'Name', + value: 'timestamp', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Sender of the transaction', + block: true, + }, + name: { + kind: 'Name', + value: 'sender', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Payer in the case of an ERC20 lock renewal, the sender and payer might differ', + block: true, + }, + name: { + kind: 'Name', + value: 'payer', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Address of the Lock smart contract', + block: true, + }, + name: { + kind: 'Name', + value: 'lockAddress', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: "Address of the 'currency' ERC20 contract if the keys are priced using an ERC20", + block: true, + }, + name: { + kind: 'Name', + value: 'tokenAddress', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'amount', + block: true, + }, + name: { + kind: 'Name', + value: 'amountTransferred', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total gas paid', + block: true, + }, + name: { + kind: 'Name', + value: 'gasTotal', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Increasing number of receipt', + block: true, + }, + name: { + kind: 'Name', + value: 'receiptNumber', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Receipt_filter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'timestamp_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'sender_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'payer_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_contains', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_contains_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_starts_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_starts_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_ends_with', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress_not_ends_with_nocase', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Filter for the block changed event.', + block: true, + }, + name: { + kind: 'Name', + value: '_change_block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'and', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt_filter', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'or', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt_filter', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: 'Receipt_orderBy', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'timestamp', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'sender', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'payer', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lockAddress', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'tokenAddress', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'amountTransferred', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'gasTotal', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'receiptNumber', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'Subscription', + }, + fields: [ + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'lock', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'locks', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Lock', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'key', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'keys', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Key', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'unlockDailyData', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'unlockDailyDatas', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'lockStats', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'LockStats', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'unlockStats', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'receipt', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + name: { + kind: 'Name', + value: 'receipts', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'skip', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '0', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'first', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + defaultValue: { + kind: 'IntValue', + value: '100', + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderBy', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt_orderBy', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'orderDirection', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'OrderDirection', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'where', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt_filter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: + 'The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted.', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Set to `allow` to receive data even if the subgraph has skipped over errors while syncing.', + block: true, + }, + name: { + kind: 'Name', + value: 'subgraphError', + }, + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + }, + }, + defaultValue: { + kind: 'EnumValue', + value: 'deny', + }, + directives: [], + }, + ], + type: { + kind: 'NonNullType', + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Receipt', + }, + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Access to subgraph metadata', + block: true, + }, + name: { + kind: 'Name', + value: '_meta', + }, + arguments: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Block_height', + }, + }, + directives: [], + }, + ], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_Meta_', + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'UnlockDailyData', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Day identifier', + block: true, + }, + name: { + kind: 'Name', + value: 'id', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Number of locks deployed on that day', + block: true, + }, + name: { + kind: 'Name', + value: 'lockDeployed', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total number of locks deployed', + block: true, + }, + name: { + kind: 'Name', + value: 'totalLockDeployed', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Daily number of keys sold', + block: true, + }, + name: { + kind: 'Name', + value: 'keysSold', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total number of keys sold', + block: true, + }, + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Daily number of active locks (active locks have minted at least one membership in the last 30 days', + block: true, + }, + name: { + kind: 'Name', + value: 'activeLocks', + }, + arguments: [], + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total value exchanged on the network', + block: true, + }, + name: { + kind: 'Name', + value: 'grossNetworkProduct', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'UnlockDailyData_filter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'keysSold_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks_not', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks_contains', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks_contains_nocase', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks_not_contains', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks_not_contains_nocase', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Filter for the block changed event.', + block: true, + }, + name: { + kind: 'Name', + value: '_change_block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'and', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData_filter', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'or', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockDailyData_filter', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: 'UnlockDailyData_orderBy', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'lockDeployed', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'keysSold', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'activeLocks', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: 'UnlockStats', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Identifier', + block: true, + }, + name: { + kind: 'Name', + value: 'id', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total number of locks deployed', + block: true, + }, + name: { + kind: 'Name', + value: 'totalLockDeployed', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total number of keys sold', + block: true, + }, + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Total value exchanged on the network', + block: true, + }, + name: { + kind: 'Name', + value: 'grossNetworkProduct', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'InputObjectTypeDefinition', + name: { + kind: 'Name', + value: 'UnlockStats_filter', + }, + fields: [ + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'id_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'ID', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_not', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_gt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_lt', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_gte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_lte', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct_not_in', + }, + type: { + kind: 'ListType', + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BigInt', + }, + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + description: { + kind: 'StringValue', + value: 'Filter for the block changed event.', + block: true, + }, + name: { + kind: 'Name', + value: '_change_block', + }, + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'BlockChangedFilter', + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'and', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats_filter', + }, + }, + }, + directives: [], + }, + { + kind: 'InputValueDefinition', + name: { + kind: 'Name', + value: 'or', + }, + type: { + kind: 'ListType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'UnlockStats_filter', + }, + }, + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: 'UnlockStats_orderBy', + }, + values: [ + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'id', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalLockDeployed', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'totalKeysSold', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + name: { + kind: 'Name', + value: 'grossNetworkProduct', + }, + directives: [], + }, + ], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + name: { + kind: 'Name', + value: '_Block_', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The hash of the block', + block: true, + }, + name: { + kind: 'Name', + value: 'hash', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Bytes', + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The block number', + block: true, + }, + name: { + kind: 'Name', + value: 'number', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'Integer representation of the timestamp stored in blocks for the chain', + block: true, + }, + name: { + kind: 'Name', + value: 'timestamp', + }, + arguments: [], + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Int', + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'ObjectTypeDefinition', + description: { + kind: 'StringValue', + value: 'The type for the top-level _meta field', + block: true, + }, + name: { + kind: 'Name', + value: '_Meta_', + }, + fields: [ + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: + 'Information about a specific subgraph block. The hash of the block\nwill be null if the _meta field has a block constraint that asks for\na block number. It will be filled if the _meta field has no block constraint\nand therefore asks for the latest block\n', + block: true, + }, + name: { + kind: 'Name', + value: 'block', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: '_Block_', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'The deployment ID', + block: true, + }, + name: { + kind: 'Name', + value: 'deployment', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'String', + }, + }, + }, + directives: [], + }, + { + kind: 'FieldDefinition', + description: { + kind: 'StringValue', + value: 'If `true`, the subgraph encountered indexing errors at some past block', + block: true, + }, + name: { + kind: 'Name', + value: 'hasIndexingErrors', + }, + arguments: [], + type: { + kind: 'NonNullType', + type: { + kind: 'NamedType', + name: { + kind: 'Name', + value: 'Boolean', + }, + }, + }, + directives: [], + }, + ], + interfaces: [], + directives: [], + }, + { + kind: 'EnumTypeDefinition', + name: { + kind: 'Name', + value: '_SubgraphErrorPolicy_', + }, + values: [ + { + kind: 'EnumValueDefinition', + description: { + kind: 'StringValue', + value: 'Data will be returned even if the subgraph has indexing errors', + block: true, + }, + name: { + kind: 'Name', + value: 'allow', + }, + directives: [], + }, + { + kind: 'EnumValueDefinition', + description: { + kind: 'StringValue', + value: 'If the subgraph has indexing errors, data will be omitted. The default.', + block: true, + }, + name: { + kind: 'Name', + value: 'deny', + }, + directives: [], + }, + ], + directives: [], + }, + ], +} + +export default buildASTSchema(schemaAST, { + assumeValid: true, + assumeValidSDL: true, +}) diff --git a/.graphclient/sources/unlock/schema.graphql b/.graphclient/sources/unlock/schema.graphql new file mode 100644 index 00000000..1941b457 --- /dev/null +++ b/.graphclient/sources/unlock/schema.graphql @@ -0,0 +1,1229 @@ +schema { + query: Query + subscription: Subscription +} + +"Marks the GraphQL type as indexable entity. Each type that should be an entity is required to be annotated with this directive." +directive @entity on OBJECT + +"Defined a Subgraph ID for an object type" +directive @subgraphId(id: String!) on OBJECT + +"creates a virtual field on the entity that may be queried but cannot be set manually through the mappings API." +directive @derivedFrom(field: String!) on FIELD_DEFINITION + +scalar BigDecimal + +scalar BigInt + +input BlockChangedFilter { + number_gte: Int! +} + +input Block_height { + hash: Bytes + number: Int + number_gte: Int +} + +scalar Bytes + +""" +8 bytes signed integer +""" +scalar Int8 + +type Key { + """ + Unique identifier for a key (combination of lock address and token id) + """ + id: ID! + """ + In the Unlock ecosystem, a “Lock” is a smart contract that creates (or “mints”) NFTs + """ + lock: Lock! + """ + TokenId for a given key + """ + tokenId: BigInt! + """ + The address of the key owner + """ + owner: Bytes! + """ + An assigned title set on an Unlock key which gives a specific wallet address authorization to transfer, share or cancel + """ + manager: Bytes + """ + Time the key expires + """ + expiration: BigInt! + """ + The tokenURI on an NFT is a unique identifier + """ + tokenURI: String + """ + Block key was created + """ + createdAtBlock: BigInt! + """ + Timestamp of the block in which the key was created + """ + createdAt: BigInt! + """ + Invoked by a Lock manager to expire the user's key and perform a refund and cancellation of the key + """ + cancelled: Boolean + """ + list of transaction hashes for purchase/extensions of a specific token + """ + transactionsHash: [String!] +} + +input Key_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + lock: String + lock_not: String + lock_gt: String + lock_lt: String + lock_gte: String + lock_lte: String + lock_in: [String!] + lock_not_in: [String!] + lock_contains: String + lock_contains_nocase: String + lock_not_contains: String + lock_not_contains_nocase: String + lock_starts_with: String + lock_starts_with_nocase: String + lock_not_starts_with: String + lock_not_starts_with_nocase: String + lock_ends_with: String + lock_ends_with_nocase: String + lock_not_ends_with: String + lock_not_ends_with_nocase: String + lock_: Lock_filter + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + owner: Bytes + owner_not: Bytes + owner_gt: Bytes + owner_lt: Bytes + owner_gte: Bytes + owner_lte: Bytes + owner_in: [Bytes!] + owner_not_in: [Bytes!] + owner_contains: Bytes + owner_not_contains: Bytes + manager: Bytes + manager_not: Bytes + manager_gt: Bytes + manager_lt: Bytes + manager_gte: Bytes + manager_lte: Bytes + manager_in: [Bytes!] + manager_not_in: [Bytes!] + manager_contains: Bytes + manager_not_contains: Bytes + expiration: BigInt + expiration_not: BigInt + expiration_gt: BigInt + expiration_lt: BigInt + expiration_gte: BigInt + expiration_lte: BigInt + expiration_in: [BigInt!] + expiration_not_in: [BigInt!] + tokenURI: String + tokenURI_not: String + tokenURI_gt: String + tokenURI_lt: String + tokenURI_gte: String + tokenURI_lte: String + tokenURI_in: [String!] + tokenURI_not_in: [String!] + tokenURI_contains: String + tokenURI_contains_nocase: String + tokenURI_not_contains: String + tokenURI_not_contains_nocase: String + tokenURI_starts_with: String + tokenURI_starts_with_nocase: String + tokenURI_not_starts_with: String + tokenURI_not_starts_with_nocase: String + tokenURI_ends_with: String + tokenURI_ends_with_nocase: String + tokenURI_not_ends_with: String + tokenURI_not_ends_with_nocase: String + createdAtBlock: BigInt + createdAtBlock_not: BigInt + createdAtBlock_gt: BigInt + createdAtBlock_lt: BigInt + createdAtBlock_gte: BigInt + createdAtBlock_lte: BigInt + createdAtBlock_in: [BigInt!] + createdAtBlock_not_in: [BigInt!] + createdAt: BigInt + createdAt_not: BigInt + createdAt_gt: BigInt + createdAt_lt: BigInt + createdAt_gte: BigInt + createdAt_lte: BigInt + createdAt_in: [BigInt!] + createdAt_not_in: [BigInt!] + cancelled: Boolean + cancelled_not: Boolean + cancelled_in: [Boolean!] + cancelled_not_in: [Boolean!] + transactionsHash: [String!] + transactionsHash_not: [String!] + transactionsHash_contains: [String!] + transactionsHash_contains_nocase: [String!] + transactionsHash_not_contains: [String!] + transactionsHash_not_contains_nocase: [String!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [Key_filter] + or: [Key_filter] +} + +enum Key_orderBy { + id + lock + lock__id + lock__address + lock__name + lock__symbol + lock__expirationDuration + lock__tokenAddress + lock__price + lock__version + lock__totalKeys + lock__maxNumberOfKeys + lock__maxKeysPerAddress + lock__createdAtBlock + lock__lastKeyMintedAt + lock__deployer + lock__numberOfReceipts + tokenId + owner + manager + expiration + tokenURI + createdAtBlock + createdAt + cancelled + transactionsHash +} + +type Lock { + """ + Unique ID for the Lock object (uses the lock address) + """ + id: ID! + """ + Address of the lock + """ + address: Bytes! + """ + A descriptive name for a collection of NFTs in this contract + """ + name: String + """ + Token symbol + """ + symbol: String + """ + Duration is set the on the lock when you deploy and the expiration which is set on each key when they are minted + """ + expirationDuration: BigInt + """ + Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 + """ + tokenAddress: Bytes! + """ + Price of the keys sold by the lock + """ + price: BigInt! + """ + An assigned role set on a Lock contract which gives the highest level of permissions to the wallet address set to that role + """ + lockManagers: [Bytes!]! + """ + Unlock Protocol version of a minting contract + """ + version: BigInt! + """ + Number of keys minted (expired or not) + """ + totalKeys: BigInt! + """ + Maximum number of keys for sale + """ + maxNumberOfKeys: BigInt + """ + The maximum number of keys allowed for a single address + """ + maxKeysPerAddress: BigInt + """ + Refer to key entity + """ + keys(skip: Int = 0, first: Int = 100, orderBy: Key_orderBy, orderDirection: OrderDirection, where: Key_filter): [Key!] + """ + Which block the lock was created + """ + createdAtBlock: BigInt + """ + The timestamp of the block in which the last key was minted + """ + lastKeyMintedAt: BigInt + """ + Address of the lock deployer + """ + deployer: Bytes! + """ + Total number of receipts of lock + """ + numberOfReceipts: BigInt! +} + +type LockStats { + """ + Transaction Hash + """ + id: ID! + """ + Total locks deployed + """ + totalLocksDeployed: BigInt! + """ + Total keys sold + """ + totalKeysSold: BigInt! +} + +input LockStats_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + totalLocksDeployed: BigInt + totalLocksDeployed_not: BigInt + totalLocksDeployed_gt: BigInt + totalLocksDeployed_lt: BigInt + totalLocksDeployed_gte: BigInt + totalLocksDeployed_lte: BigInt + totalLocksDeployed_in: [BigInt!] + totalLocksDeployed_not_in: [BigInt!] + totalKeysSold: BigInt + totalKeysSold_not: BigInt + totalKeysSold_gt: BigInt + totalKeysSold_lt: BigInt + totalKeysSold_gte: BigInt + totalKeysSold_lte: BigInt + totalKeysSold_in: [BigInt!] + totalKeysSold_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [LockStats_filter] + or: [LockStats_filter] +} + +enum LockStats_orderBy { + id + totalLocksDeployed + totalKeysSold +} + +input Lock_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + address: Bytes + address_not: Bytes + address_gt: Bytes + address_lt: Bytes + address_gte: Bytes + address_lte: Bytes + address_in: [Bytes!] + address_not_in: [Bytes!] + address_contains: Bytes + address_not_contains: Bytes + name: String + name_not: String + name_gt: String + name_lt: String + name_gte: String + name_lte: String + name_in: [String!] + name_not_in: [String!] + name_contains: String + name_contains_nocase: String + name_not_contains: String + name_not_contains_nocase: String + name_starts_with: String + name_starts_with_nocase: String + name_not_starts_with: String + name_not_starts_with_nocase: String + name_ends_with: String + name_ends_with_nocase: String + name_not_ends_with: String + name_not_ends_with_nocase: String + symbol: String + symbol_not: String + symbol_gt: String + symbol_lt: String + symbol_gte: String + symbol_lte: String + symbol_in: [String!] + symbol_not_in: [String!] + symbol_contains: String + symbol_contains_nocase: String + symbol_not_contains: String + symbol_not_contains_nocase: String + symbol_starts_with: String + symbol_starts_with_nocase: String + symbol_not_starts_with: String + symbol_not_starts_with_nocase: String + symbol_ends_with: String + symbol_ends_with_nocase: String + symbol_not_ends_with: String + symbol_not_ends_with_nocase: String + expirationDuration: BigInt + expirationDuration_not: BigInt + expirationDuration_gt: BigInt + expirationDuration_lt: BigInt + expirationDuration_gte: BigInt + expirationDuration_lte: BigInt + expirationDuration_in: [BigInt!] + expirationDuration_not_in: [BigInt!] + tokenAddress: Bytes + tokenAddress_not: Bytes + tokenAddress_gt: Bytes + tokenAddress_lt: Bytes + tokenAddress_gte: Bytes + tokenAddress_lte: Bytes + tokenAddress_in: [Bytes!] + tokenAddress_not_in: [Bytes!] + tokenAddress_contains: Bytes + tokenAddress_not_contains: Bytes + price: BigInt + price_not: BigInt + price_gt: BigInt + price_lt: BigInt + price_gte: BigInt + price_lte: BigInt + price_in: [BigInt!] + price_not_in: [BigInt!] + lockManagers: [Bytes!] + lockManagers_not: [Bytes!] + lockManagers_contains: [Bytes!] + lockManagers_contains_nocase: [Bytes!] + lockManagers_not_contains: [Bytes!] + lockManagers_not_contains_nocase: [Bytes!] + version: BigInt + version_not: BigInt + version_gt: BigInt + version_lt: BigInt + version_gte: BigInt + version_lte: BigInt + version_in: [BigInt!] + version_not_in: [BigInt!] + totalKeys: BigInt + totalKeys_not: BigInt + totalKeys_gt: BigInt + totalKeys_lt: BigInt + totalKeys_gte: BigInt + totalKeys_lte: BigInt + totalKeys_in: [BigInt!] + totalKeys_not_in: [BigInt!] + maxNumberOfKeys: BigInt + maxNumberOfKeys_not: BigInt + maxNumberOfKeys_gt: BigInt + maxNumberOfKeys_lt: BigInt + maxNumberOfKeys_gte: BigInt + maxNumberOfKeys_lte: BigInt + maxNumberOfKeys_in: [BigInt!] + maxNumberOfKeys_not_in: [BigInt!] + maxKeysPerAddress: BigInt + maxKeysPerAddress_not: BigInt + maxKeysPerAddress_gt: BigInt + maxKeysPerAddress_lt: BigInt + maxKeysPerAddress_gte: BigInt + maxKeysPerAddress_lte: BigInt + maxKeysPerAddress_in: [BigInt!] + maxKeysPerAddress_not_in: [BigInt!] + keys_: Key_filter + createdAtBlock: BigInt + createdAtBlock_not: BigInt + createdAtBlock_gt: BigInt + createdAtBlock_lt: BigInt + createdAtBlock_gte: BigInt + createdAtBlock_lte: BigInt + createdAtBlock_in: [BigInt!] + createdAtBlock_not_in: [BigInt!] + lastKeyMintedAt: BigInt + lastKeyMintedAt_not: BigInt + lastKeyMintedAt_gt: BigInt + lastKeyMintedAt_lt: BigInt + lastKeyMintedAt_gte: BigInt + lastKeyMintedAt_lte: BigInt + lastKeyMintedAt_in: [BigInt!] + lastKeyMintedAt_not_in: [BigInt!] + deployer: Bytes + deployer_not: Bytes + deployer_gt: Bytes + deployer_lt: Bytes + deployer_gte: Bytes + deployer_lte: Bytes + deployer_in: [Bytes!] + deployer_not_in: [Bytes!] + deployer_contains: Bytes + deployer_not_contains: Bytes + numberOfReceipts: BigInt + numberOfReceipts_not: BigInt + numberOfReceipts_gt: BigInt + numberOfReceipts_lt: BigInt + numberOfReceipts_gte: BigInt + numberOfReceipts_lte: BigInt + numberOfReceipts_in: [BigInt!] + numberOfReceipts_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [Lock_filter] + or: [Lock_filter] +} + +enum Lock_orderBy { + id + address + name + symbol + expirationDuration + tokenAddress + price + lockManagers + version + totalKeys + maxNumberOfKeys + maxKeysPerAddress + keys + createdAtBlock + lastKeyMintedAt + deployer + numberOfReceipts +} + +""" +Defines the order direction, either ascending or descending +""" +enum OrderDirection { + asc + desc +} + +type Query { + lock( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Lock + locks( + skip: Int = 0 + first: Int = 100 + orderBy: Lock_orderBy + orderDirection: OrderDirection + where: Lock_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Lock!]! + key( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Key + keys( + skip: Int = 0 + first: Int = 100 + orderBy: Key_orderBy + orderDirection: OrderDirection + where: Key_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Key!]! + unlockDailyData( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): UnlockDailyData + unlockDailyDatas( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockDailyData_orderBy + orderDirection: OrderDirection + where: UnlockDailyData_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockDailyData!]! + lockStats( + skip: Int = 0 + first: Int = 100 + orderBy: LockStats_orderBy + orderDirection: OrderDirection + where: LockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [LockStats!]! + unlockStats( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockStats_orderBy + orderDirection: OrderDirection + where: UnlockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockStats!]! + receipt( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Receipt + receipts( + skip: Int = 0 + first: Int = 100 + orderBy: Receipt_orderBy + orderDirection: OrderDirection + where: Receipt_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Receipt!]! + """ + Access to subgraph metadata + """ + _meta(block: Block_height): _Meta_ +} + +type Receipt { + """ + Transaction Hash + """ + id: ID! + """ + Timestamp + """ + timestamp: BigInt! + """ + Sender of the transaction + """ + sender: String! + """ + Payer in the case of an ERC20 lock renewal, the sender and payer might differ + """ + payer: String + """ + Address of the Lock smart contract + """ + lockAddress: String! + """ + Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 + """ + tokenAddress: String! + """ + amount + """ + amountTransferred: BigInt! + """ + Total gas paid + """ + gasTotal: BigInt! + """ + Increasing number of receipt + """ + receiptNumber: BigInt! +} + +input Receipt_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + timestamp: BigInt + timestamp_not: BigInt + timestamp_gt: BigInt + timestamp_lt: BigInt + timestamp_gte: BigInt + timestamp_lte: BigInt + timestamp_in: [BigInt!] + timestamp_not_in: [BigInt!] + sender: String + sender_not: String + sender_gt: String + sender_lt: String + sender_gte: String + sender_lte: String + sender_in: [String!] + sender_not_in: [String!] + sender_contains: String + sender_contains_nocase: String + sender_not_contains: String + sender_not_contains_nocase: String + sender_starts_with: String + sender_starts_with_nocase: String + sender_not_starts_with: String + sender_not_starts_with_nocase: String + sender_ends_with: String + sender_ends_with_nocase: String + sender_not_ends_with: String + sender_not_ends_with_nocase: String + payer: String + payer_not: String + payer_gt: String + payer_lt: String + payer_gte: String + payer_lte: String + payer_in: [String!] + payer_not_in: [String!] + payer_contains: String + payer_contains_nocase: String + payer_not_contains: String + payer_not_contains_nocase: String + payer_starts_with: String + payer_starts_with_nocase: String + payer_not_starts_with: String + payer_not_starts_with_nocase: String + payer_ends_with: String + payer_ends_with_nocase: String + payer_not_ends_with: String + payer_not_ends_with_nocase: String + lockAddress: String + lockAddress_not: String + lockAddress_gt: String + lockAddress_lt: String + lockAddress_gte: String + lockAddress_lte: String + lockAddress_in: [String!] + lockAddress_not_in: [String!] + lockAddress_contains: String + lockAddress_contains_nocase: String + lockAddress_not_contains: String + lockAddress_not_contains_nocase: String + lockAddress_starts_with: String + lockAddress_starts_with_nocase: String + lockAddress_not_starts_with: String + lockAddress_not_starts_with_nocase: String + lockAddress_ends_with: String + lockAddress_ends_with_nocase: String + lockAddress_not_ends_with: String + lockAddress_not_ends_with_nocase: String + tokenAddress: String + tokenAddress_not: String + tokenAddress_gt: String + tokenAddress_lt: String + tokenAddress_gte: String + tokenAddress_lte: String + tokenAddress_in: [String!] + tokenAddress_not_in: [String!] + tokenAddress_contains: String + tokenAddress_contains_nocase: String + tokenAddress_not_contains: String + tokenAddress_not_contains_nocase: String + tokenAddress_starts_with: String + tokenAddress_starts_with_nocase: String + tokenAddress_not_starts_with: String + tokenAddress_not_starts_with_nocase: String + tokenAddress_ends_with: String + tokenAddress_ends_with_nocase: String + tokenAddress_not_ends_with: String + tokenAddress_not_ends_with_nocase: String + amountTransferred: BigInt + amountTransferred_not: BigInt + amountTransferred_gt: BigInt + amountTransferred_lt: BigInt + amountTransferred_gte: BigInt + amountTransferred_lte: BigInt + amountTransferred_in: [BigInt!] + amountTransferred_not_in: [BigInt!] + gasTotal: BigInt + gasTotal_not: BigInt + gasTotal_gt: BigInt + gasTotal_lt: BigInt + gasTotal_gte: BigInt + gasTotal_lte: BigInt + gasTotal_in: [BigInt!] + gasTotal_not_in: [BigInt!] + receiptNumber: BigInt + receiptNumber_not: BigInt + receiptNumber_gt: BigInt + receiptNumber_lt: BigInt + receiptNumber_gte: BigInt + receiptNumber_lte: BigInt + receiptNumber_in: [BigInt!] + receiptNumber_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [Receipt_filter] + or: [Receipt_filter] +} + +enum Receipt_orderBy { + id + timestamp + sender + payer + lockAddress + tokenAddress + amountTransferred + gasTotal + receiptNumber +} + +type Subscription { + lock( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Lock + locks( + skip: Int = 0 + first: Int = 100 + orderBy: Lock_orderBy + orderDirection: OrderDirection + where: Lock_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Lock!]! + key( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Key + keys( + skip: Int = 0 + first: Int = 100 + orderBy: Key_orderBy + orderDirection: OrderDirection + where: Key_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Key!]! + unlockDailyData( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): UnlockDailyData + unlockDailyDatas( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockDailyData_orderBy + orderDirection: OrderDirection + where: UnlockDailyData_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockDailyData!]! + lockStats( + skip: Int = 0 + first: Int = 100 + orderBy: LockStats_orderBy + orderDirection: OrderDirection + where: LockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [LockStats!]! + unlockStats( + skip: Int = 0 + first: Int = 100 + orderBy: UnlockStats_orderBy + orderDirection: OrderDirection + where: UnlockStats_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [UnlockStats!]! + receipt( + id: ID! + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): Receipt + receipts( + skip: Int = 0 + first: Int = 100 + orderBy: Receipt_orderBy + orderDirection: OrderDirection + where: Receipt_filter + """ + The block at which the query should be executed. Can either be a `{ hash: Bytes }` value containing a block hash, a `{ number: Int }` containing the block number, or a `{ number_gte: Int }` containing the minimum block number. In the case of `number_gte`, the query will be executed on the latest block only if the subgraph has progressed to or past the minimum block number. Defaults to the latest block when omitted. + """ + block: Block_height + """ + Set to `allow` to receive data even if the subgraph has skipped over errors while syncing. + """ + subgraphError: _SubgraphErrorPolicy_! = deny + ): [Receipt!]! + """ + Access to subgraph metadata + """ + _meta(block: Block_height): _Meta_ +} + +type UnlockDailyData { + """ + Day identifier + """ + id: ID! + """ + Number of locks deployed on that day + """ + lockDeployed: BigInt! + """ + Total number of locks deployed + """ + totalLockDeployed: BigInt! + """ + Daily number of keys sold + """ + keysSold: BigInt! + """ + Total number of keys sold + """ + totalKeysSold: BigInt! + """ + Daily number of active locks (active locks have minted at least one membership in the last 30 days + """ + activeLocks: [Bytes!] + """ + Total value exchanged on the network + """ + grossNetworkProduct: BigInt! +} + +input UnlockDailyData_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + lockDeployed: BigInt + lockDeployed_not: BigInt + lockDeployed_gt: BigInt + lockDeployed_lt: BigInt + lockDeployed_gte: BigInt + lockDeployed_lte: BigInt + lockDeployed_in: [BigInt!] + lockDeployed_not_in: [BigInt!] + totalLockDeployed: BigInt + totalLockDeployed_not: BigInt + totalLockDeployed_gt: BigInt + totalLockDeployed_lt: BigInt + totalLockDeployed_gte: BigInt + totalLockDeployed_lte: BigInt + totalLockDeployed_in: [BigInt!] + totalLockDeployed_not_in: [BigInt!] + keysSold: BigInt + keysSold_not: BigInt + keysSold_gt: BigInt + keysSold_lt: BigInt + keysSold_gte: BigInt + keysSold_lte: BigInt + keysSold_in: [BigInt!] + keysSold_not_in: [BigInt!] + totalKeysSold: BigInt + totalKeysSold_not: BigInt + totalKeysSold_gt: BigInt + totalKeysSold_lt: BigInt + totalKeysSold_gte: BigInt + totalKeysSold_lte: BigInt + totalKeysSold_in: [BigInt!] + totalKeysSold_not_in: [BigInt!] + activeLocks: [Bytes!] + activeLocks_not: [Bytes!] + activeLocks_contains: [Bytes!] + activeLocks_contains_nocase: [Bytes!] + activeLocks_not_contains: [Bytes!] + activeLocks_not_contains_nocase: [Bytes!] + grossNetworkProduct: BigInt + grossNetworkProduct_not: BigInt + grossNetworkProduct_gt: BigInt + grossNetworkProduct_lt: BigInt + grossNetworkProduct_gte: BigInt + grossNetworkProduct_lte: BigInt + grossNetworkProduct_in: [BigInt!] + grossNetworkProduct_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [UnlockDailyData_filter] + or: [UnlockDailyData_filter] +} + +enum UnlockDailyData_orderBy { + id + lockDeployed + totalLockDeployed + keysSold + totalKeysSold + activeLocks + grossNetworkProduct +} + +type UnlockStats { + """ + Identifier + """ + id: ID! + """ + Total number of locks deployed + """ + totalLockDeployed: BigInt! + """ + Total number of keys sold + """ + totalKeysSold: BigInt! + """ + Total value exchanged on the network + """ + grossNetworkProduct: BigInt! +} + +input UnlockStats_filter { + id: ID + id_not: ID + id_gt: ID + id_lt: ID + id_gte: ID + id_lte: ID + id_in: [ID!] + id_not_in: [ID!] + totalLockDeployed: BigInt + totalLockDeployed_not: BigInt + totalLockDeployed_gt: BigInt + totalLockDeployed_lt: BigInt + totalLockDeployed_gte: BigInt + totalLockDeployed_lte: BigInt + totalLockDeployed_in: [BigInt!] + totalLockDeployed_not_in: [BigInt!] + totalKeysSold: BigInt + totalKeysSold_not: BigInt + totalKeysSold_gt: BigInt + totalKeysSold_lt: BigInt + totalKeysSold_gte: BigInt + totalKeysSold_lte: BigInt + totalKeysSold_in: [BigInt!] + totalKeysSold_not_in: [BigInt!] + grossNetworkProduct: BigInt + grossNetworkProduct_not: BigInt + grossNetworkProduct_gt: BigInt + grossNetworkProduct_lt: BigInt + grossNetworkProduct_gte: BigInt + grossNetworkProduct_lte: BigInt + grossNetworkProduct_in: [BigInt!] + grossNetworkProduct_not_in: [BigInt!] + """ + Filter for the block changed event. + """ + _change_block: BlockChangedFilter + and: [UnlockStats_filter] + or: [UnlockStats_filter] +} + +enum UnlockStats_orderBy { + id + totalLockDeployed + totalKeysSold + grossNetworkProduct +} + +type _Block_ { + """ + The hash of the block + """ + hash: Bytes + """ + The block number + """ + number: Int! + """ + Integer representation of the timestamp stored in blocks for the chain + """ + timestamp: Int +} + +""" +The type for the top-level _meta field +""" +type _Meta_ { + """ + Information about a specific subgraph block. The hash of the block + will be null if the _meta field has a block constraint that asks for + a block number. It will be filled if the _meta field has no block constraint + and therefore asks for the latest block + """ + block: _Block_! + """ + The deployment ID + """ + deployment: String! + """ + If `true`, the subgraph encountered indexing errors at some past block + """ + hasIndexingErrors: Boolean! +} + +enum _SubgraphErrorPolicy_ { + """ + Data will be returned even if the subgraph has indexing errors + """ + allow + """ + If the subgraph has indexing errors, data will be omitted. The default. + """ + deny +} diff --git a/.graphclient/sources/unlock/types.ts b/.graphclient/sources/unlock/types.ts new file mode 100644 index 00000000..9fda15fe --- /dev/null +++ b/.graphclient/sources/unlock/types.ts @@ -0,0 +1,1070 @@ +// @ts-nocheck + +import { InContextSdkMethod } from '@graphql-mesh/types' +import { MeshContext } from '@graphql-mesh/runtime' + +export namespace UnlockTypes { + export type Maybe = T | null + export type InputMaybe = Maybe + export type Exact = { [K in keyof T]: T[K] } + export type MakeOptional = Omit & { [SubKey in K]?: Maybe } + export type MakeMaybe = Omit & { [SubKey in K]: Maybe } + /** All built-in and custom scalars, mapped to their actual values */ + export type Scalars = { + ID: string + String: string + Boolean: boolean + Int: number + Float: number + BigDecimal: any + BigInt: any + Bytes: any + Int8: any + } + + export type BlockChangedFilter = { + number_gte: Scalars['Int'] + } + + export type Block_height = { + hash?: InputMaybe + number?: InputMaybe + number_gte?: InputMaybe + } + + export type Key = { + /** Unique identifier for a key (combination of lock address and token id) */ + id: Scalars['ID'] + /** In the Unlock ecosystem, a “Lock” is a smart contract that creates (or “mints”) NFTs */ + lock: Lock + /** TokenId for a given key */ + tokenId: Scalars['BigInt'] + /** The address of the key owner */ + owner: Scalars['Bytes'] + /** An assigned title set on an Unlock key which gives a specific wallet address authorization to transfer, share or cancel */ + manager?: Maybe + /** Time the key expires */ + expiration: Scalars['BigInt'] + /** The tokenURI on an NFT is a unique identifier */ + tokenURI?: Maybe + /** Block key was created */ + createdAtBlock: Scalars['BigInt'] + /** Timestamp of the block in which the key was created */ + createdAt: Scalars['BigInt'] + /** Invoked by a Lock manager to expire the user's key and perform a refund and cancellation of the key */ + cancelled?: Maybe + /** list of transaction hashes for purchase/extensions of a specific token */ + transactionsHash?: Maybe> + } + + export type Key_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + lock?: InputMaybe + lock_not?: InputMaybe + lock_gt?: InputMaybe + lock_lt?: InputMaybe + lock_gte?: InputMaybe + lock_lte?: InputMaybe + lock_in?: InputMaybe> + lock_not_in?: InputMaybe> + lock_contains?: InputMaybe + lock_contains_nocase?: InputMaybe + lock_not_contains?: InputMaybe + lock_not_contains_nocase?: InputMaybe + lock_starts_with?: InputMaybe + lock_starts_with_nocase?: InputMaybe + lock_not_starts_with?: InputMaybe + lock_not_starts_with_nocase?: InputMaybe + lock_ends_with?: InputMaybe + lock_ends_with_nocase?: InputMaybe + lock_not_ends_with?: InputMaybe + lock_not_ends_with_nocase?: InputMaybe + lock_?: InputMaybe + tokenId?: InputMaybe + tokenId_not?: InputMaybe + tokenId_gt?: InputMaybe + tokenId_lt?: InputMaybe + tokenId_gte?: InputMaybe + tokenId_lte?: InputMaybe + tokenId_in?: InputMaybe> + tokenId_not_in?: InputMaybe> + owner?: InputMaybe + owner_not?: InputMaybe + owner_gt?: InputMaybe + owner_lt?: InputMaybe + owner_gte?: InputMaybe + owner_lte?: InputMaybe + owner_in?: InputMaybe> + owner_not_in?: InputMaybe> + owner_contains?: InputMaybe + owner_not_contains?: InputMaybe + manager?: InputMaybe + manager_not?: InputMaybe + manager_gt?: InputMaybe + manager_lt?: InputMaybe + manager_gte?: InputMaybe + manager_lte?: InputMaybe + manager_in?: InputMaybe> + manager_not_in?: InputMaybe> + manager_contains?: InputMaybe + manager_not_contains?: InputMaybe + expiration?: InputMaybe + expiration_not?: InputMaybe + expiration_gt?: InputMaybe + expiration_lt?: InputMaybe + expiration_gte?: InputMaybe + expiration_lte?: InputMaybe + expiration_in?: InputMaybe> + expiration_not_in?: InputMaybe> + tokenURI?: InputMaybe + tokenURI_not?: InputMaybe + tokenURI_gt?: InputMaybe + tokenURI_lt?: InputMaybe + tokenURI_gte?: InputMaybe + tokenURI_lte?: InputMaybe + tokenURI_in?: InputMaybe> + tokenURI_not_in?: InputMaybe> + tokenURI_contains?: InputMaybe + tokenURI_contains_nocase?: InputMaybe + tokenURI_not_contains?: InputMaybe + tokenURI_not_contains_nocase?: InputMaybe + tokenURI_starts_with?: InputMaybe + tokenURI_starts_with_nocase?: InputMaybe + tokenURI_not_starts_with?: InputMaybe + tokenURI_not_starts_with_nocase?: InputMaybe + tokenURI_ends_with?: InputMaybe + tokenURI_ends_with_nocase?: InputMaybe + tokenURI_not_ends_with?: InputMaybe + tokenURI_not_ends_with_nocase?: InputMaybe + createdAtBlock?: InputMaybe + createdAtBlock_not?: InputMaybe + createdAtBlock_gt?: InputMaybe + createdAtBlock_lt?: InputMaybe + createdAtBlock_gte?: InputMaybe + createdAtBlock_lte?: InputMaybe + createdAtBlock_in?: InputMaybe> + createdAtBlock_not_in?: InputMaybe> + createdAt?: InputMaybe + createdAt_not?: InputMaybe + createdAt_gt?: InputMaybe + createdAt_lt?: InputMaybe + createdAt_gte?: InputMaybe + createdAt_lte?: InputMaybe + createdAt_in?: InputMaybe> + createdAt_not_in?: InputMaybe> + cancelled?: InputMaybe + cancelled_not?: InputMaybe + cancelled_in?: InputMaybe> + cancelled_not_in?: InputMaybe> + transactionsHash?: InputMaybe> + transactionsHash_not?: InputMaybe> + transactionsHash_contains?: InputMaybe> + transactionsHash_contains_nocase?: InputMaybe> + transactionsHash_not_contains?: InputMaybe> + transactionsHash_not_contains_nocase?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> + } + + export type Key_orderBy = + | 'id' + | 'lock' + | 'lock__id' + | 'lock__address' + | 'lock__name' + | 'lock__symbol' + | 'lock__expirationDuration' + | 'lock__tokenAddress' + | 'lock__price' + | 'lock__version' + | 'lock__totalKeys' + | 'lock__maxNumberOfKeys' + | 'lock__maxKeysPerAddress' + | 'lock__createdAtBlock' + | 'lock__lastKeyMintedAt' + | 'lock__deployer' + | 'lock__numberOfReceipts' + | 'tokenId' + | 'owner' + | 'manager' + | 'expiration' + | 'tokenURI' + | 'createdAtBlock' + | 'createdAt' + | 'cancelled' + | 'transactionsHash' + + export type Lock = { + /** Unique ID for the Lock object (uses the lock address) */ + id: Scalars['ID'] + /** Address of the lock */ + address: Scalars['Bytes'] + /** A descriptive name for a collection of NFTs in this contract */ + name?: Maybe + /** Token symbol */ + symbol?: Maybe + /** Duration is set the on the lock when you deploy and the expiration which is set on each key when they are minted */ + expirationDuration?: Maybe + /** Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 */ + tokenAddress: Scalars['Bytes'] + /** Price of the keys sold by the lock */ + price: Scalars['BigInt'] + /** An assigned role set on a Lock contract which gives the highest level of permissions to the wallet address set to that role */ + lockManagers: Array + /** Unlock Protocol version of a minting contract */ + version: Scalars['BigInt'] + /** Number of keys minted (expired or not) */ + totalKeys: Scalars['BigInt'] + /** Maximum number of keys for sale */ + maxNumberOfKeys?: Maybe + /** The maximum number of keys allowed for a single address */ + maxKeysPerAddress?: Maybe + /** Refer to key entity */ + keys?: Maybe> + /** Which block the lock was created */ + createdAtBlock?: Maybe + /** The timestamp of the block in which the last key was minted */ + lastKeyMintedAt?: Maybe + /** Address of the lock deployer */ + deployer: Scalars['Bytes'] + /** Total number of receipts of lock */ + numberOfReceipts: Scalars['BigInt'] + } + + export type LockkeysArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + } + + export type LockStats = { + /** Transaction Hash */ + id: Scalars['ID'] + /** Total locks deployed */ + totalLocksDeployed: Scalars['BigInt'] + /** Total keys sold */ + totalKeysSold: Scalars['BigInt'] + } + + export type LockStats_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + totalLocksDeployed?: InputMaybe + totalLocksDeployed_not?: InputMaybe + totalLocksDeployed_gt?: InputMaybe + totalLocksDeployed_lt?: InputMaybe + totalLocksDeployed_gte?: InputMaybe + totalLocksDeployed_lte?: InputMaybe + totalLocksDeployed_in?: InputMaybe> + totalLocksDeployed_not_in?: InputMaybe> + totalKeysSold?: InputMaybe + totalKeysSold_not?: InputMaybe + totalKeysSold_gt?: InputMaybe + totalKeysSold_lt?: InputMaybe + totalKeysSold_gte?: InputMaybe + totalKeysSold_lte?: InputMaybe + totalKeysSold_in?: InputMaybe> + totalKeysSold_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> + } + + export type LockStats_orderBy = 'id' | 'totalLocksDeployed' | 'totalKeysSold' + + export type Lock_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + address?: InputMaybe + address_not?: InputMaybe + address_gt?: InputMaybe + address_lt?: InputMaybe + address_gte?: InputMaybe + address_lte?: InputMaybe + address_in?: InputMaybe> + address_not_in?: InputMaybe> + address_contains?: InputMaybe + address_not_contains?: InputMaybe + name?: InputMaybe + name_not?: InputMaybe + name_gt?: InputMaybe + name_lt?: InputMaybe + name_gte?: InputMaybe + name_lte?: InputMaybe + name_in?: InputMaybe> + name_not_in?: InputMaybe> + name_contains?: InputMaybe + name_contains_nocase?: InputMaybe + name_not_contains?: InputMaybe + name_not_contains_nocase?: InputMaybe + name_starts_with?: InputMaybe + name_starts_with_nocase?: InputMaybe + name_not_starts_with?: InputMaybe + name_not_starts_with_nocase?: InputMaybe + name_ends_with?: InputMaybe + name_ends_with_nocase?: InputMaybe + name_not_ends_with?: InputMaybe + name_not_ends_with_nocase?: InputMaybe + symbol?: InputMaybe + symbol_not?: InputMaybe + symbol_gt?: InputMaybe + symbol_lt?: InputMaybe + symbol_gte?: InputMaybe + symbol_lte?: InputMaybe + symbol_in?: InputMaybe> + symbol_not_in?: InputMaybe> + symbol_contains?: InputMaybe + symbol_contains_nocase?: InputMaybe + symbol_not_contains?: InputMaybe + symbol_not_contains_nocase?: InputMaybe + symbol_starts_with?: InputMaybe + symbol_starts_with_nocase?: InputMaybe + symbol_not_starts_with?: InputMaybe + symbol_not_starts_with_nocase?: InputMaybe + symbol_ends_with?: InputMaybe + symbol_ends_with_nocase?: InputMaybe + symbol_not_ends_with?: InputMaybe + symbol_not_ends_with_nocase?: InputMaybe + expirationDuration?: InputMaybe + expirationDuration_not?: InputMaybe + expirationDuration_gt?: InputMaybe + expirationDuration_lt?: InputMaybe + expirationDuration_gte?: InputMaybe + expirationDuration_lte?: InputMaybe + expirationDuration_in?: InputMaybe> + expirationDuration_not_in?: InputMaybe> + tokenAddress?: InputMaybe + tokenAddress_not?: InputMaybe + tokenAddress_gt?: InputMaybe + tokenAddress_lt?: InputMaybe + tokenAddress_gte?: InputMaybe + tokenAddress_lte?: InputMaybe + tokenAddress_in?: InputMaybe> + tokenAddress_not_in?: InputMaybe> + tokenAddress_contains?: InputMaybe + tokenAddress_not_contains?: InputMaybe + price?: InputMaybe + price_not?: InputMaybe + price_gt?: InputMaybe + price_lt?: InputMaybe + price_gte?: InputMaybe + price_lte?: InputMaybe + price_in?: InputMaybe> + price_not_in?: InputMaybe> + lockManagers?: InputMaybe> + lockManagers_not?: InputMaybe> + lockManagers_contains?: InputMaybe> + lockManagers_contains_nocase?: InputMaybe> + lockManagers_not_contains?: InputMaybe> + lockManagers_not_contains_nocase?: InputMaybe> + version?: InputMaybe + version_not?: InputMaybe + version_gt?: InputMaybe + version_lt?: InputMaybe + version_gte?: InputMaybe + version_lte?: InputMaybe + version_in?: InputMaybe> + version_not_in?: InputMaybe> + totalKeys?: InputMaybe + totalKeys_not?: InputMaybe + totalKeys_gt?: InputMaybe + totalKeys_lt?: InputMaybe + totalKeys_gte?: InputMaybe + totalKeys_lte?: InputMaybe + totalKeys_in?: InputMaybe> + totalKeys_not_in?: InputMaybe> + maxNumberOfKeys?: InputMaybe + maxNumberOfKeys_not?: InputMaybe + maxNumberOfKeys_gt?: InputMaybe + maxNumberOfKeys_lt?: InputMaybe + maxNumberOfKeys_gte?: InputMaybe + maxNumberOfKeys_lte?: InputMaybe + maxNumberOfKeys_in?: InputMaybe> + maxNumberOfKeys_not_in?: InputMaybe> + maxKeysPerAddress?: InputMaybe + maxKeysPerAddress_not?: InputMaybe + maxKeysPerAddress_gt?: InputMaybe + maxKeysPerAddress_lt?: InputMaybe + maxKeysPerAddress_gte?: InputMaybe + maxKeysPerAddress_lte?: InputMaybe + maxKeysPerAddress_in?: InputMaybe> + maxKeysPerAddress_not_in?: InputMaybe> + keys_?: InputMaybe + createdAtBlock?: InputMaybe + createdAtBlock_not?: InputMaybe + createdAtBlock_gt?: InputMaybe + createdAtBlock_lt?: InputMaybe + createdAtBlock_gte?: InputMaybe + createdAtBlock_lte?: InputMaybe + createdAtBlock_in?: InputMaybe> + createdAtBlock_not_in?: InputMaybe> + lastKeyMintedAt?: InputMaybe + lastKeyMintedAt_not?: InputMaybe + lastKeyMintedAt_gt?: InputMaybe + lastKeyMintedAt_lt?: InputMaybe + lastKeyMintedAt_gte?: InputMaybe + lastKeyMintedAt_lte?: InputMaybe + lastKeyMintedAt_in?: InputMaybe> + lastKeyMintedAt_not_in?: InputMaybe> + deployer?: InputMaybe + deployer_not?: InputMaybe + deployer_gt?: InputMaybe + deployer_lt?: InputMaybe + deployer_gte?: InputMaybe + deployer_lte?: InputMaybe + deployer_in?: InputMaybe> + deployer_not_in?: InputMaybe> + deployer_contains?: InputMaybe + deployer_not_contains?: InputMaybe + numberOfReceipts?: InputMaybe + numberOfReceipts_not?: InputMaybe + numberOfReceipts_gt?: InputMaybe + numberOfReceipts_lt?: InputMaybe + numberOfReceipts_gte?: InputMaybe + numberOfReceipts_lte?: InputMaybe + numberOfReceipts_in?: InputMaybe> + numberOfReceipts_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> + } + + export type Lock_orderBy = + | 'id' + | 'address' + | 'name' + | 'symbol' + | 'expirationDuration' + | 'tokenAddress' + | 'price' + | 'lockManagers' + | 'version' + | 'totalKeys' + | 'maxNumberOfKeys' + | 'maxKeysPerAddress' + | 'keys' + | 'createdAtBlock' + | 'lastKeyMintedAt' + | 'deployer' + | 'numberOfReceipts' + + /** Defines the order direction, either ascending or descending */ + export type OrderDirection = 'asc' | 'desc' + + export type Query = { + lock?: Maybe + locks: Array + key?: Maybe + keys: Array + unlockDailyData?: Maybe + unlockDailyDatas: Array + lockStats: Array + unlockStats: Array + receipt?: Maybe + receipts: Array + /** Access to subgraph metadata */ + _meta?: Maybe<_Meta_> + } + + export type QuerylockArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QuerylocksArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QuerykeyArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QuerykeysArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QueryunlockDailyDataArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QueryunlockDailyDatasArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QuerylockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QueryunlockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QueryreceiptArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type QueryreceiptsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type Query_metaArgs = { + block?: InputMaybe + } + + export type Receipt = { + /** Transaction Hash */ + id: Scalars['ID'] + /** Timestamp */ + timestamp: Scalars['BigInt'] + /** Sender of the transaction */ + sender: Scalars['String'] + /** Payer in the case of an ERC20 lock renewal, the sender and payer might differ */ + payer?: Maybe + /** Address of the Lock smart contract */ + lockAddress: Scalars['String'] + /** Address of the 'currency' ERC20 contract if the keys are priced using an ERC20 */ + tokenAddress: Scalars['String'] + /** amount */ + amountTransferred: Scalars['BigInt'] + /** Total gas paid */ + gasTotal: Scalars['BigInt'] + /** Increasing number of receipt */ + receiptNumber: Scalars['BigInt'] + } + + export type Receipt_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + timestamp?: InputMaybe + timestamp_not?: InputMaybe + timestamp_gt?: InputMaybe + timestamp_lt?: InputMaybe + timestamp_gte?: InputMaybe + timestamp_lte?: InputMaybe + timestamp_in?: InputMaybe> + timestamp_not_in?: InputMaybe> + sender?: InputMaybe + sender_not?: InputMaybe + sender_gt?: InputMaybe + sender_lt?: InputMaybe + sender_gte?: InputMaybe + sender_lte?: InputMaybe + sender_in?: InputMaybe> + sender_not_in?: InputMaybe> + sender_contains?: InputMaybe + sender_contains_nocase?: InputMaybe + sender_not_contains?: InputMaybe + sender_not_contains_nocase?: InputMaybe + sender_starts_with?: InputMaybe + sender_starts_with_nocase?: InputMaybe + sender_not_starts_with?: InputMaybe + sender_not_starts_with_nocase?: InputMaybe + sender_ends_with?: InputMaybe + sender_ends_with_nocase?: InputMaybe + sender_not_ends_with?: InputMaybe + sender_not_ends_with_nocase?: InputMaybe + payer?: InputMaybe + payer_not?: InputMaybe + payer_gt?: InputMaybe + payer_lt?: InputMaybe + payer_gte?: InputMaybe + payer_lte?: InputMaybe + payer_in?: InputMaybe> + payer_not_in?: InputMaybe> + payer_contains?: InputMaybe + payer_contains_nocase?: InputMaybe + payer_not_contains?: InputMaybe + payer_not_contains_nocase?: InputMaybe + payer_starts_with?: InputMaybe + payer_starts_with_nocase?: InputMaybe + payer_not_starts_with?: InputMaybe + payer_not_starts_with_nocase?: InputMaybe + payer_ends_with?: InputMaybe + payer_ends_with_nocase?: InputMaybe + payer_not_ends_with?: InputMaybe + payer_not_ends_with_nocase?: InputMaybe + lockAddress?: InputMaybe + lockAddress_not?: InputMaybe + lockAddress_gt?: InputMaybe + lockAddress_lt?: InputMaybe + lockAddress_gte?: InputMaybe + lockAddress_lte?: InputMaybe + lockAddress_in?: InputMaybe> + lockAddress_not_in?: InputMaybe> + lockAddress_contains?: InputMaybe + lockAddress_contains_nocase?: InputMaybe + lockAddress_not_contains?: InputMaybe + lockAddress_not_contains_nocase?: InputMaybe + lockAddress_starts_with?: InputMaybe + lockAddress_starts_with_nocase?: InputMaybe + lockAddress_not_starts_with?: InputMaybe + lockAddress_not_starts_with_nocase?: InputMaybe + lockAddress_ends_with?: InputMaybe + lockAddress_ends_with_nocase?: InputMaybe + lockAddress_not_ends_with?: InputMaybe + lockAddress_not_ends_with_nocase?: InputMaybe + tokenAddress?: InputMaybe + tokenAddress_not?: InputMaybe + tokenAddress_gt?: InputMaybe + tokenAddress_lt?: InputMaybe + tokenAddress_gte?: InputMaybe + tokenAddress_lte?: InputMaybe + tokenAddress_in?: InputMaybe> + tokenAddress_not_in?: InputMaybe> + tokenAddress_contains?: InputMaybe + tokenAddress_contains_nocase?: InputMaybe + tokenAddress_not_contains?: InputMaybe + tokenAddress_not_contains_nocase?: InputMaybe + tokenAddress_starts_with?: InputMaybe + tokenAddress_starts_with_nocase?: InputMaybe + tokenAddress_not_starts_with?: InputMaybe + tokenAddress_not_starts_with_nocase?: InputMaybe + tokenAddress_ends_with?: InputMaybe + tokenAddress_ends_with_nocase?: InputMaybe + tokenAddress_not_ends_with?: InputMaybe + tokenAddress_not_ends_with_nocase?: InputMaybe + amountTransferred?: InputMaybe + amountTransferred_not?: InputMaybe + amountTransferred_gt?: InputMaybe + amountTransferred_lt?: InputMaybe + amountTransferred_gte?: InputMaybe + amountTransferred_lte?: InputMaybe + amountTransferred_in?: InputMaybe> + amountTransferred_not_in?: InputMaybe> + gasTotal?: InputMaybe + gasTotal_not?: InputMaybe + gasTotal_gt?: InputMaybe + gasTotal_lt?: InputMaybe + gasTotal_gte?: InputMaybe + gasTotal_lte?: InputMaybe + gasTotal_in?: InputMaybe> + gasTotal_not_in?: InputMaybe> + receiptNumber?: InputMaybe + receiptNumber_not?: InputMaybe + receiptNumber_gt?: InputMaybe + receiptNumber_lt?: InputMaybe + receiptNumber_gte?: InputMaybe + receiptNumber_lte?: InputMaybe + receiptNumber_in?: InputMaybe> + receiptNumber_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> + } + + export type Receipt_orderBy = + | 'id' + | 'timestamp' + | 'sender' + | 'payer' + | 'lockAddress' + | 'tokenAddress' + | 'amountTransferred' + | 'gasTotal' + | 'receiptNumber' + + export type Subscription = { + lock?: Maybe + locks: Array + key?: Maybe + keys: Array + unlockDailyData?: Maybe + unlockDailyDatas: Array + lockStats: Array + unlockStats: Array + receipt?: Maybe + receipts: Array + /** Access to subgraph metadata */ + _meta?: Maybe<_Meta_> + } + + export type SubscriptionlockArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionlocksArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionkeyArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionkeysArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionunlockDailyDataArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionunlockDailyDatasArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionlockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionunlockStatsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionreceiptArgs = { + id: Scalars['ID'] + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type SubscriptionreceiptsArgs = { + skip?: InputMaybe + first?: InputMaybe + orderBy?: InputMaybe + orderDirection?: InputMaybe + where?: InputMaybe + block?: InputMaybe + subgraphError?: _SubgraphErrorPolicy_ + } + + export type Subscription_metaArgs = { + block?: InputMaybe + } + + export type UnlockDailyData = { + /** Day identifier */ + id: Scalars['ID'] + /** Number of locks deployed on that day */ + lockDeployed: Scalars['BigInt'] + /** Total number of locks deployed */ + totalLockDeployed: Scalars['BigInt'] + /** Daily number of keys sold */ + keysSold: Scalars['BigInt'] + /** Total number of keys sold */ + totalKeysSold: Scalars['BigInt'] + /** Daily number of active locks (active locks have minted at least one membership in the last 30 days */ + activeLocks?: Maybe> + /** Total value exchanged on the network */ + grossNetworkProduct: Scalars['BigInt'] + } + + export type UnlockDailyData_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + lockDeployed?: InputMaybe + lockDeployed_not?: InputMaybe + lockDeployed_gt?: InputMaybe + lockDeployed_lt?: InputMaybe + lockDeployed_gte?: InputMaybe + lockDeployed_lte?: InputMaybe + lockDeployed_in?: InputMaybe> + lockDeployed_not_in?: InputMaybe> + totalLockDeployed?: InputMaybe + totalLockDeployed_not?: InputMaybe + totalLockDeployed_gt?: InputMaybe + totalLockDeployed_lt?: InputMaybe + totalLockDeployed_gte?: InputMaybe + totalLockDeployed_lte?: InputMaybe + totalLockDeployed_in?: InputMaybe> + totalLockDeployed_not_in?: InputMaybe> + keysSold?: InputMaybe + keysSold_not?: InputMaybe + keysSold_gt?: InputMaybe + keysSold_lt?: InputMaybe + keysSold_gte?: InputMaybe + keysSold_lte?: InputMaybe + keysSold_in?: InputMaybe> + keysSold_not_in?: InputMaybe> + totalKeysSold?: InputMaybe + totalKeysSold_not?: InputMaybe + totalKeysSold_gt?: InputMaybe + totalKeysSold_lt?: InputMaybe + totalKeysSold_gte?: InputMaybe + totalKeysSold_lte?: InputMaybe + totalKeysSold_in?: InputMaybe> + totalKeysSold_not_in?: InputMaybe> + activeLocks?: InputMaybe> + activeLocks_not?: InputMaybe> + activeLocks_contains?: InputMaybe> + activeLocks_contains_nocase?: InputMaybe> + activeLocks_not_contains?: InputMaybe> + activeLocks_not_contains_nocase?: InputMaybe> + grossNetworkProduct?: InputMaybe + grossNetworkProduct_not?: InputMaybe + grossNetworkProduct_gt?: InputMaybe + grossNetworkProduct_lt?: InputMaybe + grossNetworkProduct_gte?: InputMaybe + grossNetworkProduct_lte?: InputMaybe + grossNetworkProduct_in?: InputMaybe> + grossNetworkProduct_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> + } + + export type UnlockDailyData_orderBy = + | 'id' + | 'lockDeployed' + | 'totalLockDeployed' + | 'keysSold' + | 'totalKeysSold' + | 'activeLocks' + | 'grossNetworkProduct' + + export type UnlockStats = { + /** Identifier */ + id: Scalars['ID'] + /** Total number of locks deployed */ + totalLockDeployed: Scalars['BigInt'] + /** Total number of keys sold */ + totalKeysSold: Scalars['BigInt'] + /** Total value exchanged on the network */ + grossNetworkProduct: Scalars['BigInt'] + } + + export type UnlockStats_filter = { + id?: InputMaybe + id_not?: InputMaybe + id_gt?: InputMaybe + id_lt?: InputMaybe + id_gte?: InputMaybe + id_lte?: InputMaybe + id_in?: InputMaybe> + id_not_in?: InputMaybe> + totalLockDeployed?: InputMaybe + totalLockDeployed_not?: InputMaybe + totalLockDeployed_gt?: InputMaybe + totalLockDeployed_lt?: InputMaybe + totalLockDeployed_gte?: InputMaybe + totalLockDeployed_lte?: InputMaybe + totalLockDeployed_in?: InputMaybe> + totalLockDeployed_not_in?: InputMaybe> + totalKeysSold?: InputMaybe + totalKeysSold_not?: InputMaybe + totalKeysSold_gt?: InputMaybe + totalKeysSold_lt?: InputMaybe + totalKeysSold_gte?: InputMaybe + totalKeysSold_lte?: InputMaybe + totalKeysSold_in?: InputMaybe> + totalKeysSold_not_in?: InputMaybe> + grossNetworkProduct?: InputMaybe + grossNetworkProduct_not?: InputMaybe + grossNetworkProduct_gt?: InputMaybe + grossNetworkProduct_lt?: InputMaybe + grossNetworkProduct_gte?: InputMaybe + grossNetworkProduct_lte?: InputMaybe + grossNetworkProduct_in?: InputMaybe> + grossNetworkProduct_not_in?: InputMaybe> + /** Filter for the block changed event. */ + _change_block?: InputMaybe + and?: InputMaybe>> + or?: InputMaybe>> + } + + export type UnlockStats_orderBy = 'id' | 'totalLockDeployed' | 'totalKeysSold' | 'grossNetworkProduct' + + export type _Block_ = { + /** The hash of the block */ + hash?: Maybe + /** The block number */ + number: Scalars['Int'] + /** Integer representation of the timestamp stored in blocks for the chain */ + timestamp?: Maybe + } + + /** The type for the top-level _meta field */ + export type _Meta_ = { + /** + * Information about a specific subgraph block. The hash of the block + * will be null if the _meta field has a block constraint that asks for + * a block number. It will be filled if the _meta field has no block constraint + * and therefore asks for the latest block + * + */ + block: _Block_ + /** The deployment ID */ + deployment: Scalars['String'] + /** If `true`, the subgraph encountered indexing errors at some past block */ + hasIndexingErrors: Scalars['Boolean'] + } + + export type _SubgraphErrorPolicy_ = + /** Data will be returned even if the subgraph has indexing errors */ + | 'allow' + /** If the subgraph has indexing errors, data will be omitted. The default. */ + | 'deny' + + export type QuerySdk = { + /** null **/ + lock: InContextSdkMethod + /** null **/ + locks: InContextSdkMethod + /** null **/ + key: InContextSdkMethod + /** null **/ + keys: InContextSdkMethod + /** null **/ + unlockDailyData: InContextSdkMethod + /** null **/ + unlockDailyDatas: InContextSdkMethod + /** null **/ + lockStats: InContextSdkMethod + /** null **/ + unlockStats: InContextSdkMethod + /** null **/ + receipt: InContextSdkMethod + /** null **/ + receipts: InContextSdkMethod + /** Access to subgraph metadata **/ + _meta: InContextSdkMethod + } + + export type MutationSdk = {} + + export type SubscriptionSdk = { + /** null **/ + lock: InContextSdkMethod + /** null **/ + locks: InContextSdkMethod + /** null **/ + key: InContextSdkMethod + /** null **/ + keys: InContextSdkMethod + /** null **/ + unlockDailyData: InContextSdkMethod + /** null **/ + unlockDailyDatas: InContextSdkMethod + /** null **/ + lockStats: InContextSdkMethod + /** null **/ + unlockStats: InContextSdkMethod + /** null **/ + receipt: InContextSdkMethod + /** null **/ + receipts: InContextSdkMethod + /** Access to subgraph metadata **/ + _meta: InContextSdkMethod + } + + export type Context = { + ['unlock']: { Query: QuerySdk; Mutation: MutationSdk; Subscription: SubscriptionSdk } + ['network']: Scalars['ID'] + } +} diff --git a/.graphclientrc.yml b/.graphclientrc.yml new file mode 100644 index 00000000..06b156a9 --- /dev/null +++ b/.graphclientrc.yml @@ -0,0 +1,10 @@ +sources: + - name: unlock + handler: + graphql: + endpoint: 'https://api.thegraph.com/subgraphs/name/unlock-protocol/{context.network:goerli-v2}' + +documents: + - ./integrations/unlock/queries/user-locks-query.graphql + - ./integrations/unlock/queries/lock-stats-query.graphql + - ./integrations/unlock/queries/user-keys-query.graphql diff --git a/app/(general)/integration/unlock/[lockId]/page.tsx b/app/(general)/integration/unlock/[lockId]/page.tsx new file mode 100644 index 00000000..3a9527a7 --- /dev/null +++ b/app/(general)/integration/unlock/[lockId]/page.tsx @@ -0,0 +1,12 @@ +import ButtonKeyCheckout from '@/integrations/unlock/components/button-key-checkout' +import LockStats from '@/integrations/unlock/components/lock-stats' + +export default function UnlockLockPage({ params }: { params: { lockId: string } }) { + return ( +
+

Lock Stats

+ + +
+ ) +} diff --git a/app/(general)/integration/unlock/layout.tsx b/app/(general)/integration/unlock/layout.tsx new file mode 100644 index 00000000..1016e7b5 --- /dev/null +++ b/app/(general)/integration/unlock/layout.tsx @@ -0,0 +1,58 @@ +'use client' +import { ReactNode } from 'react' + +import { motion } from 'framer-motion' +import Image from 'next/image' +import Balancer from 'react-wrap-balancer' + +import { IsDarkTheme } from '@/components/shared/is-dark-theme' +import { IsLightTheme } from '@/components/shared/is-light-theme' +import { LinkComponent } from '@/components/shared/link-component' +import { FADE_DOWN_ANIMATION_VARIANTS } from '@/config/design' +import { turboIntegrations } from '@/data/turbo-integrations' + +const integrationData = turboIntegrations.unlock + +export default function UnlockLayoutIntegration({ children }: { children: ReactNode }) { + return ( + <> +
+ + + Starter logo + + + Starter logo + + + {integrationData.name} + + + {integrationData.description} + + + + + + + +
+
{children}
+ + ) +} diff --git a/app/(general)/integration/unlock/page.tsx b/app/(general)/integration/unlock/page.tsx new file mode 100644 index 00000000..ad15a3a0 --- /dev/null +++ b/app/(general)/integration/unlock/page.tsx @@ -0,0 +1,31 @@ +import { WalletConnect } from '@/components/blockchain/wallet-connect' +import { IsWalletConnected } from '@/components/shared/is-wallet-connected' +import { IsWalletDisconnected } from '@/components/shared/is-wallet-disconnected' +import { Button } from '@/components/ui/button' +import FormDeployLock from '@/integrations/unlock/components/form-deploy-lock' +import UserKeys from '@/integrations/unlock/components/user-keys' +import UserLocks from '@/integrations/unlock/components/user-locks' + +export default function UnlockIntegration() { + return ( +
+ + +

Create a Lock

+ +

Created Locks

+ +

Owned Keys

+ +
+ + + + +
+ ) +} diff --git a/app/(general)/integration/unlock/paywall/page.tsx b/app/(general)/integration/unlock/paywall/page.tsx new file mode 100644 index 00000000..0ec3b955 --- /dev/null +++ b/app/(general)/integration/unlock/paywall/page.tsx @@ -0,0 +1,11 @@ +'use client' + +import PaywallDemo from '@/integrations/unlock/components/paywall-demo' + +export default function PaywallPage() { + return ( +
+ +
+ ) +} diff --git a/components/layout/header.tsx b/components/layout/header.tsx index 61a9eae1..c0f4994e 100644 --- a/components/layout/header.tsx +++ b/components/layout/header.tsx @@ -8,8 +8,6 @@ import { siteConfig } from '@/config/site' import useScroll from '@/lib/hooks/use-scroll' import { cn } from '@/lib/utils' -import { NavigationMenuGeneral } from './navigation-menu-general' -import { UserDropdown } from './user-dropdown' import BranchButtonLoginOrAccount from '../../integrations/siwe/components/branch-button-login-or-account' import { IsDarkTheme } from '../shared/is-dark-theme' import { IsDesktop } from '../shared/is-desktop' @@ -17,6 +15,8 @@ import { IsLightTheme } from '../shared/is-light-theme' import { IsMobile } from '../shared/is-mobile' import { LinkComponent } from '../shared/link-component' import { ThemeToggle } from '../shared/theme-toggle' +import { NavigationMenuGeneral } from './navigation-menu-general' +import { UserDropdown } from './user-dropdown' export function Header({ className, ...props }: HTMLAttributes) { const scrolled = useScroll(50) diff --git a/data/turbo-integrations.ts b/data/turbo-integrations.ts index a66055df..dbce2251 100644 --- a/data/turbo-integrations.ts +++ b/data/turbo-integrations.ts @@ -87,7 +87,6 @@ export const turboIntegrations = { imgLight: '/integrations/connext.png', imgDark: '/integrations/connext.png', }, - gelato: { name: 'Gelato', href: '/integration/gelato', @@ -112,6 +111,14 @@ export const turboIntegrations = { imgLight: '/integrations/moralis.png', imgDark: '/integrations/moralis.png', }, + unlock: { + name: 'Unlock Protocol', + href: '/integration/unlock', + url: 'https://docs.unlock-protocol.com/?_ga=2.100163804.370043445.1690238160-1370418924.1685652724', + description: 'Smart contracts built specifically for memberships and subscriptions', + imgLight: '/logo-gradient.png', + imgDark: '/logo-dark.png', + }, starter: { name: 'Starter Template', href: '/integration/starter', diff --git a/integrations/connext/components/form-connext-xtransfer.tsx b/integrations/connext/components/form-connext-xtransfer.tsx index 95ce3e3b..c8589646 100644 --- a/integrations/connext/components/form-connext-xtransfer.tsx +++ b/integrations/connext/components/form-connext-xtransfer.tsx @@ -16,7 +16,6 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@ import { Switch } from '@/components/ui/switch' import { FADE_DOWN_ANIMATION_VARIANTS } from '@/config/design' -import { Spinner } from './spinner' import { useApproveIfNeeded } from '../hooks/use-approve-if-needed' import { useEstimatedAmount } from '../hooks/use-estimated-amount' import { useEstimatedRelayerFee } from '../hooks/use-estimated-relayer-fee' @@ -27,6 +26,7 @@ import { mainnetAssets, testnetAssets } from '../utils/assets' import { mainnetChains, testnetChains } from '../utils/chains' import { arbitrumDomainId, arbitrumGoerliId, optimismDomainId, optimismGoerliDomainId } from '../utils/constants' import { Asset } from '../utils/types' +import { Spinner } from './spinner' interface FormConnextXTransferProps { isMainnet: boolean diff --git a/integrations/connext/components/latest-transfers.tsx b/integrations/connext/components/latest-transfers.tsx index b3c320b6..3689aa82 100644 --- a/integrations/connext/components/latest-transfers.tsx +++ b/integrations/connext/components/latest-transfers.tsx @@ -8,8 +8,8 @@ import { useAccount } from 'wagmi' import { LinkComponent } from '@/components/shared/link-component' -import { Transfer } from './transfer' import { useLatestTransfers } from '../hooks/use-latest-transfers' +import { Transfer } from './transfer' interface LatestTransfersProps { isMainnet: boolean diff --git a/integrations/disco/components/form-issue-proof-of-hack/index.tsx b/integrations/disco/components/form-issue-proof-of-hack/index.tsx index a1f20042..b928d04a 100644 --- a/integrations/disco/components/form-issue-proof-of-hack/index.tsx +++ b/integrations/disco/components/form-issue-proof-of-hack/index.tsx @@ -4,9 +4,9 @@ import { FaCopy } from 'react-icons/fa' import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from '@/components/ui/form' import { useToast } from '@/lib/hooks/use-toast' +import { getComponent } from '../../utils/get-element-component' import { issueProofOfHackFormControls } from './controls' import { useDiscoIssueForm } from './hook' -import { getComponent } from '../../utils/get-element-component' export function FormCredentialIssuanceProofOfHack() { const { onSubmit, form, isLoading, isError, isSuccess, error, data } = useDiscoIssueForm() diff --git a/integrations/erc20/components/erc20-write-mint.tsx b/integrations/erc20/components/erc20-write-mint.tsx index b4878d5c..48678b89 100644 --- a/integrations/erc20/components/erc20-write-mint.tsx +++ b/integrations/erc20/components/erc20-write-mint.tsx @@ -9,8 +9,8 @@ import { TransactionStatus } from '@/components/blockchain/transaction-status' import { IsWalletConnected } from '@/components/shared/is-wallet-connected' import { IsWalletDisconnected } from '@/components/shared/is-wallet-disconnected' -import ERC20EventMint from './erc20-event-mint' import { useErc20MintableMint, usePrepareErc20MintableMint } from '../generated/erc20-wagmi' +import ERC20EventMint from './erc20-event-mint' interface ERC20WriteMintProps { address: Address diff --git a/integrations/erc20/components/erc20-write-transfer.tsx b/integrations/erc20/components/erc20-write-transfer.tsx index a400f8ae..a690afdf 100644 --- a/integrations/erc20/components/erc20-write-transfer.tsx +++ b/integrations/erc20/components/erc20-write-transfer.tsx @@ -9,8 +9,8 @@ import { WalletConnect } from '@/components/blockchain/wallet-connect' import { IsWalletConnected } from '@/components/shared/is-wallet-connected' import { IsWalletDisconnected } from '@/components/shared/is-wallet-disconnected' -import ERC20EventTransfer from './erc20-event-transfer' import { useErc20Transfer, usePrepareErc20Transfer } from '../generated/erc20-wagmi' +import ERC20EventTransfer from './erc20-event-transfer' interface ERC20WriteTransferProps { address: Address diff --git a/integrations/gelato/components/active-tasks.tsx b/integrations/gelato/components/active-tasks.tsx index f01912ac..59db4fd3 100644 --- a/integrations/gelato/components/active-tasks.tsx +++ b/integrations/gelato/components/active-tasks.tsx @@ -4,8 +4,8 @@ import { BsSearch } from 'react-icons/bs' import { Input } from '@/components/ui/input' -import { ActiveTaskPreview } from './active-task-preview' import { useActiveTasks } from '../hooks' +import { ActiveTaskPreview } from './active-task-preview' export function ActiveTasks() { const [search, setSearch] = useState('') diff --git a/integrations/gelato/components/create-task/contract-input.tsx b/integrations/gelato/components/create-task/contract-input.tsx index c40270c4..8bdb749a 100644 --- a/integrations/gelato/components/create-task/contract-input.tsx +++ b/integrations/gelato/components/create-task/contract-input.tsx @@ -4,10 +4,10 @@ import { useFormContext } from 'react-hook-form' import { FiChevronLeft } from 'react-icons/fi' import { isAddress } from 'viem' -import { CreateTaskForm } from './create-task' import { useAbi } from '../../hooks' import { isValidAbi } from '../../utils/helpers' import { ValidationError } from '../errors/validation-error' +import { CreateTaskForm } from './create-task' export type ContractInputProps = { contractFieldName: 'contractAddress' | 'resolverContractAddress' diff --git a/integrations/gelato/components/create-task/create-task.tsx b/integrations/gelato/components/create-task/create-task.tsx index a073b8e2..ee2f140e 100644 --- a/integrations/gelato/components/create-task/create-task.tsx +++ b/integrations/gelato/components/create-task/create-task.tsx @@ -10,6 +10,9 @@ import { useNetwork } from 'wagmi' import { useEthersSigner } from '@/lib/hooks/web3/use-ethers-signer' +import { useNewTask } from '../../hooks' +import { useMsgSender } from '../../hooks/use-msg-sender' +import { getFunctionSignature, getTotalInterval, getTransactionUrl, sortInputsByOrder } from '../../utils/helpers' import { ContractInput } from './contract-input' import { ExecutionValues } from './execution-values' import { FunctionInput } from './function-input' @@ -19,9 +22,6 @@ import { PaymentInput } from './payment-input' import { ResolverInput } from './resolver-input' import { RestrictionInfo } from './restriction-info' import { TaskNameInput } from './task-name-input' -import { useNewTask } from '../../hooks' -import { useMsgSender } from '../../hooks/use-msg-sender' -import { getFunctionSignature, getTotalInterval, getTransactionUrl, sortInputsByOrder } from '../../utils/helpers' export type CreateTaskForm = { contractAddress: string diff --git a/integrations/gelato/components/create-task/execution-values.tsx b/integrations/gelato/components/create-task/execution-values.tsx index 57554b56..b898d725 100644 --- a/integrations/gelato/components/create-task/execution-values.tsx +++ b/integrations/gelato/components/create-task/execution-values.tsx @@ -5,9 +5,9 @@ import { useFormContext } from 'react-hook-form' import { cn } from '@/lib/utils' -import { CreateTaskForm } from './create-task' import { getAbiFunctions, validateInput } from '../../utils/helpers' import { ValidationError } from '../errors/validation-error' +import { CreateTaskForm } from './create-task' export type ExecutionValuesProps = { inputFieldName: 'predefinedInputs' | 'resolverInputs' diff --git a/integrations/gelato/components/create-task/function-input.tsx b/integrations/gelato/components/create-task/function-input.tsx index dfe26e3a..0bf04ec1 100644 --- a/integrations/gelato/components/create-task/function-input.tsx +++ b/integrations/gelato/components/create-task/function-input.tsx @@ -5,8 +5,8 @@ import { useFormContext } from 'react-hook-form' import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select' -import { CreateTaskForm } from './create-task' import { getAbiFunctions } from '../../utils/helpers' +import { CreateTaskForm } from './create-task' export type FunctionInputProps = { abiFieldName: 'abi' | 'resolverAbi' diff --git a/integrations/gelato/components/create-task/interval-input.tsx b/integrations/gelato/components/create-task/interval-input.tsx index 5d214a74..34e85b1c 100644 --- a/integrations/gelato/components/create-task/interval-input.tsx +++ b/integrations/gelato/components/create-task/interval-input.tsx @@ -6,9 +6,9 @@ import { useFormContext } from 'react-hook-form' import { Switch } from '@/components/ui/switch' import { cn } from '@/lib/utils' -import { CreateTaskForm } from './create-task' import { getTotalInterval } from '../../utils/helpers' import { ValidationError } from '../errors/validation-error' +import { CreateTaskForm } from './create-task' export function IntervalInput() { const [date, setDate] = useState(Date.now()) diff --git a/integrations/gelato/components/create-task/payment-input.tsx b/integrations/gelato/components/create-task/payment-input.tsx index db58e345..f7ff0922 100644 --- a/integrations/gelato/components/create-task/payment-input.tsx +++ b/integrations/gelato/components/create-task/payment-input.tsx @@ -2,8 +2,8 @@ import { useFormContext } from 'react-hook-form' import { cn } from '@/lib/utils' -import { CreateTaskForm } from './create-task' import { GELATO_CONSTANTS } from '../../utils/constants' +import { CreateTaskForm } from './create-task' export function PaymentInput() { const { watch, setValue } = useFormContext() diff --git a/integrations/gelato/components/create-task/resolver-input.tsx b/integrations/gelato/components/create-task/resolver-input.tsx index 5efbce3b..4b11f393 100644 --- a/integrations/gelato/components/create-task/resolver-input.tsx +++ b/integrations/gelato/components/create-task/resolver-input.tsx @@ -1,7 +1,7 @@ +import { GELATO_CONSTANTS } from '../../utils/constants' import { ContractInput } from './contract-input' import { ExecutionValues } from './execution-values' import { FunctionInput } from './function-input' -import { GELATO_CONSTANTS } from '../../utils/constants' export function ResolverInput() { return ( diff --git a/integrations/gelato/components/create-task/restriction-info.tsx b/integrations/gelato/components/create-task/restriction-info.tsx index dd3f3a6b..904e8ff7 100644 --- a/integrations/gelato/components/create-task/restriction-info.tsx +++ b/integrations/gelato/components/create-task/restriction-info.tsx @@ -4,8 +4,8 @@ import CopyToClipboard from 'react-copy-to-clipboard' import { useFormContext } from 'react-hook-form' import { FaCopy } from 'react-icons/fa' -import { CreateTaskForm } from './create-task' import { getFunctionSignature, truncateEthAddress } from '../../utils/helpers' +import { CreateTaskForm } from './create-task' export function RestrictionInfo({ dedicatedMsgSender }: { dedicatedMsgSender?: string }) { const [copied, setCopied] = useState(false) diff --git a/integrations/gelato/components/rename-task.tsx b/integrations/gelato/components/rename-task.tsx index 28227115..0caef9d9 100644 --- a/integrations/gelato/components/rename-task.tsx +++ b/integrations/gelato/components/rename-task.tsx @@ -1,8 +1,8 @@ import { useForm } from 'react-hook-form' import { FaSpinner } from 'react-icons/fa' -import { ValidationError } from './errors/validation-error' import { useRenameTask } from '../hooks' +import { ValidationError } from './errors/validation-error' type RenameTaskForm = { name: string diff --git a/integrations/gelato/components/task-view/resolver-values.tsx b/integrations/gelato/components/task-view/resolver-values.tsx index a1fe9cff..3aa6b169 100644 --- a/integrations/gelato/components/task-view/resolver-values.tsx +++ b/integrations/gelato/components/task-view/resolver-values.tsx @@ -1,5 +1,5 @@ -import { InputValues } from './input-values' import { getTaskFunctionData } from '../../utils/helpers' +import { InputValues } from './input-values' export type ResolverValuesProps = { functionData: ReturnType diff --git a/integrations/gelato/components/task-view/task-view.tsx b/integrations/gelato/components/task-view/task-view.tsx index 733099ed..e22c949a 100644 --- a/integrations/gelato/components/task-view/task-view.tsx +++ b/integrations/gelato/components/task-view/task-view.tsx @@ -6,17 +6,17 @@ import { FaEdit, FaExternalLinkAlt, FaTimesCircle } from 'react-icons/fa' import { FiChevronLeft } from 'react-icons/fi' import { useNetwork } from 'wagmi' +import { useAbi, useTask } from '../../hooks' +import { useTaskResolver } from '../../hooks/use-task-resolver' +import { formatFee, getAddressUrl, getTaskFunctionData, truncateEthAddress } from '../../utils/helpers' +import { decodeModuleArgs } from '../../utils/resolverDecoder' +import { RenameTask } from '../rename-task' import { ExecutingAddress } from './executing-address' import { FunctionData } from './function-data' import { InputValues } from './input-values' import { IntervalValues } from './interval-values' import { PaymentInfo } from './payment-info' import { ResolverValues } from './resolver-values' -import { useAbi, useTask } from '../../hooks' -import { useTaskResolver } from '../../hooks/use-task-resolver' -import { formatFee, getAddressUrl, getTaskFunctionData, truncateEthAddress } from '../../utils/helpers' -import { decodeModuleArgs } from '../../utils/resolverDecoder' -import { RenameTask } from '../rename-task' export type TasKViewProps = { taskId: string diff --git a/integrations/gelato/hooks/use-active-tasks.ts b/integrations/gelato/hooks/use-active-tasks.ts index 1abe6211..c8ad125c 100644 --- a/integrations/gelato/hooks/use-active-tasks.ts +++ b/integrations/gelato/hooks/use-active-tasks.ts @@ -2,11 +2,11 @@ import { useQuery } from '@tanstack/react-query' import { request } from 'graphql-request' import { useAccount, useNetwork } from 'wagmi' -import { useGelatoAutomateSdk } from './use-automate-sdk' import { GetAllTaskDataDocument, GetAllTaskDataQuery, GetAllTaskDataQueryVariables } from '../graphql/graphql/generated/graphql' import { GELATO_CONSTANTS } from '../utils/constants' import { getGqlEndpoint } from '../utils/helpers' import { FetchActiveTasksProps } from '../utils/types' +import { useGelatoAutomateSdk } from './use-automate-sdk' const fetchActiveTasks = ({ address, gqlEndpoint }: FetchActiveTasksProps) => { return request({ diff --git a/integrations/gelato/hooks/use-cancel-task.ts b/integrations/gelato/hooks/use-cancel-task.ts index b20dbb1f..4583809a 100644 --- a/integrations/gelato/hooks/use-cancel-task.ts +++ b/integrations/gelato/hooks/use-cancel-task.ts @@ -1,7 +1,7 @@ import { useMutation } from '@tanstack/react-query' -import { useGelatoAutomateSdk } from './use-automate-sdk' import { UseCancelTaskProps } from '../utils/types' +import { useGelatoAutomateSdk } from './use-automate-sdk' export const useCancelTask = () => { const { automateSdk } = useGelatoAutomateSdk() diff --git a/integrations/gelato/hooks/use-new-task.ts b/integrations/gelato/hooks/use-new-task.ts index 0a8793d4..cace6d29 100644 --- a/integrations/gelato/hooks/use-new-task.ts +++ b/integrations/gelato/hooks/use-new-task.ts @@ -1,7 +1,7 @@ import { useMutation } from '@tanstack/react-query' -import { useGelatoAutomateSdk } from './use-automate-sdk' import { UseNewTaskProps } from '../utils/types' +import { useGelatoAutomateSdk } from './use-automate-sdk' export const useNewTask = () => { const { automateSdk } = useGelatoAutomateSdk() diff --git a/integrations/gelato/hooks/use-rename-task.ts b/integrations/gelato/hooks/use-rename-task.ts index 9fa56c3a..7a0a18ef 100644 --- a/integrations/gelato/hooks/use-rename-task.ts +++ b/integrations/gelato/hooks/use-rename-task.ts @@ -1,7 +1,7 @@ import { useMutation } from '@tanstack/react-query' -import { useGelatoAutomateSdk } from './use-automate-sdk' import { UseRenameTaskProps } from '../utils/types' +import { useGelatoAutomateSdk } from './use-automate-sdk' export const useRenameTask = () => { const { automateSdk } = useGelatoAutomateSdk() diff --git a/integrations/gelato/hooks/use-task.ts b/integrations/gelato/hooks/use-task.ts index 63092618..df569806 100644 --- a/integrations/gelato/hooks/use-task.ts +++ b/integrations/gelato/hooks/use-task.ts @@ -2,10 +2,10 @@ import { useQuery } from '@tanstack/react-query' import request from 'graphql-request' import { useNetwork } from 'wagmi' -import { useGelatoAutomateSdk } from './use-automate-sdk' import { GetTaskDocument, GetTaskQuery, GetTaskQueryVariables } from '../graphql/graphql/generated/graphql' import { getGqlEndpoint } from '../utils/helpers' import { FetchTaskProps } from '../utils/types' +import { useGelatoAutomateSdk } from './use-automate-sdk' const fetchTask = ({ id, gqlEndpoint }: FetchTaskProps) => { return request({ diff --git a/integrations/lit-protocol/components/access-control/access-control-single-erc721.tsx b/integrations/lit-protocol/components/access-control/access-control-single-erc721.tsx index 782ae188..479c60cc 100644 --- a/integrations/lit-protocol/components/access-control/access-control-single-erc721.tsx +++ b/integrations/lit-protocol/components/access-control/access-control-single-erc721.tsx @@ -5,8 +5,8 @@ import { isAddress } from 'viem' import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select' -import { AccessControlProps } from './types' import { supportedChains } from '../../utils/config' +import { AccessControlProps } from './types' interface FormSchema { address: string diff --git a/integrations/lit-protocol/components/access-control/access-control-token-group.tsx b/integrations/lit-protocol/components/access-control/access-control-token-group.tsx index 65106a27..fc59c1ea 100644 --- a/integrations/lit-protocol/components/access-control/access-control-token-group.tsx +++ b/integrations/lit-protocol/components/access-control/access-control-token-group.tsx @@ -5,8 +5,8 @@ import { isAddress } from 'viem' import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select' -import { AccessControlProps } from './types' import { supportedChains } from '../../utils/config' +import { AccessControlProps } from './types' interface FormSchema { chain: string diff --git a/integrations/lit-protocol/components/form-lit-encrypt-message.tsx b/integrations/lit-protocol/components/form-lit-encrypt-message.tsx index 6a870dd6..0ffca88c 100644 --- a/integrations/lit-protocol/components/form-lit-encrypt-message.tsx +++ b/integrations/lit-protocol/components/form-lit-encrypt-message.tsx @@ -17,9 +17,9 @@ import { Textarea } from '@/components/ui/textarea' import { FADE_DOWN_ANIMATION_VARIANTS } from '@/config/design' import { useToast } from '@/lib/hooks/use-toast' -import { AccessControlSingleAddress, AccessControlSingleERC721, AccessControlTokenGroup } from './access-control' import { useLitClient } from '../hooks/use-lit-client' import { AccessControlConditions } from '../utils/types' +import { AccessControlSingleAddress, AccessControlSingleERC721, AccessControlTokenGroup } from './access-control' interface FormSchema { message: string diff --git a/integrations/livepeer/components/create-stream.tsx b/integrations/livepeer/components/create-stream.tsx index 1c37b1e9..73189f55 100644 --- a/integrations/livepeer/components/create-stream.tsx +++ b/integrations/livepeer/components/create-stream.tsx @@ -10,11 +10,11 @@ import { FaCopy } from 'react-icons/fa' import { useToast } from '@/lib/hooks/use-toast' +import { useIsLivepeerApiKeySet } from '../hooks/use-livepeer-api-key' import { ButtonShare } from './button-share' import { DialogStopStream } from './dialog-stop-stream' import { FormLivepeerApiKey } from './form-livepeer-api-key' import { PlayerComponent, PlayerType } from './player' -import { useIsLivepeerApiKeySet } from '../hooks/use-livepeer-api-key' interface createStreamForm { streamName: string diff --git a/integrations/livepeer/components/upload-file.tsx b/integrations/livepeer/components/upload-file.tsx index 5b394790..3c941844 100644 --- a/integrations/livepeer/components/upload-file.tsx +++ b/integrations/livepeer/components/upload-file.tsx @@ -9,8 +9,8 @@ import { BiVideoPlus } from 'react-icons/bi' import { Progress } from '@/components/ui/progress' -import { FormLivepeerApiKey } from './form-livepeer-api-key' import { useIsLivepeerApiKeySet } from '../hooks/use-livepeer-api-key' +import { FormLivepeerApiKey } from './form-livepeer-api-key' export function UploadFile() { const [video, setVideo] = useState() diff --git a/integrations/unlock/README.md b/integrations/unlock/README.md new file mode 100644 index 00000000..9c775355 --- /dev/null +++ b/integrations/unlock/README.md @@ -0,0 +1,90 @@ +# Unlock Protocol - TurboETH Integration + +This integration allows you to create locks, view owned keys and locks, as well as view stats for specific locks. +The also includes an example of using a lock as a paywall, and will require the lock be purchased before access is granted. + +## Features + +- Implements The Graph protocol to query information from unlock protocol. +- Lists all owned locks on current chain (supports mumbai and goerli) +- Lists all owned keys on current chain (supports mumbai and goerli) +- Interact with Unlock Protocol to create a new lock via the create lock form component +- Paywall example with an already deployed example lock +- View lock statistics, and purchase keys from created locks. + +## Components + +`ButtonKeyCheckout()` +Opens the checkout modal for a specified key. + +'FromDeployLock()' +For to create and deploy new locks. + +'KeyPreview()' +Simply a preview card for the user keys list. + +'LockPreview()' +Simply a preview card for the user locks list. + +'LockStats()' +Simple list of lock information for a specified lock. + +'PaywalScript()' +Configures the example paywall. + +'UserKeys()' +Displays all keys owned by the user for the connected chain. + +`UserLocks()` +Displays all locks owned by the user for the connected chain. + +## Hooks + +`UseDeployLock()` +React hook to interact with unlock protocol smart contracts. + +`UseUnlockSubgraph()` +React hook to interact with The Graph protocol, and query information +from unlock protocol subgraphs. + +## Queries + +`LockStatsQuery` +Retrieves information for a specified lock. + +`UserKeysQuery` +Retreives all keys owned by user. + +`UserLocksQuery` +Retrieves all locks owned by user. + +## File Structure + +``` +integrations/unlock +├── components +│   ├── button-key-checkout.tsx +│   ├── form-deploy-lock.tsx +│   ├── key-preview.tsx +│   ├── lock-preview.tsx +│   ├── lock-stats.tsx +│   ├── paywall-script.tsx +│   ├── user-keys.tsx +│   └── user-locks.tsx +├── hooks +│   ├── use-deploy-lock.tsx +│   └── use-unlock-subgraph.tsx +├── queries +│   ├── lock-stats-query.graphql +│   ├── user-keys-query.graphql +│   └── user-locks-query.graphql +└── README.md + +app/(general)/integration/unlock +├── layout.tsx +├── [lockId] +│   └── page.tsx +├── page.tsx +└── paywall + └── page.tsx +``` diff --git a/integrations/unlock/components/button-key-checkout.tsx b/integrations/unlock/components/button-key-checkout.tsx new file mode 100644 index 00000000..596b2e25 --- /dev/null +++ b/integrations/unlock/components/button-key-checkout.tsx @@ -0,0 +1,48 @@ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +/* eslint-disable @typescript-eslint/no-unsafe-argument */ +'use client' + +import { useEffect, useState } from 'react' + +import networks from '@unlock-protocol/networks' +import { Paywall } from '@unlock-protocol/paywall' +import { useNetwork } from 'wagmi' +import { useAccount } from 'wagmi' + +import { Button } from '@/components/ui/button' +import useUnlockSubgraph from '@/integrations/unlock/hooks/use-unlock-subgraph' + +export default function ButtonKeyCheckout({ lockId }: { lockId: string }) { + const { chain } = useNetwork() + const { getLockStats } = useUnlockSubgraph() + const [lockAddress, setLockAddress] = useState('') + const { connector } = useAccount() + + const baseUrl = 'https://app.unlock-protocol.com/checkout?' + const paywallConfig = { + locks: { + [lockAddress]: { + network: chain?.id, + }, + }, + } + const paywall = new Paywall(networks) + //const redirectUri: string = window.location.href + //const checkoutUrl = `${baseUrl}&paywallConfig=${encodeURIComponent(JSON.stringify(paywallConfig))}&redirectUri${redirectUri}` + async function handleCheckout() { + if (connector) { + await paywall.connect(await connector.getProvider()) + await paywall.loadCheckoutModal(paywallConfig) + } + } + + useEffect(() => { + async function fetchLockAddress() { + const stats = await getLockStats({ lockId }) + setLockAddress(stats.locks[0].address) + } + void fetchLockAddress() + }, [lockId]) + + return
{lockAddress && }
+} diff --git a/integrations/unlock/components/form-deploy-lock.tsx b/integrations/unlock/components/form-deploy-lock.tsx new file mode 100644 index 00000000..5bb01c2d --- /dev/null +++ b/integrations/unlock/components/form-deploy-lock.tsx @@ -0,0 +1,96 @@ +'use client' + +import { useState } from 'react' + +import { Button } from '@/components/ui/button' +import { Input } from '@/components/ui/input' +import { Switch } from '@/components/ui/switch' + +import { useDeployLock } from '../hooks/use-deploy-lock' + +export default function FormDeployLock() { + const [lockName, setLockName] = useState('test lock') + const [maxKeys, setMaxKeys] = useState(10) + const [lastMaxKeys, setLastMaxKeys] = useState(0) // NOTE: used to store the last max keys before unlimited keys + const [duration, setDuration] = useState(30) + const [lastDuration, setLastDuration] = useState(0) // NOTE: used to store the last duration before unlimited duration + const [keyPrice, setKeyPrice] = useState('0.01') + const [unlimitedKeys, setUnlimitedKeys] = useState(false) + const [unlimitedDuration, setUnlimitedDuration] = useState(false) + + const { data, isLoading, isSuccess, deployLock } = useDeployLock() + + function handleDeploy() { + deployLock(duration, keyPrice, maxKeys, lockName) + .then(() => { + console.log('deploying lock...') + }) + .catch((e) => { + console.log('error deploying lock', e) + }) + } + + function handleUnlimitedKeys(e: boolean) { + setUnlimitedKeys(e) + if (e == true) { + setLastMaxKeys(maxKeys) + setMaxKeys(0) // 0 for unlimited + } else { + setMaxKeys(lastMaxKeys) + } + } + + function handleUnlimitedDuration(e: boolean) { + setUnlimitedDuration(e) + if (e == true) { + setLastDuration(duration) + setDuration(0) // 0 for unlimited + } else { + setDuration(lastDuration) + } + } + + return ( +
+
+ + setLockName(e.target.value)} /> + +
+ {unlimitedKeys ? ( + + ) : ( + setMaxKeys(Number(e.target.value))} /> + )} +
+

unlimited:

+ handleUnlimitedKeys(e)} /> +
+
+
+ +
+ {unlimitedDuration ? ( + + ) : ( + setDuration(Number(e.target.value))} /> + )} +
+

unlimited

+ handleUnlimitedDuration(e)} /> +
+
+
+
+ + setKeyPrice(e.target.value)} /> +
+
+ + {isLoading &&

Deploying lock...

} + {isSuccess &&

Lock deployed!

} +
+
+
+ ) +} diff --git a/integrations/unlock/components/key-preview.tsx b/integrations/unlock/components/key-preview.tsx new file mode 100644 index 00000000..a0d4dddf --- /dev/null +++ b/integrations/unlock/components/key-preview.tsx @@ -0,0 +1,12 @@ +interface KeyPreviewProps { + lockName: string | undefined | null +} +export default function KeyPreview({ lockName }: KeyPreviewProps) { + return ( +
+
+

{lockName}

+
+
+ ) +} diff --git a/integrations/unlock/components/lock-preview.tsx b/integrations/unlock/components/lock-preview.tsx new file mode 100644 index 00000000..a97c5784 --- /dev/null +++ b/integrations/unlock/components/lock-preview.tsx @@ -0,0 +1,15 @@ +interface LockPreviewProps { + lockId: string + lockName: string | undefined | null +} +export default function LockPreview({ lockId, lockName }: LockPreviewProps) { + return ( + +
+
+

{lockName}

+
+
+
+ ) +} diff --git a/integrations/unlock/components/lock-stats.tsx b/integrations/unlock/components/lock-stats.tsx new file mode 100644 index 00000000..3c70f3bf --- /dev/null +++ b/integrations/unlock/components/lock-stats.tsx @@ -0,0 +1,82 @@ +'use client' + +import { useEffect, useState } from 'react' + +import { ethers } from 'ethers' + +import { LockStatsQueryQuery } from '@/.graphclient' + +import useUnlockSubgraph from '../hooks/use-unlock-subgraph' + +export default function LockStats({ lockId }: { lockId: string }) { + const [lockStats, setLockStats] = useState() + const { getLockStats } = useUnlockSubgraph() + + useEffect(() => { + async function fetchLockStats() { + const stats: LockStatsQueryQuery = await getLockStats({ lockId }) + setLockStats(stats) + } + void fetchLockStats() + }, [LockStats]) + + return ( +
+ {lockStats ? ( +
+
+ +

{lockStats.locks[0].name}

+
+
+ +

{lockStats.locks[0].symbol}

+
+
+ +

{lockStats.locks[0].totalKeys}

+
+
+ +

{formatMaxKeys(lockStats.locks[0].maxNumberOfKeys as string)}

+
+
+ +

{formatDuration(lockStats.locks[0].expirationDuration as string)}

+
+
+ +

{formatPrice(lockStats.locks[0].price as string)}

+
+
+ ) : ( +

No Lock Found

+ )} +
+ ) +} + +function formatDuration(duration: string): string { + if (duration === ethers.constants.MaxUint256.toString()) { + return 'Unlimited' + } + + const durationNumber = parseInt(duration) + const durationInDays = durationNumber / 60 / 60 / 24 + + return `${durationInDays} days` +} + +function formatMaxKeys(maxKeys: string): string { + if (maxKeys === ethers.constants.MaxUint256.toString()) return 'Unlimited' + + return maxKeys +} + +function formatPrice(keyPrice: string): string { + if (keyPrice === '0') return 'Free' + + const priceInEther = ethers.utils.formatEther(keyPrice) + + return `${priceInEther} ETH` +} diff --git a/integrations/unlock/components/paywall-demo.tsx b/integrations/unlock/components/paywall-demo.tsx new file mode 100644 index 00000000..b867c85d --- /dev/null +++ b/integrations/unlock/components/paywall-demo.tsx @@ -0,0 +1,70 @@ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +/* eslint-disable @typescript-eslint/no-unsafe-argument */ +'use client' + +import { useEffect, useState } from 'react' + +import networks from '@unlock-protocol/networks' +import { Paywall } from '@unlock-protocol/paywall' +import { useAccount } from 'wagmi' + +import { Button } from '@/components/ui/button' + +export default function PaywallDemo() { + const [unlockStatus, setUnlockStatus] = useState('locked') + const { connector } = useAccount() + + const paywall = new Paywall(networks) + const unlockProtocolConfig = { + paywallConfig: { + locks: { + '0x79f2a9aae3a2b8b462adcd1ae1f46be8f278e1c5': { + network: 5, + }, + }, + title: 'Paywall Example Membership', + }, + } + + function handleUnlock(e: any) { + console.log(e.detail) + setUnlockStatus(e.detail) + } + + useEffect(() => { + // assign config to global variable + if ('unlockProtocolConfig' in window) window.unlockProtocolConfig = unlockProtocolConfig + + // load the script + const script = document.createElement('script') + script.src = 'https://app.unlock-protocol.com/checkout?id=787f7dc3-4070-4455-ba17-92a47caeb3a9' + script.async = true + document.body.appendChild(script) + + window.addEventListener('unlockProtocol', handleUnlock) + + return () => { + // remove script when component is unmounted + document.body.removeChild(script) + if ('unlockProtocolConfig' in window) delete window.unlockProtocolConfig + window.removeEventListener('unlockProtocol', handleUnlock) + } + }, []) + + async function checkout() { + if (connector) { + await paywall.connect(await connector.getProvider()) + await paywall.loadCheckoutModal(unlockProtocolConfig.paywallConfig) + } + } + + return ( + <> +
+

Status: {unlockStatus}

+ {unlockStatus === 'locked' && } + {unlockStatus === 'unlocked' &&

Access Granted!

} +
+ + ) +} diff --git a/integrations/unlock/components/user-keys.tsx b/integrations/unlock/components/user-keys.tsx new file mode 100644 index 00000000..6222a9c3 --- /dev/null +++ b/integrations/unlock/components/user-keys.tsx @@ -0,0 +1,43 @@ +/* eslint-disable @typescript-eslint/no-unsafe-argument */ +'use client' + +import { useEffect, useState } from 'react' + +import { useAccount, useNetwork } from 'wagmi' + +import { UserKeysQueryQuery } from '@/.graphclient' + +import useUnlockSubgraph from '../hooks/use-unlock-subgraph' +import KeyPreview from './key-preview' + +export default function UserKeys() { + const [userKeys, setUserKeys] = useState(undefined) + const { getUserKeys } = useUnlockSubgraph() + const { address } = useAccount() + const { chain } = useNetwork() + + useEffect(() => { + async function fetchUserKeys() { + const keys = await getUserKeys() + console.log(keys) + setUserKeys(keys) + } + void fetchUserKeys() + }, [address, chain]) + + return ( +
+ {userKeys && userKeys?.keys.length > 0 ? ( +
+ {userKeys.keys.map((key) => ( +
+ +
+ ))} +
+ ) : ( +

No Keys Found

+ )} +
+ ) +} diff --git a/integrations/unlock/components/user-locks.tsx b/integrations/unlock/components/user-locks.tsx new file mode 100644 index 00000000..e4016643 --- /dev/null +++ b/integrations/unlock/components/user-locks.tsx @@ -0,0 +1,40 @@ +/* eslint-disable @typescript-eslint/no-unsafe-argument */ +'use client' + +import { useEffect, useState } from 'react' + +import { useAccount, useNetwork } from 'wagmi' + +import { UserLocksQueryQuery } from '@/.graphclient' + +import useUnlockSubgraph from '../hooks/use-unlock-subgraph' +import LockPreview from './lock-preview' + +export default function UserLocks() { + const [userLocks, setUserLocks] = useState() + const { getUserLocks } = useUnlockSubgraph() + const { address } = useAccount() + const { chain } = useNetwork() + + useEffect(() => { + async function fetchUserLocks() { + const locks = await getUserLocks() + setUserLocks(locks) + } + void fetchUserLocks() + }, [address, chain]) + + return ( +
+ {userLocks && userLocks?.locks.length > 0 ? ( +
+ {userLocks.locks.map((lock) => ( + + ))} +
+ ) : ( +

No Locks Found

+ )} +
+ ) +} diff --git a/integrations/unlock/hooks/use-deploy-lock.tsx b/integrations/unlock/hooks/use-deploy-lock.tsx new file mode 100644 index 00000000..18a5e193 --- /dev/null +++ b/integrations/unlock/hooks/use-deploy-lock.tsx @@ -0,0 +1,49 @@ +import { useState } from 'react' + +import { PublicLockV13, UnlockV12 } from '@unlock-protocol/contracts' +import { networks } from '@unlock-protocol/networks' +import { ethers } from 'ethers' +import { useAccount, useContractWrite, useNetwork, usePrepareContractWrite } from 'wagmi' + +export function useDeployLock() { + // eslint-disable-neeNetwork() + const { address } = useAccount() + const { chain } = useNetwork() + if (!address || !chain?.id) throw new Error('Wallet not connected') + + // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + const networkConfig = networks[chain.id] + if (!networkConfig) throw new Error('Unsupported Chain') + + // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + const unlockAddress = networkConfig.unlockAddress + + const lockInterface = new ethers.utils.Interface(PublicLockV13.abi) + const [calldata, setCalldata] = useState('') + const [unlockFunctionName, setUnlockFunctionName] = useState('') + + const { config } = usePrepareContractWrite({ + address: unlockAddress, // goerli unlock contract + abi: UnlockV12.abi, + functionName: unlockFunctionName, + args: [calldata, 12], // version 12 + }) + const { data, isLoading, isSuccess, write } = useContractWrite(config) + + async function deployLock(duration: number, price: string, supply: number, name: string) { + setUnlockFunctionName('createUpgradeableLockAtVersion') + setCalldata( + lockInterface.encodeFunctionData('initialize(address,uint256,address,uint256,uint256,string)', [ + address, + duration === 0 ? ethers.constants.MaxUint256 : duration * 60 * 60 * 24, + ethers.constants.AddressZero, // token address defaults to ETH, can be any ERC20 + ethers.utils.parseUnits(price, 18), // key price in ETH + supply === 0 ? ethers.constants.MaxUint256 : supply, + name, + ]) + ) + write?.() + } + + return { data, isLoading, isSuccess, deployLock } +} diff --git a/integrations/unlock/hooks/use-unlock-subgraph.tsx b/integrations/unlock/hooks/use-unlock-subgraph.tsx new file mode 100644 index 00000000..50769a6d --- /dev/null +++ b/integrations/unlock/hooks/use-unlock-subgraph.tsx @@ -0,0 +1,54 @@ +/* eslint-disable @typescript-eslint/no-unsafe-return */ +/* eslint-disable @typescript-eslint/no-unsafe-call */ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +import { networks } from '@unlock-protocol/networks' +import { useAccount, useNetwork } from 'wagmi' + +import { LockStatsQueryDocument, UserKeysQueryDocument, UserLocksQueryDocument, execute } from '@/.graphclient' + +const getEndpoint = (id: number) => { + switch (id) { + case 1: + return 'mainnet-v2' + case 5: + return 'goerli-v2' + case 80001: + return 'goerli-v2' + default: + return 'goerli-v2' + } +} + +export default function useUnlockSubgraph() { + const { address } = useAccount() + const { chain } = useNetwork() + + // prevent hook from running if wallet is not connected + if (!address || !chain?.id) throw new Error('Wallet not connected') + + // prevent hook from running if chain is not supported + const networkConfig = networks[chain.id] + if (!networkConfig) throw new Error('Unsupported Chain') + + const unlockNetworkEndpoint = getEndpoint(chain.id) + + async function getUserKeys() { + const variables = { user: address } + const result = await execute(UserKeysQueryDocument, variables, { network: unlockNetworkEndpoint }) + return result?.data + } + + async function getUserLocks() { + const variables = { user: address } + const result = await execute(UserLocksQueryDocument, variables, { network: unlockNetworkEndpoint }) + return result?.data + } + + async function getLockStats({ lockId }: { lockId: string }) { + const variables = { lockId: lockId } + const result = await execute(LockStatsQueryDocument, variables, { network: unlockNetworkEndpoint }) + return result?.data + } + + return { getUserKeys, getUserLocks, getLockStats } +} diff --git a/integrations/unlock/queries/lock-stats-query.graphql b/integrations/unlock/queries/lock-stats-query.graphql new file mode 100644 index 00000000..96cc2069 --- /dev/null +++ b/integrations/unlock/queries/lock-stats-query.graphql @@ -0,0 +1,12 @@ +query LockStatsQuery($lockId: ID!) { + locks(where: { id: $lockId }) { + id + address + name + symbol + totalKeys + maxNumberOfKeys + expirationDuration + price + } +} diff --git a/integrations/unlock/queries/user-keys-query.graphql b/integrations/unlock/queries/user-keys-query.graphql new file mode 100644 index 00000000..cccced42 --- /dev/null +++ b/integrations/unlock/queries/user-keys-query.graphql @@ -0,0 +1,11 @@ +query UserKeysQuery($user: Bytes!) { + keys(where: { owner: $user }) { + id + lock { + id + name + } + tokenId + owner + } +} diff --git a/integrations/unlock/queries/user-locks-query.graphql b/integrations/unlock/queries/user-locks-query.graphql new file mode 100644 index 00000000..087bce23 --- /dev/null +++ b/integrations/unlock/queries/user-locks-query.graphql @@ -0,0 +1,7 @@ +query UserLocksQuery($user: Bytes!) { + locks(where: { lockManagers: [$user] }) { + id + address + name + } +} diff --git a/lib/generated/blockchain.ts b/lib/generated/blockchain.ts index 9587d7ee..fe4bf74a 100644 --- a/lib/generated/blockchain.ts +++ b/lib/generated/blockchain.ts @@ -1,4 +1,4 @@ -// Generated by @wagmi/cli@1.1.0 on 8/17/2023 at 10:46:01 AM +// Generated by @wagmi/cli@1.1.0 on 8/21/2023 at 2:07:57 PM import { useContractRead, UseContractReadConfig, diff --git a/package.json b/package.json index a1c12948..154b43ea 100644 --- a/package.json +++ b/package.json @@ -40,6 +40,7 @@ "@hookform/resolvers": "^3.1.1", "@connext/nxtp-utils": "^2.0.3", "@connext/sdk": "2.0.4-alpha.2", + "@graphprotocol/client-cli": "^3.0.0", "@gelatonetwork/automate-sdk": "^2.14.0", "@graphql-typed-document-node/core": "^3.2.0", "@lit-protocol/lit-node-client": "2.1.161", @@ -80,13 +81,17 @@ "@tailwindcss/line-clamp": "^0.4.2", "@tailwindcss/typography": "^0.5.9", "@tanstack/react-query": "^4.3.9", + "@unlock-protocol/contracts": "^0.0.22", + "@unlock-protocol/networks": "^0.0.15", + "@unlock-protocol/paywall": "^0.6.6", + "@unlock-protocol/unlock-js": "^0.38.3", "abitype": "^0.9.6", "axios": "^1.2.2", "class-variance-authority": "^0.4.0", "clsx": "^1.2.1", "dexie": "^3.2.3", "dexie-react-hooks": "^1.1.3", - "ethers": "^5.6.9", + "ethers": "^5.7.2", "eventsource-parser": "^1.0.0", "framer-motion": "^8.4.3", "graphql-request": "^6.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0fcc5d44..296e42d5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,6 +10,9 @@ dependencies: '@gelatonetwork/automate-sdk': specifier: ^2.14.0 version: 2.14.0 + '@graphprotocol/client-cli': + specifier: ^3.0.0 + version: 3.0.0(@babel/core@7.18.5)(@envelop/core@4.0.0)(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/delegate@10.0.2)(@graphql-tools/merge@9.0.0)(@graphql-tools/utils@9.2.1)(@graphql-tools/wrap@10.0.0)(@types/node@17.0.31)(graphql-tag@2.12.6)(graphql@16.8.0)(react-native@0.72.4) '@graphql-typed-document-node/core': specifier: ^3.2.0 version: 3.2.0(graphql@16.8.0) @@ -30,10 +33,10 @@ dependencies: version: 4.8.1(prisma@4.8.1) '@pushprotocol/restapi': specifier: ^1.3.9 - version: 1.3.9(ethers@5.6.9) + version: 1.3.9(ethers@5.7.2) '@pushprotocol/uiweb': specifier: 1.0.1 - version: 1.0.1(@pushprotocol/restapi@1.3.9)(@pushprotocol/socket@0.4.2)(ethers@5.6.9)(react@18.2.0)(styled-components@5.3.11) + version: 1.0.1(@pushprotocol/restapi@1.3.9)(@pushprotocol/socket@0.4.2)(ethers@5.7.2)(react@18.2.0)(styled-components@5.3.11) '@radix-ui/react-accordion': specifier: ^1.1.0 version: 1.1.0(react-dom@18.2.0)(react@18.2.0) @@ -130,6 +133,18 @@ dependencies: '@tanstack/react-query': specifier: ^4.3.9 version: 4.3.9(react-dom@18.2.0)(react-native@0.72.4)(react@18.2.0) + '@unlock-protocol/contracts': + specifier: ^0.0.22 + version: 0.0.22 + '@unlock-protocol/networks': + specifier: ^0.0.15 + version: 0.0.15 + '@unlock-protocol/paywall': + specifier: ^0.6.6 + version: 0.6.6 + '@unlock-protocol/unlock-js': + specifier: ^0.38.3 + version: 0.38.3(axios@1.2.2)(ethers@5.7.2)(hardhat@2.17.0)(jsbi@3.2.5)(react-dom@18.2.0)(react@18.2.0) abitype: specifier: ^0.9.6 version: 0.9.6(typescript@5.0.4)(zod@3.21.4) @@ -149,8 +164,8 @@ dependencies: specifier: ^1.1.3 version: 1.1.3(@types/react@18.0.26)(dexie@3.2.3)(react@18.2.0) ethers: - specifier: ^5.6.9 - version: 5.6.9 + specifier: ^5.7.2 + version: 5.7.2 eventsource-parser: specifier: ^1.0.0 version: 1.0.0 @@ -213,7 +228,7 @@ dependencies: version: 0.3.0(react@18.2.0) siwe: specifier: 1.1.6 - version: 1.1.6(ethers@5.6.9) + version: 1.1.6(ethers@5.7.2) tailwind-merge: specifier: ^1.8.1 version: 1.8.1 @@ -243,9 +258,6 @@ devDependencies: '@commitlint/config-conventional': specifier: ^17.3.0 version: 17.3.0 - '@graphprotocol/client-cli': - specifier: ^3.0.0 - version: 3.0.0(@babel/core@7.18.5)(@envelop/core@4.0.0)(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/delegate@10.0.2)(@graphql-tools/merge@9.0.0)(@graphql-tools/utils@9.2.1)(@graphql-tools/wrap@10.0.0)(@types/node@17.0.31)(graphql-tag@2.12.6)(graphql@16.8.0)(react-native@0.72.4) '@graphql-codegen/cli': specifier: ^5.0.0 version: 5.0.0(@types/node@17.0.31)(graphql@16.8.0) @@ -386,7 +398,7 @@ packages: ajv-formats: 2.1.1(ajv@8.12.0) fast-deep-equal: 3.1.3 rfdc: 1.3.0 - dev: true + dev: false /@ardatan/relay-compiler@12.0.0(graphql@16.8.0): resolution: {integrity: sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q==} @@ -415,7 +427,6 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true /@ardatan/sync-fetch@0.0.1: resolution: {integrity: sha512-xhlTqH0m31mnsG0tIP4ETgfSB6gXDaYYsUWTrlUV93fFQPI9dd8hE0Ot6MHLCtqgB32hwJAC3YZMWlXZw7AleA==} @@ -424,7 +435,6 @@ packages: node-fetch: 2.6.12 transitivePeerDependencies: - encoding - dev: true /@assemblyscript/loader@0.9.4: resolution: {integrity: sha512-HazVq9zwTVwGmqdwYzu7WyQ6FQVZ7SwET0KKQuKm55jD0IfUpZgN0OPIiZG3zV1iSrVYcN0bdwLRXI/VNCYsUA==} @@ -3442,6 +3452,7 @@ packages: /@emotion/memoize@0.7.4: resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} + requiresBuild: true dev: false optional: true @@ -3462,7 +3473,7 @@ packages: dependencies: '@envelop/types': 3.0.2 tslib: 2.6.0 - dev: true + dev: false /@envelop/core@4.0.0: resolution: {integrity: sha512-6usEZO86hWT0ZajAbhOX0QXlV++lrlEmu8br6KQVvyXOxttiHADIibgfzb3GtSI7RnnJDnrcRb7Jynv6Lca3iQ==} @@ -3470,7 +3481,7 @@ packages: dependencies: '@envelop/types': 4.0.0 tslib: 2.6.0 - dev: true + dev: false /@envelop/extended-validation@2.0.6(@envelop/core@3.0.6)(graphql@16.8.0): resolution: {integrity: sha512-aXAf1bg5Z71YfEKLCZ8OMUZAOYPGHV/a+7avd5TIMFNDxl5wJTmIonep3T+kdMpwRInDphfNPGFD0GcGdGxpHg==} @@ -3482,20 +3493,20 @@ packages: '@graphql-tools/utils': 8.13.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@envelop/types@3.0.2: resolution: {integrity: sha512-pOFea9ha0EkURWxJ/35axoH9fDGP5S2cUu/5Mmo9pb8zUf+TaEot8vB670XXihFEn/92759BMjLJNWBKmNhyng==} dependencies: tslib: 2.6.0 - dev: true + dev: false /@envelop/types@4.0.0: resolution: {integrity: sha512-dmBK16VVfKCkqYYemvE+gt1cPBP0d9CbYO4yjNhSSYy9K+w6+Lw48wOLK238mSR339PNAvwj/JW/qzNy2llggA==} engines: {node: '>=16.0.0'} dependencies: tslib: 2.6.0 - dev: true + dev: false /@envelop/validation-cache@5.1.3(@envelop/core@3.0.6)(graphql@16.8.0): resolution: {integrity: sha512-MkzcScQHJJQ/9YCAPdWShEi3xZv4F4neTs+NszzSrZOdlU8z/THuRt7gZ0sO0y2be+sx+SKjHQP8Gq3VXXcTTg==} @@ -3508,7 +3519,7 @@ packages: hash-it: 6.0.0 lru-cache: 6.0.0 tslib: 2.6.0 - dev: true + dev: false /@esbuild/android-arm@0.15.13: resolution: {integrity: sha512-RY2fVI8O0iFUNvZirXaQ1vMvK0xhCcl0gqRj74Z6yEiO1zAUa7hbsdwZM1kzqbxHK7LFyMizipfXT3JME+12Hw==} @@ -3686,20 +3697,6 @@ packages: micro-ftch: 0.3.1 dev: false - /@ethersproject/abi@5.6.4: - resolution: {integrity: sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg==} - dependencies: - '@ethersproject/address': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/constants': 5.6.1 - '@ethersproject/hash': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/strings': 5.6.1 - dev: false - /@ethersproject/abi@5.7.0: resolution: {integrity: sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==} dependencies: @@ -3713,18 +3710,6 @@ packages: '@ethersproject/properties': 5.7.0 '@ethersproject/strings': 5.7.0 - /@ethersproject/abstract-provider@5.6.1: - resolution: {integrity: sha512-BxlIgogYJtp1FS8Muvj8YfdClk3unZH0vRMVX791Z9INBNT/kuACZ9GzaY1Y4yFq+YSy6/w4gzj3HCRKrK9hsQ==} - dependencies: - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/networks': 5.6.4 - '@ethersproject/properties': 5.6.0 - '@ethersproject/transactions': 5.6.2 - '@ethersproject/web': 5.6.1 - dev: false - /@ethersproject/abstract-provider@5.7.0: resolution: {integrity: sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==} dependencies: @@ -3736,16 +3721,6 @@ packages: '@ethersproject/transactions': 5.7.0 '@ethersproject/web': 5.7.1 - /@ethersproject/abstract-signer@5.6.2: - resolution: {integrity: sha512-n1r6lttFBG0t2vNiI3HoWaS/KdOt8xyDjzlP2cuevlWLG6EX0OwcKLyG/Kp/cuwNxdy/ous+R/DEMdTUwWQIjQ==} - dependencies: - '@ethersproject/abstract-provider': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - dev: false - /@ethersproject/abstract-signer@5.7.0: resolution: {integrity: sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==} dependencies: @@ -3755,16 +3730,6 @@ packages: '@ethersproject/logger': 5.7.0 '@ethersproject/properties': 5.7.0 - /@ethersproject/address@5.6.1: - resolution: {integrity: sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q==} - dependencies: - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/rlp': 5.6.1 - dev: false - /@ethersproject/address@5.7.0: resolution: {integrity: sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==} dependencies: @@ -3774,38 +3739,17 @@ packages: '@ethersproject/logger': 5.7.0 '@ethersproject/rlp': 5.7.0 - /@ethersproject/base64@5.6.1: - resolution: {integrity: sha512-qB76rjop6a0RIYYMiB4Eh/8n+Hxu2NIZm8S/Q7kNo5pmZfXhHGHmS4MinUainiBC54SCyRnwzL+KZjj8zbsSsw==} - dependencies: - '@ethersproject/bytes': 5.6.1 - dev: false - /@ethersproject/base64@5.7.0: resolution: {integrity: sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==} dependencies: '@ethersproject/bytes': 5.7.0 - /@ethersproject/basex@5.6.1: - resolution: {integrity: sha512-a52MkVz4vuBXR06nvflPMotld1FJWSj2QT0985v7P/emPZO00PucFAkbcmq2vpVU7Ts7umKiSI6SppiLykVWsA==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/properties': 5.6.0 - dev: false - /@ethersproject/basex@5.7.0: resolution: {integrity: sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==} dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/properties': 5.7.0 - /@ethersproject/bignumber@5.6.2: - resolution: {integrity: sha512-v7+EEUbhGqT3XJ9LMPsKvXYHFc8eHxTowFCG/HgJErmq4XHJ2WR7aeyICg3uTOAQ7Icn0GFHAohXEhxQHq4Ubw==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - bn.js: 5.2.1 - dev: false - /@ethersproject/bignumber@5.7.0: resolution: {integrity: sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==} dependencies: @@ -3813,43 +3757,16 @@ packages: '@ethersproject/logger': 5.7.0 bn.js: 5.2.1 - /@ethersproject/bytes@5.6.1: - resolution: {integrity: sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==} - dependencies: - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/bytes@5.7.0: resolution: {integrity: sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==} dependencies: '@ethersproject/logger': 5.7.0 - /@ethersproject/constants@5.6.1: - resolution: {integrity: sha512-QSq9WVnZbxXYFftrjSjZDUshp6/eKp6qrtdBtUCm0QxCV5z1fG/w3kdlcsjMCQuQHUnAclKoK7XpXMezhRDOLg==} - dependencies: - '@ethersproject/bignumber': 5.6.2 - dev: false - /@ethersproject/constants@5.7.0: resolution: {integrity: sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==} dependencies: '@ethersproject/bignumber': 5.7.0 - /@ethersproject/contracts@5.6.2: - resolution: {integrity: sha512-hguUA57BIKi6WY0kHvZp6PwPlWF87MCeB4B7Z7AbUpTxfFXFdn/3b0GmjZPagIHS+3yhcBJDnuEfU4Xz+Ks/8g==} - dependencies: - '@ethersproject/abi': 5.6.4 - '@ethersproject/abstract-provider': 5.6.1 - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/address': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/constants': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/transactions': 5.6.2 - dev: false - /@ethersproject/contracts@5.7.0: resolution: {integrity: sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==} dependencies: @@ -3864,19 +3781,6 @@ packages: '@ethersproject/properties': 5.7.0 '@ethersproject/transactions': 5.7.0 - /@ethersproject/hash@5.6.1: - resolution: {integrity: sha512-L1xAHurbaxG8VVul4ankNX5HgQ8PNCTrnVXEiFnE9xoRnaUcgfD12tZINtDinSllxPLCtGwguQxJ5E6keE84pA==} - dependencies: - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/address': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/strings': 5.6.1 - dev: false - /@ethersproject/hash@5.7.0: resolution: {integrity: sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==} dependencies: @@ -3890,23 +3794,6 @@ packages: '@ethersproject/properties': 5.7.0 '@ethersproject/strings': 5.7.0 - /@ethersproject/hdnode@5.6.2: - resolution: {integrity: sha512-tERxW8Ccf9CxW2db3WsN01Qao3wFeRsfYY9TCuhmG0xNpl2IO8wgXU3HtWIZ49gUWPggRy4Yg5axU0ACaEKf1Q==} - dependencies: - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/basex': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/pbkdf2': 5.6.1 - '@ethersproject/properties': 5.6.0 - '@ethersproject/sha2': 5.6.1 - '@ethersproject/signing-key': 5.6.2 - '@ethersproject/strings': 5.6.1 - '@ethersproject/transactions': 5.6.2 - '@ethersproject/wordlists': 5.6.1 - dev: false - /@ethersproject/hdnode@5.7.0: resolution: {integrity: sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==} dependencies: @@ -3923,24 +3810,6 @@ packages: '@ethersproject/transactions': 5.7.0 '@ethersproject/wordlists': 5.7.0 - /@ethersproject/json-wallets@5.6.1: - resolution: {integrity: sha512-KfyJ6Zwz3kGeX25nLihPwZYlDqamO6pfGKNnVMWWfEVVp42lTfCZVXXy5Ie8IZTN0HKwAngpIPi7gk4IJzgmqQ==} - dependencies: - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/address': 5.6.1 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/hdnode': 5.6.2 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/pbkdf2': 5.6.1 - '@ethersproject/properties': 5.6.0 - '@ethersproject/random': 5.6.1 - '@ethersproject/strings': 5.6.1 - '@ethersproject/transactions': 5.6.2 - aes-js: 3.0.0 - scrypt-js: 3.0.1 - dev: false - /@ethersproject/json-wallets@5.7.0: resolution: {integrity: sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==} dependencies: @@ -3958,89 +3827,31 @@ packages: aes-js: 3.0.0 scrypt-js: 3.0.1 - /@ethersproject/keccak256@5.6.1: - resolution: {integrity: sha512-bB7DQHCTRDooZZdL3lk9wpL0+XuG3XLGHLh3cePnybsO3V0rdCAOQGpn/0R3aODmnTOOkCATJiD2hnL+5bwthA==} - dependencies: - '@ethersproject/bytes': 5.6.1 - js-sha3: 0.8.0 - dev: false - /@ethersproject/keccak256@5.7.0: resolution: {integrity: sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==} dependencies: '@ethersproject/bytes': 5.7.0 js-sha3: 0.8.0 - /@ethersproject/logger@5.6.0: - resolution: {integrity: sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==} - dev: false - /@ethersproject/logger@5.7.0: resolution: {integrity: sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==} - /@ethersproject/networks@5.6.4: - resolution: {integrity: sha512-KShHeHPahHI2UlWdtDMn2lJETcbtaJge4k7XSjDR9h79QTd6yQJmv6Cp2ZA4JdqWnhszAOLSuJEd9C0PRw7hSQ==} - dependencies: - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/networks@5.7.1: resolution: {integrity: sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==} dependencies: '@ethersproject/logger': 5.7.0 - /@ethersproject/pbkdf2@5.6.1: - resolution: {integrity: sha512-k4gRQ+D93zDRPNUfmduNKq065uadC2YjMP/CqwwX5qG6R05f47boq6pLZtV/RnC4NZAYOPH1Cyo54q0c9sshRQ==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/sha2': 5.6.1 - dev: false - /@ethersproject/pbkdf2@5.7.0: resolution: {integrity: sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==} dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/sha2': 5.7.0 - /@ethersproject/properties@5.6.0: - resolution: {integrity: sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==} - dependencies: - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/properties@5.7.0: resolution: {integrity: sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==} dependencies: '@ethersproject/logger': 5.7.0 - /@ethersproject/providers@5.6.8: - resolution: {integrity: sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w==} - dependencies: - '@ethersproject/abstract-provider': 5.6.1 - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/address': 5.6.1 - '@ethersproject/base64': 5.6.1 - '@ethersproject/basex': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/constants': 5.6.1 - '@ethersproject/hash': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/networks': 5.6.4 - '@ethersproject/properties': 5.6.0 - '@ethersproject/random': 5.6.1 - '@ethersproject/rlp': 5.6.1 - '@ethersproject/sha2': 5.6.1 - '@ethersproject/strings': 5.6.1 - '@ethersproject/transactions': 5.6.2 - '@ethersproject/web': 5.6.1 - bech32: 1.1.4 - ws: 7.4.6 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - /@ethersproject/providers@5.7.2: resolution: {integrity: sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==} dependencies: @@ -4068,40 +3879,18 @@ packages: - bufferutil - utf-8-validate - /@ethersproject/random@5.6.1: - resolution: {integrity: sha512-/wtPNHwbmng+5yi3fkipA8YBT59DdkGRoC2vWk09Dci/q5DlgnMkhIycjHlavrvrjJBkFjO/ueLyT+aUDfc4lA==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/random@5.7.0: resolution: {integrity: sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==} dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/logger': 5.7.0 - /@ethersproject/rlp@5.6.1: - resolution: {integrity: sha512-uYjmcZx+DKlFUk7a5/W9aQVaoEC7+1MOBgNtvNg13+RnuUwT4F0zTovC0tmay5SmRslb29V1B7Y5KCri46WhuQ==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/rlp@5.7.0: resolution: {integrity: sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==} dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/logger': 5.7.0 - /@ethersproject/sha2@5.6.1: - resolution: {integrity: sha512-5K2GyqcW7G4Yo3uenHegbXRPDgARpWUiXc6RiF7b6i/HXUoWlb7uCARh7BAHg7/qT/Q5ydofNwiZcim9qpjB6g==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - hash.js: 1.1.7 - dev: false - /@ethersproject/sha2@5.7.0: resolution: {integrity: sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==} dependencies: @@ -4109,17 +3898,6 @@ packages: '@ethersproject/logger': 5.7.0 hash.js: 1.1.7 - /@ethersproject/signing-key@5.6.2: - resolution: {integrity: sha512-jVbu0RuP7EFpw82vHcL+GP35+KaNruVAZM90GxgQnGqB6crhBqW/ozBfFvdeImtmb4qPko0uxXjn8l9jpn0cwQ==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - bn.js: 5.2.1 - elliptic: 6.5.4 - hash.js: 1.1.7 - dev: false - /@ethersproject/signing-key@5.7.0: resolution: {integrity: sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==} dependencies: @@ -4130,17 +3908,6 @@ packages: elliptic: 6.5.4 hash.js: 1.1.7 - /@ethersproject/solidity@5.6.1: - resolution: {integrity: sha512-KWqVLkUUoLBfL1iwdzUVlkNqAUIFMpbbeH0rgCfKmJp0vFtY4AsaN91gHKo9ZZLkC4UOm3cI3BmMV4N53BOq4g==} - dependencies: - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/sha2': 5.6.1 - '@ethersproject/strings': 5.6.1 - dev: false - /@ethersproject/solidity@5.7.0: resolution: {integrity: sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==} dependencies: @@ -4151,14 +3918,6 @@ packages: '@ethersproject/sha2': 5.7.0 '@ethersproject/strings': 5.7.0 - /@ethersproject/strings@5.6.1: - resolution: {integrity: sha512-2X1Lgk6Jyfg26MUnsHiT456U9ijxKUybz8IM1Vih+NJxYtXhmvKBcHOmvGqpFSVJ0nQ4ZCoIViR8XlRw1v/+Cw==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/constants': 5.6.1 - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/strings@5.7.0: resolution: {integrity: sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==} dependencies: @@ -4166,20 +3925,6 @@ packages: '@ethersproject/constants': 5.7.0 '@ethersproject/logger': 5.7.0 - /@ethersproject/transactions@5.6.2: - resolution: {integrity: sha512-BuV63IRPHmJvthNkkt9G70Ullx6AcM+SDc+a8Aw/8Yew6YwT51TcBKEp1P4oOQ/bP25I18JJr7rcFRgFtU9B2Q==} - dependencies: - '@ethersproject/address': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/constants': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/rlp': 5.6.1 - '@ethersproject/signing-key': 5.6.2 - dev: false - /@ethersproject/transactions@5.7.0: resolution: {integrity: sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==} dependencies: @@ -4193,14 +3938,6 @@ packages: '@ethersproject/rlp': 5.7.0 '@ethersproject/signing-key': 5.7.0 - /@ethersproject/units@5.6.1: - resolution: {integrity: sha512-rEfSEvMQ7obcx3KWD5EWWx77gqv54K6BKiZzKxkQJqtpriVsICrktIQmKl8ReNToPeIYPnFHpXvKpi068YFZXw==} - dependencies: - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/constants': 5.6.1 - '@ethersproject/logger': 5.6.0 - dev: false - /@ethersproject/units@5.7.0: resolution: {integrity: sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==} dependencies: @@ -4208,26 +3945,6 @@ packages: '@ethersproject/constants': 5.7.0 '@ethersproject/logger': 5.7.0 - /@ethersproject/wallet@5.6.2: - resolution: {integrity: sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg==} - dependencies: - '@ethersproject/abstract-provider': 5.6.1 - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/address': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/hash': 5.6.1 - '@ethersproject/hdnode': 5.6.2 - '@ethersproject/json-wallets': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/random': 5.6.1 - '@ethersproject/signing-key': 5.6.2 - '@ethersproject/transactions': 5.6.2 - '@ethersproject/wordlists': 5.6.1 - dev: false - /@ethersproject/wallet@5.7.0: resolution: {integrity: sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==} dependencies: @@ -4247,16 +3964,6 @@ packages: '@ethersproject/transactions': 5.7.0 '@ethersproject/wordlists': 5.7.0 - /@ethersproject/web@5.6.1: - resolution: {integrity: sha512-/vSyzaQlNXkO1WV+RneYKqCJwualcUdx/Z3gseVovZP0wIlOFcCE1hkRhKBH8ImKbGQbMl9EAAyJFrJu7V0aqA==} - dependencies: - '@ethersproject/base64': 5.6.1 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/strings': 5.6.1 - dev: false - /@ethersproject/web@5.7.1: resolution: {integrity: sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==} dependencies: @@ -4266,16 +3973,6 @@ packages: '@ethersproject/properties': 5.7.0 '@ethersproject/strings': 5.7.0 - /@ethersproject/wordlists@5.6.1: - resolution: {integrity: sha512-wiPRgBpNbNwCQFoCr8bcWO8o5I810cqO6mkdtKfLKFlLxeCWcnzDi4Alu8iyNzlhYuS9npCwivMbRWF19dyblw==} - dependencies: - '@ethersproject/bytes': 5.6.1 - '@ethersproject/hash': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/properties': 5.6.0 - '@ethersproject/strings': 5.6.1 - dev: false - /@ethersproject/wordlists@5.7.0: resolution: {integrity: sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==} dependencies: @@ -4287,7 +3984,7 @@ packages: /@fastify/deepmerge@1.3.0: resolution: {integrity: sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==} - dev: true + dev: false /@floating-ui/core@0.7.3: resolution: {integrity: sha512-buc8BXHmG9l82+OQXOFU3Kr2XQx9ys01U/Q9HMIrZ300iLc8HLMgh7dcCqgYzAzf4BkoQvDcXf5Y+CuEZ5JBYg==} @@ -4371,7 +4068,7 @@ packages: graphql: 16.8.0 lodash: 4.17.21 tslib: 2.6.0 - dev: true + dev: false /@graphprotocol/client-auto-pagination@2.0.0(@graphql-mesh/types@0.93.2)(@graphql-tools/delegate@10.0.2)(@graphql-tools/utils@9.2.1)(@graphql-tools/wrap@10.0.0)(graphql@16.8.0): resolution: {integrity: sha512-TouHgs6rQLpZSgnMoPdes8/ZTtMMEoxWeUUCkfho/xfSi49prb5DcsI83pykln0OEAUnNPnaX0MhP+xA5LtFSg==} @@ -4390,7 +4087,7 @@ packages: graphql: 16.8.0 lodash: 4.17.21 tslib: 2.6.0 - dev: true + dev: false /@graphprotocol/client-auto-type-merging@2.0.0(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/delegate@10.0.2)(graphql@16.8.0): resolution: {integrity: sha512-mxqXKHK2lO+k4r02Q44n3qhd5dufo+SSDduD8zGUDBsYcRQAtQD9PwmXRHyUoB9nw4A+NC+CtVh+76fueXCG1w==} @@ -4407,7 +4104,7 @@ packages: tslib: 2.6.0 transitivePeerDependencies: - '@graphql-mesh/utils' - dev: true + dev: false /@graphprotocol/client-block-tracking@2.0.0(@graphql-tools/delegate@10.0.2)(graphql@16.8.0): resolution: {integrity: sha512-mpr0JAlefFGhxeb25ndeRKZ+t9cDHcUKGfRKIsoDzCclUEh5tBVTiQCDVGt6Eu+pxnrHPF2v/NQWktaB3+6twQ==} @@ -4420,7 +4117,7 @@ packages: '@graphql-tools/utils': 10.0.5(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphprotocol/client-cli@3.0.0(@babel/core@7.18.5)(@envelop/core@4.0.0)(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/delegate@10.0.2)(@graphql-tools/merge@9.0.0)(@graphql-tools/utils@9.2.1)(@graphql-tools/wrap@10.0.0)(@types/node@17.0.31)(graphql-tag@2.12.6)(graphql@16.8.0)(react-native@0.72.4): resolution: {integrity: sha512-hTISbOzKavlDifBNsR6JqQMfdYwY7++hflPy+c3WHRrZ4OMoxFmW7ZuvaP6LvgKdJV77O8w9dnT/uxeHs6a90g==} @@ -4459,7 +4156,7 @@ packages: - react-native-windows - supports-color - utf-8-validate - dev: true + dev: false /@graphprotocol/client-polling-live@2.0.0(@envelop/core@4.0.0)(@graphql-tools/merge@9.0.0)(graphql@16.8.0): resolution: {integrity: sha512-JQ0sKiFCX+ErR0fynBNUg/WDiVaaEndlS12fkgrFZrQA2vVpSyow9pW0nKMGVZJa4cN+VDskgwqK5BWXMvdeRA==} @@ -4474,7 +4171,7 @@ packages: '@repeaterjs/repeater': 3.0.4 graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-codegen/add@5.0.0(graphql@16.8.0): resolution: {integrity: sha512-ynWDOsK2yxtFHwcJTB9shoSkUd7YXd6ZE57f0nk7W5cu/nAgxZZpEsnTPEpZB/Mjf14YRGe2uJHQ7AfElHjqUQ==} @@ -4575,7 +4272,7 @@ packages: '@graphql-tools/utils': 9.2.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.5.3 - dev: true + dev: false /@graphql-codegen/core@4.0.0(graphql@16.8.0): resolution: {integrity: sha512-JAGRn49lEtSsZVxeIlFVIRxts2lWObR+OQo7V2LHDJ7ohYYw3ilv7nJ8pf8P4GTg/w6ptcYdSdVVdkI8kUHB/Q==} @@ -4617,7 +4314,7 @@ packages: import-from: 4.0.0 lodash: 4.17.21 tslib: 2.4.1 - dev: true + dev: false /@graphql-codegen/plugin-helpers@3.1.2(graphql@16.8.0): resolution: {integrity: sha512-emOQiHyIliVOIjKVKdsI5MXj312zmRDwmHpyUTZMjfpvxq/UVAHUJIVdVf+lnjjrI+LXBTgMlTWTgHQfmICxjg==} @@ -4631,7 +4328,7 @@ packages: import-from: 4.0.0 lodash: 4.17.21 tslib: 2.4.1 - dev: true + dev: false /@graphql-codegen/plugin-helpers@4.2.0(graphql@16.8.0): resolution: {integrity: sha512-THFTCfg+46PXlXobYJ/OoCX6pzjI+9woQqCjdyKtgoI0tn3Xq2HUUCiidndxUpEYVrXb5pRiRXb7b/ZbMQqD0A==} @@ -4645,7 +4342,7 @@ packages: import-from: 4.0.0 lodash: 4.17.21 tslib: 2.5.3 - dev: true + dev: false /@graphql-codegen/plugin-helpers@5.0.1(graphql@16.8.0): resolution: {integrity: sha512-6L5sb9D8wptZhnhLLBcheSPU7Tg//DGWgc5tQBWX46KYTOTQHGqDpv50FxAJJOyFVJrveN9otWk9UT9/yfY4ww==} @@ -4670,7 +4367,7 @@ packages: '@graphql-tools/utils': 9.2.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.5.3 - dev: true + dev: false /@graphql-codegen/schema-ast@4.0.0(graphql@16.8.0): resolution: {integrity: sha512-WIzkJFa9Gz28FITAPILbt+7A8+yzOyd1NxgwFh7ie+EmO9a5zQK6UQ3U/BviirguXCYnn+AR4dXsoDrSrtRA1g==} @@ -4697,7 +4394,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/typed-document-node@5.0.1(graphql@16.8.0): resolution: {integrity: sha512-VFkhCuJnkgtbbgzoCAwTdJe2G1H6sd3LfCrDqWUrQe53y2ukfSb5Ov1PhAIkCBStKCMQBUY9YgGz9GKR40qQ8g==} @@ -4730,7 +4427,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/typescript-operations@3.0.4(graphql@16.8.0): resolution: {integrity: sha512-6yE2OL2+WJ1vd5MwFEGXpaxsFGzjAGUytPVHDML3Bi3TwP1F3lnQlIko4untwvHW0JhZEGQ7Ck30H9HjcxpdKA==} @@ -4746,7 +4443,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/typescript-operations@4.0.1(graphql@16.8.0): resolution: {integrity: sha512-GpUWWdBVUec/Zqo23aFLBMrXYxN2irypHqDcKjN78JclDPdreasAEPcIpMfqf4MClvpmvDLy4ql+djVAwmkjbw==} @@ -4779,7 +4476,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/typescript@3.0.4(graphql@16.8.0): resolution: {integrity: sha512-x4O47447DZrWNtE/l5CU9QzzW4m1RbmCEdijlA3s2flG/y1Ckqdemob4CWfilSm5/tZ3w1junVDY616RDTSvZw==} @@ -4795,7 +4492,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/typescript@4.0.1(graphql@16.8.0): resolution: {integrity: sha512-3YziQ21dCVdnHb+Us1uDb3pA6eG5Chjv0uTK+bt9dXeMlwYBU8MbtzvQTo4qvzWVC1AxSOKj0rgfNu1xCXqJyA==} @@ -4832,7 +4529,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/visitor-plugin-common@3.1.1(graphql@16.8.0): resolution: {integrity: sha512-uAfp+zu/009R3HUAuTK2AamR1bxIltM6rrYYI6EXSmkM3rFtFsLTuJhjUDj98HcUCszJZrADppz8KKLGRUVlNg==} @@ -4853,7 +4550,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-codegen/visitor-plugin-common@4.0.1(graphql@16.8.0): resolution: {integrity: sha512-Bi/1z0nHg4QMsAqAJhds+ForyLtk7A3HQOlkrZNm3xEkY7lcBzPtiOTLBtvziwopBsXUxqeSwVjOOFPLS5Yw1Q==} @@ -4885,7 +4582,7 @@ packages: graphql: 16.8.0 object-inspect: 1.10.3 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/cache-localforage@0.93.1(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-cY/LJ+XC8kiyPoLxqPAMlOAvaeB81CZafdadLNyNDFuu66qDiZqWTYPw/lnhp2nyeukC8o/P69oP7d2OqVaCZA==} @@ -4900,7 +4597,7 @@ packages: graphql: 16.8.0 localforage: 1.10.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/cli@0.82.35(@babel/core@7.18.5)(@types/node@17.0.31)(graphql-tag@2.12.6)(graphql@16.8.0)(react-native@0.72.4): resolution: {integrity: sha512-5IuXpk+Zpg05u6qNPX19VzC5/HCiLdDRF6EPZ3ze57FIRgGA3YsB1CUGga6Ky3inalURYwx0kWqmdjbdKZYx1w==} @@ -4954,7 +4651,7 @@ packages: - react-native-windows - supports-color - utf-8-validate - dev: true + dev: false /@graphql-mesh/config@0.93.1(@babel/core@7.18.5)(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/runtime@0.93.2)(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-g4omjuBBVPtyhEDeEa6uwfSSvUehV3zcwZVNbk+UJuFJEYPO4yBLsxfEZBpoeO6EriiPX2WnQyn5kiHbC3YTRA==} @@ -4990,7 +4687,7 @@ packages: transitivePeerDependencies: - '@babel/core' - supports-color - dev: true + dev: false /@graphql-mesh/cross-helpers@0.3.4(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(react-native@0.72.4): resolution: {integrity: sha512-jseNppSNEwNWjcjDDwsxmRBK+ub8tz2qc/ca2ZfCTebuCk/+D3dI3LJ95ceNFOIhInK0g2HVq8BO8lMMX1pQtg==} @@ -5006,7 +4703,7 @@ packages: transitivePeerDependencies: - react-native - react-native-windows - dev: true + dev: false /@graphql-mesh/graphql@0.93.1(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/utils@9.2.1)(@types/node@17.0.31)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-1G2/1jkl1VPWhsZsUBwFQI5d9OxxEc+CMxy5ef0qI2WEXqIocOxMhEY53cc+tCSbuXR99rxos+KD/8Z6ZasaOQ==} @@ -5036,7 +4733,7 @@ packages: - bufferutil - encoding - utf-8-validate - dev: true + dev: false /@graphql-mesh/http@0.93.2(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/runtime@0.93.2)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-tdGEvijb3w2YJsncoh59ZobWLWpYPDmTd07XOYroJTg3m95zloFRJr/IzklKOsAa57zVIuRLCOfDju5m1m47CQ==} @@ -5056,7 +4753,7 @@ packages: graphql: 16.8.0 graphql-yoga: 3.9.1(graphql@16.8.0) tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/merger-bare@0.93.1(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-S/G3WSSa4+9YT320iRL/tODK4hTvepkQNUSzmddf3oz10xeyQD7hPJyOAnB6D+2dGVhaOTwmXJIueqevcAcP6Q==} @@ -5076,7 +4773,7 @@ packages: tslib: 2.6.0 transitivePeerDependencies: - '@graphql-mesh/store' - dev: true + dev: false /@graphql-mesh/merger-stitching@0.93.1(@graphql-mesh/store@0.93.1)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-8km5UFhKQGd0XY8bTBpHoBhVx/7qCkflPHLoTAguIWN8nJrcXJoqPamodci/U+2hudLAtRqhWosHu/8z7ctZpg==} @@ -5098,7 +4795,7 @@ packages: '@graphql-tools/utils': 9.2.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/runtime@0.93.2(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-8z9ag3jZLmkzawMzF6+i/+P1nQai+HmSZzNeJJen6fRkwprSM1Z7B4lfYBYhdiCbK11HHubDfw4LYwRuBcISMQ==} @@ -5124,7 +4821,7 @@ packages: '@whatwg-node/fetch': 0.8.8 graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/store@0.93.1(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-OEljVuaZn2htU1rt4Yll/aJmynw3/Kvhd6eE8V0/del0u9iuLJqiKkzFJl8HUSMh0IkO10OnficJnTM0tCmxRw==} @@ -5143,7 +4840,7 @@ packages: '@graphql-tools/utils': 9.2.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/string-interpolation@0.4.4(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-IotswBYZRaPswOebcr2wuOFuzD3dHIJxVEkPiiQubqjUIR8HhQI22XHJv0WNiQZ65z8NR9+GYWwEDIc2JRCNfQ==} @@ -5156,7 +4853,7 @@ packages: json-pointer: 0.6.2 lodash.get: 4.4.2 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/transform-type-merging@0.93.1(@graphql-mesh/types@0.93.2)(@graphql-mesh/utils@0.93.2)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-CUrqCMaEqO1LDusv59UPqmQju3f+LpEGxFu7CydMiIvbfKDDDrf8+dF3OVU7d/ZOMRxB6hR80JsQF0SVeXPCOQ==} @@ -5172,7 +4869,7 @@ packages: '@graphql-tools/stitching-directives': 2.3.34(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/types@0.93.2(@graphql-mesh/store@0.93.1)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-113DuJzmR7aj2EMnLPu33ktCe5k7+Mk0BxFfmQViUH+mkr6i4JMsWvPKs9dTODSYuSuwvAZ90Vw2l3QyMrbFVA==} @@ -5189,7 +4886,7 @@ packages: '@graphql-typed-document-node/core': 3.2.0(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-mesh/utils@0.93.2(@graphql-mesh/cross-helpers@0.3.4)(@graphql-mesh/types@0.93.2)(@graphql-tools/utils@9.2.1)(graphql@16.8.0)(tslib@2.6.0): resolution: {integrity: sha512-U+VytfSoqPofH/pmYZHFY10SkIFtHKrvE7Isxv1d0DiweVjdH3Qtojw13DWFpu/EKtgJY5bqoVnlcsZJYlKQoA==} @@ -5212,7 +4909,7 @@ packages: lodash.topath: 4.5.2 tiny-lru: 8.0.2 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/apollo-engine-loader@8.0.0(graphql@16.8.0): resolution: {integrity: sha512-axQTbN5+Yxs1rJ6cWQBOfw3AEeC+fvIuZSfJLPLLvFJLj4pUm9fhxey/g6oQZAAQJqKPfw+tLDUQvnfvRK8Kmg==} @@ -5240,7 +4937,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/batch-execute@8.5.22(graphql@16.8.0): resolution: {integrity: sha512-hcV1JaY6NJQFQEwCKrYhpfLK8frSXDbtNMoTur98u10Cmecy1zrqNKSqhEyGetpgHxaJRqszGzKeI3RuroDN6A==} @@ -5252,7 +4949,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/batch-execute@9.0.1(graphql@16.8.0): resolution: {integrity: sha512-cc96n/JNARtnYjru6KQl3u3MLrQLfFBu8VoDRRG2BQmShodw4QJ8fn7MzFABjkBHFQPydNGN1QOKBCjq6ui/3g==} @@ -5265,7 +4962,6 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true /@graphql-tools/code-file-loader@7.3.23(@babel/core@7.18.5)(graphql@16.8.0): resolution: {integrity: sha512-8Wt1rTtyTEs0p47uzsPJ1vAtfAx0jmxPifiNdmo9EOCuUPyQGEbMaik/YkqZ7QUFIEYEQu+Vgfo8tElwOPtx5Q==} @@ -5281,7 +4977,7 @@ packages: transitivePeerDependencies: - '@babel/core' - supports-color - dev: true + dev: false /@graphql-tools/code-file-loader@8.0.2(graphql@16.8.0): resolution: {integrity: sha512-AKNpkElUL2cWocYpC4DzNEpo6qJw8Lp+L3bKQ/mIfmbsQxgLz5uve6zHBMhDaFPdlwfIox41N3iUSvi77t9e8A==} @@ -5312,7 +5008,6 @@ packages: dataloader: 2.2.2 graphql: 16.8.0 tslib: 2.6.0 - dev: true /@graphql-tools/delegate@9.0.35(graphql@16.8.0): resolution: {integrity: sha512-jwPu8NJbzRRMqi4Vp/5QX1vIUeUPpWmlQpOkXQD2r1X45YsVceyUUBnktCrlJlDB4jPRVy7JQGwmYo3KFiOBMA==} @@ -5327,7 +5022,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/documents@1.0.0(graphql@16.8.0): resolution: {integrity: sha512-rHGjX1vg/nZ2DKqRGfDPNC55CWZBMldEVcH+91BThRa6JeT80NqXknffLLEZLRUxyikCfkwMsk6xR3UNMqG0Rg==} @@ -5356,7 +5051,7 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate - dev: true + dev: false /@graphql-tools/executor-graphql-ws@1.1.0(graphql@16.8.0): resolution: {integrity: sha512-yM67SzwE8rYRpm4z4AuGtABlOp9mXXVy6sxXnTJRoYIdZrmDbKVfIY+CpZUJCqS0FX3xf2+GoHlsj7Qswaxgcg==} @@ -5392,7 +5087,7 @@ packages: value-or-promise: 1.0.12 transitivePeerDependencies: - '@types/node' - dev: true + dev: false /@graphql-tools/executor-http@1.0.2(@types/node@17.0.31)(graphql@16.8.0): resolution: {integrity: sha512-JKTB4E3kdQM2/1NEcyrVPyQ8057ZVthCV5dFJiKktqY9IdmF00M8gupFcW3jlbM/Udn78ickeUBsUzA3EouqpA==} @@ -5426,7 +5121,7 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate - dev: true + dev: false /@graphql-tools/executor-legacy-ws@1.0.1(graphql@16.8.0): resolution: {integrity: sha512-PQrTJ+ncHMEQspBARc2lhwiQFfRAX/z/CsOdZTFjIljOHgRWGAA1DAx7pEN0j6PflbLCfZ3NensNq2jCBwF46w==} @@ -5456,7 +5151,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/executor@0.0.20(graphql@16.8.0): resolution: {integrity: sha512-GdvNc4vszmfeGvUqlcaH1FjBoguvMYzxAfT6tDd4/LgwymepHhinqLNA5otqwVLW+JETcDaK7xGENzFomuE6TA==} @@ -5469,7 +5164,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/executor@1.2.0(graphql@16.8.0): resolution: {integrity: sha512-SKlIcMA71Dha5JnEWlw4XxcaJ+YupuXg0QCZgl2TOLFz4SkGCwU/geAsJvUJFwK2RbVLpQv/UMq67lOaBuwDtg==} @@ -5483,7 +5178,6 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true /@graphql-tools/git-loader@8.0.2(graphql@16.8.0): resolution: {integrity: sha512-AuCB0nlPvsHh8u42zRZdlD/ZMaWP9A44yAkQUVCZir1E/LG63fsZ9svTWJ+CbusW3Hd0ZP9qpxEhlHxnd4Tlsg==} @@ -5533,7 +5227,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 unixify: 1.0.0 - dev: true + dev: false /@graphql-tools/graphql-file-loader@8.0.0(graphql@16.8.0): resolution: {integrity: sha512-wRXj9Z1IFL3+zJG1HWEY0S4TXal7+s1vVhbZva96MSp0kbb/3JBF7j0cnJ44Eq0ClccMgGCDFqPFXty4JlpaPg==} @@ -5564,7 +5258,7 @@ packages: transitivePeerDependencies: - '@babel/core' - supports-color - dev: true + dev: false /@graphql-tools/graphql-tag-pluck@8.0.2(graphql@16.8.0): resolution: {integrity: sha512-U6fE4yEHxuk/nqmPixHpw1WhqdS6aYuaV60m1bEmUmGJNbpAhaMBy01JncpvpF15yZR5LZ0UjkHg+A3Lhoc8YQ==} @@ -5593,7 +5287,7 @@ packages: graphql: 16.8.0 resolve-from: 5.0.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/import@7.0.0(graphql@16.8.0): resolution: {integrity: sha512-NVZiTO8o1GZs6OXzNfjB+5CtQtqsZZpQOq+Uu0w57kdUkT4RlQKlwhT8T81arEsbV55KpzkpFsOZP7J1wdmhBw==} @@ -5630,7 +5324,7 @@ packages: graphql: 16.8.0 p-limit: 3.1.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/load@8.0.0(graphql@16.8.0): resolution: {integrity: sha512-Cy874bQJH0FP2Az7ELPM49iDzOljQmK1PPH6IuxsWzLSTxwTqd8dXA09dcVZrI7/LsN26heTY2R8q2aiiv0GxQ==} @@ -5653,7 +5347,7 @@ packages: '@graphql-tools/utils': 9.2.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/merge@9.0.0(graphql@16.8.0): resolution: {integrity: sha512-J7/xqjkGTTwOJmaJQJ2C+VDBDOWJL3lKrHJN4yMaRLAJH3PosB7GiPRaSDZdErs0+F77sH2MKs2haMMkywzx7Q==} @@ -5664,7 +5358,6 @@ packages: '@graphql-tools/utils': 10.0.5(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true /@graphql-tools/optimize@1.4.0(graphql@16.8.0): resolution: {integrity: sha512-dJs/2XvZp+wgHH8T5J2TqptT9/6uVzIYvA6uFACha+ufvdMBedkfR4b4GbT8jAKLRARiqRTxy3dctnwkTM2tdw==} @@ -5673,7 +5366,7 @@ packages: dependencies: graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/optimize@2.0.0(graphql@16.8.0): resolution: {integrity: sha512-nhdT+CRGDZ+bk68ic+Jw1OZ99YCDIKYA5AlVAnBHJvMawSx9YQqQAIj4refNc1/LRieGiuWvhbG3jvPVYho0Dg==} @@ -5730,7 +5423,7 @@ packages: transitivePeerDependencies: - encoding - supports-color - dev: true + dev: false /@graphql-tools/relay-operation-optimizer@7.0.0(graphql@16.8.0): resolution: {integrity: sha512-UNlJi5y3JylhVWU4MBpL0Hun4Q7IoJwv9xYtmAz+CgRa066szzY7dcuPfxrA7cIGgG/Q6TVsKsYaiF4OHPs1Fw==} @@ -5758,7 +5451,6 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true /@graphql-tools/schema@9.0.19(graphql@16.8.0): resolution: {integrity: sha512-oBRPoNBtCkk0zbUsyP4GaIzCt8C0aCI4ycIRUL67KK5pOHljKLBBtGT+Jr6hkzA74C8Gco8bpZPe7aWFjiaK2w==} @@ -5770,7 +5462,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/stitch@8.7.50(graphql@16.8.0): resolution: {integrity: sha512-VB1/uZyXjj1P5Wj0c4EKX3q8Q1Maj4dy6uNwodEPaO3EHMpaJU/DqyN0Bvnhxu0ol7RzdY3kgsvsdUjU2QMImw==} @@ -5787,7 +5479,7 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false /@graphql-tools/stitching-directives@2.3.34(graphql@16.8.0): resolution: {integrity: sha512-DVlo1/SW9jN6jN1IL279c7voEJiEHsLbYRD7tYsAW472zrHqn0rpB6jRzZDzLOlCpm7JRWPsegXVlkqf0qvqFQ==} @@ -5798,7 +5490,7 @@ packages: '@graphql-tools/utils': 9.2.1(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/url-loader@7.17.18(@types/node@17.0.31)(graphql@16.8.0): resolution: {integrity: sha512-ear0CiyTj04jCVAxi7TvgbnGDIN2HgqzXzwsfcqiVg9cvjT40NcMlZ2P1lZDgqMkZ9oyLTV8Bw6j+SyG6A+xPw==} @@ -5824,7 +5516,7 @@ packages: - bufferutil - encoding - utf-8-validate - dev: true + dev: false /@graphql-tools/url-loader@8.0.0(@types/node@17.0.31)(graphql@16.8.0): resolution: {integrity: sha512-rPc9oDzMnycvz+X+wrN3PLrhMBQkG4+sd8EzaFN6dypcssiefgWKToXtRKI8HHK68n2xEq1PyrOpkjHFJB+GwA==} @@ -5863,7 +5555,6 @@ packages: dset: 3.1.2 graphql: 16.8.0 tslib: 2.6.0 - dev: true /@graphql-tools/utils@8.13.1(graphql@16.8.0): resolution: {integrity: sha512-qIh9yYpdUFmctVqovwMdheVNJqFh+DQNWIhX87FJStfXYnmweBUDATok9fWPleKeFwxnW8IapKmY8m8toJEkAw==} @@ -5872,7 +5563,7 @@ packages: dependencies: graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/utils@9.2.1(graphql@16.8.0): resolution: {integrity: sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==} @@ -5882,7 +5573,7 @@ packages: '@graphql-typed-document-node/core': 3.2.0(graphql@16.8.0) graphql: 16.8.0 tslib: 2.6.0 - dev: true + dev: false /@graphql-tools/wrap@10.0.0(graphql@16.8.0): resolution: {integrity: sha512-HDOeUUh6UhpiH0WPJUQl44ODt1x5pnMUbOJZ7GjTdGQ7LK0AgVt3ftaAQ9duxLkiAtYJmu5YkULirfZGj4HzDg==} @@ -5896,7 +5587,6 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true /@graphql-tools/wrap@9.4.2(graphql@16.8.0): resolution: {integrity: sha512-DFcd9r51lmcEKn0JW43CWkkI2D6T9XI1juW/Yo86i04v43O9w2/k4/nx2XTJv4Yv+iXwUw7Ok81PGltwGJSDSA==} @@ -5909,7 +5599,15 @@ packages: graphql: 16.8.0 tslib: 2.6.0 value-or-promise: 1.0.12 - dev: true + dev: false + + /@graphql-typed-document-node/core@3.2.0(graphql@16.6.0): + resolution: {integrity: sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + graphql: 16.6.0 + dev: false /@graphql-typed-document-node/core@3.2.0(graphql@16.8.0): resolution: {integrity: sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==} @@ -5922,7 +5620,7 @@ packages: resolution: {integrity: sha512-6npFz7eZz33mXgSm1waBLMjUNG0D5hTc/p5Hcs1mojkT3KsLpCOFokzTEKboNsBhKevYcaVa/xeA7WBj4UYMLg==} dependencies: tslib: 2.6.0 - dev: true + dev: false /@graphql-yoga/subscription@3.1.0: resolution: {integrity: sha512-Vc9lh8KzIHyS3n4jBlCbz7zCjcbtQnOBpsymcRvHhFr2cuH+knmRn0EmzimMQ58jQ8kxoRXXC3KJS3RIxSdPIg==} @@ -5931,14 +5629,14 @@ packages: '@repeaterjs/repeater': 3.0.4 '@whatwg-node/events': 0.0.2 tslib: 2.6.0 - dev: true + dev: false /@graphql-yoga/typed-event-target@1.0.0: resolution: {integrity: sha512-Mqni6AEvl3VbpMtKw+TIjc9qS9a8hKhiAjFtqX488yq5oJtj9TkNlFTIacAVS3vnPiswNsmDiQqvwUOcJgi1DA==} dependencies: '@repeaterjs/repeater': 3.0.4 tslib: 2.6.0 - dev: true + dev: false /@hapi/hoek@9.3.0: resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} @@ -6020,7 +5718,7 @@ packages: strip-ansi-cjs: /strip-ansi@6.0.1 wrap-ansi: 8.1.0 wrap-ansi-cjs: /wrap-ansi@7.0.0 - dev: true + dev: false /@jest/create-cache-key-function@29.6.2: resolution: {integrity: sha512-oGVRMr8na9h1vUiem1E/Uoxb/NR9BdfKb7IBZ+pNWxJQmTYSbDF0dsVBAGqNU7MBQwYJDyRx0H7H/0itiqAgQg==} @@ -7161,6 +6859,18 @@ packages: resolution: {integrity: sha512-+wuegAMaLcZnLCJIvrVUDzA9z/Wp93f0Dla/4jJvIhijRrPabjQbZe6fWiECLaJyfn5ci9fqf9vTw3xpQOad2A==} dev: false + /@openzeppelin/contracts@3.4.1-solc-0.7-2: + resolution: {integrity: sha512-tAG9LWg8+M2CMu7hIsqHPaTyG4uDzjr6mhvH96LvOpLZZj6tgzTluBt+LsCf1/QaYrlis6pITvpIaIhE+iZB+Q==} + dev: false + + /@openzeppelin/contracts@3.4.2-solc-0.7: + resolution: {integrity: sha512-W6QmqgkADuFcTLzHL8vVoNBtkwjvQRpYIAom7KiUNoLKghyx3FgH0GBjt8NRvigV1ZmMOBllvE1By1C+bi8WpA==} + dev: false + + /@openzeppelin/contracts@4.7.0: + resolution: {integrity: sha512-52Qb+A1DdOss8QvJrijYYPSf32GUg2pGaG/yCxtaA3cu4jduouTdg4XZSMLW9op54m1jH7J8hoajhHKOPsoJFw==} + dev: false + /@openzeppelin/contracts@4.7.3: resolution: {integrity: sha512-dGRS0agJzu8ybo44pCIf3xBaPQN/65AIXNgK8+4gzKd5kbvlqyxryUYVLJv7fK98Seyd2hDZzVEHSWAh0Bt1Yw==} dev: false @@ -7195,7 +6905,7 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} requiresBuild: true - dev: true + dev: false optional: true /@pkgr/utils@2.4.2: @@ -7275,7 +6985,7 @@ packages: resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} dev: false - /@pushprotocol/restapi@1.3.9(ethers@5.6.9): + /@pushprotocol/restapi@1.3.9(ethers@5.7.2): resolution: {integrity: sha512-aSvuxnWRO5tNrlLqfc7jDE8t3sSgHdxLWINPRpl+EE3D1eVIPZj5BfxGMyzTN9k96ZllUHHdzvR28vp6bxsAkw==} peerDependencies: ethers: ^5.6.8 @@ -7284,7 +6994,7 @@ packages: axios: 0.27.2 buffer: 6.0.3 crypto-js: 4.1.1 - ethers: 5.6.9 + ethers: 5.7.2 immer: 10.0.2 openpgp: 5.9.0 simple-peer: 9.11.1 @@ -7295,12 +7005,12 @@ packages: - supports-color dev: false - /@pushprotocol/socket@0.4.2(ethers@5.6.9): + /@pushprotocol/socket@0.4.2(ethers@5.7.2): resolution: {integrity: sha512-Pcm0zCT9lB49stuFK+pMORD1UJkJjVzKXhWofQQxbIsUpG10pujZhVfoJtohDT99k+AN2EZLWCImU8j0rfwVlw==} peerDependencies: ethers: ^5.6.8 dependencies: - ethers: 5.6.9 + ethers: 5.7.2 socket.io-client: 4.7.1 tslib: 2.6.0 transitivePeerDependencies: @@ -7309,7 +7019,7 @@ packages: - utf-8-validate dev: false - /@pushprotocol/uiweb@1.0.1(@pushprotocol/restapi@1.3.9)(@pushprotocol/socket@0.4.2)(ethers@5.6.9)(react@18.2.0)(styled-components@5.3.11): + /@pushprotocol/uiweb@1.0.1(@pushprotocol/restapi@1.3.9)(@pushprotocol/socket@0.4.2)(ethers@5.7.2)(react@18.2.0)(styled-components@5.3.11): resolution: {integrity: sha512-/jo0qQU1okiltr4YFoqa3cNaQDoC1iVXWU4xyCJtHf73WBrghsNW8uDuQupI1+AVXLCKoD6iJfTxlIjSqkw9pg==} peerDependencies: '@pushprotocol/restapi': ^1.2.8 @@ -7318,11 +7028,11 @@ packages: react: '>=16.8.0' styled-components: ^5.3.5 dependencies: - '@pushprotocol/restapi': 1.3.9(ethers@5.6.9) - '@pushprotocol/socket': 0.4.2(ethers@5.6.9) + '@pushprotocol/restapi': 1.3.9(ethers@5.7.2) + '@pushprotocol/socket': 0.4.2(ethers@5.7.2) date-fns: 2.30.0 emoji-picker-react: 3.6.5 - ethers: 5.6.9 + ethers: 5.7.2 html-react-parser: 1.4.14(react@18.2.0) react: 18.2.0 styled-components: 5.3.11(@babel/core@7.18.5)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0) @@ -9063,7 +8773,6 @@ packages: /@repeaterjs/repeater@3.0.4: resolution: {integrity: sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA==} - dev: true /@rushstack/eslint-patch@1.3.2: resolution: {integrity: sha512-V+MvGwaHH03hYhY+k6Ef/xKd6RYlc4q8WBx+2ANmipHJcKuktNcI/NgEsJgdSUF6Lw32njT6OnrRsKYCdgHjYw==} @@ -9911,7 +9620,6 @@ packages: /@types/json-schema@7.0.12: resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} - dev: true /@types/json-stable-stringify@1.0.34: resolution: {integrity: sha512-s2cfwagOQAS8o06TcwKfr9Wx11dNGbH2E9vJz1cqV+a/LOyhWNLUNd6JSRYNzvB4d29UuJX2M0Dj9vE1T8fRXw==} @@ -10117,7 +9825,6 @@ packages: resolution: {integrity: sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==} dependencies: '@types/node': 17.0.45 - dev: true /@types/yargs-parser@21.0.0: resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} @@ -10329,6 +10036,281 @@ packages: eslint-visitor-keys: 3.4.1 dev: true + /@uniswap/default-token-list@2.3.0: + resolution: {integrity: sha512-yfd4snv9K20tEbNwy9Vjym41RU3Yb2lN0seKxsgkr+m3f6oub2lWyXfTiNwgGFbOQPDvX4dxjMhA+M+S7mxqKg==} + dev: false + + /@uniswap/lib@4.0.1-alpha: + resolution: {integrity: sha512-f6UIliwBbRsgVLxIaBANF6w09tYqc6Y/qXdsrbEmXHyFA7ILiKrIwRFXe1yOg8M3cksgVsO9N7yuL2DdCGQKBA==} + engines: {node: '>=10'} + dev: false + + /@uniswap/permit2-sdk@1.2.0: + resolution: {integrity: sha512-Ietv3FxN7+RCXcPSED/i/8b0a2GUZrMdyX05k3FsSztvYKyPFAMS/hBXojF0NZqYB1bHecqYc7Ej+7tV/rdYXg==} + dependencies: + ethers: 5.7.2 + tiny-invariant: 1.3.1 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: false + + /@uniswap/router-sdk@1.6.0(hardhat@2.17.0): + resolution: {integrity: sha512-onpAzcvEnrsm8tUtu49IrR9EP3n9j0IDpGc0Ee3FDDkVgXrp9cIrAADC+yb56vgLtJFnshbhyIdjXLMIzWe0Gw==} + dependencies: + '@ethersproject/abi': 5.7.0 + '@uniswap/sdk-core': 4.0.6 + '@uniswap/swap-router-contracts': 1.1.0(hardhat@2.17.0) + '@uniswap/v2-sdk': 3.2.0 + '@uniswap/v3-sdk': 3.10.0(hardhat@2.17.0) + transitivePeerDependencies: + - hardhat + dev: false + + /@uniswap/sdk-core@3.2.3: + resolution: {integrity: sha512-ERVYKa5ENPwDA6/UZ45H1D5xIqTFcvDYpLxcncOzX8vRXuCAupMUoFFH5s/xx8IMcstONsAOPR1h4vRCzUkSsA==} + engines: {node: '>=10'} + dependencies: + '@ethersproject/address': 5.7.0 + big.js: 5.2.2 + decimal.js-light: 2.5.1 + jsbi: 3.2.5 + tiny-invariant: 1.3.1 + toformat: 2.0.0 + dev: false + + /@uniswap/sdk-core@4.0.6: + resolution: {integrity: sha512-6GzCVfnOiJtvo91zlF/VjnC2OEbBRThVclzrh7+Zmo8dBovXwSlXwqn3RkSWACn/XEOzAKH70TficfOWm6mWJA==} + engines: {node: '>=10'} + dependencies: + '@ethersproject/address': 5.7.0 + big.js: 5.2.2 + decimal.js-light: 2.5.1 + jsbi: 3.2.5 + tiny-invariant: 1.3.1 + toformat: 2.0.0 + dev: false + + /@uniswap/smart-order-router@3.10.1(hardhat@2.17.0)(jsbi@3.2.5): + resolution: {integrity: sha512-lBE2arPkVeOG8TDldv4oU3ML6rbhVezYlpc/8k/L50D5lykeETQG6VKbPwNnxPJbP0zLj37To5hrAsHIhVvVMw==} + engines: {node: '>=10'} + peerDependencies: + jsbi: ^3.2.0 + dependencies: + '@uniswap/default-token-list': 2.3.0 + '@uniswap/permit2-sdk': 1.2.0 + '@uniswap/router-sdk': 1.6.0(hardhat@2.17.0) + '@uniswap/swap-router-contracts': 1.3.0(hardhat@2.17.0) + '@uniswap/token-lists': 1.0.0-beta.33 + '@uniswap/universal-router': 1.4.3 + '@uniswap/universal-router-sdk': 1.5.7(hardhat@2.17.0) + '@uniswap/v2-sdk': 3.2.0 + '@uniswap/v3-sdk': 3.10.0(hardhat@2.17.0) + async-retry: 1.3.3 + await-timeout: 1.1.1 + axios: 0.21.4 + bunyan: 1.8.15 + bunyan-blackhole: 1.1.1(bunyan@1.8.15) + ethers: 5.7.2 + graphql: 15.8.0 + graphql-request: 3.7.0(graphql@15.8.0) + jsbi: 3.2.5 + lodash: 4.17.21 + mnemonist: 0.38.5 + node-cache: 5.1.2 + stats-lite: 2.2.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - hardhat + - utf-8-validate + dev: false + + /@uniswap/swap-router-contracts@1.1.0(hardhat@2.17.0): + resolution: {integrity: sha512-GPmpx1lvjXWloB95+YUabr3UHJYr3scnSS8EzaNXnNrIz9nYZ+XQcMaJxOKe85Yi7IfcUQpj0HzD2TW99dtolA==} + engines: {node: '>=10'} + dependencies: + '@openzeppelin/contracts': 3.4.1-solc-0.7-2 + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.0 + '@uniswap/v3-periphery': 1.3.0(hardhat@2.17.0) + hardhat-watcher: 2.5.0(hardhat@2.17.0) + transitivePeerDependencies: + - hardhat + dev: false + + /@uniswap/swap-router-contracts@1.3.0(hardhat@2.17.0): + resolution: {integrity: sha512-iKvCuRkHXEe0EMjOf8HFUISTIhlxI57kKFllf3C3PUIE0HmwxrayyoflwAz5u/TRsFGYqJ9IjX2UgzLCsrNa5A==} + engines: {node: '>=10'} + dependencies: + '@openzeppelin/contracts': 3.4.2-solc-0.7 + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.0 + '@uniswap/v3-periphery': 1.4.1(hardhat@2.17.0) + dotenv: 14.3.2 + hardhat-watcher: 2.5.0(hardhat@2.17.0) + transitivePeerDependencies: + - hardhat + dev: false + + /@uniswap/token-lists@1.0.0-beta.33: + resolution: {integrity: sha512-JQkXcpRI3jFG8y3/CGC4TS8NkDgcxXaOQuYW8Qdvd6DcDiIyg2vVYCG9igFEzF0G6UvxgHkBKC7cWCgzZNYvQg==} + engines: {node: '>=10'} + dev: false + + /@uniswap/universal-router-sdk@1.5.7(hardhat@2.17.0): + resolution: {integrity: sha512-5T08dTZoAEN3W7fw467WoNwzfF8Ks5+t4/l0xVAhadUNq6UB/Ng9q5P70j+D+FVLwZbcbyv5zIkPtooADfjEKw==} + engines: {node: '>=14'} + dependencies: + '@uniswap/permit2-sdk': 1.2.0 + '@uniswap/router-sdk': 1.6.0(hardhat@2.17.0) + '@uniswap/sdk-core': 4.0.6 + '@uniswap/universal-router': 1.4.3 + '@uniswap/v2-sdk': 3.2.0 + '@uniswap/v3-sdk': 3.10.0(hardhat@2.17.0) + bignumber.js: 9.1.1 + ethers: 5.7.2 + transitivePeerDependencies: + - bufferutil + - hardhat + - utf-8-validate + dev: false + + /@uniswap/universal-router@1.4.3: + resolution: {integrity: sha512-SZmYfhYZtsuxrTMCitcA39iJuG9sbe2nvm9iQfd70WjMpbB0+GuEs5OqSHc5tB/ujrVKzPJ1LOoNNGOs0xPEeA==} + engines: {node: '>=14'} + dependencies: + '@openzeppelin/contracts': 4.7.0 + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.0 + dev: false + + /@uniswap/v2-core@1.0.1: + resolution: {integrity: sha512-MtybtkUPSyysqLY2U210NBDeCHX+ltHt3oADGdjqoThZaFRDKwM6k1Nb3F0A3hk5hwuQvytFWhrWHOEq6nVJ8Q==} + engines: {node: '>=10'} + dev: false + + /@uniswap/v2-sdk@3.2.0: + resolution: {integrity: sha512-kBOJ6Iwtgb/2LckLMIzfbPM37/ll0F+33lzPmZlqoJwsT0F2hZdVfAhclufZcSb0Y9RdLXl6372CZJ+lhx8cUQ==} + engines: {node: '>=10'} + dependencies: + '@ethersproject/address': 5.7.0 + '@ethersproject/solidity': 5.7.0 + '@uniswap/sdk-core': 4.0.6 + tiny-invariant: 1.3.1 + tiny-warning: 1.0.3 + dev: false + + /@uniswap/v3-core@1.0.0: + resolution: {integrity: sha512-kSC4djMGKMHj7sLMYVnn61k9nu+lHjMIxgg9CDQT+s2QYLoA56GbSK9Oxr+qJXzzygbkrmuY6cwgP6cW2JXPFA==} + engines: {node: '>=10'} + dev: false + + /@uniswap/v3-periphery@1.3.0(hardhat@2.17.0): + resolution: {integrity: sha512-HjHdI5RkjBl8zz3bqHShrbULFoZSrjbbrRHoO2vbzn+WRzTa6xY4PWphZv2Tlcb38YEKfKHp6NPl5hVedac8uw==} + engines: {node: '>=10'} + dependencies: + '@openzeppelin/contracts': 3.4.1-solc-0.7-2 + '@uniswap/lib': 4.0.1-alpha + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.0 + base64-sol: 1.0.1 + hardhat-watcher: 2.5.0(hardhat@2.17.0) + transitivePeerDependencies: + - hardhat + dev: false + + /@uniswap/v3-periphery@1.4.1(hardhat@2.17.0): + resolution: {integrity: sha512-Ab0ZCKOQrQMKIcpBTezTsEhWfQjItd0TtkCG8mPhoQu+wC67nPaf4hYUhM6wGHeFUmDiYY5MpEQuokB0ENvoTg==} + engines: {node: '>=10'} + dependencies: + '@openzeppelin/contracts': 3.4.2-solc-0.7 + '@uniswap/lib': 4.0.1-alpha + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.0 + base64-sol: 1.0.1 + hardhat-watcher: 2.5.0(hardhat@2.17.0) + transitivePeerDependencies: + - hardhat + dev: false + + /@uniswap/v3-periphery@1.4.3: + resolution: {integrity: sha512-80c+wtVzl5JJT8UQskxVYYG3oZb4pkhY0zDe0ab/RX4+8f9+W5d8wI4BT0wLB0wFQTSnbW+QdBSpkHA/vRyGBA==} + engines: {node: '>=10'} + dependencies: + '@openzeppelin/contracts': 3.4.2-solc-0.7 + '@uniswap/lib': 4.0.1-alpha + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.0 + base64-sol: 1.0.1 + dev: false + + /@uniswap/v3-sdk@3.10.0(hardhat@2.17.0): + resolution: {integrity: sha512-sbmSA1O+Ct960r66Ie/c1rOmVadpwRu8nQ79pGICv0pZJdnFIQ/SReG3F+iC2C2UNNjNP6aC2WDUggXrjyrgnA==} + engines: {node: '>=10'} + dependencies: + '@ethersproject/abi': 5.7.0 + '@ethersproject/solidity': 5.7.0 + '@uniswap/sdk-core': 4.0.6 + '@uniswap/swap-router-contracts': 1.3.0(hardhat@2.17.0) + '@uniswap/v3-periphery': 1.4.3 + '@uniswap/v3-staker': 1.0.0 + tiny-invariant: 1.3.1 + tiny-warning: 1.0.3 + transitivePeerDependencies: + - hardhat + dev: false + + /@uniswap/v3-staker@1.0.0: + resolution: {integrity: sha512-JV0Qc46Px5alvg6YWd+UIaGH9lDuYG/Js7ngxPit1SPaIP30AlVer1UYB7BRYeUVVxE+byUyIeN5jeQ7LLDjIw==} + engines: {node: '>=10'} + deprecated: Please upgrade to 1.0.1 + dependencies: + '@openzeppelin/contracts': 3.4.1-solc-0.7-2 + '@uniswap/v3-core': 1.0.0 + '@uniswap/v3-periphery': 1.4.3 + dev: false + + /@unlock-protocol/contracts@0.0.22: + resolution: {integrity: sha512-Vr3dMEBMBrQZ4tHY9HbGHNSKi4hWuRqt5G7zLI2WPDhhecBjTWD2ad6pY2EyGfoF/oIvhjdhi80uPJgxBSZlvA==} + dev: false + + /@unlock-protocol/networks@0.0.15: + resolution: {integrity: sha512-d0S7NY9J8Xr/v3cmNDPgVcfK3yc252fkoyRVzDYYRLp0e4DEuTKvBYJpIenXmov6+iFZAuLsiBU9F1rOpcDZeA==} + dev: false + + /@unlock-protocol/paywall@0.6.6: + resolution: {integrity: sha512-YLO0wiLDXb5bGwIj8nopprVh7E5/HcVe8Tnevl2WeanmKJFVcI3+NkxJKaJFkDQX33mRlW2kH1s4pEvdvgAI9A==} + dependencies: + postmate: 1.5.2 + dev: false + + /@unlock-protocol/unlock-js@0.38.3(axios@1.2.2)(ethers@5.7.2)(hardhat@2.17.0)(jsbi@3.2.5)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-Q1KBYFiFoOwT3M4BcgxG2nI5Spu0In78asg5BBUotMvgMM9DEPKbUhIdHxjO9OfXhxNboQSrAIOkVFwiRuO2yA==} + peerDependencies: + axios: 1.3.4 + ethers: ^5.7.x + dependencies: + '@uniswap/sdk-core': 3.2.3 + '@uniswap/smart-order-router': 3.10.1(hardhat@2.17.0)(jsbi@3.2.5) + axios: 1.2.2 + ethers: 5.7.2 + graphql: 16.6.0 + graphql-request: 5.1.0(graphql@16.6.0) + react-to-print: 2.14.12(react-dom@18.2.0)(react@18.2.0) + siwe: 2.1.4(ethers@5.7.2) + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - hardhat + - jsbi + - react + - react-dom + - utf-8-validate + dev: false + /@vanilla-extract/css@1.9.1: resolution: {integrity: sha512-pu2SFiff5jRhPwvGoj8cM5l/qIyLvigOmy22ss5DGjwV5pJYezRjDLxWumi2luIwioMWvh9EozCjyfH8nq+7fQ==} dependencies: @@ -11029,15 +11011,14 @@ packages: dependencies: '@whatwg-node/events': 0.0.3 tslib: 2.6.0 - dev: true + dev: false /@whatwg-node/events@0.0.2: resolution: {integrity: sha512-WKj/lI4QjnLuPrim0cfO7i+HsDSXHxNv1y0CrJhdntuO3hxWZmnXCwNDnwOvry11OjRin6cgWNF+j/9Pn8TN4w==} - dev: true + dev: false /@whatwg-node/events@0.0.3: resolution: {integrity: sha512-IqnKIDWfXBJkvy/k6tzskWTc2NK3LcqHlb+KHGCrjOCH4jfQckRX0NAiIcC/vIqQkzLYw2r2CTSwAxcrtcD6lA==} - dev: true /@whatwg-node/events@0.1.1: resolution: {integrity: sha512-AyQEn5hIPV7Ze+xFoXVU3QTHXVbWPrzaOkxtENMPMuNL6VVHrp4hHfDt9nrQpjO7BgvuM95dMtkycX5M/DZR3w==} @@ -11052,7 +11033,6 @@ packages: busboy: 1.6.0 urlpattern-polyfill: 8.0.2 web-streams-polyfill: 3.2.1 - dev: true /@whatwg-node/fetch@0.9.9: resolution: {integrity: sha512-OTVoDm039CNyAWSRc2WBimMl/N9J4Fk2le21Xzcf+3OiWPNNSIbMnpWKBUyraPh2d9SAEgoBdQxTfVNihXgiUw==} @@ -11070,7 +11050,6 @@ packages: fast-querystring: 1.1.2 fast-url-parser: 1.1.3 tslib: 2.6.0 - dev: true /@whatwg-node/node-fetch@0.4.13: resolution: {integrity: sha512-Wijn8jtXq6VBX6EttABXHJIQBcoOP6RRQllXbiaHGORACTDr1xg6g2UnkoggY3dbDkm1VsMjdSe7NVBPc4ukYg==} @@ -11088,7 +11067,7 @@ packages: dependencies: '@whatwg-node/fetch': 0.8.8 tslib: 2.6.0 - dev: true + dev: false /JSONStream@1.3.5: resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} @@ -11268,6 +11247,7 @@ packages: optional: true dependencies: ajv: 8.12.0 + dev: false /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} @@ -11322,7 +11302,6 @@ packages: /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} - dev: true /ansi-sequence-parser@1.1.0: resolution: {integrity: sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==} @@ -11347,7 +11326,6 @@ packages: /ansi-styles@6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} - dev: true /any-signal@3.0.1: resolution: {integrity: sha512-xgZgJtKEa9YmDqXodIgl7Fl1C8yNXr8w6gXjqK3LW4GcEiYT+6AQfJSE/8SPsEpLLmcvbv8YU+qet94UewHxqg==} @@ -11431,7 +11409,6 @@ packages: /array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - dev: true /array.prototype.flat@1.3.1: resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} @@ -11542,6 +11519,12 @@ packages: dependencies: tslib: 2.6.0 + /async-retry@1.3.3: + resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==} + dependencies: + retry: 0.13.1 + dev: false + /async@3.2.4: resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} @@ -11561,7 +11544,6 @@ packages: /auto-bind@4.0.0: resolution: {integrity: sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ==} engines: {node: '>=8'} - dev: true /autoprefixer@10.4.13(postcss@8.4.19): resolution: {integrity: sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==} @@ -11583,6 +11565,11 @@ packages: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} + /await-timeout@1.1.1: + resolution: {integrity: sha512-gsDXAS6XVc4Jt+7S92MPX6Noq69bdeXUPEaXd8dk3+yVr629LTDLxNt4j1ycBbrU+AStK2PhKIyNIM+xzWMVOQ==} + engines: {node: '>=6'} + dev: false + /aws-sign2@0.7.0: resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} dev: false @@ -11895,7 +11882,7 @@ packages: /base-64@0.1.0: resolution: {integrity: sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA==} - dev: true + dev: false /base-x@3.0.9: resolution: {integrity: sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==} @@ -11909,6 +11896,10 @@ packages: /base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + /base64-sol@1.0.1: + resolution: {integrity: sha512-ld3cCNMeXt4uJXmLZBHFGMvVpK9KsLVEhPpFRXnvSVAqABKbuNZg/+dsq3NuM+wxFLb/UrVkz7m1ciWmkMfTbg==} + dev: false + /bcrypt-pbkdf@1.0.2: resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} dependencies: @@ -11923,6 +11914,10 @@ packages: engines: {node: '>=0.6'} dev: true + /big.js@5.2.2: + resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} + dev: false + /bigint-buffer@1.1.5: resolution: {integrity: sha512-trfYco6AoZ+rKhKnxA0hgX0HAbVP/s808/EuDSe2JDzUnCp/xAsli35Orvk67UrTEcwuxZqYZDmfA2RXJgxVvA==} engines: {node: '>= 10.0.0'} @@ -12071,6 +12066,7 @@ packages: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} dependencies: balanced-match: 1.0.2 + dev: false /braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} @@ -12199,6 +12195,26 @@ packages: load-tsconfig: 0.2.5 dev: true + /bunyan-blackhole@1.1.1(bunyan@1.8.15): + resolution: {integrity: sha512-UwzNPhbbSqbzeJhCbygqjlAY7p0ZUdv1ADXPQvDh3CA7VW3C/rCc1gaQO/8j9QL4vsKQCQZQSQIEwX+lxioPAQ==} + peerDependencies: + bunyan: ~1.x.x + dependencies: + bunyan: 1.8.15 + stream-blackhole: 1.0.3 + dev: false + + /bunyan@1.8.15: + resolution: {integrity: sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig==} + engines: {'0': node >=0.10.0} + hasBin: true + optionalDependencies: + dtrace-provider: 0.8.8 + moment: 2.29.4 + mv: 2.1.1 + safe-json-stringify: 1.2.0 + dev: false + /busboy@1.6.0: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} @@ -12267,14 +12283,12 @@ packages: /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - dev: true /camel-case@4.1.2: resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} dependencies: pascal-case: 3.1.2 tslib: 2.6.0 - dev: true /camelcase-css@2.0.1: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} @@ -12310,7 +12324,6 @@ packages: no-case: 3.0.4 tslib: 2.6.0 upper-case-first: 2.0.2 - dev: true /case@1.6.3: resolution: {integrity: sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==} @@ -12391,7 +12404,7 @@ packages: title-case: 3.0.3 upper-case: 2.0.2 upper-case-first: 2.0.2 - dev: true + dev: false /change-case-all@1.0.15: resolution: {integrity: sha512-3+GIFhk3sNuvFAJKU46o26OdzudQlPNBCu1ZQi3cMeMHhty1bhDxu2WrEilVNYaGvqUtR1VSigFcJOiS13dRhQ==} @@ -12406,7 +12419,6 @@ packages: title-case: 3.0.3 upper-case: 2.0.2 upper-case-first: 2.0.2 - dev: true /change-case@4.1.2: resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==} @@ -12423,7 +12435,6 @@ packages: sentence-case: 3.0.4 snake-case: 3.0.4 tslib: 2.6.0 - dev: true /character-entities@2.0.2: resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} @@ -12595,6 +12606,11 @@ packages: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} + /clone@2.1.2: + resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} + engines: {node: '>=0.8'} + dev: false + /clsx@1.1.1: resolution: {integrity: sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==} engines: {node: '>=6'} @@ -12671,7 +12687,6 @@ packages: /common-tags@1.8.2: resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} engines: {node: '>=4.0.0'} - dev: true /commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} @@ -12739,7 +12754,6 @@ packages: no-case: 3.0.4 tslib: 2.6.0 upper-case: 2.0.2 - dev: true /content-disposition@0.5.4: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} @@ -12886,7 +12900,6 @@ packages: js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 - dev: true /cosmjs-types@0.7.2: resolution: {integrity: sha512-vf2uLyktjr/XVAgEq0DjMxeAWh1yYREe7AMHDKd7EiHVqxBPCaBS+qEEQUkXbR9ndnckqr1sUG8BQhazh4X5lA==} @@ -13057,7 +13070,6 @@ packages: /dataloader@2.2.2: resolution: {integrity: sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g==} - dev: true /date-fns@2.30.0: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} @@ -13067,7 +13079,7 @@ packages: /dayjs@1.11.7: resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==} - dev: true + dev: false /dayjs@1.11.9: resolution: {integrity: sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==} @@ -13139,6 +13151,10 @@ packages: engines: {node: '>=10'} dev: false + /decimal.js-light@2.5.1: + resolution: {integrity: sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==} + dev: false + /decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} dependencies: @@ -13279,7 +13295,6 @@ packages: /dependency-graph@0.11.0: resolution: {integrity: sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==} engines: {node: '>= 0.6.0'} - dev: true /deprecated-react-native-prop-types@4.1.0: resolution: {integrity: sha512-WfepZHmRbbdTvhcolb8aOKEvQdcmTMn5tKLbqbXmkBvjFjRVWAYqsXk/DBsV8TZxws8SdGHLuHaJrHSQUPRdfw==} @@ -13367,7 +13382,6 @@ packages: engines: {node: '>=8'} dependencies: path-type: 4.0.0 - dev: true /dlv@1.1.3: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} @@ -13388,7 +13402,7 @@ packages: dependencies: asap: 2.0.6 lodash.clone: 4.5.0 - dev: true + dev: false /doctrine@2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} @@ -13440,7 +13454,6 @@ packages: dependencies: no-case: 3.0.4 tslib: 2.6.0 - dev: true /dot-prop@5.3.0: resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} @@ -13454,15 +13467,27 @@ packages: engines: {node: '>=12'} dev: true + /dotenv@14.3.2: + resolution: {integrity: sha512-vwEppIphpFdvaMCaHfCEv9IgwcxMljMw2TnAQBB4VWPvzXQLTb82jwmdOKzlEVUL3gNFT4l4TPKO+Bn+sqcrVQ==} + engines: {node: '>=12'} + dev: false + /dotenv@16.3.1: resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} engines: {node: '>=12'} - dev: true /dset@3.1.2: resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} engines: {node: '>=4'} - dev: true + + /dtrace-provider@0.8.8: + resolution: {integrity: sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==} + engines: {node: '>=0.10'} + requiresBuild: true + dependencies: + nan: 2.17.0 + dev: false + optional: true /duplexify@4.1.2: resolution: {integrity: sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==} @@ -13474,7 +13499,6 @@ packages: /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - dev: true /ecc-jsbn@0.1.2: resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} @@ -13526,7 +13550,6 @@ packages: /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - dev: true /encode-utf8@1.0.3: resolution: {integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==} @@ -14572,48 +14595,10 @@ packages: engines: {node: '>=10.0.0'} dependencies: '@types/bn.js': 5.1.1 - bn.js: 5.2.1 - create-hash: 1.2.0 - ethereum-cryptography: 0.1.3 - rlp: 2.2.7 - dev: false - - /ethers@5.6.9: - resolution: {integrity: sha512-lMGC2zv9HC5EC+8r429WaWu3uWJUCgUCt8xxKCFqkrFuBDZXDYIdzDUECxzjf2BMF8IVBByY1EBoGSL3RTm8RA==} - dependencies: - '@ethersproject/abi': 5.6.4 - '@ethersproject/abstract-provider': 5.6.1 - '@ethersproject/abstract-signer': 5.6.2 - '@ethersproject/address': 5.6.1 - '@ethersproject/base64': 5.6.1 - '@ethersproject/basex': 5.6.1 - '@ethersproject/bignumber': 5.6.2 - '@ethersproject/bytes': 5.6.1 - '@ethersproject/constants': 5.6.1 - '@ethersproject/contracts': 5.6.2 - '@ethersproject/hash': 5.6.1 - '@ethersproject/hdnode': 5.6.2 - '@ethersproject/json-wallets': 5.6.1 - '@ethersproject/keccak256': 5.6.1 - '@ethersproject/logger': 5.6.0 - '@ethersproject/networks': 5.6.4 - '@ethersproject/pbkdf2': 5.6.1 - '@ethersproject/properties': 5.6.0 - '@ethersproject/providers': 5.6.8 - '@ethersproject/random': 5.6.1 - '@ethersproject/rlp': 5.6.1 - '@ethersproject/sha2': 5.6.1 - '@ethersproject/signing-key': 5.6.2 - '@ethersproject/solidity': 5.6.1 - '@ethersproject/strings': 5.6.1 - '@ethersproject/transactions': 5.6.2 - '@ethersproject/units': 5.6.1 - '@ethersproject/wallet': 5.6.2 - '@ethersproject/web': 5.6.1 - '@ethersproject/wordlists': 5.6.1 - transitivePeerDependencies: - - bufferutil - - utf-8-validate + bn.js: 5.2.1 + create-hash: 1.2.0 + ethereum-cryptography: 0.1.3 + rlp: 2.2.7 dev: false /ethers@5.7.2: @@ -14816,7 +14801,11 @@ packages: /extract-files@11.0.0: resolution: {integrity: sha512-FuoE1qtbJ4bBVvv94CC7s0oTnKUGvQs+Rjf1L2SJFfS+HTVVjhPFtehPdQ0JiGPqVNfSSZvL5yzHHQq2Z4WNhQ==} engines: {node: ^12.20 || >= 14.13} - dev: true + + /extract-files@9.0.0: + resolution: {integrity: sha512-CvdFfHkC95B4bBBk36hcEmvdR2awOdhhVUYH6S/zrVj3477zven/fJMYg7121h4T1xHZC+tetUpubpAhxwI7hQ==} + engines: {node: ^10.17.0 || ^12.0.0 || >= 13.7.0} + dev: false /extsprintf@1.3.0: resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} @@ -14829,7 +14818,6 @@ packages: /fast-decode-uri-component@1.0.1: resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} - dev: true /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -14863,7 +14851,6 @@ packages: resolution: {integrity: sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==} dependencies: fast-decode-uri-component: 1.0.1 - dev: true /fast-redact@3.2.0: resolution: {integrity: sha512-zaTadChr+NekyzallAMXATXLOR8MNx3zqpZ0MUF2aGf4EathnG0f32VLODNlY8IuGY3HoRO2L6/6fSzNsLaHIw==} @@ -14879,7 +14866,6 @@ packages: resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} dependencies: punycode: 1.4.1 - dev: true /fast-xml-parser@4.2.7: resolution: {integrity: sha512-J8r6BriSLO1uj2miOk1NW0YVm8AGOOu3Si2HQp/cSmo6EA4m3fcwu2WKjJ4RK9wMLBtg69y1kS8baDiQBR41Ig==} @@ -14899,7 +14885,6 @@ packages: /fbjs-css-vars@1.0.2: resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==} - dev: true /fbjs@3.0.5: resolution: {integrity: sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==} @@ -14913,7 +14898,6 @@ packages: ua-parser-js: 1.0.35 transitivePeerDependencies: - encoding - dev: true /fetch-blob@3.2.0: resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} @@ -14938,7 +14922,7 @@ packages: tslib: 2.6.0 zod: 3.21.4 zod-to-json-schema: 3.21.4(zod@3.21.4) - dev: true + dev: false /figures@3.2.0: resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} @@ -15088,7 +15072,7 @@ packages: /foreach@2.0.6: resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==} - dev: true + dev: false /foreground-child@3.1.1: resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} @@ -15096,7 +15080,7 @@ packages: dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 - dev: true + dev: false /forever-agent@0.6.1: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} @@ -15115,6 +15099,15 @@ packages: mime-types: 2.1.35 dev: false + /form-data@3.0.1: + resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==} + engines: {node: '>= 6'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: false + /form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} @@ -15351,7 +15344,18 @@ packages: minimatch: 9.0.3 minipass: 7.0.3 path-scurry: 1.10.1 - dev: true + dev: false + + /glob@6.0.4: + resolution: {integrity: sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==} + dependencies: + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: false + optional: true /glob@7.1.7: resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} @@ -15426,7 +15430,6 @@ packages: ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 - dev: true /globby@13.2.2: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} @@ -15522,7 +15525,34 @@ packages: graphql: '*' dependencies: graphql: 16.8.0 - dev: true + dev: false + + /graphql-request@3.7.0(graphql@15.8.0): + resolution: {integrity: sha512-dw5PxHCgBneN2DDNqpWu8QkbbJ07oOziy8z+bK/TAXufsOLaETuVO4GkXrbs0WjhdKhBMN3BkpN/RIvUHkmNUQ==} + peerDependencies: + graphql: 14 - 16 + dependencies: + cross-fetch: 3.1.8 + extract-files: 9.0.0 + form-data: 3.0.1 + graphql: 15.8.0 + transitivePeerDependencies: + - encoding + dev: false + + /graphql-request@5.1.0(graphql@16.6.0): + resolution: {integrity: sha512-0OeRVYigVwIiXhNmqnPDt+JhMzsjinxHE7TVy3Lm6jUzav0guVcL0lfSbi6jVTRAxcbwgyr6yrZioSHxf9gHzw==} + peerDependencies: + graphql: 14 - 16 + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.6.0) + cross-fetch: 3.1.8 + extract-files: 9.0.0 + form-data: 3.0.1 + graphql: 16.6.0 + transitivePeerDependencies: + - encoding + dev: false /graphql-request@6.1.0(graphql@16.8.0): resolution: {integrity: sha512-p+XPfS4q7aIpKVcgmnZKhMNqhltk20hfXtkaIkTfjjmiKMJ5xrt5c743cL03y/K7y1rg3WrIC49xGiEQ4mxdNw==} @@ -15543,7 +15573,6 @@ packages: dependencies: graphql: 16.8.0 tslib: 2.6.0 - dev: true /graphql-ws@5.12.1(graphql@16.8.0): resolution: {integrity: sha512-umt4f5NnMK46ChM2coO36PTFhHouBrK9stWWBczERguwYrGnPNxJ9dimU6IyOBfOkC6Izhkg4H8+F51W/8CYDg==} @@ -15552,7 +15581,7 @@ packages: graphql: '>=0.11 <=16' dependencies: graphql: 16.8.0 - dev: true + dev: false /graphql-ws@5.14.0(graphql@16.8.0): resolution: {integrity: sha512-itrUTQZP/TgswR4GSSYuwWUzrE/w5GhbwM2GX3ic2U7aw33jgEsayfIlvaj7/GcIvZgNMzsPTrE5hqPuFUiE5g==} @@ -15561,7 +15590,6 @@ packages: graphql: '>=0.11 <=16' dependencies: graphql: 16.8.0 - dev: true /graphql-yoga@3.9.1(graphql@16.8.0): resolution: {integrity: sha512-BB6EkN64VBTXWmf9Kym2OsVZFzBC0mAsQNo9eNB5xIr3t+x7qepQ34xW5A353NWol3Js3xpzxwIKFVF6l9VsPg==} @@ -15581,7 +15609,17 @@ packages: graphql: 16.8.0 lru-cache: 7.18.3 tslib: 2.6.0 - dev: true + dev: false + + /graphql@15.8.0: + resolution: {integrity: sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==} + engines: {node: '>= 10.x'} + dev: false + + /graphql@16.6.0: + resolution: {integrity: sha512-KPIBPDlW7NxrbT/eh4qPXz5FiFdL5UbaA0XUNz2Rp3Z3hqBSkbj0GVjwFDztsWVauZUWsbKHgMg++sk8UX0bkw==} + engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + dev: false /graphql@16.8.0: resolution: {integrity: sha512-0oKGaR+y3qcS5mCu1vb7KG+a89vjn06C7Ihq/dDl3jA+A8B3TKomvi3CiEcVLJQGalbu8F52LxkOym7U5sSfbg==} @@ -15614,6 +15652,15 @@ packages: engines: {node: '>=6'} dev: true + /hardhat-watcher@2.5.0(hardhat@2.17.0): + resolution: {integrity: sha512-Su2qcSMIo2YO2PrmJ0/tdkf+6pSt8zf9+4URR5edMVti6+ShI8T3xhPrwugdyTOFuyj8lKHrcTZNKUFYowYiyA==} + peerDependencies: + hardhat: ^2.0.0 + dependencies: + chokidar: 3.5.3 + hardhat: 2.17.0(ts-node@10.9.1)(typescript@5.0.4) + dev: false + /hardhat@2.17.0(ts-node@10.9.1)(typescript@5.0.4): resolution: {integrity: sha512-CaEGa13tkJNe2/rdaBiive4pmdNShwxvdWVhr1zfb6aVpRhQt9VNO0l/UIBt/zzajz38ZFjvhfM2bj8LDXo9gw==} engines: {node: '>=16.0.0'} @@ -15732,7 +15779,7 @@ packages: /hash-it@6.0.0: resolution: {integrity: sha512-KHzmSFx1KwyMPw0kXeeUD752q/Kfbzhy6dAZrjXV9kAIXGqzGvv8vhkUqj+2MGZldTo0IBpw6v7iWE7uxsvH0w==} - dev: true + dev: false /hash.js@1.1.7: resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} @@ -15754,7 +15801,6 @@ packages: dependencies: capital-case: 1.0.4 tslib: 2.6.0 - dev: true /hermes-estree@0.12.0: resolution: {integrity: sha512-+e8xR6SCen0wyAKrMT3UD0ZCCLymKhRgjEB5sS28rKiFir/fXgLoeRilRUssFCILmGHb+OvHDUlhxs0+IEyvQw==} @@ -15803,7 +15849,7 @@ packages: /hotscript@1.0.13: resolution: {integrity: sha512-C++tTF1GqkGYecL+2S1wJTfoH6APGAsbb7PAWQ3iVIwgG/EFseAfEVOKFgAFq4yK3+6j1EjUD4UQ9dRJHX/sSQ==} - dev: true + dev: false /html-dom-parser@1.2.0: resolution: {integrity: sha512-2HIpFMvvffsXHFUFjso0M9LqM+1Lm22BF+Df2ba+7QHJXjk63pWChEnI6YG27eaWqUdfnh5/Vy+OXrNTtepRsg==} @@ -15968,7 +16014,6 @@ packages: /ignore@5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} - dev: true /image-size@1.0.2: resolution: {integrity: sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==} @@ -15979,6 +16024,7 @@ packages: /immediate@3.0.6: resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} + dev: false /immediate@3.2.3: resolution: {integrity: sha512-RrGCXRm/fRVqMIhqXrGEX9rRADavPiDFSoMb/k64i9XMk8uH4r/Omi5Ctierj6XzNecwDbO4WuFbDD1zmpl3Tg==} @@ -15995,7 +16041,6 @@ packages: /immutable@3.7.6: resolution: {integrity: sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==} engines: {node: '>=0.8.0'} - dev: true /immutable@4.3.1: resolution: {integrity: sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==} @@ -16014,12 +16059,10 @@ packages: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 - dev: true /import-from@4.0.0: resolution: {integrity: sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==} engines: {node: '>=12.2'} - dev: true /imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} @@ -16303,7 +16346,6 @@ packages: dependencies: is-relative: 1.0.0 is-windows: 1.0.2 - dev: true /is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} @@ -16372,7 +16414,6 @@ packages: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} hasBin: true - dev: true /is-docker@3.0.0: resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} @@ -16450,7 +16491,6 @@ packages: resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} dependencies: tslib: 2.6.0 - dev: true /is-map@2.0.2: resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} @@ -16520,7 +16560,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-unc-path: 1.0.0 - dev: true /is-set@2.0.2: resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} @@ -16580,7 +16619,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: unc-path-regex: 0.1.2 - dev: true /is-unicode-supported@0.1.0: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} @@ -16595,7 +16633,6 @@ packages: resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} dependencies: tslib: 2.6.0 - dev: true /is-weakmap@2.0.1: resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} @@ -16617,7 +16654,6 @@ packages: /is-windows@1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} - dev: true /is-wsl@1.1.0: resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} @@ -16628,7 +16664,6 @@ packages: engines: {node: '>=8'} dependencies: is-docker: 2.2.1 - dev: true /isarray@0.0.1: resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} @@ -16644,6 +16679,10 @@ packages: /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + /isnumber@1.0.0: + resolution: {integrity: sha512-JLiSz/zsZcGFXPrB4I/AGBvtStkt+8QmksyZBZnVXnnK9XdTEyz0tX8CRYljtwYDuIuZzih6DpHQdi+3Q6zHPw==} + dev: false + /iso-url@1.2.1: resolution: {integrity: sha512-9JPDgCN4B7QPkLtYAAOrEuAWvP9rWvR5offAr0/SeF046wIkglqH3VXgYYP6NcsKslH80UIVgmPqNe3j7tG2ng==} engines: {node: '>=12'} @@ -16682,7 +16721,6 @@ packages: ws: '*' dependencies: ws: 8.13.0(bufferutil@4.0.7)(utf-8-validate@5.0.10) - dev: true /isstream@0.1.2: resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} @@ -16770,7 +16808,7 @@ packages: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - dev: true + dev: false /jayson@4.1.0: resolution: {integrity: sha512-R6JlbyLN53Mjku329XoRT2zJAE6ZgOQ8f91ucYdMCD4nkGCF9kZSrcGXpHIU4jeKj58zUZke2p+cdQchU7Ly7A==} @@ -16967,6 +17005,10 @@ packages: dependencies: argparse: 2.0.1 + /jsbi@3.2.5: + resolution: {integrity: sha512-aBE4n43IPvjaddScbvWRA2YlTzKEynHzu7MqOyTipdHucf/VxS63ViCjxYRg86M8Rxwbt/GfzHl1kKERkt45fQ==} + dev: false + /jsbn@0.1.1: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} dev: false @@ -17017,7 +17059,7 @@ packages: /json-bigint-patch@0.0.8: resolution: {integrity: sha512-xa0LTQsyaq8awYyZyuUsporWisZFiyqzxGW8CKM3t7oouf0GFAKYJnqAm6e9NLNBQOCtOLvy614DEiRX/rPbnA==} - dev: true + dev: false /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -17028,13 +17070,12 @@ packages: /json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - dev: true /json-pointer@0.6.2: resolution: {integrity: sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==} dependencies: foreach: 2.0.6 - dev: true + dev: false /json-rpc-engine@6.1.0: resolution: {integrity: sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==} @@ -17053,7 +17094,7 @@ packages: '@babel/runtime': 7.22.6 '@types/json-schema': 7.0.12 ts-algebra: 1.2.0 - dev: true + dev: false /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -17327,7 +17368,7 @@ packages: resolution: {integrity: sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==} dependencies: immediate: 3.0.6 - dev: true + dev: false /lie@3.3.0: resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} @@ -17346,7 +17387,6 @@ packages: /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - dev: true /lint-staged@13.1.0: resolution: {integrity: sha512-pn/sR8IrcF/T0vpWLilih8jmVouMlxqXxKuAojmbiGX5n/gDnz+abdPptlj0vYnbfE0SQNl3CY/HwtM0+yfOVQ==} @@ -17491,7 +17531,7 @@ packages: resolution: {integrity: sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==} dependencies: lie: 3.1.1 - dev: true + dev: false /locate-path@2.0.0: resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} @@ -17568,13 +17608,14 @@ packages: /lodash.clone@4.5.0: resolution: {integrity: sha512-GhrVeweiTD6uTmmn5hV/lzgCQhccwReIVRLHp7LT4SopOjqEZ5BbX8b5WWEtAKasjmy8hR7ZPwsYlxRCku5odg==} - dev: true + dev: false /lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} /lodash.get@4.4.2: resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} + dev: false /lodash.isequal@4.5.0: resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} @@ -17614,7 +17655,7 @@ packages: /lodash.topath@4.5.2: resolution: {integrity: sha512-1/W4dM+35DwvE/iEd1M9ekewOSTlpFekhw9mhAtrwjVqUr83/ilQiyAvmg4tVX7Unkcfl1KC+i9WdaT4B6aQcg==} - dev: true + dev: false /lodash.uniq@4.5.0: resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} @@ -17691,13 +17732,11 @@ packages: resolution: {integrity: sha512-EVm/rR94FJTZi3zefZ82fLWab+GX14LJN4HrWBcuo6Evmsl9hEfnqxgcHCKb9q+mNf6EVdsjx/qucYFIIB84pg==} dependencies: tslib: 2.6.0 - dev: true /lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} dependencies: tslib: 2.6.0 - dev: true /lowercase-keys@2.0.0: resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} @@ -17712,7 +17751,7 @@ packages: /lru-cache@10.0.1: resolution: {integrity: sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==} engines: {node: 14 || >=16.14} - dev: true + dev: false /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -17728,7 +17767,7 @@ packages: /lru-cache@7.18.3: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} - dev: true + dev: false /lru-queue@0.1.0: resolution: {integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==} @@ -17776,7 +17815,6 @@ packages: /map-cache@0.2.2: resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} engines: {node: '>=0.10.0'} - dev: true /map-obj@1.0.1: resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} @@ -17994,7 +18032,6 @@ packages: optional: true dependencies: '@types/node': 17.0.31 - dev: true /methods@1.1.2: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} @@ -18661,7 +18698,7 @@ packages: engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 - dev: true + dev: false /minimist-options@4.1.0: resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} @@ -18685,7 +18722,7 @@ packages: /minipass@7.0.3: resolution: {integrity: sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg==} engines: {node: '>=16 || 14 >=14.17'} - dev: true + dev: false /minizlib@1.3.3: resolution: {integrity: sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==} @@ -18711,6 +18748,7 @@ packages: resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} engines: {node: '>=10'} hasBin: true + dev: false /mnemonist@0.38.5: resolution: {integrity: sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==} @@ -18905,6 +18943,22 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true + /mv@2.1.1: + resolution: {integrity: sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==} + engines: {node: '>=0.8.0'} + requiresBuild: true + dependencies: + mkdirp: 0.5.6 + ncp: 2.0.0 + rimraf: 2.4.5 + dev: false + optional: true + + /nan@2.17.0: + resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==} + dev: false + optional: true + /nano-json-stream-parser@0.1.2: resolution: {integrity: sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==} dev: false @@ -18940,6 +18994,12 @@ packages: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true + /ncp@2.0.0: + resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==} + hasBin: true + dev: false + optional: true + /negotiator@0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} @@ -19023,7 +19083,6 @@ packages: dependencies: lower-case: 2.0.2 tslib: 2.6.0 - dev: true /nocache@3.0.4: resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==} @@ -19035,6 +19094,13 @@ packages: /node-addon-api@2.0.2: resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + /node-cache@5.1.2: + resolution: {integrity: sha512-t1QzWwnk4sjLWaQAS8CHgOJ+RAfmHpxFWmc36IWTiWHQfs0w5JDMBS1b1ZxQteo0vVVuWJvIUKHDkkeK7vIGCg==} + engines: {node: '>= 8.0.0'} + dependencies: + clone: 2.1.2 + dev: false + /node-dir@0.1.17: resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} engines: {node: '>= 0.10.5'} @@ -19104,7 +19170,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: remove-trailing-separator: 1.1.0 - dev: true /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} @@ -19172,7 +19237,7 @@ packages: /object-inspect@1.10.3: resolution: {integrity: sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==} - dev: true + dev: false /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} @@ -19296,7 +19361,7 @@ packages: dependencies: is-docker: 2.2.1 is-wsl: 2.2.0 - dev: true + dev: false /open@9.1.0: resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==} @@ -19310,7 +19375,7 @@ packages: /openapi-types@12.1.3: resolution: {integrity: sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==} - dev: true + dev: false /openpgp@5.9.0: resolution: {integrity: sha512-wEI6TAinCAq8ZLZA4oZ3ZtJ2BhhHj+CiPCd8TzE7zCicr0V8tvG5UF76OtddLLOJcK63w3Aj3KiRd+VLMScirQ==} @@ -19492,14 +19557,12 @@ packages: dependencies: dot-case: 3.0.4 tslib: 2.6.0 - dev: true /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} dependencies: callsites: 3.1.0 - dev: true /parse-duration@1.1.0: resolution: {integrity: sha512-z6t9dvSJYaPoQq7quMzdEagSFtpGu+utzHqqxmpVWNNZRIXnvqyCvn9XsTdh7c/w0Bqmdz3RB3YnRaKtpRtEXQ==} @@ -19512,7 +19575,6 @@ packages: is-absolute: 1.0.0 map-cache: 0.2.2 path-root: 0.1.1 - dev: true /parse-headers@2.0.5: resolution: {integrity: sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==} @@ -19533,7 +19595,6 @@ packages: error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 - dev: true /parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} @@ -19544,18 +19605,16 @@ packages: dependencies: no-case: 3.0.4 tslib: 2.6.0 - dev: true /path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - dev: true + dev: false /path-case@3.0.4: resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==} dependencies: dot-case: 3.0.4 tslib: 2.6.0 - dev: true /path-exists@3.0.0: resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} @@ -19589,14 +19648,12 @@ packages: /path-root-regex@0.1.2: resolution: {integrity: sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==} engines: {node: '>=0.10.0'} - dev: true /path-root@0.1.1: resolution: {integrity: sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==} engines: {node: '>=0.10.0'} dependencies: path-root-regex: 0.1.2 - dev: true /path-scurry@1.10.1: resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} @@ -19604,7 +19661,7 @@ packages: dependencies: lru-cache: 10.0.1 minipass: 7.0.3 - dev: true + dev: false /path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} @@ -19619,7 +19676,6 @@ packages: /path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - dev: true /pathe@1.1.1: resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} @@ -19821,6 +19877,10 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 + /postmate@1.5.2: + resolution: {integrity: sha512-EHLlEmrUA/hALls49oBrtE7BzDXXjB9EiO4MZpsoO3R/jRuBmD+2WKQuYAbeuVEpTzrPpUTT79z2cz4qaFgPRg==} + dev: false + /preact@10.16.0: resolution: {integrity: sha512-XTSj3dJ4roKIC93pald6rWuB2qQJO9gO2iLLyTe87MrjQN+HklueLsmskbywEWqCHlclgz3/M4YLL2iBr9UmMA==} @@ -19904,7 +19964,6 @@ packages: resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} dependencies: asap: 2.0.6 - dev: true /promise@8.3.0: resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==} @@ -20012,7 +20071,6 @@ packages: /punycode@1.4.1: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - dev: true /punycode@2.1.0: resolution: {integrity: sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==} @@ -20303,11 +20361,11 @@ packages: base-64: 0.1.0 react-native: 0.72.4(@babel/core@7.18.5)(@babel/preset-env@7.22.9)(react@18.2.0) utf8: 3.0.0 - dev: true + dev: false /react-native-path@0.0.5: resolution: {integrity: sha512-WJr256xBquk7X2O83QYWKqgLg43Zg3SrgjPc/kr0gCD2LoXA+2L72BW4cmstH12GbGeutqs/eXk3jgDQ2iCSvQ==} - dev: true + dev: false /react-native@0.72.4(@babel/core@7.18.5)(@babel/preset-env@7.22.9)(react@18.2.0): resolution: {integrity: sha512-+vrObi0wZR+NeqL09KihAAdVlQ9IdplwznJWtYrjnQ4UbCW6rkzZJebRsugwUneSOKNFaHFEo1uKU89HsgtYBg==} @@ -20470,6 +20528,17 @@ packages: react: 18.2.0 dev: false + /react-to-print@2.14.12(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-qFJAwvDFd95Z+FWNqitt+HaB1/z+Zdd0MMrNOPUSus3fG32vqv512yB+HXhQ94J3HKoyqaIg44v0Zfc6xUBqlg==} + peerDependencies: + react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + dependencies: + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + /react-wrap-balancer@0.3.0(react@18.2.0): resolution: {integrity: sha512-UlnQvCvSRW0jh8uILic2LJs4tV0KjOO+P70ookE5qRpfZvsKmY8KLcV8s7TBPB6cuVYkoH7+fbqankFrFata8w==} peerDependencies: @@ -20639,7 +20708,6 @@ packages: invariant: 2.2.4 transitivePeerDependencies: - encoding - dev: true /remark-parse@10.0.2: resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==} @@ -20666,7 +20734,6 @@ packages: /remove-trailing-separator@1.1.0: resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} - dev: true /remove-trailing-spaces@1.0.8: resolution: {integrity: sha512-O3vsMYfWighyFbTd8hk8VaSj9UAGENxAtX+//ugIst2RMk5e03h6RoIS+0ylsFxY1gvmPuAY/PO4It+gPEeySA==} @@ -20730,12 +20797,10 @@ packages: /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} - dev: true /resolve-from@5.0.0: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} - dev: true /resolve-global@1.0.0: resolution: {integrity: sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==} @@ -20801,13 +20866,25 @@ packages: engines: {node: '>= 4'} dev: false + /retry@0.13.1: + resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} + engines: {node: '>= 4'} + dev: false + /reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} /rfdc@1.3.0: resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} - dev: true + + /rimraf@2.4.5: + resolution: {integrity: sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==} + hasBin: true + dependencies: + glob: 6.0.4 + dev: false + optional: true /rimraf@2.6.3: resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} @@ -20819,7 +20896,7 @@ packages: resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} hasBin: true dependencies: - glob: 7.2.0 + glob: 7.2.3 dev: false /rimraf@3.0.2: @@ -20834,7 +20911,7 @@ packages: hasBin: true dependencies: glob: 10.3.3 - dev: true + dev: false /ripemd160@2.0.2: resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} @@ -20929,6 +21006,12 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + /safe-json-stringify@1.2.0: + resolution: {integrity: sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==} + requiresBuild: true + dev: false + optional: true + /safe-json-utils@1.1.1: resolution: {integrity: sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ==} @@ -21028,7 +21111,6 @@ packages: no-case: 3.0.4 tslib: 2.6.0 upper-case-first: 2.0.2 - dev: true /serialize-error@2.1.0: resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==} @@ -21129,11 +21211,10 @@ packages: /signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - dev: true + dev: false /signedsource@1.0.0: resolution: {integrity: sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww==} - dev: true /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} @@ -21185,7 +21266,7 @@ packages: /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - /siwe@1.1.6(ethers@5.6.9): + /siwe@1.1.6(ethers@5.7.2): resolution: {integrity: sha512-3WRdEil32Tc2vuNzqJ2/Z/MIvsvy0Nkzc2ov+QujmpHO7tM83dgcb47z0Pu236T4JQkOQCqQkq3AJ/rVIezniA==} peerDependencies: ethers: 5.5.1 @@ -21193,18 +21274,19 @@ packages: '@spruceid/siwe-parser': 1.1.3 '@stablelib/random': 1.0.2 apg-js: 4.1.3 - ethers: 5.6.9 + ethers: 5.7.2 dev: false - /siwe@1.1.6(ethers@5.7.2): - resolution: {integrity: sha512-3WRdEil32Tc2vuNzqJ2/Z/MIvsvy0Nkzc2ov+QujmpHO7tM83dgcb47z0Pu236T4JQkOQCqQkq3AJ/rVIezniA==} + /siwe@2.1.4(ethers@5.7.2): + resolution: {integrity: sha512-Dke1Qqa3mgiLm3vjqw/+SQ7dl8WV/Pfk3AlQBF94cBFydTYhztngqYrikzE3X5UTsJ6565dfVbQptszsuYZNYg==} peerDependencies: - ethers: 5.5.1 + ethers: ^5.6.8 || ^6.0.8 dependencies: '@spruceid/siwe-parser': 1.1.3 '@stablelib/random': 1.0.2 - apg-js: 4.1.3 ethers: 5.7.2 + uri-js: 4.4.1 + valid-url: 1.0.9 dev: false /slash@3.0.0: @@ -21255,7 +21337,6 @@ packages: dependencies: dot-case: 3.0.4 tslib: 2.6.0 - dev: true /socket.io-client@4.7.1: resolution: {integrity: sha512-Qk3Xj8ekbnzKu3faejo4wk2MzXA029XppiXtTF/PkbTg+fcwaTw1PlDrTrrrU4mKoYC4dvlApOnSeyLCKwek2w==} @@ -21384,7 +21465,6 @@ packages: resolution: {integrity: sha512-dblb9Et4DAtiZ5YSUZHLl4XhH4uK80GhAZrVXdN4O2P4gQ40Wa5UIOPUHlA/nFd2PLblBZWUioLMMAVrgpoYcA==} dependencies: tslib: 2.6.0 - dev: true /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -21425,6 +21505,13 @@ packages: dependencies: type-fest: 0.7.1 + /stats-lite@2.2.0: + resolution: {integrity: sha512-/Kz55rgUIv2KP2MKphwYT/NCuSfAlbbMRv2ZWw7wyXayu230zdtzhxxuXXcvsc6EmmhS8bSJl3uS1wmMHFumbA==} + engines: {node: '>=2.0.0'} + dependencies: + isnumber: 1.0.0 + dev: false + /statuses@1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} @@ -21447,6 +21534,10 @@ packages: internal-slot: 1.0.5 dev: true + /stream-blackhole@1.0.3: + resolution: {integrity: sha512-7NWl3dkmCd12mPkEwTbBPGxwvxj7L4O9DTjJudn02Fmk9K+RuPaDF8zeGo3kmjbsffU5E1aGpZ1dTR9AaRg6AQ==} + dev: false + /stream-browserify@3.0.0: resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} dependencies: @@ -21499,7 +21590,6 @@ packages: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 - dev: true /string.prototype.matchall@4.0.8: resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} @@ -21566,12 +21656,10 @@ packages: engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 - dev: true /strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} - dev: true /strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} @@ -21712,7 +21800,6 @@ packages: resolution: {integrity: sha512-kc6S2YS/2yXbtkSMunBtKdah4VFETZ8Oh6ONSmSd9bRxhqTrtARUCBUiWXH3xVPpvR7tz2CSnkuXVE42EcGnMw==} dependencies: tslib: 2.6.0 - dev: true /swarm-js@0.1.42: resolution: {integrity: sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==} @@ -21877,16 +21964,23 @@ packages: next-tick: 1.1.0 dev: false + /tiny-invariant@1.3.1: + resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} + dev: false + /tiny-lru@8.0.2: resolution: {integrity: sha512-ApGvZ6vVvTNdsmt676grvCkUCGwzG9IqXma5Z07xJgiC5L7akUMof5U8G2JTI9Rz/ovtVhJBlY6mNhEvtjzOIg==} engines: {node: '>=6'} - dev: true + dev: false + + /tiny-warning@1.0.3: + resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} + dev: false /title-case@3.0.3: resolution: {integrity: sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==} dependencies: tslib: 2.6.0 - dev: true /titleize@3.0.0: resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} @@ -21912,6 +22006,10 @@ packages: dependencies: is-number: 7.0.0 + /toformat@2.0.0: + resolution: {integrity: sha512-03SWBVop6nU8bpyZCx7SodpYznbZF5R4ljwNLBcTQzKOD9xuihRo/psX58llS1BMFhhAI08H3luot5GoXJz2pQ==} + dev: false + /toggle-selection@1.0.6: resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} @@ -21955,7 +22053,7 @@ packages: /ts-algebra@1.2.0: resolution: {integrity: sha512-kMuJJd8B2N/swCvIvn1hIFcIOrLGbWl9m/J6O3kHx9VRaevh00nvgjPiEGaRee7DRaAczMYR2uwWvXU22VFltw==} - dev: true + dev: false /ts-log@2.2.5: resolution: {integrity: sha512-PGcnJoTBnVGy6yYNFxWVNkdcAuAMstvutN9MgDJIV6L0oG8fB+ZNNy1T+wJzah8RPGor1mZuPQkVfXNDpy9eHA==} @@ -22011,18 +22109,17 @@ packages: json5: 2.2.3 minimist: 1.2.8 strip-bom: 3.0.0 - dev: true + dev: false /tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} /tslib@2.4.1: resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} - dev: true + dev: false /tslib@2.5.3: resolution: {integrity: sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==} - dev: true /tslib@2.6.0: resolution: {integrity: sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==} @@ -22194,7 +22291,6 @@ packages: /ua-parser-js@1.0.35: resolution: {integrity: sha512-fKnGuqmTBnIE+/KXSzCn4db8RTigUzw1AN0DmdU6hJovUTbYJKyqj+8Mt1c4VfRDnOVJnENmfYkIPZ946UrSAA==} - dev: true /uglify-es@3.3.9: resolution: {integrity: sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==} @@ -22239,7 +22335,6 @@ packages: /unc-path-regex@0.1.2: resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==} engines: {node: '>=0.10.0'} - dev: true /undici@5.22.1: resolution: {integrity: sha512-Ji2IJhFXZY0x/0tVBXeQwgPlLWw13GVzpsWPQ3rV50IFMMof2I55PZZxtm4P6iNq+L5znYN9nSTAq0ZyE6lSJw==} @@ -22330,7 +22425,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: normalize-path: 2.1.1 - dev: true /unpipe@1.0.0: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} @@ -22355,13 +22449,11 @@ packages: resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==} dependencies: tslib: 2.6.0 - dev: true /upper-case@2.0.2: resolution: {integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==} dependencies: tslib: 2.6.0 - dev: true /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -22381,7 +22473,6 @@ packages: /urlpattern-polyfill@8.0.2: resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==} - dev: true /urlpattern-polyfill@9.0.0: resolution: {integrity: sha512-WHN8KDQblxd32odxeIgo83rdVDE2bvdkb86it7bMhYZwWKJz0+O0RK/eZiHYnM+zgt/U7hAHOlCQGfjjvSkw2g==} @@ -22458,6 +22549,7 @@ packages: /utf8@3.0.0: resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==} + dev: false /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -22508,6 +22600,10 @@ packages: /v8-compile-cache-lib@3.0.1: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + /valid-url@1.0.9: + resolution: {integrity: sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==} + dev: false + /validate-npm-package-license@3.0.4: resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} dependencies: @@ -22545,7 +22641,6 @@ packages: /value-or-promise@1.0.12: resolution: {integrity: sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==} engines: {node: '>=12'} - dev: true /varint@5.0.2: resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==} @@ -22677,7 +22772,6 @@ packages: /web-streams-polyfill@3.2.1: resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==} engines: {node: '>= 8'} - dev: true /web-vitals@3.4.0: resolution: {integrity: sha512-n9fZ5/bG1oeDkyxLWyep0eahrNcPDF6bFqoyispt7xkW0xhDzpUBTgyDKqWDi1twT0MgH4HvvqzpUyh0ZxZV4A==} @@ -23057,7 +23151,7 @@ packages: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 - dev: true + dev: false /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -23326,7 +23420,7 @@ packages: zod: ^3.21.4 dependencies: zod: 3.21.4 - dev: true + dev: false /zod@3.21.4: resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==}