mirror of
https://github.com/oceanprotocol/ocean-subgraph.git
synced 2024-12-02 05:57:29 +01:00
add reuse order (#444)
* add reuse order * fix lint * add yaml to gitignore * delete yaml
This commit is contained in:
parent
ebecf1f423
commit
90f7e6482f
1
.gitignore
vendored
1
.gitignore
vendored
@ -68,3 +68,4 @@ typings/
|
||||
|
||||
# auto generated barge yaml
|
||||
subgraph.barge.yaml
|
||||
subgraph.yaml
|
1
package-lock.json
generated
1
package-lock.json
generated
@ -5,7 +5,6 @@
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "ocean-subgraph",
|
||||
"version": "1.2.0",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
|
@ -242,6 +242,14 @@ type PoolTransaction @entity {
|
||||
datatokenValue: BigDecimal
|
||||
}
|
||||
|
||||
type OrderReuse @entity {
|
||||
id: ID!
|
||||
order: Order!
|
||||
caller: String!
|
||||
createdTimestamp: BigInt!
|
||||
tx: String!
|
||||
block: BigInt!
|
||||
}
|
||||
type Order @entity {
|
||||
"transaction hash - token address - from address"
|
||||
id: ID!
|
||||
@ -262,6 +270,8 @@ type Order @entity {
|
||||
consumerMarketToken: Token #
|
||||
consumerMarketAmmount: BigDecimal #call contract to get fee amount
|
||||
|
||||
reuses: [OrderReuse!] @derivedFrom(field: "order")
|
||||
|
||||
createdTimestamp: Int!
|
||||
tx: String!
|
||||
block: Int!
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { Order, Nft } from '../@types/schema'
|
||||
import { Order, Nft, OrderReuse } from '../@types/schema'
|
||||
import { BigInt } from '@graphprotocol/graph-ts'
|
||||
import {
|
||||
NewPaymentCollector,
|
||||
@ -9,7 +9,8 @@ import {
|
||||
AddedPaymentManager,
|
||||
RemovedMinter,
|
||||
RemovedPaymentManager,
|
||||
CleanedPermissions
|
||||
CleanedPermissions,
|
||||
OrderReused
|
||||
} from '../@types/templates/ERC20Template/ERC20Template'
|
||||
|
||||
import { integer } from './utils/constants'
|
||||
@ -85,6 +86,26 @@ export function handleOrderStarted(event: OrderStarted): void {
|
||||
}
|
||||
}
|
||||
|
||||
export function handlerOrderReused(event: OrderReused): void {
|
||||
const orderId = getOrderId(
|
||||
event.params.orderTxId.toHexString(),
|
||||
event.address.toHex(),
|
||||
event.params.caller.toHex()
|
||||
)
|
||||
const order = Order.load(orderId)
|
||||
|
||||
if (!order) return
|
||||
|
||||
const reuseOrder = new OrderReuse(event.transaction.hash.toHex())
|
||||
reuseOrder.order = orderId
|
||||
reuseOrder.caller = event.params.caller.toHexString()
|
||||
reuseOrder.createdTimestamp = event.params.timestamp
|
||||
reuseOrder.tx = event.transaction.hash.toHex()
|
||||
reuseOrder.block = event.params.number
|
||||
|
||||
reuseOrder.save()
|
||||
}
|
||||
|
||||
export function handlePublishMarketFee(event: PublishMarketFee): void {}
|
||||
export function handlePublishMarketFeeChanged(
|
||||
event: PublishMarketFeeChanged
|
||||
|
@ -95,6 +95,8 @@ templates:
|
||||
eventHandlers:
|
||||
- event: OrderStarted(indexed address,address,uint256,uint256,uint256,indexed address,uint256)
|
||||
handler: handleOrderStarted
|
||||
- event: OrderReused(bytes32,address,uint256,uint256)
|
||||
handler: handlerOrderReused
|
||||
- event: NewPaymentCollector(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleNewPaymentCollector
|
||||
- event: PublishMarketFee(indexed address,indexed address,uint256)
|
||||
|
265
subgraph.yaml
265
subgraph.yaml
@ -1,265 +0,0 @@
|
||||
specVersion: 0.0.3
|
||||
description: Ocean provides data sharing through IDOs
|
||||
repository: https://github.com/oceanprotocol/ocean-subgraph
|
||||
schema:
|
||||
file: ./schema.graphql
|
||||
dataSources:
|
||||
- kind: ethereum/contract
|
||||
name: ERC721Factory
|
||||
network: development
|
||||
source:
|
||||
address: '0x2f7a30F120f0B7799C8900144eC6d8E4fBbc90ec'
|
||||
abi: ERC721Factory
|
||||
startBlock: 1119
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/erc721Factory.ts
|
||||
entities:
|
||||
- ERC721Factory
|
||||
abis:
|
||||
- name: ERC721Factory
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/ERC721Factory.sol/ERC721Factory.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
eventHandlers:
|
||||
- event: NFTCreated(address,indexed address,string,indexed address,string,string,bool,indexed address)
|
||||
handler: handleNftCreated
|
||||
- event: TokenCreated(indexed address,indexed address,string,string,uint256,address)
|
||||
handler: handleNewToken
|
||||
|
||||
- kind: ethereum/contract
|
||||
name: FactoryRouter
|
||||
network: development
|
||||
source:
|
||||
address: '0x375B009326A0938B8c325Bc2d402a16fe0fBB402'
|
||||
abi: FactoryRouter
|
||||
startBlock: 1119
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/factoryRouter.ts
|
||||
entities:
|
||||
- FactoryRouter
|
||||
abis:
|
||||
- name: FactoryRouter
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/pools/FactoryRouter.sol/FactoryRouter.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
eventHandlers:
|
||||
- event: NewPool(indexed address,bool)
|
||||
handler: handleNewPool
|
||||
- event: TokenAdded(indexed address,indexed address)
|
||||
handler: handleTokenAdded
|
||||
- event: TokenRemoved(indexed address,indexed address)
|
||||
handler: handleTokenRemoved
|
||||
- event: OPCFeeChanged(indexed address,uint256,uint256,uint256,uint256)
|
||||
handler: handleOPCFeeChanged
|
||||
- event: SSContractAdded(indexed address,indexed address)
|
||||
handler: handleSSContractAdded
|
||||
- event: SSContractRemoved(indexed address,indexed address)
|
||||
handler: handleSSContractRemoved
|
||||
- event: FixedRateContractAdded(indexed address,indexed address)
|
||||
handler: handleFixedRateContractAdded
|
||||
- event: FixedRateContractRemoved(indexed address,indexed address)
|
||||
handler: handleFixedRateContractRemoved
|
||||
- event: DispenserContractAdded(indexed address,indexed address)
|
||||
handler: handleDispenserContractAdded
|
||||
- event: DispenserContractRemoved(indexed address,indexed address)
|
||||
handler: handleDispenserContractRemoved
|
||||
|
||||
templates:
|
||||
- name: ERC20Template
|
||||
kind: ethereum/contract
|
||||
network: development
|
||||
source:
|
||||
abi: ERC20Template
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/erc20Templates.ts
|
||||
entities:
|
||||
- ERC20Template
|
||||
abis:
|
||||
- name: ERC20Template
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/templates/ERC20Template.sol/ERC20Template.json
|
||||
- name: ERC20TemplateEnterprise
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/templates/ERC20TemplateEnterprise.sol/ERC20TemplateEnterprise.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
- name: ERC20Roles
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/utils/ERC20Roles.sol/ERC20Roles.json
|
||||
eventHandlers:
|
||||
- event: OrderStarted(indexed address,address,uint256,uint256,uint256,indexed address,uint256)
|
||||
handler: handleOrderStarted
|
||||
- event: NewPaymentCollector(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleNewPaymentCollector
|
||||
- event: PublishMarketFee(indexed address,indexed address,uint256)
|
||||
handler: handlePublishMarketFee
|
||||
- event: PublishMarketFeeChanged(address,address,address,uint256)
|
||||
handler: handlePublishMarketFeeChanged
|
||||
- event: AddedMinter(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleAddedMinter
|
||||
- event: AddedPaymentManager(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleAddedPaymentManager
|
||||
- event: RemovedMinter(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleRemovedMinter
|
||||
- event: RemovedPaymentManager(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleRemovedPaymentManager
|
||||
- event: CleanedPermissions(indexed address,uint256,uint256)
|
||||
handler: handleCleanedPermissions
|
||||
|
||||
- name: BPool
|
||||
kind: ethereum/contract
|
||||
network: development
|
||||
source:
|
||||
abi: BPool
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/pool.ts
|
||||
entities:
|
||||
- BPool
|
||||
abis:
|
||||
- name: BPool
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/pools/balancer/BPool.sol/BPool.json
|
||||
- name: BToken
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/pools/balancer/BToken.sol/BToken.json
|
||||
- name: BMath
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/pools/balancer/BMath.sol/BMath.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
eventHandlers:
|
||||
- event: LOG_SWAP(indexed address,indexed address,indexed address,uint256,uint256,uint256,uint256,uint256,uint256)
|
||||
handler: handleSwap
|
||||
- event: LOG_JOIN(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleJoin
|
||||
- event: LOG_EXIT(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleExit
|
||||
- event: LOG_SETUP(indexed address,indexed address,uint256,uint256,indexed address,uint256,uint256)
|
||||
handler: handleSetup
|
||||
- event: Transfer(indexed address,indexed address,uint256)
|
||||
handler: handlerBptTransfer
|
||||
- event: PublishMarketFeeChanged(address,address,uint256)
|
||||
handler: handlePublishMarketFeeChanged
|
||||
- event: SwapFeeChanged(address,uint256)
|
||||
handler: handleSwapFeeChanged
|
||||
|
||||
- name: ERC721Template
|
||||
kind: ethereum/contract
|
||||
network: development
|
||||
source:
|
||||
abi: ERC721Template
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/nftUpdate.ts
|
||||
entities:
|
||||
- ERC721Template
|
||||
abis:
|
||||
- name: ERC721Template
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/templates/ERC721Template.sol/ERC721Template.json
|
||||
- name: ERC721RolesAddress
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/utils/ERC721RolesAddress.sol/ERC721RolesAddress.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
eventHandlers:
|
||||
- event: MetadataCreated(indexed address,uint8,string,bytes,bytes,bytes32,uint256,uint256)
|
||||
handler: handleMetadataCreated
|
||||
- event: MetadataUpdated(indexed address,uint8,string,bytes,bytes,bytes32,uint256,uint256)
|
||||
handler: handleMetadataUpdated
|
||||
- event: MetadataState(indexed address,uint8,uint256,uint256)
|
||||
handler: handleMetadataState
|
||||
- event: TokenURIUpdate(indexed address,string,uint256,uint256,uint256)
|
||||
handler: handleTokenUriUpdate
|
||||
- event: AddedManager(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleAddedManager
|
||||
- event: AddedTo725StoreList(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleAddedTo725StoreList
|
||||
- event: AddedToCreateERC20List(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleAddedToCreateERC20List
|
||||
- event: AddedToMetadataList(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleAddedToMetadataList
|
||||
- event: RemovedFrom725StoreList(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleRemovedFrom725StoreList
|
||||
- event: RemovedFromCreateERC20List(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleRemovedFromCreateERC20List
|
||||
- event: RemovedFromMetadataList(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleRemovedFromMetadataList
|
||||
- event: RemovedManager(indexed address,indexed address,uint256,uint256)
|
||||
handler: handleRemovedManager
|
||||
- event: CleanedPermissions(indexed address,uint256,uint256)
|
||||
handler: handleCleanedPermissions
|
||||
|
||||
- name: Dispenser
|
||||
kind: ethereum/contract
|
||||
network: development
|
||||
source:
|
||||
abi: Dispenser
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/dispenser.ts
|
||||
entities:
|
||||
- Dispenser
|
||||
abis:
|
||||
- name: Dispenser
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/pools/dispenser/Dispenser.sol/Dispenser.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
eventHandlers:
|
||||
- event: DispenserCreated(indexed address,indexed address,uint256,uint256,address)
|
||||
handler: handleNewDispenser
|
||||
- event: DispenserActivated(indexed address)
|
||||
handler: handleActivate
|
||||
- event: DispenserDeactivated(indexed address)
|
||||
handler: handleDeactivate
|
||||
- event: DispenserAllowedSwapperChanged(indexed address,indexed address)
|
||||
handler: handleAllowedSwapperChanged
|
||||
- event: TokensDispensed(indexed address,indexed address,uint256)
|
||||
handler: handleTokensDispensed
|
||||
- event: OwnerWithdrawed(indexed address,indexed address,uint256)
|
||||
handler: handleOwnerWinthdraw
|
||||
|
||||
- name: FixedRateExchange
|
||||
kind: ethereum/contract
|
||||
network: development
|
||||
source:
|
||||
abi: FixedRateExchange
|
||||
mapping:
|
||||
kind: ethereum/events
|
||||
apiVersion: 0.0.6
|
||||
language: wasm/assemblyscript
|
||||
file: ./src/mappings/fixedRateExchange.ts
|
||||
entities:
|
||||
- FixedRateExchange
|
||||
abis:
|
||||
- name: FixedRateExchange
|
||||
file: ./node_modules/@oceanprotocol/contracts/artifacts/contracts/pools/fixedRate/FixedRateExchange.sol/FixedRateExchange.json
|
||||
- name: ERC20
|
||||
file: ./abis/ERC20.json
|
||||
eventHandlers:
|
||||
- event: ExchangeCreated(indexed bytes32,indexed address,indexed address,address,uint256)
|
||||
handler: handleExchangeCreated
|
||||
- event: ExchangeRateChanged(indexed bytes32,indexed address,uint256)
|
||||
handler: handleRateChange
|
||||
- event: ExchangeMintStateChanged(indexed bytes32,indexed address,bool)
|
||||
handler: handleMintStateChanged
|
||||
- event: ExchangeActivated(indexed bytes32,indexed address)
|
||||
handler: handleActivated
|
||||
- event: ExchangeDeactivated(indexed bytes32,indexed address)
|
||||
handler: handleDeactivated
|
||||
- event: ExchangeAllowedSwapperChanged(indexed bytes32,indexed address)
|
||||
handler: handleAllowedSwapperChanged
|
||||
- event: Swapped(indexed bytes32,indexed address,uint256,uint256,address,uint256,uint256,uint256)
|
||||
handler: handleSwap
|
||||
- event: PublishMarketFeeChanged(indexed bytes32,address,address,uint256)
|
||||
handler: handlePublishMarketFeeChanged
|
||||
- event: TokenCollected(indexed bytes32,indexed address,indexed address,uint256)
|
||||
handler: handleTokenCollected
|
Loading…
Reference in New Issue
Block a user