Skip to content

Commit

Permalink
ref: make token field consistent in SQS body (#1320)
Browse files Browse the repository at this point in the history
* make token field consistent in sqs body

* add full listing to counter offer ops

* add seller relationship

* fix
  • Loading branch information
justraman authored Sep 30, 2024
1 parent 1c73c77 commit 7082151
Show file tree
Hide file tree
Showing 14 changed files with 77 additions and 25 deletions.
2 changes: 1 addition & 1 deletion src/mappings/marketplace/events/auction_finalized.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,6 @@ export async function auctionFinalized(
amount: listing.amount.toString(),
price: listing.price.toString(),
data: listing.data.toJSON(),
tokenId: listing.makeAssetId.id,
},
winningBid: data.winningBid
? {
Expand All @@ -142,6 +141,7 @@ export async function auctionFinalized(
: null,
protocolFee: data.protocolFee,
royalty: data.royalty,
token: listing.makeAssetId.id,
extrinsic: item.extrinsic.id,
},
})
Expand Down
2 changes: 1 addition & 1 deletion src/mappings/marketplace/events/bid_placed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,6 @@ export async function bidPlaced(
amount: listing.amount.toString(),
price: listing.price.toString(),
data: listing.data.toJSON(),
tokenId: listing.makeAssetId.id,
},
lastBid: lastBid
? {
Expand All @@ -146,6 +145,7 @@ export async function bidPlaced(
id: bid.bidder.id,
},
},
token: listing.makeAssetId.id,
extrinsic: item.extrinsic.id,
},
})
Expand Down
19 changes: 16 additions & 3 deletions src/mappings/marketplace/events/counter_offer_answered.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ export async function counterOfferAnswered(
const listing = await ctx.store.findOneOrFail(Listing, {
where: { id: listingId },
relations: {
seller: true,
takeAssetId: {
collection: true,
bestListing: true,
Expand All @@ -113,11 +114,23 @@ export async function counterOfferAnswered(
id: item.id,
name: item.name,
body: {
listing: {
id: listing.id,
price: listing.price.toString(),
amount: listing.amount.toString(),
highestPrice: listing.highestPrice.toString(),
seller: {
id: listing.seller.id,
},
data: listing.data.toJSON(),
state: listing.state.toJSON(),
type: listing.type.toString(),
takeAssetId: listing.takeAssetId.id,
},
response: data.response.__kind,
account: account.id,
listing: listing.id,
account: { id: account.id },
extrinsic: item.extrinsic.id,
tokenId: listing.takeAssetId.id,
token: listing.takeAssetId.id,
},
})
}
Expand Down
19 changes: 16 additions & 3 deletions src/mappings/marketplace/events/counter_offer_placed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ export async function counterOfferPlaced(
const listing = await ctx.store.findOneOrFail<Listing>(Listing, {
where: { id: listingId },
relations: {
seller: true,
takeAssetId: {
collection: true,
bestListing: true,
Expand Down Expand Up @@ -112,13 +113,25 @@ export async function counterOfferPlaced(
id: item.id,
name: item.name,
body: {
listing: {
id: listing.id,
price: listing.price.toString(),
amount: listing.amount.toString(),
highestPrice: listing.highestPrice.toString(),
seller: {
id: listing.seller.id,
},
data: listing.data.toJSON(),
state: listing.state.toJSON(),
type: listing.type.toString(),
takeAssetId: listing.takeAssetId.id,
},
buyerPrice: buyerPrice?.toString(),
amount: depositAmount.toString(),
sellerPrice: sellerPrice.toString(),
account: account.id,
listing: listing.id,
account: { id: account.id },
extrinsic: item.extrinsic.id,
tokenId: listing.takeAssetId.id,
token: listing.takeAssetId.id,
},
})
}
Expand Down
19 changes: 16 additions & 3 deletions src/mappings/marketplace/events/counter_offer_removed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ export async function counterOfferRemoved(
const listing = await ctx.store.findOneOrFail<Listing>(Listing, {
where: { id: listingId },
relations: {
seller: true,
takeAssetId: {
collection: true,
bestListing: true,
Expand All @@ -87,10 +88,22 @@ export async function counterOfferRemoved(
id: item.id,
name: item.name,
body: {
account: account.id,
listing: listing.id,
listing: {
id: listing.id,
price: listing.price.toString(),
amount: listing.amount.toString(),
highestPrice: listing.highestPrice.toString(),
seller: {
id: listing.seller.id,
},
data: listing.data.toJSON(),
state: listing.state.toJSON(),
type: listing.type.toString(),
takeAssetId: listing.takeAssetId.id,
},
account: { id: account.id },
extrinsic: item.extrinsic.id,
tokenId: listing.takeAssetId.id,
token: listing.takeAssetId.id,
},
})
}
Expand Down
15 changes: 10 additions & 5 deletions src/mappings/marketplace/events/listing_cancelled.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
Listing,
ListingStatus,
ListingStatusType,
ListingType,
MarketplaceListingCancelled,
} from '../../../model'
import { CommonContext, BlockHeader, EventItem } from '../../types/contexts'
Expand All @@ -27,8 +28,8 @@ function getEvent(item: EventItem, listing: Listing): [EventModel, AccountTokenE
id: item.id,
name: MarketplaceListingCancelled.name,
extrinsic: item.extrinsic?.id ? new Extrinsic({ id: item.extrinsic.id }) : null,
collectionId: listing.makeAssetId.collection.id,
tokenId: listing.makeAssetId.id,
collectionId: listing.type === ListingType.Offer ? listing.takeAssetId.collection.id : listing.makeAssetId.collection.id,
tokenId: listing.type === ListingType.Offer ? listing.takeAssetId.id : listing.makeAssetId.id,
data: new MarketplaceListingCancelled({
listing: listing.id,
}),
Expand All @@ -38,7 +39,7 @@ function getEvent(item: EventItem, listing: Listing): [EventModel, AccountTokenE
event,
new AccountTokenEvent({
id: item.id,
token: listing.makeAssetId,
token: listing.type === ListingType.Offer ? listing.takeAssetId : listing.makeAssetId,
from: listing.seller,
event,
}),
Expand All @@ -62,6 +63,9 @@ export async function listingCancelled(
collection: true,
bestListing: true,
},
takeAssetId: {
collection: true,
},
},
})

Expand All @@ -80,7 +84,7 @@ export async function listingCancelled(

await Promise.all([ctx.store.insert(listingStatus), ctx.store.save(listing)])

if (listing.makeAssetId.bestListing?.id === listing.id) {
if (listing.makeAssetId.bestListing?.id === listing.id && listing.type !== ListingType.Offer) {
const bestListing = await getBestListing(ctx, listing.makeAssetId.id)
listing.makeAssetId.bestListing = null
if (bestListing) {
Expand All @@ -104,10 +108,11 @@ export async function listingCancelled(
seller: {
id: listing.seller.id,
},
type: listing.type.toString(),
data: listing.data.toJSON(),
state: listing.state.toJSON(),
tokenId: listing.makeAssetId.id,
},
token: listing.type === ListingType.Offer ? listing.takeAssetId.id : listing.makeAssetId.id,
extrinsic: item.extrinsic.id,
},
})
Expand Down
1 change: 1 addition & 0 deletions src/mappings/marketplace/events/listing_created.ts
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,7 @@ export async function listingCreated(
makeAssetId: makeAssetId.id,
takeAssetId: takeAssetId.id,
},
token: listing.type === ListingType.Offer ? listing.takeAssetId.id : listing.makeAssetId.id,
extrinsic: item.extrinsic.id,
},
})
Expand Down
11 changes: 6 additions & 5 deletions src/mappings/marketplace/events/listing_filled.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,19 @@ function getEvent(
listing: Listing
): [EventModel, AccountTokenEvent] | undefined {
let collectionId = listing.makeAssetId.collection.id
let tokenId = listing.makeAssetId.id
let token = listing.makeAssetId

if (listing.data.listingType === ListingType.Offer) {
collectionId = listing.takeAssetId.collection.id
tokenId = listing.takeAssetId.id
token = listing.takeAssetId
}

const event = new EventModel({
id: item.id,
name: MarketplaceListingFilled.name,
extrinsic: item.extrinsic?.id ? new Extrinsic({ id: item.extrinsic.id }) : null,
collectionId,
tokenId,
tokenId: token.id,
data: new MarketplaceListingFilled({
listing: listing.id,
buyer: data.buyer,
Expand All @@ -63,7 +63,7 @@ function getEvent(
event,
new AccountTokenEvent({
id: item.id,
token: listing.makeAssetId,
token,
from: listing.seller,
to: new Account({ id: data.buyer }),
event,
Expand Down Expand Up @@ -155,10 +155,11 @@ export async function listingFilled(
seller: {
id: listing.seller.id,
},
type: listing.type.toString(),
data: listing.data.toJSON(),
state: listing.state.toJSON(),
tokenId: listing.makeAssetId.id,
},
token: listing.type === ListingType.Offer ? listing.takeAssetId.id : listing.makeAssetId.id,
buyer: { id: data.buyer },
amountFilled: data.amountFilled,
amountRemaining: data.amountRemaining,
Expand Down
3 changes: 2 additions & 1 deletion src/mappings/multiTokens/events/approved.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,8 @@ export async function approved(
address,
operator: data.operator,
collectionId: data.collectionId.toString(),
tokenId: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
tokenId: data.tokenId ?? null,
token: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
extrinsic: item.extrinsic.id,
},
})
Expand Down
3 changes: 2 additions & 1 deletion src/mappings/multiTokens/events/frozen.ts
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,8 @@ export async function frozen(
kind: data.freezeType,
address: data.collectionAccount ?? data.tokenAccount,
collectionId: data.collectionId.toString(),
tokenId: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
tokenId: data.tokenId ?? null,
token: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
extrinsic: item.extrinsic.id,
},
})
Expand Down
1 change: 1 addition & 0 deletions src/mappings/multiTokens/events/infused.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ export async function infused(ctx: CommonContext, block: BlockHeader, item: Even
body: {
collectionId: data.collectionId,
tokenId: data.tokenId,
token: `${data.collectionId}-${data.tokenId}`,
amount: data.amount,
accountId: data.accountId,
extrinsic: item.extrinsic.id,
Expand Down
3 changes: 2 additions & 1 deletion src/mappings/multiTokens/events/thawed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,8 @@ export async function thawed(
kind: data.freezeType,
address: data.collectionAccount ?? data.tokenAccount,
collectionId: data.collectionId.toString(),
tokenId: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
tokenId: data.tokenId ?? null,
token: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
extrinsic: item.extrinsic.id,
},
})
Expand Down
1 change: 1 addition & 0 deletions src/mappings/multiTokens/events/token_destroyed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,7 @@ export async function tokenDestroyed(
body: {
collectionId: data.collectionId,
tokenId: data.tokenId,
token: `${data.collectionId}-${data.tokenId}`,
caller: data.caller,
extrinsic: item.extrinsic.id,
},
Expand Down
3 changes: 2 additions & 1 deletion src/mappings/multiTokens/events/unapproved.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,8 @@ export async function unapproved(
address,
operator: data.operator,
collectionId: data.collectionId.toString(),
tokenId: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
tokenId: data.tokenId ?? null,
token: data.tokenId ? `${data.collectionId}-${data.tokenId}` : null,
extrinsic: item.extrinsic.id,
},
})
Expand Down

0 comments on commit 7082151

Please sign in to comment.