@polymarket/client 0.2.0 → 0.3.0-beta.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,2 +0,0 @@
1
- import {m as m$1,g as g$1,f,l,c,b,a,h,i,j,k,e}from'./chunk-TYJAXA3Y.js';import {PaginationCursorSchema,ComboConditionIdSchema,TransactionIdSchema,EvmAddressSchema,BuilderCodeSchema,TokenIdSchema,CtfConditionIdSchema,OrderSideSchema,CommentParentEntityTypeSchema,EventIdSchema,CommentIdSchema,IsoDateTimeStringSchema,IsoCalendarDateStringSchema,PositionIdSchema,OrderType,PositiveDecimalNumberSchema,OrderSide,TxHashSchema,MarketIdSchema,TradeStatus,toDecimalString,toComboConditionId,toPositionId,toPaginationCursor}from'@polymarket/bindings';import {AssetTypeSchema,PriceHistoryIntervalSchema,SignatureType,AssetType,ClosedOnlyModeSchema,OpenOrdersPageSchema,END_CURSOR,OpenOrderSchema,ClobTradesPageSchema,NotificationsResponseSchema,BalanceAllowanceResponseSchema,OrderScoringResponseSchema,OrdersScoringResponseSchema,UserEarningsPageSchema,TotalUserEarningsResponseSchema,UserRewardsEarningsPageSchema,RewardsPercentagesSchema,ApiKeyCredsSchema,ApiKeysResponseSchema,BuilderApiKeyCredsSchema,BuilderApiKeysResponseSchema,PaginatedBuilderTradesSchema,MidpointSchema,MidpointsSchema,FetchTickSizeResponseSchema,FetchNegRiskResponseSchema,ResolveConditionByTokenResponseSchema,FetchMarketInfoResponseSchema,FetchBuilderFeeRatesResponseSchema,PriceSchema,PricesSchema,FetchOrderBookResponseSchema,OrderBooksSchema,SpreadSchema,SpreadsSchema,LastTradePriceSchema,LastTradePricesSchema,PriceHistorySchema,PaginatedCurrentRewardsSchema,PaginatedMarketRewardsSchema,CancelOrdersResponseSchema,OrderResponseSchema,OrderResponsesSchema}from'@polymarket/bindings/clob';import {isHexString,expectNonEmptyArray,isPrivateKey,expectEvmAddress,PolymarketError,expectHexString,isSameEvmAddress,never,unwrap,invariant,delay,expectEvmSignature,ZERO_ADDRESS,expectErc1271Signature,ResultAsync,setNonBlockingInterval,setNonBlockingTimeout,expectPresent,expectPrivateKey,isPresent,ok,err}from'@polymarket/types';import {z}from'zod';import {WalletType,SeriesIdSchema,MarketClarificationState,ListCommentsResponseSchema,ListEventsKeysetResponseSchema,EventSchema,FetchEventTagsResponseSchema,ListMarketClarificationsResponseSchema,ListMarketsKeysetResponseSchema,FetchMarketTagsResponseSchema,MarketSchema,PublicProfileSchema,PublicSearchResponseSchema,ListSeriesResponseSchema,SeriesSchema,ListSportsMetadataResponseSchema,SportsMarketTypesResponseSchema,ListTagsResponseSchema,TagSchema,ListRelatedTagsResponseSchema,ListRelatedTagResourcesResponseSchema,ListTeamsResponseSchema}from'@polymarket/bindings/gamma';import {AbiFunction,Hash,Bytes,AbiParameters,ContractAddress,TypedData,Secp256k1,Address,Signature}from'ox';import po from'ky';import {SideSchema,ActivityTypeSchema,TimePeriodSchema,LeaderboardOrderBySchema,LeaderboardCategorySchema,ComboPositionStatusSchema,ListTradesResponseSchema,ListActivityResponseSchema,ListComboActivityResponseSchema,FetchEventLiveVolumeResponseSchema,ListBuilderLeaderboardResponseSchema,ListBuilderVolumeResponseSchema,ListTraderLeaderboardResponseSchema,ListMarketHoldersResponseSchema,ListOpenInterestResponseSchema,ListMarketPositionsResponseSchema,ListPositionsResponseSchema,ListClosedPositionsResponseSchema,ListComboPositionsResponseSchema,FetchPortfolioValueResponseSchema,TradedSchema}from'@polymarket/bindings/data';export{ComboPositionOutcome as qe,ComboPositionStatus as re,ComboActivityType as sa}from'@polymarket/bindings/data';import {RelayerTransactionType,RelayerExecuteRequestSchema,RelayerTransactionState,RelayerExecuteParamsSchema,RelayerDeployedResponseSchema,GaslessTransactionSchema,RelayerExecuteResponseSchema}from'@polymarket/bindings/relayer';import {CollateralReturnPlanSchema,CollateralReturnPlanResponseSchema,ListComboMarketsResponseSchema}from'@polymarket/bindings/combos';export{CollateralReturnKnownOperationKind as dc,RfqConfirmationDecision as gf,RfqDirection as hf,RfqExecutionStatus as if,RfqKnownErrorCode as jf,RfqRequestedSizeUnit as kf,RfqSide as lf}from'@polymarket/bindings/combos';import {PerpsPnlIntervalSchema,PerpsWithdrawalStatusSchema,PerpsDepositStatusSchema,PerpsInstrumentIdSchema,PerpsClientOrderIdSchema,PerpsOrderIdSchema,PerpsDecimalInputSchema,PerpsTimeInForce,PerpsCommandAckSchema,PerpsInstrumentCategorySchema,PerpsKlineIntervalSchema,PerpsTradeIdSchema,PerpsPostOrderAckSchema,PerpsTpSlKind,PerpsTpSlScope,PerpsCancelOrderResultSchema,PerpsUpdateLeverageResultSchema,FetchPerpsBalancesResponseSchema,FetchPerpsPortfolioResponseSchema,FetchPerpsAccountStatsResponseSchema,FetchPerpsAccountConfigResponseSchema,FetchPerpsOpenOrdersResponseSchema,FetchPerpsOrdersResponseSchema,ListPerpsFillsResponseSchema,ListPerpsFundingPaymentsResponseSchema,ListPerpsDepositsResponseSchema,ListPerpsWithdrawalsResponseSchema,ListPerpsEquityHistoryResponseSchema,ListPerpsPnlHistoryResponseSchema,PerpsCancelAllOrdersResponseSchema,FetchPerpsInstrumentsResponseSchema,FetchPerpsTickersResponseSchema,FetchPerpsStatisticsResponseSchema,PerpsBookSchema,FetchPerpsCandlesResponseSchema,FetchPerpsFundingHistoryResponseSchema,FetchPerpsTradesResponseSchema,FetchPerpsFeesResponseSchema,PerpsDeleteProxyResponseSchema,PerpsWithdrawResponseSchema,PerpsCreateProxyResponseSchema,PerpsCredentialsResponseSchema}from'@polymarket/bindings/perps';import {encode}from'@msgpack/msgpack';import {PerpsSessionUpdateEventSchema}from'@polymarket/bindings/subscriptions';import {pushable}from'it-pushable';import UP from'it-merge';function m(e,r){let t=r.safeParse(e);if(t.success)return t.data;throw a.fromZodError(t.error)}var O=z.number().int().positive(),so=z.object({offset:z.number().int().min(0),pageSize:O});function x(e,r,t=[]){function o(){return {async firstPage(){return {items:t,hasMore:false}},from(){return o()},async*[Symbol.asyncIterator](){}}}function n(s=r){return {firstPage(){return unwrap(e(s))},from(a){return a===void 0?o():n(a)},async*[Symbol.asyncIterator](){let a=s;for(;;){let f=await unwrap(e(a));if(yield f,!f.hasMore)return;a=f.nextCursor;}}}}return n()}function B(e){return toPaginationCursor(btoa(JSON.stringify(so.parse(e))))}function U(e,r){if(e===void 0)return {offset:0,pageSize:r};try{return so.parse(JSON.parse(atob(e)))}catch(t){throw new a("Invalid pagination cursor",{cause:t})}}function y(e){return function(t){return ResultAsync.fromPromise(t.json(),()=>new b(`Received non-JSON response from ${t.url}`)).andThen(o=>Xa(t.url,e,o))}}function io(e){return ResultAsync.fromPromise(e.blob(),()=>new b(`Received unreadable binary response from ${e.url}`))}function Xa(e,r,t){let o=r.safeParse(t);return o.success?ok(o.data):err(b.fromZodError(o.error,{endpoint:e}))}var co=class{#e;constructor({url:r}){this.#e=r;}async ethCall(r){let t=await this.#o({jsonrpc:"2.0",id:1,method:"eth_call",params:[{to:r.to,data:r.data},"latest"]});if("error"in t)throw new f(`JSON-RPC eth_call failed: ${t.error.message}`,{cause:t.error,status:200});if(typeof t.result!="string")throw new b("Expected JSON-RPC eth_call result to be a hex string");if(!go(t.result))throw new b("Expected JSON-RPC eth_call result to be a hex string");return t.result}async ethCallBatch(r){return r.length===0?[]:this.#r(r)}async ethEstimateGas(r){let t={to:r.to};r.data!==void 0&&(t.data=r.data),r.from!==void 0&&(t.from=r.from),r.gasPrice!==void 0&&(t.gasPrice=mo(r.gasPrice)),r.value!==void 0&&(t.value=mo(r.value));let o=await this.#o({jsonrpc:"2.0",id:1,method:"eth_estimateGas",params:[t]});if("error"in o)throw new f(`JSON-RPC eth_estimateGas failed: ${o.error.message}`,{cause:o.error,status:200});return BigInt(lo(o.result,"eth_estimateGas"))}async#r(r){if(r.length===1)return [await this.ethCall(r[0])];try{return await this.#t(r)}catch(t){if(!(t instanceof f)||t.status<500)throw t;let o=Math.ceil(r.length/2),[n,s]=await Promise.all([this.#r(r.slice(0,o)),this.#r(r.slice(o))]);return [...n,...s]}}async#t(r){let t=await this.#n(r.map((n,s)=>({jsonrpc:"2.0",id:s+1,method:"eth_call",params:[{to:n.to,data:n.data},"latest"]}))),o=new Map;for(let n of t){if("error"in n&&n.id===null)throw new f(`JSON-RPC eth_call failed: ${n.error.message}`,{cause:n.error,status:200});n.id!==null&&o.set(n.id,n);}return r.map((n,s)=>{let a=s+1,f$1=o.get(a);if(f$1===void 0)throw new b("Expected JSON-RPC batch response for every request");if("error"in f$1)throw new f(`JSON-RPC eth_call failed: ${f$1.error.message}`,{cause:f$1.error,status:200});return lo(f$1.result)})}async#o(r){let t;try{t=await po.post(this.#e,{json:r,throwHttpErrors:!1});}catch(n){throw c.fromError(n)}if(!t.ok)throw new f(`JSON-RPC request to ${this.#e} failed with status ${t.status}`,{status:t.status});let o;try{o=await t.json();}catch(n){throw new b("Expected JSON-RPC response body to be JSON",{cause:n})}if(!uo(o))throw new b("Unexpected JSON-RPC response shape");return o}async#n(r){let t;try{t=await po.post(this.#e,{json:r,throwHttpErrors:!1});}catch(n){throw c.fromError(n)}if(!t.ok)throw new f(`JSON-RPC request to ${this.#e} failed with status ${t.status}`,{status:t.status});let o;try{o=await t.json();}catch(n){throw new b("Expected JSON-RPC response body to be JSON",{cause:n})}if(!Array.isArray(o)||!o.every(n=>uo(n)))throw new b("Unexpected JSON-RPC response shape");return o}};function yo(e){if(!(e instanceof f)||!fo(e.cause))return false;let r=[e.cause.message,ei(e.cause.data)].join(" ").toLowerCase();return (e.cause.code===3||e.cause.code===-32e3||e.cause.code===-32003||e.cause.code===-32015||e.cause.code===-32603)&&(r.includes("execution reverted")||r.includes("revert")||r.includes("invalid opcode"))}function uo(e){return !Po(e)||e.jsonrpc!=="2.0"?false:"error"in e?fo(e.error):"result"in e}function fo(e){return Po(e)&&typeof e.code=="number"&&typeof e.message=="string"}function Po(e){return typeof e=="object"&&e!==null}function go(e){return /^0x[a-fA-F0-9]*$/.test(e)}function lo(e,r="eth_call"){if(typeof e!="string"||!go(e))throw new b(`Expected JSON-RPC ${r} result to be a hex string`);return e}function mo(e){return `0x${e.toString(16)}`}function ei(e){if(e===void 0)return "";if(typeof e=="string")return e;try{return JSON.stringify(e)}catch{return ""}}function Eg(e,r,t){return {signer:r,wallet:t,walletType:Ei(e,r,t)}}function ce(e){switch(e){case WalletType.EOA:return SignatureType.EOA;case WalletType.POLY_PROXY:return SignatureType.POLY_PROXY;case WalletType.GNOSIS_SAFE:return SignatureType.POLY_GNOSIS_SAFE;case WalletType.DEPOSIT_WALLET:return SignatureType.POLY_1271}}function Ro(e){let r=ce(e.walletType);return {maker:e.wallet,signatureType:r,signer:r===SignatureType.POLY_1271?e.wallet:e.signer}}var ti="3d3d606380380380913d393d73%s5af4602a57600080fd5b602d8060366000396000f3363d3d373d3d3d363d73%s5af43d82803e903d91602b57fd5bf352e831dd00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000";function oi(e){let r=ti.replace("%s",e.proxyFactory.slice(2).toLowerCase()).replace("%s",e.proxyImplementation.slice(2).toLowerCase());return expectHexString(Hash.keccak256(`0x${r}`))}function ni(e,r){return expectEvmAddress(ContractAddress.fromCreate2({bytecodeHash:oi(r),from:r.proxyFactory,salt:Hash.keccak256(AbiParameters.encodePacked(["address"],[e]))}))}function si(e,r){return expectEvmAddress(ContractAddress.fromCreate2({bytecodeHash:r.safeInitCodeHash,from:r.safeFactory,salt:Hash.keccak256(AbiParameters.encode([{name:"address",type:"address"}],[e]))}))}var ai="0xcc3735a920a3ca505d382bbc545af43d6000803e6038573d6000fd5b3d6000f3",ii="0x5155f3363d3d373d3d363d7f360894a13ba1a3210667c828492db98dca3e2076",pi=0x61003d3d8160233d3973n;function Eo(e,r){let t=expectHexString(`0x${e.slice(2).padStart(64,"0")}`),o=AbiParameters.encode([{type:"address"},{type:"bytes32"}],[r.depositWalletFactory,t]);return expectEvmAddress(ContractAddress.fromCreate2({bytecodeHash:yi(r.depositWalletImplementation,o),from:r.depositWalletFactory,salt:Hash.keccak256(o)}))}var ci="0xb3582b35133d50545afa5036515af43d6000803e604d573d6000fd5b3d6000f3",di="0x1b60e01b36527fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6c",ui="0x60195155f3363d3d373d3d363d602036600436635c60da",li=0x6100523d8160233d3973n,mi="0x49493a4d";function So(e,r){let t=expectHexString(`0x${e.slice(2).padStart(64,"0")}`),o=AbiParameters.encode([{type:"address"},{type:"bytes32"}],[r.depositWalletFactory,t]);return expectEvmAddress(ContractAddress.fromCreate2({bytecodeHash:fi(r.depositWalletBeacon,o),from:r.depositWalletFactory,salt:Hash.keccak256(o)}))}function yi(e,r){let t=BigInt((r.length-2)/2),o=pi+(t<<56n);return expectHexString(Hash.keccak256(Bytes.concat(Bytes.fromNumber(o,{size:10}),Bytes.fromHex(e),Bytes.fromHex("0x6009"),Bytes.fromHex(ii),Bytes.fromHex(ai),Bytes.fromHex(r)),{as:"Hex"}))}function fi(e,r){let t=BigInt((r.length-2)/2),o=li+(t<<56n);return expectHexString(Hash.keccak256(Bytes.concat(Bytes.fromNumber(o,{size:10}),Bytes.fromHex(e),Bytes.fromHex(ui),Bytes.fromHex(di),Bytes.fromHex(ci),Bytes.fromHex(r)),{as:"Hex"}))}async function Pi(e,r){try{let t=await e.ethCall({to:r,data:mi});return Ri(t)}catch(t){if(yo(t))return ZERO_ADDRESS;throw t}}async function gi(e,r){let t=await Pi(e,r);return !isSameEvmAddress(t,ZERO_ADDRESS)}async function ho(e,r,t){return await gi(e,t.depositWalletFactory)?So(r,t):Eo(r,t)}function Ri(e){return e.length<66?ZERO_ADDRESS:expectEvmAddress(`0x${e.slice(-40)}`)}function Ei(e,r,t){if(isSameEvmAddress(t,r))return WalletType.EOA;let o=e.walletDerivation;if(isSameEvmAddress(t,So(r,o)))return WalletType.DEPOSIT_WALLET;if(isSameEvmAddress(t,Eo(r,o)))return WalletType.DEPOSIT_WALLET;if(isSameEvmAddress(t,si(r,o)))return WalletType.GNOSIS_SAFE;if(isSameEvmAddress(t,ni(r,o)))return WalletType.POLY_PROXY;never(`Wallet ${t} does not match the signer ${r} or any supported deterministic wallet address.`);}function g(e,r){if(Si(r))return hi(e,r.exceptions);let t=new URLSearchParams;for(let[o,n]of Object.entries(r)){let s=e[o];if(s!==void 0){if(To(s)){for(let a of s)t.append(n,Le(a));continue}t.append(n,Le(s));}}return t}function E(e={}){return {format:"snake_case",exceptions:e}}function N(e){let r=new URLSearchParams;for(let[t,o]of Object.entries(e))if(o!==void 0){if(Array.isArray(o)){r.append(t,o.map(Le).join(","));continue}r.append(t,Le(o));}return r}function Si(e){return "format"in e}function hi(e,r){let t=new URLSearchParams;for(let[o,n]of Object.entries(e)){if(n===void 0)continue;let s=r[o]??Ti(o);if(To(n)){for(let a of n)t.append(s,Le(a));continue}t.append(s,Le(n));}return t}function To(e){return Array.isArray(e)}function Ti(e){return e.replace(/[A-Z]/g,r=>`_${r.toLowerCase()}`)}function Le(e){return String(e)}var wg=m$1(g$1,f,l,c,b);async function Lg(e){return (await unwrap(e.secureClob.get("/auth/ban-status/closed-only").andThen(y(ClosedOnlyModeSchema)))).closedOnly}var Mi=z.object({tokenId:z.string().optional(),cursor:PaginationCursorSchema.optional(),id:z.string().optional(),market:z.string().optional()}).default({}),Fg=m$1(g$1,f,l,c,b,a);function Mg(e,r){let{cursor:t,...o}=m(r,Mi);return x(n=>e.secureClob.get("/data/orders",{params:g({...o,nextCursor:n},E({tokenId:"asset_id"}))}).andThen(y(OpenOrdersPageSchema)).map(s=>({items:s.data,hasMore:s.nextCursor!==END_CURSOR,nextCursor:s.nextCursor===END_CURSOR?void 0:toPaginationCursor(s.nextCursor),totalCount:s.count})),t)}var Bi=z.object({orderId:z.string()}),Bg=m$1(g$1,f,l,c,b,a);async function Ug(e,r){let t=m(r,Bi);return unwrap(e.secureClob.get(`/data/order/${t.orderId}`).andThen(y(OpenOrderSchema)))}var Ui={after:z.string().optional(),tokenId:z.string().optional(),before:z.string().optional(),cursor:PaginationCursorSchema.optional(),id:z.string().optional(),makerAddress:z.string().optional(),market:z.string().optional()},Di=z.object(Ui).default({}),Dg=m$1(g$1,f,l,c,b,a);function Co(e,r){let{cursor:t,...o}=m(r,Di);return x(n=>e.secureClob.get("/data/trades",{params:g({...o,nextCursor:n},E({tokenId:"asset_id"}))}).andThen(y(ClobTradesPageSchema)).map(s=>({items:s.data,hasMore:s.nextCursor!==END_CURSOR,nextCursor:s.nextCursor===END_CURSOR?void 0:toPaginationCursor(s.nextCursor),totalCount:s.count})),t)}var zg=m$1(g$1,f,l,c,b),zi=z.object({ids:z.array(z.string()).min(1)});async function Wg(e){let r=ce(e.account.walletType);return unwrap(e.secureClob.get("/notifications",{params:g({signatureType:r},E())}).andThen(y(NotificationsResponseSchema)))}var jg=m$1(g$1,f,l,c,b,a);async function Hg(e,r){let t=m(r,zi),o=ce(e.account.walletType),n=g({ids:t.ids.join(","),signatureType:o},E());await unwrap(e.secureClob.del("/notifications",{params:n}));}var Wi=z.object({assetType:AssetTypeSchema,tokenId:z.string().optional()}),_g=m$1(g$1,f,l,c,b,a);async function Yr(e,r){let t=m(r,Wi),o=ce(e.account.walletType);return unwrap(e.secureClob.get("/balance-allowance",{params:g({...t,signatureType:o},E())}).andThen(y(BalanceAllowanceResponseSchema)))}var ji=z.object({assetType:AssetTypeSchema,tokenId:z.string().optional()}),Ng=m$1(g$1,f,l,c,b,a);async function bo(e,r){let t=m(r,ji),o=ce(e.account.walletType),n=g({...t,signatureType:o},E());return await unwrap(e.secureClob.get("/balance-allowance/update",{params:n})),Yr(e,t)}var Hi=z.object({orderId:z.string()}),Gg=m$1(g$1,f,l,c,b,a);async function Kg(e,r){let t=m(r,Hi);return (await unwrap(e.secureClob.get("/order-scoring",{params:g(t,E())}).andThen(y(OrderScoringResponseSchema)))).scoring}var _i=z.object({orderIds:z.array(z.string())}),$g=m$1(g$1,f,l,c,b,a);async function Vg(e,r){let o=m(r,_i).orderIds;return unwrap(e.secureClob.post("/orders-scoring",{json:o}).andThen(y(OrdersScoringResponseSchema)))}var Io=z.object({cursor:PaginationCursorSchema.optional(),date:z.string()}),Yg=m$1(g$1,f,l,c,b,a);function Zg(e,r){let{cursor:t,...o}=m(r,Io),n=ce(e.account.walletType);return x(s=>e.secureClob.get("/rewards/user",{params:g({...o,nextCursor:s,signatureType:n},E())}).andThen(y(UserEarningsPageSchema)).map(a=>({items:a.data,hasMore:a.nextCursor!==END_CURSOR,nextCursor:a.nextCursor===END_CURSOR?void 0:toPaginationCursor(a.nextCursor),totalCount:a.count})),t)}var Jg=m$1(g$1,f,l,c,b,a);async function Qg(e,r){let t=m(r,Io),o=ce(e.account.walletType);return unwrap(e.secureClob.get("/rewards/user/total",{params:g({...t,signatureType:o},E())}).andThen(y(TotalUserEarningsResponseSchema)))}var Ni=z.object({cursor:PaginationCursorSchema.optional(),date:z.string(),noCompetition:z.boolean().optional(),orderBy:z.string().optional(),pageSize:O.max(500).default(100),position:z.string().optional()}),Xg=m$1(g$1,f,l,c,b,a);function eR(e,r){let{cursor:t,...o}=m(r,Ni),n=ce(e.account.walletType);return x(s=>e.secureClob.get("/rewards/user/markets",{params:g({...o,nextCursor:s,signatureType:n},E())}).andThen(y(UserRewardsEarningsPageSchema)).map(a=>({items:a.data,hasMore:a.nextCursor!==END_CURSOR,nextCursor:a.nextCursor===END_CURSOR?void 0:toPaginationCursor(a.nextCursor),totalCount:a.count})),t)}var rR=m$1(g$1,f,l,c,b);async function tR(e){let r=ce(e.account.walletType);return unwrap(e.secureClob.get("/rewards/user/percentages",{params:g({signatureType:r},E())}).andThen(y(RewardsPercentagesSchema)))}var Yi=z.enum(["CASH","TOKENS"]),Zi=z.object({cursor:PaginationCursorSchema.optional(),pageSize:O.max(1e4).default(20),takerOnly:z.boolean().optional(),filterType:Yi.optional(),filterAmount:z.number().optional(),market:z.array(z.string()).optional(),eventId:z.array(z.number().int()).optional(),user:z.string().optional(),side:SideSchema.optional(),start:z.number().int().min(0).optional(),end:z.number().int().min(0).optional()}).refine(e=>!(e.market&&e.eventId),{message:"Provide market or eventId, not both",path:["eventId"]}).refine(e=>e.filterType===void 0==(e.filterAmount===void 0),{message:"Provide filterType and filterAmount together",path:["filterAmount"]}),lR=m$1(g$1,f,c,b,a);function mR(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,Zi);return x(s=>{let a=U(s,o);return e.data.get("/trades",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListTradesResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var Ji=z.enum(["TIMESTAMP","TOKENS","CASH"]),Qi=z.enum(["ASC","DESC"]),Xi=z.object({cursor:PaginationCursorSchema.optional(),pageSize:O.max(500).default(20),user:z.string(),market:z.array(z.string()).optional(),eventId:z.array(z.number().int()).optional(),type:z.array(ActivityTypeSchema).optional(),start:z.number().int().min(0).optional(),end:z.number().int().min(0).optional(),sortBy:Ji.optional(),sortDirection:Qi.optional(),side:SideSchema.optional()}).refine(e=>!(e.market&&e.eventId),{message:"Provide market or eventId, not both",path:["eventId"]}),yR=m$1(g$1,f,c,b,a);function fR(e,r){let{cursor:t,pageSize:o,...n}=m(r,Xi);return x(s=>{let a=U(s,o);return e.data.get("/activity",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListActivityResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var ep=z.union([ComboConditionIdSchema,z.array(ComboConditionIdSchema)]),rp=z.object({cursor:PaginationCursorSchema.optional(),pageSize:O.default(50),user:z.string(),conditionId:ep.optional()}),PR=m$1(g$1,f,c,b,a);function gR(e,r){let{cursor:t,pageSize:o,conditionId:n,...s}=m(r,rp);return x(a=>{let f=g({...s,limit:o,cursor:a},E());return tp(f,n),e.data.get("/v1/activity/combos",{params:f}).andThen(y(ListComboActivityResponseSchema)).map(P=>{let v=P.pagination.nextCursor??void 0;return {items:P.activity,hasMore:v!==void 0,nextCursor:v}})},t)}function tp(e,r){r!==void 0&&e.append("market_id",Array.isArray(r)?r.join(","):r);}var np=64,sp=/^0x[0-9a-fA-F]{62}$/,ap=/^0x[0-9a-fA-F]{64}$/,Jr="0x0000000000000000000000000000000000000000000000000000000000000000",ip=AbiFunction.from("function approve(address spender, uint256 amount)"),Ao=AbiFunction.from("function allowance(address owner, address spender) view returns (uint256)"),pp=AbiFunction.from("function transfer(address recipient, uint256 amount)"),cp=AbiFunction.from("function deposit(address token, uint256 amount, address to)"),dp=AbiFunction.from("function setApprovalForAll(address operator, bool approved)"),Oo=AbiFunction.from("function isApprovedForAll(address account, address operator) view returns (bool)"),wo=AbiFunction.from("function balanceOf(address account, uint256 id) view returns (uint256)"),Lo=AbiFunction.from("function balanceOfBatch(address[] accounts, uint256[] ids) view returns (uint256[])"),up=AbiFunction.from("function splitPosition(address collateralToken, bytes32 parentCollectionId, bytes32 conditionId, uint256[] partition, uint256 amount)"),lp=AbiFunction.from("function mergePositions(address collateralToken, bytes32 parentCollectionId, bytes32 conditionId, uint256[] partition, uint256 amount)"),mp=AbiFunction.from("function redeemPositions(address collateralToken, bytes32 parentCollectionId, bytes32 conditionId, uint256[] indexSets)"),yp=AbiFunction.from("function split(bytes31 conditionId, uint256 amount)"),fp=AbiFunction.from("function merge(bytes31 conditionId, uint256 amount)"),Pp=AbiFunction.from("function redeem(bytes31 conditionId, uint256 outcomeIndex, uint256 amount)"),gp=AbiFunction.from("function prepareCondition(uint256[] legs) returns (bytes31)"),Rp=AbiFunction.from("function multiSend(bytes)"),Ep=AbiFunction.from("function proxy((uint8 typeCode, address to, uint256 value, bytes data)[] calls) returns (bytes[])"),Fo=[1n,2n],Sp=[1n,2n],ee=(1n<<256n)-1n,CR=m$1(a);function fr(e,r,t){if(t<0n)throw new a("Approval amount must be non-negative");if(t>ee)throw new a("Approval amount exceeds uint256 range");return {data:hp(r,t),to:e}}function Mo(e,r,t){return {data:AbiFunction.encodeData(Ao,[r,t]),to:e}}function Bo(e){return AbiFunction.decodeResult(Ao,e)}function Pr(e,r,t){return {data:Tp(r,t),to:e}}function Uo(e,r,t){return {data:AbiFunction.encodeData(Oo,[r,t]),to:e}}function Do(e){return AbiFunction.decodeResult(Oo,e)}function zo(e,r,t){return {data:AbiFunction.encodeData(wo,[r,ge(BigInt(t),"Position ID")]),to:e}}function Wo(e){return AbiFunction.decodeResult(wo,e)}function Qr(e,r,t){return {data:AbiFunction.encodeData(Lo,[t.map(()=>r),t.map(o=>ge(BigInt(o),"id"))]),to:e}}function Xr(e){return AbiFunction.decodeResult(Lo,e)}var bR=m$1(a);function et(e,r,t){if(t<0n)throw new a("Transfer amount must be non-negative");if(t>ee)throw new a("Transfer amount exceeds uint256 range");return {data:xp(r,t),to:e}}var IR=m$1(a);function jo(e,r,t,o){if(t<=0n)throw new a("Perps deposit amount must be positive");return {data:AbiFunction.encodeData(cp,[r,ge(t,"Perps deposit amount"),o]),to:e}}var kR=m$1(a),qR=m$1(a);function Ho(e,r,t,o){return {data:Cp(r,t,o),to:e}}var vR=m$1(a);function _o(e,r,t,o){return {data:bp(r,t,o),to:e}}function No(e,r,t){return {data:Ip(r,t),to:e}}var AR=m$1(a);function Go(e,r,t){return {data:AbiFunction.encodeData(yp,[tt(r),ge(t,"Split amount")]),to:e}}var OR=m$1(a);function Ko(e,r,t){return {data:AbiFunction.encodeData(fp,[tt(r),ge(t,"Merge amount")]),to:e}}var wR=m$1(a);function $o(e,r,t,o){return {data:AbiFunction.encodeData(Pp,[tt(r),BigInt(kp(t)),ge(o,"Redeem amount")]),to:e}}var LR=m$1(a);function rt(e,r){return {data:AbiFunction.encodeData(gp,[r.map(t=>ge(t,"Leg position ID"))]),to:e}}function hp(e,r){return invariant(r>=0n,"Approval amount must be non-negative"),AbiFunction.encodeData(ip,[e,r])}function Tp(e,r){return AbiFunction.encodeData(dp,[e,r])}function xp(e,r){return AbiFunction.encodeData(pp,[e,r])}function Cp(e,r,t){return AbiFunction.encodeData(up,[e,Jr,r,Fo,ge(t,"Split amount")])}function bp(e,r,t){return AbiFunction.encodeData(lp,[e,Jr,r,Fo,ge(t,"Merge amount")])}function Ip(e,r){return AbiFunction.encodeData(mp,[e,Jr,r,Sp])}function ge(e,r){if(e<0n)throw new a(`${r} must be non-negative`);if(e>ee)throw new a(`${r} exceeds uint256 range`);return e}function tt(e){if(sp.test(e))return e.toLowerCase();if(ap.test(e)){let r=e.toLowerCase();if(r.endsWith("00")||r.endsWith("01"))return r.slice(0,np)}throw new a("Protocol v2 condition ID must be bytes31, or bytes32 with a binary outcome byte")}function kp(e){if(e!==0&&e!==1)throw new a("Protocol v2 outcome index must be 0 or 1");return e}function Vo(e){return AbiFunction.encodeData(Ep,[e.map(r=>({typeCode:1,to:r.to,value:r.value??0n,data:r.data}))])}function Yo(e){let r=e.map(t=>qp(t));return AbiFunction.encodeData(Rp,[r.length===0?"0x":AbiParameters.encodePacked(Array.from({length:r.length},()=>"bytes"),r)])}function qp(e){let r=e.value??0n;return AbiParameters.encodePacked(["uint8","address","uint256","uint256","bytes"],[0,e.to,r,BigInt((e.data.length-2)/2),e.data])}var UR=m$1(g$1,f,h,i,c,b,a);function G(e,r="Expected a TransactionHandle"){return invariant(typeof e=="object"&&e!==null&&"transactionHash"in e&&"transactionId"in e&&"wait"in e&&typeof e.wait=="function",r),e}m$1(j,l);m$1(j,l);function HR(e){return async function(t){let o=await t.next();for(;!o.done;)try{switch(o.value.kind){case "requestAddress":o=await t.next(await e.getAddress());break;case "signAuthMessage":o=await t.next(await e.signTypedData(o.value.payload));break}}catch(n){o=await t.throw(n);}return o.value}}function H(e){return async function(t){let o=await t.next();for(;!o.done;)try{switch(o.value.kind){case "requestAddress":o=await t.next(await e.getAddress());break;case "signGaslessTypedData":case "signOrder":o=await t.next(await e.signTypedData(o.value.payload));break;case "signGaslessMessage":o=await t.next(await e.signMessage(o.value.payload));break;case "sendErc20ApprovalTransaction":case "sendErc1155ApprovalForAllTransaction":case "sendErc20TransferTransaction":case "sendPerpsDepositTransaction":case "sendMergePositionsTransaction":case "sendRedeemPositionsTransaction":case "sendSplitPositionTransaction":o=await t.next(await e.sendTransaction(o.value.request));break}}catch(n){o=await t.throw(n);}return o.value}}function Zo(){return {kind:"requestAddress"}}function K(e,r){return {chainId:e,...r}}var jp=[{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Hp=[{name:"to",type:"address"},{name:"value",type:"uint256"},{name:"data",type:"bytes"},{name:"operation",type:"uint8"},{name:"safeTxGas",type:"uint256"},{name:"baseGas",type:"uint256"},{name:"gasPrice",type:"uint256"},{name:"gasToken",type:"address"},{name:"refundReceiver",type:"address"},{name:"nonce",type:"uint256"}],_p="DepositWallet",Np="1",Gp=600,Kp=[{name:"target",type:"address"},{name:"value",type:"uint256"},{name:"data",type:"bytes"}],$p=[{name:"wallet",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"},{name:"calls",type:"Call[]"}],Vp=z.object({address:z.string(),type:z.enum(RelayerTransactionType)}),oE=m$1(g$1,f,c,b,a);async function at(e,r){let t=m(r,Vp);return unwrap(e.relayer.get("/v1/account/transactions/params",{params:g(t,{address:"address",type:"type"})}).andThen(y(RelayerExecuteParamsSchema)))}var Yp=z.object({transactionId:TransactionIdSchema}),Zp=z.object({wallet:EvmAddressSchema,type:z.enum(WalletType)}),nE=m$1(g$1,f,c,b,a);async function sE(e,r){let t=await Jp(e,r);return t.type===WalletType.EOA?false:unwrap(e.relayer.get("/deployed",{params:g({address:t.wallet,type:t.type===WalletType.DEPOSIT_WALLET?RelayerTransactionType.WALLET:void 0},{address:"address",type:"type"})}).andThen(y(RelayerDeployedResponseSchema)).map(({deployed:o})=>o))}async function Jp(e,r){if(r!==void 0)return m(r,Zp);if(!e.isSecureClient())throw new a("Gasless readiness inference requires a secure client. Pass a wallet and type when using a public client.");return e.account.walletType!==WalletType.EOA?{wallet:e.account.wallet,type:e.account.walletType}:{wallet:await ho(e.rpc,e.account.signer,e.environment.walletDerivation),type:WalletType.DEPOSIT_WALLET}}var $=z.string().max(500),Jo=10,aE=m$1(g$1,f,c,b,a);async function iE(e){return invariant(e.supportsGasless,"Deposit Wallet deployment requires a Relayer API Key or Builder API Key in the client configuration."),Er(e,{from:e.account.signer,metadata:"Deploy Deposit Wallet",to:e.environment.walletDerivation.depositWalletFactory,type:RelayerTransactionType.WALLET_CREATE})}async function Qp(e,r){let t=m(r,Yp);return unwrap(e.relayer.get(`/v1/account/transactions/${t.transactionId}`).andThen(y(GaslessTransactionSchema)))}var Xp=z.object({data:z.custom(isHexString),to:EvmAddressSchema,value:z.bigint().optional()}),ec=z.object({calls:z.array(Xp).min(1).transform(e=>expectNonEmptyArray(e)),metadata:$}),pE=m$1(g$1,f,c,b,a);async function Q(e,r){let t=m(r,ec);return invariant(e.supportsGasless,"Gasless transactions require a Relayer API Key or Builder API Key in the client configuration."),invariant(e.account.walletType===WalletType.GNOSIS_SAFE||e.account.walletType===WalletType.POLY_PROXY||e.account.walletType===WalletType.DEPOSIT_WALLET,"Gasless transaction preparation supports Deposit Wallet, Safe-backed, and proxy-backed accounts"),async function*(){let o=expectEvmAddress(yield Zo());invariant(o===e.account.signer,"Wallet client address does not match the authenticated signer");for(let n=0;n<=Jo;n+=1)try{switch(e.account.walletType){case WalletType.POLY_PROXY:return yield*rc(e,t);case WalletType.DEPOSIT_WALLET:return yield*tc(e,t);case WalletType.GNOSIS_SAFE:return yield*oc(e,t)}invariant(!1,"Unsupported wallet type for gasless transaction");}catch(s){if(!dt(s)||n===Jo)throw s;await delay(e.environment.relayerPollFrequencyMs);}invariant(false,"Expected gasless transaction retry loop to return");}.call(null)}async function*rc(e,r){let t=yield*it(e,r.calls,r.metadata);return Er(e,t)}async function*it(e,r,t){let o=await at(e,{address:e.account.signer,type:RelayerTransactionType.PROXY}),n=e.environment.walletDerivation.proxyFactory,s=Vo(r),a="0",f="0",P=(await e.rpc.ethEstimateGas({data:s,from:e.account.signer,to:n})).toString(),v=e.environment.contracts.relayHub,C=o.address,z=dc(e.account.signer,n,s,a,f,P,o.nonce,v,C),L=expectEvmSignature(yield en(z));return {data:s,from:e.account.signer,...t!==void 0&&{metadata:t},nonce:o.nonce,proxyWallet:e.account.wallet,signature:L,signatureParams:{gasLimit:P,gasPrice:f,relay:C,relayHub:v,relayerFee:a},to:n,type:RelayerTransactionType.PROXY}}async function*tc(e,r){let t=yield*pt(e,r.calls,r.metadata);return Er(e,t)}async function*pt(e,r,t){let o=await at(e,{address:e.account.signer,type:RelayerTransactionType.WALLET}),n=r.map(nc),s=`${Math.floor(Date.now()/1e3)+Gp}`,a=expectEvmSignature(yield cc(sc({calls:n,chainId:e.environment.chainId,deadline:s,nonce:o.nonce,wallet:e.account.wallet})));return {depositWalletParams:{calls:n,deadline:s,depositWallet:e.account.wallet},from:e.account.signer,...t!==void 0&&{metadata:t},nonce:o.nonce,signature:a,to:e.environment.walletDerivation.depositWalletFactory,type:RelayerTransactionType.WALLET}}async function*oc(e,r){let t=yield*ct(e,r.calls,r.metadata);return Er(e,t)}async function*ct(e,r,t){let o=await at(e,{address:e.account.signer,type:RelayerTransactionType.SAFE}),n=ac(r,e.environment.contracts.safeMultisend),s=pc({chainId:e.environment.chainId,data:n.data,nonce:o.nonce,operation:n.operation,safeAddress:e.account.wallet,to:n.to,value:n.value}),a=expectEvmSignature(yield en(expectHexString(TypedData.getSignPayload(s))));return {data:n.data,from:e.account.signer,...t!==void 0&&{metadata:t},nonce:o.nonce,proxyWallet:e.account.wallet,signature:uc(a),signatureParams:ic(n.operation),to:n.to,type:RelayerTransactionType.SAFE,value:n.value>0n?`${n.value}`:void 0}}async function Er(e,r){let t=m(r,RelayerExecuteRequestSchema),o=await unwrap(e.relayer.post("/submit",{json:t}).andThen(y(RelayerExecuteResponseSchema)));return new Xe(e,o)}function dt(e){if(e instanceof g$1)return true;if(!(e instanceof f)||e.status!==400)return false;if(/wallet busy/i.test(e.message)&&/active action/i.test(e.message)||/wallet has in-flight action/i.test(e.message))return true;let r=/batch nonce\s+(\d+)\s+does not match on-chain nonce\s+(\d+)/i.exec(e.message);if(r===null)return false;let t=r[1],o=r[2];return t===void 0||o===void 0?false:BigInt(t)<BigInt(o)}function nc(e){return {data:e.data,target:e.to,value:`${e.value??0n}`}}function sc(e){return {domain:{chainId:e.chainId,name:_p,verifyingContract:e.wallet,version:Np},message:{calls:e.calls.map(r=>({data:r.data,target:r.target,value:BigInt(r.value)})),deadline:BigInt(e.deadline),nonce:BigInt(e.nonce),wallet:e.wallet},primaryType:"Batch",types:{Batch:$p,Call:Kp}}}function ac(e,r){if(e.length===1){let[t]=e;return {data:t.data,operation:0,to:t.to,value:t.value??0n}}return {data:Yo(e),operation:1,to:r,value:0n}}function ic(e){return {baseGas:"0",gasPrice:"0",gasToken:ZERO_ADDRESS,operation:`${e}`,refundReceiver:ZERO_ADDRESS,safeTxnGas:"0"}}function pc(e){return {domain:{chainId:e.chainId,verifyingContract:e.safeAddress},message:{baseGas:0n,data:e.data,gasPrice:0n,gasToken:ZERO_ADDRESS,nonce:BigInt(e.nonce),operation:e.operation,refundReceiver:ZERO_ADDRESS,safeTxGas:0n,to:e.to,value:e.value},primaryType:"SafeTx",types:{EIP712Domain:jp,SafeTx:Hp}}}function en(e){return {kind:"signGaslessMessage",payload:e}}function cc(e){return {kind:"signGaslessTypedData",payload:e}}function dc(e,r,t,o,n,s,a,f,P){return expectHexString(Hash.keccak256(Bytes.concat(Bytes.fromString("rlx:"),Bytes.fromHex(e),Bytes.fromHex(r),Bytes.fromHex(t),Bytes.fromNumber(BigInt(o),{size:32}),Bytes.fromNumber(BigInt(n),{size:32}),Bytes.fromNumber(BigInt(s),{size:32}),Bytes.fromNumber(BigInt(a),{size:32}),Bytes.fromHex(f),Bytes.fromHex(P)),{as:"Hex"}))}function uc(e){let r=e.slice(2),t=Number.parseInt(r.slice(128,130),16),o=t===0||t===1?t+31:t===27||t===28?t+4:t;return expectHexString(`0x${r.slice(0,128)}${o.toString(16).padStart(2,"0")}`)}var cE=m$1(g$1,f,c,b,a,h,i),Xe=class{#e;transactionHash;transactionId;constructor(r,t){this.#e=r,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId;}async wait(){let r=0;for(;r<this.#e.environment.relayerMaxPolls;){let t=await Qp(this.#e,{transactionId:this.transactionId});if(t.state===RelayerTransactionState.STATE_CONFIRMED){let o=t.transactionHash??this.transactionHash;if(o===null)throw new b("Expected submitted transaction to have a transaction hash once settled");return {transactionHash:o,transactionId:t.transactionId}}if(t.state===RelayerTransactionState.STATE_FAILED||t.state===RelayerTransactionState.STATE_INVALID)throw new i(t.errorMsg??`Transaction ${t.transactionId} reached terminal state ${t.state}`);r+=1,await delay(this.#e.environment.relayerPollFrequencyMs);}throw new h(`Timed out waiting for transaction ${this.transactionId} to settle`)}};var lc=z.object({amount:z.union([z.bigint(),z.literal("max")]),metadata:$.optional(),spenderAddress:EvmAddressSchema,tokenAddress:EvmAddressSchema}),SE=m$1(a);async function mc(e,r){let t=m(r,lc),o=t.amount==="max"?ee:t.amount;return async function*(){return e.account.walletType===WalletType.EOA?G(yield on(K(e.environment.chainId,fr(t.tokenAddress,t.spenderAddress,o)))):yield*await Q(e,{calls:[fr(t.tokenAddress,t.spenderAddress,o)],metadata:t.metadata??`Approve ${t.amount} of ${t.tokenAddress} to ${t.spenderAddress}`})}.call(null)}var hE=m$1(j,g$1,f,l,c,b,a);function rn(e,r){return mc(e,r).then(H(e.signer))}var yc=z.object({approved:z.boolean().default(true),metadata:$.optional(),operatorAddress:EvmAddressSchema,tokenAddress:EvmAddressSchema}),TE=m$1(a);async function fc(e,r){let t=m(r,yc);return async function*(){return e.account.walletType===WalletType.EOA?G(yield nn(K(e.environment.chainId,Pr(t.tokenAddress,t.operatorAddress,t.approved)))):yield*await Q(e,{calls:[Pr(t.tokenAddress,t.operatorAddress,t.approved)],metadata:t.metadata??`${t.approved?"Approve":"Revoke"} ${t.operatorAddress} on ${t.tokenAddress}`})}.call(null)}var xE=m$1(j,g$1,f,l,c,b,a);function tn(e,r){return fc(e,r).then(H(e.signer))}var CE=m$1(f,c,b,a);async function Pc(e){let r=await gc(e),t=r.erc20.map(n=>fr(n.tokenAddress,n.spenderAddress,n.amount)),o=r.erc1155.map(n=>Pr(n.tokenAddress,n.operatorAddress,true));return async function*(){if(t.length===0&&o.length===0)return;if(e.account.walletType===WalletType.EOA){for(let s of t)await G(yield on(K(e.environment.chainId,s))).wait();for(let s of o)await G(yield nn(K(e.environment.chainId,s))).wait();return}await(yield*await Q(e,{calls:[...t,...o],metadata:"Trading setup approvals"})).wait();}.call(null)}var bE=m$1(j,g$1,f,l,h,i,c,b,a);function IE(e){return Pc(e).then(H(e.signer)).then(()=>{})}async function gc(e){let r=Rc(e),t=[...r.erc20.map(a=>Mo(a.tokenAddress,e.account.wallet,a.spenderAddress)),...r.erc1155.map(a=>Uo(a.tokenAddress,e.account.wallet,a.operatorAddress))],o=await e.rpc.ethCallBatch(t),n=o.slice(0,r.erc20.length),s=o.slice(r.erc20.length);return {erc20:r.erc20.filter((a,f)=>Bo(n[f])<a.amount),erc1155:r.erc1155.filter((a,f)=>!Do(s[f]))}}function Rc(e){let{contracts:r}=e.environment;return {erc20:[{amount:ee,spenderAddress:r.standardExchange,tokenAddress:r.collateralToken},{amount:ee,spenderAddress:r.negRiskExchange,tokenAddress:r.collateralToken},{amount:ee,spenderAddress:r.collateralAdapter,tokenAddress:r.collateralToken},{amount:ee,spenderAddress:r.negRiskCollateralAdapter,tokenAddress:r.collateralToken},{amount:ee,spenderAddress:r.protocolV2Router,tokenAddress:r.collateralToken},{amount:ee,spenderAddress:r.exchangeV3,tokenAddress:r.collateralToken},{amount:ee,spenderAddress:r.perpsDepositContract,tokenAddress:r.collateralToken}],erc1155:[{operatorAddress:r.standardExchange,tokenAddress:r.conditionalTokens},{operatorAddress:r.negRiskExchange,tokenAddress:r.conditionalTokens},{operatorAddress:r.collateralAdapter,tokenAddress:r.conditionalTokens},{operatorAddress:r.negRiskCollateralAdapter,tokenAddress:r.conditionalTokens},{operatorAddress:r.autoRedeemOperator,tokenAddress:r.conditionalTokens},{operatorAddress:r.protocolV2Router,tokenAddress:r.positionManager},{operatorAddress:r.exchangeV3,tokenAddress:r.positionManager},{operatorAddress:r.autoRedeemOperator,tokenAddress:r.positionManager}]}}function on(e){return {kind:"sendErc20ApprovalTransaction",request:e}}function nn(e){return {kind:"sendErc1155ApprovalForAllTransaction",request:e}}var LE=m$1(g$1,f,c,b);async function Tc(e,r){return unwrap(e.clob.post("/auth/api-key",{headers:pn(r)}).andThen(y(ApiKeyCredsSchema)))}var FE=m$1(g$1,f,c,b);async function xc(e,r){return unwrap(e.clob.get("/auth/derive-api-key",{headers:pn(r)}).andThen(y(ApiKeyCredsSchema)))}var ME=m$1(g$1,f,c,b);async function BE(e,r){try{return await Tc(e,r)}catch(t){if(!(t instanceof f)||t.status!==400)throw t}return xc(e,r)}var UE=m$1(g$1,f,l,c,b);async function DE(e){return (await unwrap(e.secureClob.get("/auth/api-keys").andThen(y(ApiKeysResponseSchema)))).apiKeys}var zE=m$1(g$1,f,l,c,b);async function WE(e){await unwrap(e.secureClob.del("/auth/api-key").andThen(y(z.literal("OK"))));}var jE=m$1(g$1,f,l,c,b);async function HE(e){return unwrap(e.secureClob.post("/auth/builder-api-key").andThen(y(BuilderApiKeyCredsSchema)))}var _E=m$1(g$1,f,l,c,b);async function NE(e){return unwrap(e.secureClob.get("/auth/builder-api-key").andThen(y(BuilderApiKeysResponseSchema)))}var GE=m$1(g$1,f,l,c,b);async function KE(e){await unwrap(e.clob.del("/auth/builder-api-key").andThen(y(z.literal("OK"))));}function pn(e){return {POLY_ADDRESS:e.address,POLY_NONCE:`${e.nonce}`,POLY_SIGNATURE:e.signature,POLY_TIMESTAMP:`${e.timestamp}`}}var qc=z.object({after:z.string().optional(),before:z.string().optional(),builderCode:BuilderCodeSchema,cursor:PaginationCursorSchema.optional(),id:z.string().optional(),market:z.string().optional(),tokenId:z.string().optional()}),tS=m$1(g$1,f,c,b,a);function oS(e,r){let{cursor:t,...o}=m(r,qc);return x(n=>e.clob.get("/builder/trades",{params:g({...o,nextCursor:n},E({builderCode:"builder_code",tokenId:"asset_id"}))}).andThen(y(PaginatedBuilderTradesSchema)).map(s=>({items:s.data,hasMore:s.nextCursor!==END_CURSOR,nextCursor:s.nextCursor===END_CURSOR?void 0:toPaginationCursor(s.nextCursor),totalCount:s.count})),t)}var Zc=z.object({tokenId:z.string()}),yS=m$1(g$1,f,c,b,a);async function fS(e,r){let t=m(r,Zc);return (await unwrap(e.clob.get("/midpoint",{params:g(t,E())}).andThen(y(MidpointSchema)))).mid}var Jc=z.array(z.object({tokenId:z.string()})).min(1),PS=m$1(g$1,f,c,b,a);async function gS(e,r){let t=m(r,Jc);return unwrap(e.clob.post("midpoints",{json:Tr(t)}).andThen(y(MidpointsSchema)))}var Qc=z.object({tokenId:z.string()}),RS=m$1(g$1,f,c,b,a);async function Ue(e,r){let t=m(r,Qc);return (await unwrap(e.clob.get("/tick-size",{params:g(t,E())}).andThen(y(FetchTickSizeResponseSchema)))).minimumTickSize}var Xc=z.object({tokenId:z.string()}),ES=m$1(g$1,f,c,b,a);async function De(e,r){let t=m(r,Xc);return (await unwrap(e.clob.get("/neg-risk",{params:g(t,E())}).andThen(y(FetchNegRiskResponseSchema)))).negRisk}var ed=z.object({tokenId:TokenIdSchema}),SS=m$1(g$1,f,c,b,a);async function yn(e,r){let t=m(r,ed);return unwrap(e.clob.get(`/markets-by-token/${t.tokenId}`).andThen(y(ResolveConditionByTokenResponseSchema)))}var rd=z.object({conditionId:CtfConditionIdSchema}),hS=m$1(g$1,f,c,b,a);async function fn(e,r){let t=m(r,rd);return unwrap(e.clob.get(`/clob-markets/${t.conditionId}`).andThen(y(FetchMarketInfoResponseSchema)))}var td=z.object({builderCode:BuilderCodeSchema}),TS=m$1(g$1,f,c,b,a);async function Pn(e,r){let t=m(r,td);return unwrap(e.clob.get(`/fees/builder-fees/${t.builderCode}`).andThen(y(FetchBuilderFeeRatesResponseSchema)).mapErr(o=>o instanceof f&&o.status===404?new a(`Unknown builder code: ${t.builderCode}`,{cause:o}):o))}var od=z.object({tokenId:z.string(),side:OrderSideSchema}),xS=m$1(g$1,f,c,b,a);async function CS(e,r){let t=m(r,od);return (await unwrap(e.clob.get("/price",{params:g(t,E())}).andThen(y(PriceSchema)))).price}var nd=z.array(z.object({tokenId:z.string(),side:OrderSideSchema})).min(1),bS=m$1(g$1,f,c,b,a);async function IS(e,r){let t=m(r,nd);return unwrap(e.clob.post("prices",{json:yd(t)}).andThen(y(PricesSchema)))}var sd=z.object({tokenId:z.string()}),kS=m$1(g$1,f,c,b,a);async function gn(e,r){let t=m(r,sd);return unwrap(e.clob.get("/book",{params:g(t,E())}).andThen(y(FetchOrderBookResponseSchema)))}var ad=z.array(z.object({tokenId:z.string()})).min(1),qS=m$1(g$1,f,c,b,a);async function vS(e,r){let t=m(r,ad);return unwrap(e.clob.post("books",{json:Tr(t)}).andThen(y(OrderBooksSchema)))}var id=z.object({tokenId:z.string()}),AS=m$1(g$1,f,c,b,a);async function OS(e,r){let t=m(r,id);return (await unwrap(e.clob.get("/spread",{params:g(t,E())}).andThen(y(SpreadSchema)))).spread}var pd=z.array(z.object({tokenId:z.string()})).min(1),wS=m$1(g$1,f,c,b,a);async function LS(e,r){let t=m(r,pd);return unwrap(e.clob.post("spreads",{json:Tr(t)}).andThen(y(SpreadsSchema)))}var cd=z.object({tokenId:z.string()}),FS=m$1(g$1,f,c,b,a);async function MS(e,r){let t=m(r,cd);return unwrap(e.clob.get("/last-trade-price",{params:g(t,E())}).andThen(y(LastTradePriceSchema)))}var dd=z.array(z.object({tokenId:z.string()})).min(1),BS=m$1(g$1,f,c,b,a);async function US(e,r){let t=m(r,dd);return unwrap(e.clob.post("last-trades-prices",{json:Tr(t)}).andThen(y(LastTradePricesSchema)))}var ud=z.object({tokenId:z.string(),startTs:z.number().int().optional(),endTs:z.number().int().optional(),fidelity:z.number().int().positive().optional(),interval:PriceHistoryIntervalSchema.optional()}),DS=m$1(g$1,f,c,b,a);async function zS(e,r){let t=m(r,ud);return (await unwrap(e.clob.get("/prices-history",{params:g(t,{tokenId:"market",startTs:"startTs",endTs:"endTs",fidelity:"fidelity",interval:"interval"})}).andThen(y(PriceHistorySchema)))).history}var ld=z.object({cursor:PaginationCursorSchema.optional(),sponsored:z.boolean().optional()}).default({}),WS=m$1(g$1,f,c,b,a);function jS(e,r={}){let{cursor:t,...o}=m(r,ld);return x(n=>e.clob.get("/rewards/markets/current",{params:g({...o,nextCursor:n},E())}).andThen(y(PaginatedCurrentRewardsSchema)).map(s=>({items:s.data,hasMore:s.nextCursor!==END_CURSOR,nextCursor:s.nextCursor===END_CURSOR?void 0:toPaginationCursor(s.nextCursor),totalCount:s.count})),t)}var md=z.object({conditionId:CtfConditionIdSchema,cursor:PaginationCursorSchema.optional(),sponsored:z.boolean().optional()}),HS=m$1(g$1,f,c,b,a);function _S(e,r){let{cursor:t,...o}=m(r,md);return x(n=>e.clob.get(`rewards/markets/${o.conditionId}`,{params:g({nextCursor:n,sponsored:o.sponsored},E())}).andThen(y(PaginatedMarketRewardsSchema)).map(s=>({items:s.data,hasMore:s.nextCursor!==END_CURSOR,nextCursor:s.nextCursor===END_CURSOR?void 0:toPaginationCursor(s.nextCursor),totalCount:s.count})),t)}function Tr(e){return e.map(({tokenId:r})=>({token_id:r}))}function yd(e){return e.map(({tokenId:r,side:t})=>({token_id:r,side:t}))}var Sn=2*6e4,rh=m$1(g$1,f,c,b);async function th(e){return hn(e),unwrap(e.combos.post("/v1/collateral-return/plan",{json:{wallet:e.account.wallet},timeout:Sn}).andThen(y(CollateralReturnPlanResponseSchema)))}var hd=z.object({plan:CollateralReturnPlanSchema}),Rn=10,lt="Collateral return",oh=m$1(f,c,b,a);async function Td(e,r){let{plan:t}=m(r,hd);if(invariant(e.supportsGasless,"Collateral return execution requires a Relayer API Key or Builder API Key in the client configuration."),hn(e),!isSameEvmAddress(t.wallet,e.account.wallet))throw new a("The collateral return plan was created for a different wallet than the authenticated account.");if(t.chainId!==e.environment.chainId)throw new a(`The collateral return plan was created for chain ${t.chainId}, but the client is configured for chain ${e.environment.chainId}.`);return async function*(){let o=[{data:t.routerCall.data,to:t.routerCall.to,value:0n}];for(let n=0;n<=Rn;n+=1)try{let s=yield*xd(e,o);return await Cd(e,t.planHash,s)}catch(s){if(!dt(s)||n===Rn)throw s;await delay(e.environment.relayerPollFrequencyMs);}invariant(false,"Expected collateral return submit retry loop to return");}.call(null)}var nh=m$1(j,g$1,f,l,c,b,a);function sh(e,r){return Td(e,r).then(H(e.signer))}function hn(e){invariant(e.account.walletType===WalletType.DEPOSIT_WALLET||e.account.walletType===WalletType.GNOSIS_SAFE||e.account.walletType===WalletType.POLY_PROXY,"Collateral return supports Deposit Wallet, Safe Wallet, and Proxy Wallet accounts");}function xd(e,r){switch(e.account.walletType){case WalletType.GNOSIS_SAFE:return ct(e,r,lt);case WalletType.POLY_PROXY:return it(e,r,lt);default:return pt(e,r,lt)}}async function Cd(e,r,t){let o=await unwrap(e.combos.post("/v1/collateral-return/submit",{json:{envelope:t,plan_hash:r},timeout:Sn}).andThen(y(RelayerExecuteResponseSchema)));return new Xe(e,o)}var Ad=z.object({ascending:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),pageSize:O.max(100).default(20),getPositions:z.boolean().optional(),holdersOnly:z.boolean().optional(),order:z.string().optional(),parentEntityId:z.union([EventIdSchema,SeriesIdSchema]),parentEntityType:CommentParentEntityTypeSchema}),Od=z.object({getPositions:z.boolean().optional(),id:CommentIdSchema}),wd=z.object({address:z.string(),ascending:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),order:z.string().optional(),pageSize:O.max(100).default(20)}),Rh=m$1(g$1,f,c,b,a);function Eh(e,r){let{cursor:t,pageSize:o,...n}=m(r,Ad);return x(s=>{let a=U(s,o);return e.gamma.get("/comments",{params:g({ascending:n.ascending,getPositions:n.getPositions,holdersOnly:n.holdersOnly,limit:a.pageSize,offset:a.offset,order:n.order,parentEntityId:n.parentEntityId,parentEntityType:n.parentEntityType},E())}).andThen(y(ListCommentsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var Sh=m$1(g$1,f,c,b,a);async function hh(e,r){let t=m(r,Od);return unwrap(e.gamma.get(`comments/${t.id}`,{params:g({getPositions:t.getPositions},E())}).andThen(y(ListCommentsResponseSchema)))}var Th=m$1(g$1,f,c,b,a);function xh(e,r){let{address:t,cursor:o,pageSize:n,...s}=m(r,wd);return x(a=>{let f=U(a,n);return e.gamma.get(`comments/user_address/${t}`,{params:g({ascending:s.ascending,limit:f.pageSize,offset:f.offset,order:s.order},E())}).andThen(y(ListCommentsResponseSchema)).map(P=>{let v=P.length>=f.pageSize;return {items:P,hasMore:v,nextCursor:v?B({offset:f.offset+f.pageSize,pageSize:f.pageSize}):void 0}})},o)}function xr(e,r){let t;try{t=new URL(e);}catch(f){throw new a("Expected a valid Polymarket URL.",{cause:f})}if(t.protocol!=="https:"||t.hostname!=="polymarket.com"&&t.hostname!=="www.polymarket.com")throw new a("Expected a valid Polymarket URL.");let[o,n,...s]=t.pathname.split("/").filter(Boolean),a$1=s[0];if(r==="market"&&o==="event"&&n!==void 0&&s.length<=1)return a$1??n;if(o!==r||n===void 0||s.length>0)throw new a(`Expected a Polymarket ${r} URL.`);return n}var Dd=z.object({ascending:z.boolean().optional(),closed:z.boolean().default(false),cursor:PaginationCursorSchema.optional(),pageSize:O.optional(),cyom:z.boolean().optional(),endDateMax:IsoDateTimeStringSchema.optional(),endDateMin:IsoDateTimeStringSchema.optional(),ended:z.boolean().optional(),eventDate:IsoCalendarDateStringSchema.optional(),eventWeek:z.number().int().optional(),excludeTagIds:z.array(z.number().int()).optional(),featured:z.boolean().optional(),featuredOrder:z.boolean().optional(),gameIds:z.array(z.number().int()).optional(),ids:z.array(z.number().int()).optional(),includeBestLines:z.boolean().optional(),includeChat:z.boolean().optional(),includeChildren:z.boolean().optional(),includeTemplate:z.boolean().optional(),liquidityMax:z.number().optional(),liquidityMin:z.number().optional(),live:z.boolean().optional(),locale:z.string().optional(),order:z.string().optional(),parentEventId:z.number().int().optional(),partnerSlug:z.string().optional(),recurrence:z.enum(["daily","weekly","monthly"]).optional(),relatedTags:z.boolean().optional(),seriesIds:z.array(z.number().int()).optional(),slug:z.array(z.string()).optional(),startDateMax:IsoDateTimeStringSchema.optional(),startDateMin:IsoDateTimeStringSchema.optional(),startTimeMax:IsoDateTimeStringSchema.optional(),startTimeMin:IsoDateTimeStringSchema.optional(),tagIds:z.array(z.number().int()).optional(),tagMatch:z.enum(["any","all"]).optional(),tagSlug:z.string().optional(),titleSearch:z.string().optional(),volumeMax:z.number().optional(),volumeMin:z.number().optional()}),zd=z.union([z.object({id:z.string(),includeBestLines:z.boolean().optional(),includeChat:z.boolean().optional(),includeTemplate:z.boolean().optional(),locale:z.string().optional()}),z.object({slug:z.string(),includeBestLines:z.boolean().optional(),includeChat:z.boolean().optional(),includeTemplate:z.boolean().optional(),locale:z.string().optional()}),z.object({url:z.string(),includeBestLines:z.boolean().optional(),includeChat:z.boolean().optional(),includeTemplate:z.boolean().optional(),locale:z.string().optional()})]),Wd=z.object({id:z.string()}),jd=z.object({id:z.string()}),Dh=m$1(g$1,f,c,b,a);function zh(e,r={}){let t=m(r,Dd);return x(o=>e.gamma.get("/events/keyset",{params:Hd({...t,cursor:o??t.cursor})}).andThen(y(ListEventsKeysetResponseSchema)).map(n=>({items:n.items,hasMore:n.nextCursor!==void 0,nextCursor:n.nextCursor})),t.cursor)}var Wh=m$1(g$1,f,c,b,a);async function jh(e,r){let t=m(r,zd);if("id"in t)return unwrap(e.gamma.get(`events/${t.id}`,{params:_d(t)}).andThen(y(EventSchema)));let o="url"in t?xr(t.url,"event"):t.slug;return unwrap(e.gamma.get(`events/slug/${o}`,{params:Nd(t)}).andThen(y(EventSchema)))}var Hh=m$1(g$1,f,c,b,a);async function _h(e,r){let t=m(r,Wd);return unwrap(e.gamma.get(`events/${t.id}/tags`).andThen(y(FetchEventTagsResponseSchema)))}var Nh=m$1(g$1,f,c,b,a);async function Gh(e,r){let t=m(r,jd);return unwrap(e.data.get("/live-volume",{params:N(t)}).andThen(y(FetchEventLiveVolumeResponseSchema)))}function Hd(e){return g(e,E({cursor:"after_cursor",excludeTagIds:"exclude_tag_id",gameIds:"game_id",ids:"id",pageSize:"limit",seriesIds:"series_id",tagIds:"tag_id"}))}function _d(e){return g({includeBestLines:e.includeBestLines,includeChat:e.includeChat,includeTemplate:e.includeTemplate,locale:e.locale},E())}function Nd(e){return g({includeBestLines:e.includeBestLines,includeChat:e.includeChat,includeTemplate:e.includeTemplate,locale:e.locale},E())}var Jd=z.object({cursor:PaginationCursorSchema.optional(),pageSize:O.max(50).default(20),timePeriod:TimePeriodSchema.optional()}),Qd=z.object({timePeriod:TimePeriodSchema.optional()}),Xd=z.object({category:LeaderboardCategorySchema.optional(),cursor:PaginationCursorSchema.optional(),pageSize:O.max(50).default(20),timePeriod:TimePeriodSchema.optional(),orderBy:LeaderboardOrderBySchema.optional(),user:z.string().optional(),userName:z.string().optional()}),tT=m$1(g$1,f,c,b,a);function oT(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,Jd);return x(s=>{let a=U(s,o);return e.data.get("/v1/builders/leaderboard",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListBuilderLeaderboardResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var nT=m$1(g$1,f,c,b,a);async function sT(e,r={}){let t=m(r,Qd);return unwrap(e.data.get("/v1/builders/volume",{params:N(t)}).andThen(y(ListBuilderVolumeResponseSchema)))}var aT=m$1(g$1,f,c,b,a);function iT(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,Xd);return x(s=>{let a=U(s,o);return e.data.get("/v1/leaderboard",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListTraderLeaderboardResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var tu=z.object({marketId:z.union([z.string(),z.array(z.string())]).optional(),eventId:z.union([z.string(),z.array(z.string())]).optional(),questionId:z.union([z.string(),z.array(z.string())]).optional(),state:z.union([z.enum(MarketClarificationState),z.array(z.enum(MarketClarificationState))]).optional(),showInFrontend:z.boolean().optional(),txHash:z.string().optional(),order:z.string().optional(),ascending:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),pageSize:O.max(100).default(20)}),gT=m$1(g$1,f,c,b,a);function RT(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,tu);return x(s=>{let a=U(s,o);return e.gamma.get("/market-clarifications",{params:g({...n,limit:a.pageSize,offset:a.offset},E())}).andThen(y(ListMarketClarificationsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var du=z.object({ascending:z.boolean().optional(),closed:z.boolean().optional(),clobTokenIds:z.array(z.string()).optional(),cursor:PaginationCursorSchema.optional(),pageSize:O.optional(),conditionIds:z.array(CtfConditionIdSchema).optional(),cyom:z.boolean().optional(),decimalized:z.boolean().optional(),endDateMax:IsoDateTimeStringSchema.optional(),endDateMin:IsoDateTimeStringSchema.optional(),gameId:z.string().optional(),ids:z.array(z.number().int()).optional(),includeTag:z.boolean().optional(),liquidityNumMax:z.number().optional(),liquidityNumMin:z.number().optional(),locale:z.string().optional(),marketMakerAddresses:z.array(z.string()).optional(),order:z.string().optional(),positionIds:z.array(PositionIdSchema).optional(),questionIds:z.array(z.string()).optional(),relatedTags:z.boolean().optional(),rfqEnabled:z.boolean().optional(),rewardsMinSize:z.number().optional(),slug:z.array(z.string()).optional(),sportsMarketTypes:z.array(z.string()).optional(),startDateMax:IsoDateTimeStringSchema.optional(),startDateMin:IsoDateTimeStringSchema.optional(),tagId:z.number().int().optional(),tagMatch:z.enum(["any","all"]).optional(),umaResolutionStatus:z.string().optional(),volumeNumMax:z.number().optional(),volumeNumMin:z.number().optional()}),uu=z.object({id:z.string(),includeTag:z.boolean().optional(),locale:z.string().optional()}),lu=z.object({slug:z.string(),includeTag:z.boolean().optional(),locale:z.string().optional()}),mu=z.object({url:z.string(),includeTag:z.boolean().optional(),locale:z.string().optional()}),yu=z.union([uu,lu,mu]),fu=z.object({id:z.string()}),Pu=z.object({limit:z.number().int().optional(),market:z.array(z.string()),minBalance:z.number().int().optional()}),gu=z.object({market:z.array(z.string()).optional()}),Ru=z.enum(["OPEN","CLOSED","ALL"]),Eu=z.enum(["TOKENS","CASH_PNL","REALIZED_PNL","TOTAL_PNL"]),Su=z.enum(["ASC","DESC"]),hu=z.object({cursor:PaginationCursorSchema.optional(),market:z.string(),pageSize:O.max(500).default(20),user:z.string().optional(),status:Ru.optional(),sortBy:Eu.optional(),sortDirection:Su.optional()}),wT=m$1(g$1,f,c,b,a);function vn(e,r={}){let t=m(r,du);return x(o=>e.gamma.get("/markets/keyset",{params:xu({...t,cursor:o??t.cursor})}).andThen(y(ListMarketsKeysetResponseSchema)).map(n=>({items:n.items,hasMore:n.nextCursor!==void 0,nextCursor:n.nextCursor})),t.cursor)}var Tu=z.object({cursor:PaginationCursorSchema.optional(),pageSize:O.max(100).optional(),exclude:z.array(CtfConditionIdSchema).optional()}),LT=m$1(g$1,f,c,b,a);function FT(e,r={}){let t=m(r,Tu);return x(o=>e.rfq.get("/v1/rfq/combo-markets",{params:Cu({...t,cursor:o??t.cursor})}).andThen(y(ListComboMarketsResponseSchema)).map(n=>({items:n.markets,hasMore:n.nextCursor!==void 0,nextCursor:n.nextCursor})),t.cursor)}var MT=m$1(g$1,f,c,b,a);async function BT(e,r){let t=m(r,yu);return "id"in t?bu(e,t):"url"in t?In(e,{includeTag:t.includeTag,locale:t.locale,slug:xr(t.url,"market")}):In(e,t)}var UT=m$1(g$1,f,c,b,a);async function DT(e,r){let t=m(r,fu);return unwrap(e.gamma.get(`markets/${t.id}/tags`).andThen(y(FetchMarketTagsResponseSchema)))}var zT=m$1(g$1,f,c,b,a);async function WT(e,r){let t=m(r,Pu);return unwrap(e.data.get("/holders",{params:N(t)}).andThen(y(ListMarketHoldersResponseSchema)))}var jT=m$1(g$1,f,c,b,a);async function HT(e,r={}){let t=m(r,gu);return unwrap(e.data.get("/oi",{params:N(t)}).andThen(y(ListOpenInterestResponseSchema)))}var _T=m$1(g$1,f,c,b,a);function NT(e,r){let{cursor:t,pageSize:o,...n}=m(r,hu);return x(s=>{let a=U(s,o);return e.data.get("/v1/market-positions",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListMarketPositionsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}function xu(e){return g(e,E({cursor:"after_cursor",ids:"id",marketMakerAddresses:"market_maker_address",pageSize:"limit"}))}function Cu(e){return g({cursor:e.cursor,exclude:e.exclude?.join(","),pageSize:e.pageSize},{cursor:"cursor",exclude:"exclude",pageSize:"limit"})}async function In(e,r){return unwrap(e.gamma.get(`markets/slug/${r.slug}`,{params:g({includeTag:r.includeTag,locale:r.locale},E())}).andThen(y(MarketSchema)))}async function bu(e,r){return unwrap(e.gamma.get(`markets/${r.id}`,{params:g({includeTag:r.includeTag,locale:r.locale},E())}).andThen(y(MarketSchema)))}var qu=z.object({orderId:z.string()}),vu=z.object({orderIds:z.array(z.string()).min(1).max(3e3)}),Au=z.object({tokenId:z.string().optional(),market:z.string().optional()}).refine(e=>e.market!==void 0||e.tokenId!==void 0,{message:"At least one of market or tokenId is required.",path:["market"]}),QT=m$1(f,g$1,l,c,b,a);async function XT(e,r){let t=m(r,qu);return Ir(e,"/order",{orderID:t.orderId})}var ex=m$1(f,g$1,l,c,b,a);async function rx(e,r){let t=m(r,vu);return Ir(e,"/orders",t.orderIds)}var tx=m$1(f,g$1,l,c,b);async function ox(e){return Ir(e,"/cancel-all")}var nx=m$1(f,g$1,l,c,b,a);async function sx(e,r){let t=m(r,Au);return Ir(e,"/cancel-market-orders",{asset_id:t.tokenId,market:t.market})}async function Ir(e,r,t){return unwrap(e.secureClob.del(r,{json:t}).andThen(y(CancelOrdersResponseSchema)))}var On=z.object({tokenId:z.string(),orderType:z.union([z.literal(OrderType.FAK),z.literal(OrderType.FOK)]).default(OrderType.FOK)}),wu=z.discriminatedUnion("side",[On.extend({side:z.literal(OrderSide.BUY),amount:PositiveDecimalNumberSchema}),On.extend({side:z.literal(OrderSide.SELL),shares:PositiveDecimalNumberSchema})]),mx=m$1(k,g$1,f,c,b,a);async function yx(e,r){let t=m(r,wu),o=await Ue(e,{tokenId:t.tokenId}),n=t.side===OrderSide.BUY?t.amount:t.shares;return gt(e,{amount:n,orderType:t.orderType,side:t.side,tickSize:o,tokenId:t.tokenId})}async function gt(e,r){let t=await gn(e,{tokenId:r.tokenId}),o=r.side===OrderSide.BUY?Fu(t.asks,r.amount,r.orderType):Mu(t.bids,r.amount,r.orderType);return invariant(Lu(o,r.tickSize),`Resolved market price fell outside the valid range for tick size ${r.tickSize}.`),o}function Lu(e,r){return e>=r&&e<=1-r}function Fu(e,r,t){if(e.length===0)throw new k("No resting liquidity.");let o=0;for(let s=e.length-1;s>=0;s-=1){let a=e[s];if(a!==void 0&&(o+=Number.parseFloat(a.size)*Number.parseFloat(a.price),o>=r))return Number.parseFloat(a.price)}if(t===OrderType.FOK)throw new k("Insufficient liquidity for full fill.");let n=e[0];return Number.parseFloat(n.price)}function Mu(e,r,t){if(e.length===0)throw new k("No resting liquidity.");let o=0;for(let s=e.length-1;s>=0;s-=1){let a=e[s];if(a!==void 0&&(o+=Number.parseFloat(a.size),o>=r))return Number.parseFloat(a.price)}if(t===OrderType.FOK)throw new k("Insufficient liquidity for full fill.");let n=e[0];return Number.parseFloat(n.price)}var zu=z.array(z.custom()).min(1).max(15),xx=m$1(g$1,f,l,c,b),Cx=m$1(g$1,f,l,c,b,a);function qr(e){return async function(t){let o=Mn(e,t);return unwrap(e.secureClob.post("/order",{json:o}).andThen(y(OrderResponseSchema)))}}function bx(e){return async function(t){let n=m(t,zu).map(s=>Mn(e,s));return unwrap(e.secureClob.post("/orders",{json:n}).andThen(y(OrderResponsesSchema)))}}function Mn(e,r){return invariant(r.postOnly!==true||r.orderType===OrderType.GTC||r.orderType===OrderType.GTD,"Post-only orders are only supported for GTC and GTD order types."),{deferExec:false,order:{builder:r.builder,expiration:`${r.expiration}`,maker:r.maker,makerAmount:r.makerAmount,metadata:r.metadata,salt:Number.parseInt(r.salt,10),side:r.side,signature:r.signature,signatureType:r.signatureType,signer:r.signer,takerAmount:r.takerAmount,timestamp:r.timestamp,tokenId:r.tokenId},orderType:r.orderType,owner:e.credentials.key,...r.postOnly===true?{postOnly:true}:{}}}function ue(e){return BigInt(Math.round(e*10**6))}function le(e,r){return V(e)<=r?e:Math.floor(e*10**r)/10**r}function be(e,r){return V(e)<=r?e:Math.ceil(e*10**r)/10**r}function Bn(e,r){return V(e)<=r?e:Math.round(e*10**r)/10**r}function Un(e,r){let t=V(r);if(V(e)>t)return false;let o=10**t;return Math.round(e*o)%Math.round(r*o)===0}function V(e){if(typeof e=="number"&&Number.isInteger(e))return 0;let[r="",t]=e.toString().toLowerCase().split("e"),[,o=""]=r.split("."),n=o.length;if(t===void 0)return n;let s=Number.parseInt(t,10);return Math.max(0,n-s)}function vr(e){switch(e){case .1:return {amount:3,price:1,size:2};case .01:return {amount:4,price:2,size:2};case .005:return {amount:5,price:3,size:2};case .0025:return {amount:6,price:4,size:2};case .001:return {amount:5,price:3,size:2};case 1e-4:return {amount:6,price:4,size:2}}invariant(false,`Unsupported tick size: ${e}`);}function nr(e,r,t){let o=V(r);if(e<r||e>1-r)throw new a(`${t} must be between ${r} and ${1-r} for tick size ${r}.`);if(V(e)>o)throw new a(`${t} must conform to tick size ${r} with at most ${o} decimal places.`);if(!Un(e,r))throw new a(`${t} ${e} must be a multiple of tick size ${r}.`);return e}function We(e,r){return r?e.environment.contracts.negRiskExchange:e.environment.contracts.standardExchange}var Gu=180,Wn=z.strictObject({tokenId:TokenIdSchema,price:PositiveDecimalNumberSchema,size:PositiveDecimalNumberSchema,side:OrderSideSchema,builderCode:BuilderCodeSchema.optional(),postOnly:z.boolean().default(false),expiration:z.number().int().nonnegative().optional()}).superRefine((e,r)=>{if(e.expiration!==void 0){let t=Math.floor(Date.now()/1e3)+Gu;e.expiration<t&&r.addIssue({code:"custom",message:"Expiration must be at least 3 minutes in the future.",path:["expiration"]});}});async function jn(e,r){let t=await Ku(e,{price:r.price,tokenId:r.tokenId}),o=$u({price:t.price,side:r.side,size:r.size,tickSize:t.tickSize});return {builderCode:r.builderCode,chainId:e.environment.chainId,exchangeAddress:t.exchangeAddress,expiration:r.expiration??0,funderAddress:t.funderAddress,offeredAmount:o.offeredAmount,orderType:r.expiration===void 0?OrderType.GTC:OrderType.GTD,side:r.side,signer:t.signerAddress,requestedAmount:o.requestedAmount,tokenId:r.tokenId}}async function Ku(e,r){let t=e.account,o=await Ue(e,{tokenId:r.tokenId}),n=await De(e,{tokenId:r.tokenId});return {exchangeAddress:We(e,n),funderAddress:t.wallet,negRisk:n,price:nr(r.price,o,"Price"),signerAddress:t.signer,tickSize:o}}function $u(e){let r=vr(e.tickSize),t=Bn(e.price,r.price);if(e.side===OrderSide.BUY){let s=le(e.size,r.size),a=s*t;return V(a)>r.amount&&(a=be(a,r.amount+4),V(a)>r.amount&&(a=le(a,r.amount))),{offeredAmount:ue(a),requestedAmount:ue(s)}}let o=le(e.size,r.size),n=o*t;return V(n)>r.amount&&(n=be(n,r.amount+4),V(n)>r.amount&&(n=le(n,r.amount))),{offeredAmount:ue(o),requestedAmount:ue(n)}}var Hn=z.object({tokenId:TokenIdSchema,builderCode:BuilderCodeSchema.optional(),orderType:z.union([z.literal(OrderType.FAK),z.literal(OrderType.FOK)]).default(OrderType.FAK)}),_n=z.discriminatedUnion("side",[Hn.extend({side:z.literal(OrderSide.BUY),amount:PositiveDecimalNumberSchema,maxSpend:PositiveDecimalNumberSchema.optional(),maxPrice:PositiveDecimalNumberSchema.optional()}),Hn.extend({side:z.literal(OrderSide.SELL),shares:PositiveDecimalNumberSchema,minPrice:PositiveDecimalNumberSchema.optional()})]);async function Nn(e,r){let t=await Zu(e,r),o=Xu({amount:t.resolvedAmount,price:t.price,protectPrice:Qu(r),side:r.side,tickSize:t.tickSize});return {builderCode:r.builderCode,chainId:e.environment.chainId,exchangeAddress:t.exchangeAddress,expiration:0,funderAddress:t.funderAddress,offeredAmount:o.offeredAmount,orderType:r.orderType,side:r.side,signer:t.signerAddress,requestedAmount:o.requestedAmount,tokenId:r.tokenId}}async function Zu(e,r){let t=e.account,o=await Ue(e,{tokenId:r.tokenId}),n=r.side===OrderSide.BUY?r.amount:r.shares,s=await Ju(e,r,n,o),a=await De(e,{tokenId:r.tokenId}),f=await el(e,{amount:n,builderCode:r.builderCode,maxSpend:r.side===OrderSide.BUY?r.maxSpend:void 0,price:s,side:r.side,tokenId:r.tokenId});return {exchangeAddress:We(e,a),funderAddress:t.wallet,negRisk:a,price:s,resolvedAmount:f,signerAddress:t.signer,tickSize:o}}async function Ju(e,r,t,o){return r.side===OrderSide.BUY&&r.maxPrice!==void 0?nr(r.maxPrice,o,"maxPrice"):r.side===OrderSide.SELL&&r.minPrice!==void 0?nr(r.minPrice,o,"minPrice"):gt(e,{amount:t,orderType:r.orderType,side:r.side,tickSize:o,tokenId:r.tokenId})}function Qu(e){return e.side===OrderSide.BUY&&e.maxPrice!==void 0||e.side===OrderSide.SELL&&e.minPrice!==void 0}function Xu(e){let r=vr(e.tickSize),t=le(e.price,r.price),o=le(e.amount,r.size);if(e.side===OrderSide.BUY){let s=o/t;return V(s)>r.amount&&(s=be(s,r.amount+4),V(s)>r.amount&&(s=e.protectPrice?be(s,r.amount):le(s,r.amount))),{offeredAmount:ue(o),requestedAmount:ue(s)}}let n=o*t;return V(n)>r.amount&&(n=be(n,r.amount+4),V(n)>r.amount&&(n=e.protectPrice?be(n,r.amount):le(n,r.amount))),{offeredAmount:ue(o),requestedAmount:ue(n)}}async function el(e,r){if(r.side!==OrderSide.BUY||r.maxSpend===void 0)return r.amount;let[t,o]=await Promise.all([rl(e,r.tokenId),tl(e,r.builderCode)]);return ol({amount:r.amount,builderTakerFeeRate:o,platformFeeExponent:t.exponent,platformFeeRate:t.rate,maxSpend:r.maxSpend,price:r.price})}async function rl(e,r){let t=await yn(e,{tokenId:r});return (await fn(e,{conditionId:t})).feeInfo}async function tl(e,r){return r===void 0?0:(await Pn(e,{builderCode:r})).taker}function ol(e){let r=e.platformFeeRate*(e.price*(1-e.price))**e.platformFeeExponent,t=e.amount/e.price*r,o=e.amount+t+e.amount*e.builderTakerFeeRate;return e.maxSpend<=o?e.maxSpend/(1+r/e.price+e.builderTakerFeeRate):e.amount}var Gn="0x0000000000000000000000000000000000000000000000000000000000000000";function St(e,r){let t=Ro(r);return {builder:e.builderCode??Gn,chainId:e.chainId,exchangeAddress:e.exchangeAddress,expiration:e.expiration,maker:t.maker,makerAmount:e.offeredAmount.toString(),metadata:Gn,orderType:e.orderType,salt:nl().toString(),side:e.side,signatureType:t.signatureType,signer:t.signer,takerAmount:e.requestedAmount.toString(),timestamp:Date.now().toString(),tokenId:e.tokenId}}function ht(e,r){let{chainId:t,exchangeAddress:o,...n}=e;return {...n,signature:r}}function nl(){let e=new Uint8Array(8);return globalThis.crypto.getRandomValues(e),BigInt(`0x${Array.from(e,t=>t.toString(16).padStart(2,"0")).join("")}`)&(1n<<53n)-1n}var Vn="Polymarket CTF Exchange",il="DepositWallet",pl="1",Tt="0x0000000000000000000000000000000000000000000000000000000000000000",xt="Order(uint256 salt,address maker,address signer,uint256 tokenId,uint256 makerAmount,uint256 takerAmount,uint8 side,uint8 signatureType,uint256 timestamp,bytes32 metadata,bytes32 builder)",cl=Hash.keccak256(Bytes.fromString(xt),{as:"Hex"}),dl=Hash.keccak256(Bytes.fromString("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"),{as:"Hex"}),ul=Hash.keccak256(Bytes.fromString(Vn),{as:"Hex"}),ll=[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Yn=[{name:"salt",type:"uint256"},{name:"maker",type:"address"},{name:"signer",type:"address"},{name:"tokenId",type:"uint256"},{name:"makerAmount",type:"uint256"},{name:"takerAmount",type:"uint256"},{name:"side",type:"uint8"},{name:"signatureType",type:"uint8"},{name:"timestamp",type:"uint256"},{name:"metadata",type:"bytes32"},{name:"builder",type:"bytes32"}],ml=[{name:"contents",type:"Order"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"}];function Zn(e){let r=yl(e.domain,e.order);return e.order.signatureType!==SignatureType.POLY_1271?r:{domain:Xn(e.domain),message:{chainId:e.domain.chainId,contents:r.message,name:il,salt:Tt,verifyingContract:e.order.signer,version:pl},primaryType:"TypedDataSign",types:{Order:Yn,TypedDataSign:ml}}}function Jn(e){if(e.order.signatureType!==SignatureType.POLY_1271)return e.signature;let r=Bytes.toHex(Bytes.fromString(xt)),t=xt.length.toString(16).padStart(4,"0");return expectErc1271Signature(`0x${e.signature.slice(2)}${fl(e.domain).slice(2)}${Pl(e.order).slice(2)}${r.slice(2)}${t}`)}function Qn(e){return {builder:e.builder??Tt,maker:e.maker,makerAmount:BigInt(e.makerAmount),metadata:e.metadata??Tt,salt:BigInt(e.salt),side:Rl(e.side),signatureType:e.signatureType,signer:e.signer,takerAmount:BigInt(e.takerAmount),timestamp:BigInt(e.timestamp),tokenId:BigInt(e.tokenId)}}function yl(e,r){return {domain:Xn(e),message:Qn(r),primaryType:"Order",types:{EIP712Domain:ll,Order:Yn}}}function Xn(e){return {chainId:e.chainId,name:Vn,verifyingContract:e.exchange,version:e.protocolVersion}}function fl(e){return expectHexString(Hash.keccak256(AbiParameters.encode([{type:"bytes32"},{type:"bytes32"},{type:"bytes32"},{type:"uint256"},{type:"address"}],[dl,ul,gl(e.protocolVersion),BigInt(e.chainId),e.exchange]),{as:"Hex"}))}function Pl(e){let r=Qn(e);return expectHexString(Hash.keccak256(AbiParameters.encode([{type:"bytes32"},{type:"uint256"},{type:"address"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"uint8"},{type:"uint8"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"}],[cl,r.salt,r.maker,r.signer,r.tokenId,r.makerAmount,r.takerAmount,r.side,r.signatureType,r.timestamp,r.metadata,r.builder]),{as:"Hex"}))}function gl(e){return expectHexString(Hash.keccak256(Bytes.fromString(e),{as:"Hex"}))}function Rl(e){return e===0||e===1?e:e===OrderSide.BUY?0:1}function bt(e){return Zn({domain:es(e),order:e})}function It(e,r){return Jn({domain:es(e),order:e,signature:r})}function es(e){return {chainId:e.chainId,exchange:e.exchangeAddress,protocolVersion:"2"}}function kt(e){return {kind:"signOrder",payload:e}}var El=m$1(k,g$1,f,l,c,b,a);async function qt(e,r){let t=m(r,_n);return async function*(){let o=await Nn(e,t),n=St(o,e.account),s=expectEvmSignature(yield kt(bt(n)));return ht(n,It(n,s))}.call(null)}var Sl=m$1(g$1,f,l,c,b,a);async function vt(e,r){let t=m(r,Wn);return async function*(){let o=await jn(e,t),n=St(o,e.account),s=expectEvmSignature(yield kt(bt(n))),a=ht(n,It(n,s));return t.postOnly===true?{...a,postOnly:true}:a}.call(null)}var uC=El;async function lC(e,r){return ts(e,qt(e,r))}var mC=Sl;async function yC(e,r){return ts(e,vt(e,r))}async function ts(e,r){let t=await r;return async function*(){let o=yield*t;return qr(e)(o)}.call(null)}var xl=250,Cl=3e4,bl={timeoutMs:z.number().int().positive().optional()},Il=z.object(bl).default({}),TC=m$1(g$1,f,l,h,i,c,b,a);function kl(e){return e.status===TradeStatus.Confirmed||e.status===TradeStatus.Failed}function os(e){return e.status===TradeStatus.Failed}async function xC(e,r,t){let{timeoutMs:o=Cl}=m(t,Il),n=[...new Set(r.tradeIds)];if(n.length===0)return [...r.transactionsHashes];let s=new Map,a=Date.now()+o;for(;s.size<n.length;){let P=n.filter(C=>!s.has(C)),v=await Promise.all(P.map(C=>Co(e,{id:C}).firstPage()));for(let C of v)for(let z of C.items)n.includes(z.id)&&kl(z)&&s.set(z.id,z);if(s.size===n.length)break;if(Date.now()>=a){let C=n.filter(z=>!s.has(z));throw new h(`Timed out waiting for trades to settle: ${C.join(", ")}`)}await delay(xl);}let f=[...s.values()];if(f.every(os))throw new i(`Every fill of order ${r.orderId} failed execution: ${n.join(", ")}`);return [...new Set(f.filter(P=>!os(P)).map(P=>P.transactionHash))].map(P=>TxHashSchema.parse(P))}async function is(e,r){let t=r.side===OrderSide.BUY?AssetType.COLLATERAL:AssetType.CONDITIONAL,{allowances:o}=await Yr(e,r.side===OrderSide.BUY?{assetType:t}:{assetType:t,tokenId:r.tokenId});return vl(o,r.spenderAddress)}function vl(e,r){return Object.entries(e).find(([o])=>isSameEvmAddress(o,r))?.[1]??0n}var jC=m$1(j,k,g$1,f,l,c,b,a);function Al(e,r){return qt(e,r).then(H(e.signer))}var HC=m$1(j,k,g$1,f,l,h,i,c,b,a);function _C(e,r){return Al(e,r).then(t=>cs(e,t))}var NC=m$1(j,g$1,f,l,c,b,a);function Ol(e,r){return vt(e,r).then(H(e.signer))}var GC=m$1(j,g$1,f,l,h,i,c,b,a);function KC(e,r){return Ol(e,r).then(t=>cs(e,t))}async function cs(e,r){let t=qr(e);try{return await t(r)}catch(o){if(!Ll(o))throw o;let n=await wl(e,r,t);if(n===void 0)throw o;return n}}async function wl(e,r,t){return await Fl(e,r)?t(r):void 0}function Ll(e){return e instanceof f&&e.status===400&&e.message.includes("allowance is not enough")}async function Fl(e,r){let t=await De(e,{tokenId:r.tokenId}),o=We(e,t),n=BigInt(r.makerAmount);return await is(e,{spenderAddress:o,side:r.side,tokenId:r.tokenId})>=n?false:(await(r.side===OrderSide.BUY?await rn(e,{amount:"max",spenderAddress:o,tokenAddress:e.environment.contracts.collateralToken}):await tn(e,{operatorAddress:o,tokenAddress:e.environment.contracts.conditionalTokens})).wait(),await bo(e,{assetType:r.side===OrderSide.BUY?AssetType.COLLATERAL:AssetType.CONDITIONAL,tokenId:r.side===OrderSide.SELL?r.tokenId:void 0}),true)}function ds(e){let r=TypedData.getSignPayload(wt(e));return expectEvmSignature(Signature.toHex(Secp256k1.sign({payload:r,privateKey:e.privateKey})))}function wt(e){return {domain:{chainId:e.chainId,name:"Polymarket",version:"1"},message:{data:Hash.keccak256(encode(us(e.op)),{as:"Hex"}),salt:BigInt(e.salt),ts:BigInt(e.timestamp)},primaryType:"Op",types:{Op:[{name:"data",type:"bytes32"},{name:"salt",type:"uint64"},{name:"ts",type:"uint64"}]}}}function us(e){return Array.isArray(e)?e.filter(r=>r!==void 0).map(us):e}var Ar=class{#e;#r;#t;constructor({root:r,headers:t,resolveHeaders:o}){this.#e=po.create({prefixUrl:r,throwHttpErrors:false}),this.#r=t,this.#t=o;}get(r,t={}){return this.#n("GET",r,t)}post(r,t={}){return this.#n("POST",r,t)}patch(r,t={}){return this.#n("PATCH",r,t)}del(r,t={}){return this.#n("DELETE",r,t)}#o(r){return r.startsWith("/")?r.slice(1):r}#n(r,t,o){return this.#a(this.#c(r,t,o))}async#c(r,t,o){let n=this.#i(r,t,o),s=await this.#t?.(n),a=this.#p(this.#r,n.headers,s);return n.body!==void 0&&!a.has("content-type")&&a.set("content-type","application/json"),this.#e(this.#o(t),{body:n.body,headers:a,method:r,searchParams:n.params,...o.timeout!==void 0&&{timeout:o.timeout}})}#i(r,t,o){return {body:"json"in o?this.#s(o.json):void 0,headers:o.headers,json:"json"in o?o.json:void 0,method:r,params:"params"in o?o.params:void 0,path:t}}#s(r){if(r!==void 0)return JSON.stringify(r)}#p(...r){let t=new Headers;for(let o of r)if(o!==void 0)for(let[n,s]of new Headers(o).entries())t.set(n,s);return t}#a(r){return ResultAsync.fromPromise(r.then(async t=>{if(t.ok)return t;if(t.status===429)throw new g$1(`Request to ${t.url} was rate limited`);let o=await this.#d(t);throw new f(o,{status:t.status})}),t=>t instanceof g$1||t instanceof f?t:c.fromError(t))}async#d(r){let t=r.headers.get("content-type")?.toLowerCase();if(t?.includes("application/json")){let{error:n}=await r.clone().json().catch(()=>({}));if(n)return `${String(n)} (${r.url})`}if(t?.includes("text/plain")){let n=await r.clone().text().then(s=>s.trim(),()=>"");if(n)return `${n} (${r.url})`}return r.headers.get("server")?.toLowerCase()?.includes("cloudflare")?`Request to ${r.url} was blocked by Cloudflare with status ${r.status}`:t?.includes("text/html")||t?.includes("application/xhtml+xml")?`Request to ${r.url} failed with status ${r.status} and an unexpected HTML response body`:`Request to ${r.url} failed with status ${r.status} and unreadable response body`}};var _l=1e4,Nl=3e4,Gl=5e3,Kl=10*6e4,$l=3e4,Vl=25e3,Yl=65e3,ls=class{#e=0;#r;start(r){this.stop(),this.#e=Date.now(),this.#r=setNonBlockingInterval(()=>{r("PING");},_l);}handleMessage(r){return r!=="PONG"?false:(this.#e=Date.now(),true)}isStale(r){return r-this.#e>Nl}stop(){this.#r!==void 0&&(clearInterval(this.#r),this.#r=void 0);}},ms=class{#e=0;#r;start(r){this.stop(),this.#e=Date.now(),this.#r=setNonBlockingInterval(()=>{r("PING");},Gl);}handleMessage(){return this.#e=Date.now(),false}isStale(r){return r-this.#e>Kl}stop(){this.#r!==void 0&&(clearInterval(this.#r),this.#r=void 0);}},ys=class{#e=0;#r;start(r){this.#e=Date.now(),this.#r=r;}stop(){this.#r=void 0;}handleMessage(r){return r!=="ping"?false:(this.#e=Date.now(),this.#r?.("pong"),true)}isStale(r){return r-this.#e>$l}},Or=class{#e=0;#r;start(r){this.stop(),this.#e=Date.now(),this.#r=setNonBlockingInterval(()=>{r(JSON.stringify({id:0,req:"post",op:{type:"ping"}}));},Vl);}handleMessage(){return this.#e=Date.now(),false}isStale(r){return r-this.#e>Yl}stop(){this.#r!==void 0&&(clearInterval(this.#r),this.#r=void 0);}};var Ql=5e3,Xl=250,em=3e4,wr=class{#e;#r=0;schedule(r){if(this.#e!==void 0||!r.shouldReconnect())return;let t=tm(this.#r,{baseMs:Xl,maxMs:em});this.#r+=1,this.#e=setNonBlockingTimeout(()=>{this.#e=void 0,this.#t(r);},t);}stop(){this.#e!==void 0&&(clearTimeout(this.#e),this.#e=void 0);}resetBackoff(){this.#r=0,this.stop();}async#t(r){if(r.shouldReconnect())try{await r.reconnect();}catch{this.schedule(r);}}},Lr=class{#e;#r;#t;#o;constructor(r={}){this.#e=r.heartbeat;}connect(r){if(this.#r?.readyState===WebSocket.OPEN)return Promise.resolve({reusedOpenSocket:true});if(this.#s(),this.#t!==void 0)return this.#t;let o=this.#c(r).then(()=>({reusedOpenSocket:false})).catch(n=>{throw this.#t===o&&(this.#t=void 0),n});return this.#t=o,o}send(r){return this.#n(JSON.stringify(r))}#n(r){return this.#r?.readyState!==WebSocket.OPEN?false:(this.#r.send(r),true)}async close(){let r=await this.#d();this.#a(),!(r===void 0||r.readyState===WebSocket.CLOSED)&&await new Promise(t=>{r.addEventListener("close",()=>t(),{once:true}),r.readyState!==WebSocket.CLOSING&&r.close();});}async#c(r){let t=await r.prepare?.();return new Promise((o,n)=>{let s=rm(r.url,r.headers),a=()=>{s.removeEventListener("error",f),this.#i(s),this.#p(),r.onOpen(t),o(s);},f=P=>{s.removeEventListener("open",a),n(new c(`WebSocket connection failed: ${r.url}`,{cause:P}));};s.addEventListener("open",a,{once:true}),s.addEventListener("error",f,{once:true}),s.addEventListener("message",P=>{if(this.#r!==s)return;let v=String(P.data);if(this.#e?.handleMessage(v))return;let C;try{C=JSON.parse(v);}catch{return}r.onMessage(C);}),s.addEventListener("close",P=>{this.#r===s&&(this.#s(),r.onConnectionLost({code:P.code||1005,reason:P.reason??""}));}),s.addEventListener("error",()=>r.onError());})}#i(r){this.#r=r,this.#t=void 0;}#s(){this.#a(),this.#r=void 0;}#p(){this.#a();let r=this.#e;r!==void 0&&(r.start(t=>this.#n(t)),this.#o=setNonBlockingInterval(()=>{if(!r.isStale(Date.now()))return;let t=this.#r;t?.readyState===WebSocket.OPEN&&t.close();},Ql));}#a(){this.#o!==void 0&&(clearInterval(this.#o),this.#o=void 0),this.#e?.stop();}async#d(){let r=this.#r,t=this.#t;return this.#r=void 0,this.#t=void 0,r!==void 0?r:t?.then(()=>this.#r,()=>{})}};function rm(e,r){if(r===void 0)return new WebSocket(e);try{let t=Reflect.construct(WebSocket,[e,{headers:r}]);if(t instanceof WebSocket)return t}catch(t){throw new c("WebSocket headers require a header-capable WebSocket implementation.",{cause:t})}throw new c("WebSocket headers require a header-capable WebSocket implementation.")}function tm(e,r){let t=Math.min(r.baseMs*2**e,r.maxMs);return Math.random()*t}var ar=1440*60*1e3,Rs=90*ar,ye=z.number().int().nonnegative(),Fr=z.object({start:ye.optional(),end:ye.optional()}),Es=z.object({interval:PerpsPnlIntervalSchema,start:ye,end:ye.optional()}),Rm=z.enum(["perpsFills","perpsFundingPayments","perpsDeposits","perpsWithdrawals"]),Em=z.enum(["perpsEquityHistory","perpsPnlHistory"]),Mr=z.object({kind:Rm,startTimestamp:ye,endTimestamp:ye,instrumentId:PerpsInstrumentIdSchema.optional(),depositStatus:PerpsDepositStatusSchema.optional(),withdrawalStatus:PerpsWithdrawalStatusSchema.optional(),hash:TxHashSchema.optional(),seenKeys:z.array(z.string())}),Ss=z.object({kind:Em,startTimestamp:ye,endTimestamp:ye,interval:PerpsPnlIntervalSchema});async function hs(e){return await unwrap(e.get("/v1/account/balances").andThen(y(FetchPerpsBalancesResponseSchema)))}async function Ts(e){return await unwrap(e.get("/v1/account/portfolio").andThen(y(FetchPerpsPortfolioResponseSchema)))}async function xs(e){return await unwrap(e.get("/v1/account/stats").andThen(y(FetchPerpsAccountStatsResponseSchema)))}var Sm=z.object({instrumentId:PerpsInstrumentIdSchema.optional()}).default({});async function Cs(e,r){let t=m(r,Sm);return await unwrap(e.get("/v1/account/config",{params:Ee(t)}).andThen(y(FetchPerpsAccountConfigResponseSchema)))}var hm=z.object({instrumentId:PerpsInstrumentIdSchema.optional()}).default({});async function bs(e,r){let t=m(r,hm);return await unwrap(e.get("/v1/account/open-orders",{params:Ee(t)}).andThen(y(FetchPerpsOpenOrdersResponseSchema)))}var Tm=z.object({orderId:PerpsOrderIdSchema.optional(),clientOrderId:PerpsClientOrderIdSchema.optional(),instrumentId:PerpsInstrumentIdSchema.optional(),start:ye.optional(),end:ye.optional()}).default({}),xm=Tm.transform(({end:e,start:r,...t})=>({...t,endTimestamp:e,startTimestamp:r}));async function Is(e,r){let t=m(r,xm);return await unwrap(e.get("/v1/account/orders",{params:Ee(t)}).andThen(y(FetchPerpsOrdersResponseSchema)))}var Cm=Fr.extend({cursor:PaginationCursorSchema.optional()}),bm=z.object({cursor:PaginationCursorSchema}),Im=z.union([Cm.transform(({cursor:e,...r})=>({cursor:e,params:Br(r,ar)})),bm.transform(({cursor:e})=>({cursor:e,params:void 0}))]);function ks(e,r={}){let{cursor:t,params:o}=m(r,Im);return x(n=>{let s;n===void 0?(invariant(o!==void 0,"Expected initial Perps fills params."),s={kind:"perpsFills",seenKeys:[],...o}):s=Ne(n,Mr);let{kind:a,seenKeys:f,...P}=s,v=new Set(s.seenKeys);return e.get("/v1/account/fills",{params:Ee(P)}).andThen(y(ListPerpsFillsResponseSchema)).map(C=>{let z=C.data.filter(L=>!v.has(String(L.tradeId)));return Ur({getKey:L=>String(L.tradeId),getTimestamp:L=>L.timestamp,items:z,responseData:C.data,responseMore:C.more,state:s})})},t)}var km=Fr.extend({cursor:PaginationCursorSchema.optional(),instrumentId:PerpsInstrumentIdSchema.optional()}),qm=z.object({cursor:PaginationCursorSchema}),vm=z.union([km.transform(({cursor:e,...r})=>({cursor:e,params:Br(r,ar)})),qm.transform(({cursor:e})=>({cursor:e,params:void 0}))]);function qs(e,r={}){let{cursor:t,params:o}=m(r,vm);return x(n=>{let s;n===void 0?(invariant(o!==void 0,"Expected initial Perps funding payment params."),s={kind:"perpsFundingPayments",seenKeys:[],...o}):s=Ne(n,Mr);let{kind:a,seenKeys:f,...P}=s,v=new Set(s.seenKeys);return e.get("/v1/account/funding",{params:Ee(P)}).andThen(y(ListPerpsFundingPaymentsResponseSchema)).map(C=>{let z=C.data.filter(L=>!v.has(`${L.instrumentId}:${L.timestamp}:${L.funding}`));return Ur({getKey:L=>`${L.instrumentId}:${L.timestamp}:${L.funding}`,getTimestamp:L=>L.timestamp,items:z,responseData:C.data,responseMore:C.more,state:s})})},t)}var Am=Fr.extend({cursor:PaginationCursorSchema.optional(),depositStatus:PerpsDepositStatusSchema.optional(),hash:TxHashSchema.optional()}),Om=z.object({cursor:PaginationCursorSchema}),wm=z.union([Am.transform(({cursor:e,...r})=>({cursor:e,params:Br(r,Rs)})),Om.transform(({cursor:e})=>({cursor:e,params:void 0}))]);function vs(e,r={}){let{cursor:t,params:o}=m(r,wm);return x(n=>{let s;n===void 0?(invariant(o!==void 0,"Expected initial Perps deposit params."),s={kind:"perpsDeposits",seenKeys:[],...o}):s=Ne(n,Mr);let{kind:a,seenKeys:f,...P}=s,v=new Set(s.seenKeys);return e.get("/v1/account/deposits",{params:Ee(P)}).andThen(y(ListPerpsDepositsResponseSchema)).map(C=>{let z=C.data.filter(L=>!v.has(L.hash));return Ur({getKey:L=>L.hash,getTimestamp:Hm,items:z,responseData:C.data,responseMore:C.more,state:s})})},t)}var Lm=Fr.extend({cursor:PaginationCursorSchema.optional(),withdrawalStatus:PerpsWithdrawalStatusSchema.optional(),hash:TxHashSchema.optional()}),Fm=z.object({cursor:PaginationCursorSchema}),Mm=z.union([Lm.transform(({cursor:e,...r})=>({cursor:e,params:Br(r,Rs)})),Fm.transform(({cursor:e})=>({cursor:e,params:void 0}))]);function As(e,r={}){let{cursor:t,params:o}=m(r,Mm);return x(n=>{let s;n===void 0?(invariant(o!==void 0,"Expected initial Perps withdrawal params."),s={kind:"perpsWithdrawals",seenKeys:[],...o}):s=Ne(n,Mr);let{kind:a,seenKeys:f,...P}=s,v=new Set(s.seenKeys);return e.get("/v1/account/withdrawals",{params:Ee(P)}).andThen(y(ListPerpsWithdrawalsResponseSchema)).map(C=>{let z=C.data.filter(L=>!v.has(String(L.withdrawalId)));return Ur({getKey:L=>String(L.withdrawalId),getTimestamp:_m,items:z,responseData:C.data,responseMore:C.more,state:s})})},t)}var Bm=Es.extend({cursor:PaginationCursorSchema.optional()}),Um=z.object({cursor:PaginationCursorSchema}),Dm=z.union([Bm.transform(({cursor:e,...r})=>({cursor:e,params:Ls(r)})),Um.transform(({cursor:e})=>({cursor:e,params:void 0}))]);function Os(e,r){let{cursor:t,params:o}=m(r,Dm);return x(n=>{let s;n===void 0?(invariant(o!==void 0,"Expected initial Perps equity history params."),s={kind:"perpsEquityHistory",...o}):s=Ne(n,Ss);let{kind:a,...f}=s;return e.get("/v1/account/equity",{params:Ee(f)}).andThen(y(ListPerpsEquityHistoryResponseSchema)).map(P=>{let v=P.data.at(-1),C=P.more&&v!==void 0&&v.timestamp<s.endTimestamp;return {items:P.data,hasMore:C,nextCursor:C?Mt({...s,startTimestamp:v.timestamp+Fs(s.interval)}):void 0}})},t)}var zm=Es.extend({cursor:PaginationCursorSchema.optional()}),Wm=z.object({cursor:PaginationCursorSchema}),jm=z.union([zm.transform(({cursor:e,...r})=>({cursor:e,params:Ls(r)})),Wm.transform(({cursor:e})=>({cursor:e,params:void 0}))]);function ws(e,r){let{cursor:t,params:o}=m(r,jm);return x(n=>{let s;n===void 0?(invariant(o!==void 0,"Expected initial Perps PnL history params."),s={kind:"perpsPnlHistory",...o}):s=Ne(n,Ss);let{kind:a,...f}=s;return e.get("/v1/account/pnl",{params:Ee(f)}).andThen(y(ListPerpsPnlHistoryResponseSchema)).map(P=>{let v=P.data.at(-1),C=P.more&&v!==void 0&&v.timestamp<s.endTimestamp;return {items:P.data,hasMore:C,nextCursor:C?Mt({...s,startTimestamp:v.timestamp+Fs(s.interval)}):void 0}})},t)}function Br(e,r){let t=Date.now(),{end:o,start:n,...s}=e;return {...s,endTimestamp:o??t,startTimestamp:n??t-r}}function Ls(e){return {endTimestamp:e.end??Date.now(),interval:e.interval,startTimestamp:e.start}}function Ne(e,r){try{return r.parse(JSON.parse(atob(e)))}catch(t){throw new a("Invalid Perps account pagination cursor",{cause:t})}}function Mt(e){return toPaginationCursor(btoa(JSON.stringify(e)))}function Ee(e){return g(e,E())}function Hm(e){return e.confirmedTimestamp??e.createdTimestamp}function _m(e){return e.confirmedTimestamp??e.createdTimestamp}function Ur(e){let r=e.responseData.at(-1),t=e.items.at(-1),o=(t===void 0?void 0:e.getTimestamp(t))??(r===void 0?void 0:e.getTimestamp(r)),n=e.responseMore&&o!==void 0&&o>e.state.startTimestamp;if(!n)return {items:e.items,hasMore:n};let s=t===void 0?o-1:o,a=new Set(e.state.endTimestamp===s?e.state.seenKeys:[]);for(let f of e.items)e.getTimestamp(f)===s&&a.add(e.getKey(f));return {items:e.items,hasMore:n,nextCursor:Mt({...e.state,endTimestamp:s,seenKeys:Array.from(a)})}}function Fs(e){switch(e){case "1h":return 3600*1e3;case "4h":return 14400*1e3;case "1d":return ar;case "1w":return 7*ar}invariant(false,`Unsupported Perps account history interval: ${String(e)}`);}var Dt=z.object({instrumentId:PerpsInstrumentIdSchema,side:OrderSideSchema,quantity:PerpsDecimalInputSchema,reduceOnly:z.boolean().default(false),clientOrderId:PerpsClientOrderIdSchema.optional()}),Zm=Dt.extend({price:PerpsDecimalInputSchema,timeInForce:z.literal(PerpsTimeInForce.GTC),postOnly:z.boolean().default(false)}),Jm=Dt.extend({price:PerpsDecimalInputSchema.optional(),timeInForce:z.literal(PerpsTimeInForce.IOC),postOnly:z.never().optional()}),Qm=Dt.extend({price:PerpsDecimalInputSchema.optional(),timeInForce:z.literal(PerpsTimeInForce.FOK),postOnly:z.never().optional()}),Ws=z.discriminatedUnion("timeInForce",[Zm,Jm,Qm]),Dr=z.object({triggerPrice:PerpsDecimalInputSchema,limitPrice:PerpsDecimalInputSchema.optional()}),zr=z.object({triggerPrice:PerpsDecimalInputSchema}),Xm=z.union([z.object({takeProfit:Dr,stopLoss:Dr.optional()}),z.object({takeProfit:Dr.optional(),stopLoss:Dr})]),ey=z.object({orders:z.array(Ws).min(1),expiresAt:z.number().int().positive().optional()});async function zt(e,r){let t=m(r,ey);return await e.sendSignedWsCommand({op:["createOrders",t.orders.map(Vs)],responseSchema:z.array(PerpsPostOrderAckSchema),timeoutMessage:"Perps post order acknowledgement timed out.",expiresAt:t.expiresAt})}var ry=z.intersection(Ws,z.intersection(Xm,z.object({expiresAt:z.number().int().positive().optional()})));function js(e){return e.takeProfit!==void 0||e.stopLoss!==void 0}async function Hs(e,r){let t=m(r,ry),o=[Vs(t)],n=t.side===OrderSide.SELL;return t.takeProfit!==void 0&&o.push(Hr({buy:n,instrumentId:t.instrumentId,kind:PerpsTpSlKind.TakeProfit,quantity:toDecimalString(t.quantity),trigger:t.takeProfit})),t.stopLoss!==void 0&&o.push(Hr({buy:n,instrumentId:t.instrumentId,kind:PerpsTpSlKind.StopLoss,quantity:toDecimalString(t.quantity),trigger:t.stopLoss})),await Ys(e,{expiresAt:t.expiresAt,group:PerpsTpSlScope.Order,orders:o})}var ty=z.union([z.object({takeProfit:zr,stopLoss:zr.optional()}),z.object({takeProfit:zr.optional(),stopLoss:zr})]),oy=z.intersection(ty,z.object({instrumentId:PerpsInstrumentIdSchema,expiresAt:z.number().int().positive().optional()})),ny=z.intersection(oy,z.object({buy:z.boolean()}));async function _s(e,r){let t=m(r,ny),o=[];return t.takeProfit!==void 0&&o.push(Hr({buy:t.buy,instrumentId:t.instrumentId,kind:PerpsTpSlKind.TakeProfit,quantity:"0",trigger:t.takeProfit})),t.stopLoss!==void 0&&o.push(Hr({buy:t.buy,instrumentId:t.instrumentId,kind:PerpsTpSlKind.StopLoss,quantity:"0",trigger:t.stopLoss})),await Ys(e,{expiresAt:t.expiresAt,group:PerpsTpSlScope.Position,orders:o})}var sy=z.union([z.object({orderId:PerpsOrderIdSchema,clientOrderId:z.undefined().optional(),expiresAt:z.number().int().positive().optional()}),z.object({clientOrderId:PerpsClientOrderIdSchema,orderId:z.undefined().optional(),expiresAt:z.number().int().positive().optional()})]);async function Ns(e,r){let t=m(r,sy),[o]=t.orderId!==void 0?await jr(e,{orderIds:[t.orderId],expiresAt:t.expiresAt}):await jr(e,{clientOrderIds:[t.clientOrderId],expiresAt:t.expiresAt});return expectPresent(o,"Expected Perps cancel order result.")}var ay=z.union([z.object({orderIds:z.array(PerpsOrderIdSchema).min(1),clientOrderIds:z.undefined().optional(),expiresAt:z.number().int().positive().optional()}),z.object({clientOrderIds:z.array(PerpsClientOrderIdSchema).min(1),orderIds:z.undefined().optional(),expiresAt:z.number().int().positive().optional()})]);async function jr(e,r){let t=m(r,ay);return t.orderIds!==void 0?await e.sendSignedWsCommand({op:["cancelOrders",t.orderIds],responseSchema:z.array(PerpsCancelOrderResultSchema),timeoutMessage:"Perps cancel order response timed out.",expiresAt:t.expiresAt}):await e.sendSignedWsCommand({op:["cancelOrdersCOID",t.clientOrderIds],responseSchema:z.array(PerpsCancelOrderResultSchema),timeoutMessage:"Perps cancel order response timed out.",expiresAt:t.expiresAt})}var iy=z.object({instrumentId:PerpsInstrumentIdSchema.optional(),expiresAt:z.number().int().positive().optional()}).default({});async function Gs(e,r,t){let o=m(t,iy),n=["cancelAll",o.instrumentId===void 0?[]:[o.instrumentId]],s=r(n,o.expiresAt);await unwrap(e.del("/v1/trade/orders/all",{json:{...s,op:Wt(n)}}).andThen(y(PerpsCancelAllOrdersResponseSchema)));}var py=z.object({instrumentId:PerpsInstrumentIdSchema,leverage:z.number().int().positive(),crossMargin:z.boolean()}),Ks=m$1(f,l,c,a);async function $s(e,r){let t=m(r,py);return await e.sendSignedWsCommand({op:["updateLeverage",[t.instrumentId,t.leverage,t.crossMargin]],responseSchema:PerpsUpdateLeverageResultSchema,timeoutMessage:"Perps update leverage response timed out."})}function Vs(e){return [e.instrumentId,e.side===OrderSide.BUY,e.price===void 0?void 0:toDecimalString(e.price),toDecimalString(e.quantity),e.timeInForce,e.postOnly??false,e.reduceOnly===true?true:void 0,e.clientOrderId,void 0]}function Hr(e){return [e.instrumentId,e.buy,e.trigger.limitPrice===void 0?void 0:toDecimalString(e.trigger.limitPrice),e.quantity,void 0,false,true,void 0,[e.trigger.limitPrice===void 0?true:void 0,toDecimalString(e.trigger.triggerPrice),e.kind]]}async function Ys(e,r){return await e.sendSignedWsCommand({op:["createOrders",r.orders,r.group],responseSchema:z.array(PerpsPostOrderAckSchema),timeoutMessage:"Perps place TP/SL order acknowledgement timed out.",expiresAt:r.expiresAt})}function Wt(e){let[r,t,o]=e;switch(r){case "createOrders":return uy({args:t.map(cy),type:r},o);case "cancelOrders":case "cancelOrdersCOID":return {type:r,args:t};case "cancelAll":{let[n]=t;return {type:r,args:n===void 0?{}:{iid:n}}}case "updateLeverage":{let[n,s,a]=t;return {type:r,args:{cross:a,iid:n,lev:s}}}default:invariant(false,`Unsupported Perps command: ${String(r)}`);}}function cy(e){let r={iid:e[0],buy:e[1],po:e[5],qty:e[3]};return e[4]!==void 0&&(r.tif=e[4]),e[6]&&(r.ro=e[6]),e[2]!==void 0&&(r.p=e[2]),e[7]!==void 0&&(r.c=e[7]),e[8]!==void 0&&(r.tr=dy(e[8])),r}function dy(e){let r={tpsl:e[2],trp:e[1]};return e[0]!==void 0&&(r.market=e[0]),r}function uy(e,r){return r!==void 0&&(e.grp=r),e}var fy=3e4,Qs=3e4,Xs=2e3,Py=["balances","portfolio","orders","fills","funding","deposits","withdrawals","tpsl"],gy=z.object({id:z.number().int().positive().optional(),data:z.unknown().optional()}).passthrough(),ea=z.union([PerpsCommandAckSchema,z.array(PerpsCommandAckSchema)]).transform(e=>Array.isArray(e)?e.find(r=>r.status==="err")??e[0]:e),ra=class{credentials;#e;#r;#t;#o;#n;#c=new Lr({heartbeat:new Or});#i=pushable({objectMode:true});#s=new Map;#p=new Set;#a=new wr;#d=new Map;#m=1;#l;constructor(r){this.#e=new Ar({headers:r.headers,resolveHeaders:async()=>this.#I(),root:r.restUrl}),this.#r=r.chainId,this.credentials=r.credentials,this.#t=r.headers,this.#o=r.onClose,this.#n=r.wsUrl;}get closed(){return this.#l!==void 0}async connect(){await this.#P(false);}async close(){this.#l===void 0&&(this.#l=this.#q()),await this.#l;}[Symbol.asyncIterator](){return this.#i[Symbol.asyncIterator]()}async fetchBalances(){return await hs(this.#e)}async fetchPortfolio(){return await Ts(this.#e)}async fetchStats(){return await xs(this.#e)}async fetchAccountConfig(r){return await Cs(this.#e,r)}async fetchOpenOrders(r){return await bs(this.#e,r)}async fetchOrders(r){return await Is(this.#e,r)}listFills(r={}){return ks(this.#e,r)}listFundingPayments(r={}){return qs(this.#e,r)}listDeposits(r={}){return vs(this.#e,r)}listWithdrawals(r={}){return As(this.#e,r)}listEquityHistory(r){return Os(this.#e,r)}listPnlHistory(r){return ws(this.#e,r)}async placeOrder(r){if(js(r))return await this.#T(r);let[t]=await zt(this.#u(),{orders:[r],expiresAt:r.expiresAt}).then(expectNonEmptyArray);if(t.status==="err")throw new f(t.error,{status:200});return {order:(await this.#S(n=>n.type==="order"&&n.payload.id===t.orderId,Xs)).payload}}async postOrders(r){return await zt(this.#u(),r)}async#T(r){let t=await Hs(this.#u(),r).then(expectNonEmptyArray);for(let P of t)if(P.status==="err")throw new f(P.error,{status:200});let[o]=t,n=pr(o),s=await this.#S(P=>P.type==="order"&&P.payload.id===n.orderId,Xs),a=1,f$1={};return r.takeProfit!==void 0&&(f$1.takeProfit=pr(expectPresent(t[a++],"Expected Perps take-profit acknowledgement."))),r.stopLoss!==void 0&&(f$1.stopLoss=pr(expectPresent(t[a],"Expected Perps stop-loss acknowledgement."))),{order:s.payload,tpSl:f$1}}async placePositionTpSl(r){let t=await _s(this.#u(),{...r,buy:await this.#x(r.instrumentId)}).then(expectNonEmptyArray);for(let s of t)if(s.status==="err")throw new f(s.error,{status:200});let o=0,n={};return r.takeProfit!==void 0&&(n.takeProfit=pr(expectPresent(t[o++],"Expected Perps take-profit acknowledgement."))),r.stopLoss!==void 0&&(n.stopLoss=pr(expectPresent(t[o],"Expected Perps stop-loss acknowledgement."))),{tpSl:n}}async#x(r){let o=(await this.fetchPortfolio()).positions.find(s=>s.instrumentId===r),n=o===void 0?0:Sy(o.size);if(n===0)throw new a(`No open Perps position for instrument ${r}.`);return n<0}async cancelOrder(r){return await Ns(this.#u(),r)}async cancelOrders(r){return await jr(this.#u(),r)}async cancelAllOrders(r){await Gs(this.#e,(t,o)=>this.#g(t,o),r);}async updateLeverage(r){return await $s(this.#u(),r)}async#P(r){await this.#c.connect({onConnectionLost:()=>this.#O(),onError:()=>{},onMessage:t=>this.#v(t),onOpen:()=>{},headers:this.#t,url:this.#n}),await this.#C(),await this.#b(),this.#a.resetBackoff(),r&&(this.#d.clear(),this.#i.push({reason:"reconnect",type:"resync"}));}async#C(){await this.#y({id:this.#m++,op:{args:{proxy:this.credentials.proxy,secret:this.credentials.secret},type:"auth"},req:"post"},ea,fy,"Perps session authentication timed out.");}async#b(){await this.#y({id:this.#m++,req:"sub",chs:Py},ea,Qs,"Perps session subscription timed out.");}#I(){return {"POLYMARKET-PROXY":this.credentials.proxy,"POLYMARKET-SECRET":this.credentials.secret}}#u(){return {sendSignedWsCommand:r=>this.#k(r)}}async#k(r){let t=Wt(r.op),o=this.#g(r.op,r.expiresAt);return await this.#y({...o,id:this.#m++,op:t,req:"post"},r.responseSchema,Qs,r.timeoutMessage)}#g(r,t){let o=hy(),n=Date.now(),s;try{s=ds({chainId:this.#r,op:r,privateKey:this.credentials.privateKey,salt:o,timestamp:n});}catch(f){throw l.fromError(f,"Could not sign the Perps session command")}let a={salt:o,sig:s,ts:n};return t!==void 0&&(a.exp=t),a}async#y(r,t,o,n){let s=Ry(t);this.#s.set(r.id,s);let a=setNonBlockingTimeout(()=>{s.reject(new c(n));},o);try{if(!this.#c.send(r))throw new c("Perps session transport is not open.");return await s.promise}finally{clearTimeout(a),this.#s.delete(r.id);}}async#q(){this.#a.stop(),this.#R(new c("Perps session closed.")),this.#h(new c("Perps session closed.")),this.#i.end(),await this.#c.close(),this.#o(this);}#v(r){if(this.#A(r))return;let t=PerpsSessionUpdateEventSchema.safeParse(r);if(!t.success)return;let o=t.data;this.#w(o),this.#E(o);}#A(r){let t=gy.safeParse(r);if(!t.success||t.data.id===void 0)return false;let o=this.#s.get(t.data.id);if(o===void 0)return true;let n=o.schema.safeParse(t.data.data);if(!n.success){let s=ta(t.data.data??t.data);return s!==void 0?o.reject(new f(s.error,{status:200})):o.reject(new c("Perps session unexpected response.")),true}return Ey(n.data)?o.reject(new f(n.data.error,{status:200})):o.resolve(n.data),true}#O(){this.#R(new c("Perps session connection closed.")),this.#h(new c("Perps session connection closed.")),this.#l===void 0&&this.#a.schedule({reconnect:()=>this.#P(true),shouldReconnect:()=>this.#l===void 0});}#R(r){for(let t of this.#s.values())t.reject(r);this.#s.clear();}#w(r){let t=this.#d.get(r.channel);this.#d.set(r.channel,r.sequence),!(t===void 0||r.sequence===t+1)&&this.#E({channel:r.channel,previousSequence:t,reason:"sequence_gap",sequence:r.sequence,type:"resync"});}#E(r){this.#F(r),this.#i.push(r);}#S(r,t){return this.#L(r,t).then(o=>o)}#L(r,t){let o,n=new Promise((s,a)=>{o={predicate:r,reject:a,resolve:s,timeout:setNonBlockingTimeout(()=>{this.#f(o),a(new h("Perps event wait timed out."));},t)};});return this.#p.add(o),n}#F(r){for(let t of Array.from(this.#p))t.predicate(r)&&(this.#f(t),t.resolve(r));}#f(r){this.#p.delete(r)&&clearTimeout(r.timeout);}#h(r){for(let t of Array.from(this.#p))this.#f(t),t.reject(r);}};function Ry(e){let r,t;return {promise:new Promise((n,s)=>{r=n,t=s;}),reject:t,resolve:r,schema:e}}function Ey(e){return ta(e)!==void 0}function ta(e){if(Array.isArray(e)||typeof e!="object"||e===null)return;let r=e;if(r.status==="err")return {error:typeof r.error=="string"?r.error:"Perps command failed."}}function pr(e){if(e.status==="err")throw new f(e.error,{status:200});return {orderId:e.orderId}}function Sy(e){let r=e.trim(),t=r.replace(/^[+-]/,"").replace(".","");return /^0*$/.test(t)?0:r.startsWith("-")?-1:1}function hy(){let[e]=globalThis.crypto.getRandomValues(new Uint32Array(1));return invariant(e!==void 0,"Expected crypto.getRandomValues to return a salt."),e}var Oe=m$1(g$1,f,c,b,a),fe=z.number().int().nonnegative(),sa=1440*60*1e3,jy=z.object({instrumentId:PerpsInstrumentIdSchema.optional(),category:PerpsInstrumentCategorySchema.optional()}).default({}),tI=Oe;async function oI(e,r){let t=m(r,jy);return unwrap(e.perps.get("/v1/info/instruments",{params:g(t,E())}).andThen(y(FetchPerpsInstrumentsResponseSchema)))}var Hy=z.object({instrumentId:PerpsInstrumentIdSchema}),nI=Oe;async function sI(e,r){let t=m(r,Hy),[o]=await Ny(e,t);if(o===void 0)throw new b(`Perps ticker ${t.instrumentId} was not returned by the API`);return o}var _y=z.object({instrumentId:PerpsInstrumentIdSchema.optional()}).default({}),aI=Oe;async function Ny(e,r){let t=m(r,_y),o=g(t,E()),[n,s]=await Promise.all([unwrap(e.perps.get("/v1/info/tickers",{params:o}).andThen(y(FetchPerpsTickersResponseSchema))),unwrap(e.perps.get("/v1/info/statistics",{params:o}).andThen(y(FetchPerpsStatisticsResponseSchema)))]),a=new Map(s.map(f=>[f.instrumentId,f]));return n.map(f=>{let P=a.get(f.instrumentId);return {...f,openPrice:P?.openPrice,volume24h:P?.volume}})}var Gy=z.union([z.literal(10),z.literal(100),z.literal(500),z.literal(1e3)]),Ky=z.object({instrumentId:PerpsInstrumentIdSchema,depth:Gy.default(100)}),iI=Oe;async function pI(e,r){let t=m(r,Ky);return unwrap(e.perps.get("/v1/info/book",{params:g(t,E())}).andThen(y(PerpsBookSchema)))}var $y=z.object({instrumentId:PerpsInstrumentIdSchema,interval:PerpsKlineIntervalSchema,start:fe.optional(),end:fe.optional(),cursor:PaginationCursorSchema.optional()}),Vy=z.object({cursor:PaginationCursorSchema}),Yy=z.union([$y.transform(({cursor:e,...r})=>({cursor:e,params:sf(r)})),Vy.transform(({cursor:e})=>({cursor:e,params:void 0}))]),cI=Oe;function dI(e,r){let{cursor:t,params:o}=m(r,Yy);return x(n=>{let s=n===void 0?af(o):df(n);return e.perps.get("/v1/info/klines",{params:g({endTimestamp:s.endTimestamp,instrumentId:s.instrumentId,interval:s.interval,startTimestamp:s.startTimestamp},E())}).andThen(y(FetchPerpsCandlesResponseSchema)).map(a=>{let f=a.data.at(-1),P=a.more&&f!==void 0;return {items:a.data,hasMore:P,nextCursor:P?Gt({...s,startTimestamp:f.timestamp+mf(s.interval)}):void 0}})},t)}var aa=z.object({instrumentId:PerpsInstrumentIdSchema,start:fe.optional(),end:fe.optional()}),Zy=aa.extend({cursor:PaginationCursorSchema.optional()}),Jy=z.object({cursor:PaginationCursorSchema}),Qy=z.union([Zy.transform(({cursor:e,...r})=>({cursor:e,params:ia(r)})),Jy.transform(({cursor:e})=>({cursor:e,params:void 0}))]),Xy=aa.extend({cursor:PaginationCursorSchema.optional()}),ef=z.object({cursor:PaginationCursorSchema}),uI=Oe;function lI(e,r){let{cursor:t,params:o}=m(r,Qy);return x(n=>{let s=n===void 0?pf(o):uf(n);return e.perps.get("/v1/info/funding",{params:g({endTimestamp:s.endTimestamp,instrumentId:s.instrumentId,startTimestamp:s.startTimestamp},E())}).andThen(y(FetchPerpsFundingHistoryResponseSchema)).map(a=>{let f=a.data.at(-1),P=a.more&&f!==void 0&&f.timestamp>s.startTimestamp;return {items:a.data,hasMore:P,nextCursor:P?Gt({...s,endTimestamp:f.timestamp-1}):void 0}})},t)}var rf=z.union([Xy.transform(({cursor:e,...r})=>({cursor:e,params:ia(r)})),ef.transform(({cursor:e})=>({cursor:e,params:void 0}))]),mI=Oe;function yI(e,r){let{cursor:t,params:o}=m(r,rf);return x(n=>{let s=n===void 0?cf(o):lf(n),a=new Set(s.seenTradeIds);return e.perps.get("/v1/info/trades",{params:g({endTimestamp:s.endTimestamp,instrumentId:s.instrumentId,startTimestamp:s.startTimestamp},E())}).andThen(y(FetchPerpsTradesResponseSchema)).map(f=>{let P=f.data.filter(Ya=>!a.has(Ya.tradeId)),v=f.data.at(-1),C=P.at(-1),z=C?.timestamp??v?.timestamp,L=f.more&&z!==void 0&&z>s.startTimestamp;return {items:P,hasMore:L,nextCursor:L?Gt({...s,endTimestamp:C===void 0?z-1:z,seenTradeIds:C===void 0?[]:yf(s,P,C)}):void 0}})},t)}var fI=m$1(g$1,f,c,b);async function PI(e){return (await unwrap(e.perps.get("/v1/info/fees").andThen(y(FetchPerpsFeesResponseSchema)))).feeSchedule}var tf=z.object({kind:z.literal("perpsCandles"),instrumentId:PerpsInstrumentIdSchema,interval:PerpsKlineIntervalSchema,startTimestamp:fe,endTimestamp:fe}),of=z.object({kind:z.literal("perpsFundingHistory"),instrumentId:PerpsInstrumentIdSchema,startTimestamp:fe,endTimestamp:fe}),nf=z.object({kind:z.literal("perpsTrades"),instrumentId:PerpsInstrumentIdSchema,startTimestamp:fe,endTimestamp:fe,seenTradeIds:z.array(PerpsTradeIdSchema)});function sf(e){let r=Date.now();return {endTimestamp:e.end??r,instrumentId:e.instrumentId,interval:e.interval,startTimestamp:e.start??r-sa}}function ia(e){let r=Date.now();return {endTimestamp:e.end??r,instrumentId:e.instrumentId,startTimestamp:e.start??r-sa}}function af(e){return invariant(e!==void 0,"Expected initial Perps candles params."),{kind:"perpsCandles",...e}}function pf(e){return invariant(e!==void 0,"Expected initial Perps funding params."),{kind:"perpsFundingHistory",...e}}function cf(e){return invariant(e!==void 0,"Expected initial Perps trades params."),{kind:"perpsTrades",seenTradeIds:[],...e}}function df(e){return Nt(e,tf)}function uf(e){return Nt(e,of)}function lf(e){return Nt(e,nf)}function Nt(e,r){try{return r.parse(JSON.parse(atob(e)))}catch(t){throw new a("Invalid Perps pagination cursor",{cause:t})}}function Gt(e){return toPaginationCursor(btoa(JSON.stringify(e)))}function mf(e){switch(e){case "1s":return 1e3;case "1m":return 60*1e3;case "5m":return 300*1e3;case "15m":return 900*1e3;case "1h":return 3600*1e3;case "4h":return 14400*1e3;case "1d":return 1440*60*1e3;case "1w":return 10080*60*1e3}invariant(false,`Unsupported Perps kline interval: ${String(e)}`);}function yf(e,r,t){let o=new Set(e.endTimestamp===t.timestamp?e.seenTradeIds:[]);for(let n of r)n.timestamp===t.timestamp&&o.add(n.tradeId);return Array.from(o)}var ff=z.custom(e=>isPrivateKey(e),"Expected a hex-encoded 32-byte private key."),Pf=z.object({proxy:z.string().transform(e=>expectEvmAddress(e)),privateKey:ff,secret:z.string().min(1),expiresAt:z.number().int().positive()}),gf=10080*60*1e3,Rf=z.strictObject({expiresIn:z.number().int().positive().default(gf),label:z.string().min(1).optional()}),Ef=z.strictObject({credentials:Pf}),Sf=z.union([Rf,Ef]),hf=z.object({proxy:z.string()}),Tf=hf.transform(e=>({proxy:expectEvmAddress(e.proxy)})),pa=z.bigint().positive().max(ee),xf=z.object({amount:pa,metadata:$.optional()}),Cf=z.object({amount:pa}),gI=m$1(g$1,f,l,c,b,a),RI=m$1(g$1,f,l,c,b,a),EI=m$1(a),SI=m$1(j,g$1,f,l,c,b,a),hI=m$1(g$1,f,l,c,b,a);async function TI(e,r={}){let t=m(r,Sf),o="credentials"in t?await kf(e,t.credentials):await If(e,t);return e.webSockets.perpsSession.connect(o)}async function xI(e,r){let t=m(r,Tf),o={type:"deleteProxy",args:{proxy:t.proxy}},n=["deleteProxy",[t.proxy]],s=Kt(),a=Date.now(),f$1=await vf(e,{salt:s,signedOp:n,timestamp:a}),P=await unwrap(e.perps.del("/v1/account/proxy",{json:{op:o,salt:s,sig:f$1,ts:a}}).andThen(y(PerpsDeleteProxyResponseSchema)));if(P.status==="err")throw new f(P.error??"Perps credentials revocation was rejected.",{status:200})}async function bf(e,r){let t=m(r,xf),{contracts:o}=e.environment,n=jo(o.perpsDepositContract,o.collateralToken,t.amount,e.account.signer);return async function*(){return e.account.walletType===WalletType.EOA?G(yield Bf(K(e.environment.chainId,n))):yield*await Q(e,{calls:[n],metadata:t.metadata??`Deposit ${t.amount} of ${o.collateralToken} to Perps`})}.call(null)}function CI(e,r){return bf(e,r).then(H(e.signer))}async function bI(e,r){let t=m(r,Cf),o=Math.floor(Date.now()/1e3),n=Kt(),s={type:"withdraw",args:{account:e.account.signer,token:e.environment.contracts.collateralToken,amount:t.amount.toString(),to:e.account.wallet}},a=await Af(e,{amount:t.amount,salt:n,timestamp:o}),f$1=await unwrap(e.perps.post("/v1/account/withdraw",{json:{op:s,salt:n,sig:a,ts:o}}).andThen(y(PerpsWithdrawResponseSchema)));if(f$1.status==="err")throw new f(f$1.error??"Perps withdrawal was rejected.",{status:200});if(f$1.withdrawalId===void 0)throw new b("Perps withdrawal response did not include a withdrawal ID.");return f$1.withdrawalId}async function If(e,r){let t=Lf(),o=da(t),n=e.account.signer,s=Date.now()+r.expiresIn,a=Date.now(),f=Kt(),P={args:{expiry:s,owner:n,proxy:o},type:"createProxy"},v=await qf(e,{expiresAt:s,proxy:o,salt:f,timestamp:a}),C={op:P,salt:f,sig:v,ts:a};r.label!==void 0&&(C.label=r.label);let z=await unwrap(e.perps.post("/v1/account/proxy",{json:C}).andThen(y(PerpsCreateProxyResponseSchema))),L={expiresAt:s,privateKey:t,proxy:o,secret:z.secret};return ca(e,L)}async function kf(e,r){return Ff(r),ca(e,r)}async function ca(e,r){let t=await unwrap(e.perps.get("/v1/account/credentials",{headers:Mf(r)}).andThen(y(PerpsCredentialsResponseSchema)));if(!isSameEvmAddress(t.address,e.account.signer))throw new b("Perps credentials belong to a different signer account.");let o=t.keys.find(n=>isSameEvmAddress(n.proxy,r.proxy));if(o===void 0)throw new b("Perps credentials were not returned by the API.");if(o.expiresAt<=Date.now())throw new b("Perps credentials are expired.");return {...r,expiresAt:o.expiresAt}}async function qf(e,r){try{return await e.signer.signTypedData(wf({chainId:e.environment.chainId,...r}))}catch(t){throw l.fromError(t,"Could not sign the Perps proxy credentials request")}}async function vf(e,r){try{return await e.signer.signTypedData(wt({chainId:e.environment.chainId,op:r.signedOp,salt:r.salt,timestamp:r.timestamp}))}catch(t){throw l.fromError(t,"Could not sign the Perps operation request")}}async function Af(e,r){try{return await e.signer.signTypedData(Of({account:e.account.signer,chainId:e.environment.chainId,contract:e.environment.contracts.perpsDepositContract,token:e.environment.contracts.collateralToken,to:e.account.wallet,...r}))}catch(t){throw l.fromError(t,"Could not sign the Perps withdrawal request")}}function Of(e){return {domain:{chainId:e.chainId,name:"Polymarket",verifyingContract:e.contract,version:"1"},message:{account:e.account,amount:e.amount,fee:0n,salt:e.salt,token:e.token,to:e.to,ts:e.timestamp},primaryType:"Withdraw",types:{Withdraw:[{name:"account",type:"address"},{name:"token",type:"address"},{name:"amount",type:"uint256"},{name:"fee",type:"uint256"},{name:"to",type:"address"},{name:"salt",type:"uint64"},{name:"ts",type:"uint64"}]}}}function wf(e){return {domain:{chainId:e.chainId,name:"Polymarket",version:"1"},message:{addr:e.proxy,exp:e.expiresAt,salt:e.salt,ts:e.timestamp},primaryType:"CreateProxy",types:{CreateProxy:[{name:"addr",type:"address"},{name:"exp",type:"uint64"},{name:"salt",type:"uint64"},{name:"ts",type:"uint64"}]}}}function Lf(){return expectPrivateKey(Secp256k1.randomPrivateKey(),"Generated invalid Perps proxy key.")}function da(e){return expectEvmAddress(Address.fromPublicKey(Secp256k1.getPublicKey({privateKey:e})))}function Ff(e){let r=da(e.privateKey);if(!isSameEvmAddress(r,e.proxy))throw new a("Perps credentials private key does not match the proxy address.")}function Mf(e){return {"POLYMARKET-PROXY":e.proxy,"POLYMARKET-SECRET":e.secret}}function Bf(e){return {kind:"sendPerpsDepositTransaction",request:e}}function Kt(){let[e]=crypto.getRandomValues(new Uint32Array(1));return invariant(e!==void 0,"Expected crypto.getRandomValues to return a salt."),e}var la=(s=>(s.CurrentValueDesc="current_value_desc",s.FirstEntryDesc="first_entry_desc",s.EntryCostDesc="entry_cost_desc",s.ResolvedAtDesc="resolved_at_desc",s.UpdatedAsc="updated_asc",s))(la||{}),_f=z.enum(["CURRENT","INITIAL","TOKENS","CASHPNL","PERCENTPNL","TITLE","RESOLVING","PRICE","AVGPRICE"]),ma=z.enum(["ASC","DESC"]),Nf=z.object({cursor:PaginationCursorSchema.optional(),user:z.string(),market:z.array(z.string()).optional(),eventId:z.array(z.number().int()).optional(),sizeThreshold:z.number().optional(),redeemable:z.boolean().optional(),mergeable:z.boolean().optional(),pageSize:O.max(500).default(20),sortBy:_f.optional(),sortDirection:ma.optional(),title:z.string().max(100).optional()}).refine(e=>!(e.market&&e.eventId),{message:"Provide market or eventId, not both",path:["eventId"]}),UI=m$1(g$1,f,c,b,a);function DI(e,r){let{cursor:t,pageSize:o,...n}=m(r,Nf);return x(s=>{let a=U(s,o);return e.data.get("/positions",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListPositionsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var Gf=z.enum(["REALIZEDPNL","TITLE","PRICE","AVGPRICE","TIMESTAMP"]),Kf=z.object({cursor:PaginationCursorSchema.optional(),user:z.string(),market:z.array(z.string()).optional(),title:z.string().max(100).optional(),eventId:z.array(z.number().int()).optional(),pageSize:O.max(50).default(20),sortBy:Gf.optional(),sortDirection:ma.optional()}).refine(e=>!(e.market&&e.eventId),{message:"Provide market or eventId, not both",path:["eventId"]}),zI=m$1(g$1,f,c,b,a);function WI(e,r){let{cursor:t,pageSize:o,...n}=m(r,Kf);return x(s=>{let a=U(s,o);return e.data.get("/closed-positions",{params:N({...n,limit:a.pageSize,offset:a.offset})}).andThen(y(ListClosedPositionsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var $f=z.enum(la),Vf=z.union([ComboConditionIdSchema,z.array(ComboConditionIdSchema)]),Yf=z.object({cursor:PaginationCursorSchema.optional(),user:z.string(),pageSize:O.default(20),status:ComboPositionStatusSchema.optional(),sort:$f.optional(),conditionId:Vf.optional(),updatedAfter:z.number().int().min(0).optional(),updatedBefore:z.number().int().min(0).optional()}),jI=m$1(g$1,f,c,b,a);function HI(e,r){let{cursor:t,pageSize:o,conditionId:n,...s}=m(r,Yf);return x(a=>{let f=g({...s,limit:o,cursor:a},E({updatedAfter:"updatedAfter",updatedBefore:"updatedBefore"}));return Zf(f,n),e.data.get("/v1/positions/combos",{params:f}).andThen(y(ListComboPositionsResponseSchema)).map(P=>{let v=P.pagination.nextCursor??void 0;return {items:P.combos,hasMore:v!==void 0,nextCursor:v}})},t)}function Zf(e,r){r!==void 0&&e.append("market_id",Array.isArray(r)?r.join(","):r);}var Jf=z.object({user:z.string(),market:z.array(z.string()).optional()}),_I=m$1(g$1,f,c,b,a);async function NI(e,r){let t=m(r,Jf);return unwrap(e.data.get("/value",{params:N(t)}).andThen(y(FetchPortfolioValueResponseSchema)))}var Qf=z.object({user:z.string()}),GI=m$1(g$1,f,c,b,a);async function KI(e,r){let t=m(r,Qf);return unwrap(e.data.get("/traded",{params:N(t)}).andThen(y(TradedSchema)))}var Xf=z.object({user:z.string()}),$I=m$1(g$1,f,c,b,a);async function VI(e,r){let t=m(r,Xf);return unwrap(e.data.get("/v1/accounting/snapshot",{params:N(t)}).andThen(io))}var Ra=32,Ea=3n,Pa=50,rP=(1n<<256n)-1n;function Yt(e){let r=AbiParameters.encode([{name:"legs",type:"uint256[]"}],[e]),t=Hash.keccak256(AbiParameters.encode([{name:"moduleId",type:"uint256"},{name:"data",type:"bytes"}],[Ea,r])),o=toComboConditionId(`0x03${t.slice(34)}0000000000000000000000000000`);return {conditionId:o,positionIds:[toPositionId(BigInt(`${o}00`).toString()),toPositionId(BigInt(`${o}01`).toString())]}}function Sa(e){if(e.length===0||e.length>Pa)throw new a(`Combo legs must include 1 to ${Pa} position IDs`);let r=e.map(t=>{let o=Ta(t),n=o.toString(16).padStart(Ra*2,"0"),s=Number.parseInt(n.slice(0,2),16),a$1=Number.parseInt(n.slice(-2),16);if(s!==1&&s!==2||a$1>1)throw new a("Combo legs must be binary or neg-risk YES/NO position IDs");return {value:o,conditionId:n.slice(0,-2)}});r.sort((t,o)=>t.value<o.value?-1:t.value>o.value?1:0);for(let t=1;t<r.length;t+=1){let o=r[t-1],n=r[t];if(o===void 0||n===void 0)throw new a("Invalid combo leg set");if(o.value===n.value)throw new a("Combo legs must not contain duplicate position IDs");if(o.conditionId===n.conditionId)throw new a("Combo legs must not contain both outcomes for the same condition")}return r.map(t=>t.value)}function ha(e){let t=Ta(e).toString(16).padStart(Ra*2,"0"),o=BigInt(`0x${t.slice(0,2)}`),n=Number.parseInt(t.slice(-2),16);if(o!==Ea)throw new a("Combo position ID must use the combinatorial module");if(n!==0&&n!==1)throw new a("Combo position ID must be a YES/NO position ID");return {conditionId:toComboConditionId(`0x${t.slice(0,-2)}`),outcomeIndex:n}}function Ta(e){let r=e.trim(),t;if(r.length===0)throw new a("Position ID must be a uint256 value");try{t=BigInt(r);}catch{throw new a("Position ID must be a uint256 value")}if(t<0n||t>rP)throw new a("Position ID must be a uint256 value");return t}var Ca=z.object({amount:z.bigint().min(0n),conditionId:CtfConditionIdSchema,metadata:$.optional()}),oP=z.object({amount:z.bigint().positive(),legs:z.array(PositionIdSchema).min(1).max(50),metadata:$.optional()}),ba=z.array(PositionIdSchema).min(1).max(50).transform(Sa),nP=z.object({amount:z.bigint().positive(),legs:ba,metadata:$.optional()}),sP=z.union([Ca.extend({legs:z.never().optional()}),oP.extend({conditionId:z.never().optional()})]),Ia=m$1(g$1,f,c,b,a),fk=Ia,Pk=Ia,ka=m$1(g$1,f,c,b,a),gk=ka,Rk=ka,qa=m$1(g$1,f,c,b,a),Ek=qa,Sk=qa;async function va(e,r){let t=m(r,Ca),o=await Xt(e,{conditionId:t.conditionId}),n=Ho(o.adapterAddress,e.environment.contracts.collateralToken,o.conditionId,t.amount);return async function*(){return e.account.walletType===WalletType.EOA?G(yield Zt(K(e.environment.chainId,n))):yield*await Q(e,{calls:[n],metadata:t.metadata??`Split ${t.amount} positions for market ${o.marketId} (condition ${o.conditionId})`})}.call(null)}async function Aa(e,r){let t=m(r,nP),o=rt(e.environment.contracts.combinatorialModule,t.legs),n=Yt(t.legs),s=Go(e.environment.contracts.protocolV2Router,n.conditionId,t.amount);return async function*(){return e.account.walletType===WalletType.EOA?(await G(yield Zt(K(e.environment.chainId,o))).wait(),G(yield Zt(K(e.environment.chainId,s)))):yield*await Q(e,{calls:[o,s],metadata:t.metadata??`Split ${t.amount} combo positions for condition ${n.conditionId}`})}.call(null)}async function aP(e,r){let t=m(r,sP);return t.legs!==void 0?Aa(e,t):va(e,t)}var Oa=m$1(j,g$1,f,l,h,i,c,b,a),hk=Oa,Tk=Oa;function xk(e,r){return va(e,r).then(H(e.signer))}function Ck(e,r){return Aa(e,r).then(H(e.signer))}function bk(e,r){return aP(e,r).then(H(e.signer))}var wa=z.object({amount:z.union([z.bigint().positive(),z.literal("max")]),conditionId:CtfConditionIdSchema,metadata:$.optional()}),iP=z.object({amount:z.union([z.bigint().positive(),z.literal("max")]),legs:z.array(PositionIdSchema).min(1).max(50),metadata:$.optional()}),pP=z.object({amount:z.union([z.bigint().positive(),z.literal("max")]),legs:ba,metadata:$.optional()}),cP=z.union([wa.extend({legs:z.never().optional()}),iP.extend({conditionId:z.never().optional()})]);async function La(e,r){let t=m(r,wa),o=await Xt(e,{conditionId:t.conditionId}),n=Xr(await e.rpc.ethCall(Qr(o.positionErc1155Address,e.account.wallet,o.tokenIds))),s=Wa(o.conditionId,n,t.amount),a=_o(o.adapterAddress,e.environment.contracts.collateralToken,o.conditionId,s);return async function*(){return e.account.walletType===WalletType.EOA?G(yield Jt(K(e.environment.chainId,a))):yield*await Q(e,{calls:[a],metadata:t.metadata??`Merge ${s} positions for market ${o.marketId} (condition ${o.conditionId})`})}.call(null)}async function Fa(e,r){let t=m(r,pP),o=rt(e.environment.contracts.combinatorialModule,t.legs),n=Yt(t.legs),s=Xr(await e.rpc.ethCall(Qr(e.environment.contracts.positionManager,e.account.wallet,n.positionIds))),a=Wa(n.conditionId,s,t.amount),f=Ko(e.environment.contracts.protocolV2Router,n.conditionId,a);return async function*(){return e.account.walletType===WalletType.EOA?(await G(yield Jt(K(e.environment.chainId,o))).wait(),G(yield Jt(K(e.environment.chainId,f)))):yield*await Q(e,{calls:[o,f],metadata:t.metadata??`Merge ${a} combo positions for condition ${n.conditionId}`})}.call(null)}async function dP(e,r){let t=m(r,cP);return t.legs!==void 0?Fa(e,t):La(e,t)}var Ma=m$1(j,g$1,f,l,h,i,c,b,a),Ik=Ma,kk=Ma;function qk(e,r){return La(e,r).then(H(e.signer))}function vk(e,r){return Fa(e,r).then(H(e.signer))}function Ak(e,r){return dP(e,r).then(H(e.signer))}var Ba=z.object({conditionId:CtfConditionIdSchema,marketId:z.never().optional(),amount:z.never().optional(),positionId:z.never().optional(),metadata:$.optional()}),Ua=z.object({conditionId:z.never().optional(),marketId:MarketIdSchema,amount:z.never().optional(),positionId:z.never().optional(),metadata:$.optional()}),uP=z.union([Ba,Ua]),Da=z.object({positionId:PositionIdSchema,conditionId:z.never().optional(),marketId:z.never().optional(),metadata:$.optional()}),lP=z.union([Ba,Ua,Da]);async function mP(e,r){let t=m(r,uP),o=await Xt(e,t.conditionId!==void 0?{conditionId:t.conditionId,closed:true}:{marketId:t.marketId,closed:true}),n=No(o.adapterAddress,e.environment.contracts.collateralToken,o.conditionId);return async function*(){return e.account.walletType===WalletType.EOA?G(yield za(K(e.environment.chainId,n))):yield*await Q(e,{calls:[n],metadata:t.metadata??`Redeem positions for market ${o.marketId} (condition ${o.conditionId})`})}.call(null)}async function yP(e,r){let t=m(r,Da),o=ha(t.positionId),n=Wo(await e.rpc.ethCall(zo(e.environment.contracts.positionManager,e.account.wallet,t.positionId)));if(n===0n)throw new a("Combo position has no balance to redeem");let s=$o(e.environment.contracts.protocolV2Router,o.conditionId,o.outcomeIndex,n);return async function*(){return e.account.walletType===WalletType.EOA?G(yield za(K(e.environment.chainId,s))):yield*await Q(e,{calls:[s],metadata:t.metadata??`Redeem combo position ${t.positionId}`})}.call(null)}async function fP(e,r){let t=m(r,lP);return t.positionId!==void 0?yP(e,t):mP(e,t)}var Ok=m$1(j,g$1,f,l,c,b,a);function wk(e,r){return fP(e,r).then(H(e.signer))}function Zt(e){return {kind:"sendSplitPositionTransaction",request:e}}function Jt(e){return {kind:"sendMergePositionsTransaction",request:e}}function za(e){return {kind:"sendRedeemPositionsTransaction",request:e}}async function Xt(e,r){let t=r.conditionId!==void 0?`condition ${r.conditionId}`:`market ${r.marketId}`,o=await vn(e,r.conditionId!==void 0?{conditionIds:[r.conditionId],closed:r.closed,pageSize:1}:{ids:[PP(r.marketId)],closed:r.closed,pageSize:1}).firstPage(),[n]=o.items;if(n===void 0)throw new a(`No market found for ${t}`);let s=gP(n,t);return {...s,adapterAddress:s.negRisk?e.environment.contracts.negRiskCollateralAdapter:e.environment.contracts.collateralAdapter,positionErc1155Address:s.negRisk?e.environment.contracts.negRiskAdapter:e.environment.contracts.conditionalTokens}}function PP(e){let r=Number(e);if(!Number.isInteger(r))throw new a(`Market ID must be an integer, received ${e}`);return r}function gP(e,r){if(!isPresent(e.conditionId))throw new b(`Missing condition ID for ${r}`);if(!isPresent(e.state.negRisk))throw new b(`Missing negative-risk flag for ${r}`);let t=e.outcomes.yes.tokenId,o=e.outcomes.no.tokenId;if(!isPresent(t)||!isPresent(o))throw new b(`Missing market token IDs for ${r}`);return {marketId:e.id,conditionId:e.conditionId,negRisk:e.state.negRisk,tokenIds:[t,o]}}function Wa(e,r,t){let o=RP(r);if(o===0n)throw new a(`You have no complementary positions to merge for condition ${e}`);if(t==="max")return o;if(t>o)throw new a(`Requested merge amount ${t} exceeds the maximum mergeable amount ${o} for condition ${e}`);return t}function RP(e){if(e.length!==2)throw new b("Expected two position balances");let[r,t]=e;return invariant(r!==void 0,"Expected YES position balance"),invariant(t!==void 0,"Expected NO position balance"),r<t?r:t}var xP=z.object({address:z.string()}),jk=m$1(g$1,f,c,b,a);async function Hk(e,r){let t=m(r,xP);return unwrap(e.gamma.get("/public-profile",{params:g(t,E())}).andThen(y(PublicProfileSchema)).orElse(o=>o instanceof f&&o.status===404?ok(null):err(o)))}var eo=class extends PolymarketError{name="RfqQuoteRejectedError";code;errorId;rfqId;constructor(r,t){super(r,t),this.code=t.code,this.errorId=t.errorId,this.rfqId=t.rfqId;}},Kk=m$1(e,eo,l,h,c,a),ro=class extends PolymarketError{name="RfqCancelQuoteRejectedError";code;errorId;rfqId;quoteId;constructor(r,t){super(r,t),this.code=t.code,this.errorId=t.errorId,this.rfqId=t.rfqId,this.quoteId=t.quoteId;}},$k=m$1(e,ro,h,c),to=class extends PolymarketError{name="RfqConfirmationRejectedError";code;errorId;rfqId;quoteId;constructor(r,t){super(r,t),this.code=t.code,this.errorId=t.errorId,this.rfqId=t.rfqId,this.quoteId=t.quoteId;}},Vk=m$1(e,to,h,c),Yk=m$1(e,c);async function Zk(e){return e.webSockets.rfqQuoter.connect()}var Ha=(f=>(f.Volume="volume",f.Volume24Hr="volume_24hr",f.Liquidity="liquidity",f.Competitive="competitive",f.ClosedTime="closed_time",f.StartDate="start_date",f.EndDate="end_date",f))(Ha||{}),IP=z.object({q:z.string().trim().min(1),ascending:z.boolean().optional(),cache:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),eventsStatus:z.string().min(1).optional(),eventsTag:z.array(z.string()).optional(),excludeTagIds:z.array(z.number().int()).optional(),keepClosedMarkets:z.number().int().optional(),optimized:z.boolean().optional(),pageSize:O.default(10),presets:z.array(z.string()).optional(),recurrence:z.enum(["daily","weekly","monthly"]).optional(),searchProfiles:z.boolean().optional(),searchTags:z.boolean().optional(),sort:z.enum(Ha).optional()}),mq=m$1(g$1,f,c,b,a);function yq(e,r){let{cursor:t,pageSize:o,...n}=m(r,IP);return x(s=>{let a=U(s,o);return e.gamma.get("/public-search",{params:g({...n,limitPerType:a.pageSize,page:a.offset},E({excludeTagIds:"exclude_tag_id"}))}).andThen(y(PublicSearchResponseSchema)).map(f=>({items:kP(f),hasMore:f.pagination?.hasMore??false,totalCount:f.pagination?.totalResults??void 0,nextCursor:f.pagination?.hasMore?B({offset:a.offset+1,pageSize:a.pageSize}):void 0}))},t??B({offset:1,pageSize:o}),{events:[],profiles:[],tags:[]})}function kP(e){return {events:e.events??[],profiles:e.profiles??[],tags:e.tags??[]}}var wP=z.object({ascending:z.boolean().optional(),closed:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),excludeEvents:z.boolean().optional(),locale:z.string().optional(),order:z.string().optional(),pageSize:O.max(50).default(20),recurrence:z.enum(["daily","weekly","monthly"]).optional(),slug:z.array(z.string()).optional()}),LP=z.object({id:z.string(),locale:z.string().optional()}),bq=m$1(g$1,f,c,b,a);function Iq(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,wP);return x(s=>{let a=U(s,o);return e.gamma.get("/series",{params:g({...n,limit:a.pageSize,offset:a.offset},E())}).andThen(y(ListSeriesResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var kq=m$1(g$1,f,c,b,a);async function qq(e,r){let t=m(r,LP);return unwrap(e.gamma.get(`series/${t.id}`,{params:g({locale:t.locale},E())}).andThen(y(SeriesSchema)))}var Fq=m$1(g$1,f,c,b);async function Mq(e){return unwrap(e.gamma.get("/sports").andThen(y(ListSportsMetadataResponseSchema)))}var Bq=m$1(g$1,f,c,b);async function Uq(e){return unwrap(e.gamma.get("/sports/market-types").andThen(y(SportsMarketTypesResponseSchema)))}async function jq(e,r){let t=await Promise.all(r.map(o=>DP(e,o)));return zP(t)}function DP(e,r){switch(r.topic){case "market":return e.webSockets.clobMarket.subscribe(r);case "sports":return e.webSockets.sports.subscribe(r);case "comments":case "prices.crypto.binance":case "prices.crypto.chainlink":case "prices.equity.pyth":return e.webSockets.rtds.subscribe(r);case "perps.trades":case "perps.bbo":case "perps.book":case "perps.candles":case "perps.tickers":case "perps.statistics":return e.webSockets.perpsSubscriptions.subscribe(r);case "user":return invariant(e.isSecureClient(),"A 'user' subscription requires a secure client instance."),e.webSockets.clobUser.subscribe(r)}}function zP(e){let r;async function t(){r===void 0&&(r=Promise.all(e.map(n=>n.close())).then(()=>{})),await r;}let o=UP(...e);return {close:t,[Symbol.asyncIterator](){return o[Symbol.asyncIterator]()}}}var HP=z.object({ascending:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),includeTemplate:z.boolean().optional(),isCarousel:z.boolean().optional(),locale:z.string().optional(),order:z.string().optional(),pageSize:O.max(100).default(20)}),_P=z.union([z.object({id:z.string(),includeTemplate:z.boolean().optional(),locale:z.string().optional()}),z.object({slug:z.string(),locale:z.string().optional()})]),NP=z.object({id:z.string(),omitEmpty:z.boolean().optional(),status:z.enum(["active","closed","all"]).optional()}),GP=z.object({slug:z.string()}),KP=z.object({id:z.string(),locale:z.string().optional(),omitEmpty:z.boolean().optional(),status:z.enum(["active","closed","all"]).optional()}),$P=z.object({locale:z.string().optional(),slug:z.string(),omitEmpty:z.boolean().optional(),status:z.enum(["active","closed","all"]).optional()}),Qq=m$1(g$1,f,c,b,a);function Xq(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,HP);return x(s=>{let a=U(s,o);return e.gamma.get("/tags",{params:g({...n,limit:a.pageSize,offset:a.offset},E())}).andThen(y(ListTagsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var ev=m$1(g$1,f,c,b,a);async function rv(e,r){let t=m(r,_P);return "id"in t?unwrap(e.gamma.get(`tags/${t.id}`,{params:g({includeTemplate:t.includeTemplate,locale:t.locale},E())}).andThen(y(TagSchema))):unwrap(e.gamma.get(`tags/slug/${t.slug}`,{params:g({locale:t.locale},E())}).andThen(y(TagSchema)))}var tv=m$1(g$1,f,c,b,a);async function ov(e,r){if("id"in r){let o=m(r,NP);return unwrap(e.gamma.get(`tags/${o.id}/related-tags`,{params:g({omitEmpty:o.omitEmpty,status:o.status},E())}).andThen(y(ListRelatedTagsResponseSchema)))}let t=m(r,GP);return unwrap(e.gamma.get(`tags/slug/${t.slug}/related-tags`).andThen(y(ListRelatedTagsResponseSchema)))}var nv=m$1(g$1,f,c,b,a);async function sv(e,r){if("id"in r){let o=m(r,KP);return unwrap(e.gamma.get(`tags/${o.id}/related-tags/tags`,{params:g({locale:o.locale,omitEmpty:o.omitEmpty,status:o.status},E())}).andThen(y(ListRelatedTagResourcesResponseSchema)))}let t=m(r,$P);return unwrap(e.gamma.get(`tags/slug/${t.slug}/related-tags/tags`,{params:g({locale:t.locale,omitEmpty:t.omitEmpty,status:t.status},E())}).andThen(y(ListRelatedTagResourcesResponseSchema)))}var ZP=z.object({abbreviation:z.array(z.string()).optional(),ascending:z.boolean().optional(),cursor:PaginationCursorSchema.optional(),league:z.array(z.string()).optional(),name:z.array(z.string()).optional(),order:z.string().optional(),pageSize:O.max(100).default(20),providerId:z.array(z.number().int()).optional()}),fv=m$1(g$1,f,c,b,a);function Pv(e,r={}){let{cursor:t,pageSize:o,...n}=m(r,ZP);return x(s=>{let a=U(s,o);return e.gamma.get("/teams",{params:g({...n,limit:a.pageSize,offset:a.offset},E({providerId:"provider_id"}))}).andThen(y(ListTeamsResponseSchema)).map(f=>{let P=f.length>=a.pageSize;return {items:f,hasMore:P,nextCursor:P?B({offset:a.offset+a.pageSize,pageSize:a.pageSize}):void 0}})},t)}var QP=z.object({amount:z.bigint(),metadata:$.optional(),recipientAddress:EvmAddressSchema,tokenAddress:EvmAddressSchema}),kv=m$1(a);async function XP(e,r){let t=m(r,QP);return async function*(){return e.account.walletType===WalletType.EOA?G(yield eg(K(e.environment.chainId,et(t.tokenAddress,t.recipientAddress,t.amount)))):yield*await Q(e,{calls:[et(t.tokenAddress,t.recipientAddress,t.amount)],metadata:t.metadata??`Transfer ${t.amount} of ${t.tokenAddress} to ${t.recipientAddress}`})}.call(null)}var qv=m$1(j,g$1,f,l,c,b,a);function vv(e,r){return XP(e,r).then(H(e.signer))}function eg(e){return {kind:"sendErc20TransferTransaction",request:e}}export{bo as $,FE as $a,oh as $b,qr as $c,xI as $d,Kk as $e,wR as A,sE as Aa,fn as Ab,wT as Ac,Or as Ad,Sk as Ae,ev as Af,$o as B,$ as Ba,TS as Bb,vn as Bc,wr as Bd,va as Be,rv as Bf,LR as C,aE as Ca,Pn as Cb,LT as Cc,Lr as Cd,Aa as Ce,tv as Cf,rt as D,iE as Da,xS as Db,FT as Dc,Ks as Dd,aP as De,ov as Df,Vo as E,Qp as Ea,CS as Eb,MT as Ec,ra as Ed,Oa as Ee,nv as Ef,Yo as F,pE as Fa,bS as Fb,BT as Fc,tI as Fd,hk as Fe,sv as Ff,m as G,Q as Ga,IS as Gb,UT as Gc,oI as Gd,Tk as Ge,fv as Gf,co as H,it as Ha,kS as Hb,DT as Hc,nI as Hd,xk as He,Pv as Hf,Eg as I,pt as Ia,gn as Ib,zT as Ic,sI as Id,Ck as Ie,kv as If,Ro as J,ct as Ja,qS as Jb,WT as Jc,aI as Jd,bk as Je,XP as Jf,Eo as K,dt as Ka,vS as Kb,jT as Kc,Ny as Kd,La as Ke,qv as Kf,So as L,cE as La,AS as Lb,HT as Lc,iI as Ld,Fa as Le,vv as Lf,wg as M,Xe as Ma,OS as Mb,_T as Mc,pI as Md,dP as Me,Lg as N,SE as Na,wS as Nb,NT as Nc,cI as Nd,Ma as Ne,Fg as O,mc as Oa,LS as Ob,QT as Oc,dI as Od,Ik as Oe,Mg as P,hE as Pa,FS as Pb,XT as Pc,uI as Pd,kk as Pe,Bg as Q,rn as Qa,MS as Qb,ex as Qc,lI as Qd,qk as Qe,Ug as R,TE as Ra,BS as Rb,rx as Rc,mI as Rd,vk as Re,Dg as S,fc as Sa,US as Sb,tx as Sc,yI as Sd,Ak as Se,Co as T,xE as Ta,DS as Tb,ox as Tc,fI as Td,mP as Te,zg as U,tn as Ua,zS as Ub,nx as Uc,PI as Ud,yP as Ue,Wg as V,CE as Va,WS as Vb,sx as Vc,gI as Vd,fP as Ve,jg as W,Pc as Wa,jS as Wb,mx as Wc,RI as Wd,Ok as We,Hg as X,bE as Xa,HS as Xb,yx as Xc,EI as Xd,wk as Xe,_g as Y,IE as Ya,_S as Yb,gt as Yc,SI as Yd,jk as Ye,Yr as Z,LE as Za,rh as Zb,xx as Zc,hI as Zd,Hk as Ze,Ng as _,Tc as _a,th as _b,Cx as _c,TI as _d,eo as _e,ee as a,Gg as aa,xc as ab,Td as ac,bx as ad,bf as ae,ro as af,CR as b,Kg as ba,ME as bb,nh as bc,Zn as bd,CI as be,$k as bf,fr as c,$g as ca,BE as cb,sh as cc,Jn as cd,bI as ce,to as cf,Mo as d,Vg as da,UE as db,kt as dd,la as de,Vk as df,Bo as e,Yg as ea,DE as eb,Rh as ec,El as ed,UI as ee,Yk as ef,Pr as f,Zg as fa,zE as fb,Eh as fc,qt as fd,DI as fe,Zk as ff,Uo as g,Jg as ga,WE as gb,Sh as gc,Sl as gd,zI as ge,Do as h,Qg as ha,jE as hb,hh as hc,vt as hd,WI as he,zo as i,Xg as ia,HE as ib,Th as ic,uC as id,jI as ie,Wo as j,eR as ja,_E as jb,xh as jc,lC as jd,HI as je,Qr as k,rR as ka,NE as kb,Dh as kc,mC as kd,_I as ke,Xr as l,tR as la,GE as lb,zh as lc,yC as ld,NI as le,bR as m,lR as ma,KE as mb,Wh as mc,TC as md,GI as me,Ha as mf,et as n,mR as na,tS as nb,jh as nc,xC as nd,KI as ne,mq as nf,IR as o,yR as oa,oS as ob,Hh as oc,jC as od,$I as oe,yq as of,jo as p,fR as pa,yS as pb,_h as pc,Al as pd,VI as pe,bq as pf,kR as q,PR as qa,fS as qb,Nh as qc,HC as qd,Iq as qf,qR as r,gR as ra,PS as rb,Gh as rc,_C as rd,kq as rf,Ho as s,gS as sb,tT as sc,NC as sd,Ia as se,qq as sf,vR as t,UR as ta,RS as tb,oT as tc,Ol as td,fk as te,Fq as tf,_o as u,G as ua,Ue as ub,nT as uc,GC as ud,Pk as ue,Mq as uf,No as v,HR as va,ES as vb,sT as vc,KC as vd,ka as ve,Bq as vf,AR as w,Zo as wa,De as wb,aT as wc,Ar as wd,gk as we,Uq as wf,Go as x,oE as xa,SS as xb,iT as xc,ls as xd,Rk as xe,jq as xf,OR as y,at as ya,yn as yb,gT as yc,ms as yd,qa as ye,Qq as yf,Ko as z,nE as za,hS as zb,RT as zc,ys as zd,Ek as ze,Xq as zf};//# sourceMappingURL=chunk-FA3ZDOJN.js.map
2
- //# sourceMappingURL=chunk-FA3ZDOJN.js.map