@polymarket/client 0.3.0 → 0.5.0

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.
@@ -1,5 +1,5 @@
1
1
  import { ethers } from 'ethers-v5';
2
- import { T as TypedDataPayload, a as TypedData, S as Signer } from './types-BzzqPJTs.js';
2
+ import { T as TypedDataPayload, a as TypedData, S as Signer } from './types-BBaRrND2.js';
3
3
  import '@polymarket/bindings';
4
4
  import '@polymarket/types';
5
5
  import '@polymarket/bindings/gamma';
package/dist/ethers-v5.js CHANGED
@@ -1,2 +1,2 @@
1
- import {l,j,c as c$1,i as i$1}from'./chunk-4LDMO37Q.js';import {expectEvmAddress,expectEvmSignature,expectTxHash}from'@polymarket/types';import {ethers}from'ethers-v5';function A(n){return {getAddress(){return m(n)},signTypedData(r){return w(n,r)},signMessage(r){return T(n,r)},async sendTransaction(r){return new i(await f(n,r))}}}async function m(n){try{return expectEvmAddress(await n.getAddress())}catch(r){throw l.fromError(r,"Could not resolve signer address")}}async function f(n,r){try{return await n.sendTransaction({chainId:r.chainId,data:r.data,to:r.to,value:r.value?.toString()})}catch(t){c(t);}}async function w(n,r){try{return expectEvmSignature(await n._signTypedData(r.domain,S(r.types),r.message))}catch(t){c(t);}}async function T(n,r){try{return expectEvmSignature(await n.signMessage(ethers.utils.arrayify(r)))}catch(t){c(t);}}function S(n){let r=Object.entries(n).filter(([t])=>t!=="EIP712Domain");return Object.fromEntries(r.map(([t,p])=>[t,p.map(y=>({...y}))]))}function c(n){throw s(n)?new j("User rejected the signing request",{cause:n}):l.fromError(n)}function s(n,r=new Set){if(r.has(n)||n===null||typeof n!="object")return false;r.add(n);let t=n;return t.code===4001||t.code==="ACTION_REJECTED"||s(t.error,r)||s(t.cause,r)}function v(n){return g(n,"CALL_EXCEPTION")}function D(n){return g(n,"TRANSACTION_REPLACED")}function g(n,r){return n instanceof Error&&"code"in n&&n.code===r}var i=class{transactionId=null;#r;#n;constructor(r){this.#n=r,this.#r=expectTxHash(r.hash);}get transactionHash(){return this.#r}async wait(){try{let r=await this.#n.wait(),t=expectTxHash(r.transactionHash);return this.#r=t,{transactionHash:t,transactionId:null}}catch(r){if(D(r)){if(r.cancelled)throw c$1.fromError(r);let t=expectTxHash(r.receipt.transactionHash);return this.#r=t,{transactionHash:t,transactionId:null}}throw v(r)?new i$1(`Transaction ${this.#r} reverted`,{cause:r}):c$1.fromError(r)}}};export{A as signerFrom};//# sourceMappingURL=ethers-v5.js.map
1
+ import {m as m$1,j,c as c$1,i as i$1}from'./chunk-MIRUWWDK.js';import {expectEvmAddress,expectEvmSignature,expectTxHash}from'@polymarket/types';import {ethers}from'ethers-v5';function A(n){return {getAddress(){return m(n)},signTypedData(r){return w(n,r)},signMessage(r){return T(n,r)},async sendTransaction(r){return new i(await f(n,r))}}}async function m(n){try{return expectEvmAddress(await n.getAddress())}catch(r){throw m$1.fromError(r,"Could not resolve signer address")}}async function f(n,r){try{return await n.sendTransaction({chainId:r.chainId,data:r.data,to:r.to,value:r.value?.toString()})}catch(t){c(t);}}async function w(n,r){try{return expectEvmSignature(await n._signTypedData(r.domain,S(r.types),r.message))}catch(t){c(t);}}async function T(n,r){try{return expectEvmSignature(await n.signMessage(ethers.utils.arrayify(r)))}catch(t){c(t);}}function S(n){let r=Object.entries(n).filter(([t])=>t!=="EIP712Domain");return Object.fromEntries(r.map(([t,p])=>[t,p.map(y=>({...y}))]))}function c(n){throw s(n)?new j("User rejected the signing request",{cause:n}):m$1.fromError(n)}function s(n,r=new Set){if(r.has(n)||n===null||typeof n!="object")return false;r.add(n);let t=n;return t.code===4001||t.code==="ACTION_REJECTED"||s(t.error,r)||s(t.cause,r)}function v(n){return g(n,"CALL_EXCEPTION")}function D(n){return g(n,"TRANSACTION_REPLACED")}function g(n,r){return n instanceof Error&&"code"in n&&n.code===r}var i=class{transactionId=null;#r;#n;constructor(r){this.#n=r,this.#r=expectTxHash(r.hash);}get transactionHash(){return this.#r}async wait(){try{let r=await this.#n.wait(),t=expectTxHash(r.transactionHash);return this.#r=t,{transactionHash:t,transactionId:null}}catch(r){if(D(r)){if(r.cancelled)throw c$1.fromError(r);let t=expectTxHash(r.receipt.transactionHash);return this.#r=t,{transactionHash:t,transactionId:null}}throw v(r)?new i$1(`Transaction ${this.#r} reverted`,{cause:r}):c$1.fromError(r)}}};export{A as signerFrom};//# sourceMappingURL=ethers-v5.js.map
2
2
  //# sourceMappingURL=ethers-v5.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ethers-v5.ts"],"names":["signerFrom","signer","getAddress","payload","signTypedData","message","signMessage","request","DirectTransactionHandle","sendTransaction","expectEvmAddress","error","SigningError","throwSigningWorkflowError","expectEvmSignature","removeEip712Domain","ethers","types","entries","name","fields","field","isUserRejectedError","CancelledSigningError","seen","candidate","isCallExceptionError","hasErrorCode","isTransactionReplacedError","code","#transactionHash","#transaction","transaction","expectTxHash","receipt","transactionHash","TransportError","TransactionFailedError"],"mappings":"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","file":"ethers-v5.js","sourcesContent":["import {\n expectEvmAddress,\n expectEvmSignature,\n expectTxHash,\n type HexString,\n type TxHash,\n} from '@polymarket/types';\nimport { ethers } from 'ethers-v5';\nimport {\n CancelledSigningError,\n SigningError,\n TransactionFailedError,\n TransportError,\n} from './errors';\nimport type {\n Signer,\n TransactionHandle,\n TypedData,\n TypedDataPayload,\n} from './types';\n\ntype EthersV5Signer = ethers.Signer & {\n _signTypedData(\n domain: TypedDataPayload['domain'],\n types: ReturnType<typeof removeEip712Domain>,\n value: TypedDataPayload['message'],\n ): Promise<string>;\n};\n\nexport function signerFrom(signer: EthersV5Signer): Signer {\n return {\n getAddress() {\n return getAddress(signer);\n },\n signTypedData(payload) {\n return signTypedData(signer, payload);\n },\n signMessage(message) {\n return signMessage(signer, message);\n },\n async sendTransaction(request) {\n return new DirectTransactionHandle(\n await sendTransaction(signer, request),\n );\n },\n };\n}\n\nasync function getAddress(signer: EthersV5Signer) {\n try {\n return expectEvmAddress(await signer.getAddress());\n } catch (error) {\n throw SigningError.fromError(error, 'Could not resolve signer address');\n }\n}\n\nasync function sendTransaction(\n signer: EthersV5Signer,\n request: { chainId: number; data?: HexString; to: string; value?: bigint },\n): Promise<ethers.providers.TransactionResponse> {\n try {\n return await signer.sendTransaction({\n chainId: request.chainId,\n data: request.data,\n to: request.to,\n value: request.value?.toString(),\n });\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nasync function signTypedData(\n signer: EthersV5Signer,\n payload: TypedDataPayload,\n) {\n try {\n return expectEvmSignature(\n await signer._signTypedData(\n payload.domain,\n removeEip712Domain(payload.types),\n payload.message,\n ),\n );\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nasync function signMessage(signer: EthersV5Signer, message: HexString) {\n try {\n return expectEvmSignature(\n await signer.signMessage(ethers.utils.arrayify(message)),\n );\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nfunction removeEip712Domain(\n types: TypedData,\n): Record<string, Array<{ name: string; type: string }>> {\n const entries = Object.entries(types).filter(\n ([name]) => name !== 'EIP712Domain',\n );\n\n return Object.fromEntries(\n entries.map(([name, fields]) => [\n name,\n fields.map((field) => ({ ...field })),\n ]),\n );\n}\n\nfunction throwSigningWorkflowError(error: unknown): never {\n if (isUserRejectedError(error)) {\n throw new CancelledSigningError('User rejected the signing request', {\n cause: error,\n });\n }\n\n throw SigningError.fromError(error);\n}\n\nfunction isUserRejectedError(\n error: unknown,\n seen = new Set<unknown>(),\n): boolean {\n if (seen.has(error) || error === null || typeof error !== 'object') {\n return false;\n }\n\n seen.add(error);\n\n const candidate = error as {\n cause?: unknown;\n code?: unknown;\n error?: unknown;\n };\n\n return (\n // ethers v5 normalizes user-rejected wallet actions to ACTION_REJECTED,\n // but some provider-shaped errors can still surface the raw EIP-1193 4001.\n candidate.code === 4001 ||\n candidate.code === 'ACTION_REJECTED' ||\n isUserRejectedError(candidate.error, seen) ||\n isUserRejectedError(candidate.cause, seen)\n );\n}\n\nfunction isCallExceptionError(error: unknown): error is Error {\n return hasErrorCode(error, 'CALL_EXCEPTION');\n}\n\nfunction isTransactionReplacedError(error: unknown): error is Error & {\n cancelled: boolean;\n receipt: { transactionHash: string };\n} {\n return hasErrorCode(error, 'TRANSACTION_REPLACED');\n}\n\nfunction hasErrorCode(error: unknown, code: string): error is Error {\n return (\n error instanceof Error &&\n 'code' in error &&\n (error as { code?: unknown }).code === code\n );\n}\n\nclass DirectTransactionHandle implements TransactionHandle {\n readonly transactionId = null;\n #transactionHash: TxHash;\n readonly #transaction: ethers.providers.TransactionResponse;\n\n constructor(transaction: ethers.providers.TransactionResponse) {\n this.#transaction = transaction;\n this.#transactionHash = expectTxHash(transaction.hash);\n }\n\n get transactionHash() {\n return this.#transactionHash;\n }\n\n async wait() {\n try {\n const receipt = await this.#transaction.wait();\n\n const transactionHash = expectTxHash(receipt.transactionHash);\n this.#transactionHash = transactionHash;\n\n return {\n transactionHash,\n transactionId: null,\n };\n } catch (error) {\n if (isTransactionReplacedError(error)) {\n if (error.cancelled) {\n throw TransportError.fromError(error);\n }\n\n const transactionHash = expectTxHash(error.receipt.transactionHash);\n this.#transactionHash = transactionHash;\n\n return {\n transactionHash,\n transactionId: null,\n };\n }\n\n if (isCallExceptionError(error)) {\n throw new TransactionFailedError(\n `Transaction ${this.#transactionHash} reverted`,\n { cause: error },\n );\n }\n\n throw TransportError.fromError(error);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/ethers-v5.ts"],"names":["signerFrom","signer","getAddress","payload","signTypedData","message","signMessage","request","DirectTransactionHandle","sendTransaction","expectEvmAddress","error","SigningError","throwSigningWorkflowError","expectEvmSignature","removeEip712Domain","ethers","types","entries","name","fields","field","isUserRejectedError","CancelledSigningError","seen","candidate","isCallExceptionError","hasErrorCode","isTransactionReplacedError","code","#transactionHash","#transaction","transaction","expectTxHash","receipt","transactionHash","TransportError","TransactionFailedError"],"mappings":"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","file":"ethers-v5.js","sourcesContent":["import {\n expectEvmAddress,\n expectEvmSignature,\n expectTxHash,\n type HexString,\n type TxHash,\n} from '@polymarket/types';\nimport { ethers } from 'ethers-v5';\nimport {\n CancelledSigningError,\n SigningError,\n TransactionFailedError,\n TransportError,\n} from './errors';\nimport type {\n Signer,\n TransactionHandle,\n TypedData,\n TypedDataPayload,\n} from './types';\n\ntype EthersV5Signer = ethers.Signer & {\n _signTypedData(\n domain: TypedDataPayload['domain'],\n types: ReturnType<typeof removeEip712Domain>,\n value: TypedDataPayload['message'],\n ): Promise<string>;\n};\n\nexport function signerFrom(signer: EthersV5Signer): Signer {\n return {\n getAddress() {\n return getAddress(signer);\n },\n signTypedData(payload) {\n return signTypedData(signer, payload);\n },\n signMessage(message) {\n return signMessage(signer, message);\n },\n async sendTransaction(request) {\n return new DirectTransactionHandle(\n await sendTransaction(signer, request),\n );\n },\n };\n}\n\nasync function getAddress(signer: EthersV5Signer) {\n try {\n return expectEvmAddress(await signer.getAddress());\n } catch (error) {\n throw SigningError.fromError(error, 'Could not resolve signer address');\n }\n}\n\nasync function sendTransaction(\n signer: EthersV5Signer,\n request: { chainId: number; data?: HexString; to: string; value?: bigint },\n): Promise<ethers.providers.TransactionResponse> {\n try {\n return await signer.sendTransaction({\n chainId: request.chainId,\n data: request.data,\n to: request.to,\n value: request.value?.toString(),\n });\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nasync function signTypedData(\n signer: EthersV5Signer,\n payload: TypedDataPayload,\n) {\n try {\n return expectEvmSignature(\n await signer._signTypedData(\n payload.domain,\n removeEip712Domain(payload.types),\n payload.message,\n ),\n );\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nasync function signMessage(signer: EthersV5Signer, message: HexString) {\n try {\n return expectEvmSignature(\n await signer.signMessage(ethers.utils.arrayify(message)),\n );\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nfunction removeEip712Domain(\n types: TypedData,\n): Record<string, Array<{ name: string; type: string }>> {\n const entries = Object.entries(types).filter(\n ([name]) => name !== 'EIP712Domain',\n );\n\n return Object.fromEntries(\n entries.map(([name, fields]) => [\n name,\n fields.map((field) => ({ ...field })),\n ]),\n );\n}\n\nfunction throwSigningWorkflowError(error: unknown): never {\n if (isUserRejectedError(error)) {\n throw new CancelledSigningError('User rejected the signing request', {\n cause: error,\n });\n }\n\n throw SigningError.fromError(error);\n}\n\nfunction isUserRejectedError(\n error: unknown,\n seen = new Set<unknown>(),\n): boolean {\n if (seen.has(error) || error === null || typeof error !== 'object') {\n return false;\n }\n\n seen.add(error);\n\n const candidate = error as {\n cause?: unknown;\n code?: unknown;\n error?: unknown;\n };\n\n return (\n // ethers v5 normalizes user-rejected wallet actions to ACTION_REJECTED,\n // but some provider-shaped errors can still surface the raw EIP-1193 4001.\n candidate.code === 4001 ||\n candidate.code === 'ACTION_REJECTED' ||\n isUserRejectedError(candidate.error, seen) ||\n isUserRejectedError(candidate.cause, seen)\n );\n}\n\nfunction isCallExceptionError(error: unknown): error is Error {\n return hasErrorCode(error, 'CALL_EXCEPTION');\n}\n\nfunction isTransactionReplacedError(error: unknown): error is Error & {\n cancelled: boolean;\n receipt: { transactionHash: string };\n} {\n return hasErrorCode(error, 'TRANSACTION_REPLACED');\n}\n\nfunction hasErrorCode(error: unknown, code: string): error is Error {\n return (\n error instanceof Error &&\n 'code' in error &&\n (error as { code?: unknown }).code === code\n );\n}\n\nclass DirectTransactionHandle implements TransactionHandle {\n readonly transactionId = null;\n #transactionHash: TxHash;\n readonly #transaction: ethers.providers.TransactionResponse;\n\n constructor(transaction: ethers.providers.TransactionResponse) {\n this.#transaction = transaction;\n this.#transactionHash = expectTxHash(transaction.hash);\n }\n\n get transactionHash() {\n return this.#transactionHash;\n }\n\n async wait() {\n try {\n const receipt = await this.#transaction.wait();\n\n const transactionHash = expectTxHash(receipt.transactionHash);\n this.#transactionHash = transactionHash;\n\n return {\n transactionHash,\n transactionId: null,\n };\n } catch (error) {\n if (isTransactionReplacedError(error)) {\n if (error.cancelled) {\n throw TransportError.fromError(error);\n }\n\n const transactionHash = expectTxHash(error.receipt.transactionHash);\n this.#transactionHash = transactionHash;\n\n return {\n transactionHash,\n transactionId: null,\n };\n }\n\n if (isCallExceptionError(error)) {\n throw new TransactionFailedError(\n `Transaction ${this.#transactionHash} reverted`,\n { cause: error },\n );\n }\n\n throw TransportError.fromError(error);\n }\n }\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -8,12 +8,12 @@ export { ActivityType, ComboActivityType, ComboPositionOutcome, ComboPositionSta
8
8
  export * from '@polymarket/bindings/gamma';
9
9
  export { WalletType } from '@polymarket/bindings/gamma';
10
10
  export * from '@polymarket/bindings/perps';
11
- export { PerpsCancelOrderResult, PerpsDepositStatus, PerpsInstrumentCategory, PerpsInstrumentType, PerpsInternalTransferDirection, PerpsKlineInterval, PerpsKnownWithdrawalStatus, PerpsMarginType, PerpsNotificationOrderType, PerpsNotificationType, PerpsOrderStatus, PerpsPostOrderAck, PerpsSide, PerpsSortDirection, PerpsTimeInForce, PerpsUpdateLeverageResult } from '@polymarket/bindings/perps';
11
+ export { PerpsAutoCancelStatus, PerpsCancelOrderResult, PerpsDepositStatus, PerpsInstrumentCategory, PerpsInstrumentType, PerpsInternalTransferDirection, PerpsKlineInterval, PerpsKnownWithdrawalStatus, PerpsMarginType, PerpsNotificationOrderType, PerpsNotificationType, PerpsOrderStatus, PerpsPostOrderAck, PerpsSide, PerpsSortDirection, PerpsTimeInForce, PerpsUpdateLeverageResult } from '@polymarket/bindings/perps';
12
12
  export * from '@polymarket/bindings/relayer';
13
13
  import { EvmAddress } from '@polymarket/types';
14
- import { U as UserInputError, b as TransactionCall, A as ApiKeyAuthorization } from './types-BzzqPJTs.js';
15
- export { c as AccountIdentity, d as AnalyticsActions, e as ApproveErc1155ForAllError, f as ApproveErc20Error, B as BaseClient, g as BasePublicClient, h as BaseSecureClient, i as BeginAuthenticationRequest, C as CancelAllError, j as CancelAllPerpsOrdersRequest, k as CancelMarketOrdersError, l as CancelOrderError, m as CancelOrdersError, n as CancelPerpsOrderRequest, o as CancelPerpsOrdersRequest, p as CancelledSigningError, q as Client, r as ClientActions, s as ClientDecorator, t as ClobEndpoints, u as ComboPositionSort, v as CombosEndpoints, w as ConnectionLostError, x as ConnectionLostErrorOptions, y as CreatePerpsSessionRequest, z as CreateSecureClientError, D as CryptoPricesChainlinkTwapSubscription, E as DataActions, F as DepositToPerpsError, G as DepositToPerpsRequest, H as DiscoveryActions, I as DownloadAccountingSnapshotError, J as DropNotificationsError, K as EnvironmentConfig, L as EnvironmentConfigFork, M as EnvironmentContracts, N as EstimateMarketPriceError, O as ExecuteCollateralReturnPlanError, P as ExecuteCollateralReturnPlanRequest, Q as FetchClosedOnlyModeError, R as FetchCommentsByIdError, V as FetchEventError, W as FetchEventLiveVolumeError, X as FetchEventTagsError, Y as FetchLastTradePriceError, Z as FetchLastTradePricesError, _ as FetchMarketError, $ as FetchMarketTagsError, a0 as FetchMidpointError, a1 as FetchMidpointsError, a2 as FetchNotificationsError, a3 as FetchOrderBookError, a4 as FetchOrderBooksError, a5 as FetchOrderError, a6 as FetchOrderScoringError, a7 as FetchOrdersScoringError, a8 as FetchPerpsAccountConfigRequest, a9 as FetchPerpsBookError, aa as FetchPerpsBookRequest, ab as FetchPerpsFeesError, ac as FetchPerpsInstrumentsError, ad as FetchPerpsInstrumentsRequest, ae as FetchPerpsOpenOrdersRequest, af as FetchPerpsOrdersRequest, ag as FetchPerpsTickerError, ah as FetchPerpsTickerRequest, ai as FetchPerpsTickersError, aj as FetchPerpsTickersRequest, ak as FetchPortfolioValueError, al as FetchPriceError, am as FetchPriceHistoryError, an as FetchPricesError, ao as FetchPublicProfileError, ap as FetchRelatedTagResourcesError, aq as FetchRelatedTagsError, ar as FetchRewardPercentagesError, as as FetchSeriesError, at as FetchSpreadError, au as FetchSpreadsError, av as FetchTagError, aw as FetchTotalEarningsForUserForDayError, ax as FetchTradedMarketCountError, ay as InsufficientLiquidityError, az as ListAccountTradesError, aA as ListActivityError, aB as ListBuilderLeaderboardError, aC as ListBuilderTradesError, aD as ListBuilderVolumeError, aE as ListClosedPositionsError, aF as ListComboActivityError, aG as ListComboMarketsError, aH as ListComboPositionsError, aI as ListCommentsByUserAddressError, aJ as ListCommentsError, aK as ListCurrentRewardsError, aL as ListEventsError, aM as ListMarketHoldersError, aN as ListMarketPositionsError, aO as ListMarketRewardsError, aP as ListMarketsError, aQ as ListOpenInterestError, aR as ListOpenOrdersError, aS as ListPerpsCandlesError, aT as ListPerpsCandlesRequest, aU as ListPerpsDepositsRequest, aV as ListPerpsEquityHistoryRequest, aW as ListPerpsFillsRequest, aX as ListPerpsFundingHistoryError, aY as ListPerpsFundingHistoryRequest, aZ as ListPerpsFundingPaymentsRequest, a_ as ListPerpsNotificationsRequest, a$ as ListPerpsPnlHistoryRequest, b0 as ListPerpsTradesError, b1 as ListPerpsTradesRequest, b2 as ListPerpsWithdrawalsRequest, b3 as ListPositionsError, b4 as ListSeriesError, b5 as ListTagsError, b6 as ListTeamsError, b7 as ListTraderLeaderboardError, b8 as ListTradesError, b9 as ListUserEarningsAndMarketsConfigError, ba as ListUserEarningsForDayError, bb as MarkPerpsNotificationsReadRequest, bc as MergePositionsError, bd as OpenPerpsSessionError, be as OpenPerpsSessionRequest, bf as OpenRfqSessionError, bg as Page, bh as PageSizeSchema, bi as Paginated, bj as PerpsActions, bk as PerpsBookDepth, bl as PerpsEndpoints, bm as PerpsOrderRequest, bn as PerpsPlaceFokOrderRequest, bo as PerpsPlaceGtcOrderRequest, bp as PerpsPlaceIocOrderRequest, bq as PerpsPlacedTpSlOrder, br as PerpsPlacedTpSlOrders, bs as PerpsPositionTpSlTrigger, bt as PerpsSession, bu as PerpsSessionAccountError, bv as PerpsSessionLifecycleError, bw as PerpsSessionTradingError, bx as PerpsTpSlTrigger, by as PlacePerpsOrderRequest, bz as PlacePerpsOrderResult, bA as PlacePerpsOrderWithTpSlRequest, bB as PlacePerpsOrderWithTpSlResult, bC as PlacePerpsPositionTpSlRequest, bD as PlacePerpsPositionTpSlResult, bE as PlanCollateralReturnError, bF as PostOrderError, bG as PostOrdersError, bH as PostPerpsOrdersRequest, bI as PublicAccountActions, bJ as PublicActions, bK as PublicClient, bL as PublicClientOptions, bM as PublicPerpsActions, bN as PublicRewardsActions, bO as PublicSubscriptionsActions, bP as RateLimitError, bQ as RateLimitErrorOptions, bR as RedeemPositionsError, bS as RequestRejectedError, bT as RequestRejectedErrorOptions, bU as RestEndpoint, bV as ResumePerpsSessionRequest, bW as RevokePerpsCredentialsError, bX as RevokePerpsCredentialsRequest, bY as RfqCancelQuoteAck, bZ as RfqCancelQuoteError, b_ as RfqCancelQuoteRejectedError, b$ as RfqCancelQuoteRejectedErrorOptions, c0 as RfqConfirmationAck, c1 as RfqConfirmationError, c2 as RfqConfirmationRejectedError, c3 as RfqConfirmationRequestEvent, c4 as RfqEvent, c5 as RfqQuoteError, c6 as RfqQuoteReference, c7 as RfqQuoteRejectedError, c8 as RfqQuoteRejectedErrorOptions, c9 as RfqQuoteRequestEvent, ca as RfqQuoteResponse, cb as RfqQuoteSource, cc as RfqSession, cd as RfqTradeEvent, ce as SearchError, cf as SearchSort, cg as SecureAccountActions, ch as SecureActions, ci as SecureClient, cj as SecureClientOptions, ck as SecureDownloadAccountingSnapshotRequest, cl as SecureFetchPortfolioValueRequest, cm as SecureFetchTradedMarketCountRequest, cn as SecureListActivityRequest, co as SecureListClosedPositionsRequest, cp as SecureListComboActivityRequest, cq as SecureListComboPositionsRequest, cr as SecureListPositionsRequest, cs as SecurePerpsActions, ct as SecureRewardsActions, cu as SecureRfqActions, cv as SecureSubscriptionsActions, cw as SecureTradingActions, cx as SecureWalletActions, cy as SetupGaslessWalletError, cz as SetupTradingApprovalsError, S as Signer, cA as SignerTransactionRequest, cB as SigningError, cC as SplitPositionError, cD as SubscribeError, cE as TimeoutError, cF as TransactionFailedError, cG as TransactionHandle, cH as TransactionOutcome, cI as TransferErc20Error, cJ as TransportError, a as TypedData, cK as TypedDataDomain, cL as TypedDataField, T as TypedDataPayload, cM as UnexpectedResponseError, cN as UpdatePerpsLeverageError, cO as UpdatePerpsLeverageRequest, cP as WaitForOrderFillSettlementError, cQ as WaitForTransactionError, cR as WalletDerivationConfig, cS as WebSocketCloseCode, cT as WebSocketEndpoint, cU as WebSocketKnownCloseCode, cV as WithdrawFromPerpsError, cW as WithdrawFromPerpsRequest, cX as accountActions, cY as allActions, cZ as analyticsActions, c_ as createPublicClient, c$ as createSecureClient, d0 as dataActions, d1 as discoveryActions, d2 as forkEnvironmentConfig, d3 as makeErrorGuard, d4 as perpsActions, d5 as production, d6 as rewardsActions, d7 as rfqActions, d8 as subscriptionsActions, d9 as tradingActions, da as walletActions } from './types-BzzqPJTs.js';
16
- export { C as CreateLimitOrderError, a as CreateMarketOrderError, F as FetchSportsMarketTypesError, L as ListSportsError, P as PlaceLimitOrderError, b as PlaceMarketOrderError } from './sports-x4Y_Y4yb.js';
14
+ import { U as UserInputError, b as TransactionCall, A as ApiKeyAuthorization } from './types-BBaRrND2.js';
15
+ export { c as AccountIdentity, d as AnalyticsActions, e as ApproveErc1155ForAllError, f as ApproveErc20Error, g as ArmPerpsAutoCancelError, h as ArmPerpsAutoCancelRequest, i as AutoCancelDailyLimitError, B as BaseClient, j as BasePublicClient, k as BaseSecureClient, l as BeginAuthenticationRequest, C as CancelAllError, m as CancelAllPerpsOrdersRequest, n as CancelMarketOrdersError, o as CancelOrderError, p as CancelOrdersError, q as CancelPerpsOrderRequest, r as CancelPerpsOrdersRequest, s as CancelledSigningError, t as Client, u as ClientActions, v as ClientDecorator, w as ClobEndpoints, x as ComboPositionSort, y as CombosEndpoints, z as ConnectionLostError, D as ConnectionLostErrorOptions, E as CreatePerpsSessionRequest, F as CreateSecureClientError, G as CryptoPricesChainlinkTwapSubscription, H as DataActions, I as DepositToPerpsError, J as DepositToPerpsRequest, K as DisarmPerpsAutoCancelRequest, L as DiscoveryActions, M as DownloadAccountingSnapshotError, N as DropNotificationsError, O as EnvironmentConfig, P as EnvironmentConfigFork, Q as EnvironmentContracts, R as EstimateMarketPriceError, V as ExecuteCollateralReturnPlanError, W as ExecuteCollateralReturnPlanRequest, X as FetchClosedOnlyModeError, Y as FetchCommentsByIdError, Z as FetchEventError, _ as FetchEventLiveVolumeError, $ as FetchEventTagsError, a0 as FetchLastTradePriceError, a1 as FetchLastTradePricesError, a2 as FetchMarketError, a3 as FetchMarketTagsError, a4 as FetchMidpointError, a5 as FetchMidpointsError, a6 as FetchNotificationsError, a7 as FetchOrderBookError, a8 as FetchOrderBooksError, a9 as FetchOrderError, aa as FetchOrderScoringError, ab as FetchOrdersScoringError, ac as FetchPerpsAccountConfigRequest, ad as FetchPerpsBookError, ae as FetchPerpsBookRequest, af as FetchPerpsFeesError, ag as FetchPerpsInstrumentsError, ah as FetchPerpsInstrumentsRequest, ai as FetchPerpsOpenOrdersRequest, aj as FetchPerpsOrdersRequest, ak as FetchPerpsTickerError, al as FetchPerpsTickerRequest, am as FetchPerpsTickersError, an as FetchPerpsTickersRequest, ao as FetchPortfolioValueError, ap as FetchPriceError, aq as FetchPriceHistoryError, ar as FetchPricesError, as as FetchPublicProfileError, at as FetchRelatedTagResourcesError, au as FetchRelatedTagsError, av as FetchRewardPercentagesError, aw as FetchSeriesError, ax as FetchSpreadError, ay as FetchSpreadsError, az as FetchTagError, aA as FetchTotalEarningsForUserForDayError, aB as FetchTradedMarketCountError, aC as InsufficientLiquidityError, aD as ListAccountTradesError, aE as ListActivityError, aF as ListBuilderLeaderboardError, aG as ListBuilderTradesError, aH as ListBuilderVolumeError, aI as ListClosedPositionsError, aJ as ListComboActivityError, aK as ListComboMarketsError, aL as ListComboPositionsError, aM as ListCommentsByUserAddressError, aN as ListCommentsError, aO as ListCurrentRewardsError, aP as ListEventsError, aQ as ListMarketHoldersError, aR as ListMarketPositionsError, aS as ListMarketRewardsError, aT as ListMarketsError, aU as ListOpenInterestError, aV as ListOpenOrdersError, aW as ListPerpsCandlesError, aX as ListPerpsCandlesRequest, aY as ListPerpsDepositsRequest, aZ as ListPerpsEquityHistoryRequest, a_ as ListPerpsFillsRequest, a$ as ListPerpsFundingHistoryError, b0 as ListPerpsFundingHistoryRequest, b1 as ListPerpsFundingPaymentsRequest, b2 as ListPerpsNotificationsRequest, b3 as ListPerpsPnlHistoryRequest, b4 as ListPerpsTradesError, b5 as ListPerpsTradesRequest, b6 as ListPerpsWithdrawalsRequest, b7 as ListPositionsError, b8 as ListSeriesError, b9 as ListTagsError, ba as ListTeamsError, bb as ListTraderLeaderboardError, bc as ListTradesError, bd as ListUserEarningsAndMarketsConfigError, be as ListUserEarningsForDayError, bf as MarkPerpsNotificationsReadRequest, bg as MergePositionsError, bh as OpenPerpsSessionError, bi as OpenPerpsSessionRequest, bj as OpenRfqSessionError, bk as Page, bl as PageSizeSchema, bm as Paginated, bn as PerpsActions, bo as PerpsBookDepth, bp as PerpsEndpoints, bq as PerpsOrderRequest, br as PerpsPlaceFokOrderRequest, bs as PerpsPlaceGtcOrderRequest, bt as PerpsPlaceIocOrderRequest, bu as PerpsPlacedTpSlOrder, bv as PerpsPlacedTpSlOrders, bw as PerpsPositionTpSlTrigger, bx as PerpsSession, by as PerpsSessionAccountError, bz as PerpsSessionLifecycleError, bA as PerpsSessionTradingError, bB as PerpsTpSlTrigger, bC as PlacePerpsOrderRequest, bD as PlacePerpsOrderResult, bE as PlacePerpsOrderWithTpSlRequest, bF as PlacePerpsOrderWithTpSlResult, bG as PlacePerpsPositionTpSlRequest, bH as PlacePerpsPositionTpSlResult, bI as PlanCollateralReturnError, bJ as PostOrderError, bK as PostOrdersError, bL as PostPerpsOrdersRequest, bM as PublicAccountActions, bN as PublicActions, bO as PublicClient, bP as PublicClientOptions, bQ as PublicPerpsActions, bR as PublicRewardsActions, bS as PublicSubscriptionsActions, bT as RateLimitError, bU as RateLimitErrorOptions, bV as RedeemPositionsError, bW as RequestRejectedError, bX as RequestRejectedErrorOptions, bY as RestEndpoint, bZ as ResumePerpsSessionRequest, b_ as RevokePerpsCredentialsError, b$ as RevokePerpsCredentialsRequest, c0 as RfqCancelQuoteAck, c1 as RfqCancelQuoteError, c2 as RfqCancelQuoteRejectedError, c3 as RfqCancelQuoteRejectedErrorOptions, c4 as RfqConfirmationAck, c5 as RfqConfirmationError, c6 as RfqConfirmationRejectedError, c7 as RfqConfirmationRequestEvent, c8 as RfqEvent, c9 as RfqQuoteError, ca as RfqQuoteReference, cb as RfqQuoteRejectedError, cc as RfqQuoteRejectedErrorOptions, cd as RfqQuoteRequestEvent, ce as RfqQuoteResponse, cf as RfqQuoteSource, cg as RfqSession, ch as RfqTradeEvent, ci as SearchError, cj as SearchSort, ck as SecureAccountActions, cl as SecureActions, cm as SecureClient, cn as SecureClientOptions, co as SecureDownloadAccountingSnapshotRequest, cp as SecureFetchPortfolioValueRequest, cq as SecureFetchTradedMarketCountRequest, cr as SecureListActivityRequest, cs as SecureListClosedPositionsRequest, ct as SecureListComboActivityRequest, cu as SecureListComboPositionsRequest, cv as SecureListPositionsRequest, cw as SecurePerpsActions, cx as SecureRewardsActions, cy as SecureRfqActions, cz as SecureSubscriptionsActions, cA as SecureTradingActions, cB as SecureWalletActions, cC as SetupGaslessWalletError, cD as SetupTradingApprovalsError, S as Signer, cE as SignerTransactionRequest, cF as SigningError, cG as SplitPositionError, cH as SubscribeError, cI as TimeoutError, cJ as TransactionFailedError, cK as TransactionHandle, cL as TransactionOutcome, cM as TransferErc20Error, cN as TransportError, a as TypedData, cO as TypedDataDomain, cP as TypedDataField, T as TypedDataPayload, cQ as UnexpectedResponseError, cR as UpdatePerpsLeverageError, cS as UpdatePerpsLeverageRequest, cT as UpdatePerpsMarginError, cU as UpdatePerpsMarginRequest, cV as WaitForOrderFillSettlementError, cW as WaitForTransactionError, cX as WalletDerivationConfig, cY as WebSocketCloseCode, cZ as WebSocketEndpoint, c_ as WebSocketKnownCloseCode, c$ as WithdrawFromPerpsError, d0 as WithdrawFromPerpsRequest, d1 as accountActions, d2 as allActions, d3 as analyticsActions, d4 as createPublicClient, d5 as createSecureClient, d6 as dataActions, d7 as discoveryActions, d8 as forkEnvironmentConfig, d9 as makeErrorGuard, da as perpsActions, db as production, dc as rewardsActions, dd as rfqActions, de as subscriptionsActions, df as tradingActions, dg as walletActions } from './types-BBaRrND2.js';
16
+ export { C as CreateLimitOrderError, a as CreateMarketOrderError, F as FetchSportsMarketTypesError, L as ListSportsError, P as PlaceLimitOrderError, b as PlaceMarketOrderError } from './sports-CM15YKJi.js';
17
17
  export { CollateralReturnKnownOperationKind, CollateralReturnOperation, CollateralReturnOperationKind, CollateralReturnPlanResponse, CollateralReturnPositionAmount, CollateralReturnPositionSummary, CollateralReturnRouterCall, RfqConfirmationDecision, RfqConfirmationRequest, RfqDirection, RfqErrorCode, RfqExecutionStatus, RfqExecutionUpdate, RfqId, RfqKnownErrorCode, RfqQuoteId, RfqQuoteRequest, RfqRequestedSize, RfqRequestedSizeUnit, RfqRequestorPublicId, RfqSide, RfqTrade } from '@polymarket/bindings/combos';
18
18
  export { CryptoPricesChainlinkTwapEvent, CryptoPricesChainlinkTwapSixtyEvent, CryptoPricesChainlinkTwapThirtyEvent, CryptoPricesChainlinkTwapWindowSeconds, PerpsSessionEvent } from '@polymarket/bindings/subscriptions';
19
19
  import 'zod';
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- import {N,X,V,T as T$1,ra,pa,re,pe as pe$1,ne as ne$1,le as le$1,je,he as he$1,zc,xc,vc,qb,na,Lc,Nc,Zc,Wb,Ub,Sb,Qb,Ob,Mb,Kb,Ib,Gb,ub,sb,tc,lc,jc,hc,$e,Kf,yf,wf,qf,If,Gf,Ef,Cf,Bc,uf,sf,Jc,Hc,Fc,Dc,rc,pc,nc,ee,be as be$1,ae as ae$1,de as de$1,la,ja,ha,fa,da,ba,hf,Af,R as R$1,P as P$1,Xc,Vc,Tc,Rc,pd,cd,bd,xd,vd,td,rd,ec,ac,Ze,Ue,Le,Of,Wa,Sa,_a,va,Aa,K,L as L$1,Da,Ud,Sd,Qd,Md,Kd,Id,Wd,Od,Pc,_b,Yb,H,yd,G,wa,I,gb,eb,Ed,Cd,Dd,Ad,Bd,zd,ib,Gd,af,cf,ef,J,dd,ed}from'./chunk-EC3TWEID.js';export{Va as ApproveErc1155ForAllError,Ra as ApproveErc20Error,Uc as CancelAllError,Wc as CancelMarketOrdersError,Qc as CancelOrderError,Sc as CancelOrdersError,fc as CollateralReturnKnownOperationKind,C as CombinatorialPrepareConditionCallError,sa as ComboActivityType,se as ComboPositionOutcome,fe as ComboPositionSort,te as ComboPositionStatus,ud as CreateLimitOrderError,qd as CreateMarketOrderError,q as CtfRedeemPositionsCallError,_d as DepositToPerpsError,qe as DownloadAccountingSnapshotError,W as DropNotificationsError,b as Erc20ApprovalCallError,m as Erc20TransferCallError,Yc as EstimateMarketPriceError,dc as ExecuteCollateralReturnPlanError,M as FetchClosedOnlyModeError,ic as FetchCommentsByIdError,oc as FetchEventError,sc as FetchEventLiveVolumeError,qc as FetchEventTagsError,Rb as FetchLastTradePriceError,Tb as FetchLastTradePricesError,Gc as FetchMarketError,Ic as FetchMarketTagsError,rb as FetchMidpointError,tb as FetchMidpointsError,U as FetchNotificationsError,Jb as FetchOrderBookError,Lb as FetchOrderBooksError,Q as FetchOrderError,aa as FetchOrderScoringError,ca as FetchOrdersScoringError,Nd as FetchPerpsBookError,Vd as FetchPerpsFeesError,Hd as FetchPerpsInstrumentsError,Jd as FetchPerpsTickerError,Ld as FetchPerpsTickersError,me as FetchPortfolioValueError,Fb as FetchPriceError,Vb as FetchPriceHistoryError,Hb as FetchPricesError,_e as FetchPublicProfileError,Hf as FetchRelatedTagResourcesError,Ff as FetchRelatedTagsError,ka as FetchRewardPercentagesError,tf as FetchSeriesError,xf as FetchSportsMarketTypesError,Nb as FetchSpreadError,Pb as FetchSpreadsError,Df as FetchTagError,ga as FetchTotalEarningsForUserForDayError,oe as FetchTradedMarketCountError,S as ListAccountTradesError,oa as ListActivityError,uc as ListBuilderLeaderboardError,pb as ListBuilderTradesError,wc as ListBuilderVolumeError,ie as ListClosedPositionsError,qa as ListComboActivityError,Ec as ListComboMarketsError,ke as ListComboPositionsError,kc as ListCommentsByUserAddressError,gc as ListCommentsError,Xb as ListCurrentRewardsError,mc as ListEventsError,Kc as ListMarketHoldersError,Oc as ListMarketPositionsError,Zb as ListMarketRewardsError,Cc as ListMarketsError,Mc as ListOpenInterestError,O as ListOpenOrdersError,Pd as ListPerpsCandlesError,Rd as ListPerpsFundingHistoryError,Td as ListPerpsTradesError,ge as ListPositionsError,rf as ListSeriesError,vf as ListSportsError,Bf as ListTagsError,Jf as ListTeamsError,yc as ListTraderLeaderboardError,ma as ListTradesError,ia as ListUserEarningsAndMarketsConfigError,ea as ListUserEarningsForDayError,a as MAX_UINT256,t as MergePositionsCallError,Pe as MergePositionsError,y as MergeV2CallError,Xd as OpenPerpsSessionError,gf as OpenRfqSessionError,o as PerpsDepositCallError,wd as PlaceLimitOrderError,sd as PlaceMarketOrderError,$b as PlanCollateralReturnError,$c as PostOrderError,ad as PostOrdersError,Ye as RedeemPositionsError,A as RedeemV2CallError,Yd as RevokePerpsCredentialsError,df as RfqCancelQuoteError,cf as RfqCancelQuoteRejectedError,if as RfqConfirmationDecision,ff as RfqConfirmationError,ef as RfqConfirmationRejectedError,jf as RfqDirection,kf as RfqExecutionStatus,lf as RfqKnownErrorCode,bf as RfqQuoteError,af as RfqQuoteRejectedError,mf as RfqRequestedSizeUnit,nf as RfqSide,pf as SearchError,of as SearchSort,Za as SetupTradingApprovalsError,r as SplitPositionCallError,Ge as SplitPositionError,w as SplitV2CallError,zf as SubscribeError,Nf as TransferErc20Error,Fd as UpdatePerpsLeverageError,od as WaitForOrderFillSettlementError,ta as WaitForTransactionError,$d as WithdrawFromPerpsError,D as combinatorialPrepareConditionCall,v as ctfRedeemPositionsCall,l as decodeErc1155BalanceOfBatchResult,j as decodeErc1155BalanceOfResult,h as decodeErc1155IsApprovedForAllResult,e as decodeErc20AllowanceResult,E as encodeProxyCall,F as encodeSafeMultisendCall,f as erc1155ApprovalForAllCall,k as erc1155BalanceOfBatchCall,i as erc1155BalanceOfCall,g as erc1155IsApprovedForAllCall,d as erc20AllowanceCall,c as erc20ApprovalCall,n as erc20TransferCall,ua as expectTransactionHandle,u as mergePositionsCall,z as mergeV2Call,p as perpsDepositCall,B as redeemV2Call,s as splitPositionCall,x as splitV2Call}from'./chunk-EC3TWEID.js';import {a,m as m$1,j,g as g$1,f as f$1,l,h,i,c,b as b$1,e}from'./chunk-4LDMO37Q.js';export{j as CancelledSigningError,e as ConnectionLostError,k as InsufficientLiquidityError,g as RateLimitError,f as RequestRejectedError,l as SigningError,h as TimeoutError,i as TransactionFailedError,c as TransportError,b as UnexpectedResponseError,a as UserInputError,d as WebSocketKnownCloseCode,m as makeErrorGuard}from'./chunk-4LDMO37Q.js';import {DecimalishSchema,ApiKeySchema,EvmAddressSchema,toBaseUnits,OrderSide}from'@polymarket/bindings';export{OrderSide,OrderType}from'@polymarket/bindings';export{PriceHistoryInterval,SignatureType}from'@polymarket/bindings/clob';export{ActivityType}from'@polymarket/bindings/data';import {WalletType}from'@polymarket/bindings/gamma';export{WalletType}from'@polymarket/bindings/gamma';export{PerpsDepositStatus,PerpsInstrumentCategory,PerpsInstrumentType,PerpsInternalTransferDirection,PerpsKlineInterval,PerpsKnownWithdrawalStatus,PerpsMarginType,PerpsNotificationOrderType,PerpsNotificationType,PerpsOrderStatus,PerpsSide,PerpsSortDirection,PerpsTimeInForce}from'@polymarket/bindings/perps';import {z}from'zod';import {expectEvmAddress,isSameEvmAddress,expectEvmSignature,invariant,setNonBlockingTimeout}from'@polymarket/types';import {PerpsMarketDataEventSchema,RealtimeEventSchema,SportsResultEventSchema,MarketEventSchema,UserEventSchema}from'@polymarket/bindings/subscriptions';import {pushable}from'it-pushable';import {RfqQuoterInboundMessageSchema,RfqConfirmationDecision,RfqRequestedSizeUnit,RfqDirection}from'@polymarket/bindings/combos';var Ai=z.object({POLY_BUILDER_API_KEY:z.string().min(1),POLY_BUILDER_TIMESTAMP:z.string().min(1),POLY_BUILDER_PASSPHRASE:z.string().min(1),POLY_BUILDER_SIGNATURE:z.string().min(1)});function Ci(t){return new se(t)}function Ei(t){return new ne(t)}var se=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return true}get supportGasless(){return true}async authorize(e){try{return await this.#s(e)}catch(r){throw l.fromError(r,"Could not authorize the builder-authenticated request")}}async#r(){let e=this.#e.headers,r=typeof e=="function"?await e():e,s=new Headers(r);return s.set("content-type","application/json"),s}async#s(e){let r=await fetch(this.#e.url,{body:JSON.stringify({body:e.body,method:e.method,path:e.path}),credentials:this.#e.credentials,headers:await this.#r(),method:"POST",mode:"cors"});if(!r.ok)throw new Error(`Remote signer rejected request with status ${r.status}`);return Ai.parse(await r.json())}},ne=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return false}get supportGasless(){return true}authorize(){return Promise.resolve({RELAYER_API_KEY:this.#e.key,RELAYER_API_KEY_ADDRESS:this.#e.address})}};function Tr(t){return {domain:{chainId:t.chainId,name:"ClobAuthDomain",version:"1"},message:{address:t.address,message:"This message attests that I control the given wallet",nonce:t.nonce??0,timestamp:`${t.timestamp}`},primaryType:"ClobAuth",types:{ClobAuth:[{name:"address",type:"address"},{name:"timestamp",type:"string"},{name:"nonce",type:"uint256"},{name:"message",type:"string"}]}}}function ki(t){return {listPositions:he$1.bind(null,t),listClosedPositions:je.bind(null,t),listComboPositions:le$1.bind(null,t),fetchPortfolioValue:ne$1.bind(null,t),fetchTradedMarketCount:pe$1.bind(null,t),downloadAccountingSnapshot:re.bind(null,t),listMarketPositions:Pc.bind(null,t),listActivity:pa.bind(null,t),listComboActivity:ra.bind(null,t)}}function f(t,e={}){return {...e,user:e.user??t.account.wallet}}function ie(t){let e=ki(t);return t.isPublicClient()?e:{...e,listPositions:r=>he$1(t,f(t,r)),listClosedPositions:r=>je(t,f(t,r)),listComboPositions:r=>le$1(t,f(t,r)),fetchPortfolioValue:r=>ne$1(t,f(t,r)),fetchTradedMarketCount:r=>pe$1(t,f(t,r)),downloadAccountingSnapshot:r=>re(t,f(t,r)),listActivity:r=>pa(t,f(t,r)),listComboActivity:r=>ra(t,f(t,r)),listAccountTrades:T$1.bind(null,t),fetchNotifications:V.bind(null,t),dropNotifications:X.bind(null,t),fetchClosedOnlyMode:N.bind(null,t)}}function oe(t){return {listBuilderTrades:qb.bind(null,t),listBuilderLeaderboard:vc.bind(null,t),fetchBuilderVolume:xc.bind(null,t),listTraderLeaderboard:zc.bind(null,t)}}function ae(t){return {fetchEventLiveVolume:tc.bind(null,t),fetchMidpoint:sb.bind(null,t),fetchMidpoints:ub.bind(null,t),fetchPrice:Gb.bind(null,t),fetchPrices:Ib.bind(null,t),fetchOrderBook:Kb.bind(null,t),fetchOrderBooks:Mb.bind(null,t),fetchSpread:Ob.bind(null,t),fetchSpreads:Qb.bind(null,t),fetchLastTradePrice:Sb.bind(null,t),fetchLastTradePrices:Ub.bind(null,t),fetchPriceHistory:Wb.bind(null,t),estimateMarketPrice:Zc.bind(null,t),listOpenInterest:Nc.bind(null,t),listMarketHolders:Lc.bind(null,t),listTrades:na.bind(null,t)}}function ce(t){return {listEvents:nc.bind(null,t),fetchEvent:pc.bind(null,t),fetchEventTags:rc.bind(null,t),listMarkets:Dc.bind(null,t),listComboMarkets:Fc.bind(null,t),fetchMarket:Hc.bind(null,t),fetchMarketTags:Jc.bind(null,t),listSeries:sf.bind(null,t),fetchSeries:uf.bind(null,t),listMarketClarifications:Bc.bind(null,t),listTags:Cf.bind(null,t),fetchTag:Ef.bind(null,t),fetchRelatedTags:Gf.bind(null,t),fetchRelatedTagResources:If.bind(null,t),search:qf.bind(null,t),listSports:wf.bind(null,t),fetchSportsMarketTypes:yf.bind(null,t),listTeams:Kf.bind(null,t),fetchPublicProfile:$e.bind(null,t),listComments:hc.bind(null,t),fetchCommentsById:jc.bind(null,t),listCommentsByUserAddress:lc.bind(null,t)}}function ue(t){let e={fetchPerpsBook:r=>Od(t,r),fetchPerpsFees:()=>Wd(t),fetchPerpsInstruments:r=>Id(t,r),fetchPerpsTicker:r=>Kd(t,r),fetchPerpsTickers:r=>Md(t,r),listPerpsCandles:r=>Qd(t,r),listPerpsFundingHistory:r=>Sd(t,r),listPerpsTrades:r=>Ud(t,r)};return t.isSecureClient()?{...e,depositToPerps:r=>de$1(t,r),openPerpsSession:r=>ae$1(t,r),revokePerpsCredentials:r=>be$1(t,r),withdrawFromPerps:r=>ee(t,r)}:e}function Ti(t){return {listCurrentRewards:Yb.bind(null,t),listMarketRewards:_b.bind(null,t)}}function de(t){let e=Ti(t);return t.isPublicClient()?e:{...e,fetchOrderScoring:ba.bind(null,t),fetchOrdersScoring:da.bind(null,t),listUserEarningsForDay:fa.bind(null,t),fetchTotalEarningsForUserForDay:ha.bind(null,t),listUserEarningsAndMarketsConfig:ja.bind(null,t),fetchRewardPercentages:la.bind(null,t)}}function wr(t){return {openRfqSession(){return hf(t)}}}function pe(t){return t.isSecureClient()?{subscribe(e){return Af(t,e)}}:{subscribe(e){return Af(t,e)}}}function xr(t){return {createMarketOrder:rd.bind(null,t),placeMarketOrder:td.bind(null,t),createLimitOrder:vd.bind(null,t),placeLimitOrder:xd.bind(null,t),postOrder:bd(t),postOrders:cd(t),waitForOrderFillSettlement:pd.bind(null,t),cancelOrder:Rc.bind(null,t),cancelOrders:Tc.bind(null,t),cancelAll:Vc.bind(null,t),cancelMarketOrders:Xc.bind(null,t),listOpenOrders:P$1.bind(null,t),fetchOrder:R$1.bind(null,t)}}function Mr(t){return {setupTradingApprovals:_a.bind(null,t),approveErc20:Sa.bind(null,t),approveErc1155ForAll:Wa.bind(null,t),transferErc20:Of.bind(null,t),splitPosition:Le.bind(null,t),mergePositions:Ue.bind(null,t),redeemPositions:Ze.bind(null,t),planCollateralReturn:ac.bind(null,t),executeCollateralReturnPlan:ec.bind(null,t)}}function Ir(t){return t.isSecureClient()?{...ie(t),...oe(t),...ae(t),...ce(t),...ue(t),...de(t),...wr(t),...pe(t),...xr(t),...Mr(t)}:{...ie(t),...oe(t),...ae(t),...ce(t),...ue(t),...de(t),...pe(t)}}var le={name:"production",chainId:137,rpc:"https://polygon.drpc.org",walletDerivation:{depositWalletFactory:expectEvmAddress("0x00000000000Fb5C9ADea0298D729A0CB3823Cc07"),depositWalletBeacon:expectEvmAddress("0x7A18EDfe055488A3128f01F563e5B479D92ffc3a"),depositWalletImplementation:expectEvmAddress("0x58CA52ebe0DadfdF531Cde7062e76746de4Db1eB"),proxyFactory:expectEvmAddress("0xaB45c5A4B0c941a2F231C04C3f49182e1A254052"),proxyImplementation:expectEvmAddress("0x44e999d5c2F66Ef0861317f9A4805AC2e90aEB4f"),safeFactory:expectEvmAddress("0xaacFeEa03eb1561C4e67d661e40682Bd20E3541b"),safeInitCodeHash:"0x2bce2127ff07fb632d16c8347c4ebf501f4841168bed00d9e6ef715ddb6fcecf"},contracts:{collateralToken:expectEvmAddress("0xC011a7E12a19f7B1f670d46F03B03f3342E82DFB"),conditionalTokens:expectEvmAddress("0x4D97DCd97eC945f40cF65F87097ACe5EA0476045"),negRiskAdapter:expectEvmAddress("0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296"),collateralAdapter:expectEvmAddress("0xAdA100Db00Ca00073811820692005400218FcE1f"),negRiskCollateralAdapter:expectEvmAddress("0xadA2005600Dec949baf300f4C6120000bDB6eAab"),standardExchange:expectEvmAddress("0xE111180000d2663C0091e4f400237545B87B996B"),negRiskExchange:expectEvmAddress("0xe2222d279d744050d28e00520010520000310F59"),exchangeV3:expectEvmAddress("0xe3333700cA9d93003F00f0F71f8515005F6c00Aa"),protocolV2Router:expectEvmAddress("0x12121212006e4CD160D18e3f00711DA5c3372600"),combinatorialModule:expectEvmAddress("0x30000034706c7d8e12009dab006be20000c031a8"),positionManager:expectEvmAddress("0x006F54F7f9A22e0000CC2AB60031000000ae9fEF"),autoRedeemOperator:expectEvmAddress("0xa1200000d0002264C9a1698e001292D00E1b00af"),safeMultisend:expectEvmAddress("0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761"),relayHub:expectEvmAddress("0xD216153c06E857cD7f72665E0aF1d7D82172F494"),perpsDepositContract:expectEvmAddress("0xDCa4af75705dbB50f62437045afF9921947917d2")},clob:{rest:"https://clob.polymarket.com",market:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/market"},user:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/user"}},relayer:{rest:"https://relayer-v2.polymarket.com"},gamma:{rest:"https://gamma-api.polymarket.com"},data:{rest:"https://data-api.polymarket.com"},combos:{rest:"https://combos-rfq-api.polymarket.com",ws:"wss://combos-rfq-gateway-quoter.polymarket.com/ws/rfq",collateralReturn:{rest:"https://combos-rfq-collateral-return.polymarket.com"}},perps:{rest:"https://api.perpetuals.polymarket.com",ws:"wss://ws.perpetuals.polymarket.com/v1/ws"},rtds:{ws:"wss://ws-live-data.polymarket.com"},sports:{ws:"wss://sports-api.polymarket.com/ws"},relayerMaxPolls:100,relayerPollFrequencyMs:2e3};function wi(t,e=le){return {...e,...t,walletDerivation:{...e.walletDerivation,...t.walletDerivation},contracts:{...e.contracts,...t.contracts},clob:{...k(e.clob,t.clob),market:F(e.clob.market,t.clob?.market),user:F(e.clob.user,t.clob?.user)},relayer:k(e.relayer,t.relayer),gamma:k(e.gamma,t.gamma),data:k(e.data,t.data),combos:{...Or(e.combos,t.combos),collateralReturn:k(e.combos.collateralReturn,t.combos?.collateralReturn)},perps:Or(e.perps,t.perps),rtds:F(e.rtds,t.rtds),sports:F(e.sports,t.sports)}}function k(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function F(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function Or(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function me(t,e){if(!(t===void 0&&e===void 0))return {...t,...e}}var fc=wi({name:"preproduction",clob:{rest:"https://clob-preprod-int-v2.polymarket.com"},data:{rest:"https://data-api-preprod-int.polymarket.com"},gamma:{rest:"https://gamma-api-preprod-int.polymarket.com"},relayer:{rest:"https://relayer-v2-preprod-int.polymarket.com"}});async function Fr(t,e,r,s,n){let i=`${e}${r}${s}`;n!==void 0&&(i+=n);let o=await globalThis.crypto.subtle.importKey("raw",xi(t),{name:"HMAC",hash:"SHA-256"},false,["sign"]),A=await globalThis.crypto.subtle.sign("HMAC",o,new TextEncoder().encode(i));return Ii(Mi(A))}function xi(t){let e=t.replace(/-/g,"+").replace(/_/g,"/").replace(/[^A-Za-z0-9+/=]/g,""),r=atob(e),s=new Uint8Array(r.length);for(let n=0;n<r.length;n+=1)s[n]=r.charCodeAt(n);return s.buffer}function Mi(t){let e=new Uint8Array(t),r="";for(let s of e)r+=String.fromCharCode(s);return btoa(r)}function Ii(t){return t.replace(/\+/g,"-").replace(/\//g,"_")}function m(t,e){let r;return {close:()=>(r===void 0&&(r=Promise.resolve(t.return()).then(()=>e())),r),[Symbol.asyncIterator](){return t[Symbol.asyncIterator]()}}}var p=class{#e=new Set;#r;constructor(e){this.#r=e?.deriveServerState??(()=>{});}add(e,r={}){let s={queue:pushable({objectMode:true})};r.matches!==void 0&&(s.matches=r.matches);let n={subscription:e,subscriber:s};return {change:this.#s(n),entry:n}}#s(e){let r=this.serverState();return this.#e.add(e),{before:r,after:this.serverState()}}remove(e){let r=this.serverState();return this.#e.delete(e),e.subscriber.queue.end(),{before:r,after:this.serverState()}}dispatch(e){for(let{subscriber:r}of this.#e)(r.matches===void 0||r.matches(e))&&r.queue.push(e);}hasActiveSubscriptions(){return this.#e.size>0}endAll(e){for(let{subscriber:r}of this.#e)r.queue.end(e);this.#e.clear();}serverState(){return this.#r(this.#e)}};function he(t,e,r){let s=L(r.assetsIds,e.assetsIds),n=L(e.assetsIds,r.assetsIds);s.length>0&&t(Lr(s,r.customFeatureEnabled));let i=r.assetsIds[0];s.length===0&&e.customFeatureEnabled!==r.customFeatureEnabled&&i!==void 0&&t(Lr([i],r.customFeatureEnabled)),n.length>0&&t(Fi(n));}function fe(t,e,r){if(r.includeAllMarkets){!e.includeAllMarkets&&e.markets.length>0&&t(Br(e.markets));return}if(e.includeAllMarkets){r.markets.length>0&&t(Dr(r.markets));return}let s=L(r.markets,e.markets),n=L(e.markets,r.markets);s.length>0&&t(Dr(s)),n.length>0&&t(Br(n));}function Wr(t){let e=new Set,r=false;for(let{subscription:s}of t){for(let n of s.tokenIds)e.add(n);r||=s.customFeatureEnabled===true;}return {assetsIds:Array.from(e),customFeatureEnabled:r}}function Ur(t){let e=false,r=new Set;for(let{subscription:s}of t){if(Vr(s)){e=true;continue}for(let n of s.markets??[])r.add(n);}return {includeAllMarkets:e,markets:e?[]:Array.from(r)}}function Qr(t){return {assets_ids:t.assetsIds,custom_feature_enabled:t.customFeatureEnabled,type:"market"}}function Lr(t,e){return {assets_ids:t,custom_feature_enabled:e,operation:"subscribe"}}function Fi(t){return {assets_ids:t,operation:"unsubscribe"}}function Hr(t,e){let r={auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},type:"user"};return t.includeAllMarkets||(r.markets=t.markets),r}function Dr(t){return {markets:t,operation:"subscribe"}}function Br(t){return {markets:t,operation:"unsubscribe"}}function _r(t){return e=>{switch(e.type){case "price_change":return e.payload.priceChanges.some(r=>t.tokenIds.includes(r.tokenId));case "new_market":return t.customFeatureEnabled===true;case "market_resolved":return t.customFeatureEnabled===true&&(e.payload.tokenIds??[]).some(r=>t.tokenIds.includes(r));case "best_bid_ask":return t.customFeatureEnabled===true&&t.tokenIds.includes(e.payload.tokenId);default:return t.tokenIds.includes(e.payload.tokenId)}}}function Kr(t){if(Vr(t))return ()=>true;let e=new Set((t.markets??[]).map(r=>r.toLowerCase()));return r=>e.has(r.payload.market.toLowerCase())}function Vr(t){return (t.markets?.length??0)===0}function L(t,e){let r=new Set(e);return t.filter(s=>!r.has(s))}var S=class{#e;#r;#s;#o=new Ed({heartbeat:new zd});#i=new Dd;#t=new p({deriveServerState:Wr});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:_r(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){let{before:s,after:n}=r;try{(await this.#u()).reusedOpenSocket&&he(o=>this.#o.send(o),s,n);}catch(i){throw await this.#a(e),i}}async#a(e){let{before:r,after:s}=this.#t.remove(e);if(!this.#t.hasActiveSubscriptions()){await this.close();return}he(n=>this.#o.send(n),r,s);}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff(),this.#f();}#p(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=MarketEventSchema.safeParse(s);n.success&&this.#t.dispatch(n.data);}}#l(){this.#t.hasActiveSubscriptions()&&this.#m();}#h(){}#f(){this.#o.send(Qr(this.#t.serverState()));}#m(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var R=class{#e;#r;#s;#o;#i=new Ed({heartbeat:new zd});#t=new Dd;#n=new p({deriveServerState:Ur});constructor(e){this.#e=e.credentials,this.#r=e.headers,this.#s=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:Kr(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){let{before:s,after:n}=r;try{(await this.#c()).reusedOpenSocket&&fe(o=>this.#i.send(o),s,n);}catch(i){throw await this.#d(e),i}}async#d(e){let{before:r,after:s}=this.#n.remove(e);if(!this.#n.hasActiveSubscriptions()){await this.close();return}fe(n=>this.#i.send(n),r,s);}async close(){this.#o===void 0&&(this.#o=this.#u().finally(()=>{this.#o=void 0;})),await this.#o;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#i.close();}#c(){return this.#i.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:e=>this.#p(e),prepare:()=>this.#e,headers:this.#r,url:this.#s})}#p(e){this.#t.resetBackoff(),this.#m(e);}#l(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=UserEventSchema.safeParse(s);n.success&&this.#n.dispatch(n.data);}}#h(){this.#n.hasActiveSubscriptions()&&this.#y();}#f(){}#m(e){this.#i.send(Hr(this.#n.serverState(),e));}#y(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};var P=class{#e;#r;#s;#o;#i=new Set;#t=new Set;#n=new Set;#a=false;constructor(e){this.#e=e.chainId,this.#r=e.headers,this.#s=e.restUrl,this.#o=e.wsUrl;}connect(e){if(this.#a)return Promise.reject(new c("Perps session manager has been shut down."));let r=new Gd({chainId:this.#e,credentials:e,headers:this.#r,onClose:n=>this.#d(n),restUrl:this.#s,wsUrl:this.#o});this.#t.add(r);let s;return s=(async()=>{try{if(await r.connect(),this.#a)throw await r.close(),new c("Perps session manager has been shut down.");return this.#i.add(r),r}catch(n){throw await r.close(),n}finally{this.#n.delete(s),this.#t.delete(r);}})(),this.#n.add(s),s}async shutdown(){this.#a=true;let e=Array.from(this.#i),r=Array.from(this.#t),s=Array.from(this.#n);this.#i.clear(),this.#t.clear(),this.#n.clear(),await Promise.allSettled([...e.map(n=>n.close()),...r.map(n=>n.close()),...s.map(n=>n.catch(()=>{}))]).then(()=>{});}#d(e){this.#i.delete(e),this.#t.delete(e);}};var b=class{#e;#r;#s;#o=1;#i=new Ed({heartbeat:new Cd});#t=new Dd;#n=new p({deriveServerState:Wi});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:Qi(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){try{(await this.#c()).reusedOpenSocket&&(this.#m(jr(r.before,r.after)),this.#y(zr(r.before,r.after)));}catch(s){throw await this.#d(e),s}}async#d(e){let{before:r,after:s}=this.#n.remove(e);this.#m(jr(r,s)),this.#y(zr(r,s)),this.#n.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#u().finally(()=>{this.#s=void 0;})),await this.#s;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#i.close();}#c(){return this.#i.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:()=>this.#p(),headers:this.#e,url:this.#r})}#p(){this.#t.resetBackoff(),this.#m(Array.from(this.#n.serverState()));}#l(e){let r=PerpsMarketDataEventSchema.safeParse(e);r.success&&this.#n.dispatch(r.data);}#h(){this.#n.hasActiveSubscriptions()&&this.#b();}#f(){}#m(e){e.length!==0&&this.#i.send(this.#S("sub",e));}#y(e){e.length!==0&&this.#i.send(this.#S("unsub",e));}#S(e,r){return {id:this.#o++,req:e,chs:r}}#b(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};function Wi(t){let e=new Set,r=new Set,s=new Set,n=false,i=false;for(let{subscription:o}of t)switch(o.topic){case "perps.tickers":o.instrumentId===void 0?n=true:r.add(o.instrumentId);break;case "perps.statistics":o.instrumentId===void 0?i=true:s.add(o.instrumentId);break;default:e.add(Ui(o));}if(n)e.add("tickers::all");else for(let o of r)e.add(`tickers::${o}`);if(i)e.add("statistics::all");else for(let o of s)e.add(`statistics::${o}`);return e}function jr(t,e){return Array.from(e).filter(r=>!t.has(r))}function zr(t,e){return Array.from(t).filter(r=>!e.has(r))}function Ui(t){switch(t.topic){case "perps.trades":return `trades::${t.instrumentId}`;case "perps.bbo":return `bbo::${t.instrumentId}`;case "perps.book":return `book::${t.instrumentId}`;case "perps.candles":return `klines::${t.instrumentId}::${t.interval}`;case "perps.tickers":return t.instrumentId===void 0?"tickers::all":`tickers::${t.instrumentId}`;case "perps.statistics":return t.instrumentId===void 0?"statistics::all":`statistics::${t.instrumentId}`;default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function Qi(t){switch(t.topic){case "perps.trades":return e=>e.topic==="perps.trades"&&e.channel===`trades::${t.instrumentId}`;case "perps.bbo":case "perps.book":return e=>e.topic===t.topic&&e.payload.instrumentId===t.instrumentId;case "perps.candles":return e=>e.topic==="perps.candles"&&e.payload.instrumentId===t.instrumentId&&e.payload.interval===t.interval;case "perps.tickers":case "perps.statistics":return e=>e.topic===t.topic&&(t.instrumentId===void 0||e.payload.instrumentId===t.instrumentId);default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function Yr(t,e){return {...e,quote:r=>t.quote(e,r)}}function Gr(t,e){let r=e.rfqId,s=e.quoteId;return {...e,confirm:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Confirm),decline:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Decline)}}function Jr(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function Zr(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function Xr(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function es(t,e){let r=J(t);return {auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},identity:{maker_address:r.maker,signature_type:r.signatureType,signer_address:r.signer},type:"auth"}}function ts(t,e){return {price_e6:e.price.toString(),rfq_id:t.rfqId,signed_order:e.signedOrder,size_e6:e.size.toString(),type:"RFQ_QUOTE"}}function rs(t,e,r){let s=J(t);return {maker_address:s.maker,quote_id:r,rfq_id:e,signer_address:s.signer,type:"RFQ_QUOTE_CANCEL"}}function ss(t,e,r){return {decision:r,quote_id:e,rfq_id:t,type:"RFQ_CONFIRMATION_RESPONSE"}}var D=class{#e=new Map;#r;constructor(e){this.#r=e;}waitFor(e,r){let s=_i(),n,i=setNonBlockingTimeout(()=>{this.remove(e,n),s.reject(new h(r));},this.#r);n=s.promise.finally(()=>clearTimeout(i));let o=this.#e.get(e)??[];return o.push({...s,promise:n}),this.#e.set(e,o),n}resolve(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.resolve(r));}reject(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.reject(r));}remove(e,r){let s=this.#e.get(e);if(s===void 0)return;let n=s.filter(i=>i.promise!==r);n.length===0?this.#e.delete(e):this.#e.set(e,n);}rejectAll(e){for(let r of this.#e.values())for(let s of r)s.reject(e);this.#e.clear();}};function _i(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var is="0x0000000000000000000000000000000000000000000000000000000000000000";async function as(t){let e=J(t.account),r={builder:is,maker:e.maker,makerAmount:toBaseUnits(Ki(t.orderSide,t.orderPrice,t.size)),metadata:is,salt:zi().toString(),side:ji(t.orderSide),signatureType:e.signatureType,signer:e.signer,takerAmount:toBaseUnits(Vi(t.orderSide,t.orderPrice,t.size)),timestamp:Math.floor(Date.now()/1e3).toString(),tokenId:t.tokenId},s;try{s=await t.signer.signTypedData(dd({domain:os(t),order:r}));}catch(n){throw l.fromError(n,"Could not sign the RFQ quote order.")}return {...r,signature:ed({domain:os(t),order:r,signature:s})}}function os(t){return {chainId:t.chainId,exchange:t.exchange,protocolVersion:"3"}}function Ki(t,e,r){return t===OrderSide.SELL?r.toString():((e*r+999999n)/1000000n).toString()}function Vi(t,e,r){return t===OrderSide.SELL?(e*r/1000000n).toString():r.toString()}function ji(t){return t===OrderSide.BUY?0:1}function zi(){let t=new Uint8Array(8);return globalThis.crypto.getRandomValues(t),BigInt(`0x${Array.from(t,e=>e.toString(16).padStart(2,"0")).join("")}`)}var ds=DecimalishSchema.transform(t=>ms(t)).refine(t=>t<=BigInt(Number.MAX_SAFE_INTEGER),{message:"Value exceeds the temporary numeric wire limit."}),Yi=z.strictObject({price:ds.refine(t=>t<1000000n,{message:"Price must be less than 1."}),size:ds.optional(),source:z.enum(["collateral","inventory"]).default("collateral")});function ps(t){return G(t,Yi)}async function ls(t){let e=t.response.price,r=t.response.size===void 0?Xi(t.request.requestedSize,e):t.response.size,s=await as({account:t.account,chainId:t.chainId,exchange:t.exchange,orderPrice:Ji(t.request,t.response.source,e),orderSide:Zi(t.response.source),signer:t.signer,size:r,tokenId:Gi(t.request,t.response.source)});return {price:e,signedOrder:s,size:r}}function Gi(t,e){return t.direction===RfqDirection.Buy?e==="collateral"?t.noPositionId:t.yesPositionId:e==="collateral"?t.yesPositionId:t.noPositionId}function Ji(t,e,r){return t.direction===RfqDirection.Buy&&e==="collateral"||t.direction===RfqDirection.Sell&&e==="inventory"?1000000n-r:r}function Zi(t){return t==="collateral"?OrderSide.BUY:OrderSide.SELL}function Xi(t,e){let r=ms(t.value);return t.unit===RfqRequestedSizeUnit.Shares?r:r*1000000n/e}function ms(t){let e=/^(\d+)(?:\.(\d*))?$/.exec(t);if(e===null)throw new a("Value must be a valid decimal.");let[,r="",s=""]=e;if(s.length>6)throw new a("Value must have at most 6 decimal places.");let n=BigInt(r)*1000000n+BigInt(s.padEnd(6,"0"));if(n<=0n)throw new a("Value must be greater than 0.");return n}var so=3e4,no=3e4,g=class{#e;#r;#s;#o;#i;#t;#n;#a;#d;#u;#c=false;constructor(e){this.#e=e.account,this.#r=e.chainId,this.#s=e.credentials,this.#o=e.exchange,this.#i=e.headers,this.#t=e.signer,this.#n=e.url;}async connect(){if(this.#c)throw new c("RFQ quoter manager has been shut down.");if(this.#a!==void 0){if(!this.#a.closed)return this.#a;this.#a=void 0;}if(this.#u!==void 0)return this.#u;let e=new Pe({account:this.#e,chainId:this.#r,credentials:this.#s,exchange:this.#o,headers:this.#i,onClose:()=>this.#p(e),signer:this.#t,url:this.#n});this.#d=e;let r;return r=(async()=>{try{if(await e.connect(),this.#c)throw await e.close(),new c("RFQ quoter manager has been shut down.");return this.#a=e,e}catch(s){throw await e.close(),s}finally{this.#u===r&&(this.#u=void 0),this.#d===e&&(this.#d=void 0);}})(),this.#u=r,r}async shutdown(){this.#c=true;let e=this.#a,r=this.#d,s=this.#u;this.#a=void 0,this.#d=void 0,this.#u=void 0,await Promise.allSettled([e?.close(),r?.close(),s?.catch(()=>{})]).then(()=>{});}#p(e){this.#a===e&&(this.#a=void 0),this.#d===e&&(this.#d=void 0);}},Pe=class{#e;#r;#s;#o;#i;#t;#n;#a;#d=new Ed;#u=pushable({objectMode:true});#c=new D(no);#p;#l;constructor(e){this.#e=e.account,this.#r=e.chainId,this.#s=e.credentials,this.#o=e.exchange,this.#i=e.headers,this.#t=e.onClose,this.#n=e.signer,this.#a=e.url;}get closed(){return this.#p!==void 0}async connect(){let e=io();this.#l=e;let r=setNonBlockingTimeout(()=>{e.reject(new c("RFQ quoter authentication timed out."));},so);try{await this.#d.connect({headers:this.#i,onConnectionLost:s=>this.#g(s),onError:()=>{},onMessage:s=>this.#R(s),onOpen:()=>this.#b(),url:this.#a}),await e.promise;}finally{clearTimeout(r),this.#l=void 0;}}async#h(e){if(!this.#d.send(e))throw new c("RFQ quoter websocket is not open.")}async close(){this.#p===void 0&&(this.#p=this.#f()),await this.#p;}[Symbol.asyncIterator](){return this.#u[Symbol.asyncIterator]()}async#f(){let e=new c("RFQ quoter websocket closed.");this.#S(e),this.#u.end(),await this.#d.close(),this.#t();}async#m(e){this.#p===void 0&&(this.#p=this.#y(e)),await this.#p;}async#y(e){this.#S(e),this.#u.end(e),await this.#d.close(),this.#t();}#S(e){this.#l?.reject(e),this.#c.rejectAll(e);}#b(){this.#d.send(es(this.#e,this.#s));}#R(e){if(this.#p!==void 0)return;let r=RfqQuoterInboundMessageSchema.safeParse(e);if(!r.success)return;let s=r.data;switch(s.type){case "auth":this.#P(s);return;case "quote_request":this.#u.push(Yr(this,s));return;case "quote_ack":this.#c.resolve(B(s.rfqId),Jr(s));return;case "quote_cancel_ack":this.#c.resolve(be(s.rfqId,s.quoteId),Zr(s));return;case "confirmation_request":this.#u.push(Gr(this,s));return;case "confirmation_ack":this.#c.resolve(Re(s.rfqId,s.quoteId),Xr(s));return;case "execution_update":this.#u.push(s);return;case "trade":this.#u.push(s);return;case "rfq_error":this.#q(s);return}}#P(e){if(e.success===true){this.#l?.resolve(void 0);return}this.#l?.reject(new c(`RFQ quoter authentication failed: ${e.error}`));}#g(e$1){this.#m(new e("RFQ quoter connection lost.",e$1));}#q(e){if(e.requestType==="RFQ_QUOTE"){if(e.rfqId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(B(e.rfqId),new af(e.message,{code:e.code,errorId:e.errorId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_QUOTE_CANCEL"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(be(e.rfqId,e.quoteId),new cf(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_CONFIRMATION_RESPONSE"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(Re(e.rfqId,e.quoteId),new ef(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));}}async quote(e,r){let s=ps(r),n=await ls({account:this.#e,chainId:this.#r,exchange:this.#o,request:e,response:s,signer:this.#n}),i=this.#c.waitFor(B(e.rfqId),`Timed out waiting for RFQ quote acknowledgement for ${e.rfqId}.`);try{return await this.#h(ts(e,n)),await i}catch(o){throw this.#c.remove(B(e.rfqId),i),o}}async cancelQuote(e){let r=be(e.rfqId,e.quoteId),s=this.#c.waitFor(r,`Timed out waiting for RFQ quote cancellation acknowledgement for ${e.rfqId}.`);try{return await this.#h(rs(this.#e,e.rfqId,e.quoteId)),await s}catch(n){throw this.#c.remove(r,s),n}}async respondToConfirmation(e,r,s){let n=Re(e,r),i=this.#c.waitFor(n,`Timed out waiting for RFQ confirmation acknowledgement for ${e}.`);try{return await this.#h(ss(e,r,s)),await i}catch(o){throw this.#c.remove(n,i),o}}};function B(t){return `ACK_RFQ_QUOTE:${t}`}function be(t,e){return `ACK_RFQ_QUOTE_CANCEL:${t}:${e}`}function Re(t,e){return `ACK_RFQ_CONFIRMATION_RESPONSE:${t}:${e}`}function io(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var q=class{#e;#r;#s;#o=new Ed({heartbeat:new Ad});#i=new Dd;#t=new p({deriveServerState:uo});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:fo(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){try{if((await this.#u()).reusedOpenSocket){let{before:n,after:i}=r,o=ao(n,i);this.#m(o);}}catch(s){throw await this.#a(e),s}}async#a(e){let{before:r,after:s}=this.#t.remove(e),n=co(r,s);this.#y(n),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff(),this.#f();}#p(e){let r=RealtimeEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#S();}#h(){}#f(){this.#m(Array.from(this.#t.serverState().values()));}#m(e){e.length!==0&&this.#o.send(po(e));}#y(e){e.length!==0&&this.#o.send(lo(e));}#S(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};function ao(t,e){return Array.from(e).flatMap(([r,s])=>t.has(r)?[]:[s])}function co(t,e){return Array.from(t).flatMap(([r,s])=>e.has(r)?[]:[s])}function uo(t){let e=new Map;for(let{subscription:r}of t)for(let s of mo(r))e.has(s.key)||e.set(s.key,s);return e}function po(t){return {action:"subscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function lo(t){return {action:"unsubscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function mo(t){switch(t.topic){case "comments":return (t.types??["comment_created"]).map(e=>T("comments",e));case "prices.crypto.binance":return [T("crypto_prices","update")];case "prices.crypto.chainlink":return [T("crypto_prices_chainlink","update")];case "prices.crypto.chainlink.twap":return [T(ho(t.windowSeconds),"update")];case "prices.equity.pyth":return [T("equity_prices","update")];default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}function ho(t){switch(t){case 30:return "crypto_prices_twap_thirty";case 60:return "crypto_prices_twap_sixty";default:invariant(false,`Unknown TWAP window: ${String(t)}`);}}function T(t,e){return {key:`${t}:${e}`,topic:t,type:e}}function fo(t){switch(t.topic){case "comments":return e=>!(e.topic!=="comments"||t.types!==void 0&&t.types.length>0&&!t.types.includes(e.type)||(t.parentEntityId!==void 0||t.parentEntityType!==void 0)&&(!(e.type==="comment_created"||e.type==="comment_removed")||t.parentEntityId!==void 0&&e.payload.parentEntityID!==t.parentEntityId||t.parentEntityType!==void 0&&e.payload.parentEntityType!==t.parentEntityType));case "prices.crypto.binance":return e=>e.topic==="prices.crypto.binance"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink":return e=>e.topic==="prices.crypto.chainlink"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink.twap":return e=>e.topic==="prices.crypto.chainlink.twap"&&e.payload.windowSeconds===t.windowSeconds&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.equity.pyth":return e=>e.topic==="prices.equity.pyth"&&e.payload.symbol.toLowerCase()===t.symbol.toLowerCase()&&(t.types===void 0||t.types.length===0||t.types.includes(e.type));default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}var v=class{#e;#r;#s;#o=new Ed({heartbeat:new Bd});#i=new Dd;#t=new p;constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{entry:r}=this.#t.add(e);return await this.#n(r),m(r.subscriber.queue,()=>this.#a(r))}async#n(e){try{await this.#u();}catch(r){throw await this.#a(e),r}}async#a(e){this.#t.remove(e),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff();}#p(e){let r=SportsResultEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#f();}#h(){}#f(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var W=class{#e;#r;get context(){return this.#e}get decorators(){return this.#r}get environment(){return this.context.environment}get clob(){return this.context.clob}get relayer(){return this.context.relayer}get rpc(){return this.context.rpc}get gamma(){return this.context.gamma}get data(){return this.context.data}get rfq(){return this.context.rfq}get perps(){return this.context.perps}get webSockets(){return this.context.webSockets}get supportsGasless(){return this.context.apiKey?.supportGasless??false}constructor(e){this.#e=e,this.#r=[];}async resolveClobHeaders(e){return this.context.apiKey?.isBuilderKey?this.context.apiKey.authorize(e):Promise.resolve({})}async resolveRelayerHeaders(e){return this.context.apiKey?.supportGasless?this.context.apiKey.authorize(e):Promise.resolve({})}rememberDecorator(e){this.#r.push(e);}},qo=z.object({key:ApiKeySchema,passphrase:z.string(),secret:z.string()}),vo=z.object({wallet:EvmAddressSchema,credentials:qo.optional(),nonce:z.number().int().nonnegative().optional()}).superRefine((t,e)=>{t.credentials!==void 0&&t.nonce!==void 0&&e.addIssue({code:"custom",message:"`credentials` and `nonce` are mutually exclusive.",path:["nonce"]});}).transform(t=>t.credentials!==void 0?{wallet:t.wallet,credentials:t.credentials}:t.nonce!==void 0?{wallet:t.wallet,nonce:t.nonce}:{wallet:t.wallet}),U=class extends W{constructor(e){super({apiKey:e.apiKey,environment:e.environment,data:new yd({headers:e.environment.data.headers,root:e.environment.data.rest}),gamma:new yd({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),clob:new yd({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new yd({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rfq:new yd({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new yd({headers:e.environment.perps.headers,root:e.environment.perps.rest}),rpc:new H({url:e.environment.rpc}),webSockets:{clobMarket:new S({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new q({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new b({headers:e.environment.perps.headers,url:e.environment.perps.ws})}});}isSecureClient(){return false}isPublicClient(){return true}async closeSubscriptions(){await Promise.all([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close()]).then(()=>{});}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}beginAuthentication(e,r){let s=G(e,vo);return Promise.resolve(async function*(){let n=Math.floor(Date.now()/1e3),i=s?.nonce??0,o=expectEvmAddress(yield wa()),A=expectEvmAddress(s.wallet),Ce=I(this.environment,o,A);if(s.credentials!==void 0){let Ee=this.#e(s.credentials,Ce,r);try{if((await gb(Ee)).includes(s.credentials.key))return Ee}catch(x){if(!(x instanceof f$1)||x.status!==401)throw x}}let fs=yield {kind:"signAuthMessage",payload:Tr({address:o,chainId:this.environment.chainId,nonce:i,timestamp:n})},ys=await eb(this,{address:o,nonce:i,signature:expectEvmSignature(fs),timestamp:n});return this.#e(ys,Ce,r)}.call(this))}#e(e,r,s){let n=new Ae({account:r,apiKey:this.context.apiKey,credentials:e,environment:this.environment,signer:s});for(let i of this.decorators)n.extend(i);return n}},Ae=class extends W{#e=false;get context(){return invariant(!this.#e,"This client has ended authentication and can no longer be used."),super.context}endAuthenticationLifecycle(){this.#e=true;}constructor(e){super({account:e.account,credentials:e.credentials,apiKey:e.apiKey,environment:e.environment,signer:e.signer,clob:new yd({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new yd({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rpc:new H({url:e.environment.rpc}),gamma:new yd({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),data:new yd({headers:e.environment.data.headers,root:e.environment.data.rest}),rfq:new yd({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new yd({headers:e.environment.perps.headers,root:e.environment.perps.rest}),secureClob:new yd({headers:e.environment.clob.headers,resolveHeaders:async r=>({...await this.resolveClobHeaders(r),...await this.#r(r)}),root:e.environment.clob.rest}),combos:new yd({headers:e.environment.combos.collateralReturn.headers,resolveHeaders:r=>this.resolveRelayerHeaders(r),root:e.environment.combos.collateralReturn.rest}),webSockets:{clobMarket:new S({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),clobUser:new R({credentials:e.credentials,headers:e.environment.clob.user.headers,url:e.environment.clob.user.ws}),rfqQuoter:new g({account:e.account,chainId:e.environment.chainId,credentials:e.credentials,exchange:e.environment.contracts.exchangeV3,headers:e.environment.combos.headers,signer:e.signer,url:e.environment.combos.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new q({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new b({headers:e.environment.perps.headers,url:e.environment.perps.ws}),perpsSession:new P({chainId:e.environment.chainId,headers:e.environment.perps.headers,restUrl:e.environment.perps.rest,wsUrl:e.environment.perps.ws})}});}get credentials(){return this.context.credentials}get account(){return this.context.account}get signer(){return this.context.signer}get secureClob(){return this.context.secureClob}get combos(){return this.context.combos}get webSockets(){return this.context.webSockets}async closeSubscriptions(){await Promise.allSettled([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close(),this.webSockets.clobUser.close()]).then(()=>{});}isSecureClient(){return true}isPublicClient(){return false}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}async endAuthentication(){let e=this.closeSubscriptions(),r=this.webSockets.perpsSession.shutdown(),s=this.webSockets.rfqQuoter.shutdown(),{apiKey:n,environment:i}=this.context;try{await ib(this);}finally{this.endAuthenticationLifecycle(),await Promise.allSettled([e,r,s]).then(()=>{});}let o=new U({apiKey:n,environment:i});for(let A of this.decorators)o.extend(A);return o}async#r(e){try{let r=Math.floor(Date.now()/1e3);return {POLY_ADDRESS:this.account.signer,POLY_API_KEY:this.credentials.key,POLY_PASSPHRASE:this.credentials.passphrase,POLY_SIGNATURE:await Fr(this.credentials.secret,r,e.method,e.path,e.body),POLY_TIMESTAMP:`${r}`}}catch(r){throw l.fromError(r,"Could not sign the L2-authenticated request")}}};function hs(t={}){return new U({environment:t.environment??le,apiKey:t.apiKey}).extend(Ir)}var Ao=m$1(j,g$1,f$1,l,h,i,c,b$1,a),Co=m$1(a);async function Eo(t){let e=hs({environment:t.environment,apiKey:t.apiKey}),r=await ko(e,t),s=await e.beginAuthentication({wallet:r,credentials:t.credentials,nonce:t.nonce},t.signer).then(va(t.signer));if(s.account.walletType===WalletType.EOA||await Aa(s,{wallet:s.account.wallet,type:s.account.walletType}))return s;if(s.account.walletType===WalletType.DEPOSIT_WALLET)return await To(s),s;throw new a(`Wallet ${s.account.wallet} does not exist. Provide an existing wallet address, or omit wallet to use the default Deposit Wallet flow.`)}async function ko(t,e){if(e.wallet!==void 0)return e.wallet;let r=expectEvmAddress(await e.signer.getAddress()),s=K(r,t.environment.walletDerivation);return await Aa(t,{wallet:s,type:WalletType.DEPOSIT_WALLET})?s:L$1(r,t.environment.walletDerivation)}async function To(t){let e=L$1(t.account.signer,t.environment.walletDerivation);if(!isSameEvmAddress(t.account.wallet,e))throw new a(`Wallet ${t.account.wallet} does not match the expected Deposit Wallet ${e} for this signer, nor a deployed wallet address.`);await(await Da(t)).wait();}
2
- export{Ao as CreateSecureClientError,Co as SetupGaslessWalletError,ie as accountActions,Ir as allActions,oe as analyticsActions,Fr as buildHmacSignature,hs as createPublicClient,Eo as createSecureClient,ae as dataActions,ce as discoveryActions,wi as forkEnvironmentConfig,ue as perpsActions,fc as preproduction,le as production,Ei as relayerApiKey,Ci as remoteBuilderSigning,de as rewardsActions,wr as rfqActions,pe as subscriptionsActions,xr as tradingActions,Mr as walletActions};//# sourceMappingURL=index.js.map
1
+ import {N,X,V,T as T$1,ra,pa,ze,xe,ve as ve$1,te,re,pe as pe$1,zc,xc,vc,qb,na,Lc,Nc,Zc,Wb,Ub,Sb,Qb,Ob,Mb,Kb,Ib,Gb,ub,sb,tc,lc,jc,hc,hf,Sf,Gf,Ef,yf,Qf,Of,Mf,Kf,Bc,Cf,Af,Jc,Hc,Fc,Dc,rc,pc,nc,me as me$1,je,ie as ie$1,le as le$1,la,ja,ha,fa,da,ba,pf,If,R as R$1,P as P$1,Xc,Vc,Tc,Rc,vd,dd,cd,Dd,Bd,zd,xd,ec,ac,ff,af,Te,Wf,Wa,Sa,_a,va,Aa,K,L as L$1,Da,ae as ae$1,_d,Yd,Ud,Sd,Qd,ce as ce$1,Wd,Pc,_b,Yb,H,Ed,G,wa,I,gb,eb,Kd,Id,Jd,Gd,Hd,Fd,ib,Od,if as _if,kf,mf,J,gd,id,kd,jd,hd,ed,fd}from'./chunk-WDPLMZVQ.js';export{Va as ApproveErc1155ForAllError,Ra as ApproveErc20Error,Ld as ArmPerpsAutoCancelError,Uc as CancelAllError,Wc as CancelMarketOrdersError,Qc as CancelOrderError,Sc as CancelOrdersError,fc as CollateralReturnKnownOperationKind,C as CombinatorialPrepareConditionCallError,sa as ComboActivityType,Ae as ComboPositionOutcome,ne as ComboPositionSort,Be as ComboPositionStatus,Ad as CreateLimitOrderError,wd as CreateMarketOrderError,q as CtfRedeemPositionsCallError,ge as DepositToPerpsError,ye as DownloadAccountingSnapshotError,W as DropNotificationsError,b as Erc20ApprovalCallError,m as Erc20TransferCallError,Yc as EstimateMarketPriceError,dc as ExecuteCollateralReturnPlanError,M as FetchClosedOnlyModeError,ic as FetchCommentsByIdError,oc as FetchEventError,sc as FetchEventLiveVolumeError,qc as FetchEventTagsError,Rb as FetchLastTradePriceError,Tb as FetchLastTradePricesError,Gc as FetchMarketError,Ic as FetchMarketTagsError,rb as FetchMidpointError,tb as FetchMidpointsError,U as FetchNotificationsError,Jb as FetchOrderBookError,Lb as FetchOrderBooksError,Q as FetchOrderError,aa as FetchOrderScoringError,ca as FetchOrdersScoringError,Vd as FetchPerpsBookError,be as FetchPerpsFeesError,Pd as FetchPerpsInstrumentsError,Rd as FetchPerpsTickerError,Td as FetchPerpsTickersError,ue as FetchPortfolioValueError,Fb as FetchPriceError,Vb as FetchPriceHistoryError,Hb as FetchPricesError,gf as FetchPublicProfileError,Pf as FetchRelatedTagResourcesError,Nf as FetchRelatedTagsError,ka as FetchRewardPercentagesError,Bf as FetchSeriesError,Ff as FetchSportsMarketTypesError,Nb as FetchSpreadError,Pb as FetchSpreadsError,Lf as FetchTagError,ga as FetchTotalEarningsForUserForDayError,we as FetchTradedMarketCountError,S as ListAccountTradesError,oa as ListActivityError,uc as ListBuilderLeaderboardError,pb as ListBuilderTradesError,wc as ListBuilderVolumeError,qe as ListClosedPositionsError,qa as ListComboActivityError,Ec as ListComboMarketsError,se as ListComboPositionsError,kc as ListCommentsByUserAddressError,gc as ListCommentsError,Xb as ListCurrentRewardsError,mc as ListEventsError,Kc as ListMarketHoldersError,Oc as ListMarketPositionsError,Zb as ListMarketRewardsError,Cc as ListMarketsError,Mc as ListOpenInterestError,O as ListOpenOrdersError,Xd as ListPerpsCandlesError,Zd as ListPerpsFundingHistoryError,$d as ListPerpsTradesError,oe as ListPositionsError,zf as ListSeriesError,Df as ListSportsError,Jf as ListTagsError,Rf as ListTeamsError,yc as ListTraderLeaderboardError,ma as ListTradesError,ia as ListUserEarningsAndMarketsConfigError,ea as ListUserEarningsForDayError,a as MAX_UINT256,t as MergePositionsCallError,Xe as MergePositionsError,y as MergeV2CallError,de as OpenPerpsSessionError,of as OpenRfqSessionError,o as PerpsDepositCallError,Cd as PlaceLimitOrderError,yd as PlaceMarketOrderError,$b as PlanCollateralReturnError,ad as PostOrderError,bd as PostOrdersError,ef as RedeemPositionsError,A as RedeemV2CallError,ee as RevokePerpsCredentialsError,lf as RfqCancelQuoteError,kf as RfqCancelQuoteRejectedError,qf as RfqConfirmationDecision,nf as RfqConfirmationError,mf as RfqConfirmationRejectedError,rf as RfqDirection,sf as RfqExecutionStatus,tf as RfqKnownErrorCode,jf as RfqQuoteError,if as RfqQuoteRejectedError,uf as RfqRequestedSizeUnit,vf as RfqSide,xf as SearchError,wf as SearchSort,Za as SetupTradingApprovalsError,r as SplitPositionCallError,Oe as SplitPositionError,w as SplitV2CallError,Hf as SubscribeError,Vf as TransferErc20Error,Md as UpdatePerpsLeverageError,Nd as UpdatePerpsMarginError,ud as WaitForOrderFillSettlementError,ta as WaitForTransactionError,he as WithdrawFromPerpsError,D as combinatorialPrepareConditionCall,v as ctfRedeemPositionsCall,l as decodeErc1155BalanceOfBatchResult,j as decodeErc1155BalanceOfResult,h as decodeErc1155IsApprovedForAllResult,e as decodeErc20AllowanceResult,E as encodeProxyCall,F as encodeSafeMultisendCall,f as erc1155ApprovalForAllCall,k as erc1155BalanceOfBatchCall,i as erc1155BalanceOfCall,g as erc1155IsApprovedForAllCall,d as erc20AllowanceCall,c as erc20ApprovalCall,n as erc20TransferCall,ua as expectTransactionHandle,u as mergePositionsCall,z as mergeV2Call,p as perpsDepositCall,B as redeemV2Call,s as splitPositionCall,x as splitV2Call}from'./chunk-WDPLMZVQ.js';import {a,n,j,g as g$1,f as f$1,m as m$1,h,i,c,b as b$1,e}from'./chunk-MIRUWWDK.js';export{l as AutoCancelDailyLimitError,j as CancelledSigningError,e as ConnectionLostError,k as InsufficientLiquidityError,g as RateLimitError,f as RequestRejectedError,m as SigningError,h as TimeoutError,i as TransactionFailedError,c as TransportError,b as UnexpectedResponseError,a as UserInputError,d as WebSocketKnownCloseCode,n as makeErrorGuard}from'./chunk-MIRUWWDK.js';import {DecimalishSchema,ApiKeySchema,EvmAddressSchema,toBaseUnits,OrderSide}from'@polymarket/bindings';export{OrderSide,OrderType}from'@polymarket/bindings';export{PriceHistoryInterval,SignatureType}from'@polymarket/bindings/clob';export{ActivityType}from'@polymarket/bindings/data';import {WalletType}from'@polymarket/bindings/gamma';export{WalletType}from'@polymarket/bindings/gamma';export{PerpsDepositStatus,PerpsInstrumentCategory,PerpsInstrumentType,PerpsInternalTransferDirection,PerpsKlineInterval,PerpsKnownWithdrawalStatus,PerpsMarginType,PerpsNotificationOrderType,PerpsNotificationType,PerpsOrderStatus,PerpsSide,PerpsSortDirection,PerpsTimeInForce}from'@polymarket/bindings/perps';import {z}from'zod';import {expectEvmAddress,isSameEvmAddress,expectEvmSignature,invariant,setNonBlockingTimeout}from'@polymarket/types';import {PerpsMarketDataEventSchema,RealtimeEventSchema,SportsResultEventSchema,MarketEventSchema,UserEventSchema}from'@polymarket/bindings/subscriptions';import {pushable}from'it-pushable';import {RfqQuoterInboundMessageSchema,RfqConfirmationDecision,RfqRequestedSizeUnit,RfqDirection}from'@polymarket/bindings/combos';var wi=z.object({POLY_BUILDER_API_KEY:z.string().min(1),POLY_BUILDER_TIMESTAMP:z.string().min(1),POLY_BUILDER_PASSPHRASE:z.string().min(1),POLY_BUILDER_SIGNATURE:z.string().min(1)});function xi(t){return new se(t)}function Mi(t){return new ne(t)}var se=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return true}get supportGasless(){return true}async authorize(e){try{return await this.#s(e)}catch(r){throw m$1.fromError(r,"Could not authorize the builder-authenticated request")}}async#r(){let e=this.#e.headers,r=typeof e=="function"?await e():e,s=new Headers(r);return s.set("content-type","application/json"),s}async#s(e){let r=await fetch(this.#e.url,{body:JSON.stringify({body:e.body,method:e.method,path:e.path}),credentials:this.#e.credentials,headers:await this.#r(),method:"POST",mode:"cors"});if(!r.ok)throw new Error(`Remote signer rejected request with status ${r.status}`);return wi.parse(await r.json())}},ne=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return false}get supportGasless(){return true}authorize(){return Promise.resolve({RELAYER_API_KEY:this.#e.key,RELAYER_API_KEY_ADDRESS:this.#e.address})}};function Ir(t){return {domain:{chainId:t.chainId,name:"ClobAuthDomain",version:"1"},message:{address:t.address,message:"This message attests that I control the given wallet",nonce:t.nonce??0,timestamp:`${t.timestamp}`},primaryType:"ClobAuth",types:{ClobAuth:[{name:"address",type:"address"},{name:"timestamp",type:"string"},{name:"nonce",type:"uint256"},{name:"message",type:"string"}]}}}function Ii(t){return {listPositions:pe$1.bind(null,t),listClosedPositions:re.bind(null,t),listComboPositions:te.bind(null,t),fetchPortfolioValue:ve$1.bind(null,t),fetchTradedMarketCount:xe.bind(null,t),downloadAccountingSnapshot:ze.bind(null,t),listMarketPositions:Pc.bind(null,t),listActivity:pa.bind(null,t),listComboActivity:ra.bind(null,t)}}function f(t,e={}){return {...e,user:e.user??t.account.wallet}}function ie(t){let e=Ii(t);return t.isPublicClient()?e:{...e,listPositions:r=>pe$1(t,f(t,r)),listClosedPositions:r=>re(t,f(t,r)),listComboPositions:r=>te(t,f(t,r)),fetchPortfolioValue:r=>ve$1(t,f(t,r)),fetchTradedMarketCount:r=>xe(t,f(t,r)),downloadAccountingSnapshot:r=>ze(t,f(t,r)),listActivity:r=>pa(t,f(t,r)),listComboActivity:r=>ra(t,f(t,r)),listAccountTrades:T$1.bind(null,t),fetchNotifications:V.bind(null,t),dropNotifications:X.bind(null,t),fetchClosedOnlyMode:N.bind(null,t)}}function oe(t){return {listBuilderTrades:qb.bind(null,t),listBuilderLeaderboard:vc.bind(null,t),fetchBuilderVolume:xc.bind(null,t),listTraderLeaderboard:zc.bind(null,t)}}function ae(t){return {fetchEventLiveVolume:tc.bind(null,t),fetchMidpoint:sb.bind(null,t),fetchMidpoints:ub.bind(null,t),fetchPrice:Gb.bind(null,t),fetchPrices:Ib.bind(null,t),fetchOrderBook:Kb.bind(null,t),fetchOrderBooks:Mb.bind(null,t),fetchSpread:Ob.bind(null,t),fetchSpreads:Qb.bind(null,t),fetchLastTradePrice:Sb.bind(null,t),fetchLastTradePrices:Ub.bind(null,t),fetchPriceHistory:Wb.bind(null,t),estimateMarketPrice:Zc.bind(null,t),listOpenInterest:Nc.bind(null,t),listMarketHolders:Lc.bind(null,t),listTrades:na.bind(null,t)}}function ce(t){return {listEvents:nc.bind(null,t),fetchEvent:pc.bind(null,t),fetchEventTags:rc.bind(null,t),listMarkets:Dc.bind(null,t),listComboMarkets:Fc.bind(null,t),fetchMarket:Hc.bind(null,t),fetchMarketTags:Jc.bind(null,t),listSeries:Af.bind(null,t),fetchSeries:Cf.bind(null,t),listMarketClarifications:Bc.bind(null,t),listTags:Kf.bind(null,t),fetchTag:Mf.bind(null,t),fetchRelatedTags:Of.bind(null,t),fetchRelatedTagResources:Qf.bind(null,t),search:yf.bind(null,t),listSports:Ef.bind(null,t),fetchSportsMarketTypes:Gf.bind(null,t),listTeams:Sf.bind(null,t),fetchPublicProfile:hf.bind(null,t),listComments:hc.bind(null,t),fetchCommentsById:jc.bind(null,t),listCommentsByUserAddress:lc.bind(null,t)}}function ue(t){let e={fetchPerpsBook:r=>Wd(t,r),fetchPerpsFees:()=>ce$1(t),fetchPerpsInstruments:r=>Qd(t,r),fetchPerpsTicker:r=>Sd(t,r),fetchPerpsTickers:r=>Ud(t,r),listPerpsCandles:r=>Yd(t,r),listPerpsFundingHistory:r=>_d(t,r),listPerpsTrades:r=>ae$1(t,r)};return t.isSecureClient()?{...e,depositToPerps:r=>le$1(t,r),openPerpsSession:r=>ie$1(t,r),revokePerpsCredentials:r=>je(t,r),withdrawFromPerps:r=>me$1(t,r)}:e}function Oi(t){return {listCurrentRewards:Yb.bind(null,t),listMarketRewards:_b.bind(null,t)}}function de(t){let e=Oi(t);return t.isPublicClient()?e:{...e,fetchOrderScoring:ba.bind(null,t),fetchOrdersScoring:da.bind(null,t),listUserEarningsForDay:fa.bind(null,t),fetchTotalEarningsForUserForDay:ha.bind(null,t),listUserEarningsAndMarketsConfig:ja.bind(null,t),fetchRewardPercentages:la.bind(null,t)}}function Or(t){return {openRfqSession(){return pf(t)}}}function pe(t){return t.isSecureClient()?{subscribe(e){return If(t,e)}}:{subscribe(e){return If(t,e)}}}function Fr(t){return {createMarketOrder:xd.bind(null,t),placeMarketOrder:zd.bind(null,t),createLimitOrder:Bd.bind(null,t),placeLimitOrder:Dd.bind(null,t),postOrder:cd(t),postOrders:dd(t),waitForOrderFillSettlement:vd.bind(null,t),cancelOrder:Rc.bind(null,t),cancelOrders:Tc.bind(null,t),cancelAll:Vc.bind(null,t),cancelMarketOrders:Xc.bind(null,t),listOpenOrders:P$1.bind(null,t),fetchOrder:R$1.bind(null,t)}}function Lr(t){return {setupTradingApprovals:_a.bind(null,t),approveErc20:Sa.bind(null,t),approveErc1155ForAll:Wa.bind(null,t),transferErc20:Wf.bind(null,t),splitPosition:Te.bind(null,t),mergePositions:af.bind(null,t),redeemPositions:ff.bind(null,t),planCollateralReturn:ac.bind(null,t),executeCollateralReturnPlan:ec.bind(null,t)}}function Dr(t){return t.isSecureClient()?{...ie(t),...oe(t),...ae(t),...ce(t),...ue(t),...de(t),...Or(t),...pe(t),...Fr(t),...Lr(t)}:{...ie(t),...oe(t),...ae(t),...ce(t),...ue(t),...de(t),...pe(t)}}var le={name:"production",chainId:137,rpc:"https://polygon.drpc.org",walletDerivation:{depositWalletFactory:expectEvmAddress("0x00000000000Fb5C9ADea0298D729A0CB3823Cc07"),depositWalletBeacon:expectEvmAddress("0x7A18EDfe055488A3128f01F563e5B479D92ffc3a"),depositWalletImplementation:expectEvmAddress("0x58CA52ebe0DadfdF531Cde7062e76746de4Db1eB"),proxyFactory:expectEvmAddress("0xaB45c5A4B0c941a2F231C04C3f49182e1A254052"),proxyImplementation:expectEvmAddress("0x44e999d5c2F66Ef0861317f9A4805AC2e90aEB4f"),safeFactory:expectEvmAddress("0xaacFeEa03eb1561C4e67d661e40682Bd20E3541b"),safeInitCodeHash:"0x2bce2127ff07fb632d16c8347c4ebf501f4841168bed00d9e6ef715ddb6fcecf"},contracts:{collateralToken:expectEvmAddress("0xC011a7E12a19f7B1f670d46F03B03f3342E82DFB"),conditionalTokens:expectEvmAddress("0x4D97DCd97eC945f40cF65F87097ACe5EA0476045"),negRiskAdapter:expectEvmAddress("0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296"),collateralAdapter:expectEvmAddress("0xAdA100Db00Ca00073811820692005400218FcE1f"),negRiskCollateralAdapter:expectEvmAddress("0xadA2005600Dec949baf300f4C6120000bDB6eAab"),standardExchange:expectEvmAddress("0xE111180000d2663C0091e4f400237545B87B996B"),negRiskExchange:expectEvmAddress("0xe2222d279d744050d28e00520010520000310F59"),exchangeV3:expectEvmAddress("0xe3333700cA9d93003F00f0F71f8515005F6c00Aa"),protocolV2Router:expectEvmAddress("0x12121212006e4CD160D18e3f00711DA5c3372600"),combinatorialModule:expectEvmAddress("0x30000034706c7d8e12009dab006be20000c031a8"),positionManager:expectEvmAddress("0x006F54F7f9A22e0000CC2AB60031000000ae9fEF"),autoRedeemOperator:expectEvmAddress("0xa1200000d0002264C9a1698e001292D00E1b00af"),safeMultisend:expectEvmAddress("0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761"),relayHub:expectEvmAddress("0xD216153c06E857cD7f72665E0aF1d7D82172F494"),perpsDepositContract:expectEvmAddress("0xDCa4af75705dbB50f62437045afF9921947917d2")},clob:{rest:"https://clob.polymarket.com",market:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/market"},user:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/user"}},relayer:{rest:"https://relayer-v2.polymarket.com"},gamma:{rest:"https://gamma-api.polymarket.com"},data:{rest:"https://data-api.polymarket.com"},combos:{rest:"https://combos-rfq-api.polymarket.com",ws:"wss://combos-rfq-gateway-quoter.polymarket.com/ws/rfq",collateralReturn:{rest:"https://combos-rfq-collateral-return.polymarket.com"}},perps:{rest:"https://api.perpetuals.polymarket.com",ws:"wss://ws.perpetuals.polymarket.com/v1/ws"},rtds:{ws:"wss://ws-live-data.polymarket.com"},sports:{ws:"wss://sports-api.polymarket.com/ws"},relayerMaxPolls:100,relayerPollFrequencyMs:2e3};function Fi(t,e=le){return {...e,...t,walletDerivation:{...e.walletDerivation,...t.walletDerivation},contracts:{...e.contracts,...t.contracts},clob:{...k(e.clob,t.clob),market:F(e.clob.market,t.clob?.market),user:F(e.clob.user,t.clob?.user)},relayer:k(e.relayer,t.relayer),gamma:k(e.gamma,t.gamma),data:k(e.data,t.data),combos:{...Br(e.combos,t.combos),collateralReturn:k(e.combos.collateralReturn,t.combos?.collateralReturn)},perps:Br(e.perps,t.perps),rtds:F(e.rtds,t.rtds),sports:F(e.sports,t.sports)}}function k(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function F(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function Br(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function me(t,e){if(!(t===void 0&&e===void 0))return {...t,...e}}var Sc=Fi({name:"preproduction",clob:{rest:"https://clob-preprod-int-v2.polymarket.com"},data:{rest:"https://data-api-preprod-int.polymarket.com"},gamma:{rest:"https://gamma-api-preprod-int.polymarket.com"},relayer:{rest:"https://relayer-v2-preprod-int.polymarket.com"}});async function Wr(t,e,r,s,n){let i=`${e}${r}${s}`;n!==void 0&&(i+=n);let o=await globalThis.crypto.subtle.importKey("raw",Li(t),{name:"HMAC",hash:"SHA-256"},false,["sign"]),A=await globalThis.crypto.subtle.sign("HMAC",o,new TextEncoder().encode(i));return Bi(Di(A))}function Li(t){let e=t.replace(/-/g,"+").replace(/_/g,"/").replace(/[^A-Za-z0-9+/=]/g,""),r=atob(e),s=new Uint8Array(r.length);for(let n=0;n<r.length;n+=1)s[n]=r.charCodeAt(n);return s.buffer}function Di(t){let e=new Uint8Array(t),r="";for(let s of e)r+=String.fromCharCode(s);return btoa(r)}function Bi(t){return t.replace(/\+/g,"-").replace(/\//g,"_")}function m(t,e){let r;return {close:()=>(r===void 0&&(r=Promise.resolve(t.return()).then(()=>e())),r),[Symbol.asyncIterator](){return t[Symbol.asyncIterator]()}}}var p=class{#e=new Set;#r;constructor(e){this.#r=e?.deriveServerState??(()=>{});}add(e,r={}){let s={queue:pushable({objectMode:true})};r.matches!==void 0&&(s.matches=r.matches);let n={subscription:e,subscriber:s};return {change:this.#s(n),entry:n}}#s(e){let r=this.serverState();return this.#e.add(e),{before:r,after:this.serverState()}}remove(e){let r=this.serverState();return this.#e.delete(e),e.subscriber.queue.end(),{before:r,after:this.serverState()}}dispatch(e){for(let{subscriber:r}of this.#e)(r.matches===void 0||r.matches(e))&&r.queue.push(e);}hasActiveSubscriptions(){return this.#e.size>0}endAll(e){for(let{subscriber:r}of this.#e)r.queue.end(e);this.#e.clear();}serverState(){return this.#r(this.#e)}};function he(t,e,r){let s=L(r.assetsIds,e.assetsIds),n=L(e.assetsIds,r.assetsIds);s.length>0&&t(Ur(s,r.customFeatureEnabled));let i=r.assetsIds[0];s.length===0&&e.customFeatureEnabled!==r.customFeatureEnabled&&i!==void 0&&t(Ur([i],r.customFeatureEnabled)),n.length>0&&t(Ui(n));}function fe(t,e,r){if(r.includeAllMarkets){!e.includeAllMarkets&&e.markets.length>0&&t(Hr(e.markets));return}if(e.includeAllMarkets){r.markets.length>0&&t(Qr(r.markets));return}let s=L(r.markets,e.markets),n=L(e.markets,r.markets);s.length>0&&t(Qr(s)),n.length>0&&t(Hr(n));}function _r(t){let e=new Set,r=false;for(let{subscription:s}of t){for(let n of s.tokenIds)e.add(n);r||=s.customFeatureEnabled===true;}return {assetsIds:Array.from(e),customFeatureEnabled:r}}function Kr(t){let e=false,r=new Set;for(let{subscription:s}of t){if(Nr(s)){e=true;continue}for(let n of s.markets??[])r.add(n);}return {includeAllMarkets:e,markets:e?[]:Array.from(r)}}function Vr(t){return {assets_ids:t.assetsIds,custom_feature_enabled:t.customFeatureEnabled,type:"market"}}function Ur(t,e){return {assets_ids:t,custom_feature_enabled:e,operation:"subscribe"}}function Ui(t){return {assets_ids:t,operation:"unsubscribe"}}function zr(t,e){let r={auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},type:"user"};return t.includeAllMarkets||(r.markets=t.markets),r}function Qr(t){return {markets:t,operation:"subscribe"}}function Hr(t){return {markets:t,operation:"unsubscribe"}}function jr(t){return e=>{switch(e.type){case "price_change":return e.payload.priceChanges.some(r=>t.tokenIds.includes(r.tokenId));case "new_market":return t.customFeatureEnabled===true;case "market_resolved":return t.customFeatureEnabled===true&&(e.payload.tokenIds??[]).some(r=>t.tokenIds.includes(r));case "best_bid_ask":return t.customFeatureEnabled===true&&t.tokenIds.includes(e.payload.tokenId);default:return t.tokenIds.includes(e.payload.tokenId)}}}function $r(t){if(Nr(t))return ()=>true;let e=new Set((t.markets??[]).map(r=>r.toLowerCase()));return r=>e.has(r.payload.market.toLowerCase())}function Nr(t){return (t.markets?.length??0)===0}function L(t,e){let r=new Set(e);return t.filter(s=>!r.has(s))}var S=class{#e;#r;#s;#o=new Kd({heartbeat:new Fd});#i=new Jd;#t=new p({deriveServerState:_r});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:jr(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){let{before:s,after:n}=r;try{(await this.#u()).reusedOpenSocket&&he(o=>this.#o.send(o),s,n);}catch(i){throw await this.#a(e),i}}async#a(e){let{before:r,after:s}=this.#t.remove(e);if(!this.#t.hasActiveSubscriptions()){await this.close();return}he(n=>this.#o.send(n),r,s);}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff(),this.#f();}#p(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=MarketEventSchema.safeParse(s);n.success&&this.#t.dispatch(n.data);}}#l(){this.#t.hasActiveSubscriptions()&&this.#m();}#h(){}#f(){this.#o.send(Vr(this.#t.serverState()));}#m(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var R=class{#e;#r;#s;#o;#i=new Kd({heartbeat:new Fd});#t=new Jd;#n=new p({deriveServerState:Kr});constructor(e){this.#e=e.credentials,this.#r=e.headers,this.#s=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:$r(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){let{before:s,after:n}=r;try{(await this.#c()).reusedOpenSocket&&fe(o=>this.#i.send(o),s,n);}catch(i){throw await this.#d(e),i}}async#d(e){let{before:r,after:s}=this.#n.remove(e);if(!this.#n.hasActiveSubscriptions()){await this.close();return}fe(n=>this.#i.send(n),r,s);}async close(){this.#o===void 0&&(this.#o=this.#u().finally(()=>{this.#o=void 0;})),await this.#o;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#i.close();}#c(){return this.#i.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:e=>this.#p(e),prepare:()=>this.#e,headers:this.#r,url:this.#s})}#p(e){this.#t.resetBackoff(),this.#m(e);}#l(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=UserEventSchema.safeParse(s);n.success&&this.#n.dispatch(n.data);}}#h(){this.#n.hasActiveSubscriptions()&&this.#y();}#f(){}#m(e){this.#i.send(zr(this.#n.serverState(),e));}#y(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};var P=class{#e;#r;#s;#o;#i=new Set;#t=new Set;#n=new Set;#a=false;constructor(e){this.#e=e.chainId,this.#r=e.headers,this.#s=e.restUrl,this.#o=e.wsUrl;}connect(e){if(this.#a)return Promise.reject(new c("Perps session manager has been shut down."));let r=new Od({chainId:this.#e,credentials:e,headers:this.#r,onClose:n=>this.#d(n),restUrl:this.#s,wsUrl:this.#o});this.#t.add(r);let s;return s=(async()=>{try{if(await r.connect(),this.#a)throw await r.close(),new c("Perps session manager has been shut down.");return this.#i.add(r),r}catch(n){throw await r.close(),n}finally{this.#n.delete(s),this.#t.delete(r);}})(),this.#n.add(s),s}async shutdown(){this.#a=true;let e=Array.from(this.#i),r=Array.from(this.#t),s=Array.from(this.#n);this.#i.clear(),this.#t.clear(),this.#n.clear(),await Promise.allSettled([...e.map(n=>n.close()),...r.map(n=>n.close()),...s.map(n=>n.catch(()=>{}))]).then(()=>{});}#d(e){this.#i.delete(e),this.#t.delete(e);}};var b=class{#e;#r;#s;#o=1;#i=new Kd({heartbeat:new Id});#t=new Jd;#n=new p({deriveServerState:Ki});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:zi(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){try{(await this.#c()).reusedOpenSocket&&(this.#m(Yr(r.before,r.after)),this.#y(Gr(r.before,r.after)));}catch(s){throw await this.#d(e),s}}async#d(e){let{before:r,after:s}=this.#n.remove(e);this.#m(Yr(r,s)),this.#y(Gr(r,s)),this.#n.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#u().finally(()=>{this.#s=void 0;})),await this.#s;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#i.close();}#c(){return this.#i.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:()=>this.#p(),headers:this.#e,url:this.#r})}#p(){this.#t.resetBackoff(),this.#m(Array.from(this.#n.serverState()));}#l(e){let r=PerpsMarketDataEventSchema.safeParse(e);r.success&&this.#n.dispatch(r.data);}#h(){this.#n.hasActiveSubscriptions()&&this.#b();}#f(){}#m(e){e.length!==0&&this.#i.send(this.#S("sub",e));}#y(e){e.length!==0&&this.#i.send(this.#S("unsub",e));}#S(e,r){return {id:this.#o++,req:e,chs:r}}#b(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};function Ki(t){let e=new Set,r=new Set,s=new Set,n=false,i=false;for(let{subscription:o}of t)switch(o.topic){case "perps.tickers":o.instrumentId===void 0?n=true:r.add(o.instrumentId);break;case "perps.statistics":o.instrumentId===void 0?i=true:s.add(o.instrumentId);break;default:e.add(Vi(o));}if(n)e.add("tickers::all");else for(let o of r)e.add(`tickers::${o}`);if(i)e.add("statistics::all");else for(let o of s)e.add(`statistics::${o}`);return e}function Yr(t,e){return Array.from(e).filter(r=>!t.has(r))}function Gr(t,e){return Array.from(t).filter(r=>!e.has(r))}function Vi(t){switch(t.topic){case "perps.trades":return `trades::${t.instrumentId}`;case "perps.bbo":return `bbo::${t.instrumentId}`;case "perps.book":return `book::${t.instrumentId}`;case "perps.candles":return `klines::${t.instrumentId}::${t.interval}`;case "perps.tickers":return t.instrumentId===void 0?"tickers::all":`tickers::${t.instrumentId}`;case "perps.statistics":return t.instrumentId===void 0?"statistics::all":`statistics::${t.instrumentId}`;default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function zi(t){switch(t.topic){case "perps.trades":return e=>e.topic==="perps.trades"&&e.channel===`trades::${t.instrumentId}`;case "perps.bbo":case "perps.book":return e=>e.topic===t.topic&&e.payload.instrumentId===t.instrumentId;case "perps.candles":return e=>e.topic==="perps.candles"&&e.payload.instrumentId===t.instrumentId&&e.payload.interval===t.interval;case "perps.tickers":case "perps.statistics":return e=>e.topic===t.topic&&(t.instrumentId===void 0||e.payload.instrumentId===t.instrumentId);default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function Xr(t,e){return {...e,quote:r=>t.quote(e,r)}}function es(t,e){let r=e.rfqId,s=e.quoteId;return {...e,confirm:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Confirm),decline:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Decline)}}function ts(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function rs(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function ss(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function ns(t,e){let r=J(t);return {auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},identity:{maker_address:r.maker,signature_type:r.signatureType,signer_address:r.signer},type:"auth"}}function is(t,e){return {price_e6:e.price.toString(),rfq_id:t.rfqId,signed_order:e.signedOrder,size_e6:e.size.toString(),type:"RFQ_QUOTE"}}function os(t,e,r){let s=J(t);return {maker_address:s.maker,quote_id:r,rfq_id:e,signer_address:s.signer,type:"RFQ_QUOTE_CANCEL"}}function as(t,e,r){return {decision:r,quote_id:e,rfq_id:t,type:"RFQ_CONFIRMATION_RESPONSE"}}var D=class{#e=new Map;#r;constructor(e){this.#r=e;}waitFor(e,r){let s=$i(),n,i=setNonBlockingTimeout(()=>{this.remove(e,n),s.reject(new h(r));},this.#r);n=s.promise.finally(()=>clearTimeout(i));let o=this.#e.get(e)??[];return o.push({...s,promise:n}),this.#e.set(e,o),n}resolve(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.resolve(r));}reject(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.reject(r));}remove(e,r){let s=this.#e.get(e);if(s===void 0)return;let n=s.filter(i=>i.promise!==r);n.length===0?this.#e.delete(e):this.#e.set(e,n);}rejectAll(e){for(let r of this.#e.values())for(let s of r)s.reject(e);this.#e.clear();}};function $i(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var us="0x0000000000000000000000000000000000000000000000000000000000000000";async function ds(t){let e=J(t.account),r=gd({chainId:t.chainId,exchange:t.exchange}),s={builder:us,maker:e.maker,makerAmount:toBaseUnits(hd(t.orderSide,t.orderPrice,t.size)),metadata:us,salt:jd().toString(),side:kd(t.orderSide),signatureType:e.signatureType,signer:e.signer,takerAmount:toBaseUnits(id(t.orderSide,t.orderPrice,t.size)),timestamp:Math.floor(Date.now()/1e3).toString(),tokenId:t.tokenId},n;try{n=await t.signer.signTypedData(ed({domain:r,order:s}));}catch(i){throw m$1.fromError(i,"Could not sign the RFQ quote order.")}return {...s,signature:fd({domain:r,order:s,signature:n})}}var ms=DecimalishSchema.transform(t=>ys(t)).refine(t=>t<=BigInt(Number.MAX_SAFE_INTEGER),{message:"Value exceeds the temporary numeric wire limit."}),Gi=z.strictObject({price:ms.refine(t=>t<1000000n,{message:"Price must be less than 1."}),size:ms.optional(),source:z.enum(["collateral","inventory"]).default("collateral")});function hs(t){return G(t,Gi)}async function fs(t){let e=t.response.price,r=t.response.size===void 0?eo(t.request.requestedSize,e):t.response.size,s=await ds({account:t.account,chainId:t.chainId,exchange:t.exchange,orderPrice:Zi(t.request,t.response.source,e),orderSide:Xi(t.response.source),signer:t.signer,size:r,tokenId:Ji(t.request,t.response.source)});return {price:e,signedOrder:s,size:r}}function Ji(t,e){return t.direction===RfqDirection.Buy?e==="collateral"?t.noPositionId:t.yesPositionId:e==="collateral"?t.yesPositionId:t.noPositionId}function Zi(t,e,r){return t.direction===RfqDirection.Buy&&e==="collateral"||t.direction===RfqDirection.Sell&&e==="inventory"?1000000n-r:r}function Xi(t){return t==="collateral"?OrderSide.BUY:OrderSide.SELL}function eo(t,e){let r=ys(t.value);return t.unit===RfqRequestedSizeUnit.Shares?r:r*1000000n/e}function ys(t){let e=/^(\d+)(?:\.(\d*))?$/.exec(t);if(e===null)throw new a("Value must be a valid decimal.");let[,r="",s=""]=e;if(s.length>6)throw new a("Value must have at most 6 decimal places.");let n=BigInt(r)*1000000n+BigInt(s.padEnd(6,"0"));if(n<=0n)throw new a("Value must be greater than 0.");return n}var no=3e4,io=3e4,g=class{#e;#r;#s;#o;#i;#t;#n;#a;#d;#u;#c=false;constructor(e){this.#e=e.account,this.#r=e.chainId,this.#s=e.credentials,this.#o=e.exchange,this.#i=e.headers,this.#t=e.signer,this.#n=e.url;}async connect(){if(this.#c)throw new c("RFQ quoter manager has been shut down.");if(this.#a!==void 0){if(!this.#a.closed)return this.#a;this.#a=void 0;}if(this.#u!==void 0)return this.#u;let e=new Re({account:this.#e,chainId:this.#r,credentials:this.#s,exchange:this.#o,headers:this.#i,onClose:()=>this.#p(e),signer:this.#t,url:this.#n});this.#d=e;let r;return r=(async()=>{try{if(await e.connect(),this.#c)throw await e.close(),new c("RFQ quoter manager has been shut down.");return this.#a=e,e}catch(s){throw await e.close(),s}finally{this.#u===r&&(this.#u=void 0),this.#d===e&&(this.#d=void 0);}})(),this.#u=r,r}async shutdown(){this.#c=true;let e=this.#a,r=this.#d,s=this.#u;this.#a=void 0,this.#d=void 0,this.#u=void 0,await Promise.allSettled([e?.close(),r?.close(),s?.catch(()=>{})]).then(()=>{});}#p(e){this.#a===e&&(this.#a=void 0),this.#d===e&&(this.#d=void 0);}},Re=class{#e;#r;#s;#o;#i;#t;#n;#a;#d=new Kd;#u=pushable({objectMode:true});#c=new D(io);#p;#l;constructor(e){this.#e=e.account,this.#r=e.chainId,this.#s=e.credentials,this.#o=e.exchange,this.#i=e.headers,this.#t=e.onClose,this.#n=e.signer,this.#a=e.url;}get closed(){return this.#p!==void 0}async connect(){let e=oo();this.#l=e;let r=setNonBlockingTimeout(()=>{e.reject(new c("RFQ quoter authentication timed out."));},no);try{await this.#d.connect({headers:this.#i,onConnectionLost:s=>this.#g(s),onError:()=>{},onMessage:s=>this.#R(s),onOpen:()=>this.#b(),url:this.#a}),await e.promise;}finally{clearTimeout(r),this.#l=void 0;}}async#h(e){if(!this.#d.send(e))throw new c("RFQ quoter websocket is not open.")}async close(){this.#p===void 0&&(this.#p=this.#f()),await this.#p;}[Symbol.asyncIterator](){return this.#u[Symbol.asyncIterator]()}async#f(){let e=new c("RFQ quoter websocket closed.");this.#S(e),this.#u.end(),await this.#d.close(),this.#t();}async#m(e){this.#p===void 0&&(this.#p=this.#y(e)),await this.#p;}async#y(e){this.#S(e),this.#u.end(e),await this.#d.close(),this.#t();}#S(e){this.#l?.reject(e),this.#c.rejectAll(e);}#b(){this.#d.send(ns(this.#e,this.#s));}#R(e){if(this.#p!==void 0)return;let r=RfqQuoterInboundMessageSchema.safeParse(e);if(!r.success)return;let s=r.data;switch(s.type){case "auth":this.#P(s);return;case "quote_request":this.#u.push(Xr(this,s));return;case "quote_ack":this.#c.resolve(B(s.rfqId),ts(s));return;case "quote_cancel_ack":this.#c.resolve(Se(s.rfqId,s.quoteId),rs(s));return;case "confirmation_request":this.#u.push(es(this,s));return;case "confirmation_ack":this.#c.resolve(be(s.rfqId,s.quoteId),ss(s));return;case "execution_update":this.#u.push(s);return;case "trade":this.#u.push(s);return;case "rfq_error":this.#q(s);return}}#P(e){if(e.success===true){this.#l?.resolve(void 0);return}this.#l?.reject(new c(`RFQ quoter authentication failed: ${e.error}`));}#g(e$1){this.#m(new e("RFQ quoter connection lost.",e$1));}#q(e){if(e.requestType==="RFQ_QUOTE"){if(e.rfqId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(B(e.rfqId),new _if(e.message,{code:e.code,errorId:e.errorId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_QUOTE_CANCEL"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(Se(e.rfqId,e.quoteId),new kf(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_CONFIRMATION_RESPONSE"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(be(e.rfqId,e.quoteId),new mf(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));}}async quote(e,r){let s=hs(r),n=await fs({account:this.#e,chainId:this.#r,exchange:this.#o,request:e,response:s,signer:this.#n}),i=this.#c.waitFor(B(e.rfqId),`Timed out waiting for RFQ quote acknowledgement for ${e.rfqId}.`);try{return await this.#h(is(e,n)),await i}catch(o){throw this.#c.remove(B(e.rfqId),i),o}}async cancelQuote(e){let r=Se(e.rfqId,e.quoteId),s=this.#c.waitFor(r,`Timed out waiting for RFQ quote cancellation acknowledgement for ${e.rfqId}.`);try{return await this.#h(os(this.#e,e.rfqId,e.quoteId)),await s}catch(n){throw this.#c.remove(r,s),n}}async respondToConfirmation(e,r,s){let n=be(e,r),i=this.#c.waitFor(n,`Timed out waiting for RFQ confirmation acknowledgement for ${e}.`);try{return await this.#h(as(e,r,s)),await i}catch(o){throw this.#c.remove(n,i),o}}};function B(t){return `ACK_RFQ_QUOTE:${t}`}function Se(t,e){return `ACK_RFQ_QUOTE_CANCEL:${t}:${e}`}function be(t,e){return `ACK_RFQ_CONFIRMATION_RESPONSE:${t}:${e}`}function oo(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var q=class{#e;#r;#s;#o=new Kd({heartbeat:new Gd});#i=new Jd;#t=new p({deriveServerState:po});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:yo(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){try{if((await this.#u()).reusedOpenSocket){let{before:n,after:i}=r,o=co(n,i);this.#m(o);}}catch(s){throw await this.#a(e),s}}async#a(e){let{before:r,after:s}=this.#t.remove(e),n=uo(r,s);this.#y(n),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff(),this.#f();}#p(e){let r=RealtimeEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#S();}#h(){}#f(){this.#m(Array.from(this.#t.serverState().values()));}#m(e){e.length!==0&&this.#o.send(lo(e));}#y(e){e.length!==0&&this.#o.send(mo(e));}#S(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};function co(t,e){return Array.from(e).flatMap(([r,s])=>t.has(r)?[]:[s])}function uo(t,e){return Array.from(t).flatMap(([r,s])=>e.has(r)?[]:[s])}function po(t){let e=new Map;for(let{subscription:r}of t)for(let s of ho(r))e.has(s.key)||e.set(s.key,s);return e}function lo(t){return {action:"subscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function mo(t){return {action:"unsubscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function ho(t){switch(t.topic){case "comments":return (t.types??["comment_created"]).map(e=>T("comments",e));case "prices.crypto.binance":return [T("crypto_prices","update")];case "prices.crypto.chainlink":return [T("crypto_prices_chainlink","update")];case "prices.crypto.chainlink.twap":return [T(fo(t.windowSeconds),"update")];case "prices.equity.pyth":return [T("equity_prices","update")];default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}function fo(t){switch(t){case 30:return "crypto_prices_twap_thirty";case 60:return "crypto_prices_twap_sixty";default:invariant(false,`Unknown TWAP window: ${String(t)}`);}}function T(t,e){return {key:`${t}:${e}`,topic:t,type:e}}function yo(t){switch(t.topic){case "comments":return e=>!(e.topic!=="comments"||t.types!==void 0&&t.types.length>0&&!t.types.includes(e.type)||(t.parentEntityId!==void 0||t.parentEntityType!==void 0)&&(!(e.type==="comment_created"||e.type==="comment_removed")||t.parentEntityId!==void 0&&e.payload.parentEntityID!==t.parentEntityId||t.parentEntityType!==void 0&&e.payload.parentEntityType!==t.parentEntityType));case "prices.crypto.binance":return e=>e.topic==="prices.crypto.binance"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink":return e=>e.topic==="prices.crypto.chainlink"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink.twap":return e=>e.topic==="prices.crypto.chainlink.twap"&&e.payload.windowSeconds===t.windowSeconds&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.equity.pyth":return e=>e.topic==="prices.equity.pyth"&&e.payload.symbol.toLowerCase()===t.symbol.toLowerCase()&&(t.types===void 0||t.types.length===0||t.types.includes(e.type));default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}var v=class{#e;#r;#s;#o=new Kd({heartbeat:new Hd});#i=new Jd;#t=new p;constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{entry:r}=this.#t.add(e);return await this.#n(r),m(r.subscriber.queue,()=>this.#a(r))}async#n(e){try{await this.#u();}catch(r){throw await this.#a(e),r}}async#a(e){this.#t.remove(e),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff();}#p(e){let r=SportsResultEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#f();}#h(){}#f(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var W=class{#e;#r;get context(){return this.#e}get decorators(){return this.#r}get environment(){return this.context.environment}get clob(){return this.context.clob}get relayer(){return this.context.relayer}get rpc(){return this.context.rpc}get gamma(){return this.context.gamma}get data(){return this.context.data}get rfq(){return this.context.rfq}get perps(){return this.context.perps}get webSockets(){return this.context.webSockets}get supportsGasless(){return this.context.apiKey?.supportGasless??false}constructor(e){this.#e=e,this.#r=[];}async resolveClobHeaders(e){return this.context.apiKey?.isBuilderKey?this.context.apiKey.authorize(e):Promise.resolve({})}async resolveRelayerHeaders(e){return this.context.apiKey?.supportGasless?this.context.apiKey.authorize(e):Promise.resolve({})}rememberDecorator(e){this.#r.push(e);}},vo=z.object({key:ApiKeySchema,passphrase:z.string(),secret:z.string()}),Ao=z.object({wallet:EvmAddressSchema,credentials:vo.optional(),nonce:z.number().int().nonnegative().optional()}).superRefine((t,e)=>{t.credentials!==void 0&&t.nonce!==void 0&&e.addIssue({code:"custom",message:"`credentials` and `nonce` are mutually exclusive.",path:["nonce"]});}).transform(t=>t.credentials!==void 0?{wallet:t.wallet,credentials:t.credentials}:t.nonce!==void 0?{wallet:t.wallet,nonce:t.nonce}:{wallet:t.wallet}),U=class extends W{constructor(e){super({apiKey:e.apiKey,environment:e.environment,data:new Ed({headers:e.environment.data.headers,root:e.environment.data.rest}),gamma:new Ed({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),clob:new Ed({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new Ed({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rfq:new Ed({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new Ed({headers:e.environment.perps.headers,root:e.environment.perps.rest}),rpc:new H({url:e.environment.rpc}),webSockets:{clobMarket:new S({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new q({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new b({headers:e.environment.perps.headers,url:e.environment.perps.ws})}});}isSecureClient(){return false}isPublicClient(){return true}async closeSubscriptions(){await Promise.all([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close()]).then(()=>{});}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}beginAuthentication(e,r){let s=G(e,Ao);return Promise.resolve(async function*(){let n=Math.floor(Date.now()/1e3),i=s?.nonce??0,o=expectEvmAddress(yield wa()),A=expectEvmAddress(s.wallet),Ae=I(this.environment,o,A);if(s.credentials!==void 0){let Ce=this.#e(s.credentials,Ae,r);try{if((await gb(Ce)).includes(s.credentials.key))return Ce}catch(x){if(!(x instanceof f$1)||x.status!==401)throw x}}let bs=yield {kind:"signAuthMessage",payload:Ir({address:o,chainId:this.environment.chainId,nonce:i,timestamp:n})},Rs=await eb(this,{address:o,nonce:i,signature:expectEvmSignature(bs),timestamp:n});return this.#e(Rs,Ae,r)}.call(this))}#e(e,r,s){let n=new ve({account:r,apiKey:this.context.apiKey,credentials:e,environment:this.environment,signer:s});for(let i of this.decorators)n.extend(i);return n}},ve=class extends W{#e=false;get context(){return invariant(!this.#e,"This client has ended authentication and can no longer be used."),super.context}endAuthenticationLifecycle(){this.#e=true;}constructor(e){super({account:e.account,credentials:e.credentials,apiKey:e.apiKey,environment:e.environment,signer:e.signer,clob:new Ed({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new Ed({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rpc:new H({url:e.environment.rpc}),gamma:new Ed({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),data:new Ed({headers:e.environment.data.headers,root:e.environment.data.rest}),rfq:new Ed({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new Ed({headers:e.environment.perps.headers,root:e.environment.perps.rest}),secureClob:new Ed({headers:e.environment.clob.headers,resolveHeaders:async r=>({...await this.resolveClobHeaders(r),...await this.#r(r)}),root:e.environment.clob.rest}),combos:new Ed({headers:e.environment.combos.collateralReturn.headers,resolveHeaders:r=>this.resolveRelayerHeaders(r),root:e.environment.combos.collateralReturn.rest}),webSockets:{clobMarket:new S({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),clobUser:new R({credentials:e.credentials,headers:e.environment.clob.user.headers,url:e.environment.clob.user.ws}),rfqQuoter:new g({account:e.account,chainId:e.environment.chainId,credentials:e.credentials,exchange:e.environment.contracts.exchangeV3,headers:e.environment.combos.headers,signer:e.signer,url:e.environment.combos.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new q({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new b({headers:e.environment.perps.headers,url:e.environment.perps.ws}),perpsSession:new P({chainId:e.environment.chainId,headers:e.environment.perps.headers,restUrl:e.environment.perps.rest,wsUrl:e.environment.perps.ws})}});}get credentials(){return this.context.credentials}get account(){return this.context.account}get signer(){return this.context.signer}get secureClob(){return this.context.secureClob}get combos(){return this.context.combos}get webSockets(){return this.context.webSockets}async closeSubscriptions(){await Promise.allSettled([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close(),this.webSockets.clobUser.close()]).then(()=>{});}isSecureClient(){return true}isPublicClient(){return false}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}async endAuthentication(){let e=this.closeSubscriptions(),r=this.webSockets.perpsSession.shutdown(),s=this.webSockets.rfqQuoter.shutdown(),{apiKey:n,environment:i}=this.context;try{await ib(this);}finally{this.endAuthenticationLifecycle(),await Promise.allSettled([e,r,s]).then(()=>{});}let o=new U({apiKey:n,environment:i});for(let A of this.decorators)o.extend(A);return o}async#r(e){try{let r=Math.floor(Date.now()/1e3);return {POLY_ADDRESS:this.account.signer,POLY_API_KEY:this.credentials.key,POLY_PASSPHRASE:this.credentials.passphrase,POLY_SIGNATURE:await Wr(this.credentials.secret,r,e.method,e.path,e.body),POLY_TIMESTAMP:`${r}`}}catch(r){throw m$1.fromError(r,"Could not sign the L2-authenticated request")}}};function Ss(t={}){return new U({environment:t.environment??le,apiKey:t.apiKey}).extend(Dr)}var Co=n(j,g$1,f$1,m$1,h,i,c,b$1,a),Eo=n(a);async function ko(t){let e=Ss({environment:t.environment,apiKey:t.apiKey}),r=await To(e,t),s=await e.beginAuthentication({wallet:r,credentials:t.credentials,nonce:t.nonce},t.signer).then(va(t.signer));if(s.account.walletType===WalletType.EOA||await Aa(s,{wallet:s.account.wallet,type:s.account.walletType}))return s;if(s.account.walletType===WalletType.DEPOSIT_WALLET)return await wo(s),s;throw new a(`Wallet ${s.account.wallet} does not exist. Provide an existing wallet address, or omit wallet to use the default Deposit Wallet flow.`)}async function To(t,e){if(e.wallet!==void 0)return e.wallet;let r=expectEvmAddress(await e.signer.getAddress()),s=K(r,t.environment.walletDerivation);return await Aa(t,{wallet:s,type:WalletType.DEPOSIT_WALLET})?s:L$1(r,t.environment.walletDerivation)}async function wo(t){let e=L$1(t.account.signer,t.environment.walletDerivation);if(!isSameEvmAddress(t.account.wallet,e))throw new a(`Wallet ${t.account.wallet} does not match the expected Deposit Wallet ${e} for this signer, nor a deployed wallet address.`);await(await Da(t)).wait();}
2
+ export{Co as CreateSecureClientError,Eo as SetupGaslessWalletError,ie as accountActions,Dr as allActions,oe as analyticsActions,Wr as buildHmacSignature,Ss as createPublicClient,ko as createSecureClient,ae as dataActions,ce as discoveryActions,Fi as forkEnvironmentConfig,ue as perpsActions,Sc as preproduction,le as production,Mi as relayerApiKey,xi as remoteBuilderSigning,de as rewardsActions,Or as rfqActions,pe as subscriptionsActions,Fr as tradingActions,Lr as walletActions};//# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map