@polymarket/bindings 0.1.0-beta.11 → 0.1.0-beta.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-BI6DX3LX.js +2 -0
- package/dist/{chunk-IY6FKANL.js.map → chunk-BI6DX3LX.js.map} +1 -1
- package/dist/chunk-G2DC5MZA.js +2 -0
- package/dist/{chunk-GYP7YNXL.js.map → chunk-G2DC5MZA.js.map} +1 -1
- package/dist/chunk-GTLPG5HR.js +2 -0
- package/dist/chunk-GTLPG5HR.js.map +1 -0
- package/dist/clob/index.js +1 -1
- package/dist/clob/index.js.map +1 -1
- package/dist/data/index.d.ts +1048 -915
- package/dist/data/index.js +1 -1
- package/dist/data/index.js.map +1 -1
- package/dist/gamma/index.js +1 -1
- package/dist/gamma/index.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +1 -1
- package/dist/perps/index.js +1 -1
- package/dist/relayer/index.js +1 -1
- package/dist/relayer/index.js.map +1 -1
- package/dist/rfq.js +1 -1
- package/dist/rfq.js.map +1 -1
- package/dist/subscriptions/index.js +1 -1
- package/dist/subscriptions/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-GYP7YNXL.js +0 -2
- package/dist/chunk-IY6FKANL.js +0 -2
- package/dist/chunk-VBHCYSM7.js +0 -2
- package/dist/chunk-VBHCYSM7.js.map +0 -1
package/dist/rfq.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {b as b$1}from'./chunk-HOD4LKZU.js';import {
|
|
1
|
+
import {b as b$1}from'./chunk-HOD4LKZU.js';import {Z,ta,Ja,za,ya,Ka,ba,ca,Y,Ea,Ca,Da,Ia}from'./chunk-GTLPG5HR.js';import {z as z$1}from'zod';var x=(o=>(o.Buy="BUY",o.Sell="SELL",o))(x||{}),O=(o=>(o.Yes="YES",o.No="NO",o))(O||{}),g=(o=>(o.Confirm="CONFIRM",o.Decline="DECLINE",o))(g||{}),T=(u=>(u.Matched="MATCHED",u.Mined="MINED",u.Confirmed="CONFIRMED",u.Retrying="RETRYING",u.Failed="FAILED",u))(T||{}),N=(o=>(o.Notional="notional",o.Shares="shares",o))(N||{}),M=(i=>(i.AddressMismatch="ADDRESS_MISMATCH",i.AllowanceValidationFailed="ALLOWANCE_VALIDATION_FAILED",i.BalanceValidationFailed="BALANCE_VALIDATION_FAILED",i.ContradictoryLegs="CONTRADICTORY_LEGS",i.ExpiredRfq="EXPIRED_RFQ",i.InvalidAcceptance="INVALID_ACCEPTANCE",i.InvalidConfirmation="INVALID_CONFIRMATION",i.InvalidExecutionResult="INVALID_EXECUTION_RESULT",i.InvalidIdentity="INVALID_IDENTITY",i.InvalidMessage="INVALID_MESSAGE",i.InvalidQuote="INVALID_QUOTE",i.InvalidRfq="INVALID_RFQ",i.InvalidRfqState="INVALID_RFQ_STATE",i.InvalidRole="INVALID_ROLE",i.InvalidSignature="INVALID_SIGNATURE",i.InternalError="INTERNAL_ERROR",i.LegMetadataUnavailable="LEG_METADATA_UNAVAILABLE",i.MakerAlreadyResponded="MAKER_ALREADY_RESPONDED",i.MakerNotRequired="MAKER_NOT_REQUIRED",i.PreExecutionBalanceReservationFailed="PRE_EXECUTION_BALANCE_RESERVATION_FAILED",i.QuoteMismatch="QUOTE_MISMATCH",i.QuoteUnavailable="QUOTE_UNAVAILABLE",i.RateLimited="RATE_LIMITED",i.RequestFailed="REQUEST_FAILED",i.ServiceUnavailable="SERVICE_UNAVAILABLE",i.SubmissionWindowClosed="SUBMISSION_WINDOW_CLOSED",i.TradeSubmissionFailed="TRADE_SUBMISSION_FAILED",i.Unauthenticated="UNAUTHENTICATED",i.UnauthorizedRole="UNAUTHORIZED_ROLE",i.UnknownRfq="UNKNOWN_RFQ",i))(M||{}),f=z$1.enum(x),R=z$1.literal("YES"),D=z$1.enum(g),L=z$1.enum(T),G=z$1.enum(N),C=z$1.enum(M),U=z$1.object({id:ta,condition_id:Z,position_ids:z$1.array(za),slug:z$1.string(),title:z$1.string(),outcomes:z$1.array(z$1.string()),outcome_prices:z$1.array(Ja),image:z$1.string(),volume:z$1.number(),tags:z$1.array(z$1.string())}).superRefine((e,I)=>{e.outcomes.length!==2&&I.addIssue({code:"custom",message:`Expected binary combo market outcomes, received ${e.outcomes.length}.`,path:["outcomes"]}),e.position_ids.length!==e.outcomes.length&&I.addIssue({code:"custom",message:"Expected position_ids and outcomes to have matching lengths.",path:["position_ids"]}),e.outcome_prices.length!==e.outcomes.length&&I.addIssue({code:"custom",message:"Expected outcome_prices and outcomes to have matching lengths.",path:["outcome_prices"]});}).transform(e=>({conditionId:e.condition_id,id:e.id,image:e.image,outcomes:{yes:{label:e.outcomes[0],positionId:e.position_ids[0],price:e.outcome_prices[0]},no:{label:e.outcomes[1],positionId:e.position_ids[1],price:e.outcome_prices[1]}},slug:e.slug,tags:e.tags,title:e.title,volume:e.volume})),W=z$1.object({markets:z$1.array(U),next_cursor:ya.nullish()}).transform(e=>({markets:e.markets,nextCursor:e.next_cursor??void 0})),b=z$1.discriminatedUnion("unit",[z$1.object({unit:z$1.literal("notional"),value_e6:Ka}),z$1.object({unit:z$1.literal("shares"),value_e6:Ka})]).transform(e=>({unit:e.unit,value:e.value_e6})),Q=(n=>(n.Auth="auth",n.QuoteRequest="RFQ_REQUEST",n.QuoteAck="ACK_RFQ_QUOTE",n.QuoteCancelAck="ACK_RFQ_QUOTE_CANCEL",n.ConfirmationRequest="RFQ_CONFIRMATION_REQUEST",n.ConfirmationAck="ACK_RFQ_CONFIRMATION_RESPONSE",n.ExecutionUpdate="RFQ_EXECUTION_UPDATE",n.Trade="RFQ_TRADE",n.Error="RFQ_ERROR",n))(Q||{}),d=z$1.object({type:z$1.enum(Q)}),v=d.extend({type:z$1.literal("auth"),success:z$1.boolean(),address:ba.optional(),role:z$1.string().optional(),error:z$1.string().optional()}),k=d.extend({type:z$1.literal("RFQ_REQUEST"),rfq_id:Ca,requestor_public_id:Ea,leg_position_ids:z$1.array(za),condition_id:Y,yes_position_id:za,no_position_id:za,direction:f,side:R,requested_size:b,submission_deadline:ca}).transform(e=>({conditionId:e.condition_id,direction:e.direction,legPositionIds:e.leg_position_ids,noPositionId:e.no_position_id,requestorPublicId:e.requestor_public_id,requestedSize:e.requested_size,rfqId:e.rfq_id,side:e.side,submissionDeadline:e.submission_deadline,type:"quote_request",yesPositionId:e.yes_position_id})),F=d.extend({type:z$1.literal("ACK_RFQ_QUOTE"),rfq_id:Ca,quote_id:Da}).transform(e=>({quoteId:e.quote_id,rfqId:e.rfq_id,type:"quote_ack"})),z=d.extend({type:z$1.literal("ACK_RFQ_QUOTE_CANCEL"),rfq_id:Ca,quote_id:Da}).transform(e=>({quoteId:e.quote_id,rfqId:e.rfq_id,type:"quote_cancel_ack"})),P=d.extend({type:z$1.literal("RFQ_CONFIRMATION_REQUEST"),rfq_id:Ca,quote_id:Da,signer_address:ba,maker_address:ba,signature_type:b$1,leg_position_ids:z$1.array(za),condition_id:Y,yes_position_id:za,no_position_id:za,direction:f,side:R,fill_size_e6:Ka,price_e6:Ka,confirm_by:ca}).transform(e=>({conditionId:e.condition_id,confirmBy:e.confirm_by,direction:e.direction,fillSize:e.fill_size_e6,legPositionIds:e.leg_position_ids,makerAddress:e.maker_address,noPositionId:e.no_position_id,price:e.price_e6,quoteId:e.quote_id,rfqId:e.rfq_id,side:e.side,signatureType:e.signature_type,signerAddress:e.signer_address,type:"confirmation_request",yesPositionId:e.yes_position_id})),V=d.extend({type:z$1.literal("ACK_RFQ_CONFIRMATION_RESPONSE"),rfq_id:Ca,quote_id:Da,decision:D}).transform(e=>({decision:e.decision,quoteId:e.quote_id,rfqId:e.rfq_id,type:"confirmation_ack"})),B=d.extend({type:z$1.literal("RFQ_EXECUTION_UPDATE"),rfq_id:Ca,status:L,tx_hash:Ia.optional()}).transform(e=>({rfqId:e.rfq_id,status:e.status,...e.tx_hash===void 0?{}:{txHash:e.tx_hash},type:"execution_update"})),H=d.extend({type:z$1.literal("RFQ_TRADE"),rfq_id:Ca,requester_id:Ea,condition_id:Y,leg_position_ids:z$1.array(za),direction:f,side:R,price_e6:Ka,size_e6:Ka,executed_at:ca}).transform(e=>({conditionId:e.condition_id,direction:e.direction,executedAt:e.executed_at,legPositionIds:e.leg_position_ids,price:e.price_e6,requesterId:e.requester_id,rfqId:e.rfq_id,side:e.side,size:e.size_e6,type:"trade"})),K=d.extend({type:z$1.literal("RFQ_ERROR"),error_id:z$1.string().optional(),request_type:z$1.string().optional(),rfq_id:Ca.optional(),quote_id:Da.optional(),code:C,error:z$1.string(),request:z$1.unknown().optional()}).transform(e=>({code:e.code,errorId:e.error_id,message:e.error,quoteId:e.quote_id,requestType:e.request_type,rfqId:e.rfq_id,type:"rfq_error"})),X=z$1.discriminatedUnion("type",[v,k,F,z,P,V,B,H,K]);export{U as ComboMarketSchema,W as ListComboMarketsResponseSchema,v as RfqAuthResponseMessageSchema,V as RfqConfirmationAckSchema,g as RfqConfirmationDecision,D as RfqConfirmationDecisionSchema,P as RfqConfirmationRequestSchema,x as RfqDirection,f as RfqDirectionSchema,M as RfqErrorCode,C as RfqErrorCodeSchema,K as RfqErrorMessageSchema,T as RfqExecutionStatus,L as RfqExecutionStatusSchema,B as RfqExecutionUpdateSchema,d as RfqKnownInboundMessageSchema,Q as RfqKnownInboundType,F as RfqQuoteAckSchema,z as RfqQuoteCancelAckSchema,k as RfqQuoteRequestSchema,X as RfqQuoterInboundMessageSchema,N as RfqRequestedSizeUnit,G as RfqRequestedSizeUnitSchema,O as RfqSide,R as RfqSideSchema,H as RfqTradeSchema};//# sourceMappingURL=rfq.js.map
|
|
2
2
|
//# sourceMappingURL=rfq.js.map
|
package/dist/rfq.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/rfq.ts"],"names":["RfqDirection","RfqSide","RfqConfirmationDecision","RfqExecutionStatus","RfqRequestedSizeUnit","RfqErrorCode","RfqDirectionSchema","z","RfqSideSchema","RfqConfirmationDecisionSchema","RfqExecutionStatusSchema","RfqRequestedSizeUnitSchema","RfqErrorCodeSchema","ComboMarketSchema","MarketIdSchema","CtfConditionIdSchema","PositionIdSchema","DecimalStringSchema","market","context","ListComboMarketsResponseSchema","PaginationCursorSchema","response","RfqRequestedSizeSchema","E6BigIntStringToDecimalStringSchema","size","RfqKnownInboundType","RfqKnownInboundMessageSchema","RfqAuthResponseMessageSchema","EvmAddressSchema","RfqQuoteRequestSchema","RfqIdSchema","RfqRequestorPublicIdSchema","ComboConditionIdSchema","EpochMillisecondsSchema","message","RfqQuoteAckSchema","RfqQuoteIdSchema","RfqQuoteCancelAckSchema","RfqConfirmationRequestSchema","SignatureTypeSchema","RfqConfirmationAckSchema","RfqExecutionUpdateSchema","TxHashSchema","RfqTradeSchema","RfqErrorMessageSchema","RfqQuoterInboundMessageSchema"],"mappings":"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","file":"rfq.js","sourcesContent":["import type {\n Erc1271Signature,\n EvmSignature,\n HexString,\n} from '@polymarket/types';\nimport { z } from 'zod';\nimport { type SignatureType, SignatureTypeSchema } from './clob/signature-type';\nimport type {\n BaseUnits,\n CtfConditionId,\n DecimalString,\n EvmAddress,\n MarketId,\n TokenId,\n} from './shared';\nimport {\n ComboConditionIdSchema,\n CtfConditionIdSchema,\n DecimalStringSchema,\n E6BigIntStringToDecimalStringSchema,\n EpochMillisecondsSchema,\n EvmAddressSchema,\n MarketIdSchema,\n type OrderSide,\n PaginationCursorSchema,\n type PositionId,\n PositionIdSchema,\n type RfqId,\n RfqIdSchema,\n type RfqQuoteId,\n RfqQuoteIdSchema,\n RfqRequestorPublicIdSchema,\n TxHashSchema,\n} from './shared';\n\nexport type {\n RfqId,\n RfqQuoteId,\n RfqRequestorPublicId,\n} from './shared';\n\nexport enum RfqDirection {\n Buy = 'BUY',\n Sell = 'SELL',\n}\n\nexport enum RfqSide {\n Yes = 'YES',\n No = 'NO',\n}\n\nexport enum RfqConfirmationDecision {\n Confirm = 'CONFIRM',\n Decline = 'DECLINE',\n}\n\nexport enum RfqExecutionStatus {\n Matched = 'MATCHED',\n Mined = 'MINED',\n Confirmed = 'CONFIRMED',\n Retrying = 'RETRYING',\n Failed = 'FAILED',\n}\n\nexport enum RfqRequestedSizeUnit {\n Notional = 'notional',\n Shares = 'shares',\n}\n\nexport enum RfqErrorCode {\n AddressMismatch = 'ADDRESS_MISMATCH',\n AllowanceValidationFailed = 'ALLOWANCE_VALIDATION_FAILED',\n BalanceValidationFailed = 'BALANCE_VALIDATION_FAILED',\n ContradictoryLegs = 'CONTRADICTORY_LEGS',\n ExpiredRfq = 'EXPIRED_RFQ',\n InvalidAcceptance = 'INVALID_ACCEPTANCE',\n InvalidConfirmation = 'INVALID_CONFIRMATION',\n InvalidExecutionResult = 'INVALID_EXECUTION_RESULT',\n InvalidIdentity = 'INVALID_IDENTITY',\n InvalidMessage = 'INVALID_MESSAGE',\n InvalidQuote = 'INVALID_QUOTE',\n InvalidRfq = 'INVALID_RFQ',\n InvalidRfqState = 'INVALID_RFQ_STATE',\n InvalidRole = 'INVALID_ROLE',\n InvalidSignature = 'INVALID_SIGNATURE',\n InternalError = 'INTERNAL_ERROR',\n LegMetadataUnavailable = 'LEG_METADATA_UNAVAILABLE',\n MakerAlreadyResponded = 'MAKER_ALREADY_RESPONDED',\n MakerNotRequired = 'MAKER_NOT_REQUIRED',\n PreExecutionBalanceReservationFailed = 'PRE_EXECUTION_BALANCE_RESERVATION_FAILED',\n QuoteMismatch = 'QUOTE_MISMATCH',\n QuoteUnavailable = 'QUOTE_UNAVAILABLE',\n RateLimited = 'RATE_LIMITED',\n RequestFailed = 'REQUEST_FAILED',\n ServiceUnavailable = 'SERVICE_UNAVAILABLE',\n SubmissionWindowClosed = 'SUBMISSION_WINDOW_CLOSED',\n TradeSubmissionFailed = 'TRADE_SUBMISSION_FAILED',\n Unauthenticated = 'UNAUTHENTICATED',\n UnauthorizedRole = 'UNAUTHORIZED_ROLE',\n UnknownRfq = 'UNKNOWN_RFQ',\n}\n\nexport const RfqDirectionSchema = z.enum(RfqDirection);\nexport const RfqSideSchema = z.literal(RfqSide.Yes);\nexport const RfqConfirmationDecisionSchema = z.enum(RfqConfirmationDecision);\nexport const RfqExecutionStatusSchema = z.enum(RfqExecutionStatus);\nexport const RfqRequestedSizeUnitSchema = z.enum(RfqRequestedSizeUnit);\nexport const RfqErrorCodeSchema = z.enum(RfqErrorCode);\n\nexport type ComboMarket = {\n id: MarketId;\n conditionId: CtfConditionId;\n slug: string;\n title: string;\n outcomes: ComboMarketOutcomes;\n image: string;\n volume: number;\n tags: string[];\n};\n\nexport type ComboMarketOutcome = {\n label: string;\n positionId: PositionId;\n price: DecimalString;\n};\n\nexport type ComboMarketOutcomes = {\n yes: ComboMarketOutcome;\n no: ComboMarketOutcome;\n};\n\nexport const ComboMarketSchema = z\n .object({\n id: MarketIdSchema,\n condition_id: CtfConditionIdSchema,\n position_ids: z.array(PositionIdSchema),\n slug: z.string(),\n title: z.string(),\n outcomes: z.array(z.string()),\n outcome_prices: z.array(DecimalStringSchema),\n image: z.string(),\n volume: z.number(),\n tags: z.array(z.string()),\n })\n .superRefine((market, context) => {\n if (market.outcomes.length !== 2) {\n context.addIssue({\n code: 'custom',\n message: `Expected binary combo market outcomes, received ${market.outcomes.length}.`,\n path: ['outcomes'],\n });\n }\n\n if (market.position_ids.length !== market.outcomes.length) {\n context.addIssue({\n code: 'custom',\n message: 'Expected position_ids and outcomes to have matching lengths.',\n path: ['position_ids'],\n });\n }\n\n if (market.outcome_prices.length !== market.outcomes.length) {\n context.addIssue({\n code: 'custom',\n message:\n 'Expected outcome_prices and outcomes to have matching lengths.',\n path: ['outcome_prices'],\n });\n }\n })\n .transform(\n (market): ComboMarket => ({\n conditionId: market.condition_id,\n id: market.id,\n image: market.image,\n outcomes: {\n yes: {\n label: market.outcomes[0] as string,\n positionId: market.position_ids[0] as PositionId,\n price: market.outcome_prices[0] as DecimalString,\n },\n no: {\n label: market.outcomes[1] as string,\n positionId: market.position_ids[1] as PositionId,\n price: market.outcome_prices[1] as DecimalString,\n },\n },\n slug: market.slug,\n tags: market.tags,\n title: market.title,\n volume: market.volume,\n }),\n );\n\nexport const ListComboMarketsResponseSchema = z\n .object({\n markets: z.array(ComboMarketSchema),\n next_cursor: PaginationCursorSchema.nullish(),\n })\n .transform((response) => ({\n markets: response.markets,\n nextCursor: response.next_cursor ?? undefined,\n }));\n\nexport type ListComboMarketsResponse = z.infer<\n typeof ListComboMarketsResponseSchema\n>;\n\nexport type RfqRequestedSize =\n | {\n unit: RfqRequestedSizeUnit.Notional;\n value: DecimalString;\n }\n | {\n unit: RfqRequestedSizeUnit.Shares;\n value: DecimalString;\n };\n\nconst RfqRequestedSizeSchema = z\n .discriminatedUnion('unit', [\n z.object({\n unit: z.literal(RfqRequestedSizeUnit.Notional),\n value_e6: E6BigIntStringToDecimalStringSchema,\n }),\n z.object({\n unit: z.literal(RfqRequestedSizeUnit.Shares),\n value_e6: E6BigIntStringToDecimalStringSchema,\n }),\n ])\n .transform(\n (size): RfqRequestedSize => ({\n unit: size.unit,\n value: size.value_e6,\n }),\n ) satisfies z.ZodType<RfqRequestedSize>;\n\nexport type RfqSignedOrder = {\n salt: string;\n maker: EvmAddress;\n signer: EvmAddress;\n tokenId: PositionId | TokenId;\n makerAmount: BaseUnits;\n takerAmount: BaseUnits;\n side: RfqOrderSide;\n signatureType: SignatureType;\n timestamp: string;\n builder?: HexString;\n expiration?: string;\n metadata?: HexString;\n signature: EvmSignature | Erc1271Signature;\n};\n\nexport type RfqOrderSide = OrderSide | 0 | 1;\n\nexport type RfqAuthMessage = {\n type: 'auth';\n auth: {\n apiKey: string;\n passphrase: string;\n secret: string;\n };\n identity: {\n signer_address: EvmAddress;\n maker_address: EvmAddress;\n signature_type: SignatureType;\n };\n};\n\nexport enum RfqKnownInboundType {\n Auth = 'auth',\n QuoteRequest = 'RFQ_REQUEST',\n QuoteAck = 'ACK_RFQ_QUOTE',\n QuoteCancelAck = 'ACK_RFQ_QUOTE_CANCEL',\n ConfirmationRequest = 'RFQ_CONFIRMATION_REQUEST',\n ConfirmationAck = 'ACK_RFQ_CONFIRMATION_RESPONSE',\n ExecutionUpdate = 'RFQ_EXECUTION_UPDATE',\n Trade = 'RFQ_TRADE',\n Error = 'RFQ_ERROR',\n}\n\nexport const RfqKnownInboundMessageSchema = z.object({\n type: z.enum(RfqKnownInboundType),\n});\n\nexport const RfqAuthResponseMessageSchema = RfqKnownInboundMessageSchema.extend(\n {\n type: z.literal(RfqKnownInboundType.Auth),\n success: z.boolean(),\n address: EvmAddressSchema.optional(),\n role: z.string().optional(),\n error: z.string().optional(),\n },\n);\n\nexport type RfqAuthResponseMessage = z.infer<\n typeof RfqAuthResponseMessageSchema\n>;\n\nexport const RfqQuoteRequestSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.QuoteRequest),\n rfq_id: RfqIdSchema,\n requestor_public_id: RfqRequestorPublicIdSchema,\n leg_position_ids: z.array(PositionIdSchema),\n condition_id: ComboConditionIdSchema,\n yes_position_id: PositionIdSchema,\n no_position_id: PositionIdSchema,\n direction: RfqDirectionSchema,\n side: RfqSideSchema,\n requested_size: RfqRequestedSizeSchema,\n submission_deadline: EpochMillisecondsSchema,\n}).transform((message) => ({\n conditionId: message.condition_id,\n direction: message.direction,\n legPositionIds: message.leg_position_ids,\n noPositionId: message.no_position_id,\n requestorPublicId: message.requestor_public_id,\n requestedSize: message.requested_size,\n rfqId: message.rfq_id,\n side: message.side,\n submissionDeadline: message.submission_deadline,\n type: 'quote_request' as const,\n yesPositionId: message.yes_position_id,\n}));\n\nexport type RfqQuoteRequest = z.infer<typeof RfqQuoteRequestSchema>;\n\nexport type RfqQuoteMessage = {\n type: 'RFQ_QUOTE';\n rfq_id: RfqId;\n price_e6: string;\n size_e6: string;\n signed_order: RfqSignedOrder;\n};\n\nexport type RfqQuoteCancelMessage = {\n type: 'RFQ_QUOTE_CANCEL';\n rfq_id: RfqId;\n quote_id: RfqQuoteId;\n signer_address: EvmAddress;\n maker_address: EvmAddress;\n};\n\nexport const RfqQuoteAckSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.QuoteAck),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n}).transform((message) => ({\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n type: 'quote_ack' as const,\n}));\n\nexport type RfqQuoteAck = z.infer<typeof RfqQuoteAckSchema>;\n\nexport const RfqQuoteCancelAckSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.QuoteCancelAck),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n}).transform((message) => ({\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n type: 'quote_cancel_ack' as const,\n}));\n\nexport type RfqQuoteCancelAck = z.infer<typeof RfqQuoteCancelAckSchema>;\n\nexport const RfqConfirmationRequestSchema = RfqKnownInboundMessageSchema.extend(\n {\n type: z.literal(RfqKnownInboundType.ConfirmationRequest),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n signer_address: EvmAddressSchema,\n maker_address: EvmAddressSchema,\n signature_type: SignatureTypeSchema,\n leg_position_ids: z.array(PositionIdSchema),\n condition_id: ComboConditionIdSchema,\n yes_position_id: PositionIdSchema,\n no_position_id: PositionIdSchema,\n direction: RfqDirectionSchema,\n side: RfqSideSchema,\n fill_size_e6: E6BigIntStringToDecimalStringSchema,\n price_e6: E6BigIntStringToDecimalStringSchema,\n confirm_by: EpochMillisecondsSchema,\n },\n).transform((message) => ({\n conditionId: message.condition_id,\n confirmBy: message.confirm_by,\n direction: message.direction,\n fillSize: message.fill_size_e6,\n legPositionIds: message.leg_position_ids,\n makerAddress: message.maker_address,\n noPositionId: message.no_position_id,\n price: message.price_e6,\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n side: message.side,\n signatureType: message.signature_type,\n signerAddress: message.signer_address,\n type: 'confirmation_request' as const,\n yesPositionId: message.yes_position_id,\n}));\n\nexport type RfqConfirmationRequest = z.infer<\n typeof RfqConfirmationRequestSchema\n>;\n\nexport type RfqConfirmationResponseMessage = {\n type: 'RFQ_CONFIRMATION_RESPONSE';\n rfq_id: RfqId;\n quote_id: RfqQuoteId;\n decision: RfqConfirmationDecision;\n};\n\nexport const RfqConfirmationAckSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.ConfirmationAck),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n decision: RfqConfirmationDecisionSchema,\n}).transform((message) => ({\n decision: message.decision,\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n type: 'confirmation_ack' as const,\n}));\n\nexport type RfqConfirmationAck = z.infer<typeof RfqConfirmationAckSchema>;\n\nexport const RfqExecutionUpdateSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.ExecutionUpdate),\n rfq_id: RfqIdSchema,\n status: RfqExecutionStatusSchema,\n tx_hash: TxHashSchema.optional(),\n}).transform((message) => ({\n rfqId: message.rfq_id,\n status: message.status,\n ...(message.tx_hash === undefined ? {} : { txHash: message.tx_hash }),\n type: 'execution_update' as const,\n}));\n\nexport type RfqExecutionUpdate = z.infer<typeof RfqExecutionUpdateSchema>;\n\nexport const RfqTradeSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.Trade),\n rfq_id: RfqIdSchema,\n requester_id: RfqRequestorPublicIdSchema,\n condition_id: ComboConditionIdSchema,\n leg_position_ids: z.array(PositionIdSchema),\n direction: RfqDirectionSchema,\n side: RfqSideSchema,\n price_e6: E6BigIntStringToDecimalStringSchema,\n size_e6: E6BigIntStringToDecimalStringSchema,\n executed_at: EpochMillisecondsSchema,\n}).transform((message) => ({\n conditionId: message.condition_id,\n direction: message.direction,\n executedAt: message.executed_at,\n legPositionIds: message.leg_position_ids,\n price: message.price_e6,\n requesterId: message.requester_id,\n rfqId: message.rfq_id,\n side: message.side,\n size: message.size_e6,\n type: 'trade' as const,\n}));\n\nexport type RfqTrade = z.infer<typeof RfqTradeSchema>;\n\nexport const RfqErrorMessageSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.Error),\n error_id: z.string().optional(),\n request_type: z.string().optional(),\n rfq_id: RfqIdSchema.optional(),\n quote_id: RfqQuoteIdSchema.optional(),\n code: RfqErrorCodeSchema,\n error: z.string(),\n request: z.unknown().optional(),\n}).transform((message) => ({\n code: message.code,\n errorId: message.error_id,\n message: message.error,\n quoteId: message.quote_id,\n requestType: message.request_type,\n rfqId: message.rfq_id,\n type: 'rfq_error' as const,\n}));\n\nexport type RfqErrorMessage = z.infer<typeof RfqErrorMessageSchema>;\n\nexport const RfqQuoterInboundMessageSchema = z.discriminatedUnion('type', [\n RfqAuthResponseMessageSchema,\n RfqQuoteRequestSchema,\n RfqQuoteAckSchema,\n RfqQuoteCancelAckSchema,\n RfqConfirmationRequestSchema,\n RfqConfirmationAckSchema,\n RfqExecutionUpdateSchema,\n RfqTradeSchema,\n RfqErrorMessageSchema,\n]);\n\nexport type RfqQuoterInboundMessage = z.infer<\n typeof RfqQuoterInboundMessageSchema\n>;\n\nexport type RfqQuoterOutboundMessage =\n | RfqQuoteMessage\n | RfqQuoteCancelMessage\n | RfqConfirmationResponseMessage;\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/rfq.ts"],"names":["RfqDirection","RfqSide","RfqConfirmationDecision","RfqExecutionStatus","RfqRequestedSizeUnit","RfqErrorCode","RfqDirectionSchema","z","RfqSideSchema","RfqConfirmationDecisionSchema","RfqExecutionStatusSchema","RfqRequestedSizeUnitSchema","RfqErrorCodeSchema","ComboMarketSchema","MarketIdSchema","CtfConditionIdSchema","PositionIdSchema","DecimalStringSchema","market","context","ListComboMarketsResponseSchema","PaginationCursorSchema","response","RfqRequestedSizeSchema","E6BigIntStringToDecimalStringSchema","size","RfqKnownInboundType","RfqKnownInboundMessageSchema","RfqAuthResponseMessageSchema","EvmAddressSchema","RfqQuoteRequestSchema","RfqIdSchema","RfqRequestorPublicIdSchema","ComboConditionIdSchema","EpochMillisecondsSchema","message","RfqQuoteAckSchema","RfqQuoteIdSchema","RfqQuoteCancelAckSchema","RfqConfirmationRequestSchema","SignatureTypeSchema","RfqConfirmationAckSchema","RfqExecutionUpdateSchema","TxHashSchema","RfqTradeSchema","RfqErrorMessageSchema","RfqQuoterInboundMessageSchema"],"mappings":"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","file":"rfq.js","sourcesContent":["import type {\n Erc1271Signature,\n EvmSignature,\n HexString,\n} from '@polymarket/types';\nimport { z } from 'zod';\nimport { type SignatureType, SignatureTypeSchema } from './clob/signature-type';\nimport type {\n BaseUnits,\n CtfConditionId,\n DecimalString,\n EvmAddress,\n MarketId,\n TokenId,\n} from './shared';\nimport {\n ComboConditionIdSchema,\n CtfConditionIdSchema,\n DecimalStringSchema,\n E6BigIntStringToDecimalStringSchema,\n EpochMillisecondsSchema,\n EvmAddressSchema,\n MarketIdSchema,\n type OrderSide,\n PaginationCursorSchema,\n type PositionId,\n PositionIdSchema,\n type RfqId,\n RfqIdSchema,\n type RfqQuoteId,\n RfqQuoteIdSchema,\n RfqRequestorPublicIdSchema,\n TxHashSchema,\n} from './shared';\n\nexport type {\n RfqId,\n RfqQuoteId,\n RfqRequestorPublicId,\n} from './shared';\n\nexport enum RfqDirection {\n Buy = 'BUY',\n Sell = 'SELL',\n}\n\nexport enum RfqSide {\n Yes = 'YES',\n No = 'NO',\n}\n\nexport enum RfqConfirmationDecision {\n Confirm = 'CONFIRM',\n Decline = 'DECLINE',\n}\n\nexport enum RfqExecutionStatus {\n Matched = 'MATCHED',\n Mined = 'MINED',\n Confirmed = 'CONFIRMED',\n Retrying = 'RETRYING',\n Failed = 'FAILED',\n}\n\nexport enum RfqRequestedSizeUnit {\n Notional = 'notional',\n Shares = 'shares',\n}\n\nexport enum RfqErrorCode {\n AddressMismatch = 'ADDRESS_MISMATCH',\n AllowanceValidationFailed = 'ALLOWANCE_VALIDATION_FAILED',\n BalanceValidationFailed = 'BALANCE_VALIDATION_FAILED',\n ContradictoryLegs = 'CONTRADICTORY_LEGS',\n ExpiredRfq = 'EXPIRED_RFQ',\n InvalidAcceptance = 'INVALID_ACCEPTANCE',\n InvalidConfirmation = 'INVALID_CONFIRMATION',\n InvalidExecutionResult = 'INVALID_EXECUTION_RESULT',\n InvalidIdentity = 'INVALID_IDENTITY',\n InvalidMessage = 'INVALID_MESSAGE',\n InvalidQuote = 'INVALID_QUOTE',\n InvalidRfq = 'INVALID_RFQ',\n InvalidRfqState = 'INVALID_RFQ_STATE',\n InvalidRole = 'INVALID_ROLE',\n InvalidSignature = 'INVALID_SIGNATURE',\n InternalError = 'INTERNAL_ERROR',\n LegMetadataUnavailable = 'LEG_METADATA_UNAVAILABLE',\n MakerAlreadyResponded = 'MAKER_ALREADY_RESPONDED',\n MakerNotRequired = 'MAKER_NOT_REQUIRED',\n PreExecutionBalanceReservationFailed = 'PRE_EXECUTION_BALANCE_RESERVATION_FAILED',\n QuoteMismatch = 'QUOTE_MISMATCH',\n QuoteUnavailable = 'QUOTE_UNAVAILABLE',\n RateLimited = 'RATE_LIMITED',\n RequestFailed = 'REQUEST_FAILED',\n ServiceUnavailable = 'SERVICE_UNAVAILABLE',\n SubmissionWindowClosed = 'SUBMISSION_WINDOW_CLOSED',\n TradeSubmissionFailed = 'TRADE_SUBMISSION_FAILED',\n Unauthenticated = 'UNAUTHENTICATED',\n UnauthorizedRole = 'UNAUTHORIZED_ROLE',\n UnknownRfq = 'UNKNOWN_RFQ',\n}\n\nexport const RfqDirectionSchema = z.enum(RfqDirection);\nexport const RfqSideSchema = z.literal(RfqSide.Yes);\nexport const RfqConfirmationDecisionSchema = z.enum(RfqConfirmationDecision);\nexport const RfqExecutionStatusSchema = z.enum(RfqExecutionStatus);\nexport const RfqRequestedSizeUnitSchema = z.enum(RfqRequestedSizeUnit);\nexport const RfqErrorCodeSchema = z.enum(RfqErrorCode);\n\nexport type ComboMarket = {\n id: MarketId;\n conditionId: CtfConditionId;\n slug: string;\n title: string;\n outcomes: ComboMarketOutcomes;\n image: string;\n volume: number;\n tags: string[];\n};\n\nexport type ComboMarketOutcome = {\n label: string;\n positionId: PositionId;\n price: DecimalString;\n};\n\nexport type ComboMarketOutcomes = {\n yes: ComboMarketOutcome;\n no: ComboMarketOutcome;\n};\n\nexport const ComboMarketSchema = z\n .object({\n id: MarketIdSchema,\n condition_id: CtfConditionIdSchema,\n position_ids: z.array(PositionIdSchema),\n slug: z.string(),\n title: z.string(),\n outcomes: z.array(z.string()),\n outcome_prices: z.array(DecimalStringSchema),\n image: z.string(),\n volume: z.number(),\n tags: z.array(z.string()),\n })\n .superRefine((market, context) => {\n if (market.outcomes.length !== 2) {\n context.addIssue({\n code: 'custom',\n message: `Expected binary combo market outcomes, received ${market.outcomes.length}.`,\n path: ['outcomes'],\n });\n }\n\n if (market.position_ids.length !== market.outcomes.length) {\n context.addIssue({\n code: 'custom',\n message: 'Expected position_ids and outcomes to have matching lengths.',\n path: ['position_ids'],\n });\n }\n\n if (market.outcome_prices.length !== market.outcomes.length) {\n context.addIssue({\n code: 'custom',\n message:\n 'Expected outcome_prices and outcomes to have matching lengths.',\n path: ['outcome_prices'],\n });\n }\n })\n .transform(\n (market): ComboMarket => ({\n conditionId: market.condition_id,\n id: market.id,\n image: market.image,\n outcomes: {\n yes: {\n label: market.outcomes[0] as string,\n positionId: market.position_ids[0] as PositionId,\n price: market.outcome_prices[0] as DecimalString,\n },\n no: {\n label: market.outcomes[1] as string,\n positionId: market.position_ids[1] as PositionId,\n price: market.outcome_prices[1] as DecimalString,\n },\n },\n slug: market.slug,\n tags: market.tags,\n title: market.title,\n volume: market.volume,\n }),\n );\n\nexport const ListComboMarketsResponseSchema = z\n .object({\n markets: z.array(ComboMarketSchema),\n next_cursor: PaginationCursorSchema.nullish(),\n })\n .transform((response) => ({\n markets: response.markets,\n nextCursor: response.next_cursor ?? undefined,\n }));\n\nexport type ListComboMarketsResponse = z.infer<\n typeof ListComboMarketsResponseSchema\n>;\n\nexport type RfqRequestedSize =\n | {\n unit: RfqRequestedSizeUnit.Notional;\n value: DecimalString;\n }\n | {\n unit: RfqRequestedSizeUnit.Shares;\n value: DecimalString;\n };\n\nconst RfqRequestedSizeSchema = z\n .discriminatedUnion('unit', [\n z.object({\n unit: z.literal(RfqRequestedSizeUnit.Notional),\n value_e6: E6BigIntStringToDecimalStringSchema,\n }),\n z.object({\n unit: z.literal(RfqRequestedSizeUnit.Shares),\n value_e6: E6BigIntStringToDecimalStringSchema,\n }),\n ])\n .transform(\n (size): RfqRequestedSize => ({\n unit: size.unit,\n value: size.value_e6,\n }),\n ) satisfies z.ZodType<RfqRequestedSize>;\n\nexport type RfqSignedOrder = {\n salt: string;\n maker: EvmAddress;\n signer: EvmAddress;\n tokenId: PositionId | TokenId;\n makerAmount: BaseUnits;\n takerAmount: BaseUnits;\n side: RfqOrderSide;\n signatureType: SignatureType;\n timestamp: string;\n builder?: HexString;\n expiration?: string;\n metadata?: HexString;\n signature: EvmSignature | Erc1271Signature;\n};\n\nexport type RfqOrderSide = OrderSide | 0 | 1;\n\nexport type RfqAuthMessage = {\n type: 'auth';\n auth: {\n apiKey: string;\n passphrase: string;\n secret: string;\n };\n identity: {\n signer_address: EvmAddress;\n maker_address: EvmAddress;\n signature_type: SignatureType;\n };\n};\n\nexport enum RfqKnownInboundType {\n Auth = 'auth',\n QuoteRequest = 'RFQ_REQUEST',\n QuoteAck = 'ACK_RFQ_QUOTE',\n QuoteCancelAck = 'ACK_RFQ_QUOTE_CANCEL',\n ConfirmationRequest = 'RFQ_CONFIRMATION_REQUEST',\n ConfirmationAck = 'ACK_RFQ_CONFIRMATION_RESPONSE',\n ExecutionUpdate = 'RFQ_EXECUTION_UPDATE',\n Trade = 'RFQ_TRADE',\n Error = 'RFQ_ERROR',\n}\n\nexport const RfqKnownInboundMessageSchema = z.object({\n type: z.enum(RfqKnownInboundType),\n});\n\nexport const RfqAuthResponseMessageSchema = RfqKnownInboundMessageSchema.extend(\n {\n type: z.literal(RfqKnownInboundType.Auth),\n success: z.boolean(),\n address: EvmAddressSchema.optional(),\n role: z.string().optional(),\n error: z.string().optional(),\n },\n);\n\nexport type RfqAuthResponseMessage = z.infer<\n typeof RfqAuthResponseMessageSchema\n>;\n\nexport const RfqQuoteRequestSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.QuoteRequest),\n rfq_id: RfqIdSchema,\n requestor_public_id: RfqRequestorPublicIdSchema,\n leg_position_ids: z.array(PositionIdSchema),\n condition_id: ComboConditionIdSchema,\n yes_position_id: PositionIdSchema,\n no_position_id: PositionIdSchema,\n direction: RfqDirectionSchema,\n side: RfqSideSchema,\n requested_size: RfqRequestedSizeSchema,\n submission_deadline: EpochMillisecondsSchema,\n}).transform((message) => ({\n conditionId: message.condition_id,\n direction: message.direction,\n legPositionIds: message.leg_position_ids,\n noPositionId: message.no_position_id,\n requestorPublicId: message.requestor_public_id,\n requestedSize: message.requested_size,\n rfqId: message.rfq_id,\n side: message.side,\n submissionDeadline: message.submission_deadline,\n type: 'quote_request' as const,\n yesPositionId: message.yes_position_id,\n}));\n\nexport type RfqQuoteRequest = z.infer<typeof RfqQuoteRequestSchema>;\n\nexport type RfqQuoteMessage = {\n type: 'RFQ_QUOTE';\n rfq_id: RfqId;\n price_e6: string;\n size_e6: string;\n signed_order: RfqSignedOrder;\n};\n\nexport type RfqQuoteCancelMessage = {\n type: 'RFQ_QUOTE_CANCEL';\n rfq_id: RfqId;\n quote_id: RfqQuoteId;\n signer_address: EvmAddress;\n maker_address: EvmAddress;\n};\n\nexport const RfqQuoteAckSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.QuoteAck),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n}).transform((message) => ({\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n type: 'quote_ack' as const,\n}));\n\nexport type RfqQuoteAck = z.infer<typeof RfqQuoteAckSchema>;\n\nexport const RfqQuoteCancelAckSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.QuoteCancelAck),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n}).transform((message) => ({\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n type: 'quote_cancel_ack' as const,\n}));\n\nexport type RfqQuoteCancelAck = z.infer<typeof RfqQuoteCancelAckSchema>;\n\nexport const RfqConfirmationRequestSchema = RfqKnownInboundMessageSchema.extend(\n {\n type: z.literal(RfqKnownInboundType.ConfirmationRequest),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n signer_address: EvmAddressSchema,\n maker_address: EvmAddressSchema,\n signature_type: SignatureTypeSchema,\n leg_position_ids: z.array(PositionIdSchema),\n condition_id: ComboConditionIdSchema,\n yes_position_id: PositionIdSchema,\n no_position_id: PositionIdSchema,\n direction: RfqDirectionSchema,\n side: RfqSideSchema,\n fill_size_e6: E6BigIntStringToDecimalStringSchema,\n price_e6: E6BigIntStringToDecimalStringSchema,\n confirm_by: EpochMillisecondsSchema,\n },\n).transform((message) => ({\n conditionId: message.condition_id,\n confirmBy: message.confirm_by,\n direction: message.direction,\n fillSize: message.fill_size_e6,\n legPositionIds: message.leg_position_ids,\n makerAddress: message.maker_address,\n noPositionId: message.no_position_id,\n price: message.price_e6,\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n side: message.side,\n signatureType: message.signature_type,\n signerAddress: message.signer_address,\n type: 'confirmation_request' as const,\n yesPositionId: message.yes_position_id,\n}));\n\nexport type RfqConfirmationRequest = z.infer<\n typeof RfqConfirmationRequestSchema\n>;\n\nexport type RfqConfirmationResponseMessage = {\n type: 'RFQ_CONFIRMATION_RESPONSE';\n rfq_id: RfqId;\n quote_id: RfqQuoteId;\n decision: RfqConfirmationDecision;\n};\n\nexport const RfqConfirmationAckSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.ConfirmationAck),\n rfq_id: RfqIdSchema,\n quote_id: RfqQuoteIdSchema,\n decision: RfqConfirmationDecisionSchema,\n}).transform((message) => ({\n decision: message.decision,\n quoteId: message.quote_id,\n rfqId: message.rfq_id,\n type: 'confirmation_ack' as const,\n}));\n\nexport type RfqConfirmationAck = z.infer<typeof RfqConfirmationAckSchema>;\n\nexport const RfqExecutionUpdateSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.ExecutionUpdate),\n rfq_id: RfqIdSchema,\n status: RfqExecutionStatusSchema,\n tx_hash: TxHashSchema.optional(),\n}).transform((message) => ({\n rfqId: message.rfq_id,\n status: message.status,\n ...(message.tx_hash === undefined ? {} : { txHash: message.tx_hash }),\n type: 'execution_update' as const,\n}));\n\nexport type RfqExecutionUpdate = z.infer<typeof RfqExecutionUpdateSchema>;\n\nexport const RfqTradeSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.Trade),\n rfq_id: RfqIdSchema,\n requester_id: RfqRequestorPublicIdSchema,\n condition_id: ComboConditionIdSchema,\n leg_position_ids: z.array(PositionIdSchema),\n direction: RfqDirectionSchema,\n side: RfqSideSchema,\n price_e6: E6BigIntStringToDecimalStringSchema,\n size_e6: E6BigIntStringToDecimalStringSchema,\n executed_at: EpochMillisecondsSchema,\n}).transform((message) => ({\n conditionId: message.condition_id,\n direction: message.direction,\n executedAt: message.executed_at,\n legPositionIds: message.leg_position_ids,\n price: message.price_e6,\n requesterId: message.requester_id,\n rfqId: message.rfq_id,\n side: message.side,\n size: message.size_e6,\n type: 'trade' as const,\n}));\n\nexport type RfqTrade = z.infer<typeof RfqTradeSchema>;\n\nexport const RfqErrorMessageSchema = RfqKnownInboundMessageSchema.extend({\n type: z.literal(RfqKnownInboundType.Error),\n error_id: z.string().optional(),\n request_type: z.string().optional(),\n rfq_id: RfqIdSchema.optional(),\n quote_id: RfqQuoteIdSchema.optional(),\n code: RfqErrorCodeSchema,\n error: z.string(),\n request: z.unknown().optional(),\n}).transform((message) => ({\n code: message.code,\n errorId: message.error_id,\n message: message.error,\n quoteId: message.quote_id,\n requestType: message.request_type,\n rfqId: message.rfq_id,\n type: 'rfq_error' as const,\n}));\n\nexport type RfqErrorMessage = z.infer<typeof RfqErrorMessageSchema>;\n\nexport const RfqQuoterInboundMessageSchema = z.discriminatedUnion('type', [\n RfqAuthResponseMessageSchema,\n RfqQuoteRequestSchema,\n RfqQuoteAckSchema,\n RfqQuoteCancelAckSchema,\n RfqConfirmationRequestSchema,\n RfqConfirmationAckSchema,\n RfqExecutionUpdateSchema,\n RfqTradeSchema,\n RfqErrorMessageSchema,\n]);\n\nexport type RfqQuoterInboundMessage = z.infer<\n typeof RfqQuoterInboundMessageSchema\n>;\n\nexport type RfqQuoterOutboundMessage =\n | RfqQuoteMessage\n | RfqQuoteCancelMessage\n | RfqConfirmationResponseMessage;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {N,K,O,P}from'../chunk-GYP7YNXL.js';import {Ca,Aa,ya,ra,va as va$1,sa,b,a,L,R,Wa,Za,V,ga as ga$1,ka}from'../chunk-IY6FKANL.js';import {ua,Ha,w,Ea,ca,ga,X as X$1,va,aa,ta,Ja}from'../chunk-VBHCYSM7.js';import {z}from'zod';var k=z.preprocess(t=>typeof t=="string"?t.toUpperCase():t,ua),U=(l=>(l.Matched="TRADE_STATUS_MATCHED",l.MatchedNotBroadcasted="TRADE_STATUS_MATCHED_NOT_BROADCASTED",l.Mined="TRADE_STATUS_MINED",l.Confirmed="TRADE_STATUS_CONFIRMED",l.Retrying="TRADE_STATUS_RETRYING",l.Failed="TRADE_STATUS_FAILED",l))(U||{}),ye=z.preprocess(t=>typeof t!="string"||t.startsWith("TRADE_STATUS_")?t:Object.values(U).find(a=>a.slice(13)===t)??t,z.enum(U)),X=(p=>(p.Live="LIVE",p.Matched="MATCHED",p.Delayed="DELAYED",p.Unmatched="UNMATCHED",p.Canceled="CANCELED",p))(X||{}),ue=z.enum(X),J=z.object({price:Ha,size:Ha}),C=z.string().regex(/^\d+$/).transform(t=>w(new Date(Number(t)*1e3).toISOString())),Se=z.string().regex(/^\d+$/).transform(t=>t==="0"?void 0:w(new Date(Number(t)*1e3).toISOString())),ee=z.object({event_type:z.literal("book"),market:z.string(),asset_id:Ea,bids:z.array(J),asks:z.array(J),hash:z.string().nullish(),timestamp:ca.nullish(),min_order_size:Ha.nullish(),tick_size:Ha.nullish(),neg_risk:z.boolean().nullish(),last_trade_price:Ha.nullish()}).transform(({event_type:t,asset_id:r,min_order_size:a,tick_size:s,neg_risk:o,last_trade_price:p,...l})=>({topic:"market",type:t,payload:{...l,tokenId:r,minOrderSize:a,tickSize:s,negRisk:o,lastTradePrice:p}})),Ee=z.object({asset_id:Ea,price:Ha,size:Ha,side:k,hash:z.string().nullish(),best_bid:Ha.nullish(),best_ask:Ha.nullish()}).transform(({asset_id:t,best_bid:r,best_ask:a,...s})=>({...s,tokenId:t,bestBid:r,bestAsk:a})),te=z.object({event_type:z.literal("price_change"),market:z.string(),price_changes:z.array(Ee),timestamp:ca.nullish()}).transform(({event_type:t,price_changes:r,...a})=>({topic:"market",type:t,payload:{...a,priceChanges:r}})),ne=z.object({event_type:z.literal("last_trade_price"),market:z.string(),asset_id:Ea,price:Ha,size:Ha.nullish(),fee_rate_bps:Ha.nullish(),side:k,timestamp:ca.nullish(),transaction_hash:z.string().nullish()}).transform(({event_type:t,asset_id:r,fee_rate_bps:a,transaction_hash:s,...o})=>({topic:"market",type:t,payload:{...o,tokenId:r,feeRateBps:a,transactionHash:s}})),re=z.object({event_type:z.literal("tick_size_change"),market:z.string(),asset_id:Ea,old_tick_size:Ha.nullish(),new_tick_size:Ha,timestamp:ca.nullish()}).transform(({event_type:t,asset_id:r,old_tick_size:a,new_tick_size:s,...o})=>({topic:"market",type:t,payload:{...o,tokenId:r,oldTickSize:a,newTickSize:s}})),ae=z.object({event_type:z.literal("best_bid_ask"),market:z.string(),asset_id:Ea,best_bid:Ha.nullish(),best_ask:Ha.nullish(),spread:Ha.nullish(),timestamp:ca.nullish()}).transform(({event_type:t,asset_id:r,best_bid:a,best_ask:s,...o})=>({topic:"market",type:t,payload:{...o,tokenId:r,bestBid:a,bestAsk:s}})),se=z.object({id:z.string(),ticker:z.string().nullish(),slug:z.string().nullish(),title:z.string().nullish(),description:z.string().nullish()}),ie=z.object({event_type:z.literal("new_market"),id:z.string(),question:z.string().nullish(),market:z.string(),slug:z.string().nullish(),description:z.string().nullish(),assets_ids:z.array(Ea).nullish(),outcomes:z.array(z.string()).nullish(),event_message:se.nullish(),timestamp:ca.nullish(),tags:z.array(z.string()).nullish(),condition_id:X$1.nullish(),active:z.boolean().nullish(),clob_token_ids:z.array(z.string()).nullish(),sports_market_type:z.string().nullish(),line:Ha.nullish(),game_start_time:ga.nullish(),order_price_min_tick_size:Ha.nullish(),group_item_title:z.string().nullish(),taker_base_fee:Ha.nullish(),fees_enabled:z.boolean().nullish(),fee_schedule:z.unknown().nullish()}).transform(({event_type:t,assets_ids:r,event_message:a,condition_id:s,clob_token_ids:o,sports_market_type:p,game_start_time:l,order_price_min_tick_size:E,group_item_title:f,taker_base_fee:v,fees_enabled:P,fee_schedule:g,...b})=>({topic:"market",type:t,payload:{...b,tokenIds:r,eventMessage:a,conditionId:s,clobTokenIds:o,sportsMarketType:p,gameStartTime:l,orderPriceMinTickSize:E,groupItemTitle:f,takerBaseFee:v,feesEnabled:P,feeSchedule:g}})),oe=z.object({event_type:z.literal("market_resolved"),id:z.string(),market:z.string(),assets_ids:z.array(Ea).nullish(),winning_asset_id:Ea.nullish(),winning_outcome:z.string().nullish(),event_message:se.nullish(),timestamp:ca.nullish(),tags:z.array(z.string()).nullish()}).transform(({event_type:t,assets_ids:r,winning_asset_id:a,winning_outcome:s,event_message:o,...p})=>({topic:"market",type:t,payload:{...p,tokenIds:r,winningTokenId:a,winningOutcome:s,eventMessage:o}})),pe=(s=>(s.Placement="PLACEMENT",s.Update="UPDATE",s.Cancellation="CANCELLATION",s))(pe||{}),fe=z.enum(pe),ve=z.object({event_type:z.literal("order"),id:z.string(),owner:z.string(),market:z.string(),asset_id:Ea,side:k,order_owner:z.string().nullish(),original_size:Ha,size_matched:Ha,price:Ha,associate_trades:z.array(z.string()).nullish(),outcome:z.string().nullish(),type:fe,created_at:C.nullish(),expiration:Se.nullish(),order_type:va.nullish(),status:ue.nullish(),maker_address:z.string().nullish(),timestamp:ca}).transform(({event_type:t,type:r,asset_id:a,order_owner:s,original_size:o,size_matched:p,associate_trades:l,created_at:E,expiration:f,order_type:v,maker_address:P,...g})=>({topic:"user",type:t,payload:{...g,orderEventType:r,tokenId:a,orderOwner:s,originalSize:o,sizeMatched:p,associateTrades:l,createdAt:E,expiresAt:f,orderType:v,makerAddress:P}})),Pe=z.object({order_id:z.string(),owner:z.string(),maker_address:z.string().nullish(),matched_amount:Ha,price:Ha,fee_rate_bps:Ha.nullish(),asset_id:Ea,outcome:z.string().nullish(),outcome_index:z.number().int().nullish(),side:k}).transform(({order_id:t,maker_address:r,matched_amount:a,fee_rate_bps:s,asset_id:o,outcome_index:p,...l})=>({...l,orderId:t,makerAddress:r,matchedAmount:a,feeRateBps:s,tokenId:o,outcomeIndex:p})),ge=z.object({event_type:z.literal("trade"),type:z.literal("TRADE"),id:z.string(),taker_order_id:z.string(),market:z.string(),asset_id:Ea,side:k,size:Ha,fee_rate_bps:Ha.nullish(),price:Ha,status:ye,match_time:C.nullish(),matchtime:C.nullish(),last_update:C.nullish(),outcome:z.string().nullish(),owner:z.string(),trade_owner:z.string().nullish(),maker_address:z.string().nullish(),transaction_hash:z.string().nullish(),bucket_index:z.number().int().nullish(),maker_orders:z.array(Pe).nullish(),trader_side:z.union([z.literal("TAKER"),z.literal("MAKER")]).nullish(),timestamp:ca}).transform(({event_type:t,type:r,taker_order_id:a,asset_id:s,fee_rate_bps:o,match_time:p,matchtime:l,last_update:E,trade_owner:f,maker_address:v,transaction_hash:P,bucket_index:g,maker_orders:b,trader_side:de,...he})=>({topic:"user",type:t,payload:{...he,takerOrderId:a,tokenId:s,feeRateBps:o,matchedAt:p??l,updatedAt:E,tradeOwner:f,makerAddress:v,transactionHash:P,bucketIndex:g,makerOrders:b,traderSide:de}})),Pt=z.discriminatedUnion("event_type",[ee,te,ne,re]),gt=z.discriminatedUnion("event_type",[ae,ie,oe]),_t=z.discriminatedUnion("event_type",[ee,te,ne,re,ae,ie,oe]),kt=z.discriminatedUnion("event_type",[ve,ge]);var _e=z.number().int().nonnegative(),ke=z.string().regex(/^trades::\d+$/),xe=z.string().regex(/^bbo::\d+$/),Te=z.string().regex(/^book::\d+$/),Ce=z.string().regex(/^tickers::(all|\d+)$/),be=z.string().regex(/^statistics::(all|\d+)$/),ze=z.string().regex(/^klines::\d+::(1m|5m|15m|1h|4h|1d|1w)$/),Ue=z.string().regex(/^tpsl::\d+$/),Ie=z.enum(["balances","portfolio","orders","fills","funding","deposits","withdrawals"]),u=z.object({ts:aa,sq:_e}),Me=u.extend({ch:ke,data:Ca}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.trades",type:"trade",channel:t,timestamp:r,sequence:a,payload:s})),Re=u.extend({ch:xe,data:Aa}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.bbo",type:"bbo",channel:t,timestamp:r,sequence:a,payload:s})),Ae=u.extend({ch:Te,data:ya}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.book",type:"book",channel:t,timestamp:r,sequence:a,payload:{instrumentId:ce(t),...s}})),Be=u.extend({ch:Ce,data:ra}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.tickers",type:"ticker",channel:t,timestamp:r,sequence:a,payload:s})),De=u.extend({ch:be,data:va$1}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.statistics",type:"statistic",channel:t,timestamp:r,sequence:a,payload:s})),qe=u.extend({ch:ze,data:z.array(sa)}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.candles",type:"candle",channel:t,timestamp:r,sequence:a,payload:{instrumentId:ce(t),interval:We(t),candles:s}})),Rt=z.union([Me,Re,Ae,Be,De,qe]),we=u.extend({ch:Ie});function S(t,r,a){return we.extend({ch:z.literal(r),data:a}).transform(s=>{let o=s;return {type:t,channel:o.ch,timestamp:o.ts,sequence:o.sq,payload:o.data}})}var Oe=S("balance","balances",L),je=S("portfolio","portfolio",R),Ne=S("order","orders",Wa),Le=S("fill","fills",Za),Fe=S("funding","funding",V),$e=S("deposit","deposits",ga$1),He=S("withdrawal","withdrawals",ka),Ye=z.object({oid:b,st:z.enum(["untriggered","armed","cancelled","expired"]),reason:z.string().optional()}),Ke=u.extend({ch:Ue,data:Ye.transform(t=>({orderId:t.oid,status:t.st,reason:t.reason}))}).transform(({ch:t,ts:r,sq:a,data:s})=>({type:"tpsl",channel:t,timestamp:r,sequence:a,payload:s})),At=z.union([Oe,je,Ne,Le,Fe,$e,He,Ke]);function ce(t){let[,r]=t.split("::");return a.parse(Number(r))}function We(t){let[,,r]=t.split("::");return r}var Ze=z.object({id:z.string(),body:z.string().nullish(),parentEntityType:ta.nullish(),parentEntityID:z.number().int().nullish(),parentCommentID:z.string().nullish(),userAddress:z.string().nullish(),replyAddress:z.string().nullish(),createdAt:z.string().nullish(),updatedAt:z.string().nullish(),media:z.array(O).nullish(),profile:K.nullish(),reactions:z.array(N).nullish(),reportCount:z.number().int().nullish(),reactionCount:z.number().int().nullish(),tradeAsset:z.string().nullish()}),Ge=z.object({topic:z.literal("comments"),type:z.literal("comment_created"),timestamp:aa,payload:P}),Qe=z.object({topic:z.literal("comments"),type:z.literal("comment_removed"),timestamp:aa,payload:Ze}),Ve=z.object({topic:z.literal("comments"),type:z.literal("reaction_created"),timestamp:aa,payload:N}),Je=z.object({topic:z.literal("comments"),type:z.literal("reaction_removed"),timestamp:aa,payload:N}),le=z.object({symbol:z.string(),timestamp:aa,value:Ja}),Xe="prices.crypto.binance",et="prices.crypto.chainlink",tt=z.literal("crypto_prices"),nt=z.literal("crypto_prices_chainlink"),rt=tt.transform(()=>Xe),at=nt.transform(()=>et),st=z.object({topic:rt,type:z.literal("update"),timestamp:aa,payload:le}),it=z.object({topic:at,type:z.literal("update"),timestamp:aa,payload:le}),ot=z.discriminatedUnion("topic",[st,it]),pt=z.object({symbol:z.string(),value:Ja,full_accuracy_value:Ha.nullish(),timestamp:aa,received_at:aa.nullish(),is_carried_forward:z.boolean().nullish()}).transform(({full_accuracy_value:t,received_at:r,is_carried_forward:a,value:s,...o})=>({...o,value:t??s,receivedAt:r,isCarriedForward:a})),ct=z.object({timestamp:z.number(),value:Ja}),lt=z.object({symbol:z.string(),data:z.array(ct)}),mt=z.literal("equity_prices"),dt="prices.equity.pyth",me=mt.transform(()=>dt),ht=z.object({topic:me,type:z.literal("update"),timestamp:aa,payload:pt}),yt=z.object({topic:me,type:z.literal("subscribe"),timestamp:aa,payload:lt}),ut=z.discriminatedUnion("type",[ht,yt]),St=z.discriminatedUnion("type",[Ge,Qe,Ve,Je]),Ot=z.discriminatedUnion("topic",[St,ot,ut]);var Et=z.object({gameId:z.number().int(),sportradarGameId:z.string().nullish(),slug:z.string().nullish(),leagueAbbreviation:z.string(),homeTeam:z.string().nullish(),awayTeam:z.string().nullish(),status:z.string(),live:z.boolean(),ended:z.boolean(),score:z.string(),period:z.string().nullish(),elapsed:z.string().nullish(),finishedTimestamp:ga.nullish(),finished_timestamp:ga.nullish(),turn:z.string().nullish()}).transform(({finishedTimestamp:t,finished_timestamp:r,...a})=>({...a,finishedAt:t??r})),Ft=Et.transform(t=>({topic:"sports",type:"sport_result",payload:t}));export{Ge as CommentCreatedEventSchema,Qe as CommentRemovedEventSchema,St as CommentsEventSchema,st as CryptoPricesBinanceEventSchema,it as CryptoPricesChainlinkEventSchema,ot as CryptoPricesEventSchema,gt as CustomMarketEventSchema,ut as EquityPricesEventSchema,yt as EquityPricesSubscribeEventSchema,ht as EquityPricesUpdateEventSchema,ae as MarketBestBidAskEventSchema,ee as MarketBookEventSchema,_t as MarketEventSchema,ne as MarketLastTradePriceEventSchema,te as MarketPriceChangeEventSchema,oe as MarketResolvedEventSchema,re as MarketTickSizeChangeEventSchema,ie as NewMarketEventSchema,Oe as PerpsBalanceUpdateEventSchema,Re as PerpsBboEventSchema,Ae as PerpsBookEventSchema,qe as PerpsCandleEventSchema,$e as PerpsDepositUpdateEventSchema,Le as PerpsFillUpdateEventSchema,Fe as PerpsFundingUpdateEventSchema,Rt as PerpsMarketDataEventSchema,Ne as PerpsOrderUpdateEventSchema,je as PerpsPortfolioUpdateEventSchema,At as PerpsSessionUpdateEventSchema,De as PerpsStatisticEventSchema,Be as PerpsTickerEventSchema,Ke as PerpsTpSlUpdateEventSchema,Me as PerpsTradeEventSchema,He as PerpsWithdrawalUpdateEventSchema,Ve as ReactionCreatedEventSchema,Je as ReactionRemovedEventSchema,Ot as RealtimeEventSchema,Ft as SportsResultEventSchema,Pt as StandardMarketEventSchema,U as TradeStatus,kt as UserEventSchema,ve as UserOrderEventSchema,pe as UserOrderEventType,X as UserOrderStatus,ge as UserTradeEventSchema};//# sourceMappingURL=index.js.map
|
|
1
|
+
import {N,K,O,P}from'../chunk-G2DC5MZA.js';import {Ca,Aa,ya,ra,va,sa,b,a,L,R,Wa,Za,V,ga,ka}from'../chunk-BI6DX3LX.js';import {wa,Ja,x,Ga,ea,ia,Z,xa,ca,va as va$1,La}from'../chunk-GTLPG5HR.js';import {z}from'zod';var k=z.preprocess(t=>typeof t=="string"?t.toUpperCase():t,wa),U=(l=>(l.Matched="TRADE_STATUS_MATCHED",l.MatchedNotBroadcasted="TRADE_STATUS_MATCHED_NOT_BROADCASTED",l.Mined="TRADE_STATUS_MINED",l.Confirmed="TRADE_STATUS_CONFIRMED",l.Retrying="TRADE_STATUS_RETRYING",l.Failed="TRADE_STATUS_FAILED",l))(U||{}),ye=z.preprocess(t=>typeof t!="string"||t.startsWith("TRADE_STATUS_")?t:Object.values(U).find(a=>a.slice(13)===t)??t,z.enum(U)),X=(p=>(p.Live="LIVE",p.Matched="MATCHED",p.Delayed="DELAYED",p.Unmatched="UNMATCHED",p.Canceled="CANCELED",p))(X||{}),ue=z.enum(X),J=z.object({price:Ja,size:Ja}),C=z.string().regex(/^\d+$/).transform(t=>x(new Date(Number(t)*1e3).toISOString())),Se=z.string().regex(/^\d+$/).transform(t=>t==="0"?void 0:x(new Date(Number(t)*1e3).toISOString())),ee=z.object({event_type:z.literal("book"),market:z.string(),asset_id:Ga,bids:z.array(J),asks:z.array(J),hash:z.string().nullish(),timestamp:ea.nullish(),min_order_size:Ja.nullish(),tick_size:Ja.nullish(),neg_risk:z.boolean().nullish(),last_trade_price:Ja.nullish()}).transform(({event_type:t,asset_id:r,min_order_size:a,tick_size:s,neg_risk:o,last_trade_price:p,...l})=>({topic:"market",type:t,payload:{...l,tokenId:r,minOrderSize:a,tickSize:s,negRisk:o,lastTradePrice:p}})),Ee=z.object({asset_id:Ga,price:Ja,size:Ja,side:k,hash:z.string().nullish(),best_bid:Ja.nullish(),best_ask:Ja.nullish()}).transform(({asset_id:t,best_bid:r,best_ask:a,...s})=>({...s,tokenId:t,bestBid:r,bestAsk:a})),te=z.object({event_type:z.literal("price_change"),market:z.string(),price_changes:z.array(Ee),timestamp:ea.nullish()}).transform(({event_type:t,price_changes:r,...a})=>({topic:"market",type:t,payload:{...a,priceChanges:r}})),ne=z.object({event_type:z.literal("last_trade_price"),market:z.string(),asset_id:Ga,price:Ja,size:Ja.nullish(),fee_rate_bps:Ja.nullish(),side:k,timestamp:ea.nullish(),transaction_hash:z.string().nullish()}).transform(({event_type:t,asset_id:r,fee_rate_bps:a,transaction_hash:s,...o})=>({topic:"market",type:t,payload:{...o,tokenId:r,feeRateBps:a,transactionHash:s}})),re=z.object({event_type:z.literal("tick_size_change"),market:z.string(),asset_id:Ga,old_tick_size:Ja.nullish(),new_tick_size:Ja,timestamp:ea.nullish()}).transform(({event_type:t,asset_id:r,old_tick_size:a,new_tick_size:s,...o})=>({topic:"market",type:t,payload:{...o,tokenId:r,oldTickSize:a,newTickSize:s}})),ae=z.object({event_type:z.literal("best_bid_ask"),market:z.string(),asset_id:Ga,best_bid:Ja.nullish(),best_ask:Ja.nullish(),spread:Ja.nullish(),timestamp:ea.nullish()}).transform(({event_type:t,asset_id:r,best_bid:a,best_ask:s,...o})=>({topic:"market",type:t,payload:{...o,tokenId:r,bestBid:a,bestAsk:s}})),se=z.object({id:z.string(),ticker:z.string().nullish(),slug:z.string().nullish(),title:z.string().nullish(),description:z.string().nullish()}),ie=z.object({event_type:z.literal("new_market"),id:z.string(),question:z.string().nullish(),market:z.string(),slug:z.string().nullish(),description:z.string().nullish(),assets_ids:z.array(Ga).nullish(),outcomes:z.array(z.string()).nullish(),event_message:se.nullish(),timestamp:ea.nullish(),tags:z.array(z.string()).nullish(),condition_id:Z.nullish(),active:z.boolean().nullish(),clob_token_ids:z.array(z.string()).nullish(),sports_market_type:z.string().nullish(),line:Ja.nullish(),game_start_time:ia.nullish(),order_price_min_tick_size:Ja.nullish(),group_item_title:z.string().nullish(),taker_base_fee:Ja.nullish(),fees_enabled:z.boolean().nullish(),fee_schedule:z.unknown().nullish()}).transform(({event_type:t,assets_ids:r,event_message:a,condition_id:s,clob_token_ids:o,sports_market_type:p,game_start_time:l,order_price_min_tick_size:E,group_item_title:f,taker_base_fee:v,fees_enabled:P,fee_schedule:g,...b})=>({topic:"market",type:t,payload:{...b,tokenIds:r,eventMessage:a,conditionId:s,clobTokenIds:o,sportsMarketType:p,gameStartTime:l,orderPriceMinTickSize:E,groupItemTitle:f,takerBaseFee:v,feesEnabled:P,feeSchedule:g}})),oe=z.object({event_type:z.literal("market_resolved"),id:z.string(),market:z.string(),assets_ids:z.array(Ga).nullish(),winning_asset_id:Ga.nullish(),winning_outcome:z.string().nullish(),event_message:se.nullish(),timestamp:ea.nullish(),tags:z.array(z.string()).nullish()}).transform(({event_type:t,assets_ids:r,winning_asset_id:a,winning_outcome:s,event_message:o,...p})=>({topic:"market",type:t,payload:{...p,tokenIds:r,winningTokenId:a,winningOutcome:s,eventMessage:o}})),pe=(s=>(s.Placement="PLACEMENT",s.Update="UPDATE",s.Cancellation="CANCELLATION",s))(pe||{}),fe=z.enum(pe),ve=z.object({event_type:z.literal("order"),id:z.string(),owner:z.string(),market:z.string(),asset_id:Ga,side:k,order_owner:z.string().nullish(),original_size:Ja,size_matched:Ja,price:Ja,associate_trades:z.array(z.string()).nullish(),outcome:z.string().nullish(),type:fe,created_at:C.nullish(),expiration:Se.nullish(),order_type:xa.nullish(),status:ue.nullish(),maker_address:z.string().nullish(),timestamp:ea}).transform(({event_type:t,type:r,asset_id:a,order_owner:s,original_size:o,size_matched:p,associate_trades:l,created_at:E,expiration:f,order_type:v,maker_address:P,...g})=>({topic:"user",type:t,payload:{...g,orderEventType:r,tokenId:a,orderOwner:s,originalSize:o,sizeMatched:p,associateTrades:l,createdAt:E,expiresAt:f,orderType:v,makerAddress:P}})),Pe=z.object({order_id:z.string(),owner:z.string(),maker_address:z.string().nullish(),matched_amount:Ja,price:Ja,fee_rate_bps:Ja.nullish(),asset_id:Ga,outcome:z.string().nullish(),outcome_index:z.number().int().nullish(),side:k}).transform(({order_id:t,maker_address:r,matched_amount:a,fee_rate_bps:s,asset_id:o,outcome_index:p,...l})=>({...l,orderId:t,makerAddress:r,matchedAmount:a,feeRateBps:s,tokenId:o,outcomeIndex:p})),ge=z.object({event_type:z.literal("trade"),type:z.literal("TRADE"),id:z.string(),taker_order_id:z.string(),market:z.string(),asset_id:Ga,side:k,size:Ja,fee_rate_bps:Ja.nullish(),price:Ja,status:ye,match_time:C.nullish(),matchtime:C.nullish(),last_update:C.nullish(),outcome:z.string().nullish(),owner:z.string(),trade_owner:z.string().nullish(),maker_address:z.string().nullish(),transaction_hash:z.string().nullish(),bucket_index:z.number().int().nullish(),maker_orders:z.array(Pe).nullish(),trader_side:z.union([z.literal("TAKER"),z.literal("MAKER")]).nullish(),timestamp:ea}).transform(({event_type:t,type:r,taker_order_id:a,asset_id:s,fee_rate_bps:o,match_time:p,matchtime:l,last_update:E,trade_owner:f,maker_address:v,transaction_hash:P,bucket_index:g,maker_orders:b,trader_side:de,...he})=>({topic:"user",type:t,payload:{...he,takerOrderId:a,tokenId:s,feeRateBps:o,matchedAt:p??l,updatedAt:E,tradeOwner:f,makerAddress:v,transactionHash:P,bucketIndex:g,makerOrders:b,traderSide:de}})),Pt=z.discriminatedUnion("event_type",[ee,te,ne,re]),gt=z.discriminatedUnion("event_type",[ae,ie,oe]),_t=z.discriminatedUnion("event_type",[ee,te,ne,re,ae,ie,oe]),kt=z.discriminatedUnion("event_type",[ve,ge]);var _e=z.number().int().nonnegative(),ke=z.string().regex(/^trades::\d+$/),xe=z.string().regex(/^bbo::\d+$/),Te=z.string().regex(/^book::\d+$/),Ce=z.string().regex(/^tickers::(all|\d+)$/),be=z.string().regex(/^statistics::(all|\d+)$/),ze=z.string().regex(/^klines::\d+::(1m|5m|15m|1h|4h|1d|1w)$/),Ue=z.string().regex(/^tpsl::\d+$/),Ie=z.enum(["balances","portfolio","orders","fills","funding","deposits","withdrawals"]),u=z.object({ts:ca,sq:_e}),Me=u.extend({ch:ke,data:Ca}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.trades",type:"trade",channel:t,timestamp:r,sequence:a,payload:s})),Re=u.extend({ch:xe,data:Aa}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.bbo",type:"bbo",channel:t,timestamp:r,sequence:a,payload:s})),Ae=u.extend({ch:Te,data:ya}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.book",type:"book",channel:t,timestamp:r,sequence:a,payload:{instrumentId:ce(t),...s}})),Be=u.extend({ch:Ce,data:ra}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.tickers",type:"ticker",channel:t,timestamp:r,sequence:a,payload:s})),De=u.extend({ch:be,data:va}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.statistics",type:"statistic",channel:t,timestamp:r,sequence:a,payload:s})),qe=u.extend({ch:ze,data:z.array(sa)}).transform(({ch:t,ts:r,sq:a,data:s})=>({topic:"perps.candles",type:"candle",channel:t,timestamp:r,sequence:a,payload:{instrumentId:ce(t),interval:We(t),candles:s}})),Rt=z.union([Me,Re,Ae,Be,De,qe]),we=u.extend({ch:Ie});function S(t,r,a){return we.extend({ch:z.literal(r),data:a}).transform(s=>{let o=s;return {type:t,channel:o.ch,timestamp:o.ts,sequence:o.sq,payload:o.data}})}var Oe=S("balance","balances",L),je=S("portfolio","portfolio",R),Ne=S("order","orders",Wa),Le=S("fill","fills",Za),Fe=S("funding","funding",V),$e=S("deposit","deposits",ga),He=S("withdrawal","withdrawals",ka),Ye=z.object({oid:b,st:z.enum(["untriggered","armed","cancelled","expired"]),reason:z.string().optional()}),Ke=u.extend({ch:Ue,data:Ye.transform(t=>({orderId:t.oid,status:t.st,reason:t.reason}))}).transform(({ch:t,ts:r,sq:a,data:s})=>({type:"tpsl",channel:t,timestamp:r,sequence:a,payload:s})),At=z.union([Oe,je,Ne,Le,Fe,$e,He,Ke]);function ce(t){let[,r]=t.split("::");return a.parse(Number(r))}function We(t){let[,,r]=t.split("::");return r}var Ze=z.object({id:z.string(),body:z.string().nullish(),parentEntityType:va$1.nullish(),parentEntityID:z.number().int().nullish(),parentCommentID:z.string().nullish(),userAddress:z.string().nullish(),replyAddress:z.string().nullish(),createdAt:z.string().nullish(),updatedAt:z.string().nullish(),media:z.array(O).nullish(),profile:K.nullish(),reactions:z.array(N).nullish(),reportCount:z.number().int().nullish(),reactionCount:z.number().int().nullish(),tradeAsset:z.string().nullish()}),Ge=z.object({topic:z.literal("comments"),type:z.literal("comment_created"),timestamp:ca,payload:P}),Qe=z.object({topic:z.literal("comments"),type:z.literal("comment_removed"),timestamp:ca,payload:Ze}),Ve=z.object({topic:z.literal("comments"),type:z.literal("reaction_created"),timestamp:ca,payload:N}),Je=z.object({topic:z.literal("comments"),type:z.literal("reaction_removed"),timestamp:ca,payload:N}),le=z.object({symbol:z.string(),timestamp:ca,value:La}),Xe="prices.crypto.binance",et="prices.crypto.chainlink",tt=z.literal("crypto_prices"),nt=z.literal("crypto_prices_chainlink"),rt=tt.transform(()=>Xe),at=nt.transform(()=>et),st=z.object({topic:rt,type:z.literal("update"),timestamp:ca,payload:le}),it=z.object({topic:at,type:z.literal("update"),timestamp:ca,payload:le}),ot=z.discriminatedUnion("topic",[st,it]),pt=z.object({symbol:z.string(),value:La,full_accuracy_value:Ja.nullish(),timestamp:ca,received_at:ca.nullish(),is_carried_forward:z.boolean().nullish()}).transform(({full_accuracy_value:t,received_at:r,is_carried_forward:a,value:s,...o})=>({...o,value:t??s,receivedAt:r,isCarriedForward:a})),ct=z.object({timestamp:z.number(),value:La}),lt=z.object({symbol:z.string(),data:z.array(ct)}),mt=z.literal("equity_prices"),dt="prices.equity.pyth",me=mt.transform(()=>dt),ht=z.object({topic:me,type:z.literal("update"),timestamp:ca,payload:pt}),yt=z.object({topic:me,type:z.literal("subscribe"),timestamp:ca,payload:lt}),ut=z.discriminatedUnion("type",[ht,yt]),St=z.discriminatedUnion("type",[Ge,Qe,Ve,Je]),Ot=z.discriminatedUnion("topic",[St,ot,ut]);var Et=z.object({gameId:z.number().int(),sportradarGameId:z.string().nullish(),slug:z.string().nullish(),leagueAbbreviation:z.string(),homeTeam:z.string().nullish(),awayTeam:z.string().nullish(),status:z.string(),live:z.boolean(),ended:z.boolean(),score:z.string(),period:z.string().nullish(),elapsed:z.string().nullish(),finishedTimestamp:ia.nullish(),finished_timestamp:ia.nullish(),turn:z.string().nullish()}).transform(({finishedTimestamp:t,finished_timestamp:r,...a})=>({...a,finishedAt:t??r})),Ft=Et.transform(t=>({topic:"sports",type:"sport_result",payload:t}));export{Ge as CommentCreatedEventSchema,Qe as CommentRemovedEventSchema,St as CommentsEventSchema,st as CryptoPricesBinanceEventSchema,it as CryptoPricesChainlinkEventSchema,ot as CryptoPricesEventSchema,gt as CustomMarketEventSchema,ut as EquityPricesEventSchema,yt as EquityPricesSubscribeEventSchema,ht as EquityPricesUpdateEventSchema,ae as MarketBestBidAskEventSchema,ee as MarketBookEventSchema,_t as MarketEventSchema,ne as MarketLastTradePriceEventSchema,te as MarketPriceChangeEventSchema,oe as MarketResolvedEventSchema,re as MarketTickSizeChangeEventSchema,ie as NewMarketEventSchema,Oe as PerpsBalanceUpdateEventSchema,Re as PerpsBboEventSchema,Ae as PerpsBookEventSchema,qe as PerpsCandleEventSchema,$e as PerpsDepositUpdateEventSchema,Le as PerpsFillUpdateEventSchema,Fe as PerpsFundingUpdateEventSchema,Rt as PerpsMarketDataEventSchema,Ne as PerpsOrderUpdateEventSchema,je as PerpsPortfolioUpdateEventSchema,At as PerpsSessionUpdateEventSchema,De as PerpsStatisticEventSchema,Be as PerpsTickerEventSchema,Ke as PerpsTpSlUpdateEventSchema,Me as PerpsTradeEventSchema,He as PerpsWithdrawalUpdateEventSchema,Ve as ReactionCreatedEventSchema,Je as ReactionRemovedEventSchema,Ot as RealtimeEventSchema,Ft as SportsResultEventSchema,Pt as StandardMarketEventSchema,U as TradeStatus,kt as UserEventSchema,ve as UserOrderEventSchema,pe as UserOrderEventType,X as UserOrderStatus,ge as UserTradeEventSchema};//# sourceMappingURL=index.js.map
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/subscriptions/clob.ts","../../src/subscriptions/perps.ts","../../src/subscriptions/rtds.ts","../../src/subscriptions/sports.ts"],"names":["NormalizedOrderSideSchema","z","value","OrderSideSchema","TradeStatus","TradeStatusSchema","status","UserOrderStatus","UserOrderStatusSchema","OrderBookLevelSchema","DecimalStringSchema","EpochSecondsStringToIsoDateTimeStringSchema","toIsoDateTimeString","ExpirationToIsoDateTimeStringSchema","MarketBookEventSchema","TokenIdSchema","EpochMillisecondsStringSchema","event_type","asset_id","min_order_size","tick_size","neg_risk","last_trade_price","rest","PriceChangeSchema","best_bid","best_ask","MarketPriceChangeEventSchema","price_changes","MarketLastTradePriceEventSchema","fee_rate_bps","transaction_hash","MarketTickSizeChangeEventSchema","old_tick_size","new_tick_size","MarketBestBidAskEventSchema","MarketEventMessageSchema","NewMarketEventSchema","CtfConditionIdSchema","EpochMillisecondsToIsoDateTimeStringSchema","assets_ids","event_message","condition_id","clob_token_ids","sports_market_type","game_start_time","order_price_min_tick_size","group_item_title","taker_base_fee","fees_enabled","fee_schedule","MarketResolvedEventSchema","winning_asset_id","winning_outcome","UserOrderEventType","UserOrderEventTypeSchema","UserOrderEventSchema","OrderTypeSchema","orderEventType","order_owner","original_size","size_matched","associate_trades","created_at","expiration","order_type","maker_address","TradeMakerOrderSchema","order_id","matched_amount","outcome_index","UserTradeEventSchema","_","taker_order_id","match_time","matchtime","last_update","trade_owner","bucket_index","maker_orders","trader_side","StandardMarketEventSchema","CustomMarketEventSchema","MarketEventSchema","UserEventSchema","SequenceSchema","TradesChannelSchema","BboChannelSchema","BookChannelSchema","TickersChannelSchema","StatisticsChannelSchema","CandlesChannelSchema","TpslChannelSchema","PerpsSessionChannelSchema","PerpsUpdateEnvelopeSchema","EpochMillisecondsSchema","PerpsTradeEventSchema","PerpsPublicTradeUpdateSchema","ch","ts","sq","data","PerpsBboEventSchema","PerpsBboUpdateSchema","PerpsBookEventSchema","PerpsBookUpdateSchema","instrumentIdFromChannel","PerpsTickerEventSchema","PerpsTickerEntrySchema","PerpsStatisticEventSchema","PerpsStatisticUpdateSchema","PerpsCandleEventSchema","PerpsCandleSchema","candleIntervalFromChannel","PerpsMarketDataEventSchema","PerpsSessionUpdateEnvelopeSchema","perpsSessionEventSchema","type","channel","payload","message","event","PerpsBalanceUpdateEventSchema","PerpsBalanceSchema","PerpsPortfolioUpdateEventSchema","PerpsPortfolioSchema","PerpsOrderUpdateEventSchema","PerpsOrderUpdateSchema","PerpsFillUpdateEventSchema","PerpsAccountFillUpdateSchema","PerpsFundingUpdateEventSchema","PerpsAccountFundingPaymentEntrySchema","PerpsDepositUpdateEventSchema","PerpsDepositUpdateSchema","PerpsWithdrawalUpdateEventSchema","PerpsWithdrawalUpdateSchema","PerpsTpSlLifecycleUpdateSchema","PerpsOrderIdSchema","PerpsTpSlUpdateEventSchema","update","PerpsSessionUpdateEventSchema","rawInstrumentId","PerpsInstrumentIdSchema","interval","CommentRemovedPayloadSchema","CommentParentEntityTypeSchema","CommentMediaSchema","CommentProfileSchema","ReactionSchema","CommentCreatedEventSchema","CommentSchema","CommentRemovedEventSchema","ReactionCreatedEventSchema","ReactionRemovedEventSchema","PriceUpdatePayloadSchema","DecimalishSchema","CRYPTO_PRICES_BINANCE_TOPIC","CRYPTO_PRICES_CHAINLINK_TOPIC","RawCryptoPricesBinanceTopicSchema","RawCryptoPricesChainlinkTopicSchema","CryptoPricesBinanceTopicSchema","CryptoPricesChainlinkTopicSchema","CryptoPricesBinanceEventSchema","CryptoPricesChainlinkEventSchema","CryptoPricesEventSchema","EquityPriceUpdatePayloadSchema","full_accuracy_value","received_at","is_carried_forward","EquityPriceSnapshotPointSchema","EquityPriceSubscribePayloadSchema","RawEquityPricesTopicSchema","EQUITY_PRICES_TOPIC","EquityPricesTopicSchema","EquityPricesUpdateEventSchema","EquityPricesSubscribeEventSchema","EquityPricesEventSchema","CommentsEventSchema","RealtimeEventSchema","SportsResultPayloadSchema","finishedTimestamp","finished_timestamp","SportsResultEventSchema"],"mappings":"mOAaA,IAAMA,EAAkDC,CAAAA,CAAE,UAAA,CACvDC,CAAAA,EAAW,OAAOA,CAAAA,EAAU,QAAA,CAAWA,CAAAA,CAAM,WAAA,GAAgBA,CAAAA,CAC9DC,EACF,CAAA,CAEYC,CAAAA,CAAAA,CAAAA,CAAAA,GACVA,CAAAA,CAAA,OAAA,CAAU,sBAAA,CACVA,CAAAA,CAAA,sBAAwB,sCAAA,CACxBA,CAAAA,CAAA,KAAA,CAAQ,oBAAA,CACRA,EAAA,SAAA,CAAY,wBAAA,CACZA,CAAAA,CAAA,QAAA,CAAW,wBACXA,CAAAA,CAAA,MAAA,CAAS,qBAAA,CANCA,CAAAA,CAAAA,EAAAA,CAAAA,EAAA,EAAA,CAAA,CASNC,EAAAA,CAAoBJ,CAAAA,CAAE,UAAA,CAAYC,GAClC,OAAOA,CAAAA,EAAU,QAAA,EAAYA,CAAAA,CAAM,WAAW,eAAe,CAAA,CACxDA,CAAAA,CAGU,MAAA,CAAO,OAAOE,CAAW,CAAA,CAAE,IAAA,CAC3CE,CAAAA,EAAWA,CAAAA,CAAO,KAAA,CAAM,EAAsB,CAAA,GAAMJ,CACvD,CAAA,EAEqBA,CAAAA,CACpBD,CAAAA,CAAE,IAAA,CAAKG,CAAW,CAAC,CAAA,CAEVG,CAAAA,CAAAA,CAAAA,CAAAA,GACVA,CAAAA,CAAA,KAAO,MAAA,CACPA,CAAAA,CAAA,OAAA,CAAU,SAAA,CACVA,CAAAA,CAAA,OAAA,CAAU,SAAA,CACVA,CAAAA,CAAA,UAAY,WAAA,CACZA,CAAAA,CAAA,QAAA,CAAW,UAAA,CALDA,OAAA,EAAA,CAAA,CAQNC,EAAAA,CAAwBP,CAAAA,CAAE,IAAA,CAAKM,CAAe,CAAA,CAE9CE,CAAAA,CAAuBR,CAAAA,CAAE,MAAA,CAAO,CACpC,KAAA,CAAOS,EAAAA,CACP,IAAA,CAAMA,EACR,CAAC,CAAA,CAEKC,CAAAA,CAA8CV,CAAAA,CACjD,QAAO,CACP,KAAA,CAAM,OAAO,CAAA,CACb,UAAWC,CAAAA,EACVU,CAAAA,CAAoB,IAAI,IAAA,CAAK,MAAA,CAAOV,CAAK,CAAA,CAAI,GAAI,EAAE,WAAA,EAAa,CAClE,CAAA,CAEIW,GAAsCZ,CAAAA,CACzC,MAAA,EAAO,CACP,KAAA,CAAM,OAAO,CAAA,CACb,SAAA,CAAWC,CAAAA,EACVA,CAAAA,GAAU,GAAA,CACN,MAAA,CACAU,CAAAA,CAAoB,IAAI,KAAK,MAAA,CAAOV,CAAK,CAAA,CAAI,GAAI,EAAE,WAAA,EAAa,CACtE,CAAA,CAIWY,GAAwBb,CAAAA,CAClC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,MAAM,CAAA,CAC5B,OAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,IAAA,CAAMd,CAAAA,CAAE,KAAA,CAAMQ,CAAoB,CAAA,CAClC,IAAA,CAAMR,CAAAA,CAAE,KAAA,CAAMQ,CAAoB,CAAA,CAClC,IAAA,CAAMR,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CACzB,SAAA,CAAWe,GAA8B,OAAA,EAAQ,CACjD,cAAA,CAAgBN,EAAAA,CAAoB,SAAQ,CAC5C,SAAA,CAAWA,EAAAA,CAAoB,OAAA,EAAQ,CACvC,QAAA,CAAUT,CAAAA,CAAE,OAAA,GAAU,OAAA,EAAQ,CAC9B,gBAAA,CAAkBS,EAAAA,CAAoB,SACxC,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAO,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,EACA,QAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,IACS,CAEL,KAAA,CAAO,SACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,aAAcC,CAAAA,CACd,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,EACT,cAAA,CAAgBC,CAClB,CACF,CAAA,CAEJ,EAIIE,EAAAA,CAAoBvB,CAAAA,CACvB,MAAA,CAAO,CACN,QAAA,CAAUc,EAAAA,CACV,KAAA,CAAOL,EAAAA,CACP,KAAMA,EAAAA,CACN,IAAA,CAAMV,CAAAA,CACN,IAAA,CAAMC,EAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACzB,SAAUS,EAAAA,CAAoB,OAAA,EAAQ,CACtC,QAAA,CAAUA,EAAAA,CAAoB,OAAA,EAChC,CAAC,EACA,SAAA,CAAU,CAAC,CAAE,QAAA,CAAAQ,EAAU,QAAA,CAAAO,CAAAA,CAAU,QAAA,CAAAC,CAAAA,CAAU,GAAGH,CAAK,CAAA,IAAO,CACzD,GAAGA,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,OAAA,CAASO,EACT,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAISC,GAA+B1B,CAAAA,CACzC,MAAA,CAAO,CACN,UAAA,CAAYA,EAAE,OAAA,CAAQ,cAAc,CAAA,CACpC,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,aAAA,CAAeA,EAAE,KAAA,CAAMuB,EAAiB,CAAA,CACxC,SAAA,CAAWR,EAAAA,CAA8B,OAAA,EAC3C,CAAC,EACA,SAAA,CAAU,CAAC,CAAE,UAAA,CAAAC,CAAAA,CAAY,aAAA,CAAAW,CAAAA,CAAe,GAAGL,CAAK,CAAA,IACxC,CAEL,KAAA,CAAO,QAAA,CACP,KAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,EACH,YAAA,CAAcK,CAChB,CACF,CAAA,CACD,CAAA,CAMUC,EAAAA,CAAkC5B,CAAAA,CAC5C,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,kBAAkB,EACxC,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,SAAUc,EAAAA,CACV,KAAA,CAAOL,EAAAA,CACP,IAAA,CAAMA,EAAAA,CAAoB,OAAA,EAAQ,CAClC,YAAA,CAAcA,GAAoB,OAAA,EAAQ,CAC1C,IAAA,CAAMV,CAAAA,CACN,UAAWgB,EAAAA,CAA8B,OAAA,EAAQ,CACjD,gBAAA,CAAkBf,EAAE,MAAA,EAAO,CAAE,OAAA,EAC/B,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CAAE,UAAA,CAAAgB,CAAAA,CAAY,QAAA,CAAAC,CAAAA,CAAU,aAAAY,CAAAA,CAAc,gBAAA,CAAAC,CAAAA,CAAkB,GAAGR,CAAK,CAAA,IACxD,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,UAAA,CAAYY,EACZ,eAAA,CAAiBC,CACnB,CACF,CAAA,CAEJ,EAMWC,EAAAA,CAAkC/B,CAAAA,CAC5C,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,kBAAkB,EACxC,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,SAAUc,EAAAA,CACV,aAAA,CAAeL,EAAAA,CAAoB,OAAA,GACnC,aAAA,CAAeA,EAAAA,CACf,SAAA,CAAWM,EAAAA,CAA8B,OAAA,EAC3C,CAAC,CAAA,CACA,UACC,CAAC,CAAE,UAAA,CAAAC,CAAAA,CAAY,SAAAC,CAAAA,CAAU,aAAA,CAAAe,CAAAA,CAAe,aAAA,CAAAC,EAAe,GAAGX,CAAK,CAAA,IACtD,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,CAAAA,CACN,QAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,EACT,WAAA,CAAae,CAAAA,CACb,WAAA,CAAaC,CACf,CACF,CAAA,CAEJ,CAAA,CAMWC,EAAAA,CAA8BlC,CAAAA,CACxC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,QAAQ,cAAc,CAAA,CACpC,MAAA,CAAQA,CAAAA,CAAE,QAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,QAAA,CAAUL,GAAoB,OAAA,EAAQ,CACtC,QAAA,CAAUA,EAAAA,CAAoB,OAAA,EAAQ,CACtC,MAAA,CAAQA,EAAAA,CAAoB,SAAQ,CACpC,SAAA,CAAWM,EAAAA,CAA8B,OAAA,EAC3C,CAAC,CAAA,CACA,SAAA,CAAU,CAAC,CAAE,UAAA,CAAAC,CAAAA,CAAY,QAAA,CAAAC,CAAAA,CAAU,QAAA,CAAAO,CAAAA,CAAU,QAAA,CAAAC,CAAAA,CAAU,GAAGH,CAAK,CAAA,IACvD,CAEL,KAAA,CAAO,SACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,OAAA,CAASO,CAAAA,CACT,OAAA,CAASC,CACX,CACF,EACD,CAAA,CAIGU,EAAAA,CAA2BnC,CAAAA,CAAE,MAAA,CAAO,CACxC,EAAA,CAAIA,CAAAA,CAAE,MAAA,EAAO,CACb,OAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC3B,IAAA,CAAMA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CACzB,KAAA,CAAOA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAC1B,WAAA,CAAaA,EAAE,MAAA,EAAO,CAAE,OAAA,EAC1B,CAAC,CAAA,CAIYoC,EAAAA,CAAuBpC,CAAAA,CACjC,OAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,YAAY,CAAA,CAClC,EAAA,CAAIA,CAAAA,CAAE,MAAA,GACN,QAAA,CAAUA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC7B,MAAA,CAAQA,CAAAA,CAAE,QAAO,CACjB,IAAA,CAAMA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CACzB,WAAA,CAAaA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAChC,UAAA,CAAYA,CAAAA,CAAE,KAAA,CAAMc,EAAa,CAAA,CAAE,SAAQ,CAC3C,QAAA,CAAUd,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,SAAQ,CACtC,aAAA,CAAemC,EAAAA,CAAyB,OAAA,EAAQ,CAChD,SAAA,CAAWpB,EAAAA,CAA8B,OAAA,GACzC,IAAA,CAAMf,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,QAAQ,CAAA,CAAE,OAAA,EAAQ,CAClC,aAAcqC,GAAAA,CAAqB,OAAA,EAAQ,CAC3C,MAAA,CAAQrC,CAAAA,CAAE,OAAA,EAAQ,CAAE,OAAA,GACpB,cAAA,CAAgBA,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,QAAQ,CAAA,CAAE,OAAA,EAAQ,CAC5C,mBAAoBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACvC,IAAA,CAAMS,EAAAA,CAAoB,OAAA,GAC1B,eAAA,CAAiB6B,EAAAA,CAA2C,OAAA,EAAQ,CACpE,0BAA2B7B,EAAAA,CAAoB,OAAA,EAAQ,CACvD,gBAAA,CAAkBT,EAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACrC,cAAA,CAAgBS,EAAAA,CAAoB,OAAA,EAAQ,CAC5C,aAAcT,CAAAA,CAAE,OAAA,EAAQ,CAAE,OAAA,GAC1B,YAAA,CAAcA,CAAAA,CAAE,OAAA,EAAQ,CAAE,SAC5B,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAgB,CAAAA,CACA,WAAAuB,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,EACA,cAAA,CAAAC,CAAAA,CACA,kBAAA,CAAAC,CAAAA,CACA,gBAAAC,CAAAA,CACA,yBAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,EACA,YAAA,CAAAC,CAAAA,CACA,GAAG3B,CACL,KACS,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,EACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,QAAA,CAAUiB,CAAAA,CACV,YAAA,CAAcC,CAAAA,CACd,YAAaC,CAAAA,CACb,YAAA,CAAcC,CAAAA,CACd,gBAAA,CAAkBC,EAClB,aAAA,CAAeC,CAAAA,CACf,qBAAA,CAAuBC,CAAAA,CACvB,eAAgBC,CAAAA,CAChB,YAAA,CAAcC,CAAAA,CACd,WAAA,CAAaC,CAAAA,CACb,WAAA,CAAaC,CACf,CACF,EAEJ,CAAA,CAIWC,EAAAA,CAA4BlD,CAAAA,CACtC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,iBAAiB,EACvC,EAAA,CAAIA,CAAAA,CAAE,MAAA,EAAO,CACb,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,WAAYA,CAAAA,CAAE,KAAA,CAAMc,EAAa,CAAA,CAAE,SAAQ,CAC3C,gBAAA,CAAkBA,EAAAA,CAAc,OAAA,GAChC,eAAA,CAAiBd,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACpC,aAAA,CAAemC,EAAAA,CAAyB,SAAQ,CAChD,SAAA,CAAWpB,EAAAA,CAA8B,OAAA,GACzC,IAAA,CAAMf,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,QAAQ,CAAA,CAAE,OAAA,EAC5B,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAgB,CAAAA,CACA,UAAA,CAAAuB,CAAAA,CACA,iBAAAY,CAAAA,CACA,eAAA,CAAAC,CAAAA,CACA,aAAA,CAAAZ,EACA,GAAGlB,CACL,CAAA,IACS,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,CAAAA,CACN,QAAS,CACP,GAAGM,CAAAA,CACH,QAAA,CAAUiB,EACV,cAAA,CAAgBY,CAAAA,CAChB,cAAA,CAAgBC,CAAAA,CAChB,aAAcZ,CAChB,CACF,CAAA,CAEJ,CAAA,CAIUa,EAAAA,CAAAA,CAAAA,CAAAA,GACVA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,EAAA,MAAA,CAAS,QAAA,CACTA,CAAAA,CAAA,YAAA,CAAe,eAHLA,CAAAA,CAAAA,EAAAA,EAAAA,EAAA,EAAA,CAAA,CAMNC,EAAAA,CAA2BtD,CAAAA,CAAE,KAAKqD,EAAkB,CAAA,CAE7CE,EAAAA,CAAuBvD,CAAAA,CACjC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,QAAQ,OAAO,CAAA,CAC7B,EAAA,CAAIA,CAAAA,CAAE,QAAO,CACb,KAAA,CAAOA,CAAAA,CAAE,MAAA,GACT,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,IAAA,CAAMf,CAAAA,CACN,YAAaC,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GACxB,aAAA,CAAeS,EAAAA,CACf,YAAA,CAAcA,EAAAA,CACd,MAAOA,EAAAA,CACP,gBAAA,CAAkBT,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,SAAQ,CAC9C,OAAA,CAASA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC5B,IAAA,CAAMsD,GACN,UAAA,CAAY5C,CAAAA,CAA4C,OAAA,EAAQ,CAChE,UAAA,CAAYE,EAAAA,CAAoC,OAAA,EAAQ,CACxD,WAAY4C,EAAAA,CAAgB,OAAA,EAAQ,CACpC,MAAA,CAAQjD,GAAsB,OAAA,EAAQ,CACtC,aAAA,CAAeP,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAClC,SAAA,CAAWe,EACb,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAC,CAAAA,CACA,IAAA,CAAMyC,EACN,QAAA,CAAAxC,CAAAA,CACA,WAAA,CAAAyC,CAAAA,CACA,cAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,EACA,UAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,GAAG3C,CACL,CAAA,IACS,CAEL,KAAA,CAAO,OACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,cAAA,CAAAmC,CAAAA,CACA,QAASxC,CAAAA,CACT,UAAA,CAAYyC,CAAAA,CACZ,YAAA,CAAcC,EACd,WAAA,CAAaC,CAAAA,CACb,eAAA,CAAiBC,CAAAA,CACjB,UAAWC,CAAAA,CACX,SAAA,CAAWC,CAAAA,CACX,SAAA,CAAWC,CAAAA,CACX,YAAA,CAAcC,CAChB,CACF,EAEJ,CAAA,CAIIC,EAAAA,CAAwBlE,CAAAA,CAC3B,MAAA,CAAO,CACN,QAAA,CAAUA,CAAAA,CAAE,MAAA,EAAO,CACnB,MAAOA,CAAAA,CAAE,MAAA,EAAO,CAChB,aAAA,CAAeA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC1B,cAAA,CAAgBS,EAAAA,CAChB,KAAA,CAAOA,EAAAA,CACP,aAAcA,EAAAA,CAAoB,OAAA,EAAQ,CAC1C,QAAA,CAAUK,GACV,OAAA,CAASd,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC5B,aAAA,CAAeA,CAAAA,CAAE,QAAO,CAAE,GAAA,EAAI,CAAE,OAAA,GAChC,IAAA,CAAMD,CACR,CAAC,CAAA,CACA,UACC,CAAC,CACC,QAAA,CAAAoE,CAAAA,CACA,aAAA,CAAAF,CAAAA,CACA,cAAA,CAAAG,CAAAA,CACA,aAAAvC,CAAAA,CACA,QAAA,CAAAZ,CAAAA,CACA,aAAA,CAAAoD,EACA,GAAG/C,CACL,CAAA,IAAO,CACL,GAAGA,CAAAA,CACH,OAAA,CAAS6C,CAAAA,CACT,YAAA,CAAcF,CAAAA,CACd,aAAA,CAAeG,CAAAA,CACf,UAAA,CAAYvC,EACZ,OAAA,CAASZ,CAAAA,CACT,YAAA,CAAcoD,CAChB,EACF,CAAA,CAIWC,EAAAA,CAAuBtE,CAAAA,CACjC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAA,CAC7B,IAAA,CAAMA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAA,CACvB,EAAA,CAAIA,CAAAA,CAAE,MAAA,GACN,cAAA,CAAgBA,CAAAA,CAAE,MAAA,EAAO,CACzB,OAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,IAAA,CAAMf,CAAAA,CACN,IAAA,CAAMU,GACN,YAAA,CAAcA,EAAAA,CAAoB,OAAA,EAAQ,CAC1C,MAAOA,EAAAA,CACP,MAAA,CAAQL,EAAAA,CACR,UAAA,CAAYM,EAA4C,OAAA,EAAQ,CAChE,SAAA,CAAWA,CAAAA,CAA4C,OAAA,EAAQ,CAC/D,WAAA,CAAaA,CAAAA,CAA4C,SAAQ,CACjE,OAAA,CAASV,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CAC5B,KAAA,CAAOA,CAAAA,CAAE,QAAO,CAChB,WAAA,CAAaA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAChC,aAAA,CAAeA,EAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAClC,iBAAkBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC7B,YAAA,CAAcA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,OAAA,EAAQ,CACvC,aAAcA,CAAAA,CAAE,KAAA,CAAMkE,EAAqB,CAAA,CAAE,SAAQ,CACrD,WAAA,CAAalE,CAAAA,CAAE,KAAA,CAAM,CAACA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAA,CAAGA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAC,CAAC,CAAA,CAAE,OAAA,EAAQ,CACvE,SAAA,CAAWe,EACb,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAC,CAAAA,CACA,IAAA,CAAMuD,CAAAA,CACN,cAAA,CAAAC,CAAAA,CACA,QAAA,CAAAvD,CAAAA,CACA,aAAAY,CAAAA,CACA,UAAA,CAAA4C,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,EACA,aAAA,CAAAX,CAAAA,CACA,gBAAA,CAAAnC,CAAAA,CACA,YAAA,CAAA+C,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,YAAAC,EAAAA,CACA,GAAGzD,EACL,CAAA,IACS,CAEL,KAAA,CAAO,MAAA,CACP,IAAA,CAAMN,CAAAA,CACN,QAAS,CACP,GAAGM,EAAAA,CACH,YAAA,CAAckD,CAAAA,CACd,OAAA,CAASvD,CAAAA,CACT,UAAA,CAAYY,EACZ,SAAA,CAAW4C,CAAAA,EAAcC,CAAAA,CACzB,SAAA,CAAWC,EACX,UAAA,CAAYC,CAAAA,CACZ,YAAA,CAAcX,CAAAA,CACd,gBAAiBnC,CAAAA,CACjB,WAAA,CAAa+C,CAAAA,CACb,WAAA,CAAaC,CAAAA,CACb,UAAA,CAAYC,EACd,CACF,EAEJ,CAAA,CAIWC,EAAAA,CAA4BhF,CAAAA,CAAE,kBAAA,CAAmB,aAAc,CAC1Ea,EAAAA,CACAa,EAAAA,CACAE,EAAAA,CACAG,EACF,CAAC,CAAA,CAIYkD,EAAAA,CAA0BjF,CAAAA,CAAE,kBAAA,CAAmB,YAAA,CAAc,CACxEkC,EAAAA,CACAE,GACAc,EACF,CAAC,CAAA,CAIYgC,EAAAA,CAAoBlF,EAAE,kBAAA,CAAmB,YAAA,CAAc,CAClEa,EAAAA,CACAa,GACAE,EAAAA,CACAG,EAAAA,CACAG,EAAAA,CACAE,EAAAA,CACAc,EACF,CAAC,CAAA,CAIYiC,EAAAA,CAAkBnF,EAAE,kBAAA,CAAmB,YAAA,CAAc,CAChEuD,EAAAA,CACAe,EACF,CAAC,EClhBD,IAAMc,EAAAA,CAAiBpF,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,aAAY,CAE9CqF,EAAAA,CAAsBrF,CAAAA,CAAE,MAAA,GAAS,KAAA,CAAM,eAAe,CAAA,CACtDsF,EAAAA,CAAmBtF,EAAE,MAAA,EAAO,CAAE,KAAA,CAAM,YAAY,CAAA,CAChDuF,EAAAA,CAAoBvF,CAAAA,CAAE,MAAA,GAAS,KAAA,CAAM,aAAa,CAAA,CAClDwF,EAAAA,CAAuBxF,EAAE,MAAA,EAAO,CAAE,KAAA,CAAM,sBAAsB,EAC9DyF,EAAAA,CAA0BzF,CAAAA,CAAE,MAAA,EAAO,CAAE,KAAA,CAAM,yBAAyB,CAAA,CACpE0F,EAAAA,CAAuB1F,EAC1B,MAAA,EAAO,CACP,KAAA,CAAM,wCAAwC,CAAA,CAC3C2F,EAAAA,CAAoB3F,CAAAA,CAAE,MAAA,GAAS,KAAA,CAAM,aAAa,CAAA,CAClD4F,EAAAA,CAA4B5F,CAAAA,CAAE,IAAA,CAAK,CACvC,UAAA,CACA,YACA,QAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,aACF,CAAC,CAAA,CAEK6F,CAAAA,CAA4B7F,CAAAA,CAAE,OAAO,CACzC,EAAA,CAAI8F,EAAAA,CACJ,EAAA,CAAIV,EACN,CAAC,CAAA,CAEYW,EAAAA,CAAwBF,EAA0B,MAAA,CAAO,CACpE,EAAA,CAAIR,EAAAA,CACJ,KAAMW,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,cAAA,CACP,KAAM,OAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,EACX,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAIWC,EAAAA,CAAsBR,CAAAA,CAA0B,OAAO,CAClE,EAAA,CAAIP,EAAAA,CACJ,IAAA,CAAMgB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAL,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,KAAO,CACtC,KAAA,CAAO,WAAA,CACP,IAAA,CAAM,MACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,SAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAIWG,EAAAA,CAAuBV,CAAAA,CAA0B,MAAA,CAAO,CACnE,EAAA,CAAIN,EAAAA,CACJ,IAAA,CAAMiB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,GAAAP,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,YAAA,CACP,IAAA,CAAM,MAAA,CACN,QAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,EACV,OAAA,CAAS,CACP,YAAA,CAAcM,EAAAA,CAAwBR,CAAE,CAAA,CACxC,GAAGG,CACL,CACF,CAAA,CAAE,CAAA,CAIWM,EAAAA,CAAyBb,CAAAA,CAA0B,MAAA,CAAO,CACrE,EAAA,CAAIL,EAAAA,CACJ,KAAMmB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAV,CAAAA,CAAI,GAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,eAAA,CACP,KAAM,QAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAIWQ,EAAAA,CAA4Bf,CAAAA,CAA0B,OAAO,CACxE,EAAA,CAAIJ,EAAAA,CACJ,IAAA,CAAMoB,IACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAZ,CAAAA,CAAI,EAAA,CAAAC,EAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,KAAO,CACtC,KAAA,CAAO,kBAAA,CACP,IAAA,CAAM,YACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,CACX,EAAE,CAAA,CAIWU,EAAAA,CAAyBjB,CAAAA,CAA0B,MAAA,CAAO,CACrE,EAAA,CAAIH,EAAAA,CACJ,IAAA,CAAM1F,CAAAA,CAAE,MAAM+G,EAAiB,CACjC,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAd,EAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,KAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,gBACP,IAAA,CAAM,QAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,CAAAA,CACV,QAAS,CACP,YAAA,CAAcM,EAAAA,CAAwBR,CAAE,EACxC,QAAA,CAAUe,EAAAA,CAA0Bf,CAAE,CAAA,CACtC,QAASG,CACX,CACF,CAAA,CAAE,CAAA,CAIWa,EAAAA,CAA6BjH,CAAAA,CAAE,KAAA,CAAM,CAChD+F,GACAM,EAAAA,CACAE,EAAAA,CACAG,EAAAA,CACAE,EAAAA,CACAE,EACF,CAAC,CAAA,CAIKI,EAAAA,CAAmCrB,CAAAA,CAA0B,OAAO,CACxE,EAAA,CAAID,EACN,CAAC,EAED,SAASuB,CAAAA,CAIPC,CAAAA,CAAaC,EAAmBC,CAAAA,CAAmB,CACnD,OAAOJ,EAAAA,CAAiC,OAAO,CAC7C,EAAA,CAAIlH,CAAAA,CAAE,OAAA,CAAQqH,CAAO,CAAA,CACrB,IAAA,CAAMC,CACR,CAAC,CAAA,CAAE,SAAA,CAAWC,CAAAA,EAAY,CACxB,IAAMC,CAAAA,CAAQD,CAAAA,CAOd,OAAO,CACL,KAAAH,CAAAA,CACA,OAAA,CAASI,CAAAA,CAAM,EAAA,CACf,UAAWA,CAAAA,CAAM,EAAA,CACjB,QAAA,CAAUA,CAAAA,CAAM,EAAA,CAChB,OAAA,CAASA,CAAAA,CAAM,IACjB,CACF,CAAC,CACH,CAEO,IAAMC,GAAgCN,CAAAA,CAC3C,SAAA,CACA,UAAA,CACAO,CACF,EAKaC,EAAAA,CAAkCR,CAAAA,CAC7C,WAAA,CACA,WAAA,CACAS,CACF,CAAA,CAKaC,EAAAA,CAA8BV,CAAAA,CACzC,QACA,QAAA,CACAW,EACF,CAAA,CAGaC,EAAAA,CAA6BZ,EACxC,MAAA,CACA,OAAA,CACAa,EACF,CAAA,CAGaC,GAAgCd,CAAAA,CAC3C,SAAA,CACA,SAAA,CACAe,CACF,CAAA,CAKaC,EAAAA,CAAgChB,CAAAA,CAC3C,SAAA,CACA,WACAiB,IACF,CAAA,CAKaC,EAAAA,CAAmClB,CAAAA,CAC9C,aACA,aAAA,CACAmB,EACF,CAAA,CAKMC,EAAAA,CAAiCvI,EAAE,MAAA,CAAO,CAC9C,GAAA,CAAKwI,CAAAA,CACL,EAAA,CAAIxI,CAAAA,CAAE,IAAA,CAAK,CAAC,cAAe,OAAA,CAAS,WAAA,CAAa,SAAS,CAAC,EAC3D,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,UACrB,CAAC,CAAA,CAEYyI,EAAAA,CAA6B5C,CAAAA,CAA0B,MAAA,CAAO,CACzE,EAAA,CAAIF,GACJ,IAAA,CAAM4C,EAAAA,CAA+B,SAAA,CAAWG,CAAAA,GAAY,CAC1D,OAAA,CAASA,CAAAA,CAAO,GAAA,CAChB,MAAA,CAAQA,EAAO,EAAA,CACf,MAAA,CAAQA,CAAAA,CAAO,MACjB,CAAA,CAAE,CACJ,CAAC,CAAA,CAAE,UAAU,CAAC,CAAE,EAAA,CAAAzC,CAAAA,CAAI,GAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,IAAA,CAAM,MAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,SAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAGWuC,EAAAA,CAAgC3I,CAAAA,CAAE,KAAA,CAAM,CACnDyH,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAI,EACF,CAAC,EAgBD,SAAShC,EAAAA,CAAwBY,CAAAA,CAAiB,CAChD,GAAM,EAAGuB,CAAe,EAAIvB,CAAAA,CAAQ,KAAA,CAAM,IAAI,CAAA,CAC9C,OAAOwB,CAAAA,CAAwB,KAAA,CAAM,MAAA,CAAOD,CAAe,CAAC,CAC9D,CAEA,SAAS5B,GAA0BK,CAAAA,CAAiB,CAClD,GAAM,GAAKyB,CAAQ,CAAA,CAAIzB,CAAAA,CAAQ,KAAA,CAAM,IAAI,CAAA,CACzC,OAAOyB,CACT,CC/RA,IAAMC,EAAAA,CAA8B/I,CAAAA,CAAE,MAAA,CAAO,CAC3C,EAAA,CAAIA,CAAAA,CAAE,MAAA,EAAO,CACb,IAAA,CAAMA,CAAAA,CAAE,MAAA,EAAO,CAAE,SAAQ,CACzB,gBAAA,CAAkBgJ,EAAAA,CAA8B,OAAA,GAChD,cAAA,CAAgBhJ,CAAAA,CAAE,MAAA,EAAO,CAAE,KAAI,CAAE,OAAA,EAAQ,CACzC,eAAA,CAAiBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC5B,WAAA,CAAaA,CAAAA,CAAE,MAAA,EAAO,CAAE,SAAQ,CAChC,YAAA,CAAcA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CACjC,SAAA,CAAWA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC9B,UAAWA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GACtB,KAAA,CAAOA,CAAAA,CAAE,KAAA,CAAMiJ,CAAkB,EAAE,OAAA,EAAQ,CAC3C,OAAA,CAASC,CAAAA,CAAqB,OAAA,EAAQ,CACtC,SAAA,CAAWlJ,CAAAA,CAAE,MAAMmJ,CAAc,CAAA,CAAE,OAAA,EAAQ,CAC3C,YAAanJ,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,OAAA,EAAQ,CACtC,aAAA,CAAeA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,SAAQ,CACxC,UAAA,CAAYA,CAAAA,CAAE,MAAA,GAAS,OAAA,EACzB,CAAC,CAAA,CAIYoJ,GAA4BpJ,CAAAA,CAAE,MAAA,CAAO,CAChD,KAAA,CAAOA,CAAAA,CAAE,OAAA,CAAQ,UAAU,CAAA,CAC3B,KAAMA,CAAAA,CAAE,OAAA,CAAQ,iBAAiB,CAAA,CACjC,UAAW8F,EAAAA,CACX,OAAA,CAASuD,CACX,CAAC,EAIYC,EAAAA,CAA4BtJ,CAAAA,CAAE,MAAA,CAAO,CAChD,KAAA,CAAOA,CAAAA,CAAE,OAAA,CAAQ,UAAU,EAC3B,IAAA,CAAMA,CAAAA,CAAE,OAAA,CAAQ,iBAAiB,EACjC,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAASiD,EACX,CAAC,CAAA,CAIYQ,EAAAA,CAA6BvJ,CAAAA,CAAE,MAAA,CAAO,CACjD,KAAA,CAAOA,CAAAA,CAAE,OAAA,CAAQ,UAAU,CAAA,CAC3B,IAAA,CAAMA,CAAAA,CAAE,OAAA,CAAQ,kBAAkB,CAAA,CAClC,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAASqD,CACX,CAAC,CAAA,CAIYK,EAAAA,CAA6BxJ,CAAAA,CAAE,MAAA,CAAO,CACjD,KAAA,CAAOA,CAAAA,CAAE,QAAQ,UAAU,CAAA,CAC3B,IAAA,CAAMA,CAAAA,CAAE,QAAQ,kBAAkB,CAAA,CAClC,SAAA,CAAW8F,EAAAA,CACX,QAASqD,CACX,CAAC,CAAA,CAIKM,EAAAA,CAA2BzJ,CAAAA,CAAE,MAAA,CAAO,CACxC,MAAA,CAAQA,EAAE,MAAA,EAAO,CACjB,SAAA,CAAW8F,EAAAA,CACX,MAAO4D,EACT,CAAC,CAAA,CAIKC,EAAAA,CAA8B,wBAC9BC,EAAAA,CAAgC,yBAAA,CAQhCC,EAAAA,CAAoC7J,CAAAA,CAAE,OAAA,CAAQ,eAAe,CAAA,CAC7D8J,EAAAA,CAAsC9J,EAAE,OAAA,CAC5C,yBACF,CAAA,CAEM+J,EAAAA,CACJF,GAAkC,SAAA,CAAU,IACnCF,EACR,CAAA,CAEGK,GACJF,EAAAA,CAAoC,SAAA,CAAU,IACrCF,EACR,CAAA,CAEUK,EAAAA,CAAiCjK,CAAAA,CAAE,MAAA,CAAO,CACrD,KAAA,CAAO+J,EAAAA,CACP,IAAA,CAAM/J,CAAAA,CAAE,QAAQ,QAAQ,CAAA,CACxB,SAAA,CAAW8F,EAAAA,CACX,QAAS2D,EACX,CAAC,CAAA,CAMYS,EAAAA,CAAmClK,CAAAA,CAAE,MAAA,CAAO,CACvD,KAAA,CAAOgK,GACP,IAAA,CAAMhK,CAAAA,CAAE,OAAA,CAAQ,QAAQ,CAAA,CACxB,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAAS2D,EACX,CAAC,CAAA,CAMYU,EAAAA,CAA0BnK,CAAAA,CAAE,kBAAA,CAAmB,OAAA,CAAS,CACnEiK,EAAAA,CACAC,EACF,CAAC,CAAA,CAIKE,EAAAA,CAAiCpK,CAAAA,CACpC,OAAO,CACN,MAAA,CAAQA,CAAAA,CAAE,MAAA,GACV,KAAA,CAAO0J,EAAAA,CACP,mBAAA,CAAqBjJ,EAAAA,CAAoB,OAAA,EAAQ,CACjD,SAAA,CAAWqF,EAAAA,CACX,YAAaA,EAAAA,CAAwB,OAAA,EAAQ,CAC7C,kBAAA,CAAoB9F,EAAE,OAAA,EAAQ,CAAE,OAAA,EAClC,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,mBAAA,CAAAqK,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,mBAAAC,CAAAA,CACA,KAAA,CAAAtK,CAAAA,CACA,GAAGqB,CACL,CAAA,IAAO,CACL,GAAGA,CAAAA,CACH,MAAO+I,CAAAA,EAAuBpK,CAAAA,CAC9B,UAAA,CAAYqK,CAAAA,CACZ,gBAAA,CAAkBC,CACpB,CAAA,CACF,CAAA,CAMIC,GAAiCxK,CAAAA,CAAE,MAAA,CAAO,CAC9C,SAAA,CAAWA,EAAE,MAAA,EAAO,CACpB,KAAA,CAAO0J,EACT,CAAC,CAAA,CAMKe,EAAAA,CAAoCzK,CAAAA,CAAE,MAAA,CAAO,CACjD,MAAA,CAAQA,CAAAA,CAAE,MAAA,GACV,IAAA,CAAMA,CAAAA,CAAE,KAAA,CAAMwK,EAA8B,CAC9C,CAAC,CAAA,CAMKE,EAAAA,CAA6B1K,CAAAA,CAAE,QAAQ,eAAe,CAAA,CAEtD2K,EAAAA,CAAsB,oBAAA,CAItBC,EAAAA,CACJF,EAAAA,CAA2B,SAAA,CAAU,IAC5BC,EACR,CAAA,CAEUE,EAAAA,CAAgC7K,CAAAA,CAAE,MAAA,CAAO,CACpD,KAAA,CAAO4K,EAAAA,CACP,IAAA,CAAM5K,CAAAA,CAAE,QAAQ,QAAQ,CAAA,CACxB,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAASsE,EACX,CAAC,CAAA,CAMYU,GAAmC9K,CAAAA,CAAE,MAAA,CAAO,CACvD,KAAA,CAAO4K,GACP,IAAA,CAAM5K,CAAAA,CAAE,OAAA,CAAQ,WAAW,EAC3B,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAAS2E,EACX,CAAC,CAAA,CAMYM,EAAAA,CAA0B/K,CAAAA,CAAE,mBAAmB,MAAA,CAAQ,CAClE6K,EAAAA,CACAC,EACF,CAAC,CAAA,CAIYE,EAAAA,CAAsBhL,CAAAA,CAAE,kBAAA,CAAmB,OAAQ,CAC9DoJ,EAAAA,CACAE,EAAAA,CACAC,EAAAA,CACAC,EACF,CAAC,CAAA,CAIYyB,EAAAA,CAAsBjL,EAAE,kBAAA,CAAmB,OAAA,CAAS,CAC/DgL,EAAAA,CACAb,GACAY,EACF,CAAC,ECnOD,IAAMG,EAAAA,CAA4BlL,CAAAA,CAC/B,MAAA,CAAO,CACN,MAAA,CAAQA,EAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CACvB,iBAAkBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC7B,IAAA,CAAMA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACzB,kBAAA,CAAoBA,CAAAA,CAAE,QAAO,CAC7B,QAAA,CAAUA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CAC7B,QAAA,CAAUA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAC7B,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,IAAA,CAAMA,EAAE,OAAA,EAAQ,CAChB,KAAA,CAAOA,CAAAA,CAAE,SAAQ,CACjB,KAAA,CAAOA,CAAAA,CAAE,MAAA,GACT,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC3B,OAAA,CAASA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAC5B,iBAAA,CAAmBsC,GAA2C,OAAA,EAAQ,CACtE,kBAAA,CAAoBA,EAAAA,CAA2C,SAAQ,CACvE,IAAA,CAAMtC,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EACnB,CAAC,EACA,SAAA,CAAU,CAAC,CAAE,iBAAA,CAAAmL,EAAmB,kBAAA,CAAAC,CAAAA,CAAoB,GAAG9J,CAAK,KAAO,CAClE,GAAGA,CAAAA,CACH,UAAA,CAAY6J,CAAAA,EAAqBC,CACnC,CAAA,CAAE,CAAA,CAESC,GAA0BH,EAAAA,CAA0B,SAAA,CAC9D5D,CAAAA,GACQ,CAGL,MAAO,QAAA,CACP,IAAA,CAAM,cAAA,CACN,OAAA,CAAAA,CACF,CAAA,CAEJ","file":"index.js","sourcesContent":["import { z } from 'zod';\nimport {\n CtfConditionIdSchema,\n DecimalStringSchema,\n EpochMillisecondsStringSchema,\n EpochMillisecondsToIsoDateTimeStringSchema,\n type OrderSide,\n OrderSideSchema,\n OrderTypeSchema,\n TokenIdSchema,\n toIsoDateTimeString,\n} from '../shared';\n\nconst NormalizedOrderSideSchema: z.ZodType<OrderSide> = z.preprocess(\n (value) => (typeof value === 'string' ? value.toUpperCase() : value),\n OrderSideSchema,\n);\n\nexport enum TradeStatus {\n Matched = 'TRADE_STATUS_MATCHED',\n MatchedNotBroadcasted = 'TRADE_STATUS_MATCHED_NOT_BROADCASTED',\n Mined = 'TRADE_STATUS_MINED',\n Confirmed = 'TRADE_STATUS_CONFIRMED',\n Retrying = 'TRADE_STATUS_RETRYING',\n Failed = 'TRADE_STATUS_FAILED',\n}\n\nconst TradeStatusSchema = z.preprocess((value) => {\n if (typeof value !== 'string' || value.startsWith('TRADE_STATUS_')) {\n return value;\n }\n\n const normalized = Object.values(TradeStatus).find(\n (status) => status.slice('TRADE_STATUS_'.length) === value,\n );\n\n return normalized ?? value;\n}, z.enum(TradeStatus));\n\nexport enum UserOrderStatus {\n Live = 'LIVE',\n Matched = 'MATCHED',\n Delayed = 'DELAYED',\n Unmatched = 'UNMATCHED',\n Canceled = 'CANCELED',\n}\n\nconst UserOrderStatusSchema = z.enum(UserOrderStatus);\n\nconst OrderBookLevelSchema = z.object({\n price: DecimalStringSchema,\n size: DecimalStringSchema,\n});\n\nconst EpochSecondsStringToIsoDateTimeStringSchema = z\n .string()\n .regex(/^\\d+$/)\n .transform((value) =>\n toIsoDateTimeString(new Date(Number(value) * 1000).toISOString()),\n );\n\nconst ExpirationToIsoDateTimeStringSchema = z\n .string()\n .regex(/^\\d+$/)\n .transform((value) =>\n value === '0'\n ? undefined\n : toIsoDateTimeString(new Date(Number(value) * 1000).toISOString()),\n );\n\nexport type OrderBookLevel = z.infer<typeof OrderBookLevelSchema>;\n\nexport const MarketBookEventSchema = z\n .object({\n event_type: z.literal('book'),\n market: z.string(),\n asset_id: TokenIdSchema,\n bids: z.array(OrderBookLevelSchema),\n asks: z.array(OrderBookLevelSchema),\n hash: z.string().nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n min_order_size: DecimalStringSchema.nullish(),\n tick_size: DecimalStringSchema.nullish(),\n neg_risk: z.boolean().nullish(),\n last_trade_price: DecimalStringSchema.nullish(),\n })\n .transform(\n ({\n event_type,\n asset_id,\n min_order_size,\n tick_size,\n neg_risk,\n last_trade_price,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n minOrderSize: min_order_size,\n tickSize: tick_size,\n negRisk: neg_risk,\n lastTradePrice: last_trade_price,\n },\n };\n },\n );\n\nexport type MarketBookEvent = z.infer<typeof MarketBookEventSchema>;\n\nconst PriceChangeSchema = z\n .object({\n asset_id: TokenIdSchema,\n price: DecimalStringSchema,\n size: DecimalStringSchema,\n side: NormalizedOrderSideSchema,\n hash: z.string().nullish(),\n best_bid: DecimalStringSchema.nullish(),\n best_ask: DecimalStringSchema.nullish(),\n })\n .transform(({ asset_id, best_bid, best_ask, ...rest }) => ({\n ...rest,\n tokenId: asset_id,\n bestBid: best_bid,\n bestAsk: best_ask,\n }));\n\nexport type PriceChange = z.infer<typeof PriceChangeSchema>;\n\nexport const MarketPriceChangeEventSchema = z\n .object({\n event_type: z.literal('price_change'),\n market: z.string(),\n price_changes: z.array(PriceChangeSchema),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n })\n .transform(({ event_type, price_changes, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n priceChanges: price_changes,\n },\n };\n });\n\nexport type MarketPriceChangeEvent = z.infer<\n typeof MarketPriceChangeEventSchema\n>;\n\nexport const MarketLastTradePriceEventSchema = z\n .object({\n event_type: z.literal('last_trade_price'),\n market: z.string(),\n asset_id: TokenIdSchema,\n price: DecimalStringSchema,\n size: DecimalStringSchema.nullish(),\n fee_rate_bps: DecimalStringSchema.nullish(),\n side: NormalizedOrderSideSchema,\n timestamp: EpochMillisecondsStringSchema.nullish(),\n transaction_hash: z.string().nullish(),\n })\n .transform(\n ({ event_type, asset_id, fee_rate_bps, transaction_hash, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n feeRateBps: fee_rate_bps,\n transactionHash: transaction_hash,\n },\n };\n },\n );\n\nexport type MarketLastTradePriceEvent = z.infer<\n typeof MarketLastTradePriceEventSchema\n>;\n\nexport const MarketTickSizeChangeEventSchema = z\n .object({\n event_type: z.literal('tick_size_change'),\n market: z.string(),\n asset_id: TokenIdSchema,\n old_tick_size: DecimalStringSchema.nullish(),\n new_tick_size: DecimalStringSchema,\n timestamp: EpochMillisecondsStringSchema.nullish(),\n })\n .transform(\n ({ event_type, asset_id, old_tick_size, new_tick_size, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n oldTickSize: old_tick_size,\n newTickSize: new_tick_size,\n },\n };\n },\n );\n\nexport type MarketTickSizeChangeEvent = z.infer<\n typeof MarketTickSizeChangeEventSchema\n>;\n\nexport const MarketBestBidAskEventSchema = z\n .object({\n event_type: z.literal('best_bid_ask'),\n market: z.string(),\n asset_id: TokenIdSchema,\n best_bid: DecimalStringSchema.nullish(),\n best_ask: DecimalStringSchema.nullish(),\n spread: DecimalStringSchema.nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n })\n .transform(({ event_type, asset_id, best_bid, best_ask, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n bestBid: best_bid,\n bestAsk: best_ask,\n },\n };\n });\n\nexport type MarketBestBidAskEvent = z.infer<typeof MarketBestBidAskEventSchema>;\n\nconst MarketEventMessageSchema = z.object({\n id: z.string(),\n ticker: z.string().nullish(),\n slug: z.string().nullish(),\n title: z.string().nullish(),\n description: z.string().nullish(),\n});\n\nexport type MarketEventMessage = z.infer<typeof MarketEventMessageSchema>;\n\nexport const NewMarketEventSchema = z\n .object({\n event_type: z.literal('new_market'),\n id: z.string(),\n question: z.string().nullish(),\n market: z.string(),\n slug: z.string().nullish(),\n description: z.string().nullish(),\n assets_ids: z.array(TokenIdSchema).nullish(),\n outcomes: z.array(z.string()).nullish(),\n event_message: MarketEventMessageSchema.nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n tags: z.array(z.string()).nullish(),\n condition_id: CtfConditionIdSchema.nullish(),\n active: z.boolean().nullish(),\n clob_token_ids: z.array(z.string()).nullish(),\n sports_market_type: z.string().nullish(),\n line: DecimalStringSchema.nullish(),\n game_start_time: EpochMillisecondsToIsoDateTimeStringSchema.nullish(),\n order_price_min_tick_size: DecimalStringSchema.nullish(),\n group_item_title: z.string().nullish(),\n taker_base_fee: DecimalStringSchema.nullish(),\n fees_enabled: z.boolean().nullish(),\n fee_schedule: z.unknown().nullish(),\n })\n .transform(\n ({\n event_type,\n assets_ids,\n event_message,\n condition_id,\n clob_token_ids,\n sports_market_type,\n game_start_time,\n order_price_min_tick_size,\n group_item_title,\n taker_base_fee,\n fees_enabled,\n fee_schedule,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenIds: assets_ids,\n eventMessage: event_message,\n conditionId: condition_id,\n clobTokenIds: clob_token_ids,\n sportsMarketType: sports_market_type,\n gameStartTime: game_start_time,\n orderPriceMinTickSize: order_price_min_tick_size,\n groupItemTitle: group_item_title,\n takerBaseFee: taker_base_fee,\n feesEnabled: fees_enabled,\n feeSchedule: fee_schedule,\n },\n };\n },\n );\n\nexport type NewMarketEvent = z.infer<typeof NewMarketEventSchema>;\n\nexport const MarketResolvedEventSchema = z\n .object({\n event_type: z.literal('market_resolved'),\n id: z.string(),\n market: z.string(),\n assets_ids: z.array(TokenIdSchema).nullish(),\n winning_asset_id: TokenIdSchema.nullish(),\n winning_outcome: z.string().nullish(),\n event_message: MarketEventMessageSchema.nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n tags: z.array(z.string()).nullish(),\n })\n .transform(\n ({\n event_type,\n assets_ids,\n winning_asset_id,\n winning_outcome,\n event_message,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenIds: assets_ids,\n winningTokenId: winning_asset_id,\n winningOutcome: winning_outcome,\n eventMessage: event_message,\n },\n };\n },\n );\n\nexport type MarketResolvedEvent = z.infer<typeof MarketResolvedEventSchema>;\n\nexport enum UserOrderEventType {\n Placement = 'PLACEMENT',\n Update = 'UPDATE',\n Cancellation = 'CANCELLATION',\n}\n\nconst UserOrderEventTypeSchema = z.enum(UserOrderEventType);\n\nexport const UserOrderEventSchema = z\n .object({\n event_type: z.literal('order'),\n id: z.string(),\n owner: z.string(),\n market: z.string(),\n asset_id: TokenIdSchema,\n side: NormalizedOrderSideSchema,\n order_owner: z.string().nullish(),\n original_size: DecimalStringSchema,\n size_matched: DecimalStringSchema,\n price: DecimalStringSchema,\n associate_trades: z.array(z.string()).nullish(),\n outcome: z.string().nullish(),\n type: UserOrderEventTypeSchema,\n created_at: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n expiration: ExpirationToIsoDateTimeStringSchema.nullish(),\n order_type: OrderTypeSchema.nullish(),\n status: UserOrderStatusSchema.nullish(),\n maker_address: z.string().nullish(),\n timestamp: EpochMillisecondsStringSchema,\n })\n .transform(\n ({\n event_type,\n type: orderEventType,\n asset_id,\n order_owner,\n original_size,\n size_matched,\n associate_trades,\n created_at,\n expiration,\n order_type,\n maker_address,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'user' as const,\n type: event_type,\n payload: {\n ...rest,\n orderEventType,\n tokenId: asset_id,\n orderOwner: order_owner,\n originalSize: original_size,\n sizeMatched: size_matched,\n associateTrades: associate_trades,\n createdAt: created_at,\n expiresAt: expiration,\n orderType: order_type,\n makerAddress: maker_address,\n },\n };\n },\n );\n\nexport type UserOrderEvent = z.infer<typeof UserOrderEventSchema>;\n\nconst TradeMakerOrderSchema = z\n .object({\n order_id: z.string(),\n owner: z.string(),\n maker_address: z.string().nullish(),\n matched_amount: DecimalStringSchema,\n price: DecimalStringSchema,\n fee_rate_bps: DecimalStringSchema.nullish(),\n asset_id: TokenIdSchema,\n outcome: z.string().nullish(),\n outcome_index: z.number().int().nullish(),\n side: NormalizedOrderSideSchema,\n })\n .transform(\n ({\n order_id,\n maker_address,\n matched_amount,\n fee_rate_bps,\n asset_id,\n outcome_index,\n ...rest\n }) => ({\n ...rest,\n orderId: order_id,\n makerAddress: maker_address,\n matchedAmount: matched_amount,\n feeRateBps: fee_rate_bps,\n tokenId: asset_id,\n outcomeIndex: outcome_index,\n }),\n );\n\nexport type TradeMakerOrder = z.infer<typeof TradeMakerOrderSchema>;\n\nexport const UserTradeEventSchema = z\n .object({\n event_type: z.literal('trade'),\n type: z.literal('TRADE'),\n id: z.string(),\n taker_order_id: z.string(),\n market: z.string(),\n asset_id: TokenIdSchema,\n side: NormalizedOrderSideSchema,\n size: DecimalStringSchema,\n fee_rate_bps: DecimalStringSchema.nullish(),\n price: DecimalStringSchema,\n status: TradeStatusSchema,\n match_time: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n matchtime: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n last_update: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n outcome: z.string().nullish(),\n owner: z.string(),\n trade_owner: z.string().nullish(),\n maker_address: z.string().nullish(),\n transaction_hash: z.string().nullish(),\n bucket_index: z.number().int().nullish(),\n maker_orders: z.array(TradeMakerOrderSchema).nullish(),\n trader_side: z.union([z.literal('TAKER'), z.literal('MAKER')]).nullish(),\n timestamp: EpochMillisecondsStringSchema,\n })\n .transform(\n ({\n event_type,\n type: _,\n taker_order_id,\n asset_id,\n fee_rate_bps,\n match_time,\n matchtime,\n last_update,\n trade_owner,\n maker_address,\n transaction_hash,\n bucket_index,\n maker_orders,\n trader_side,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'user' as const,\n type: event_type,\n payload: {\n ...rest,\n takerOrderId: taker_order_id,\n tokenId: asset_id,\n feeRateBps: fee_rate_bps,\n matchedAt: match_time ?? matchtime,\n updatedAt: last_update,\n tradeOwner: trade_owner,\n makerAddress: maker_address,\n transactionHash: transaction_hash,\n bucketIndex: bucket_index,\n makerOrders: maker_orders,\n traderSide: trader_side,\n },\n };\n },\n );\n\nexport type UserTradeEvent = z.infer<typeof UserTradeEventSchema>;\n\nexport const StandardMarketEventSchema = z.discriminatedUnion('event_type', [\n MarketBookEventSchema,\n MarketPriceChangeEventSchema,\n MarketLastTradePriceEventSchema,\n MarketTickSizeChangeEventSchema,\n]);\n\nexport type StandardMarketEvent = z.infer<typeof StandardMarketEventSchema>;\n\nexport const CustomMarketEventSchema = z.discriminatedUnion('event_type', [\n MarketBestBidAskEventSchema,\n NewMarketEventSchema,\n MarketResolvedEventSchema,\n]);\n\nexport type CustomMarketEvent = z.infer<typeof CustomMarketEventSchema>;\n\nexport const MarketEventSchema = z.discriminatedUnion('event_type', [\n MarketBookEventSchema,\n MarketPriceChangeEventSchema,\n MarketLastTradePriceEventSchema,\n MarketTickSizeChangeEventSchema,\n MarketBestBidAskEventSchema,\n NewMarketEventSchema,\n MarketResolvedEventSchema,\n]);\n\nexport type MarketEvent = StandardMarketEvent | CustomMarketEvent;\n\nexport const UserEventSchema = z.discriminatedUnion('event_type', [\n UserOrderEventSchema,\n UserTradeEventSchema,\n]);\n\nexport type UserEvent = z.infer<typeof UserEventSchema>;\n","import { z } from 'zod';\nimport {\n PerpsAccountFundingPaymentEntrySchema,\n PerpsBalanceSchema,\n PerpsPortfolioSchema,\n} from '../perps/account';\nimport {\n PerpsInstrumentIdSchema,\n type PerpsKlineInterval,\n PerpsOrderIdSchema,\n} from '../perps/common';\nimport {\n PerpsDepositUpdateSchema,\n PerpsWithdrawalUpdateSchema,\n} from '../perps/funds';\nimport {\n PerpsBboUpdateSchema,\n PerpsBookUpdateSchema,\n PerpsCandleSchema,\n PerpsPublicTradeUpdateSchema,\n PerpsStatisticUpdateSchema,\n PerpsTickerEntrySchema,\n} from '../perps/market';\nimport {\n PerpsAccountFillUpdateSchema,\n PerpsOrderUpdateSchema,\n} from '../perps/orders';\nimport { EpochMillisecondsSchema } from '../shared';\n\nconst SequenceSchema = z.number().int().nonnegative();\n\nconst TradesChannelSchema = z.string().regex(/^trades::\\d+$/);\nconst BboChannelSchema = z.string().regex(/^bbo::\\d+$/);\nconst BookChannelSchema = z.string().regex(/^book::\\d+$/);\nconst TickersChannelSchema = z.string().regex(/^tickers::(all|\\d+)$/);\nconst StatisticsChannelSchema = z.string().regex(/^statistics::(all|\\d+)$/);\nconst CandlesChannelSchema = z\n .string()\n .regex(/^klines::\\d+::(1m|5m|15m|1h|4h|1d|1w)$/);\nconst TpslChannelSchema = z.string().regex(/^tpsl::\\d+$/);\nconst PerpsSessionChannelSchema = z.enum([\n 'balances',\n 'portfolio',\n 'orders',\n 'fills',\n 'funding',\n 'deposits',\n 'withdrawals',\n]);\n\nconst PerpsUpdateEnvelopeSchema = z.object({\n ts: EpochMillisecondsSchema,\n sq: SequenceSchema,\n});\n\nexport const PerpsTradeEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: TradesChannelSchema,\n data: PerpsPublicTradeUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.trades' as const,\n type: 'trade' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsTradeEvent = z.infer<typeof PerpsTradeEventSchema>;\n\nexport const PerpsBboEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: BboChannelSchema,\n data: PerpsBboUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.bbo' as const,\n type: 'bbo' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsBboEvent = z.infer<typeof PerpsBboEventSchema>;\n\nexport const PerpsBookEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: BookChannelSchema,\n data: PerpsBookUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.book' as const,\n type: 'book' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: {\n instrumentId: instrumentIdFromChannel(ch),\n ...data,\n },\n}));\n\nexport type PerpsBookEvent = z.infer<typeof PerpsBookEventSchema>;\n\nexport const PerpsTickerEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: TickersChannelSchema,\n data: PerpsTickerEntrySchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.tickers' as const,\n type: 'ticker' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsTickerEvent = z.infer<typeof PerpsTickerEventSchema>;\n\nexport const PerpsStatisticEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: StatisticsChannelSchema,\n data: PerpsStatisticUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.statistics' as const,\n type: 'statistic' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsStatisticEvent = z.infer<typeof PerpsStatisticEventSchema>;\n\nexport const PerpsCandleEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: CandlesChannelSchema,\n data: z.array(PerpsCandleSchema),\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.candles' as const,\n type: 'candle' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: {\n instrumentId: instrumentIdFromChannel(ch),\n interval: candleIntervalFromChannel(ch),\n candles: data,\n },\n}));\n\nexport type PerpsCandleEvent = z.infer<typeof PerpsCandleEventSchema>;\n\nexport const PerpsMarketDataEventSchema = z.union([\n PerpsTradeEventSchema,\n PerpsBboEventSchema,\n PerpsBookEventSchema,\n PerpsTickerEventSchema,\n PerpsStatisticEventSchema,\n PerpsCandleEventSchema,\n]);\n\nexport type PerpsMarketDataEvent = z.infer<typeof PerpsMarketDataEventSchema>;\n\nconst PerpsSessionUpdateEnvelopeSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: PerpsSessionChannelSchema,\n});\n\nfunction perpsSessionEventSchema<\n TType extends string,\n TChannel extends z.infer<typeof PerpsSessionChannelSchema>,\n TPayload extends z.ZodType,\n>(type: TType, channel: TChannel, payload: TPayload) {\n return PerpsSessionUpdateEnvelopeSchema.extend({\n ch: z.literal(channel),\n data: payload,\n }).transform((message) => {\n const event = message as {\n ch: TChannel;\n data: z.output<TPayload>;\n sq: number;\n ts: number;\n };\n\n return {\n type,\n channel: event.ch,\n timestamp: event.ts,\n sequence: event.sq,\n payload: event.data,\n };\n });\n}\n\nexport const PerpsBalanceUpdateEventSchema = perpsSessionEventSchema(\n 'balance',\n 'balances',\n PerpsBalanceSchema,\n);\nexport type PerpsBalanceUpdateEvent = z.infer<\n typeof PerpsBalanceUpdateEventSchema\n>;\n\nexport const PerpsPortfolioUpdateEventSchema = perpsSessionEventSchema(\n 'portfolio',\n 'portfolio',\n PerpsPortfolioSchema,\n);\nexport type PerpsPortfolioUpdateEvent = z.infer<\n typeof PerpsPortfolioUpdateEventSchema\n>;\n\nexport const PerpsOrderUpdateEventSchema = perpsSessionEventSchema(\n 'order',\n 'orders',\n PerpsOrderUpdateSchema,\n);\nexport type PerpsOrderUpdateEvent = z.infer<typeof PerpsOrderUpdateEventSchema>;\n\nexport const PerpsFillUpdateEventSchema = perpsSessionEventSchema(\n 'fill',\n 'fills',\n PerpsAccountFillUpdateSchema,\n);\nexport type PerpsFillUpdateEvent = z.infer<typeof PerpsFillUpdateEventSchema>;\n\nexport const PerpsFundingUpdateEventSchema = perpsSessionEventSchema(\n 'funding',\n 'funding',\n PerpsAccountFundingPaymentEntrySchema,\n);\nexport type PerpsFundingUpdateEvent = z.infer<\n typeof PerpsFundingUpdateEventSchema\n>;\n\nexport const PerpsDepositUpdateEventSchema = perpsSessionEventSchema(\n 'deposit',\n 'deposits',\n PerpsDepositUpdateSchema,\n);\nexport type PerpsDepositUpdateEvent = z.infer<\n typeof PerpsDepositUpdateEventSchema\n>;\n\nexport const PerpsWithdrawalUpdateEventSchema = perpsSessionEventSchema(\n 'withdrawal',\n 'withdrawals',\n PerpsWithdrawalUpdateSchema,\n);\nexport type PerpsWithdrawalUpdateEvent = z.infer<\n typeof PerpsWithdrawalUpdateEventSchema\n>;\n\nconst PerpsTpSlLifecycleUpdateSchema = z.object({\n oid: PerpsOrderIdSchema,\n st: z.enum(['untriggered', 'armed', 'cancelled', 'expired']),\n reason: z.string().optional(),\n});\n\nexport const PerpsTpSlUpdateEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: TpslChannelSchema,\n data: PerpsTpSlLifecycleUpdateSchema.transform((update) => ({\n orderId: update.oid,\n status: update.st,\n reason: update.reason,\n })),\n}).transform(({ ch, ts, sq, data }) => ({\n type: 'tpsl' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\nexport type PerpsTpSlUpdateEvent = z.infer<typeof PerpsTpSlUpdateEventSchema>;\n\nexport const PerpsSessionUpdateEventSchema = z.union([\n PerpsBalanceUpdateEventSchema,\n PerpsPortfolioUpdateEventSchema,\n PerpsOrderUpdateEventSchema,\n PerpsFillUpdateEventSchema,\n PerpsFundingUpdateEventSchema,\n PerpsDepositUpdateEventSchema,\n PerpsWithdrawalUpdateEventSchema,\n PerpsTpSlUpdateEventSchema,\n]);\n\nexport type PerpsSessionUpdateEvent = z.infer<\n typeof PerpsSessionUpdateEventSchema\n>;\n\nexport type PerpsResyncEvent = {\n type: 'resync';\n reason: 'reconnect' | 'sequence_gap';\n channel?: string;\n previousSequence?: number;\n sequence?: number;\n};\n\nexport type PerpsSessionEvent = PerpsSessionUpdateEvent | PerpsResyncEvent;\n\nfunction instrumentIdFromChannel(channel: string) {\n const [, rawInstrumentId] = channel.split('::');\n return PerpsInstrumentIdSchema.parse(Number(rawInstrumentId));\n}\n\nfunction candleIntervalFromChannel(channel: string) {\n const [, , interval] = channel.split('::');\n return interval as Exclude<PerpsKlineInterval, PerpsKlineInterval.OneSecond>;\n}\n","import { z } from 'zod';\nimport {\n CommentMediaSchema,\n CommentProfileSchema,\n CommentSchema,\n ReactionSchema,\n} from '../gamma/comment';\nimport {\n CommentParentEntityTypeSchema,\n DecimalishSchema,\n DecimalStringSchema,\n EpochMillisecondsSchema,\n} from '../shared';\n\nconst CommentRemovedPayloadSchema = z.object({\n id: z.string(),\n body: z.string().nullish(),\n parentEntityType: CommentParentEntityTypeSchema.nullish(),\n parentEntityID: z.number().int().nullish(),\n parentCommentID: z.string().nullish(),\n userAddress: z.string().nullish(),\n replyAddress: z.string().nullish(),\n createdAt: z.string().nullish(),\n updatedAt: z.string().nullish(),\n media: z.array(CommentMediaSchema).nullish(),\n profile: CommentProfileSchema.nullish(),\n reactions: z.array(ReactionSchema).nullish(),\n reportCount: z.number().int().nullish(),\n reactionCount: z.number().int().nullish(),\n tradeAsset: z.string().nullish(),\n});\n\nexport type CommentRemovedPayload = z.infer<typeof CommentRemovedPayloadSchema>;\n\nexport const CommentCreatedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('comment_created'),\n timestamp: EpochMillisecondsSchema,\n payload: CommentSchema,\n});\n\nexport type CommentCreatedEvent = z.infer<typeof CommentCreatedEventSchema>;\n\nexport const CommentRemovedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('comment_removed'),\n timestamp: EpochMillisecondsSchema,\n payload: CommentRemovedPayloadSchema,\n});\n\nexport type CommentRemovedEvent = z.infer<typeof CommentRemovedEventSchema>;\n\nexport const ReactionCreatedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('reaction_created'),\n timestamp: EpochMillisecondsSchema,\n payload: ReactionSchema,\n});\n\nexport type ReactionCreatedEvent = z.infer<typeof ReactionCreatedEventSchema>;\n\nexport const ReactionRemovedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('reaction_removed'),\n timestamp: EpochMillisecondsSchema,\n payload: ReactionSchema,\n});\n\nexport type ReactionRemovedEvent = z.infer<typeof ReactionRemovedEventSchema>;\n\nconst PriceUpdatePayloadSchema = z.object({\n symbol: z.string(),\n timestamp: EpochMillisecondsSchema,\n value: DecimalishSchema,\n});\n\nexport type PriceUpdatePayload = z.infer<typeof PriceUpdatePayloadSchema>;\n\nconst CRYPTO_PRICES_BINANCE_TOPIC = 'prices.crypto.binance' as const;\nconst CRYPTO_PRICES_CHAINLINK_TOPIC = 'prices.crypto.chainlink' as const;\n\nexport type CryptoPricesBinanceTopic = typeof CRYPTO_PRICES_BINANCE_TOPIC;\nexport type CryptoPricesChainlinkTopic = typeof CRYPTO_PRICES_CHAINLINK_TOPIC;\nexport type CryptoPricesTopic =\n | CryptoPricesBinanceTopic\n | CryptoPricesChainlinkTopic;\n\nconst RawCryptoPricesBinanceTopicSchema = z.literal('crypto_prices');\nconst RawCryptoPricesChainlinkTopicSchema = z.literal(\n 'crypto_prices_chainlink',\n);\n\nconst CryptoPricesBinanceTopicSchema: z.ZodType<CryptoPricesBinanceTopic> =\n RawCryptoPricesBinanceTopicSchema.transform(() => {\n return CRYPTO_PRICES_BINANCE_TOPIC;\n });\n\nconst CryptoPricesChainlinkTopicSchema: z.ZodType<CryptoPricesChainlinkTopic> =\n RawCryptoPricesChainlinkTopicSchema.transform(() => {\n return CRYPTO_PRICES_CHAINLINK_TOPIC;\n });\n\nexport const CryptoPricesBinanceEventSchema = z.object({\n topic: CryptoPricesBinanceTopicSchema,\n type: z.literal('update'),\n timestamp: EpochMillisecondsSchema,\n payload: PriceUpdatePayloadSchema,\n});\n\nexport type CryptoPricesBinanceEvent = z.infer<\n typeof CryptoPricesBinanceEventSchema\n>;\n\nexport const CryptoPricesChainlinkEventSchema = z.object({\n topic: CryptoPricesChainlinkTopicSchema,\n type: z.literal('update'),\n timestamp: EpochMillisecondsSchema,\n payload: PriceUpdatePayloadSchema,\n});\n\nexport type CryptoPricesChainlinkEvent = z.infer<\n typeof CryptoPricesChainlinkEventSchema\n>;\n\nexport const CryptoPricesEventSchema = z.discriminatedUnion('topic', [\n CryptoPricesBinanceEventSchema,\n CryptoPricesChainlinkEventSchema,\n]);\n\nexport type CryptoPricesEvent = z.infer<typeof CryptoPricesEventSchema>;\n\nconst EquityPriceUpdatePayloadSchema = z\n .object({\n symbol: z.string(),\n value: DecimalishSchema,\n full_accuracy_value: DecimalStringSchema.nullish(),\n timestamp: EpochMillisecondsSchema,\n received_at: EpochMillisecondsSchema.nullish(),\n is_carried_forward: z.boolean().nullish(),\n })\n .transform(\n ({\n full_accuracy_value,\n received_at,\n is_carried_forward,\n value,\n ...rest\n }) => ({\n ...rest,\n value: full_accuracy_value ?? value,\n receivedAt: received_at,\n isCarriedForward: is_carried_forward,\n }),\n );\n\nexport type EquityPriceUpdatePayload = z.infer<\n typeof EquityPriceUpdatePayloadSchema\n>;\n\nconst EquityPriceSnapshotPointSchema = z.object({\n timestamp: z.number(),\n value: DecimalishSchema,\n});\n\nexport type EquityPriceSnapshotPoint = z.infer<\n typeof EquityPriceSnapshotPointSchema\n>;\n\nconst EquityPriceSubscribePayloadSchema = z.object({\n symbol: z.string(),\n data: z.array(EquityPriceSnapshotPointSchema),\n});\n\nexport type EquityPriceSubscribePayload = z.infer<\n typeof EquityPriceSubscribePayloadSchema\n>;\n\nconst RawEquityPricesTopicSchema = z.literal('equity_prices');\n\nconst EQUITY_PRICES_TOPIC = 'prices.equity.pyth' as const;\n\nexport type EquityPricesTopic = typeof EQUITY_PRICES_TOPIC;\n\nconst EquityPricesTopicSchema: z.ZodType<EquityPricesTopic> =\n RawEquityPricesTopicSchema.transform(() => {\n return EQUITY_PRICES_TOPIC;\n });\n\nexport const EquityPricesUpdateEventSchema = z.object({\n topic: EquityPricesTopicSchema,\n type: z.literal('update'),\n timestamp: EpochMillisecondsSchema,\n payload: EquityPriceUpdatePayloadSchema,\n});\n\nexport type EquityPricesUpdateEvent = z.infer<\n typeof EquityPricesUpdateEventSchema\n>;\n\nexport const EquityPricesSubscribeEventSchema = z.object({\n topic: EquityPricesTopicSchema,\n type: z.literal('subscribe'),\n timestamp: EpochMillisecondsSchema,\n payload: EquityPriceSubscribePayloadSchema,\n});\n\nexport type EquityPricesSubscribeEvent = z.infer<\n typeof EquityPricesSubscribeEventSchema\n>;\n\nexport const EquityPricesEventSchema = z.discriminatedUnion('type', [\n EquityPricesUpdateEventSchema,\n EquityPricesSubscribeEventSchema,\n]);\n\nexport type EquityPricesEvent = z.infer<typeof EquityPricesEventSchema>;\n\nexport const CommentsEventSchema = z.discriminatedUnion('type', [\n CommentCreatedEventSchema,\n CommentRemovedEventSchema,\n ReactionCreatedEventSchema,\n ReactionRemovedEventSchema,\n]);\n\nexport type CommentsEvent = z.infer<typeof CommentsEventSchema>;\n\nexport const RealtimeEventSchema = z.discriminatedUnion('topic', [\n CommentsEventSchema,\n CryptoPricesEventSchema,\n EquityPricesEventSchema,\n]);\n\nexport type RealtimeEvent = z.infer<typeof RealtimeEventSchema>;\n","import { z } from 'zod';\nimport { EpochMillisecondsToIsoDateTimeStringSchema } from '../shared';\n\nconst SportsResultPayloadSchema = z\n .object({\n gameId: z.number().int(),\n sportradarGameId: z.string().nullish(),\n slug: z.string().nullish(),\n leagueAbbreviation: z.string(),\n homeTeam: z.string().nullish(),\n awayTeam: z.string().nullish(),\n status: z.string(),\n live: z.boolean(),\n ended: z.boolean(),\n score: z.string(),\n period: z.string().nullish(),\n elapsed: z.string().nullish(),\n finishedTimestamp: EpochMillisecondsToIsoDateTimeStringSchema.nullish(),\n finished_timestamp: EpochMillisecondsToIsoDateTimeStringSchema.nullish(),\n turn: z.string().nullish(),\n })\n .transform(({ finishedTimestamp, finished_timestamp, ...rest }) => ({\n ...rest,\n finishedAt: finishedTimestamp ?? finished_timestamp,\n }));\n\nexport const SportsResultEventSchema = SportsResultPayloadSchema.transform(\n (payload) => {\n return {\n // Normalize to the shared subscription event envelope so mixed-stream\n // consumers can discriminate by `event.topic` and `event.type`.\n topic: 'sports' as const,\n type: 'sport_result' as const,\n payload,\n };\n },\n);\n\nexport type SportsEvent = z.infer<typeof SportsResultEventSchema>;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/subscriptions/clob.ts","../../src/subscriptions/perps.ts","../../src/subscriptions/rtds.ts","../../src/subscriptions/sports.ts"],"names":["NormalizedOrderSideSchema","z","value","OrderSideSchema","TradeStatus","TradeStatusSchema","status","UserOrderStatus","UserOrderStatusSchema","OrderBookLevelSchema","DecimalStringSchema","EpochSecondsStringToIsoDateTimeStringSchema","toIsoDateTimeString","ExpirationToIsoDateTimeStringSchema","MarketBookEventSchema","TokenIdSchema","EpochMillisecondsStringSchema","event_type","asset_id","min_order_size","tick_size","neg_risk","last_trade_price","rest","PriceChangeSchema","best_bid","best_ask","MarketPriceChangeEventSchema","price_changes","MarketLastTradePriceEventSchema","fee_rate_bps","transaction_hash","MarketTickSizeChangeEventSchema","old_tick_size","new_tick_size","MarketBestBidAskEventSchema","MarketEventMessageSchema","NewMarketEventSchema","CtfConditionIdSchema","EpochMillisecondsToIsoDateTimeStringSchema","assets_ids","event_message","condition_id","clob_token_ids","sports_market_type","game_start_time","order_price_min_tick_size","group_item_title","taker_base_fee","fees_enabled","fee_schedule","MarketResolvedEventSchema","winning_asset_id","winning_outcome","UserOrderEventType","UserOrderEventTypeSchema","UserOrderEventSchema","OrderTypeSchema","orderEventType","order_owner","original_size","size_matched","associate_trades","created_at","expiration","order_type","maker_address","TradeMakerOrderSchema","order_id","matched_amount","outcome_index","UserTradeEventSchema","_","taker_order_id","match_time","matchtime","last_update","trade_owner","bucket_index","maker_orders","trader_side","StandardMarketEventSchema","CustomMarketEventSchema","MarketEventSchema","UserEventSchema","SequenceSchema","TradesChannelSchema","BboChannelSchema","BookChannelSchema","TickersChannelSchema","StatisticsChannelSchema","CandlesChannelSchema","TpslChannelSchema","PerpsSessionChannelSchema","PerpsUpdateEnvelopeSchema","EpochMillisecondsSchema","PerpsTradeEventSchema","PerpsPublicTradeUpdateSchema","ch","ts","sq","data","PerpsBboEventSchema","PerpsBboUpdateSchema","PerpsBookEventSchema","PerpsBookUpdateSchema","instrumentIdFromChannel","PerpsTickerEventSchema","PerpsTickerEntrySchema","PerpsStatisticEventSchema","PerpsStatisticUpdateSchema","PerpsCandleEventSchema","PerpsCandleSchema","candleIntervalFromChannel","PerpsMarketDataEventSchema","PerpsSessionUpdateEnvelopeSchema","perpsSessionEventSchema","type","channel","payload","message","event","PerpsBalanceUpdateEventSchema","PerpsBalanceSchema","PerpsPortfolioUpdateEventSchema","PerpsPortfolioSchema","PerpsOrderUpdateEventSchema","PerpsOrderUpdateSchema","PerpsFillUpdateEventSchema","PerpsAccountFillUpdateSchema","PerpsFundingUpdateEventSchema","PerpsAccountFundingPaymentEntrySchema","PerpsDepositUpdateEventSchema","PerpsDepositUpdateSchema","PerpsWithdrawalUpdateEventSchema","PerpsWithdrawalUpdateSchema","PerpsTpSlLifecycleUpdateSchema","PerpsOrderIdSchema","PerpsTpSlUpdateEventSchema","update","PerpsSessionUpdateEventSchema","rawInstrumentId","PerpsInstrumentIdSchema","interval","CommentRemovedPayloadSchema","CommentParentEntityTypeSchema","CommentMediaSchema","CommentProfileSchema","ReactionSchema","CommentCreatedEventSchema","CommentSchema","CommentRemovedEventSchema","ReactionCreatedEventSchema","ReactionRemovedEventSchema","PriceUpdatePayloadSchema","DecimalishSchema","CRYPTO_PRICES_BINANCE_TOPIC","CRYPTO_PRICES_CHAINLINK_TOPIC","RawCryptoPricesBinanceTopicSchema","RawCryptoPricesChainlinkTopicSchema","CryptoPricesBinanceTopicSchema","CryptoPricesChainlinkTopicSchema","CryptoPricesBinanceEventSchema","CryptoPricesChainlinkEventSchema","CryptoPricesEventSchema","EquityPriceUpdatePayloadSchema","full_accuracy_value","received_at","is_carried_forward","EquityPriceSnapshotPointSchema","EquityPriceSubscribePayloadSchema","RawEquityPricesTopicSchema","EQUITY_PRICES_TOPIC","EquityPricesTopicSchema","EquityPricesUpdateEventSchema","EquityPricesSubscribeEventSchema","EquityPricesEventSchema","CommentsEventSchema","RealtimeEventSchema","SportsResultPayloadSchema","finishedTimestamp","finished_timestamp","SportsResultEventSchema"],"mappings":"oNAaA,IAAMA,EAAkDC,CAAAA,CAAE,UAAA,CACvDC,CAAAA,EAAW,OAAOA,CAAAA,EAAU,QAAA,CAAWA,CAAAA,CAAM,WAAA,GAAgBA,CAAAA,CAC9DC,EACF,CAAA,CAEYC,CAAAA,CAAAA,CAAAA,CAAAA,GACVA,CAAAA,CAAA,OAAA,CAAU,sBAAA,CACVA,CAAAA,CAAA,sBAAwB,sCAAA,CACxBA,CAAAA,CAAA,KAAA,CAAQ,oBAAA,CACRA,EAAA,SAAA,CAAY,wBAAA,CACZA,CAAAA,CAAA,QAAA,CAAW,wBACXA,CAAAA,CAAA,MAAA,CAAS,qBAAA,CANCA,CAAAA,CAAAA,EAAAA,CAAAA,EAAA,EAAA,CAAA,CASNC,EAAAA,CAAoBJ,CAAAA,CAAE,UAAA,CAAYC,GAClC,OAAOA,CAAAA,EAAU,QAAA,EAAYA,CAAAA,CAAM,WAAW,eAAe,CAAA,CACxDA,CAAAA,CAGU,MAAA,CAAO,OAAOE,CAAW,CAAA,CAAE,IAAA,CAC3CE,CAAAA,EAAWA,CAAAA,CAAO,KAAA,CAAM,EAAsB,CAAA,GAAMJ,CACvD,CAAA,EAEqBA,CAAAA,CACpBD,CAAAA,CAAE,IAAA,CAAKG,CAAW,CAAC,CAAA,CAEVG,CAAAA,CAAAA,CAAAA,CAAAA,GACVA,CAAAA,CAAA,KAAO,MAAA,CACPA,CAAAA,CAAA,OAAA,CAAU,SAAA,CACVA,CAAAA,CAAA,OAAA,CAAU,SAAA,CACVA,CAAAA,CAAA,UAAY,WAAA,CACZA,CAAAA,CAAA,QAAA,CAAW,UAAA,CALDA,OAAA,EAAA,CAAA,CAQNC,EAAAA,CAAwBP,CAAAA,CAAE,IAAA,CAAKM,CAAe,CAAA,CAE9CE,CAAAA,CAAuBR,CAAAA,CAAE,MAAA,CAAO,CACpC,KAAA,CAAOS,EAAAA,CACP,IAAA,CAAMA,EACR,CAAC,CAAA,CAEKC,CAAAA,CAA8CV,CAAAA,CACjD,QAAO,CACP,KAAA,CAAM,OAAO,CAAA,CACb,UAAWC,CAAAA,EACVU,CAAAA,CAAoB,IAAI,IAAA,CAAK,MAAA,CAAOV,CAAK,CAAA,CAAI,GAAI,EAAE,WAAA,EAAa,CAClE,CAAA,CAEIW,GAAsCZ,CAAAA,CACzC,MAAA,EAAO,CACP,KAAA,CAAM,OAAO,CAAA,CACb,SAAA,CAAWC,CAAAA,EACVA,CAAAA,GAAU,GAAA,CACN,MAAA,CACAU,CAAAA,CAAoB,IAAI,KAAK,MAAA,CAAOV,CAAK,CAAA,CAAI,GAAI,EAAE,WAAA,EAAa,CACtE,CAAA,CAIWY,GAAwBb,CAAAA,CAClC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,MAAM,CAAA,CAC5B,OAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,IAAA,CAAMd,CAAAA,CAAE,KAAA,CAAMQ,CAAoB,CAAA,CAClC,IAAA,CAAMR,CAAAA,CAAE,KAAA,CAAMQ,CAAoB,CAAA,CAClC,IAAA,CAAMR,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CACzB,SAAA,CAAWe,GAA8B,OAAA,EAAQ,CACjD,cAAA,CAAgBN,EAAAA,CAAoB,SAAQ,CAC5C,SAAA,CAAWA,EAAAA,CAAoB,OAAA,EAAQ,CACvC,QAAA,CAAUT,CAAAA,CAAE,OAAA,GAAU,OAAA,EAAQ,CAC9B,gBAAA,CAAkBS,EAAAA,CAAoB,SACxC,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAO,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,EACA,QAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,IACS,CAEL,KAAA,CAAO,SACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,aAAcC,CAAAA,CACd,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,EACT,cAAA,CAAgBC,CAClB,CACF,CAAA,CAEJ,EAIIE,EAAAA,CAAoBvB,CAAAA,CACvB,MAAA,CAAO,CACN,QAAA,CAAUc,EAAAA,CACV,KAAA,CAAOL,EAAAA,CACP,KAAMA,EAAAA,CACN,IAAA,CAAMV,CAAAA,CACN,IAAA,CAAMC,EAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACzB,SAAUS,EAAAA,CAAoB,OAAA,EAAQ,CACtC,QAAA,CAAUA,EAAAA,CAAoB,OAAA,EAChC,CAAC,EACA,SAAA,CAAU,CAAC,CAAE,QAAA,CAAAQ,EAAU,QAAA,CAAAO,CAAAA,CAAU,QAAA,CAAAC,CAAAA,CAAU,GAAGH,CAAK,CAAA,IAAO,CACzD,GAAGA,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,OAAA,CAASO,EACT,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAISC,GAA+B1B,CAAAA,CACzC,MAAA,CAAO,CACN,UAAA,CAAYA,EAAE,OAAA,CAAQ,cAAc,CAAA,CACpC,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,aAAA,CAAeA,EAAE,KAAA,CAAMuB,EAAiB,CAAA,CACxC,SAAA,CAAWR,EAAAA,CAA8B,OAAA,EAC3C,CAAC,EACA,SAAA,CAAU,CAAC,CAAE,UAAA,CAAAC,CAAAA,CAAY,aAAA,CAAAW,CAAAA,CAAe,GAAGL,CAAK,CAAA,IACxC,CAEL,KAAA,CAAO,QAAA,CACP,KAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,EACH,YAAA,CAAcK,CAChB,CACF,CAAA,CACD,CAAA,CAMUC,EAAAA,CAAkC5B,CAAAA,CAC5C,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,kBAAkB,EACxC,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,SAAUc,EAAAA,CACV,KAAA,CAAOL,EAAAA,CACP,IAAA,CAAMA,EAAAA,CAAoB,OAAA,EAAQ,CAClC,YAAA,CAAcA,GAAoB,OAAA,EAAQ,CAC1C,IAAA,CAAMV,CAAAA,CACN,UAAWgB,EAAAA,CAA8B,OAAA,EAAQ,CACjD,gBAAA,CAAkBf,EAAE,MAAA,EAAO,CAAE,OAAA,EAC/B,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CAAE,UAAA,CAAAgB,CAAAA,CAAY,QAAA,CAAAC,CAAAA,CAAU,aAAAY,CAAAA,CAAc,gBAAA,CAAAC,CAAAA,CAAkB,GAAGR,CAAK,CAAA,IACxD,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,UAAA,CAAYY,EACZ,eAAA,CAAiBC,CACnB,CACF,CAAA,CAEJ,EAMWC,EAAAA,CAAkC/B,CAAAA,CAC5C,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,kBAAkB,EACxC,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,SAAUc,EAAAA,CACV,aAAA,CAAeL,EAAAA,CAAoB,OAAA,GACnC,aAAA,CAAeA,EAAAA,CACf,SAAA,CAAWM,EAAAA,CAA8B,OAAA,EAC3C,CAAC,CAAA,CACA,UACC,CAAC,CAAE,UAAA,CAAAC,CAAAA,CAAY,SAAAC,CAAAA,CAAU,aAAA,CAAAe,CAAAA,CAAe,aAAA,CAAAC,EAAe,GAAGX,CAAK,CAAA,IACtD,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,CAAAA,CACN,QAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,EACT,WAAA,CAAae,CAAAA,CACb,WAAA,CAAaC,CACf,CACF,CAAA,CAEJ,CAAA,CAMWC,EAAAA,CAA8BlC,CAAAA,CACxC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,QAAQ,cAAc,CAAA,CACpC,MAAA,CAAQA,CAAAA,CAAE,QAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,QAAA,CAAUL,GAAoB,OAAA,EAAQ,CACtC,QAAA,CAAUA,EAAAA,CAAoB,OAAA,EAAQ,CACtC,MAAA,CAAQA,EAAAA,CAAoB,SAAQ,CACpC,SAAA,CAAWM,EAAAA,CAA8B,OAAA,EAC3C,CAAC,CAAA,CACA,SAAA,CAAU,CAAC,CAAE,UAAA,CAAAC,CAAAA,CAAY,QAAA,CAAAC,CAAAA,CAAU,QAAA,CAAAO,CAAAA,CAAU,QAAA,CAAAC,CAAAA,CAAU,GAAGH,CAAK,CAAA,IACvD,CAEL,KAAA,CAAO,SACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,OAAA,CAASL,CAAAA,CACT,OAAA,CAASO,CAAAA,CACT,OAAA,CAASC,CACX,CACF,EACD,CAAA,CAIGU,EAAAA,CAA2BnC,CAAAA,CAAE,MAAA,CAAO,CACxC,EAAA,CAAIA,CAAAA,CAAE,MAAA,EAAO,CACb,OAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC3B,IAAA,CAAMA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CACzB,KAAA,CAAOA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAC1B,WAAA,CAAaA,EAAE,MAAA,EAAO,CAAE,OAAA,EAC1B,CAAC,CAAA,CAIYoC,EAAAA,CAAuBpC,CAAAA,CACjC,OAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,YAAY,CAAA,CAClC,EAAA,CAAIA,CAAAA,CAAE,MAAA,GACN,QAAA,CAAUA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC7B,MAAA,CAAQA,CAAAA,CAAE,QAAO,CACjB,IAAA,CAAMA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CACzB,WAAA,CAAaA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAChC,UAAA,CAAYA,CAAAA,CAAE,KAAA,CAAMc,EAAa,CAAA,CAAE,SAAQ,CAC3C,QAAA,CAAUd,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,SAAQ,CACtC,aAAA,CAAemC,EAAAA,CAAyB,OAAA,EAAQ,CAChD,SAAA,CAAWpB,EAAAA,CAA8B,OAAA,GACzC,IAAA,CAAMf,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,QAAQ,CAAA,CAAE,OAAA,EAAQ,CAClC,aAAcqC,CAAAA,CAAqB,OAAA,EAAQ,CAC3C,MAAA,CAAQrC,CAAAA,CAAE,OAAA,EAAQ,CAAE,OAAA,GACpB,cAAA,CAAgBA,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,QAAQ,CAAA,CAAE,OAAA,EAAQ,CAC5C,mBAAoBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACvC,IAAA,CAAMS,EAAAA,CAAoB,OAAA,GAC1B,eAAA,CAAiB6B,EAAAA,CAA2C,OAAA,EAAQ,CACpE,0BAA2B7B,EAAAA,CAAoB,OAAA,EAAQ,CACvD,gBAAA,CAAkBT,EAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACrC,cAAA,CAAgBS,EAAAA,CAAoB,OAAA,EAAQ,CAC5C,aAAcT,CAAAA,CAAE,OAAA,EAAQ,CAAE,OAAA,GAC1B,YAAA,CAAcA,CAAAA,CAAE,OAAA,EAAQ,CAAE,SAC5B,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAgB,CAAAA,CACA,WAAAuB,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,EACA,cAAA,CAAAC,CAAAA,CACA,kBAAA,CAAAC,CAAAA,CACA,gBAAAC,CAAAA,CACA,yBAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,EACA,YAAA,CAAAC,CAAAA,CACA,GAAG3B,CACL,KACS,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,EACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,QAAA,CAAUiB,CAAAA,CACV,YAAA,CAAcC,CAAAA,CACd,YAAaC,CAAAA,CACb,YAAA,CAAcC,CAAAA,CACd,gBAAA,CAAkBC,EAClB,aAAA,CAAeC,CAAAA,CACf,qBAAA,CAAuBC,CAAAA,CACvB,eAAgBC,CAAAA,CAChB,YAAA,CAAcC,CAAAA,CACd,WAAA,CAAaC,CAAAA,CACb,WAAA,CAAaC,CACf,CACF,EAEJ,CAAA,CAIWC,EAAAA,CAA4BlD,CAAAA,CACtC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,iBAAiB,EACvC,EAAA,CAAIA,CAAAA,CAAE,MAAA,EAAO,CACb,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,WAAYA,CAAAA,CAAE,KAAA,CAAMc,EAAa,CAAA,CAAE,SAAQ,CAC3C,gBAAA,CAAkBA,EAAAA,CAAc,OAAA,GAChC,eAAA,CAAiBd,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACpC,aAAA,CAAemC,EAAAA,CAAyB,SAAQ,CAChD,SAAA,CAAWpB,EAAAA,CAA8B,OAAA,GACzC,IAAA,CAAMf,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,QAAQ,CAAA,CAAE,OAAA,EAC5B,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAgB,CAAAA,CACA,UAAA,CAAAuB,CAAAA,CACA,iBAAAY,CAAAA,CACA,eAAA,CAAAC,CAAAA,CACA,aAAA,CAAAZ,EACA,GAAGlB,CACL,CAAA,IACS,CAEL,KAAA,CAAO,QAAA,CACP,IAAA,CAAMN,CAAAA,CACN,QAAS,CACP,GAAGM,CAAAA,CACH,QAAA,CAAUiB,EACV,cAAA,CAAgBY,CAAAA,CAChB,cAAA,CAAgBC,CAAAA,CAChB,aAAcZ,CAChB,CACF,CAAA,CAEJ,CAAA,CAIUa,EAAAA,CAAAA,CAAAA,CAAAA,GACVA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,EAAA,MAAA,CAAS,QAAA,CACTA,CAAAA,CAAA,YAAA,CAAe,eAHLA,CAAAA,CAAAA,EAAAA,EAAAA,EAAA,EAAA,CAAA,CAMNC,EAAAA,CAA2BtD,CAAAA,CAAE,KAAKqD,EAAkB,CAAA,CAE7CE,EAAAA,CAAuBvD,CAAAA,CACjC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,QAAQ,OAAO,CAAA,CAC7B,EAAA,CAAIA,CAAAA,CAAE,QAAO,CACb,KAAA,CAAOA,CAAAA,CAAE,MAAA,GACT,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,IAAA,CAAMf,CAAAA,CACN,YAAaC,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GACxB,aAAA,CAAeS,EAAAA,CACf,YAAA,CAAcA,EAAAA,CACd,MAAOA,EAAAA,CACP,gBAAA,CAAkBT,CAAAA,CAAE,KAAA,CAAMA,CAAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,SAAQ,CAC9C,OAAA,CAASA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC5B,IAAA,CAAMsD,GACN,UAAA,CAAY5C,CAAAA,CAA4C,OAAA,EAAQ,CAChE,UAAA,CAAYE,EAAAA,CAAoC,OAAA,EAAQ,CACxD,WAAY4C,EAAAA,CAAgB,OAAA,EAAQ,CACpC,MAAA,CAAQjD,GAAsB,OAAA,EAAQ,CACtC,aAAA,CAAeP,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAClC,SAAA,CAAWe,EACb,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAC,CAAAA,CACA,IAAA,CAAMyC,EACN,QAAA,CAAAxC,CAAAA,CACA,WAAA,CAAAyC,CAAAA,CACA,cAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,EACA,UAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,GAAG3C,CACL,CAAA,IACS,CAEL,KAAA,CAAO,OACP,IAAA,CAAMN,CAAAA,CACN,OAAA,CAAS,CACP,GAAGM,CAAAA,CACH,cAAA,CAAAmC,CAAAA,CACA,QAASxC,CAAAA,CACT,UAAA,CAAYyC,CAAAA,CACZ,YAAA,CAAcC,EACd,WAAA,CAAaC,CAAAA,CACb,eAAA,CAAiBC,CAAAA,CACjB,UAAWC,CAAAA,CACX,SAAA,CAAWC,CAAAA,CACX,SAAA,CAAWC,CAAAA,CACX,YAAA,CAAcC,CAChB,CACF,EAEJ,CAAA,CAIIC,EAAAA,CAAwBlE,CAAAA,CAC3B,MAAA,CAAO,CACN,QAAA,CAAUA,CAAAA,CAAE,MAAA,EAAO,CACnB,MAAOA,CAAAA,CAAE,MAAA,EAAO,CAChB,aAAA,CAAeA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC1B,cAAA,CAAgBS,EAAAA,CAChB,KAAA,CAAOA,EAAAA,CACP,aAAcA,EAAAA,CAAoB,OAAA,EAAQ,CAC1C,QAAA,CAAUK,GACV,OAAA,CAASd,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC5B,aAAA,CAAeA,CAAAA,CAAE,QAAO,CAAE,GAAA,EAAI,CAAE,OAAA,GAChC,IAAA,CAAMD,CACR,CAAC,CAAA,CACA,UACC,CAAC,CACC,QAAA,CAAAoE,CAAAA,CACA,aAAA,CAAAF,CAAAA,CACA,cAAA,CAAAG,CAAAA,CACA,aAAAvC,CAAAA,CACA,QAAA,CAAAZ,CAAAA,CACA,aAAA,CAAAoD,EACA,GAAG/C,CACL,CAAA,IAAO,CACL,GAAGA,CAAAA,CACH,OAAA,CAAS6C,CAAAA,CACT,YAAA,CAAcF,CAAAA,CACd,aAAA,CAAeG,CAAAA,CACf,UAAA,CAAYvC,EACZ,OAAA,CAASZ,CAAAA,CACT,YAAA,CAAcoD,CAChB,EACF,CAAA,CAIWC,EAAAA,CAAuBtE,CAAAA,CACjC,MAAA,CAAO,CACN,UAAA,CAAYA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAA,CAC7B,IAAA,CAAMA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAA,CACvB,EAAA,CAAIA,CAAAA,CAAE,MAAA,GACN,cAAA,CAAgBA,CAAAA,CAAE,MAAA,EAAO,CACzB,OAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,QAAA,CAAUc,EAAAA,CACV,IAAA,CAAMf,CAAAA,CACN,IAAA,CAAMU,GACN,YAAA,CAAcA,EAAAA,CAAoB,OAAA,EAAQ,CAC1C,MAAOA,EAAAA,CACP,MAAA,CAAQL,EAAAA,CACR,UAAA,CAAYM,EAA4C,OAAA,EAAQ,CAChE,SAAA,CAAWA,CAAAA,CAA4C,OAAA,EAAQ,CAC/D,WAAA,CAAaA,CAAAA,CAA4C,SAAQ,CACjE,OAAA,CAASV,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CAC5B,KAAA,CAAOA,CAAAA,CAAE,QAAO,CAChB,WAAA,CAAaA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAChC,aAAA,CAAeA,EAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAClC,iBAAkBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC7B,YAAA,CAAcA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,OAAA,EAAQ,CACvC,aAAcA,CAAAA,CAAE,KAAA,CAAMkE,EAAqB,CAAA,CAAE,SAAQ,CACrD,WAAA,CAAalE,CAAAA,CAAE,KAAA,CAAM,CAACA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAA,CAAGA,CAAAA,CAAE,OAAA,CAAQ,OAAO,CAAC,CAAC,CAAA,CAAE,OAAA,EAAQ,CACvE,SAAA,CAAWe,EACb,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,UAAA,CAAAC,CAAAA,CACA,IAAA,CAAMuD,CAAAA,CACN,cAAA,CAAAC,CAAAA,CACA,QAAA,CAAAvD,CAAAA,CACA,aAAAY,CAAAA,CACA,UAAA,CAAA4C,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,EACA,aAAA,CAAAX,CAAAA,CACA,gBAAA,CAAAnC,CAAAA,CACA,YAAA,CAAA+C,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,YAAAC,EAAAA,CACA,GAAGzD,EACL,CAAA,IACS,CAEL,KAAA,CAAO,MAAA,CACP,IAAA,CAAMN,CAAAA,CACN,QAAS,CACP,GAAGM,EAAAA,CACH,YAAA,CAAckD,CAAAA,CACd,OAAA,CAASvD,CAAAA,CACT,UAAA,CAAYY,EACZ,SAAA,CAAW4C,CAAAA,EAAcC,CAAAA,CACzB,SAAA,CAAWC,EACX,UAAA,CAAYC,CAAAA,CACZ,YAAA,CAAcX,CAAAA,CACd,gBAAiBnC,CAAAA,CACjB,WAAA,CAAa+C,CAAAA,CACb,WAAA,CAAaC,CAAAA,CACb,UAAA,CAAYC,EACd,CACF,EAEJ,CAAA,CAIWC,EAAAA,CAA4BhF,CAAAA,CAAE,kBAAA,CAAmB,aAAc,CAC1Ea,EAAAA,CACAa,EAAAA,CACAE,EAAAA,CACAG,EACF,CAAC,CAAA,CAIYkD,EAAAA,CAA0BjF,CAAAA,CAAE,kBAAA,CAAmB,YAAA,CAAc,CACxEkC,EAAAA,CACAE,GACAc,EACF,CAAC,CAAA,CAIYgC,EAAAA,CAAoBlF,EAAE,kBAAA,CAAmB,YAAA,CAAc,CAClEa,EAAAA,CACAa,GACAE,EAAAA,CACAG,EAAAA,CACAG,EAAAA,CACAE,EAAAA,CACAc,EACF,CAAC,CAAA,CAIYiC,EAAAA,CAAkBnF,EAAE,kBAAA,CAAmB,YAAA,CAAc,CAChEuD,EAAAA,CACAe,EACF,CAAC,EClhBD,IAAMc,EAAAA,CAAiBpF,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,aAAY,CAE9CqF,EAAAA,CAAsBrF,CAAAA,CAAE,MAAA,GAAS,KAAA,CAAM,eAAe,CAAA,CACtDsF,EAAAA,CAAmBtF,EAAE,MAAA,EAAO,CAAE,KAAA,CAAM,YAAY,CAAA,CAChDuF,EAAAA,CAAoBvF,CAAAA,CAAE,MAAA,GAAS,KAAA,CAAM,aAAa,CAAA,CAClDwF,EAAAA,CAAuBxF,EAAE,MAAA,EAAO,CAAE,KAAA,CAAM,sBAAsB,EAC9DyF,EAAAA,CAA0BzF,CAAAA,CAAE,MAAA,EAAO,CAAE,KAAA,CAAM,yBAAyB,CAAA,CACpE0F,EAAAA,CAAuB1F,EAC1B,MAAA,EAAO,CACP,KAAA,CAAM,wCAAwC,CAAA,CAC3C2F,EAAAA,CAAoB3F,CAAAA,CAAE,MAAA,GAAS,KAAA,CAAM,aAAa,CAAA,CAClD4F,EAAAA,CAA4B5F,CAAAA,CAAE,IAAA,CAAK,CACvC,UAAA,CACA,YACA,QAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,aACF,CAAC,CAAA,CAEK6F,CAAAA,CAA4B7F,CAAAA,CAAE,OAAO,CACzC,EAAA,CAAI8F,EAAAA,CACJ,EAAA,CAAIV,EACN,CAAC,CAAA,CAEYW,EAAAA,CAAwBF,EAA0B,MAAA,CAAO,CACpE,EAAA,CAAIR,EAAAA,CACJ,KAAMW,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,cAAA,CACP,KAAM,OAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,EACX,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAIWC,EAAAA,CAAsBR,CAAAA,CAA0B,OAAO,CAClE,EAAA,CAAIP,EAAAA,CACJ,IAAA,CAAMgB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAL,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,KAAO,CACtC,KAAA,CAAO,WAAA,CACP,IAAA,CAAM,MACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,SAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAIWG,EAAAA,CAAuBV,CAAAA,CAA0B,MAAA,CAAO,CACnE,EAAA,CAAIN,EAAAA,CACJ,IAAA,CAAMiB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,GAAAP,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,YAAA,CACP,IAAA,CAAM,MAAA,CACN,QAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,EACV,OAAA,CAAS,CACP,YAAA,CAAcM,EAAAA,CAAwBR,CAAE,CAAA,CACxC,GAAGG,CACL,CACF,CAAA,CAAE,CAAA,CAIWM,EAAAA,CAAyBb,CAAAA,CAA0B,MAAA,CAAO,CACrE,EAAA,CAAIL,EAAAA,CACJ,KAAMmB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAV,CAAAA,CAAI,GAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,eAAA,CACP,KAAM,QAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAIWQ,EAAAA,CAA4Bf,CAAAA,CAA0B,OAAO,CACxE,EAAA,CAAIJ,EAAAA,CACJ,IAAA,CAAMoB,EACR,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAZ,CAAAA,CAAI,EAAA,CAAAC,EAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,KAAO,CACtC,KAAA,CAAO,kBAAA,CACP,IAAA,CAAM,YACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,CAAAA,CACV,OAAA,CAASC,CACX,EAAE,CAAA,CAIWU,EAAAA,CAAyBjB,CAAAA,CAA0B,MAAA,CAAO,CACrE,EAAA,CAAIH,EAAAA,CACJ,IAAA,CAAM1F,CAAAA,CAAE,MAAM+G,EAAiB,CACjC,CAAC,CAAA,CAAE,SAAA,CAAU,CAAC,CAAE,EAAA,CAAAd,EAAI,EAAA,CAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,KAAAC,CAAK,CAAA,IAAO,CACtC,KAAA,CAAO,gBACP,IAAA,CAAM,QAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,QAAA,CAAUC,CAAAA,CACV,QAAS,CACP,YAAA,CAAcM,EAAAA,CAAwBR,CAAE,EACxC,QAAA,CAAUe,EAAAA,CAA0Bf,CAAE,CAAA,CACtC,QAASG,CACX,CACF,CAAA,CAAE,CAAA,CAIWa,EAAAA,CAA6BjH,CAAAA,CAAE,KAAA,CAAM,CAChD+F,GACAM,EAAAA,CACAE,EAAAA,CACAG,EAAAA,CACAE,EAAAA,CACAE,EACF,CAAC,CAAA,CAIKI,EAAAA,CAAmCrB,CAAAA,CAA0B,OAAO,CACxE,EAAA,CAAID,EACN,CAAC,EAED,SAASuB,CAAAA,CAIPC,CAAAA,CAAaC,EAAmBC,CAAAA,CAAmB,CACnD,OAAOJ,EAAAA,CAAiC,OAAO,CAC7C,EAAA,CAAIlH,CAAAA,CAAE,OAAA,CAAQqH,CAAO,CAAA,CACrB,IAAA,CAAMC,CACR,CAAC,CAAA,CAAE,SAAA,CAAWC,CAAAA,EAAY,CACxB,IAAMC,CAAAA,CAAQD,CAAAA,CAOd,OAAO,CACL,KAAAH,CAAAA,CACA,OAAA,CAASI,CAAAA,CAAM,EAAA,CACf,UAAWA,CAAAA,CAAM,EAAA,CACjB,QAAA,CAAUA,CAAAA,CAAM,EAAA,CAChB,OAAA,CAASA,CAAAA,CAAM,IACjB,CACF,CAAC,CACH,CAEO,IAAMC,GAAgCN,CAAAA,CAC3C,SAAA,CACA,UAAA,CACAO,CACF,EAKaC,EAAAA,CAAkCR,CAAAA,CAC7C,WAAA,CACA,WAAA,CACAS,CACF,CAAA,CAKaC,EAAAA,CAA8BV,CAAAA,CACzC,QACA,QAAA,CACAW,EACF,CAAA,CAGaC,EAAAA,CAA6BZ,EACxC,MAAA,CACA,OAAA,CACAa,EACF,CAAA,CAGaC,GAAgCd,CAAAA,CAC3C,SAAA,CACA,SAAA,CACAe,CACF,CAAA,CAKaC,EAAAA,CAAgChB,CAAAA,CAC3C,SAAA,CACA,WACAiB,EACF,CAAA,CAKaC,EAAAA,CAAmClB,CAAAA,CAC9C,aACA,aAAA,CACAmB,EACF,CAAA,CAKMC,EAAAA,CAAiCvI,EAAE,MAAA,CAAO,CAC9C,GAAA,CAAKwI,CAAAA,CACL,EAAA,CAAIxI,CAAAA,CAAE,IAAA,CAAK,CAAC,cAAe,OAAA,CAAS,WAAA,CAAa,SAAS,CAAC,EAC3D,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,UACrB,CAAC,CAAA,CAEYyI,EAAAA,CAA6B5C,CAAAA,CAA0B,MAAA,CAAO,CACzE,EAAA,CAAIF,GACJ,IAAA,CAAM4C,EAAAA,CAA+B,SAAA,CAAWG,CAAAA,GAAY,CAC1D,OAAA,CAASA,CAAAA,CAAO,GAAA,CAChB,MAAA,CAAQA,EAAO,EAAA,CACf,MAAA,CAAQA,CAAAA,CAAO,MACjB,CAAA,CAAE,CACJ,CAAC,CAAA,CAAE,UAAU,CAAC,CAAE,EAAA,CAAAzC,CAAAA,CAAI,GAAAC,CAAAA,CAAI,EAAA,CAAAC,CAAAA,CAAI,IAAA,CAAAC,CAAK,CAAA,IAAO,CACtC,IAAA,CAAM,MAAA,CACN,OAAA,CAASH,CAAAA,CACT,SAAA,CAAWC,CAAAA,CACX,SAAUC,CAAAA,CACV,OAAA,CAASC,CACX,CAAA,CAAE,CAAA,CAGWuC,EAAAA,CAAgC3I,CAAAA,CAAE,KAAA,CAAM,CACnDyH,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAE,EAAAA,CACAI,EACF,CAAC,EAgBD,SAAShC,EAAAA,CAAwBY,CAAAA,CAAiB,CAChD,GAAM,EAAGuB,CAAe,EAAIvB,CAAAA,CAAQ,KAAA,CAAM,IAAI,CAAA,CAC9C,OAAOwB,CAAAA,CAAwB,KAAA,CAAM,MAAA,CAAOD,CAAe,CAAC,CAC9D,CAEA,SAAS5B,GAA0BK,CAAAA,CAAiB,CAClD,GAAM,GAAKyB,CAAQ,CAAA,CAAIzB,CAAAA,CAAQ,KAAA,CAAM,IAAI,CAAA,CACzC,OAAOyB,CACT,CC/RA,IAAMC,EAAAA,CAA8B/I,CAAAA,CAAE,MAAA,CAAO,CAC3C,EAAA,CAAIA,CAAAA,CAAE,MAAA,EAAO,CACb,IAAA,CAAMA,CAAAA,CAAE,MAAA,EAAO,CAAE,SAAQ,CACzB,gBAAA,CAAkBgJ,IAAAA,CAA8B,OAAA,GAChD,cAAA,CAAgBhJ,CAAAA,CAAE,MAAA,EAAO,CAAE,KAAI,CAAE,OAAA,EAAQ,CACzC,eAAA,CAAiBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC5B,WAAA,CAAaA,CAAAA,CAAE,MAAA,EAAO,CAAE,SAAQ,CAChC,YAAA,CAAcA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CACjC,SAAA,CAAWA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC9B,UAAWA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GACtB,KAAA,CAAOA,CAAAA,CAAE,KAAA,CAAMiJ,CAAkB,EAAE,OAAA,EAAQ,CAC3C,OAAA,CAASC,CAAAA,CAAqB,OAAA,EAAQ,CACtC,SAAA,CAAWlJ,CAAAA,CAAE,MAAMmJ,CAAc,CAAA,CAAE,OAAA,EAAQ,CAC3C,YAAanJ,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,OAAA,EAAQ,CACtC,aAAA,CAAeA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,SAAQ,CACxC,UAAA,CAAYA,CAAAA,CAAE,MAAA,GAAS,OAAA,EACzB,CAAC,CAAA,CAIYoJ,GAA4BpJ,CAAAA,CAAE,MAAA,CAAO,CAChD,KAAA,CAAOA,CAAAA,CAAE,OAAA,CAAQ,UAAU,CAAA,CAC3B,KAAMA,CAAAA,CAAE,OAAA,CAAQ,iBAAiB,CAAA,CACjC,UAAW8F,EAAAA,CACX,OAAA,CAASuD,CACX,CAAC,EAIYC,EAAAA,CAA4BtJ,CAAAA,CAAE,MAAA,CAAO,CAChD,KAAA,CAAOA,CAAAA,CAAE,OAAA,CAAQ,UAAU,EAC3B,IAAA,CAAMA,CAAAA,CAAE,OAAA,CAAQ,iBAAiB,EACjC,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAASiD,EACX,CAAC,CAAA,CAIYQ,EAAAA,CAA6BvJ,CAAAA,CAAE,MAAA,CAAO,CACjD,KAAA,CAAOA,CAAAA,CAAE,OAAA,CAAQ,UAAU,CAAA,CAC3B,IAAA,CAAMA,CAAAA,CAAE,OAAA,CAAQ,kBAAkB,CAAA,CAClC,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAASqD,CACX,CAAC,CAAA,CAIYK,EAAAA,CAA6BxJ,CAAAA,CAAE,MAAA,CAAO,CACjD,KAAA,CAAOA,CAAAA,CAAE,QAAQ,UAAU,CAAA,CAC3B,IAAA,CAAMA,CAAAA,CAAE,QAAQ,kBAAkB,CAAA,CAClC,SAAA,CAAW8F,EAAAA,CACX,QAASqD,CACX,CAAC,CAAA,CAIKM,EAAAA,CAA2BzJ,CAAAA,CAAE,MAAA,CAAO,CACxC,MAAA,CAAQA,EAAE,MAAA,EAAO,CACjB,SAAA,CAAW8F,EAAAA,CACX,MAAO4D,EACT,CAAC,CAAA,CAIKC,EAAAA,CAA8B,wBAC9BC,EAAAA,CAAgC,yBAAA,CAQhCC,EAAAA,CAAoC7J,CAAAA,CAAE,OAAA,CAAQ,eAAe,CAAA,CAC7D8J,EAAAA,CAAsC9J,EAAE,OAAA,CAC5C,yBACF,CAAA,CAEM+J,EAAAA,CACJF,GAAkC,SAAA,CAAU,IACnCF,EACR,CAAA,CAEGK,GACJF,EAAAA,CAAoC,SAAA,CAAU,IACrCF,EACR,CAAA,CAEUK,EAAAA,CAAiCjK,CAAAA,CAAE,MAAA,CAAO,CACrD,KAAA,CAAO+J,EAAAA,CACP,IAAA,CAAM/J,CAAAA,CAAE,QAAQ,QAAQ,CAAA,CACxB,SAAA,CAAW8F,EAAAA,CACX,QAAS2D,EACX,CAAC,CAAA,CAMYS,EAAAA,CAAmClK,CAAAA,CAAE,MAAA,CAAO,CACvD,KAAA,CAAOgK,GACP,IAAA,CAAMhK,CAAAA,CAAE,OAAA,CAAQ,QAAQ,CAAA,CACxB,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAAS2D,EACX,CAAC,CAAA,CAMYU,EAAAA,CAA0BnK,CAAAA,CAAE,kBAAA,CAAmB,OAAA,CAAS,CACnEiK,EAAAA,CACAC,EACF,CAAC,CAAA,CAIKE,EAAAA,CAAiCpK,CAAAA,CACpC,OAAO,CACN,MAAA,CAAQA,CAAAA,CAAE,MAAA,GACV,KAAA,CAAO0J,EAAAA,CACP,mBAAA,CAAqBjJ,EAAAA,CAAoB,OAAA,EAAQ,CACjD,SAAA,CAAWqF,EAAAA,CACX,YAAaA,EAAAA,CAAwB,OAAA,EAAQ,CAC7C,kBAAA,CAAoB9F,EAAE,OAAA,EAAQ,CAAE,OAAA,EAClC,CAAC,CAAA,CACA,SAAA,CACC,CAAC,CACC,mBAAA,CAAAqK,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,mBAAAC,CAAAA,CACA,KAAA,CAAAtK,CAAAA,CACA,GAAGqB,CACL,CAAA,IAAO,CACL,GAAGA,CAAAA,CACH,MAAO+I,CAAAA,EAAuBpK,CAAAA,CAC9B,UAAA,CAAYqK,CAAAA,CACZ,gBAAA,CAAkBC,CACpB,CAAA,CACF,CAAA,CAMIC,GAAiCxK,CAAAA,CAAE,MAAA,CAAO,CAC9C,SAAA,CAAWA,EAAE,MAAA,EAAO,CACpB,KAAA,CAAO0J,EACT,CAAC,CAAA,CAMKe,EAAAA,CAAoCzK,CAAAA,CAAE,MAAA,CAAO,CACjD,MAAA,CAAQA,CAAAA,CAAE,MAAA,GACV,IAAA,CAAMA,CAAAA,CAAE,KAAA,CAAMwK,EAA8B,CAC9C,CAAC,CAAA,CAMKE,EAAAA,CAA6B1K,CAAAA,CAAE,QAAQ,eAAe,CAAA,CAEtD2K,EAAAA,CAAsB,oBAAA,CAItBC,EAAAA,CACJF,EAAAA,CAA2B,SAAA,CAAU,IAC5BC,EACR,CAAA,CAEUE,EAAAA,CAAgC7K,CAAAA,CAAE,MAAA,CAAO,CACpD,KAAA,CAAO4K,EAAAA,CACP,IAAA,CAAM5K,CAAAA,CAAE,QAAQ,QAAQ,CAAA,CACxB,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAASsE,EACX,CAAC,CAAA,CAMYU,GAAmC9K,CAAAA,CAAE,MAAA,CAAO,CACvD,KAAA,CAAO4K,GACP,IAAA,CAAM5K,CAAAA,CAAE,OAAA,CAAQ,WAAW,EAC3B,SAAA,CAAW8F,EAAAA,CACX,OAAA,CAAS2E,EACX,CAAC,CAAA,CAMYM,EAAAA,CAA0B/K,CAAAA,CAAE,mBAAmB,MAAA,CAAQ,CAClE6K,EAAAA,CACAC,EACF,CAAC,CAAA,CAIYE,EAAAA,CAAsBhL,CAAAA,CAAE,kBAAA,CAAmB,OAAQ,CAC9DoJ,EAAAA,CACAE,EAAAA,CACAC,EAAAA,CACAC,EACF,CAAC,CAAA,CAIYyB,EAAAA,CAAsBjL,EAAE,kBAAA,CAAmB,OAAA,CAAS,CAC/DgL,EAAAA,CACAb,GACAY,EACF,CAAC,ECnOD,IAAMG,EAAAA,CAA4BlL,CAAAA,CAC/B,MAAA,CAAO,CACN,MAAA,CAAQA,EAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CACvB,iBAAkBA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,GAC7B,IAAA,CAAMA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CACzB,kBAAA,CAAoBA,CAAAA,CAAE,QAAO,CAC7B,QAAA,CAAUA,CAAAA,CAAE,MAAA,GAAS,OAAA,EAAQ,CAC7B,QAAA,CAAUA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAC7B,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CACjB,IAAA,CAAMA,EAAE,OAAA,EAAQ,CAChB,KAAA,CAAOA,CAAAA,CAAE,SAAQ,CACjB,KAAA,CAAOA,CAAAA,CAAE,MAAA,GACT,MAAA,CAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EAAQ,CAC3B,OAAA,CAASA,CAAAA,CAAE,QAAO,CAAE,OAAA,EAAQ,CAC5B,iBAAA,CAAmBsC,GAA2C,OAAA,EAAQ,CACtE,kBAAA,CAAoBA,EAAAA,CAA2C,SAAQ,CACvE,IAAA,CAAMtC,CAAAA,CAAE,MAAA,EAAO,CAAE,OAAA,EACnB,CAAC,EACA,SAAA,CAAU,CAAC,CAAE,iBAAA,CAAAmL,EAAmB,kBAAA,CAAAC,CAAAA,CAAoB,GAAG9J,CAAK,KAAO,CAClE,GAAGA,CAAAA,CACH,UAAA,CAAY6J,CAAAA,EAAqBC,CACnC,CAAA,CAAE,CAAA,CAESC,GAA0BH,EAAAA,CAA0B,SAAA,CAC9D5D,CAAAA,GACQ,CAGL,MAAO,QAAA,CACP,IAAA,CAAM,cAAA,CACN,OAAA,CAAAA,CACF,CAAA,CAEJ","file":"index.js","sourcesContent":["import { z } from 'zod';\nimport {\n CtfConditionIdSchema,\n DecimalStringSchema,\n EpochMillisecondsStringSchema,\n EpochMillisecondsToIsoDateTimeStringSchema,\n type OrderSide,\n OrderSideSchema,\n OrderTypeSchema,\n TokenIdSchema,\n toIsoDateTimeString,\n} from '../shared';\n\nconst NormalizedOrderSideSchema: z.ZodType<OrderSide> = z.preprocess(\n (value) => (typeof value === 'string' ? value.toUpperCase() : value),\n OrderSideSchema,\n);\n\nexport enum TradeStatus {\n Matched = 'TRADE_STATUS_MATCHED',\n MatchedNotBroadcasted = 'TRADE_STATUS_MATCHED_NOT_BROADCASTED',\n Mined = 'TRADE_STATUS_MINED',\n Confirmed = 'TRADE_STATUS_CONFIRMED',\n Retrying = 'TRADE_STATUS_RETRYING',\n Failed = 'TRADE_STATUS_FAILED',\n}\n\nconst TradeStatusSchema = z.preprocess((value) => {\n if (typeof value !== 'string' || value.startsWith('TRADE_STATUS_')) {\n return value;\n }\n\n const normalized = Object.values(TradeStatus).find(\n (status) => status.slice('TRADE_STATUS_'.length) === value,\n );\n\n return normalized ?? value;\n}, z.enum(TradeStatus));\n\nexport enum UserOrderStatus {\n Live = 'LIVE',\n Matched = 'MATCHED',\n Delayed = 'DELAYED',\n Unmatched = 'UNMATCHED',\n Canceled = 'CANCELED',\n}\n\nconst UserOrderStatusSchema = z.enum(UserOrderStatus);\n\nconst OrderBookLevelSchema = z.object({\n price: DecimalStringSchema,\n size: DecimalStringSchema,\n});\n\nconst EpochSecondsStringToIsoDateTimeStringSchema = z\n .string()\n .regex(/^\\d+$/)\n .transform((value) =>\n toIsoDateTimeString(new Date(Number(value) * 1000).toISOString()),\n );\n\nconst ExpirationToIsoDateTimeStringSchema = z\n .string()\n .regex(/^\\d+$/)\n .transform((value) =>\n value === '0'\n ? undefined\n : toIsoDateTimeString(new Date(Number(value) * 1000).toISOString()),\n );\n\nexport type OrderBookLevel = z.infer<typeof OrderBookLevelSchema>;\n\nexport const MarketBookEventSchema = z\n .object({\n event_type: z.literal('book'),\n market: z.string(),\n asset_id: TokenIdSchema,\n bids: z.array(OrderBookLevelSchema),\n asks: z.array(OrderBookLevelSchema),\n hash: z.string().nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n min_order_size: DecimalStringSchema.nullish(),\n tick_size: DecimalStringSchema.nullish(),\n neg_risk: z.boolean().nullish(),\n last_trade_price: DecimalStringSchema.nullish(),\n })\n .transform(\n ({\n event_type,\n asset_id,\n min_order_size,\n tick_size,\n neg_risk,\n last_trade_price,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n minOrderSize: min_order_size,\n tickSize: tick_size,\n negRisk: neg_risk,\n lastTradePrice: last_trade_price,\n },\n };\n },\n );\n\nexport type MarketBookEvent = z.infer<typeof MarketBookEventSchema>;\n\nconst PriceChangeSchema = z\n .object({\n asset_id: TokenIdSchema,\n price: DecimalStringSchema,\n size: DecimalStringSchema,\n side: NormalizedOrderSideSchema,\n hash: z.string().nullish(),\n best_bid: DecimalStringSchema.nullish(),\n best_ask: DecimalStringSchema.nullish(),\n })\n .transform(({ asset_id, best_bid, best_ask, ...rest }) => ({\n ...rest,\n tokenId: asset_id,\n bestBid: best_bid,\n bestAsk: best_ask,\n }));\n\nexport type PriceChange = z.infer<typeof PriceChangeSchema>;\n\nexport const MarketPriceChangeEventSchema = z\n .object({\n event_type: z.literal('price_change'),\n market: z.string(),\n price_changes: z.array(PriceChangeSchema),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n })\n .transform(({ event_type, price_changes, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n priceChanges: price_changes,\n },\n };\n });\n\nexport type MarketPriceChangeEvent = z.infer<\n typeof MarketPriceChangeEventSchema\n>;\n\nexport const MarketLastTradePriceEventSchema = z\n .object({\n event_type: z.literal('last_trade_price'),\n market: z.string(),\n asset_id: TokenIdSchema,\n price: DecimalStringSchema,\n size: DecimalStringSchema.nullish(),\n fee_rate_bps: DecimalStringSchema.nullish(),\n side: NormalizedOrderSideSchema,\n timestamp: EpochMillisecondsStringSchema.nullish(),\n transaction_hash: z.string().nullish(),\n })\n .transform(\n ({ event_type, asset_id, fee_rate_bps, transaction_hash, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n feeRateBps: fee_rate_bps,\n transactionHash: transaction_hash,\n },\n };\n },\n );\n\nexport type MarketLastTradePriceEvent = z.infer<\n typeof MarketLastTradePriceEventSchema\n>;\n\nexport const MarketTickSizeChangeEventSchema = z\n .object({\n event_type: z.literal('tick_size_change'),\n market: z.string(),\n asset_id: TokenIdSchema,\n old_tick_size: DecimalStringSchema.nullish(),\n new_tick_size: DecimalStringSchema,\n timestamp: EpochMillisecondsStringSchema.nullish(),\n })\n .transform(\n ({ event_type, asset_id, old_tick_size, new_tick_size, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n oldTickSize: old_tick_size,\n newTickSize: new_tick_size,\n },\n };\n },\n );\n\nexport type MarketTickSizeChangeEvent = z.infer<\n typeof MarketTickSizeChangeEventSchema\n>;\n\nexport const MarketBestBidAskEventSchema = z\n .object({\n event_type: z.literal('best_bid_ask'),\n market: z.string(),\n asset_id: TokenIdSchema,\n best_bid: DecimalStringSchema.nullish(),\n best_ask: DecimalStringSchema.nullish(),\n spread: DecimalStringSchema.nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n })\n .transform(({ event_type, asset_id, best_bid, best_ask, ...rest }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenId: asset_id,\n bestBid: best_bid,\n bestAsk: best_ask,\n },\n };\n });\n\nexport type MarketBestBidAskEvent = z.infer<typeof MarketBestBidAskEventSchema>;\n\nconst MarketEventMessageSchema = z.object({\n id: z.string(),\n ticker: z.string().nullish(),\n slug: z.string().nullish(),\n title: z.string().nullish(),\n description: z.string().nullish(),\n});\n\nexport type MarketEventMessage = z.infer<typeof MarketEventMessageSchema>;\n\nexport const NewMarketEventSchema = z\n .object({\n event_type: z.literal('new_market'),\n id: z.string(),\n question: z.string().nullish(),\n market: z.string(),\n slug: z.string().nullish(),\n description: z.string().nullish(),\n assets_ids: z.array(TokenIdSchema).nullish(),\n outcomes: z.array(z.string()).nullish(),\n event_message: MarketEventMessageSchema.nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n tags: z.array(z.string()).nullish(),\n condition_id: CtfConditionIdSchema.nullish(),\n active: z.boolean().nullish(),\n clob_token_ids: z.array(z.string()).nullish(),\n sports_market_type: z.string().nullish(),\n line: DecimalStringSchema.nullish(),\n game_start_time: EpochMillisecondsToIsoDateTimeStringSchema.nullish(),\n order_price_min_tick_size: DecimalStringSchema.nullish(),\n group_item_title: z.string().nullish(),\n taker_base_fee: DecimalStringSchema.nullish(),\n fees_enabled: z.boolean().nullish(),\n fee_schedule: z.unknown().nullish(),\n })\n .transform(\n ({\n event_type,\n assets_ids,\n event_message,\n condition_id,\n clob_token_ids,\n sports_market_type,\n game_start_time,\n order_price_min_tick_size,\n group_item_title,\n taker_base_fee,\n fees_enabled,\n fee_schedule,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenIds: assets_ids,\n eventMessage: event_message,\n conditionId: condition_id,\n clobTokenIds: clob_token_ids,\n sportsMarketType: sports_market_type,\n gameStartTime: game_start_time,\n orderPriceMinTickSize: order_price_min_tick_size,\n groupItemTitle: group_item_title,\n takerBaseFee: taker_base_fee,\n feesEnabled: fees_enabled,\n feeSchedule: fee_schedule,\n },\n };\n },\n );\n\nexport type NewMarketEvent = z.infer<typeof NewMarketEventSchema>;\n\nexport const MarketResolvedEventSchema = z\n .object({\n event_type: z.literal('market_resolved'),\n id: z.string(),\n market: z.string(),\n assets_ids: z.array(TokenIdSchema).nullish(),\n winning_asset_id: TokenIdSchema.nullish(),\n winning_outcome: z.string().nullish(),\n event_message: MarketEventMessageSchema.nullish(),\n timestamp: EpochMillisecondsStringSchema.nullish(),\n tags: z.array(z.string()).nullish(),\n })\n .transform(\n ({\n event_type,\n assets_ids,\n winning_asset_id,\n winning_outcome,\n event_message,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'market' as const,\n type: event_type,\n payload: {\n ...rest,\n tokenIds: assets_ids,\n winningTokenId: winning_asset_id,\n winningOutcome: winning_outcome,\n eventMessage: event_message,\n },\n };\n },\n );\n\nexport type MarketResolvedEvent = z.infer<typeof MarketResolvedEventSchema>;\n\nexport enum UserOrderEventType {\n Placement = 'PLACEMENT',\n Update = 'UPDATE',\n Cancellation = 'CANCELLATION',\n}\n\nconst UserOrderEventTypeSchema = z.enum(UserOrderEventType);\n\nexport const UserOrderEventSchema = z\n .object({\n event_type: z.literal('order'),\n id: z.string(),\n owner: z.string(),\n market: z.string(),\n asset_id: TokenIdSchema,\n side: NormalizedOrderSideSchema,\n order_owner: z.string().nullish(),\n original_size: DecimalStringSchema,\n size_matched: DecimalStringSchema,\n price: DecimalStringSchema,\n associate_trades: z.array(z.string()).nullish(),\n outcome: z.string().nullish(),\n type: UserOrderEventTypeSchema,\n created_at: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n expiration: ExpirationToIsoDateTimeStringSchema.nullish(),\n order_type: OrderTypeSchema.nullish(),\n status: UserOrderStatusSchema.nullish(),\n maker_address: z.string().nullish(),\n timestamp: EpochMillisecondsStringSchema,\n })\n .transform(\n ({\n event_type,\n type: orderEventType,\n asset_id,\n order_owner,\n original_size,\n size_matched,\n associate_trades,\n created_at,\n expiration,\n order_type,\n maker_address,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'user' as const,\n type: event_type,\n payload: {\n ...rest,\n orderEventType,\n tokenId: asset_id,\n orderOwner: order_owner,\n originalSize: original_size,\n sizeMatched: size_matched,\n associateTrades: associate_trades,\n createdAt: created_at,\n expiresAt: expiration,\n orderType: order_type,\n makerAddress: maker_address,\n },\n };\n },\n );\n\nexport type UserOrderEvent = z.infer<typeof UserOrderEventSchema>;\n\nconst TradeMakerOrderSchema = z\n .object({\n order_id: z.string(),\n owner: z.string(),\n maker_address: z.string().nullish(),\n matched_amount: DecimalStringSchema,\n price: DecimalStringSchema,\n fee_rate_bps: DecimalStringSchema.nullish(),\n asset_id: TokenIdSchema,\n outcome: z.string().nullish(),\n outcome_index: z.number().int().nullish(),\n side: NormalizedOrderSideSchema,\n })\n .transform(\n ({\n order_id,\n maker_address,\n matched_amount,\n fee_rate_bps,\n asset_id,\n outcome_index,\n ...rest\n }) => ({\n ...rest,\n orderId: order_id,\n makerAddress: maker_address,\n matchedAmount: matched_amount,\n feeRateBps: fee_rate_bps,\n tokenId: asset_id,\n outcomeIndex: outcome_index,\n }),\n );\n\nexport type TradeMakerOrder = z.infer<typeof TradeMakerOrderSchema>;\n\nexport const UserTradeEventSchema = z\n .object({\n event_type: z.literal('trade'),\n type: z.literal('TRADE'),\n id: z.string(),\n taker_order_id: z.string(),\n market: z.string(),\n asset_id: TokenIdSchema,\n side: NormalizedOrderSideSchema,\n size: DecimalStringSchema,\n fee_rate_bps: DecimalStringSchema.nullish(),\n price: DecimalStringSchema,\n status: TradeStatusSchema,\n match_time: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n matchtime: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n last_update: EpochSecondsStringToIsoDateTimeStringSchema.nullish(),\n outcome: z.string().nullish(),\n owner: z.string(),\n trade_owner: z.string().nullish(),\n maker_address: z.string().nullish(),\n transaction_hash: z.string().nullish(),\n bucket_index: z.number().int().nullish(),\n maker_orders: z.array(TradeMakerOrderSchema).nullish(),\n trader_side: z.union([z.literal('TAKER'), z.literal('MAKER')]).nullish(),\n timestamp: EpochMillisecondsStringSchema,\n })\n .transform(\n ({\n event_type,\n type: _,\n taker_order_id,\n asset_id,\n fee_rate_bps,\n match_time,\n matchtime,\n last_update,\n trade_owner,\n maker_address,\n transaction_hash,\n bucket_index,\n maker_orders,\n trader_side,\n ...rest\n }) => {\n return {\n // Normalize to a consistent event envelope: `topic`, `type`, and `payload`.\n topic: 'user' as const,\n type: event_type,\n payload: {\n ...rest,\n takerOrderId: taker_order_id,\n tokenId: asset_id,\n feeRateBps: fee_rate_bps,\n matchedAt: match_time ?? matchtime,\n updatedAt: last_update,\n tradeOwner: trade_owner,\n makerAddress: maker_address,\n transactionHash: transaction_hash,\n bucketIndex: bucket_index,\n makerOrders: maker_orders,\n traderSide: trader_side,\n },\n };\n },\n );\n\nexport type UserTradeEvent = z.infer<typeof UserTradeEventSchema>;\n\nexport const StandardMarketEventSchema = z.discriminatedUnion('event_type', [\n MarketBookEventSchema,\n MarketPriceChangeEventSchema,\n MarketLastTradePriceEventSchema,\n MarketTickSizeChangeEventSchema,\n]);\n\nexport type StandardMarketEvent = z.infer<typeof StandardMarketEventSchema>;\n\nexport const CustomMarketEventSchema = z.discriminatedUnion('event_type', [\n MarketBestBidAskEventSchema,\n NewMarketEventSchema,\n MarketResolvedEventSchema,\n]);\n\nexport type CustomMarketEvent = z.infer<typeof CustomMarketEventSchema>;\n\nexport const MarketEventSchema = z.discriminatedUnion('event_type', [\n MarketBookEventSchema,\n MarketPriceChangeEventSchema,\n MarketLastTradePriceEventSchema,\n MarketTickSizeChangeEventSchema,\n MarketBestBidAskEventSchema,\n NewMarketEventSchema,\n MarketResolvedEventSchema,\n]);\n\nexport type MarketEvent = StandardMarketEvent | CustomMarketEvent;\n\nexport const UserEventSchema = z.discriminatedUnion('event_type', [\n UserOrderEventSchema,\n UserTradeEventSchema,\n]);\n\nexport type UserEvent = z.infer<typeof UserEventSchema>;\n","import { z } from 'zod';\nimport {\n PerpsAccountFundingPaymentEntrySchema,\n PerpsBalanceSchema,\n PerpsPortfolioSchema,\n} from '../perps/account';\nimport {\n PerpsInstrumentIdSchema,\n type PerpsKlineInterval,\n PerpsOrderIdSchema,\n} from '../perps/common';\nimport {\n PerpsDepositUpdateSchema,\n PerpsWithdrawalUpdateSchema,\n} from '../perps/funds';\nimport {\n PerpsBboUpdateSchema,\n PerpsBookUpdateSchema,\n PerpsCandleSchema,\n PerpsPublicTradeUpdateSchema,\n PerpsStatisticUpdateSchema,\n PerpsTickerEntrySchema,\n} from '../perps/market';\nimport {\n PerpsAccountFillUpdateSchema,\n PerpsOrderUpdateSchema,\n} from '../perps/orders';\nimport { EpochMillisecondsSchema } from '../shared';\n\nconst SequenceSchema = z.number().int().nonnegative();\n\nconst TradesChannelSchema = z.string().regex(/^trades::\\d+$/);\nconst BboChannelSchema = z.string().regex(/^bbo::\\d+$/);\nconst BookChannelSchema = z.string().regex(/^book::\\d+$/);\nconst TickersChannelSchema = z.string().regex(/^tickers::(all|\\d+)$/);\nconst StatisticsChannelSchema = z.string().regex(/^statistics::(all|\\d+)$/);\nconst CandlesChannelSchema = z\n .string()\n .regex(/^klines::\\d+::(1m|5m|15m|1h|4h|1d|1w)$/);\nconst TpslChannelSchema = z.string().regex(/^tpsl::\\d+$/);\nconst PerpsSessionChannelSchema = z.enum([\n 'balances',\n 'portfolio',\n 'orders',\n 'fills',\n 'funding',\n 'deposits',\n 'withdrawals',\n]);\n\nconst PerpsUpdateEnvelopeSchema = z.object({\n ts: EpochMillisecondsSchema,\n sq: SequenceSchema,\n});\n\nexport const PerpsTradeEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: TradesChannelSchema,\n data: PerpsPublicTradeUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.trades' as const,\n type: 'trade' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsTradeEvent = z.infer<typeof PerpsTradeEventSchema>;\n\nexport const PerpsBboEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: BboChannelSchema,\n data: PerpsBboUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.bbo' as const,\n type: 'bbo' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsBboEvent = z.infer<typeof PerpsBboEventSchema>;\n\nexport const PerpsBookEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: BookChannelSchema,\n data: PerpsBookUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.book' as const,\n type: 'book' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: {\n instrumentId: instrumentIdFromChannel(ch),\n ...data,\n },\n}));\n\nexport type PerpsBookEvent = z.infer<typeof PerpsBookEventSchema>;\n\nexport const PerpsTickerEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: TickersChannelSchema,\n data: PerpsTickerEntrySchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.tickers' as const,\n type: 'ticker' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsTickerEvent = z.infer<typeof PerpsTickerEventSchema>;\n\nexport const PerpsStatisticEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: StatisticsChannelSchema,\n data: PerpsStatisticUpdateSchema,\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.statistics' as const,\n type: 'statistic' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\n\nexport type PerpsStatisticEvent = z.infer<typeof PerpsStatisticEventSchema>;\n\nexport const PerpsCandleEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: CandlesChannelSchema,\n data: z.array(PerpsCandleSchema),\n}).transform(({ ch, ts, sq, data }) => ({\n topic: 'perps.candles' as const,\n type: 'candle' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: {\n instrumentId: instrumentIdFromChannel(ch),\n interval: candleIntervalFromChannel(ch),\n candles: data,\n },\n}));\n\nexport type PerpsCandleEvent = z.infer<typeof PerpsCandleEventSchema>;\n\nexport const PerpsMarketDataEventSchema = z.union([\n PerpsTradeEventSchema,\n PerpsBboEventSchema,\n PerpsBookEventSchema,\n PerpsTickerEventSchema,\n PerpsStatisticEventSchema,\n PerpsCandleEventSchema,\n]);\n\nexport type PerpsMarketDataEvent = z.infer<typeof PerpsMarketDataEventSchema>;\n\nconst PerpsSessionUpdateEnvelopeSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: PerpsSessionChannelSchema,\n});\n\nfunction perpsSessionEventSchema<\n TType extends string,\n TChannel extends z.infer<typeof PerpsSessionChannelSchema>,\n TPayload extends z.ZodType,\n>(type: TType, channel: TChannel, payload: TPayload) {\n return PerpsSessionUpdateEnvelopeSchema.extend({\n ch: z.literal(channel),\n data: payload,\n }).transform((message) => {\n const event = message as {\n ch: TChannel;\n data: z.output<TPayload>;\n sq: number;\n ts: number;\n };\n\n return {\n type,\n channel: event.ch,\n timestamp: event.ts,\n sequence: event.sq,\n payload: event.data,\n };\n });\n}\n\nexport const PerpsBalanceUpdateEventSchema = perpsSessionEventSchema(\n 'balance',\n 'balances',\n PerpsBalanceSchema,\n);\nexport type PerpsBalanceUpdateEvent = z.infer<\n typeof PerpsBalanceUpdateEventSchema\n>;\n\nexport const PerpsPortfolioUpdateEventSchema = perpsSessionEventSchema(\n 'portfolio',\n 'portfolio',\n PerpsPortfolioSchema,\n);\nexport type PerpsPortfolioUpdateEvent = z.infer<\n typeof PerpsPortfolioUpdateEventSchema\n>;\n\nexport const PerpsOrderUpdateEventSchema = perpsSessionEventSchema(\n 'order',\n 'orders',\n PerpsOrderUpdateSchema,\n);\nexport type PerpsOrderUpdateEvent = z.infer<typeof PerpsOrderUpdateEventSchema>;\n\nexport const PerpsFillUpdateEventSchema = perpsSessionEventSchema(\n 'fill',\n 'fills',\n PerpsAccountFillUpdateSchema,\n);\nexport type PerpsFillUpdateEvent = z.infer<typeof PerpsFillUpdateEventSchema>;\n\nexport const PerpsFundingUpdateEventSchema = perpsSessionEventSchema(\n 'funding',\n 'funding',\n PerpsAccountFundingPaymentEntrySchema,\n);\nexport type PerpsFundingUpdateEvent = z.infer<\n typeof PerpsFundingUpdateEventSchema\n>;\n\nexport const PerpsDepositUpdateEventSchema = perpsSessionEventSchema(\n 'deposit',\n 'deposits',\n PerpsDepositUpdateSchema,\n);\nexport type PerpsDepositUpdateEvent = z.infer<\n typeof PerpsDepositUpdateEventSchema\n>;\n\nexport const PerpsWithdrawalUpdateEventSchema = perpsSessionEventSchema(\n 'withdrawal',\n 'withdrawals',\n PerpsWithdrawalUpdateSchema,\n);\nexport type PerpsWithdrawalUpdateEvent = z.infer<\n typeof PerpsWithdrawalUpdateEventSchema\n>;\n\nconst PerpsTpSlLifecycleUpdateSchema = z.object({\n oid: PerpsOrderIdSchema,\n st: z.enum(['untriggered', 'armed', 'cancelled', 'expired']),\n reason: z.string().optional(),\n});\n\nexport const PerpsTpSlUpdateEventSchema = PerpsUpdateEnvelopeSchema.extend({\n ch: TpslChannelSchema,\n data: PerpsTpSlLifecycleUpdateSchema.transform((update) => ({\n orderId: update.oid,\n status: update.st,\n reason: update.reason,\n })),\n}).transform(({ ch, ts, sq, data }) => ({\n type: 'tpsl' as const,\n channel: ch,\n timestamp: ts,\n sequence: sq,\n payload: data,\n}));\nexport type PerpsTpSlUpdateEvent = z.infer<typeof PerpsTpSlUpdateEventSchema>;\n\nexport const PerpsSessionUpdateEventSchema = z.union([\n PerpsBalanceUpdateEventSchema,\n PerpsPortfolioUpdateEventSchema,\n PerpsOrderUpdateEventSchema,\n PerpsFillUpdateEventSchema,\n PerpsFundingUpdateEventSchema,\n PerpsDepositUpdateEventSchema,\n PerpsWithdrawalUpdateEventSchema,\n PerpsTpSlUpdateEventSchema,\n]);\n\nexport type PerpsSessionUpdateEvent = z.infer<\n typeof PerpsSessionUpdateEventSchema\n>;\n\nexport type PerpsResyncEvent = {\n type: 'resync';\n reason: 'reconnect' | 'sequence_gap';\n channel?: string;\n previousSequence?: number;\n sequence?: number;\n};\n\nexport type PerpsSessionEvent = PerpsSessionUpdateEvent | PerpsResyncEvent;\n\nfunction instrumentIdFromChannel(channel: string) {\n const [, rawInstrumentId] = channel.split('::');\n return PerpsInstrumentIdSchema.parse(Number(rawInstrumentId));\n}\n\nfunction candleIntervalFromChannel(channel: string) {\n const [, , interval] = channel.split('::');\n return interval as Exclude<PerpsKlineInterval, PerpsKlineInterval.OneSecond>;\n}\n","import { z } from 'zod';\nimport {\n CommentMediaSchema,\n CommentProfileSchema,\n CommentSchema,\n ReactionSchema,\n} from '../gamma/comment';\nimport {\n CommentParentEntityTypeSchema,\n DecimalishSchema,\n DecimalStringSchema,\n EpochMillisecondsSchema,\n} from '../shared';\n\nconst CommentRemovedPayloadSchema = z.object({\n id: z.string(),\n body: z.string().nullish(),\n parentEntityType: CommentParentEntityTypeSchema.nullish(),\n parentEntityID: z.number().int().nullish(),\n parentCommentID: z.string().nullish(),\n userAddress: z.string().nullish(),\n replyAddress: z.string().nullish(),\n createdAt: z.string().nullish(),\n updatedAt: z.string().nullish(),\n media: z.array(CommentMediaSchema).nullish(),\n profile: CommentProfileSchema.nullish(),\n reactions: z.array(ReactionSchema).nullish(),\n reportCount: z.number().int().nullish(),\n reactionCount: z.number().int().nullish(),\n tradeAsset: z.string().nullish(),\n});\n\nexport type CommentRemovedPayload = z.infer<typeof CommentRemovedPayloadSchema>;\n\nexport const CommentCreatedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('comment_created'),\n timestamp: EpochMillisecondsSchema,\n payload: CommentSchema,\n});\n\nexport type CommentCreatedEvent = z.infer<typeof CommentCreatedEventSchema>;\n\nexport const CommentRemovedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('comment_removed'),\n timestamp: EpochMillisecondsSchema,\n payload: CommentRemovedPayloadSchema,\n});\n\nexport type CommentRemovedEvent = z.infer<typeof CommentRemovedEventSchema>;\n\nexport const ReactionCreatedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('reaction_created'),\n timestamp: EpochMillisecondsSchema,\n payload: ReactionSchema,\n});\n\nexport type ReactionCreatedEvent = z.infer<typeof ReactionCreatedEventSchema>;\n\nexport const ReactionRemovedEventSchema = z.object({\n topic: z.literal('comments'),\n type: z.literal('reaction_removed'),\n timestamp: EpochMillisecondsSchema,\n payload: ReactionSchema,\n});\n\nexport type ReactionRemovedEvent = z.infer<typeof ReactionRemovedEventSchema>;\n\nconst PriceUpdatePayloadSchema = z.object({\n symbol: z.string(),\n timestamp: EpochMillisecondsSchema,\n value: DecimalishSchema,\n});\n\nexport type PriceUpdatePayload = z.infer<typeof PriceUpdatePayloadSchema>;\n\nconst CRYPTO_PRICES_BINANCE_TOPIC = 'prices.crypto.binance' as const;\nconst CRYPTO_PRICES_CHAINLINK_TOPIC = 'prices.crypto.chainlink' as const;\n\nexport type CryptoPricesBinanceTopic = typeof CRYPTO_PRICES_BINANCE_TOPIC;\nexport type CryptoPricesChainlinkTopic = typeof CRYPTO_PRICES_CHAINLINK_TOPIC;\nexport type CryptoPricesTopic =\n | CryptoPricesBinanceTopic\n | CryptoPricesChainlinkTopic;\n\nconst RawCryptoPricesBinanceTopicSchema = z.literal('crypto_prices');\nconst RawCryptoPricesChainlinkTopicSchema = z.literal(\n 'crypto_prices_chainlink',\n);\n\nconst CryptoPricesBinanceTopicSchema: z.ZodType<CryptoPricesBinanceTopic> =\n RawCryptoPricesBinanceTopicSchema.transform(() => {\n return CRYPTO_PRICES_BINANCE_TOPIC;\n });\n\nconst CryptoPricesChainlinkTopicSchema: z.ZodType<CryptoPricesChainlinkTopic> =\n RawCryptoPricesChainlinkTopicSchema.transform(() => {\n return CRYPTO_PRICES_CHAINLINK_TOPIC;\n });\n\nexport const CryptoPricesBinanceEventSchema = z.object({\n topic: CryptoPricesBinanceTopicSchema,\n type: z.literal('update'),\n timestamp: EpochMillisecondsSchema,\n payload: PriceUpdatePayloadSchema,\n});\n\nexport type CryptoPricesBinanceEvent = z.infer<\n typeof CryptoPricesBinanceEventSchema\n>;\n\nexport const CryptoPricesChainlinkEventSchema = z.object({\n topic: CryptoPricesChainlinkTopicSchema,\n type: z.literal('update'),\n timestamp: EpochMillisecondsSchema,\n payload: PriceUpdatePayloadSchema,\n});\n\nexport type CryptoPricesChainlinkEvent = z.infer<\n typeof CryptoPricesChainlinkEventSchema\n>;\n\nexport const CryptoPricesEventSchema = z.discriminatedUnion('topic', [\n CryptoPricesBinanceEventSchema,\n CryptoPricesChainlinkEventSchema,\n]);\n\nexport type CryptoPricesEvent = z.infer<typeof CryptoPricesEventSchema>;\n\nconst EquityPriceUpdatePayloadSchema = z\n .object({\n symbol: z.string(),\n value: DecimalishSchema,\n full_accuracy_value: DecimalStringSchema.nullish(),\n timestamp: EpochMillisecondsSchema,\n received_at: EpochMillisecondsSchema.nullish(),\n is_carried_forward: z.boolean().nullish(),\n })\n .transform(\n ({\n full_accuracy_value,\n received_at,\n is_carried_forward,\n value,\n ...rest\n }) => ({\n ...rest,\n value: full_accuracy_value ?? value,\n receivedAt: received_at,\n isCarriedForward: is_carried_forward,\n }),\n );\n\nexport type EquityPriceUpdatePayload = z.infer<\n typeof EquityPriceUpdatePayloadSchema\n>;\n\nconst EquityPriceSnapshotPointSchema = z.object({\n timestamp: z.number(),\n value: DecimalishSchema,\n});\n\nexport type EquityPriceSnapshotPoint = z.infer<\n typeof EquityPriceSnapshotPointSchema\n>;\n\nconst EquityPriceSubscribePayloadSchema = z.object({\n symbol: z.string(),\n data: z.array(EquityPriceSnapshotPointSchema),\n});\n\nexport type EquityPriceSubscribePayload = z.infer<\n typeof EquityPriceSubscribePayloadSchema\n>;\n\nconst RawEquityPricesTopicSchema = z.literal('equity_prices');\n\nconst EQUITY_PRICES_TOPIC = 'prices.equity.pyth' as const;\n\nexport type EquityPricesTopic = typeof EQUITY_PRICES_TOPIC;\n\nconst EquityPricesTopicSchema: z.ZodType<EquityPricesTopic> =\n RawEquityPricesTopicSchema.transform(() => {\n return EQUITY_PRICES_TOPIC;\n });\n\nexport const EquityPricesUpdateEventSchema = z.object({\n topic: EquityPricesTopicSchema,\n type: z.literal('update'),\n timestamp: EpochMillisecondsSchema,\n payload: EquityPriceUpdatePayloadSchema,\n});\n\nexport type EquityPricesUpdateEvent = z.infer<\n typeof EquityPricesUpdateEventSchema\n>;\n\nexport const EquityPricesSubscribeEventSchema = z.object({\n topic: EquityPricesTopicSchema,\n type: z.literal('subscribe'),\n timestamp: EpochMillisecondsSchema,\n payload: EquityPriceSubscribePayloadSchema,\n});\n\nexport type EquityPricesSubscribeEvent = z.infer<\n typeof EquityPricesSubscribeEventSchema\n>;\n\nexport const EquityPricesEventSchema = z.discriminatedUnion('type', [\n EquityPricesUpdateEventSchema,\n EquityPricesSubscribeEventSchema,\n]);\n\nexport type EquityPricesEvent = z.infer<typeof EquityPricesEventSchema>;\n\nexport const CommentsEventSchema = z.discriminatedUnion('type', [\n CommentCreatedEventSchema,\n CommentRemovedEventSchema,\n ReactionCreatedEventSchema,\n ReactionRemovedEventSchema,\n]);\n\nexport type CommentsEvent = z.infer<typeof CommentsEventSchema>;\n\nexport const RealtimeEventSchema = z.discriminatedUnion('topic', [\n CommentsEventSchema,\n CryptoPricesEventSchema,\n EquityPricesEventSchema,\n]);\n\nexport type RealtimeEvent = z.infer<typeof RealtimeEventSchema>;\n","import { z } from 'zod';\nimport { EpochMillisecondsToIsoDateTimeStringSchema } from '../shared';\n\nconst SportsResultPayloadSchema = z\n .object({\n gameId: z.number().int(),\n sportradarGameId: z.string().nullish(),\n slug: z.string().nullish(),\n leagueAbbreviation: z.string(),\n homeTeam: z.string().nullish(),\n awayTeam: z.string().nullish(),\n status: z.string(),\n live: z.boolean(),\n ended: z.boolean(),\n score: z.string(),\n period: z.string().nullish(),\n elapsed: z.string().nullish(),\n finishedTimestamp: EpochMillisecondsToIsoDateTimeStringSchema.nullish(),\n finished_timestamp: EpochMillisecondsToIsoDateTimeStringSchema.nullish(),\n turn: z.string().nullish(),\n })\n .transform(({ finishedTimestamp, finished_timestamp, ...rest }) => ({\n ...rest,\n finishedAt: finishedTimestamp ?? finished_timestamp,\n }));\n\nexport const SportsResultEventSchema = SportsResultPayloadSchema.transform(\n (payload) => {\n return {\n // Normalize to the shared subscription event envelope so mixed-stream\n // consumers can discriminate by `event.topic` and `event.type`.\n topic: 'sports' as const,\n type: 'sport_result' as const,\n payload,\n };\n },\n);\n\nexport type SportsEvent = z.infer<typeof SportsResultEventSchema>;\n"]}
|
package/package.json
CHANGED