From d9a2ace765ff86dc43b4b3df68f453228035e852 Mon Sep 17 00:00:00 2001 From: grant Date: Thu, 7 Aug 2025 11:02:57 -0500 Subject: [PATCH] fixing a handful of bugs --- src/Classes/APIBots/ReservoirListBot.ts | 22 +++++++++------- src/Classes/APIBots/ReservoirSaleBot.ts | 34 ++++++++++++++++++------- src/Classes/APIBots/utils.ts | 3 +++ src/Data/queryGraphQL.ts | 11 -------- 4 files changed, 41 insertions(+), 29 deletions(-) diff --git a/src/Classes/APIBots/ReservoirListBot.ts b/src/Classes/APIBots/ReservoirListBot.ts index 7177093..0862f91 100644 --- a/src/Classes/APIBots/ReservoirListBot.ts +++ b/src/Classes/APIBots/ReservoirListBot.ts @@ -205,18 +205,22 @@ export class ReservoirListBot extends APIPollBot { embed.setThumbnail(assetUrl) } - embed.addFields( - { + // Only add Collection field if curationStatus has a value + const fields = [] + if (curationStatus && curationStatus.trim()) { + fields.push({ name: `Collection`, value: `${curationStatus}`, inline: true, - }, - { - name: 'Live Script', - value: `[view on artblocks.io](${tokenUrl + LISTING_UTM})`, - inline: true, - } - ) + }) + } + fields.push({ + name: 'Live Script', + value: `[view on artblocks.io](${tokenUrl + LISTING_UTM})`, + inline: true, + }) + + embed.addFields(...fields) const platformUrl = listing.source?.url diff --git a/src/Classes/APIBots/ReservoirSaleBot.ts b/src/Classes/APIBots/ReservoirSaleBot.ts index 6dfcd2a..8d9d895 100644 --- a/src/Classes/APIBots/ReservoirSaleBot.ts +++ b/src/Classes/APIBots/ReservoirSaleBot.ts @@ -250,18 +250,22 @@ export class ReservoirSaleBot extends APIPollBot { assetUrl = await replaceVideoWithGIF(assetUrl) embed.setThumbnail(assetUrl) } - embed.addFields( - { + // Only add Collection field if curationStatus has a value + const fields = [] + if (curationStatus && curationStatus.trim()) { + fields.push({ name: `Collection`, value: `${curationStatus}`, inline: true, - }, - { - name: 'Live Script', - value: `[view on artblocks.io](${tokenUrl + SALE_UTM})`, - inline: true, - } - ) + }) + } + fields.push({ + name: 'Live Script', + value: `[view on artblocks.io](${tokenUrl + SALE_UTM})`, + inline: true, + }) + + embed.addFields(...fields) // Update to remove author name and to reflect this info in piece name // rather than token number as the title and URL field.. embed.setTitle(title) @@ -318,6 +322,18 @@ export class ReservoirSaleBot extends APIPollBot { return false } + if ( + sale.price.amount.decimal < 0.1 && + sale.price.currency.symbol.includes('ETH') + ) { + console.log( + 'Skipping twitter sale for low-value sale', + sale.price.amount.decimal, + sale.price.currency.symbol + ) + return false + } + // Filter out mint events (though these should already be filtered out) if (sale.orderKind === 'mint') { return false diff --git a/src/Classes/APIBots/utils.ts b/src/Classes/APIBots/utils.ts index 5810ecb..c8442fb 100644 --- a/src/Classes/APIBots/utils.ts +++ b/src/Classes/APIBots/utils.ts @@ -135,6 +135,9 @@ const acceptedVerticals = [ 'explorations', 'engine', 'presents', + 'factory', + 'playground', + 'studio', ] export function isVerticalName(msg: string): boolean { return acceptedVerticals.includes(msg) diff --git a/src/Data/queryGraphQL.ts b/src/Data/queryGraphQL.ts index deda2a6..d51df4a 100644 --- a/src/Data/queryGraphQL.ts +++ b/src/Data/queryGraphQL.ts @@ -545,9 +545,6 @@ export async function getArtistsTwitterHandles(): Promise> { const handle = sanitizeTwitterHandle(twitter) if (handle) { artistTwitterMap.set(artistName, handle) - console.log( - `Mapped artist "${artistName}" to Twitter handle "@${handle}" (from Hasura)` - ) } else { console.warn( `Could not extract Twitter handle from URL: ${twitter} for artist: ${artistName}` @@ -576,15 +573,7 @@ export async function getArtistsTwitterHandles(): Promise> { const handle = sanitizeTwitterHandle(artist.twitterUsername) if (handle) { - const wasOverwritten = artistTwitterMap.has(artist.name) artistTwitterMap.set(artist.name, handle) - console.log( - `Mapped artist "${ - artist.name - }" to Twitter handle "@${handle}" (from JSON${ - wasOverwritten ? ' - overwriting Hasura data' : '' - })` - ) } } })