diff --git a/src/dlob-subscriber/DLOBSubscriberIO.ts b/src/dlob-subscriber/DLOBSubscriberIO.ts index 352a936..d288dd1 100644 --- a/src/dlob-subscriber/DLOBSubscriberIO.ts +++ b/src/dlob-subscriber/DLOBSubscriberIO.ts @@ -4,7 +4,9 @@ import { DriftEnv, L2OrderBookGenerator, MarketType, + PerpOperation, PositionDirection, + isOperationPaused, isVariant, } from '@drift-labs/sdk'; import { RedisClient } from '@drift/common'; @@ -86,9 +88,10 @@ export class DLOBSubscriberIO extends DLOBSubscriber { const perpMarket = this.driftClient.getPerpMarketAccount( market.marketIndex ); - const includeVamm = - !isVariant(perpMarket.status, 'ammPaused') && - !isVariant(perpMarket.status, 'initialized'); + const includeVamm = !isOperationPaused( + perpMarket.pausedOperations, + PerpOperation.AMM_FILL + ); this.marketArgs.push({ marketIndex: market.marketIndex, diff --git a/src/index.ts b/src/index.ts index 31c7586..b72307f 100644 --- a/src/index.ts +++ b/src/index.ts @@ -20,6 +20,8 @@ import { MarketType, PhoenixSubscriber, BulkAccountLoader, + isOperationPaused, + PerpOperation, } from '@drift-labs/sdk'; import { RedisClient, RedisClientPrefix } from '@drift/common'; @@ -777,9 +779,10 @@ const main = async (): Promise => { let validateIncludeVamm = false; if (!isSpot && `${includeVamm}`.toLowerCase() === 'true') { const perpMarket = driftClient.getPerpMarketAccount(normedMarketIndex); - validateIncludeVamm = - !isVariant(perpMarket.status, 'ammPaused') && - !isVariant(perpMarket.status, 'initialized'); + validateIncludeVamm = !isOperationPaused( + perpMarket.pausedOperations, + PerpOperation.AMM_FILL + ); } const l2 = dlobSubscriber.getL2({ marketIndex: normedMarketIndex, @@ -949,9 +952,10 @@ const main = async (): Promise => { if (!isSpot && `${includeVamm}`.toLowerCase() === 'true') { const perpMarket = driftClient.getPerpMarketAccount(normedMarketIndex); - validateIncludeVamm = - !isVariant(perpMarket.status, 'ammPaused') && - !isVariant(perpMarket.status, 'initialized'); + validateIncludeVamm = !isOperationPaused( + perpMarket.pausedOperations, + PerpOperation.AMM_FILL + ); } const l2 = dlobSubscriber.getL2({ marketIndex: normedMarketIndex,