Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2,409 changes: 1,006 additions & 1,403 deletions abis/HorizonDisputeManager.json

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions schema.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -815,6 +815,8 @@ type Indexer @entity(immutable: false) {
delegators: [DelegatedStake!]! @derivedFrom(field: "indexer")
"CURRENT tokens delegated to the indexer"
delegatedTokens: BigInt!
"Tokens delegated that are thawing from the provision"
delegatedThawingTokens: BigInt!
"Ratio between the amount of the indexers own stake over the total usable stake."
ownStakeRatio: BigDecimal!
"Ratio between the amount of delegated stake over the total usable stake."
Expand Down Expand Up @@ -998,6 +1000,8 @@ type Provision @entity(immutable: false) {
# Delegation
"Tokens delegated to the provision"
delegatedTokens: BigInt!
"Tokens delegated that are thawing from the provision"
delegatedThawingTokens: BigInt!
"Total shares of the delegator pool"
delegatorShares: BigInt!
"Exchange rate of tokens received for each share"
Expand Down Expand Up @@ -1519,6 +1523,7 @@ enum DisputeStatus {
Accepted
Rejected
Draw
Cancelled
}

"""
Expand Down
13 changes: 7 additions & 6 deletions src/mappings/curation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import {
joinID,
calculatePricePerShare,
batchUpdateSubgraphSignalledTokens,
loadGraphNetwork,
} from './helpers/helpers'
import { zeroBD } from './utils'
import { addresses } from '../../config/addresses'
Expand All @@ -27,11 +28,11 @@ import { addresses } from '../../config/addresses'
* - updates subgraph deployment, creates if needed
*/
export function handleSignalled(event: Signalled): void {
let graphNetwork = GraphNetwork.load('1')!
let graphNetwork = loadGraphNetwork()
// Create curator and update most of the parameters
let id = event.params.curator.toHexString()
let gnsID = graphNetwork.gns.toHexString()
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp, graphNetwork)
curator.totalSignalledTokens = curator.totalSignalledTokens.plus(
event.params.tokens.minus(event.params.curationTax),
)
Expand Down Expand Up @@ -98,7 +99,7 @@ export function handleSignalled(event: Signalled): void {
curator.save()

// Update subgraph deployment
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp)
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp, graphNetwork)
let oldSignalAmount = deployment.signalAmount
let oldSignalledTokens = deployment.signalledTokens
deployment.signalledTokens = deployment.signalledTokens.plus(
Expand Down Expand Up @@ -165,7 +166,7 @@ export function handleSignalled(event: Signalled): void {
* - updates subgraph
*/
export function handleBurned(event: Burned): void {
let graphNetwork = GraphNetwork.load('1')!
let graphNetwork = loadGraphNetwork()
let id = event.params.curator.toHexString()
let gnsID = graphNetwork.gns.toHexString()
// Update signal
Expand Down Expand Up @@ -215,7 +216,7 @@ export function handleBurned(event: Burned): void {
// Assuming curator is created since it's a burn can't be done, as signals can be transferred and
// we currently can't track transfers, thus this might be the first curation interaction of this
// account
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp, graphNetwork)
curator.totalUnsignalledTokens = curator.totalUnsignalledTokens.plus(event.params.tokens)
curator.totalSignal = curator.totalSignal.minus(event.params.signal.toBigDecimal())
curator.totalSignalAverageCostBasis = curator.totalSignalAverageCostBasis.minus(diffACB)
Expand Down Expand Up @@ -298,7 +299,7 @@ export function handleBurned(event: Burned): void {
*/
export function handleParameterUpdated(event: ParameterUpdated): void {
let parameter = event.params.param
let graphNetwork = GraphNetwork.load('1')!
let graphNetwork = loadGraphNetwork()
let curation = Curation.bind(event.address)

if (parameter == 'defaultReserveRatio') {
Expand Down
40 changes: 26 additions & 14 deletions src/mappings/gns.ts
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,8 @@ import {
updateCurrentDeploymentLinks,
getSubgraphID,
convertBigIntSubgraphIDToBase58,
createOrLoadGraphNetwork
createOrLoadGraphNetwork,
loadGraphNetwork,
} from './helpers/helpers'
import { addresses } from '../../config/addresses'

Expand Down Expand Up @@ -172,10 +173,11 @@ function addDefaultNameTokenLockWallets(graphAccount: GraphAccount): void {
}

export function handleSubgraphMetadataUpdated(event: SubgraphMetadataUpdated): void {
let graphNetwork = loadGraphNetwork()
let subgraphID = getSubgraphID(event.params.graphAccount, event.params.subgraphNumber)

// Create subgraph
let subgraph = createOrLoadSubgraph(subgraphID, event.params.graphAccount, event.block.timestamp)
let subgraph = createOrLoadSubgraph(subgraphID, event.params.graphAccount, event.block.timestamp, graphNetwork)

let hexHash = changetype<Bytes>(addQm(event.params.subgraphMetadata))
let base58Hash = hexHash.toBase58()
Expand All @@ -200,12 +202,13 @@ export function handleSubgraphMetadataUpdated(event: SubgraphMetadataUpdated): v
* - creates graph account, if needed
*/
export function handleSubgraphPublished(event: SubgraphPublished): void {
let graphNetwork = GraphNetwork.load('1')!
let subgraphID = getSubgraphID(event.params.graphAccount, event.params.subgraphNumber)
let versionNumber: BigInt

// Update subgraph
// Create subgraph
let subgraph = createOrLoadSubgraph(subgraphID, event.params.graphAccount, event.block.timestamp)
let subgraph = createOrLoadSubgraph(subgraphID, event.params.graphAccount, event.block.timestamp, graphNetwork)
let oldVersionID = subgraph.currentVersion

versionNumber = subgraph.versionCount
Expand All @@ -227,7 +230,7 @@ export function handleSubgraphPublished(event: SubgraphPublished): void {

// Create subgraph deployment, if needed. Can happen if the deployment has never been staked on
let subgraphDeploymentID = event.params.subgraphDeploymentID.toHexString()
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp)
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp, graphNetwork)

// Create subgraph version
let subgraphVersion = new SubgraphVersion(versionID)
Expand Down Expand Up @@ -306,7 +309,7 @@ export function handleNSignalMinted(event: NSignalMinted): void {
subgraph.save()

// Update the curator
let curator = createOrLoadCurator(event.params.nameCurator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.nameCurator, event.block.timestamp, graphNetwork)
// nSignal
curator.totalNameSignalledTokens = curator.totalNameSignalledTokens.plus(
event.params.tokensDeposited,
Expand Down Expand Up @@ -339,7 +342,7 @@ export function handleNSignalMinted(event: NSignalMinted): void {
}
curator.save()

let nameSignal = createOrLoadNameSignal(event.params.nameCurator, subgraphID, event.block.timestamp)
let nameSignal = createOrLoadNameSignal(event.params.nameCurator, subgraphID, event.block.timestamp, graphNetwork)

let isNameSignalBecomingActive =
nameSignal.nameSignal.isZero() && !event.params.nSignalCreated.isZero()
Expand Down Expand Up @@ -421,6 +424,7 @@ export function handleNSignalBurned(event: NSignalBurned): void {
event.params.nameCurator,
subgraphID,
event.block.timestamp,
graphNetwork,
)

let isNameSignalBecomingInactive =
Expand All @@ -446,7 +450,7 @@ export function handleNSignalBurned(event: NSignalBurned): void {
}

// update curator
let curator = createOrLoadCurator(event.params.nameCurator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.nameCurator, event.block.timestamp, graphNetwork)
curator.totalNameUnsignalledTokens = curator.totalNameUnsignalledTokens.plus(
event.params.tokensReceived,
)
Expand Down Expand Up @@ -586,6 +590,7 @@ export function handleNameSignalDisabled(event: NameSignalDisabled): void {
}

export function handleGRTWithdrawn(event: GRTWithdrawn): void {
let graphNetwork = loadGraphNetwork()
let bigIntID = getSubgraphID(event.params.graphAccount, event.params.subgraphNumber)
let subgraphID = convertBigIntSubgraphIDToBase58(bigIntID)
let subgraph = Subgraph.load(subgraphID)!
Expand All @@ -598,6 +603,7 @@ export function handleGRTWithdrawn(event: GRTWithdrawn): void {
event.params.nameCurator,
subgraphID,
event.block.timestamp,
graphNetwork,
)
nameSignal.withdrawnTokens = event.params.withdrawnGRT
nameSignal.nameSignal = nameSignal.nameSignal.minus(event.params.nSignalBurnt)
Expand All @@ -614,7 +620,7 @@ export function handleGRTWithdrawn(event: GRTWithdrawn): void {
nameSignal.signalAverageCostBasisPerSignal = BigDecimal.fromString('0')
nameSignal.save()

let curator = createOrLoadCurator(event.params.nameCurator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.nameCurator, event.block.timestamp, graphNetwork)
curator.totalWithdrawnTokens = curator.totalWithdrawnTokens.plus(event.params.withdrawnGRT)
curator.save()
}
Expand All @@ -639,6 +645,7 @@ export function handleParameterUpdated(event: ParameterUpdated): void {
// handler: handleSubgraphPublishedV2

export function handleSubgraphPublishedV2(event: SubgraphPublished1): void {
let graphNetwork = loadGraphNetwork()
let bigIntID = event.params.subgraphID
let subgraphID = convertBigIntSubgraphIDToBase58(bigIntID)
let versionID: string
Expand All @@ -649,6 +656,7 @@ export function handleSubgraphPublishedV2(event: SubgraphPublished1): void {
event.params.subgraphID,
event.transaction.from,
event.block.timestamp,
graphNetwork,
)
let oldVersionID = subgraph.currentVersion

Expand All @@ -665,7 +673,7 @@ export function handleSubgraphPublishedV2(event: SubgraphPublished1): void {

// Create subgraph deployment, if needed. Can happen if the deployment has never been staked on
let subgraphDeploymentID = event.params.subgraphDeploymentID.toHexString()
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp)
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp, graphNetwork)

// Create subgraph version
let subgraphVersion = new SubgraphVersion(versionID)
Expand Down Expand Up @@ -751,7 +759,7 @@ export function handleNSignalMintedV2(event: SignalMinted): void {
subgraph.save()

// Update the curator
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp, graphNetwork)
// nSignal
curator.totalNameSignalledTokens = curator.totalNameSignalledTokens.plus(
event.params.tokensDeposited,
Expand Down Expand Up @@ -784,7 +792,7 @@ export function handleNSignalMintedV2(event: SignalMinted): void {
}
curator.save()

let nameSignal = createOrLoadNameSignal(event.params.curator, subgraphID, event.block.timestamp)
let nameSignal = createOrLoadNameSignal(event.params.curator, subgraphID, event.block.timestamp, graphNetwork)

let isNameSignalBecomingActive =
nameSignal.nameSignal.isZero() && !event.params.nSignalCreated.isZero()
Expand Down Expand Up @@ -868,6 +876,7 @@ export function handleNSignalBurnedV2(event: SignalBurned): void {
event.params.curator,
subgraphID,
event.block.timestamp,
graphNetwork,
)

let isNameSignalBecomingInactive =
Expand All @@ -893,7 +902,7 @@ export function handleNSignalBurnedV2(event: SignalBurned): void {
}

// update curator
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp)
let curator = createOrLoadCurator(event.params.curator, event.block.timestamp, graphNetwork)
curator.totalNameUnsignalledTokens = curator.totalNameUnsignalledTokens.plus(
event.params.tokensReceived,
)
Expand Down Expand Up @@ -1111,7 +1120,7 @@ export function handleSubgraphVersionUpdated(event: SubgraphVersionUpdated): voi

// Create subgraph deployment, if needed. Can happen if the deployment has never been staked on
let subgraphDeploymentID = event.params.subgraphDeploymentID.toHexString()
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp)
let deployment = createOrLoadSubgraphDeployment(subgraphDeploymentID, event.block.timestamp, graphNetwork)

// Create subgraph version
let subgraphVersion = new SubgraphVersion(versionID)
Expand Down Expand Up @@ -1146,10 +1155,11 @@ export function handleSubgraphVersionUpdated(event: SubgraphVersionUpdated): voi
// handler: handleLegacySubgraphClaimed

export function handleLegacySubgraphClaimed(event: LegacySubgraphClaimed): void {
let graphNetwork = loadGraphNetwork()
let subgraphID = getSubgraphID(event.params.graphAccount, event.params.subgraphNumber)

// Update subgraph v2
let subgraph = createOrLoadSubgraph(subgraphID, event.params.graphAccount, event.block.timestamp)
let subgraph = createOrLoadSubgraph(subgraphID, event.params.graphAccount, event.block.timestamp, graphNetwork)
subgraph.migrated = true
subgraph.save()
}
Expand All @@ -1160,11 +1170,13 @@ export function handleLegacySubgraphClaimed(event: LegacySubgraphClaimed): void
export function handleTransfer(event: Transfer): void {
let newOwner = createOrLoadGraphAccount(event.params.to, event.block.timestamp)

let graphNetwork = loadGraphNetwork()
// Update subgraph v2
let subgraph = createOrLoadSubgraph(
event.params.tokenId,
event.transaction.from,
event.block.timestamp,
graphNetwork,
)
subgraph.updatedAt = event.block.timestamp.toI32()
subgraph.owner = newOwner.id
Expand Down
Loading
Loading