@polymarket/client 0.4.0 → 0.6.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.
- package/dist/actions/index.d.ts +5 -5
- package/dist/actions/index.js +1 -1
- package/dist/chunk-DB2YMGIT.js +3 -0
- package/dist/chunk-DB2YMGIT.js.map +1 -0
- package/dist/{chunk-4LDMO37Q.js → chunk-MCGT5BAF.js} +3 -3
- package/dist/chunk-MCGT5BAF.js.map +1 -0
- package/dist/chunk-O4EZ2N7U.js +2 -0
- package/dist/chunk-O4EZ2N7U.js.map +1 -0
- package/dist/ethers-v5.d.ts +1 -1
- package/dist/ethers-v5.js +1 -1
- package/dist/ethers-v5.js.map +1 -1
- package/dist/index.d.ts +9 -9
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/node.js +1 -1
- package/dist/privy.js +1 -1
- package/dist/{sports-CT3xKd9T.d.ts → sports-BPp6UXlR.d.ts} +1 -1
- package/dist/{types-DcsPnLma.d.ts → types-RGx7fNNl.d.ts} +616 -65
- package/dist/viem.d.ts +1 -1
- package/dist/viem.js +1 -1
- package/package.json +2 -2
- package/dist/chunk-4LDMO37Q.js.map +0 -1
- package/dist/chunk-HFDKKOAD.js +0 -3
- package/dist/chunk-HFDKKOAD.js.map +0 -1
- package/dist/chunk-KZISI26J.js +0 -2
- package/dist/chunk-KZISI26J.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {PolymarketError}from'@polymarket/types';var
|
|
1
|
+
import {PolymarketError}from'@polymarket/types';var O=/^[$A-Z_a-z][$\w]*$/;function i(s){let r=c(s.issues);return r.length===0?"It was not possible to determine a more specific reason.":["Fix the following issues:",p(r)].join(`
|
|
2
2
|
`)}function u(s,r){let e=c(s.issues);return e.length===0?["Received an incompatible API response.",`Endpoint: ${r.endpoint}`,"This usually means the API response shape changed in a breaking way or the SDK is outdated.","It was not possible to determine a more specific reason."].join(`
|
|
3
3
|
`):["Received an incompatible API response.",`Endpoint: ${r.endpoint}`,"This usually means the API response shape changed in a breaking way or the SDK is outdated.","Fix the following issues:",p(e)].join(`
|
|
4
4
|
`)}function p(s){return s.map(e=>e.path===null?`- ${e.message}`:`- ${e.path}: ${e.message}`).join(`
|
|
5
|
-
`)}function c(s){return d(s).slice(0,99)}function d(s,r=[]){let e=s.flatMap(n=>{let a=[...r,...n.path];return n.code==="invalid_union"?n.errors.flatMap(A=>d(A,a)):[{code:n.code,message:n.message,path:a.length===0?null:
|
|
6
|
-
//# sourceMappingURL=chunk-
|
|
5
|
+
`)}function c(s){return d(s).slice(0,99)}function d(s,r=[]){let e=s.flatMap(n=>{let a=[...r,...n.path];return n.code==="invalid_union"?n.errors.flatMap(A=>d(A,a)):[{code:n.code,message:n.message,path:a.length===0?null:P(a)}]});return Z(e)}function Z(s){let r=new Set,e=[];for(let n of s){let a=`${n.code}:${n.path??""}:${n.message}`;r.has(a)||(r.add(a),e.push(n));}return e.sort(U)}function U(s,r){return s.path===null&&r.path!==null?-1:s.path!==null&&r.path===null?1:(s.path??"").localeCompare(r.path??"")}function P(s){return s.reduce((r,e)=>typeof e=="number"?`${r}[${e.toString()}]`:typeof e!="string"?r:e.includes('"')?`${r}["${e.replaceAll('"','\\"')}"]`:O.test(e)?r.length===0?e:`${r}.${e}`:`${r}["${e}"]`,"")}var l=class s extends PolymarketError{name="UserInputError";constructor(r,e={}){super(r,e);}static fromZodError(r){return new s(i(r),{cause:r})}},m=class s extends PolymarketError{name="UnexpectedResponseError";constructor(r,e={}){super(r,e);}static fromZodError(r,e){return new s(u(r,e),{cause:r})}},f=class s extends PolymarketError{name="TransportError";constructor(r,e={}){super(r,e);}static fromError(r){return new s(r instanceof Error?r.message:"Request failed",{cause:r})}},T=(t=>(t[t.NormalClosure=1e3]="NormalClosure",t[t.GoingAway=1001]="GoingAway",t[t.ProtocolError=1002]="ProtocolError",t[t.UnsupportedData=1003]="UnsupportedData",t[t.NoStatusReceived=1005]="NoStatusReceived",t[t.AbnormalClosure=1006]="AbnormalClosure",t[t.InvalidFramePayload=1007]="InvalidFramePayload",t[t.PolicyViolation=1008]="PolicyViolation",t[t.MessageTooBig=1009]="MessageTooBig",t[t.InternalError=1011]="InternalError",t[t.ServiceRestart=1012]="ServiceRestart",t[t.TryAgainLater=1013]="TryAgainLater",t))(T||{}),g=class extends PolymarketError{name="ConnectionLostError";code;reason;constructor(r,e){super(r,e),this.code=e.code,this.reason=e.reason;}},y=class extends PolymarketError{name="RequestRejectedError";status;code;retryAfter;constructor(r,e){super(r,e),this.status=e.status,this.code=e.code,this.retryAfter=e.retryAfter;}},E=class extends PolymarketError{name="RateLimitError";retryAfter;constructor(r,e={}){super(r,e),this.retryAfter=e.retryAfter;}},I=class extends PolymarketError{name="TimeoutError";constructor(r,e={}){super(r,e);}},x=class extends PolymarketError{name="TransactionFailedError";constructor(r,e={}){super(r,e);}},h=class s extends PolymarketError{name="CancelledSigningError";constructor(r,e={}){super(r,e);}static fromError(r){return new s(r.message,{cause:r})}},$=class extends PolymarketError{name="InsufficientLiquidityError";constructor(r,e={}){super(r,e);}},R=class extends PolymarketError{name="AutoCancelDailyLimitError";constructor(r,e={}){super(r,e);}},v=class s extends PolymarketError{name="SigningError";constructor(r,e={}){super(r,e);}static fromError(r,e){let n=e??(r instanceof Error?r.message:"Signing failed");return new s(n,{cause:r})}};function V(...s){return {isError(r){return s.some(e=>r instanceof e)}}}export{l as a,m as b,f as c,T as d,g as e,y as f,E as g,I as h,x as i,h as j,$ as k,R as l,v as m,V as n};//# sourceMappingURL=chunk-MCGT5BAF.js.map
|
|
6
|
+
//# sourceMappingURL=chunk-MCGT5BAF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/validation.ts","../src/errors.ts"],"names":["identifierRegex","formatInputZodError","error","issues","flattenIssues","formatIssues","formatResponseZodError","context","issue","flattenIssueBranches","pathPrefix","flattened","path","branch","formatPath","dedupeIssues","seen","deduped","key","compareIssues","left","right","result","segment","UserInputError","_UserInputError","PolymarketError","message","options","UnexpectedResponseError","_UnexpectedResponseError","TransportError","_TransportError","WebSocketKnownCloseCode","ConnectionLostError","RequestRejectedError","RateLimitError","TimeoutError","TransactionFailedError","CancelledSigningError","_CancelledSigningError","InsufficientLiquidityError","AutoCancelDailyLimitError","SigningError","_SigningError","msg","makeErrorGuard","classes","c"],"mappings":"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","file":"chunk-MCGT5BAF.js","sourcesContent":["import type { core, ZodError } from 'zod';\n\nconst maxIssuesInMessage = 99;\nconst identifierRegex = /^[$A-Z_a-z][$\\w]*$/;\n\ntype UserInputIssue = {\n code: string;\n message: string;\n path: string | null;\n};\n\nexport type ResponseValidationContext = {\n endpoint: string;\n};\n\n/**\n * Formats a `ZodError` into an SDK-oriented input validation message.\n */\nexport function formatInputZodError(error: ZodError): string {\n const issues = flattenIssues(error.issues);\n\n if (issues.length === 0) {\n return 'It was not possible to determine a more specific reason.';\n }\n\n return ['Fix the following issues:', formatIssues(issues)].join('\\n');\n}\n\n/**\n * Formats a `ZodError` into an SDK-oriented response validation message.\n */\nexport function formatResponseZodError(\n error: ZodError,\n context: ResponseValidationContext,\n): string {\n const issues = flattenIssues(error.issues);\n\n if (issues.length === 0) {\n return [\n 'Received an incompatible API response.',\n `Endpoint: ${context.endpoint}`,\n 'This usually means the API response shape changed in a breaking way or the SDK is outdated.',\n 'It was not possible to determine a more specific reason.',\n ].join('\\n');\n }\n\n return [\n 'Received an incompatible API response.',\n `Endpoint: ${context.endpoint}`,\n 'This usually means the API response shape changed in a breaking way or the SDK is outdated.',\n 'Fix the following issues:',\n formatIssues(issues),\n ].join('\\n');\n}\n\nfunction formatIssues(issues: readonly UserInputIssue[]): string {\n const lines = issues.map((issue) => {\n if (issue.path === null) {\n return `- ${issue.message}`;\n }\n\n return `- ${issue.path}: ${issue.message}`;\n });\n\n return lines.join('\\n');\n}\n\nfunction flattenIssues(issues: readonly core.$ZodIssue[]): UserInputIssue[] {\n return flattenIssueBranches(issues).slice(0, maxIssuesInMessage);\n}\n\nfunction flattenIssueBranches(\n issues: readonly core.$ZodIssue[],\n pathPrefix: readonly PropertyKey[] = [],\n): UserInputIssue[] {\n const flattened = issues.flatMap((issue) => {\n const path = [...pathPrefix, ...issue.path];\n\n if (issue.code === 'invalid_union') {\n return issue.errors.flatMap((branch) =>\n flattenIssueBranches(branch, path),\n );\n }\n\n return [\n {\n code: issue.code,\n message: issue.message,\n path: path.length === 0 ? null : formatPath(path),\n } satisfies UserInputIssue,\n ];\n });\n\n return dedupeIssues(flattened);\n}\n\nfunction dedupeIssues(issues: readonly UserInputIssue[]): UserInputIssue[] {\n const seen = new Set<string>();\n const deduped: UserInputIssue[] = [];\n\n for (const issue of issues) {\n const key = `${issue.code}:${issue.path ?? ''}:${issue.message}`;\n\n if (seen.has(key)) {\n continue;\n }\n\n seen.add(key);\n deduped.push(issue);\n }\n\n return deduped.sort(compareIssues);\n}\n\nfunction compareIssues(left: UserInputIssue, right: UserInputIssue): number {\n if (left.path === null && right.path !== null) {\n return -1;\n }\n\n if (left.path !== null && right.path === null) {\n return 1;\n }\n\n return (left.path ?? '').localeCompare(right.path ?? '');\n}\n\nfunction formatPath(path: readonly PropertyKey[]): string {\n return path.reduce<string>((result, segment) => {\n if (typeof segment === 'number') {\n return `${result}[${segment.toString()}]`;\n }\n\n if (typeof segment !== 'string') {\n return result;\n }\n\n if (segment.includes('\"')) {\n return `${result}[\"${segment.replaceAll('\"', '\\\\\"')}\"]`;\n }\n\n if (!identifierRegex.test(segment)) {\n return `${result}[\"${segment}\"]`;\n }\n\n if (result.length === 0) {\n return segment;\n }\n\n return `${result}.${segment}`;\n }, '');\n}\n","import { PolymarketError } from '@polymarket/types';\nimport type { ZodError } from 'zod';\nimport {\n formatInputZodError,\n formatResponseZodError,\n type ResponseValidationContext,\n} from './validation';\n\n/**\n * Error thrown when an action input fails SDK validation before a request is\n * sent.\n */\nexport class UserInputError extends PolymarketError {\n override name = 'UserInputError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromZodError(error: ZodError): UserInputError {\n return new UserInputError(formatInputZodError(error), {\n cause: error,\n });\n }\n}\n\n/**\n * Error thrown when a service response does not match the action's expected\n * response shape.\n */\nexport class UnexpectedResponseError extends PolymarketError {\n override name = 'UnexpectedResponseError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromZodError(\n error: ZodError,\n context: ResponseValidationContext,\n ): UnexpectedResponseError {\n return new UnexpectedResponseError(formatResponseZodError(error, context), {\n cause: error,\n });\n }\n}\n\n/**\n * Error thrown when the SDK cannot complete a request because of a network or\n * runtime transport failure.\n */\nexport class TransportError extends PolymarketError {\n override name = 'TransportError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromError(error: unknown): TransportError {\n return new TransportError(\n error instanceof Error ? error.message : 'Request failed',\n {\n cause: error,\n },\n );\n }\n}\n\n/**\n * WebSocket close codes defined by RFC 6455 and the IANA WebSocket Close Code\n * Number registry. Codes 4000-4999 are reserved for application use and are\n * intentionally not modeled here.\n */\nexport enum WebSocketKnownCloseCode {\n NormalClosure = 1000,\n GoingAway = 1001,\n ProtocolError = 1002,\n UnsupportedData = 1003,\n /** Synthesized locally when the peer closed without a status code. */\n NoStatusReceived = 1005,\n /** Synthesized locally when the connection dropped without a close frame. */\n AbnormalClosure = 1006,\n InvalidFramePayload = 1007,\n PolicyViolation = 1008,\n MessageTooBig = 1009,\n InternalError = 1011,\n ServiceRestart = 1012,\n TryAgainLater = 1013,\n}\n\n/**\n * A WebSocket close code. Codes enumerated in\n * {@link WebSocketKnownCloseCode} are defined by RFC 6455; other values, such\n * as application-defined 4000-4999 codes, flow through as plain numbers.\n */\nexport type WebSocketCloseCode = WebSocketKnownCloseCode | (number & {});\n\nexport type ConnectionLostErrorOptions = {\n /** WebSocket close code reported for the lost connection. */\n code: WebSocketCloseCode;\n /** Close reason provided by the peer. Empty when none was sent. */\n reason: string;\n};\n\n/**\n * Error thrown when a live connection ends without the SDK requesting it.\n */\nexport class ConnectionLostError extends PolymarketError {\n override name = 'ConnectionLostError' as const;\n\n readonly code: WebSocketCloseCode;\n readonly reason: string;\n\n constructor(\n message: string,\n options: ErrorOptions & ConnectionLostErrorOptions,\n ) {\n super(message, options);\n this.code = options.code;\n this.reason = options.reason;\n }\n}\n\nexport type RequestRejectedErrorOptions = {\n status: number;\n /**\n * Machine-readable error code from the response body, when the service\n * provided one.\n */\n code?: string;\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n retryAfter?: number;\n};\n\n/**\n * Error thrown when a service responds with a non-success status other than\n * rate limiting.\n */\nexport class RequestRejectedError extends PolymarketError {\n override name = 'RequestRejectedError' as const;\n\n readonly status: number;\n /**\n * Machine-readable error code from the response body, when the service\n * provided one.\n */\n readonly code?: string;\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n readonly retryAfter?: number;\n\n constructor(\n message: string,\n options: ErrorOptions & RequestRejectedErrorOptions,\n ) {\n super(message, options);\n this.status = options.status;\n this.code = options.code;\n this.retryAfter = options.retryAfter;\n }\n}\n\nexport type RateLimitErrorOptions = {\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n retryAfter?: number;\n};\n\n/**\n * Error thrown when the service rejects a request because the rate limit has\n * been exceeded.\n */\nexport class RateLimitError extends PolymarketError {\n override name = 'RateLimitError' as const;\n\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n readonly retryAfter?: number;\n\n constructor(\n message: string,\n options: ErrorOptions & RateLimitErrorOptions = {},\n ) {\n super(message, options);\n this.retryAfter = options.retryAfter;\n }\n}\n\n/**\n * Error thrown when an async wait operation exceeds its allotted polling time.\n */\nexport class TimeoutError extends PolymarketError {\n override name = 'TimeoutError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when a submitted transaction reaches a terminal failure state.\n */\nexport class TransactionFailedError extends PolymarketError {\n override name = 'TransactionFailedError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when the user cancels a required wallet signing action.\n */\nexport class CancelledSigningError extends PolymarketError {\n override name = 'CancelledSigningError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromError(error: Error): CancelledSigningError {\n return new CancelledSigningError(error.message, {\n cause: error,\n });\n }\n}\n\n/**\n * Error thrown when there is not enough resting market liquidity to satisfy the\n * requested execution semantics.\n */\nexport class InsufficientLiquidityError extends PolymarketError {\n override name = 'InsufficientLiquidityError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when arming auto-cancel is rejected because the account has\n * reached its daily auto-cancel trigger limit. Arming is rejected until the\n * daily counter resets at the next UTC midnight; clearing an existing\n * schedule is always allowed.\n *\n * @experimental This API may change in a breaking way in any release, including patch releases.\n */\nexport class AutoCancelDailyLimitError extends PolymarketError {\n override name = 'AutoCancelDailyLimitError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when the SDK cannot produce a required signature or\n * authentication payload.\n */\nexport class SigningError extends PolymarketError {\n override name = 'SigningError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromError(error: unknown, message?: string): SigningError {\n const msg =\n message ?? (error instanceof Error ? error.message : 'Signing failed');\n return new SigningError(msg, { cause: error });\n }\n}\n\nexport function makeErrorGuard<\n // biome-ignore lint/suspicious/noExplicitAny: constructor rest args require any[]\n TClasses extends ReadonlyArray<new (...args: any[]) => unknown>,\n>(\n ...classes: TClasses\n): { isError(error: unknown): error is InstanceType<TClasses[number]> } {\n return {\n isError(error: unknown): error is InstanceType<TClasses[number]> {\n return classes.some((c) => error instanceof c);\n },\n };\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {PolymarketError}from'@polymarket/types';var n=class t extends PolymarketError{name="TransportError";constructor(r,s={}){super(r,s);}static fromError(r){return new t(r instanceof Error?r.message:"Request failed",{cause:r})}};var o=class extends PolymarketError{name="TimeoutError";constructor(r,s={}){super(r,s);}},a=class extends PolymarketError{name="TransactionFailedError";constructor(r,s={}){super(r,s);}},i=class t extends PolymarketError{name="CancelledSigningError";constructor(r,s={}){super(r,s);}static fromError(r){return new t(r.message,{cause:r})}};var u=class t extends PolymarketError{name="SigningError";constructor(r,s={}){super(r,s);}static fromError(r,s){let c=s??(r instanceof Error?r.message:"Signing failed");return new t(c,{cause:r})}};export{n as a,o as b,a as c,i as d,u as e};//# sourceMappingURL=chunk-O4EZ2N7U.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-O4EZ2N7U.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/errors.ts"],"names":["TransportError","_TransportError","PolymarketError","message","options","error","TimeoutError","TransactionFailedError","CancelledSigningError","_CancelledSigningError","SigningError","_SigningError","msg"],"mappings":"gDAmDO,IAAMA,EAAN,MAAMC,CAAAA,SAAuBC,eAAgB,CACzC,KAAO,gBAAA,CAEhB,WAAA,CAAYC,CAAAA,CAAiBC,CAAAA,CAAwB,EAAC,CAAG,CACvD,KAAA,CAAMD,CAAAA,CAASC,CAAO,EACxB,CAEA,OAAO,SAAA,CAAUC,EAAgC,CAC/C,OAAO,IAAIJ,CAAAA,CACTI,aAAiB,KAAA,CAAQA,CAAAA,CAAM,OAAA,CAAU,gBAAA,CACzC,CACE,KAAA,CAAOA,CACT,CACF,CACF,CACF,EAsIO,IAAMC,CAAAA,CAAN,cAA2BJ,eAAgB,CACvC,IAAA,CAAO,cAAA,CAEhB,YAAYC,CAAAA,CAAiBC,CAAAA,CAAwB,EAAC,CAAG,CACvD,KAAA,CAAMD,CAAAA,CAASC,CAAO,EACxB,CACF,CAAA,CAKaG,CAAAA,CAAN,cAAqCL,eAAgB,CACjD,IAAA,CAAO,wBAAA,CAEhB,WAAA,CAAYC,CAAAA,CAAiBC,EAAwB,EAAC,CAAG,CACvD,KAAA,CAAMD,EAASC,CAAO,EACxB,CACF,CAAA,CAKaI,CAAAA,CAAN,MAAMC,CAAAA,SAA8BP,eAAgB,CAChD,IAAA,CAAO,uBAAA,CAEhB,WAAA,CAAYC,CAAAA,CAAiBC,EAAwB,EAAC,CAAG,CACvD,KAAA,CAAMD,EAASC,CAAO,EACxB,CAEA,OAAO,UAAUC,CAAAA,CAAqC,CACpD,OAAO,IAAII,EAAsBJ,CAAAA,CAAM,OAAA,CAAS,CAC9C,KAAA,CAAOA,CACT,CAAC,CACH,CACF,MAkCaK,CAAAA,CAAN,MAAMC,CAAAA,SAAqBT,eAAgB,CACvC,IAAA,CAAO,cAAA,CAEhB,WAAA,CAAYC,CAAAA,CAAiBC,EAAwB,EAAC,CAAG,CACvD,KAAA,CAAMD,EAASC,CAAO,EACxB,CAEA,OAAO,UAAUC,CAAAA,CAAgBF,CAAAA,CAAgC,CAC/D,IAAMS,EACJT,CAAAA,GAAYE,CAAAA,YAAiB,KAAA,CAAQA,CAAAA,CAAM,QAAU,gBAAA,CAAA,CACvD,OAAO,IAAIM,CAAAA,CAAaC,EAAK,CAAE,KAAA,CAAOP,CAAM,CAAC,CAC/C,CACF","file":"chunk-O4EZ2N7U.js","sourcesContent":["import { PolymarketError } from '@polymarket/types';\nimport type { ZodError } from 'zod';\nimport {\n formatInputZodError,\n formatResponseZodError,\n type ResponseValidationContext,\n} from './validation';\n\n/**\n * Error thrown when an action input fails SDK validation before a request is\n * sent.\n */\nexport class UserInputError extends PolymarketError {\n override name = 'UserInputError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromZodError(error: ZodError): UserInputError {\n return new UserInputError(formatInputZodError(error), {\n cause: error,\n });\n }\n}\n\n/**\n * Error thrown when a service response does not match the action's expected\n * response shape.\n */\nexport class UnexpectedResponseError extends PolymarketError {\n override name = 'UnexpectedResponseError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromZodError(\n error: ZodError,\n context: ResponseValidationContext,\n ): UnexpectedResponseError {\n return new UnexpectedResponseError(formatResponseZodError(error, context), {\n cause: error,\n });\n }\n}\n\n/**\n * Error thrown when the SDK cannot complete a request because of a network or\n * runtime transport failure.\n */\nexport class TransportError extends PolymarketError {\n override name = 'TransportError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromError(error: unknown): TransportError {\n return new TransportError(\n error instanceof Error ? error.message : 'Request failed',\n {\n cause: error,\n },\n );\n }\n}\n\n/**\n * WebSocket close codes defined by RFC 6455 and the IANA WebSocket Close Code\n * Number registry. Codes 4000-4999 are reserved for application use and are\n * intentionally not modeled here.\n */\nexport enum WebSocketKnownCloseCode {\n NormalClosure = 1000,\n GoingAway = 1001,\n ProtocolError = 1002,\n UnsupportedData = 1003,\n /** Synthesized locally when the peer closed without a status code. */\n NoStatusReceived = 1005,\n /** Synthesized locally when the connection dropped without a close frame. */\n AbnormalClosure = 1006,\n InvalidFramePayload = 1007,\n PolicyViolation = 1008,\n MessageTooBig = 1009,\n InternalError = 1011,\n ServiceRestart = 1012,\n TryAgainLater = 1013,\n}\n\n/**\n * A WebSocket close code. Codes enumerated in\n * {@link WebSocketKnownCloseCode} are defined by RFC 6455; other values, such\n * as application-defined 4000-4999 codes, flow through as plain numbers.\n */\nexport type WebSocketCloseCode = WebSocketKnownCloseCode | (number & {});\n\nexport type ConnectionLostErrorOptions = {\n /** WebSocket close code reported for the lost connection. */\n code: WebSocketCloseCode;\n /** Close reason provided by the peer. Empty when none was sent. */\n reason: string;\n};\n\n/**\n * Error thrown when a live connection ends without the SDK requesting it.\n */\nexport class ConnectionLostError extends PolymarketError {\n override name = 'ConnectionLostError' as const;\n\n readonly code: WebSocketCloseCode;\n readonly reason: string;\n\n constructor(\n message: string,\n options: ErrorOptions & ConnectionLostErrorOptions,\n ) {\n super(message, options);\n this.code = options.code;\n this.reason = options.reason;\n }\n}\n\nexport type RequestRejectedErrorOptions = {\n status: number;\n /**\n * Machine-readable error code from the response body, when the service\n * provided one.\n */\n code?: string;\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n retryAfter?: number;\n};\n\n/**\n * Error thrown when a service responds with a non-success status other than\n * rate limiting.\n */\nexport class RequestRejectedError extends PolymarketError {\n override name = 'RequestRejectedError' as const;\n\n readonly status: number;\n /**\n * Machine-readable error code from the response body, when the service\n * provided one.\n */\n readonly code?: string;\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n readonly retryAfter?: number;\n\n constructor(\n message: string,\n options: ErrorOptions & RequestRejectedErrorOptions,\n ) {\n super(message, options);\n this.status = options.status;\n this.code = options.code;\n this.retryAfter = options.retryAfter;\n }\n}\n\nexport type RateLimitErrorOptions = {\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n retryAfter?: number;\n};\n\n/**\n * Error thrown when the service rejects a request because the rate limit has\n * been exceeded.\n */\nexport class RateLimitError extends PolymarketError {\n override name = 'RateLimitError' as const;\n\n /**\n * Server-requested delay in seconds before retrying, when the response\n * provided one.\n */\n readonly retryAfter?: number;\n\n constructor(\n message: string,\n options: ErrorOptions & RateLimitErrorOptions = {},\n ) {\n super(message, options);\n this.retryAfter = options.retryAfter;\n }\n}\n\n/**\n * Error thrown when an async wait operation exceeds its allotted polling time.\n */\nexport class TimeoutError extends PolymarketError {\n override name = 'TimeoutError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when a submitted transaction reaches a terminal failure state.\n */\nexport class TransactionFailedError extends PolymarketError {\n override name = 'TransactionFailedError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when the user cancels a required wallet signing action.\n */\nexport class CancelledSigningError extends PolymarketError {\n override name = 'CancelledSigningError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromError(error: Error): CancelledSigningError {\n return new CancelledSigningError(error.message, {\n cause: error,\n });\n }\n}\n\n/**\n * Error thrown when there is not enough resting market liquidity to satisfy the\n * requested execution semantics.\n */\nexport class InsufficientLiquidityError extends PolymarketError {\n override name = 'InsufficientLiquidityError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when arming auto-cancel is rejected because the account has\n * reached its daily auto-cancel trigger limit. Arming is rejected until the\n * daily counter resets at the next UTC midnight; clearing an existing\n * schedule is always allowed.\n *\n * @experimental This API may change in a breaking way in any release, including patch releases.\n */\nexport class AutoCancelDailyLimitError extends PolymarketError {\n override name = 'AutoCancelDailyLimitError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n}\n\n/**\n * Error thrown when the SDK cannot produce a required signature or\n * authentication payload.\n */\nexport class SigningError extends PolymarketError {\n override name = 'SigningError' as const;\n\n constructor(message: string, options: ErrorOptions = {}) {\n super(message, options);\n }\n\n static fromError(error: unknown, message?: string): SigningError {\n const msg =\n message ?? (error instanceof Error ? error.message : 'Signing failed');\n return new SigningError(msg, { cause: error });\n }\n}\n\nexport function makeErrorGuard<\n // biome-ignore lint/suspicious/noExplicitAny: constructor rest args require any[]\n TClasses extends ReadonlyArray<new (...args: any[]) => unknown>,\n>(\n ...classes: TClasses\n): { isError(error: unknown): error is InstanceType<TClasses[number]> } {\n return {\n isError(error: unknown): error is InstanceType<TClasses[number]> {\n return classes.some((c) => error instanceof c);\n },\n };\n}\n"]}
|
package/dist/ethers-v5.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers-v5';
|
|
2
|
-
import { T as TypedDataPayload, a as TypedData, S as Signer } from './types-
|
|
2
|
+
import { T as TypedDataPayload, a as TypedData, S as Signer } from './types-RGx7fNNl.js';
|
|
3
3
|
import '@polymarket/bindings';
|
|
4
4
|
import '@polymarket/types';
|
|
5
5
|
import '@polymarket/bindings/gamma';
|
package/dist/ethers-v5.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {m as m$1,j,c as c$1,i as i$1}from'./chunk-MCGT5BAF.js';import {expectEvmAddress,expectEvmSignature,expectTxHash}from'@polymarket/types';import {ethers}from'ethers-v5';function A(n){return {getAddress(){return m(n)},signTypedData(r){return w(n,r)},signMessage(r){return T(n,r)},async sendTransaction(r){return new i(await f(n,r))}}}async function m(n){try{return expectEvmAddress(await n.getAddress())}catch(r){throw m$1.fromError(r,"Could not resolve signer address")}}async function f(n,r){try{return await n.sendTransaction({chainId:r.chainId,data:r.data,to:r.to,value:r.value?.toString()})}catch(t){c(t);}}async function w(n,r){try{return expectEvmSignature(await n._signTypedData(r.domain,S(r.types),r.message))}catch(t){c(t);}}async function T(n,r){try{return expectEvmSignature(await n.signMessage(ethers.utils.arrayify(r)))}catch(t){c(t);}}function S(n){let r=Object.entries(n).filter(([t])=>t!=="EIP712Domain");return Object.fromEntries(r.map(([t,p])=>[t,p.map(y=>({...y}))]))}function c(n){throw s(n)?new j("User rejected the signing request",{cause:n}):m$1.fromError(n)}function s(n,r=new Set){if(r.has(n)||n===null||typeof n!="object")return false;r.add(n);let t=n;return t.code===4001||t.code==="ACTION_REJECTED"||s(t.error,r)||s(t.cause,r)}function v(n){return g(n,"CALL_EXCEPTION")}function D(n){return g(n,"TRANSACTION_REPLACED")}function g(n,r){return n instanceof Error&&"code"in n&&n.code===r}var i=class{transactionId=null;#r;#n;constructor(r){this.#n=r,this.#r=expectTxHash(r.hash);}get transactionHash(){return this.#r}async wait(){try{let r=await this.#n.wait(),t=expectTxHash(r.transactionHash);return this.#r=t,{transactionHash:t,transactionId:null}}catch(r){if(D(r)){if(r.cancelled)throw c$1.fromError(r);let t=expectTxHash(r.receipt.transactionHash);return this.#r=t,{transactionHash:t,transactionId:null}}throw v(r)?new i$1(`Transaction ${this.#r} reverted`,{cause:r}):c$1.fromError(r)}}};export{A as signerFrom};//# sourceMappingURL=ethers-v5.js.map
|
|
2
2
|
//# sourceMappingURL=ethers-v5.js.map
|
package/dist/ethers-v5.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ethers-v5.ts"],"names":["signerFrom","signer","getAddress","payload","signTypedData","message","signMessage","request","DirectTransactionHandle","sendTransaction","expectEvmAddress","error","SigningError","throwSigningWorkflowError","expectEvmSignature","removeEip712Domain","ethers","types","entries","name","fields","field","isUserRejectedError","CancelledSigningError","seen","candidate","isCallExceptionError","hasErrorCode","isTransactionReplacedError","code","#transactionHash","#transaction","transaction","expectTxHash","receipt","transactionHash","TransportError","TransactionFailedError"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/ethers-v5.ts"],"names":["signerFrom","signer","getAddress","payload","signTypedData","message","signMessage","request","DirectTransactionHandle","sendTransaction","expectEvmAddress","error","SigningError","throwSigningWorkflowError","expectEvmSignature","removeEip712Domain","ethers","types","entries","name","fields","field","isUserRejectedError","CancelledSigningError","seen","candidate","isCallExceptionError","hasErrorCode","isTransactionReplacedError","code","#transactionHash","#transaction","transaction","expectTxHash","receipt","transactionHash","TransportError","TransactionFailedError"],"mappings":"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","file":"ethers-v5.js","sourcesContent":["import {\n expectEvmAddress,\n expectEvmSignature,\n expectTxHash,\n type HexString,\n type TxHash,\n} from '@polymarket/types';\nimport { ethers } from 'ethers-v5';\nimport {\n CancelledSigningError,\n SigningError,\n TransactionFailedError,\n TransportError,\n} from './errors';\nimport type {\n Signer,\n TransactionHandle,\n TypedData,\n TypedDataPayload,\n} from './types';\n\ntype EthersV5Signer = ethers.Signer & {\n _signTypedData(\n domain: TypedDataPayload['domain'],\n types: ReturnType<typeof removeEip712Domain>,\n value: TypedDataPayload['message'],\n ): Promise<string>;\n};\n\nexport function signerFrom(signer: EthersV5Signer): Signer {\n return {\n getAddress() {\n return getAddress(signer);\n },\n signTypedData(payload) {\n return signTypedData(signer, payload);\n },\n signMessage(message) {\n return signMessage(signer, message);\n },\n async sendTransaction(request) {\n return new DirectTransactionHandle(\n await sendTransaction(signer, request),\n );\n },\n };\n}\n\nasync function getAddress(signer: EthersV5Signer) {\n try {\n return expectEvmAddress(await signer.getAddress());\n } catch (error) {\n throw SigningError.fromError(error, 'Could not resolve signer address');\n }\n}\n\nasync function sendTransaction(\n signer: EthersV5Signer,\n request: { chainId: number; data?: HexString; to: string; value?: bigint },\n): Promise<ethers.providers.TransactionResponse> {\n try {\n return await signer.sendTransaction({\n chainId: request.chainId,\n data: request.data,\n to: request.to,\n value: request.value?.toString(),\n });\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nasync function signTypedData(\n signer: EthersV5Signer,\n payload: TypedDataPayload,\n) {\n try {\n return expectEvmSignature(\n await signer._signTypedData(\n payload.domain,\n removeEip712Domain(payload.types),\n payload.message,\n ),\n );\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nasync function signMessage(signer: EthersV5Signer, message: HexString) {\n try {\n return expectEvmSignature(\n await signer.signMessage(ethers.utils.arrayify(message)),\n );\n } catch (error) {\n throwSigningWorkflowError(error);\n }\n}\n\nfunction removeEip712Domain(\n types: TypedData,\n): Record<string, Array<{ name: string; type: string }>> {\n const entries = Object.entries(types).filter(\n ([name]) => name !== 'EIP712Domain',\n );\n\n return Object.fromEntries(\n entries.map(([name, fields]) => [\n name,\n fields.map((field) => ({ ...field })),\n ]),\n );\n}\n\nfunction throwSigningWorkflowError(error: unknown): never {\n if (isUserRejectedError(error)) {\n throw new CancelledSigningError('User rejected the signing request', {\n cause: error,\n });\n }\n\n throw SigningError.fromError(error);\n}\n\nfunction isUserRejectedError(\n error: unknown,\n seen = new Set<unknown>(),\n): boolean {\n if (seen.has(error) || error === null || typeof error !== 'object') {\n return false;\n }\n\n seen.add(error);\n\n const candidate = error as {\n cause?: unknown;\n code?: unknown;\n error?: unknown;\n };\n\n return (\n // ethers v5 normalizes user-rejected wallet actions to ACTION_REJECTED,\n // but some provider-shaped errors can still surface the raw EIP-1193 4001.\n candidate.code === 4001 ||\n candidate.code === 'ACTION_REJECTED' ||\n isUserRejectedError(candidate.error, seen) ||\n isUserRejectedError(candidate.cause, seen)\n );\n}\n\nfunction isCallExceptionError(error: unknown): error is Error {\n return hasErrorCode(error, 'CALL_EXCEPTION');\n}\n\nfunction isTransactionReplacedError(error: unknown): error is Error & {\n cancelled: boolean;\n receipt: { transactionHash: string };\n} {\n return hasErrorCode(error, 'TRANSACTION_REPLACED');\n}\n\nfunction hasErrorCode(error: unknown, code: string): error is Error {\n return (\n error instanceof Error &&\n 'code' in error &&\n (error as { code?: unknown }).code === code\n );\n}\n\nclass DirectTransactionHandle implements TransactionHandle {\n readonly transactionId = null;\n #transactionHash: TxHash;\n readonly #transaction: ethers.providers.TransactionResponse;\n\n constructor(transaction: ethers.providers.TransactionResponse) {\n this.#transaction = transaction;\n this.#transactionHash = expectTxHash(transaction.hash);\n }\n\n get transactionHash() {\n return this.#transactionHash;\n }\n\n async wait() {\n try {\n const receipt = await this.#transaction.wait();\n\n const transactionHash = expectTxHash(receipt.transactionHash);\n this.#transactionHash = transactionHash;\n\n return {\n transactionHash,\n transactionId: null,\n };\n } catch (error) {\n if (isTransactionReplacedError(error)) {\n if (error.cancelled) {\n throw TransportError.fromError(error);\n }\n\n const transactionHash = expectTxHash(error.receipt.transactionHash);\n this.#transactionHash = transactionHash;\n\n return {\n transactionHash,\n transactionId: null,\n };\n }\n\n if (isCallExceptionError(error)) {\n throw new TransactionFailedError(\n `Transaction ${this.#transactionHash} reverted`,\n { cause: error },\n );\n }\n\n throw TransportError.fromError(error);\n }\n }\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ConditionId, ComboConditionId } from '@polymarket/bindings';
|
|
2
2
|
export * from '@polymarket/bindings';
|
|
3
3
|
export { OrderSide, OrderType } from '@polymarket/bindings';
|
|
4
4
|
export * from '@polymarket/bindings/clob';
|
|
@@ -8,13 +8,13 @@ export { ActivityType, ComboActivityType, ComboPositionOutcome, ComboPositionSta
|
|
|
8
8
|
export * from '@polymarket/bindings/gamma';
|
|
9
9
|
export { WalletType } from '@polymarket/bindings/gamma';
|
|
10
10
|
export * from '@polymarket/bindings/perps';
|
|
11
|
-
export { PerpsCancelOrderResult, PerpsDepositStatus, PerpsInstrumentCategory, PerpsInstrumentType, PerpsInternalTransferDirection, PerpsKlineInterval, PerpsKnownWithdrawalStatus, PerpsMarginType, PerpsNotificationOrderType, PerpsNotificationType, PerpsOrderStatus, PerpsPostOrderAck, PerpsSide, PerpsSortDirection, PerpsTimeInForce, PerpsUpdateLeverageResult } from '@polymarket/bindings/perps';
|
|
11
|
+
export { PerpsAutoCancelStatus, PerpsCancelOrderResult, PerpsDepositStatus, PerpsInstrumentCategory, PerpsInstrumentType, PerpsInternalTransferDirection, PerpsKlineInterval, PerpsKnownWithdrawalStatus, PerpsMarginType, PerpsNotificationOrderType, PerpsNotificationType, PerpsOrderStatus, PerpsPostOrderAck, PerpsSide, PerpsSortDirection, PerpsTimeInForce, PerpsUpdateLeverageResult } from '@polymarket/bindings/perps';
|
|
12
12
|
export * from '@polymarket/bindings/relayer';
|
|
13
13
|
import { EvmAddress } from '@polymarket/types';
|
|
14
|
-
import { U as UserInputError, b as TransactionCall, A as ApiKeyAuthorization } from './types-
|
|
15
|
-
export { c as
|
|
16
|
-
export { C as CreateLimitOrderError, a as CreateMarketOrderError, F as FetchSportsMarketTypesError, L as ListSportsError, P as PlaceLimitOrderError, b as PlaceMarketOrderError } from './sports-
|
|
17
|
-
export { CollateralReturnKnownOperationKind, CollateralReturnOperation, CollateralReturnOperationKind, CollateralReturnPlanResponse, CollateralReturnPositionAmount, CollateralReturnPositionSummary, CollateralReturnRouterCall, RfqConfirmationDecision, RfqConfirmationRequest, RfqDirection, RfqErrorCode, RfqExecutionStatus, RfqExecutionUpdate, RfqId, RfqKnownErrorCode, RfqQuoteId, RfqQuoteRequest, RfqRequestedSize, RfqRequestedSizeUnit, RfqRequestorPublicId, RfqSide, RfqTrade } from '@polymarket/bindings/combos';
|
|
14
|
+
import { U as UserInputError, b as TransactionCall, A as ApiKeyAuthorization } from './types-RGx7fNNl.js';
|
|
15
|
+
export { c as AcceptComboQuoteError, d as AcceptComboQuoteParams, e as AcceptComboQuoteResult, f as AccountIdentity, g as AnalyticsActions, h as ApproveErc1155ForAllError, i as ApproveErc20Error, j as ArmPerpsAutoCancelError, k as ArmPerpsAutoCancelRequest, l as AutoCancelDailyLimitError, B as BaseClient, m as BasePublicClient, n as BaseSecureClient, o as BeginAuthenticationRequest, C as CancelAllError, p as CancelAllPerpsOrdersRequest, q as CancelMarketOrdersError, r as CancelOrderError, s as CancelOrdersError, t as CancelPerpsOrderRequest, u as CancelPerpsOrdersRequest, v as CancelledSigningError, w as Client, x as ClientActions, y as ClientDecorator, z as ClobEndpoints, D as ComboPositionSort, E as ComboQuote, F as CombosEndpoints, G as ConnectionLostError, H as ConnectionLostErrorOptions, I as CreatePerpsSessionRequest, J as CreateSecureClientError, K as CryptoPricesChainlinkTwapSubscription, L as DataActions, M as DepositToPerpsError, N as DepositToPerpsRequest, O as DisarmPerpsAutoCancelRequest, P as DiscoveryActions, Q as DownloadAccountingSnapshotError, R as DropNotificationsError, V as EnvironmentConfig, W as EnvironmentConfigFork, X as EnvironmentContracts, Y as EstimateMarketPriceError, Z as ExecuteCollateralReturnPlanError, _ as ExecuteCollateralReturnPlanRequest, $ as FetchClosedOnlyModeError, a0 as FetchCommentsByIdError, a1 as FetchEventError, a2 as FetchEventLiveVolumeError, a3 as FetchEventTagsError, a4 as FetchLastTradePriceError, a5 as FetchLastTradePricesError, a6 as FetchMarketError, a7 as FetchMarketTagsError, a8 as FetchMidpointError, a9 as FetchMidpointsError, aa as FetchNotificationsError, ab as FetchOrderBookError, ac as FetchOrderBooksError, ad as FetchOrderError, ae as FetchOrderScoringError, af as FetchOrdersScoringError, ag as FetchPerpsAccountConfigRequest, ah as FetchPerpsBookError, ai as FetchPerpsBookRequest, aj as FetchPerpsFeesError, ak as FetchPerpsInstrumentsError, al as FetchPerpsInstrumentsRequest, am as FetchPerpsOpenOrdersRequest, an as FetchPerpsOrdersRequest, ao as FetchPerpsTickerError, ap as FetchPerpsTickerRequest, aq as FetchPerpsTickersError, ar as FetchPerpsTickersRequest, as as FetchPortfolioValueError, at as FetchPriceError, au as FetchPriceHistoryError, av as FetchPricesError, aw as FetchPublicProfileError, ax as FetchRelatedTagResourcesError, ay as FetchRelatedTagsError, az as FetchRewardPercentagesError, aA as FetchRfqStatusError, aB as FetchRfqStatusParams, aC as FetchSeriesError, aD as FetchSpreadError, aE as FetchSpreadsError, aF as FetchTagError, aG as FetchTotalEarningsForUserForDayError, aH as FetchTradedMarketCountError, aI as InsufficientLiquidityError, aJ as ListAccountTradesError, aK as ListActivityError, aL as ListBuilderLeaderboardError, aM as ListBuilderTradesError, aN as ListBuilderVolumeError, aO as ListClosedPositionsError, aP as ListComboActivityError, aQ as ListComboMarketsError, aR as ListComboPositionsError, aS as ListCommentsByUserAddressError, aT as ListCommentsError, aU as ListCurrentRewardsError, aV as ListEventsError, aW as ListMarketHoldersError, aX as ListMarketPositionsError, aY as ListMarketRewardsError, aZ as ListMarketsError, a_ as ListOpenInterestError, a$ as ListOpenOrdersError, b0 as ListPerpsCandlesError, b1 as ListPerpsCandlesRequest, b2 as ListPerpsDepositsRequest, b3 as ListPerpsEquityHistoryRequest, b4 as ListPerpsFillsRequest, b5 as ListPerpsFundingHistoryError, b6 as ListPerpsFundingHistoryRequest, b7 as ListPerpsFundingPaymentsRequest, b8 as ListPerpsNotificationsRequest, b9 as ListPerpsPnlHistoryRequest, ba as ListPerpsTradesError, bb as ListPerpsTradesRequest, bc as ListPerpsWithdrawalsRequest, bd as ListPositionsError, be as ListSeriesError, bf as ListTagsError, bg as ListTeamsError, bh as ListTraderLeaderboardError, bi as ListTradesError, bj as ListUserEarningsAndMarketsConfigError, bk as ListUserEarningsForDayError, bl as MarkPerpsNotificationsReadRequest, bm as MergePositionsError, bn as OpenPerpsSessionError, bo as OpenPerpsSessionRequest, bp as OpenRfqSessionError, bq as Page, br as PageSizeSchema, bs as Paginated, bt as PerpsActions, bu as PerpsBookDepth, bv as PerpsEndpoints, bw as PerpsOrderRequest, bx as PerpsPlaceFokOrderRequest, by as PerpsPlaceGtcOrderRequest, bz as PerpsPlaceIocOrderRequest, bA as PerpsPlacedTpSlOrder, bB as PerpsPlacedTpSlOrders, bC as PerpsPositionTpSlTrigger, bD as PerpsSession, bE as PerpsSessionAccountError, bF as PerpsSessionLifecycleError, bG as PerpsSessionTradingError, bH as PerpsTpSlTrigger, bI as PlacePerpsOrderRequest, bJ as PlacePerpsOrderResult, bK as PlacePerpsOrderWithTpSlRequest, bL as PlacePerpsOrderWithTpSlResult, bM as PlacePerpsPositionTpSlRequest, bN as PlacePerpsPositionTpSlResult, bO as PlanCollateralReturnError, bP as PostOrderError, bQ as PostOrdersError, bR as PostPerpsOrdersRequest, bS as PublicAccountActions, bT as PublicActions, bU as PublicClient, bV as PublicClientOptions, bW as PublicPerpsActions, bX as PublicRewardsActions, bY as PublicSubscriptionsActions, bZ as RateLimitError, b_ as RateLimitErrorOptions, b$ as RedeemPositionsError, c0 as RequestComboQuoteError, c1 as RequestComboQuoteParams, c2 as RequestComboQuoteResult, c3 as RequestRejectedError, c4 as RequestRejectedErrorOptions, c5 as RestEndpoint, c6 as ResumePerpsSessionRequest, c7 as RevokePerpsCredentialsError, c8 as RevokePerpsCredentialsRequest, c9 as RfqCancelQuoteAck, ca as RfqCancelQuoteError, cb as RfqCancelQuoteRejectedError, cc as RfqCancelQuoteRejectedErrorOptions, cd as RfqConfirmationAck, ce as RfqConfirmationError, cf as RfqConfirmationRejectedError, cg as RfqConfirmationRequestEvent, ch as RfqEvent, ci as RfqQuoteError, cj as RfqQuoteReference, ck as RfqQuoteRejectedError, cl as RfqQuoteRejectedErrorOptions, cm as RfqQuoteRequestEvent, cn as RfqQuoteResponse, co as RfqQuoteSource, cp as RfqRequestRejectedError, cq as RfqRequestRejectedErrorOptions, cr as RfqSession, cs as RfqStatusResult, ct as RfqTradeEvent, cu as SearchError, cv as SearchSort, cw as SecureAccountActions, cx as SecureActions, cy as SecureClient, cz as SecureClientOptions, cA as SecureDownloadAccountingSnapshotRequest, cB as SecureFetchPortfolioValueRequest, cC as SecureFetchTradedMarketCountRequest, cD as SecureListActivityRequest, cE as SecureListClosedPositionsRequest, cF as SecureListComboActivityRequest, cG as SecureListComboPositionsRequest, cH as SecureListPositionsRequest, cI as SecurePerpsActions, cJ as SecureRewardsActions, cK as SecureRfqActions, cL as SecureSubscriptionsActions, cM as SecureTradingActions, cN as SecureWalletActions, cO as SetupGaslessWalletError, cP as SetupTradingApprovalsError, S as Signer, cQ as SignerTransactionRequest, cR as SigningError, cS as SplitPositionError, cT as SubscribeError, cU as TimeoutError, cV as TransactionFailedError, cW as TransactionHandle, cX as TransactionOutcome, cY as TransferErc20Error, cZ as TransportError, a as TypedData, c_ as TypedDataDomain, c$ as TypedDataField, T as TypedDataPayload, d0 as UnexpectedResponseError, d1 as UpdatePerpsLeverageError, d2 as UpdatePerpsLeverageRequest, d3 as UpdatePerpsMarginError, d4 as UpdatePerpsMarginRequest, d5 as WaitForComboFillError, d6 as WaitForComboFillParams, d7 as WaitForComboFillResult, d8 as WaitForOrderFillSettlementError, d9 as WaitForTransactionError, da as WalletDerivationConfig, db as WebSocketCloseCode, dc as WebSocketEndpoint, dd as WebSocketKnownCloseCode, de as WithdrawFromPerpsError, df as WithdrawFromPerpsRequest, dg as accountActions, dh as allActions, di as analyticsActions, dj as createPublicClient, dk as createSecureClient, dl as dataActions, dm as discoveryActions, dn as forkEnvironmentConfig, dp as makeErrorGuard, dq as perpsActions, dr as production, ds as rewardsActions, dt as rfqActions, du as subscriptionsActions, dv as tradingActions, dw as walletActions } from './types-RGx7fNNl.js';
|
|
16
|
+
export { C as CreateLimitOrderError, a as CreateMarketOrderError, F as FetchSportsMarketTypesError, L as ListSportsError, P as PlaceLimitOrderError, b as PlaceMarketOrderError } from './sports-BPp6UXlR.js';
|
|
17
|
+
export { BuilderRfqError, CollateralReturnKnownOperationKind, CollateralReturnOperation, CollateralReturnOperationKind, CollateralReturnPlanResponse, CollateralReturnPositionAmount, CollateralReturnPositionSummary, CollateralReturnRouterCall, ComboAcceptFailureReason, ComboQuoteUnavailableReason, RfqConfirmationDecision, RfqConfirmationRequest, RfqDirection, RfqErrorCode, RfqExecutionStatus, RfqExecutionUpdate, RfqId, RfqKnownErrorCode, RfqQuoteId, RfqQuoteRequest, RfqRejectionCode, RfqRequestedSize, RfqRequestedSizeUnit, RfqRequestorPublicId, RfqSide, RfqStatus, RfqTrade } from '@polymarket/bindings/combos';
|
|
18
18
|
export { CryptoPricesChainlinkTwapEvent, CryptoPricesChainlinkTwapSixtyEvent, CryptoPricesChainlinkTwapThirtyEvent, CryptoPricesChainlinkTwapWindowSeconds, PerpsSessionEvent } from '@polymarket/bindings/subscriptions';
|
|
19
19
|
import 'zod';
|
|
20
20
|
import 'ox';
|
|
@@ -87,7 +87,7 @@ declare const SplitPositionCallError: {
|
|
|
87
87
|
* @throws {@link SplitPositionCallError}
|
|
88
88
|
* Thrown when the amount is invalid.
|
|
89
89
|
*/
|
|
90
|
-
declare function splitPositionCall(targetAddress: EvmAddress, collateralTokenAddress: EvmAddress, conditionId:
|
|
90
|
+
declare function splitPositionCall(targetAddress: EvmAddress, collateralTokenAddress: EvmAddress, conditionId: ConditionId, amount: bigint): TransactionCall;
|
|
91
91
|
type MergePositionsCallError = UserInputError;
|
|
92
92
|
declare const MergePositionsCallError: {
|
|
93
93
|
isError(error: unknown): error is UserInputError;
|
|
@@ -102,7 +102,7 @@ declare const MergePositionsCallError: {
|
|
|
102
102
|
* @throws {@link MergePositionsCallError}
|
|
103
103
|
* Thrown when the amount is invalid.
|
|
104
104
|
*/
|
|
105
|
-
declare function mergePositionsCall(targetAddress: EvmAddress, collateralTokenAddress: EvmAddress, conditionId:
|
|
105
|
+
declare function mergePositionsCall(targetAddress: EvmAddress, collateralTokenAddress: EvmAddress, conditionId: ConditionId, amount: bigint): TransactionCall;
|
|
106
106
|
/**
|
|
107
107
|
* Creates a transaction call for `redeemPositions(address,bytes32,bytes32,uint256[])`
|
|
108
108
|
* on Conditional Tokens-compatible contracts, including the collateral adapters.
|
|
@@ -113,7 +113,7 @@ declare function mergePositionsCall(targetAddress: EvmAddress, collateralTokenAd
|
|
|
113
113
|
* @throws {@link CtfRedeemPositionsCallError}
|
|
114
114
|
* Thrown when the condition is invalid.
|
|
115
115
|
*/
|
|
116
|
-
declare function ctfRedeemPositionsCall(conditionalTokensAddress: EvmAddress, collateralTokenAddress: EvmAddress, conditionId:
|
|
116
|
+
declare function ctfRedeemPositionsCall(conditionalTokensAddress: EvmAddress, collateralTokenAddress: EvmAddress, conditionId: ConditionId): TransactionCall;
|
|
117
117
|
type SplitV2CallError = UserInputError;
|
|
118
118
|
declare const SplitV2CallError: {
|
|
119
119
|
isError(error: unknown): error is UserInputError;
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {N,X,V,T as T$1,ra,pa,te,re,pe as pe$1,ne as ne$1,le as le$1,je,zc,xc,vc,qb,na,Lc,Nc,Zc,Wb,Ub,Sb,Qb,Ob,Mb,Kb,Ib,Gb,ub,sb,tc,lc,jc,hc,bf,Mf,Af,yf,sf,Kf,If,Gf,Ef,Bc,wf,uf,Jc,Hc,Fc,Dc,rc,pc,nc,ge,de as de$1,ce as ce$1,fe as fe$1,la,ja,ha,fa,da,ba,jf,Cf,R as R$1,P as P$1,Xc,Vc,Tc,Rc,qd,dd,cd,yd,wd,ud,sd,ec,ac,$e,We,Ne,Qf,Wa,Sa,_a,va,Aa,K,L as L$1,Da,Wd,Ud,Sd,Od,Md,Kd,Yd,Qd,Pc,_b,Yb,H,zd,G,wa,I,gb,eb,Fd,Dd,Ed,Bd,Cd,Ad,ib,Id,cf,ef,gf,J,ed,fd}from'./chunk-HFDKKOAD.js';export{Va as ApproveErc1155ForAllError,Ra as ApproveErc20Error,Uc as CancelAllError,Wc as CancelMarketOrdersError,Qc as CancelOrderError,Sc as CancelOrdersError,fc as CollateralReturnKnownOperationKind,C as CombinatorialPrepareConditionCallError,sa as ComboActivityType,ue as ComboPositionOutcome,he as ComboPositionSort,ve as ComboPositionStatus,vd as CreateLimitOrderError,rd as CreateMarketOrderError,q as CtfRedeemPositionsCallError,ae as DepositToPerpsError,se as DownloadAccountingSnapshotError,W as DropNotificationsError,b as Erc20ApprovalCallError,m as Erc20TransferCallError,Yc as EstimateMarketPriceError,dc as ExecuteCollateralReturnPlanError,M as FetchClosedOnlyModeError,ic as FetchCommentsByIdError,oc as FetchEventError,sc as FetchEventLiveVolumeError,qc as FetchEventTagsError,Rb as FetchLastTradePriceError,Tb as FetchLastTradePricesError,Gc as FetchMarketError,Ic as FetchMarketTagsError,rb as FetchMidpointError,tb as FetchMidpointsError,U as FetchNotificationsError,Jb as FetchOrderBookError,Lb as FetchOrderBooksError,Q as FetchOrderError,aa as FetchOrderScoringError,ca as FetchOrdersScoringError,Pd as FetchPerpsBookError,Xd as FetchPerpsFeesError,Jd as FetchPerpsInstrumentsError,Ld as FetchPerpsTickerError,Nd as FetchPerpsTickersError,oe as FetchPortfolioValueError,Fb as FetchPriceError,Vb as FetchPriceHistoryError,Hb as FetchPricesError,af as FetchPublicProfileError,Jf as FetchRelatedTagResourcesError,Hf as FetchRelatedTagsError,ka as FetchRewardPercentagesError,vf as FetchSeriesError,zf as FetchSportsMarketTypesError,Nb as FetchSpreadError,Pb as FetchSpreadsError,Ff as FetchTagError,ga as FetchTotalEarningsForUserForDayError,qe as FetchTradedMarketCountError,S as ListAccountTradesError,oa as ListActivityError,uc as ListBuilderLeaderboardError,pb as ListBuilderTradesError,wc as ListBuilderVolumeError,ke as ListClosedPositionsError,qa as ListComboActivityError,Ec as ListComboMarketsError,me as ListComboPositionsError,kc as ListCommentsByUserAddressError,gc as ListCommentsError,Xb as ListCurrentRewardsError,mc as ListEventsError,Kc as ListMarketHoldersError,Oc as ListMarketPositionsError,Zb as ListMarketRewardsError,Cc as ListMarketsError,Mc as ListOpenInterestError,O as ListOpenOrdersError,Rd as ListPerpsCandlesError,Td as ListPerpsFundingHistoryError,Vd as ListPerpsTradesError,ie as ListPositionsError,tf as ListSeriesError,xf as ListSportsError,Df as ListTagsError,Lf as ListTeamsError,yc as ListTraderLeaderboardError,ma as ListTradesError,ia as ListUserEarningsAndMarketsConfigError,ea as ListUserEarningsForDayError,a as MAX_UINT256,t as MergePositionsCallError,Re as MergePositionsError,y as MergeV2CallError,Zd as OpenPerpsSessionError,if as OpenRfqSessionError,o as PerpsDepositCallError,xd as PlaceLimitOrderError,td as PlaceMarketOrderError,$b as PlanCollateralReturnError,ad as PostOrderError,bd as PostOrdersError,_e as RedeemPositionsError,A as RedeemV2CallError,_d as RevokePerpsCredentialsError,ff as RfqCancelQuoteError,ef as RfqCancelQuoteRejectedError,kf as RfqConfirmationDecision,hf as RfqConfirmationError,gf as RfqConfirmationRejectedError,lf as RfqDirection,mf as RfqExecutionStatus,nf as RfqKnownErrorCode,df as RfqQuoteError,cf as RfqQuoteRejectedError,of as RfqRequestedSizeUnit,pf as RfqSide,rf as SearchError,qf as SearchSort,Za as SetupTradingApprovalsError,r as SplitPositionCallError,Ie as SplitPositionError,w as SplitV2CallError,Bf as SubscribeError,Pf as TransferErc20Error,Gd as UpdatePerpsLeverageError,Hd as UpdatePerpsMarginError,pd as WaitForOrderFillSettlementError,ta as WaitForTransactionError,be as WithdrawFromPerpsError,D as combinatorialPrepareConditionCall,v as ctfRedeemPositionsCall,l as decodeErc1155BalanceOfBatchResult,j as decodeErc1155BalanceOfResult,h as decodeErc1155IsApprovedForAllResult,e as decodeErc20AllowanceResult,E as encodeProxyCall,F as encodeSafeMultisendCall,f as erc1155ApprovalForAllCall,k as erc1155BalanceOfBatchCall,i as erc1155BalanceOfCall,g as erc1155IsApprovedForAllCall,d as erc20AllowanceCall,c as erc20ApprovalCall,n as erc20TransferCall,ua as expectTransactionHandle,u as mergePositionsCall,z as mergeV2Call,p as perpsDepositCall,B as redeemV2Call,s as splitPositionCall,x as splitV2Call}from'./chunk-HFDKKOAD.js';import {a,m as m$1,j,g as g$1,f as f$1,l,h,i,c,b as b$1,e}from'./chunk-4LDMO37Q.js';export{j as CancelledSigningError,e as ConnectionLostError,k as InsufficientLiquidityError,g as RateLimitError,f as RequestRejectedError,l as SigningError,h as TimeoutError,i as TransactionFailedError,c as TransportError,b as UnexpectedResponseError,a as UserInputError,d as WebSocketKnownCloseCode,m as makeErrorGuard}from'./chunk-4LDMO37Q.js';import {DecimalishSchema,ApiKeySchema,EvmAddressSchema,toBaseUnits,OrderSide}from'@polymarket/bindings';export{OrderSide,OrderType}from'@polymarket/bindings';export{PriceHistoryInterval,SignatureType}from'@polymarket/bindings/clob';export{ActivityType}from'@polymarket/bindings/data';import {WalletType}from'@polymarket/bindings/gamma';export{WalletType}from'@polymarket/bindings/gamma';export{PerpsDepositStatus,PerpsInstrumentCategory,PerpsInstrumentType,PerpsInternalTransferDirection,PerpsKlineInterval,PerpsKnownWithdrawalStatus,PerpsMarginType,PerpsNotificationOrderType,PerpsNotificationType,PerpsOrderStatus,PerpsSide,PerpsSortDirection,PerpsTimeInForce}from'@polymarket/bindings/perps';import {z}from'zod';import {expectEvmAddress,isSameEvmAddress,expectEvmSignature,invariant,setNonBlockingTimeout}from'@polymarket/types';import {PerpsMarketDataEventSchema,RealtimeEventSchema,SportsResultEventSchema,MarketEventSchema,UserEventSchema}from'@polymarket/bindings/subscriptions';import {pushable}from'it-pushable';import {RfqQuoterInboundMessageSchema,RfqConfirmationDecision,RfqRequestedSizeUnit,RfqDirection}from'@polymarket/bindings/combos';var Ci=z.object({POLY_BUILDER_API_KEY:z.string().min(1),POLY_BUILDER_TIMESTAMP:z.string().min(1),POLY_BUILDER_PASSPHRASE:z.string().min(1),POLY_BUILDER_SIGNATURE:z.string().min(1)});function Ei(t){return new se(t)}function ki(t){return new ne(t)}var se=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return true}get supportGasless(){return true}async authorize(e){try{return await this.#s(e)}catch(r){throw l.fromError(r,"Could not authorize the builder-authenticated request")}}async#r(){let e=this.#e.headers,r=typeof e=="function"?await e():e,s=new Headers(r);return s.set("content-type","application/json"),s}async#s(e){let r=await fetch(this.#e.url,{body:JSON.stringify({body:e.body,method:e.method,path:e.path}),credentials:this.#e.credentials,headers:await this.#r(),method:"POST",mode:"cors"});if(!r.ok)throw new Error(`Remote signer rejected request with status ${r.status}`);return Ci.parse(await r.json())}},ne=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return false}get supportGasless(){return true}authorize(){return Promise.resolve({RELAYER_API_KEY:this.#e.key,RELAYER_API_KEY_ADDRESS:this.#e.address})}};function Tr(t){return {domain:{chainId:t.chainId,name:"ClobAuthDomain",version:"1"},message:{address:t.address,message:"This message attests that I control the given wallet",nonce:t.nonce??0,timestamp:`${t.timestamp}`},primaryType:"ClobAuth",types:{ClobAuth:[{name:"address",type:"address"},{name:"timestamp",type:"string"},{name:"nonce",type:"uint256"},{name:"message",type:"string"}]}}}function Ti(t){return {listPositions:je.bind(null,t),listClosedPositions:le$1.bind(null,t),listComboPositions:ne$1.bind(null,t),fetchPortfolioValue:pe$1.bind(null,t),fetchTradedMarketCount:re.bind(null,t),downloadAccountingSnapshot:te.bind(null,t),listMarketPositions:Pc.bind(null,t),listActivity:pa.bind(null,t),listComboActivity:ra.bind(null,t)}}function f(t,e={}){return {...e,user:e.user??t.account.wallet}}function ie(t){let e=Ti(t);return t.isPublicClient()?e:{...e,listPositions:r=>je(t,f(t,r)),listClosedPositions:r=>le$1(t,f(t,r)),listComboPositions:r=>ne$1(t,f(t,r)),fetchPortfolioValue:r=>pe$1(t,f(t,r)),fetchTradedMarketCount:r=>re(t,f(t,r)),downloadAccountingSnapshot:r=>te(t,f(t,r)),listActivity:r=>pa(t,f(t,r)),listComboActivity:r=>ra(t,f(t,r)),listAccountTrades:T$1.bind(null,t),fetchNotifications:V.bind(null,t),dropNotifications:X.bind(null,t),fetchClosedOnlyMode:N.bind(null,t)}}function oe(t){return {listBuilderTrades:qb.bind(null,t),listBuilderLeaderboard:vc.bind(null,t),fetchBuilderVolume:xc.bind(null,t),listTraderLeaderboard:zc.bind(null,t)}}function ae(t){return {fetchEventLiveVolume:tc.bind(null,t),fetchMidpoint:sb.bind(null,t),fetchMidpoints:ub.bind(null,t),fetchPrice:Gb.bind(null,t),fetchPrices:Ib.bind(null,t),fetchOrderBook:Kb.bind(null,t),fetchOrderBooks:Mb.bind(null,t),fetchSpread:Ob.bind(null,t),fetchSpreads:Qb.bind(null,t),fetchLastTradePrice:Sb.bind(null,t),fetchLastTradePrices:Ub.bind(null,t),fetchPriceHistory:Wb.bind(null,t),estimateMarketPrice:Zc.bind(null,t),listOpenInterest:Nc.bind(null,t),listMarketHolders:Lc.bind(null,t),listTrades:na.bind(null,t)}}function ce(t){return {listEvents:nc.bind(null,t),fetchEvent:pc.bind(null,t),fetchEventTags:rc.bind(null,t),listMarkets:Dc.bind(null,t),listComboMarkets:Fc.bind(null,t),fetchMarket:Hc.bind(null,t),fetchMarketTags:Jc.bind(null,t),listSeries:uf.bind(null,t),fetchSeries:wf.bind(null,t),listMarketClarifications:Bc.bind(null,t),listTags:Ef.bind(null,t),fetchTag:Gf.bind(null,t),fetchRelatedTags:If.bind(null,t),fetchRelatedTagResources:Kf.bind(null,t),search:sf.bind(null,t),listSports:yf.bind(null,t),fetchSportsMarketTypes:Af.bind(null,t),listTeams:Mf.bind(null,t),fetchPublicProfile:bf.bind(null,t),listComments:hc.bind(null,t),fetchCommentsById:jc.bind(null,t),listCommentsByUserAddress:lc.bind(null,t)}}function ue(t){let e={fetchPerpsBook:r=>Qd(t,r),fetchPerpsFees:()=>Yd(t),fetchPerpsInstruments:r=>Kd(t,r),fetchPerpsTicker:r=>Md(t,r),fetchPerpsTickers:r=>Od(t,r),listPerpsCandles:r=>Sd(t,r),listPerpsFundingHistory:r=>Ud(t,r),listPerpsTrades:r=>Wd(t,r)};return t.isSecureClient()?{...e,depositToPerps:r=>fe$1(t,r),openPerpsSession:r=>ce$1(t,r),revokePerpsCredentials:r=>de$1(t,r),withdrawFromPerps:r=>ge(t,r)}:e}function wi(t){return {listCurrentRewards:Yb.bind(null,t),listMarketRewards:_b.bind(null,t)}}function de(t){let e=wi(t);return t.isPublicClient()?e:{...e,fetchOrderScoring:ba.bind(null,t),fetchOrdersScoring:da.bind(null,t),listUserEarningsForDay:fa.bind(null,t),fetchTotalEarningsForUserForDay:ha.bind(null,t),listUserEarningsAndMarketsConfig:ja.bind(null,t),fetchRewardPercentages:la.bind(null,t)}}function wr(t){return {openRfqSession(){return jf(t)}}}function pe(t){return t.isSecureClient()?{subscribe(e){return Cf(t,e)}}:{subscribe(e){return Cf(t,e)}}}function xr(t){return {createMarketOrder:sd.bind(null,t),placeMarketOrder:ud.bind(null,t),createLimitOrder:wd.bind(null,t),placeLimitOrder:yd.bind(null,t),postOrder:cd(t),postOrders:dd(t),waitForOrderFillSettlement:qd.bind(null,t),cancelOrder:Rc.bind(null,t),cancelOrders:Tc.bind(null,t),cancelAll:Vc.bind(null,t),cancelMarketOrders:Xc.bind(null,t),listOpenOrders:P$1.bind(null,t),fetchOrder:R$1.bind(null,t)}}function Mr(t){return {setupTradingApprovals:_a.bind(null,t),approveErc20:Sa.bind(null,t),approveErc1155ForAll:Wa.bind(null,t),transferErc20:Qf.bind(null,t),splitPosition:Ne.bind(null,t),mergePositions:We.bind(null,t),redeemPositions:$e.bind(null,t),planCollateralReturn:ac.bind(null,t),executeCollateralReturnPlan:ec.bind(null,t)}}function Ir(t){return t.isSecureClient()?{...ie(t),...oe(t),...ae(t),...ce(t),...ue(t),...de(t),...wr(t),...pe(t),...xr(t),...Mr(t)}:{...ie(t),...oe(t),...ae(t),...ce(t),...ue(t),...de(t),...pe(t)}}var le={name:"production",chainId:137,rpc:"https://polygon.drpc.org",walletDerivation:{depositWalletFactory:expectEvmAddress("0x00000000000Fb5C9ADea0298D729A0CB3823Cc07"),depositWalletBeacon:expectEvmAddress("0x7A18EDfe055488A3128f01F563e5B479D92ffc3a"),depositWalletImplementation:expectEvmAddress("0x58CA52ebe0DadfdF531Cde7062e76746de4Db1eB"),proxyFactory:expectEvmAddress("0xaB45c5A4B0c941a2F231C04C3f49182e1A254052"),proxyImplementation:expectEvmAddress("0x44e999d5c2F66Ef0861317f9A4805AC2e90aEB4f"),safeFactory:expectEvmAddress("0xaacFeEa03eb1561C4e67d661e40682Bd20E3541b"),safeInitCodeHash:"0x2bce2127ff07fb632d16c8347c4ebf501f4841168bed00d9e6ef715ddb6fcecf"},contracts:{collateralToken:expectEvmAddress("0xC011a7E12a19f7B1f670d46F03B03f3342E82DFB"),conditionalTokens:expectEvmAddress("0x4D97DCd97eC945f40cF65F87097ACe5EA0476045"),negRiskAdapter:expectEvmAddress("0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296"),collateralAdapter:expectEvmAddress("0xAdA100Db00Ca00073811820692005400218FcE1f"),negRiskCollateralAdapter:expectEvmAddress("0xadA2005600Dec949baf300f4C6120000bDB6eAab"),standardExchange:expectEvmAddress("0xE111180000d2663C0091e4f400237545B87B996B"),negRiskExchange:expectEvmAddress("0xe2222d279d744050d28e00520010520000310F59"),exchangeV3:expectEvmAddress("0xe3333700cA9d93003F00f0F71f8515005F6c00Aa"),protocolV2Router:expectEvmAddress("0x12121212006e4CD160D18e3f00711DA5c3372600"),combinatorialModule:expectEvmAddress("0x30000034706c7d8e12009dab006be20000c031a8"),positionManager:expectEvmAddress("0x006F54F7f9A22e0000CC2AB60031000000ae9fEF"),autoRedeemOperator:expectEvmAddress("0xa1200000d0002264C9a1698e001292D00E1b00af"),safeMultisend:expectEvmAddress("0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761"),relayHub:expectEvmAddress("0xD216153c06E857cD7f72665E0aF1d7D82172F494"),perpsDepositContract:expectEvmAddress("0xDCa4af75705dbB50f62437045afF9921947917d2")},clob:{rest:"https://clob.polymarket.com",market:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/market"},user:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/user"}},relayer:{rest:"https://relayer-v2.polymarket.com"},gamma:{rest:"https://gamma-api.polymarket.com"},data:{rest:"https://data-api.polymarket.com"},combos:{rest:"https://combos-rfq-api.polymarket.com",ws:"wss://combos-rfq-gateway-quoter.polymarket.com/ws/rfq",collateralReturn:{rest:"https://combos-rfq-collateral-return.polymarket.com"}},perps:{rest:"https://api.perpetuals.polymarket.com",ws:"wss://ws.perpetuals.polymarket.com/v1/ws"},rtds:{ws:"wss://ws-live-data.polymarket.com"},sports:{ws:"wss://sports-api.polymarket.com/ws"},relayerMaxPolls:100,relayerPollFrequencyMs:2e3};function xi(t,e=le){return {...e,...t,walletDerivation:{...e.walletDerivation,...t.walletDerivation},contracts:{...e.contracts,...t.contracts},clob:{...k(e.clob,t.clob),market:F(e.clob.market,t.clob?.market),user:F(e.clob.user,t.clob?.user)},relayer:k(e.relayer,t.relayer),gamma:k(e.gamma,t.gamma),data:k(e.data,t.data),combos:{...Or(e.combos,t.combos),collateralReturn:k(e.combos.collateralReturn,t.combos?.collateralReturn)},perps:Or(e.perps,t.perps),rtds:F(e.rtds,t.rtds),sports:F(e.sports,t.sports)}}function k(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function F(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function Or(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function me(t,e){if(!(t===void 0&&e===void 0))return {...t,...e}}var yc=xi({name:"preproduction",clob:{rest:"https://clob-preprod-int-v2.polymarket.com"},data:{rest:"https://data-api-preprod-int.polymarket.com"},gamma:{rest:"https://gamma-api-preprod-int.polymarket.com"},relayer:{rest:"https://relayer-v2-preprod-int.polymarket.com"}});async function Fr(t,e,r,s,n){let i=`${e}${r}${s}`;n!==void 0&&(i+=n);let o=await globalThis.crypto.subtle.importKey("raw",Mi(t),{name:"HMAC",hash:"SHA-256"},false,["sign"]),A=await globalThis.crypto.subtle.sign("HMAC",o,new TextEncoder().encode(i));return Oi(Ii(A))}function Mi(t){let e=t.replace(/-/g,"+").replace(/_/g,"/").replace(/[^A-Za-z0-9+/=]/g,""),r=atob(e),s=new Uint8Array(r.length);for(let n=0;n<r.length;n+=1)s[n]=r.charCodeAt(n);return s.buffer}function Ii(t){let e=new Uint8Array(t),r="";for(let s of e)r+=String.fromCharCode(s);return btoa(r)}function Oi(t){return t.replace(/\+/g,"-").replace(/\//g,"_")}function m(t,e){let r;return {close:()=>(r===void 0&&(r=Promise.resolve(t.return()).then(()=>e())),r),[Symbol.asyncIterator](){return t[Symbol.asyncIterator]()}}}var p=class{#e=new Set;#r;constructor(e){this.#r=e?.deriveServerState??(()=>{});}add(e,r={}){let s={queue:pushable({objectMode:true})};r.matches!==void 0&&(s.matches=r.matches);let n={subscription:e,subscriber:s};return {change:this.#s(n),entry:n}}#s(e){let r=this.serverState();return this.#e.add(e),{before:r,after:this.serverState()}}remove(e){let r=this.serverState();return this.#e.delete(e),e.subscriber.queue.end(),{before:r,after:this.serverState()}}dispatch(e){for(let{subscriber:r}of this.#e)(r.matches===void 0||r.matches(e))&&r.queue.push(e);}hasActiveSubscriptions(){return this.#e.size>0}endAll(e){for(let{subscriber:r}of this.#e)r.queue.end(e);this.#e.clear();}serverState(){return this.#r(this.#e)}};function he(t,e,r){let s=L(r.assetsIds,e.assetsIds),n=L(e.assetsIds,r.assetsIds);s.length>0&&t(Lr(s,r.customFeatureEnabled));let i=r.assetsIds[0];s.length===0&&e.customFeatureEnabled!==r.customFeatureEnabled&&i!==void 0&&t(Lr([i],r.customFeatureEnabled)),n.length>0&&t(Li(n));}function fe(t,e,r){if(r.includeAllMarkets){!e.includeAllMarkets&&e.markets.length>0&&t(Br(e.markets));return}if(e.includeAllMarkets){r.markets.length>0&&t(Dr(r.markets));return}let s=L(r.markets,e.markets),n=L(e.markets,r.markets);s.length>0&&t(Dr(s)),n.length>0&&t(Br(n));}function Wr(t){let e=new Set,r=false;for(let{subscription:s}of t){for(let n of s.tokenIds)e.add(n);r||=s.customFeatureEnabled===true;}return {assetsIds:Array.from(e),customFeatureEnabled:r}}function Ur(t){let e=false,r=new Set;for(let{subscription:s}of t){if(Vr(s)){e=true;continue}for(let n of s.markets??[])r.add(n);}return {includeAllMarkets:e,markets:e?[]:Array.from(r)}}function Qr(t){return {assets_ids:t.assetsIds,custom_feature_enabled:t.customFeatureEnabled,type:"market"}}function Lr(t,e){return {assets_ids:t,custom_feature_enabled:e,operation:"subscribe"}}function Li(t){return {assets_ids:t,operation:"unsubscribe"}}function Hr(t,e){let r={auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},type:"user"};return t.includeAllMarkets||(r.markets=t.markets),r}function Dr(t){return {markets:t,operation:"subscribe"}}function Br(t){return {markets:t,operation:"unsubscribe"}}function _r(t){return e=>{switch(e.type){case "price_change":return e.payload.priceChanges.some(r=>t.tokenIds.includes(r.tokenId));case "new_market":return t.customFeatureEnabled===true;case "market_resolved":return t.customFeatureEnabled===true&&(e.payload.tokenIds??[]).some(r=>t.tokenIds.includes(r));case "best_bid_ask":return t.customFeatureEnabled===true&&t.tokenIds.includes(e.payload.tokenId);default:return t.tokenIds.includes(e.payload.tokenId)}}}function Kr(t){if(Vr(t))return ()=>true;let e=new Set((t.markets??[]).map(r=>r.toLowerCase()));return r=>e.has(r.payload.market.toLowerCase())}function Vr(t){return (t.markets?.length??0)===0}function L(t,e){let r=new Set(e);return t.filter(s=>!r.has(s))}var S=class{#e;#r;#s;#o=new Fd({heartbeat:new Ad});#i=new Ed;#t=new p({deriveServerState:Wr});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:_r(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){let{before:s,after:n}=r;try{(await this.#u()).reusedOpenSocket&&he(o=>this.#o.send(o),s,n);}catch(i){throw await this.#a(e),i}}async#a(e){let{before:r,after:s}=this.#t.remove(e);if(!this.#t.hasActiveSubscriptions()){await this.close();return}he(n=>this.#o.send(n),r,s);}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff(),this.#f();}#p(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=MarketEventSchema.safeParse(s);n.success&&this.#t.dispatch(n.data);}}#l(){this.#t.hasActiveSubscriptions()&&this.#m();}#h(){}#f(){this.#o.send(Qr(this.#t.serverState()));}#m(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var R=class{#e;#r;#s;#o;#i=new Fd({heartbeat:new Ad});#t=new Ed;#n=new p({deriveServerState:Ur});constructor(e){this.#e=e.credentials,this.#r=e.headers,this.#s=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:Kr(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){let{before:s,after:n}=r;try{(await this.#c()).reusedOpenSocket&&fe(o=>this.#i.send(o),s,n);}catch(i){throw await this.#d(e),i}}async#d(e){let{before:r,after:s}=this.#n.remove(e);if(!this.#n.hasActiveSubscriptions()){await this.close();return}fe(n=>this.#i.send(n),r,s);}async close(){this.#o===void 0&&(this.#o=this.#u().finally(()=>{this.#o=void 0;})),await this.#o;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#i.close();}#c(){return this.#i.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:e=>this.#p(e),prepare:()=>this.#e,headers:this.#r,url:this.#s})}#p(e){this.#t.resetBackoff(),this.#m(e);}#l(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=UserEventSchema.safeParse(s);n.success&&this.#n.dispatch(n.data);}}#h(){this.#n.hasActiveSubscriptions()&&this.#y();}#f(){}#m(e){this.#i.send(Hr(this.#n.serverState(),e));}#y(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};var P=class{#e;#r;#s;#o;#i=new Set;#t=new Set;#n=new Set;#a=false;constructor(e){this.#e=e.chainId,this.#r=e.headers,this.#s=e.restUrl,this.#o=e.wsUrl;}connect(e){if(this.#a)return Promise.reject(new c("Perps session manager has been shut down."));let r=new Id({chainId:this.#e,credentials:e,headers:this.#r,onClose:n=>this.#d(n),restUrl:this.#s,wsUrl:this.#o});this.#t.add(r);let s;return s=(async()=>{try{if(await r.connect(),this.#a)throw await r.close(),new c("Perps session manager has been shut down.");return this.#i.add(r),r}catch(n){throw await r.close(),n}finally{this.#n.delete(s),this.#t.delete(r);}})(),this.#n.add(s),s}async shutdown(){this.#a=true;let e=Array.from(this.#i),r=Array.from(this.#t),s=Array.from(this.#n);this.#i.clear(),this.#t.clear(),this.#n.clear(),await Promise.allSettled([...e.map(n=>n.close()),...r.map(n=>n.close()),...s.map(n=>n.catch(()=>{}))]).then(()=>{});}#d(e){this.#i.delete(e),this.#t.delete(e);}};var b=class{#e;#r;#s;#o=1;#i=new Fd({heartbeat:new Dd});#t=new Ed;#n=new p({deriveServerState:Ui});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:Hi(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){try{(await this.#c()).reusedOpenSocket&&(this.#m(jr(r.before,r.after)),this.#y(zr(r.before,r.after)));}catch(s){throw await this.#d(e),s}}async#d(e){let{before:r,after:s}=this.#n.remove(e);this.#m(jr(r,s)),this.#y(zr(r,s)),this.#n.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#u().finally(()=>{this.#s=void 0;})),await this.#s;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#i.close();}#c(){return this.#i.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:()=>this.#p(),headers:this.#e,url:this.#r})}#p(){this.#t.resetBackoff(),this.#m(Array.from(this.#n.serverState()));}#l(e){let r=PerpsMarketDataEventSchema.safeParse(e);r.success&&this.#n.dispatch(r.data);}#h(){this.#n.hasActiveSubscriptions()&&this.#b();}#f(){}#m(e){e.length!==0&&this.#i.send(this.#S("sub",e));}#y(e){e.length!==0&&this.#i.send(this.#S("unsub",e));}#S(e,r){return {id:this.#o++,req:e,chs:r}}#b(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};function Ui(t){let e=new Set,r=new Set,s=new Set,n=false,i=false;for(let{subscription:o}of t)switch(o.topic){case "perps.tickers":o.instrumentId===void 0?n=true:r.add(o.instrumentId);break;case "perps.statistics":o.instrumentId===void 0?i=true:s.add(o.instrumentId);break;default:e.add(Qi(o));}if(n)e.add("tickers::all");else for(let o of r)e.add(`tickers::${o}`);if(i)e.add("statistics::all");else for(let o of s)e.add(`statistics::${o}`);return e}function jr(t,e){return Array.from(e).filter(r=>!t.has(r))}function zr(t,e){return Array.from(t).filter(r=>!e.has(r))}function Qi(t){switch(t.topic){case "perps.trades":return `trades::${t.instrumentId}`;case "perps.bbo":return `bbo::${t.instrumentId}`;case "perps.book":return `book::${t.instrumentId}`;case "perps.candles":return `klines::${t.instrumentId}::${t.interval}`;case "perps.tickers":return t.instrumentId===void 0?"tickers::all":`tickers::${t.instrumentId}`;case "perps.statistics":return t.instrumentId===void 0?"statistics::all":`statistics::${t.instrumentId}`;default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function Hi(t){switch(t.topic){case "perps.trades":return e=>e.topic==="perps.trades"&&e.channel===`trades::${t.instrumentId}`;case "perps.bbo":case "perps.book":return e=>e.topic===t.topic&&e.payload.instrumentId===t.instrumentId;case "perps.candles":return e=>e.topic==="perps.candles"&&e.payload.instrumentId===t.instrumentId&&e.payload.interval===t.interval;case "perps.tickers":case "perps.statistics":return e=>e.topic===t.topic&&(t.instrumentId===void 0||e.payload.instrumentId===t.instrumentId);default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function Yr(t,e){return {...e,quote:r=>t.quote(e,r)}}function Gr(t,e){let r=e.rfqId,s=e.quoteId;return {...e,confirm:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Confirm),decline:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Decline)}}function Jr(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function Zr(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function Xr(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function es(t,e){let r=J(t);return {auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},identity:{maker_address:r.maker,signature_type:r.signatureType,signer_address:r.signer},type:"auth"}}function ts(t,e){return {price_e6:e.price.toString(),rfq_id:t.rfqId,signed_order:e.signedOrder,size_e6:e.size.toString(),type:"RFQ_QUOTE"}}function rs(t,e,r){let s=J(t);return {maker_address:s.maker,quote_id:r,rfq_id:e,signer_address:s.signer,type:"RFQ_QUOTE_CANCEL"}}function ss(t,e,r){return {decision:r,quote_id:e,rfq_id:t,type:"RFQ_CONFIRMATION_RESPONSE"}}var D=class{#e=new Map;#r;constructor(e){this.#r=e;}waitFor(e,r){let s=Ki(),n,i=setNonBlockingTimeout(()=>{this.remove(e,n),s.reject(new h(r));},this.#r);n=s.promise.finally(()=>clearTimeout(i));let o=this.#e.get(e)??[];return o.push({...s,promise:n}),this.#e.set(e,o),n}resolve(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.resolve(r));}reject(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.reject(r));}remove(e,r){let s=this.#e.get(e);if(s===void 0)return;let n=s.filter(i=>i.promise!==r);n.length===0?this.#e.delete(e):this.#e.set(e,n);}rejectAll(e){for(let r of this.#e.values())for(let s of r)s.reject(e);this.#e.clear();}};function Ki(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var is="0x0000000000000000000000000000000000000000000000000000000000000000";async function as(t){let e=J(t.account),r={builder:is,maker:e.maker,makerAmount:toBaseUnits(Vi(t.orderSide,t.orderPrice,t.size)),metadata:is,salt:$i().toString(),side:zi(t.orderSide),signatureType:e.signatureType,signer:e.signer,takerAmount:toBaseUnits(ji(t.orderSide,t.orderPrice,t.size)),timestamp:Math.floor(Date.now()/1e3).toString(),tokenId:t.tokenId},s;try{s=await t.signer.signTypedData(ed({domain:os(t),order:r}));}catch(n){throw l.fromError(n,"Could not sign the RFQ quote order.")}return {...r,signature:fd({domain:os(t),order:r,signature:s})}}function os(t){return {chainId:t.chainId,exchange:t.exchange,protocolVersion:"3"}}function Vi(t,e,r){return t===OrderSide.SELL?r.toString():((e*r+999999n)/1000000n).toString()}function ji(t,e,r){return t===OrderSide.SELL?(e*r/1000000n).toString():r.toString()}function zi(t){return t===OrderSide.BUY?0:1}function $i(){let t=new Uint8Array(8);return globalThis.crypto.getRandomValues(t),BigInt(`0x${Array.from(t,e=>e.toString(16).padStart(2,"0")).join("")}`)}var ds=DecimalishSchema.transform(t=>ms(t)).refine(t=>t<=BigInt(Number.MAX_SAFE_INTEGER),{message:"Value exceeds the temporary numeric wire limit."}),Gi=z.strictObject({price:ds.refine(t=>t<1000000n,{message:"Price must be less than 1."}),size:ds.optional(),source:z.enum(["collateral","inventory"]).default("collateral")});function ps(t){return G(t,Gi)}async function ls(t){let e=t.response.price,r=t.response.size===void 0?eo(t.request.requestedSize,e):t.response.size,s=await as({account:t.account,chainId:t.chainId,exchange:t.exchange,orderPrice:Zi(t.request,t.response.source,e),orderSide:Xi(t.response.source),signer:t.signer,size:r,tokenId:Ji(t.request,t.response.source)});return {price:e,signedOrder:s,size:r}}function Ji(t,e){return t.direction===RfqDirection.Buy?e==="collateral"?t.noPositionId:t.yesPositionId:e==="collateral"?t.yesPositionId:t.noPositionId}function Zi(t,e,r){return t.direction===RfqDirection.Buy&&e==="collateral"||t.direction===RfqDirection.Sell&&e==="inventory"?1000000n-r:r}function Xi(t){return t==="collateral"?OrderSide.BUY:OrderSide.SELL}function eo(t,e){let r=ms(t.value);return t.unit===RfqRequestedSizeUnit.Shares?r:r*1000000n/e}function ms(t){let e=/^(\d+)(?:\.(\d*))?$/.exec(t);if(e===null)throw new a("Value must be a valid decimal.");let[,r="",s=""]=e;if(s.length>6)throw new a("Value must have at most 6 decimal places.");let n=BigInt(r)*1000000n+BigInt(s.padEnd(6,"0"));if(n<=0n)throw new a("Value must be greater than 0.");return n}var no=3e4,io=3e4,g=class{#e;#r;#s;#o;#i;#t;#n;#a;#d;#u;#c=false;constructor(e){this.#e=e.account,this.#r=e.chainId,this.#s=e.credentials,this.#o=e.exchange,this.#i=e.headers,this.#t=e.signer,this.#n=e.url;}async connect(){if(this.#c)throw new c("RFQ quoter manager has been shut down.");if(this.#a!==void 0){if(!this.#a.closed)return this.#a;this.#a=void 0;}if(this.#u!==void 0)return this.#u;let e=new Pe({account:this.#e,chainId:this.#r,credentials:this.#s,exchange:this.#o,headers:this.#i,onClose:()=>this.#p(e),signer:this.#t,url:this.#n});this.#d=e;let r;return r=(async()=>{try{if(await e.connect(),this.#c)throw await e.close(),new c("RFQ quoter manager has been shut down.");return this.#a=e,e}catch(s){throw await e.close(),s}finally{this.#u===r&&(this.#u=void 0),this.#d===e&&(this.#d=void 0);}})(),this.#u=r,r}async shutdown(){this.#c=true;let e=this.#a,r=this.#d,s=this.#u;this.#a=void 0,this.#d=void 0,this.#u=void 0,await Promise.allSettled([e?.close(),r?.close(),s?.catch(()=>{})]).then(()=>{});}#p(e){this.#a===e&&(this.#a=void 0),this.#d===e&&(this.#d=void 0);}},Pe=class{#e;#r;#s;#o;#i;#t;#n;#a;#d=new Fd;#u=pushable({objectMode:true});#c=new D(io);#p;#l;constructor(e){this.#e=e.account,this.#r=e.chainId,this.#s=e.credentials,this.#o=e.exchange,this.#i=e.headers,this.#t=e.onClose,this.#n=e.signer,this.#a=e.url;}get closed(){return this.#p!==void 0}async connect(){let e=oo();this.#l=e;let r=setNonBlockingTimeout(()=>{e.reject(new c("RFQ quoter authentication timed out."));},no);try{await this.#d.connect({headers:this.#i,onConnectionLost:s=>this.#g(s),onError:()=>{},onMessage:s=>this.#R(s),onOpen:()=>this.#b(),url:this.#a}),await e.promise;}finally{clearTimeout(r),this.#l=void 0;}}async#h(e){if(!this.#d.send(e))throw new c("RFQ quoter websocket is not open.")}async close(){this.#p===void 0&&(this.#p=this.#f()),await this.#p;}[Symbol.asyncIterator](){return this.#u[Symbol.asyncIterator]()}async#f(){let e=new c("RFQ quoter websocket closed.");this.#S(e),this.#u.end(),await this.#d.close(),this.#t();}async#m(e){this.#p===void 0&&(this.#p=this.#y(e)),await this.#p;}async#y(e){this.#S(e),this.#u.end(e),await this.#d.close(),this.#t();}#S(e){this.#l?.reject(e),this.#c.rejectAll(e);}#b(){this.#d.send(es(this.#e,this.#s));}#R(e){if(this.#p!==void 0)return;let r=RfqQuoterInboundMessageSchema.safeParse(e);if(!r.success)return;let s=r.data;switch(s.type){case "auth":this.#P(s);return;case "quote_request":this.#u.push(Yr(this,s));return;case "quote_ack":this.#c.resolve(B(s.rfqId),Jr(s));return;case "quote_cancel_ack":this.#c.resolve(be(s.rfqId,s.quoteId),Zr(s));return;case "confirmation_request":this.#u.push(Gr(this,s));return;case "confirmation_ack":this.#c.resolve(Re(s.rfqId,s.quoteId),Xr(s));return;case "execution_update":this.#u.push(s);return;case "trade":this.#u.push(s);return;case "rfq_error":this.#q(s);return}}#P(e){if(e.success===true){this.#l?.resolve(void 0);return}this.#l?.reject(new c(`RFQ quoter authentication failed: ${e.error}`));}#g(e$1){this.#m(new e("RFQ quoter connection lost.",e$1));}#q(e){if(e.requestType==="RFQ_QUOTE"){if(e.rfqId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(B(e.rfqId),new cf(e.message,{code:e.code,errorId:e.errorId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_QUOTE_CANCEL"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(be(e.rfqId,e.quoteId),new ef(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_CONFIRMATION_RESPONSE"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(Re(e.rfqId,e.quoteId),new gf(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));}}async quote(e,r){let s=ps(r),n=await ls({account:this.#e,chainId:this.#r,exchange:this.#o,request:e,response:s,signer:this.#n}),i=this.#c.waitFor(B(e.rfqId),`Timed out waiting for RFQ quote acknowledgement for ${e.rfqId}.`);try{return await this.#h(ts(e,n)),await i}catch(o){throw this.#c.remove(B(e.rfqId),i),o}}async cancelQuote(e){let r=be(e.rfqId,e.quoteId),s=this.#c.waitFor(r,`Timed out waiting for RFQ quote cancellation acknowledgement for ${e.rfqId}.`);try{return await this.#h(rs(this.#e,e.rfqId,e.quoteId)),await s}catch(n){throw this.#c.remove(r,s),n}}async respondToConfirmation(e,r,s){let n=Re(e,r),i=this.#c.waitFor(n,`Timed out waiting for RFQ confirmation acknowledgement for ${e}.`);try{return await this.#h(ss(e,r,s)),await i}catch(o){throw this.#c.remove(n,i),o}}};function B(t){return `ACK_RFQ_QUOTE:${t}`}function be(t,e){return `ACK_RFQ_QUOTE_CANCEL:${t}:${e}`}function Re(t,e){return `ACK_RFQ_CONFIRMATION_RESPONSE:${t}:${e}`}function oo(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var q=class{#e;#r;#s;#o=new Fd({heartbeat:new Bd});#i=new Ed;#t=new p({deriveServerState:po});constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:yo(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){try{if((await this.#u()).reusedOpenSocket){let{before:n,after:i}=r,o=co(n,i);this.#m(o);}}catch(s){throw await this.#a(e),s}}async#a(e){let{before:r,after:s}=this.#t.remove(e),n=uo(r,s);this.#y(n),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff(),this.#f();}#p(e){let r=RealtimeEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#S();}#h(){}#f(){this.#m(Array.from(this.#t.serverState().values()));}#m(e){e.length!==0&&this.#o.send(lo(e));}#y(e){e.length!==0&&this.#o.send(mo(e));}#S(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};function co(t,e){return Array.from(e).flatMap(([r,s])=>t.has(r)?[]:[s])}function uo(t,e){return Array.from(t).flatMap(([r,s])=>e.has(r)?[]:[s])}function po(t){let e=new Map;for(let{subscription:r}of t)for(let s of ho(r))e.has(s.key)||e.set(s.key,s);return e}function lo(t){return {action:"subscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function mo(t){return {action:"unsubscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function ho(t){switch(t.topic){case "comments":return (t.types??["comment_created"]).map(e=>T("comments",e));case "prices.crypto.binance":return [T("crypto_prices","update")];case "prices.crypto.chainlink":return [T("crypto_prices_chainlink","update")];case "prices.crypto.chainlink.twap":return [T(fo(t.windowSeconds),"update")];case "prices.equity.pyth":return [T("equity_prices","update")];default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}function fo(t){switch(t){case 30:return "crypto_prices_twap_thirty";case 60:return "crypto_prices_twap_sixty";default:invariant(false,`Unknown TWAP window: ${String(t)}`);}}function T(t,e){return {key:`${t}:${e}`,topic:t,type:e}}function yo(t){switch(t.topic){case "comments":return e=>!(e.topic!=="comments"||t.types!==void 0&&t.types.length>0&&!t.types.includes(e.type)||(t.parentEntityId!==void 0||t.parentEntityType!==void 0)&&(!(e.type==="comment_created"||e.type==="comment_removed")||t.parentEntityId!==void 0&&e.payload.parentEntityID!==t.parentEntityId||t.parentEntityType!==void 0&&e.payload.parentEntityType!==t.parentEntityType));case "prices.crypto.binance":return e=>e.topic==="prices.crypto.binance"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink":return e=>e.topic==="prices.crypto.chainlink"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink.twap":return e=>e.topic==="prices.crypto.chainlink.twap"&&e.payload.windowSeconds===t.windowSeconds&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.equity.pyth":return e=>e.topic==="prices.equity.pyth"&&e.payload.symbol.toLowerCase()===t.symbol.toLowerCase()&&(t.types===void 0||t.types.length===0||t.types.includes(e.type));default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}var v=class{#e;#r;#s;#o=new Fd({heartbeat:new Cd});#i=new Ed;#t=new p;constructor(e){this.#e=e.headers,this.#r=e.url;}async subscribe(e){let{entry:r}=this.#t.add(e);return await this.#n(r),m(r.subscriber.queue,()=>this.#a(r))}async#n(e){try{await this.#u();}catch(r){throw await this.#a(e),r}}async#a(e){this.#t.remove(e),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#s===void 0&&(this.#s=this.#d().finally(()=>{this.#s=void 0;})),await this.#s;}async#d(){this.#i.stop(),this.#t.endAll(),await this.#o.close();}#u(){return this.#o.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#r})}#c(){this.#i.resetBackoff();}#p(e){let r=SportsResultEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#f();}#h(){}#f(){this.#i.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var W=class{#e;#r;get context(){return this.#e}get decorators(){return this.#r}get environment(){return this.context.environment}get clob(){return this.context.clob}get relayer(){return this.context.relayer}get rpc(){return this.context.rpc}get gamma(){return this.context.gamma}get data(){return this.context.data}get rfq(){return this.context.rfq}get perps(){return this.context.perps}get webSockets(){return this.context.webSockets}get supportsGasless(){return this.context.apiKey?.supportGasless??false}constructor(e){this.#e=e,this.#r=[];}async resolveClobHeaders(e){return this.context.apiKey?.isBuilderKey?this.context.apiKey.authorize(e):Promise.resolve({})}async resolveRelayerHeaders(e){return this.context.apiKey?.supportGasless?this.context.apiKey.authorize(e):Promise.resolve({})}rememberDecorator(e){this.#r.push(e);}},vo=z.object({key:ApiKeySchema,passphrase:z.string(),secret:z.string()}),Ao=z.object({wallet:EvmAddressSchema,credentials:vo.optional(),nonce:z.number().int().nonnegative().optional()}).superRefine((t,e)=>{t.credentials!==void 0&&t.nonce!==void 0&&e.addIssue({code:"custom",message:"`credentials` and `nonce` are mutually exclusive.",path:["nonce"]});}).transform(t=>t.credentials!==void 0?{wallet:t.wallet,credentials:t.credentials}:t.nonce!==void 0?{wallet:t.wallet,nonce:t.nonce}:{wallet:t.wallet}),U=class extends W{constructor(e){super({apiKey:e.apiKey,environment:e.environment,data:new zd({headers:e.environment.data.headers,root:e.environment.data.rest}),gamma:new zd({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),clob:new zd({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new zd({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rfq:new zd({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new zd({headers:e.environment.perps.headers,root:e.environment.perps.rest}),rpc:new H({url:e.environment.rpc}),webSockets:{clobMarket:new S({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new q({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new b({headers:e.environment.perps.headers,url:e.environment.perps.ws})}});}isSecureClient(){return false}isPublicClient(){return true}async closeSubscriptions(){await Promise.all([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close()]).then(()=>{});}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}beginAuthentication(e,r){let s=G(e,Ao);return Promise.resolve(async function*(){let n=Math.floor(Date.now()/1e3),i=s?.nonce??0,o=expectEvmAddress(yield wa()),A=expectEvmAddress(s.wallet),Ce=I(this.environment,o,A);if(s.credentials!==void 0){let Ee=this.#e(s.credentials,Ce,r);try{if((await gb(Ee)).includes(s.credentials.key))return Ee}catch(x){if(!(x instanceof f$1)||x.status!==401)throw x}}let fs=yield {kind:"signAuthMessage",payload:Tr({address:o,chainId:this.environment.chainId,nonce:i,timestamp:n})},ys=await eb(this,{address:o,nonce:i,signature:expectEvmSignature(fs),timestamp:n});return this.#e(ys,Ce,r)}.call(this))}#e(e,r,s){let n=new Ae({account:r,apiKey:this.context.apiKey,credentials:e,environment:this.environment,signer:s});for(let i of this.decorators)n.extend(i);return n}},Ae=class extends W{#e=false;get context(){return invariant(!this.#e,"This client has ended authentication and can no longer be used."),super.context}endAuthenticationLifecycle(){this.#e=true;}constructor(e){super({account:e.account,credentials:e.credentials,apiKey:e.apiKey,environment:e.environment,signer:e.signer,clob:new zd({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new zd({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rpc:new H({url:e.environment.rpc}),gamma:new zd({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),data:new zd({headers:e.environment.data.headers,root:e.environment.data.rest}),rfq:new zd({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new zd({headers:e.environment.perps.headers,root:e.environment.perps.rest}),secureClob:new zd({headers:e.environment.clob.headers,resolveHeaders:async r=>({...await this.resolveClobHeaders(r),...await this.#r(r)}),root:e.environment.clob.rest}),combos:new zd({headers:e.environment.combos.collateralReturn.headers,resolveHeaders:r=>this.resolveRelayerHeaders(r),root:e.environment.combos.collateralReturn.rest}),webSockets:{clobMarket:new S({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),clobUser:new R({credentials:e.credentials,headers:e.environment.clob.user.headers,url:e.environment.clob.user.ws}),rfqQuoter:new g({account:e.account,chainId:e.environment.chainId,credentials:e.credentials,exchange:e.environment.contracts.exchangeV3,headers:e.environment.combos.headers,signer:e.signer,url:e.environment.combos.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new q({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new b({headers:e.environment.perps.headers,url:e.environment.perps.ws}),perpsSession:new P({chainId:e.environment.chainId,headers:e.environment.perps.headers,restUrl:e.environment.perps.rest,wsUrl:e.environment.perps.ws})}});}get credentials(){return this.context.credentials}get account(){return this.context.account}get signer(){return this.context.signer}get secureClob(){return this.context.secureClob}get combos(){return this.context.combos}get webSockets(){return this.context.webSockets}async closeSubscriptions(){await Promise.allSettled([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close(),this.webSockets.clobUser.close()]).then(()=>{});}isSecureClient(){return true}isPublicClient(){return false}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}async endAuthentication(){let e=this.closeSubscriptions(),r=this.webSockets.perpsSession.shutdown(),s=this.webSockets.rfqQuoter.shutdown(),{apiKey:n,environment:i}=this.context;try{await ib(this);}finally{this.endAuthenticationLifecycle(),await Promise.allSettled([e,r,s]).then(()=>{});}let o=new U({apiKey:n,environment:i});for(let A of this.decorators)o.extend(A);return o}async#r(e){try{let r=Math.floor(Date.now()/1e3);return {POLY_ADDRESS:this.account.signer,POLY_API_KEY:this.credentials.key,POLY_PASSPHRASE:this.credentials.passphrase,POLY_SIGNATURE:await Fr(this.credentials.secret,r,e.method,e.path,e.body),POLY_TIMESTAMP:`${r}`}}catch(r){throw l.fromError(r,"Could not sign the L2-authenticated request")}}};function hs(t={}){return new U({environment:t.environment??le,apiKey:t.apiKey}).extend(Ir)}var Co=m$1(j,g$1,f$1,l,h,i,c,b$1,a),Eo=m$1(a);async function ko(t){let e=hs({environment:t.environment,apiKey:t.apiKey}),r=await To(e,t),s=await e.beginAuthentication({wallet:r,credentials:t.credentials,nonce:t.nonce},t.signer).then(va(t.signer));if(s.account.walletType===WalletType.EOA||await Aa(s,{wallet:s.account.wallet,type:s.account.walletType}))return s;if(s.account.walletType===WalletType.DEPOSIT_WALLET)return await wo(s),s;throw new a(`Wallet ${s.account.wallet} does not exist. Provide an existing wallet address, or omit wallet to use the default Deposit Wallet flow.`)}async function To(t,e){if(e.wallet!==void 0)return e.wallet;let r=expectEvmAddress(await e.signer.getAddress()),s=K(r,t.environment.walletDerivation);return await Aa(t,{wallet:s,type:WalletType.DEPOSIT_WALLET})?s:L$1(r,t.environment.walletDerivation)}async function wo(t){let e=L$1(t.account.signer,t.environment.walletDerivation);if(!isSameEvmAddress(t.account.wallet,e))throw new a(`Wallet ${t.account.wallet} does not match the expected Deposit Wallet ${e} for this signer, nor a deployed wallet address.`);await(await Da(t)).wait();}
|
|
2
|
-
export{
|
|
1
|
+
import {N,X,V,T as T$1,ra,pa,ze,xe,ve,te,re,pe as pe$1,zc,xc,vc,qb,na,Lc,Nc,Zc,Wb,Ub,Sb,Qb,Ob,Mb,Kb,Ib,Gb,ub,sb,tc,lc,jc,hc,hf,dg,Tf,Rf,Lf,bg,$f,Zf,Xf,Bc,Pf,Nf,Jc,Hc,Fc,Dc,rc,pc,nc,me as me$1,je,ie as ie$1,le as le$1,la,ja,ha,fa,da,ba,wf,uf,sf,pf,Vf,R as R$1,P as P$1,Xc,Vc,Tc,Rc,vd,dd,cd,Dd,Bd,zd,xd,ec,ac,ff,af,Te,hg,Wa,Sa,_a,va,Aa,K,L as L$1,Da,ae as ae$1,_d,Yd,Ud,Sd,Qd,ce as ce$1,Wd,Pc,_b,Yb,H,Ed,G,wa,I,gb,eb,Kd,Id,Jd,Gd,Hd,Fd,ib,Od,if as _if,kf,mf,J,gd,id,kd,jd,hd,ed,fd}from'./chunk-DB2YMGIT.js';export{tf as AcceptComboQuoteError,Va as ApproveErc1155ForAllError,Ra as ApproveErc20Error,Ld as ArmPerpsAutoCancelError,Uc as CancelAllError,Wc as CancelMarketOrdersError,Qc as CancelOrderError,Sc as CancelOrdersError,fc as CollateralReturnKnownOperationKind,C as CombinatorialPrepareConditionCallError,zf as ComboAcceptFailureReason,sa as ComboActivityType,Ae as ComboPositionOutcome,ne as ComboPositionSort,Be as ComboPositionStatus,Af as ComboQuoteUnavailableReason,Ad as CreateLimitOrderError,wd as CreateMarketOrderError,q as CtfRedeemPositionsCallError,ge as DepositToPerpsError,ye as DownloadAccountingSnapshotError,W as DropNotificationsError,b as Erc20ApprovalCallError,m as Erc20TransferCallError,Yc as EstimateMarketPriceError,dc as ExecuteCollateralReturnPlanError,M as FetchClosedOnlyModeError,ic as FetchCommentsByIdError,oc as FetchEventError,sc as FetchEventLiveVolumeError,qc as FetchEventTagsError,Rb as FetchLastTradePriceError,Tb as FetchLastTradePricesError,Gc as FetchMarketError,Ic as FetchMarketTagsError,rb as FetchMidpointError,tb as FetchMidpointsError,U as FetchNotificationsError,Jb as FetchOrderBookError,Lb as FetchOrderBooksError,Q as FetchOrderError,aa as FetchOrderScoringError,ca as FetchOrdersScoringError,Vd as FetchPerpsBookError,be as FetchPerpsFeesError,Pd as FetchPerpsInstrumentsError,Rd as FetchPerpsTickerError,Td as FetchPerpsTickersError,ue as FetchPortfolioValueError,Fb as FetchPriceError,Vb as FetchPriceHistoryError,Hb as FetchPricesError,gf as FetchPublicProfileError,ag as FetchRelatedTagResourcesError,_f as FetchRelatedTagsError,ka as FetchRewardPercentagesError,xf as FetchRfqStatusError,Of as FetchSeriesError,Sf as FetchSportsMarketTypesError,Nb as FetchSpreadError,Pb as FetchSpreadsError,Yf as FetchTagError,ga as FetchTotalEarningsForUserForDayError,we as FetchTradedMarketCountError,S as ListAccountTradesError,oa as ListActivityError,uc as ListBuilderLeaderboardError,pb as ListBuilderTradesError,wc as ListBuilderVolumeError,qe as ListClosedPositionsError,qa as ListComboActivityError,Ec as ListComboMarketsError,se as ListComboPositionsError,kc as ListCommentsByUserAddressError,gc as ListCommentsError,Xb as ListCurrentRewardsError,mc as ListEventsError,Kc as ListMarketHoldersError,Oc as ListMarketPositionsError,Zb as ListMarketRewardsError,Cc as ListMarketsError,Mc as ListOpenInterestError,O as ListOpenOrdersError,Xd as ListPerpsCandlesError,Zd as ListPerpsFundingHistoryError,$d as ListPerpsTradesError,oe as ListPositionsError,Mf as ListSeriesError,Qf as ListSportsError,Wf as ListTagsError,cg as ListTeamsError,yc as ListTraderLeaderboardError,ma as ListTradesError,ia as ListUserEarningsAndMarketsConfigError,ea as ListUserEarningsForDayError,a as MAX_UINT256,t as MergePositionsCallError,Xe as MergePositionsError,y as MergeV2CallError,de as OpenPerpsSessionError,of as OpenRfqSessionError,o as PerpsDepositCallError,Cd as PlaceLimitOrderError,yd as PlaceMarketOrderError,$b as PlanCollateralReturnError,ad as PostOrderError,bd as PostOrdersError,ef as RedeemPositionsError,A as RedeemV2CallError,rf as RequestComboQuoteError,ee as RevokePerpsCredentialsError,lf as RfqCancelQuoteError,kf as RfqCancelQuoteRejectedError,Bf as RfqConfirmationDecision,nf as RfqConfirmationError,mf as RfqConfirmationRejectedError,Cf as RfqDirection,Df as RfqExecutionStatus,Ef as RfqKnownErrorCode,jf as RfqQuoteError,if as RfqQuoteRejectedError,Ff as RfqRejectionCode,qf as RfqRequestRejectedError,Gf as RfqRequestedSizeUnit,Hf as RfqSide,If as RfqStatus,Kf as SearchError,Jf as SearchSort,Za as SetupTradingApprovalsError,r as SplitPositionCallError,Oe as SplitPositionError,w as SplitV2CallError,Uf as SubscribeError,gg as TransferErc20Error,Md as UpdatePerpsLeverageError,Nd as UpdatePerpsMarginError,vf as WaitForComboFillError,ud as WaitForOrderFillSettlementError,ta as WaitForTransactionError,he as WithdrawFromPerpsError,D as combinatorialPrepareConditionCall,v as ctfRedeemPositionsCall,l as decodeErc1155BalanceOfBatchResult,j as decodeErc1155BalanceOfResult,h as decodeErc1155IsApprovedForAllResult,e as decodeErc20AllowanceResult,E as encodeProxyCall,F as encodeSafeMultisendCall,f as erc1155ApprovalForAllCall,k as erc1155BalanceOfBatchCall,i as erc1155BalanceOfCall,g as erc1155IsApprovedForAllCall,d as erc20AllowanceCall,c as erc20ApprovalCall,n as erc20TransferCall,ua as expectTransactionHandle,u as mergePositionsCall,z as mergeV2Call,p as perpsDepositCall,B as redeemV2Call,s as splitPositionCall,x as splitV2Call}from'./chunk-DB2YMGIT.js';import {a,n,j,g as g$1,f as f$1,m as m$1,h,i,c,b as b$1,e}from'./chunk-MCGT5BAF.js';export{l as AutoCancelDailyLimitError,j as CancelledSigningError,e as ConnectionLostError,k as InsufficientLiquidityError,g as RateLimitError,f as RequestRejectedError,m as SigningError,h as TimeoutError,i as TransactionFailedError,c as TransportError,b as UnexpectedResponseError,a as UserInputError,d as WebSocketKnownCloseCode,n as makeErrorGuard}from'./chunk-MCGT5BAF.js';import {DecimalishSchema,ApiKeySchema,EvmAddressSchema,toBaseUnits,OrderSide}from'@polymarket/bindings';export{OrderSide,OrderType}from'@polymarket/bindings';export{PriceHistoryInterval,SignatureType}from'@polymarket/bindings/clob';export{ActivityType}from'@polymarket/bindings/data';import {WalletType}from'@polymarket/bindings/gamma';export{WalletType}from'@polymarket/bindings/gamma';export{PerpsDepositStatus,PerpsInstrumentCategory,PerpsInstrumentType,PerpsInternalTransferDirection,PerpsKlineInterval,PerpsKnownWithdrawalStatus,PerpsMarginType,PerpsNotificationOrderType,PerpsNotificationType,PerpsOrderStatus,PerpsSide,PerpsSortDirection,PerpsTimeInForce}from'@polymarket/bindings/perps';import {z}from'zod';import {expectEvmAddress,isSameEvmAddress,expectEvmSignature,invariant,setNonBlockingTimeout}from'@polymarket/types';import {PerpsMarketDataEventSchema,RealtimeEventSchema,SportsResultEventSchema,MarketEventSchema,UserEventSchema}from'@polymarket/bindings/subscriptions';import {pushable}from'it-pushable';import {RfqQuoterInboundMessageSchema,RfqConfirmationDecision,RfqRequestedSizeUnit,RfqDirection}from'@polymarket/bindings/combos';var _o=z.object({POLY_BUILDER_API_KEY:z.string().min(1),POLY_BUILDER_TIMESTAMP:z.string().min(1),POLY_BUILDER_PASSPHRASE:z.string().min(1),POLY_BUILDER_SIGNATURE:z.string().min(1)});function Ko(t){return new se(t)}function Vo(t){return new ne(t)}var se=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return true}get supportGasless(){return true}async authorize(e){try{return await this.#r(e)}catch(r){throw m$1.fromError(r,"Could not authorize the builder-authenticated request")}}async#s(){let e=this.#e.headers,r=typeof e=="function"?await e():e,s=new Headers(r);return s.set("content-type","application/json"),s}async#r(e){let r=await fetch(this.#e.url,{body:JSON.stringify({body:e.body,method:e.method,path:e.path}),credentials:this.#e.credentials,headers:await this.#s(),method:"POST",mode:"cors"});if(!r.ok)throw new Error(`Remote signer rejected request with status ${r.status}`);return _o.parse(await r.json())}},ne=class{#e;constructor(e){this.#e=e;}get isBuilderKey(){return false}get supportGasless(){return true}authorize(){return Promise.resolve({RELAYER_API_KEY:this.#e.key,RELAYER_API_KEY_ADDRESS:this.#e.address})}};function Lr(t){return {domain:{chainId:t.chainId,name:"ClobAuthDomain",version:"1"},message:{address:t.address,message:"This message attests that I control the given wallet",nonce:t.nonce??0,timestamp:`${t.timestamp}`},primaryType:"ClobAuth",types:{ClobAuth:[{name:"address",type:"address"},{name:"timestamp",type:"string"},{name:"nonce",type:"uint256"},{name:"message",type:"string"}]}}}function jo(t){return {listPositions:pe$1.bind(null,t),listClosedPositions:re.bind(null,t),listComboPositions:te.bind(null,t),fetchPortfolioValue:ve.bind(null,t),fetchTradedMarketCount:xe.bind(null,t),downloadAccountingSnapshot:ze.bind(null,t),listMarketPositions:Pc.bind(null,t),listActivity:pa.bind(null,t),listComboActivity:ra.bind(null,t)}}function f(t,e={}){return {...e,user:e.user??t.account.wallet}}function oe(t){let e=jo(t);return t.isPublicClient()?e:{...e,listPositions:r=>pe$1(t,f(t,r)),listClosedPositions:r=>re(t,f(t,r)),listComboPositions:r=>te(t,f(t,r)),fetchPortfolioValue:r=>ve(t,f(t,r)),fetchTradedMarketCount:r=>xe(t,f(t,r)),downloadAccountingSnapshot:r=>ze(t,f(t,r)),listActivity:r=>pa(t,f(t,r)),listComboActivity:r=>ra(t,f(t,r)),listAccountTrades:T$1.bind(null,t),fetchNotifications:V.bind(null,t),dropNotifications:X.bind(null,t),fetchClosedOnlyMode:N.bind(null,t)}}function ie(t){return {listBuilderTrades:qb.bind(null,t),listBuilderLeaderboard:vc.bind(null,t),fetchBuilderVolume:xc.bind(null,t),listTraderLeaderboard:zc.bind(null,t)}}function ae(t){return {fetchEventLiveVolume:tc.bind(null,t),fetchMidpoint:sb.bind(null,t),fetchMidpoints:ub.bind(null,t),fetchPrice:Gb.bind(null,t),fetchPrices:Ib.bind(null,t),fetchOrderBook:Kb.bind(null,t),fetchOrderBooks:Mb.bind(null,t),fetchSpread:Ob.bind(null,t),fetchSpreads:Qb.bind(null,t),fetchLastTradePrice:Sb.bind(null,t),fetchLastTradePrices:Ub.bind(null,t),fetchPriceHistory:Wb.bind(null,t),estimateMarketPrice:Zc.bind(null,t),listOpenInterest:Nc.bind(null,t),listMarketHolders:Lc.bind(null,t),listTrades:na.bind(null,t)}}function ce(t){return {listEvents:nc.bind(null,t),fetchEvent:pc.bind(null,t),fetchEventTags:rc.bind(null,t),listMarkets:Dc.bind(null,t),listComboMarkets:Fc.bind(null,t),fetchMarket:Hc.bind(null,t),fetchMarketTags:Jc.bind(null,t),listSeries:Nf.bind(null,t),fetchSeries:Pf.bind(null,t),listMarketClarifications:Bc.bind(null,t),listTags:Xf.bind(null,t),fetchTag:Zf.bind(null,t),fetchRelatedTags:$f.bind(null,t),fetchRelatedTagResources:bg.bind(null,t),search:Lf.bind(null,t),listSports:Rf.bind(null,t),fetchSportsMarketTypes:Tf.bind(null,t),listTeams:dg.bind(null,t),fetchPublicProfile:hf.bind(null,t),listComments:hc.bind(null,t),fetchCommentsById:jc.bind(null,t),listCommentsByUserAddress:lc.bind(null,t)}}function ue(t){let e={fetchPerpsBook:r=>Wd(t,r),fetchPerpsFees:()=>ce$1(t),fetchPerpsInstruments:r=>Qd(t,r),fetchPerpsTicker:r=>Sd(t,r),fetchPerpsTickers:r=>Ud(t,r),listPerpsCandles:r=>Yd(t,r),listPerpsFundingHistory:r=>_d(t,r),listPerpsTrades:r=>ae$1(t,r)};return t.isSecureClient()?{...e,depositToPerps:r=>le$1(t,r),openPerpsSession:r=>ie$1(t,r),revokePerpsCredentials:r=>je(t,r),withdrawFromPerps:r=>me$1(t,r)}:e}function zo(t){return {listCurrentRewards:Yb.bind(null,t),listMarketRewards:_b.bind(null,t)}}function de(t){let e=zo(t);return t.isPublicClient()?e:{...e,fetchOrderScoring:ba.bind(null,t),fetchOrdersScoring:da.bind(null,t),listUserEarningsForDay:fa.bind(null,t),fetchTotalEarningsForUserForDay:ha.bind(null,t),listUserEarningsAndMarketsConfig:ja.bind(null,t),fetchRewardPercentages:la.bind(null,t)}}function Dr(t){return {openRfqSession(){return pf(t)},requestComboQuote(e){return sf(t,e)},acceptComboQuote(e){return uf(t,e)},waitForComboFill(e){return wf(t,e)}}}function pe(t){return t.isSecureClient()?{subscribe(e){return Vf(t,e)}}:{subscribe(e){return Vf(t,e)}}}function Br(t){return {createMarketOrder:xd.bind(null,t),placeMarketOrder:zd.bind(null,t),createLimitOrder:Bd.bind(null,t),placeLimitOrder:Dd.bind(null,t),postOrder:cd(t),postOrders:dd(t),waitForOrderFillSettlement:vd.bind(null,t),cancelOrder:Rc.bind(null,t),cancelOrders:Tc.bind(null,t),cancelAll:Vc.bind(null,t),cancelMarketOrders:Xc.bind(null,t),listOpenOrders:P$1.bind(null,t),fetchOrder:R$1.bind(null,t)}}function Wr(t){return {setupTradingApprovals:_a.bind(null,t),approveErc20:Sa.bind(null,t),approveErc1155ForAll:Wa.bind(null,t),transferErc20:hg.bind(null,t),splitPosition:Te.bind(null,t),mergePositions:af.bind(null,t),redeemPositions:ff.bind(null,t),planCollateralReturn:ac.bind(null,t),executeCollateralReturnPlan:ec.bind(null,t)}}function Qr(t){return t.isSecureClient()?{...oe(t),...ie(t),...ae(t),...ce(t),...ue(t),...de(t),...Dr(t),...pe(t),...Br(t),...Wr(t)}:{...oe(t),...ie(t),...ae(t),...ce(t),...ue(t),...de(t),...pe(t)}}var le={name:"production",chainId:137,rpc:"https://polygon.drpc.org",walletDerivation:{depositWalletFactory:expectEvmAddress("0x00000000000Fb5C9ADea0298D729A0CB3823Cc07"),depositWalletBeacon:expectEvmAddress("0x7A18EDfe055488A3128f01F563e5B479D92ffc3a"),depositWalletImplementation:expectEvmAddress("0x58CA52ebe0DadfdF531Cde7062e76746de4Db1eB"),proxyFactory:expectEvmAddress("0xaB45c5A4B0c941a2F231C04C3f49182e1A254052"),proxyImplementation:expectEvmAddress("0x44e999d5c2F66Ef0861317f9A4805AC2e90aEB4f"),safeFactory:expectEvmAddress("0xaacFeEa03eb1561C4e67d661e40682Bd20E3541b"),safeInitCodeHash:"0x2bce2127ff07fb632d16c8347c4ebf501f4841168bed00d9e6ef715ddb6fcecf"},contracts:{collateralToken:expectEvmAddress("0xC011a7E12a19f7B1f670d46F03B03f3342E82DFB"),conditionalTokens:expectEvmAddress("0x4D97DCd97eC945f40cF65F87097ACe5EA0476045"),negRiskAdapter:expectEvmAddress("0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296"),collateralAdapter:expectEvmAddress("0xAdA100Db00Ca00073811820692005400218FcE1f"),negRiskCollateralAdapter:expectEvmAddress("0xadA2005600Dec949baf300f4C6120000bDB6eAab"),standardExchange:expectEvmAddress("0xE111180000d2663C0091e4f400237545B87B996B"),negRiskExchange:expectEvmAddress("0xe2222d279d744050d28e00520010520000310F59"),exchangeV3:expectEvmAddress("0xe3333700cA9d93003F00f0F71f8515005F6c00Aa"),protocolV2Router:expectEvmAddress("0x12121212006e4CD160D18e3f00711DA5c3372600"),combinatorialModule:expectEvmAddress("0x30000034706c7d8e12009dab006be20000c031a8"),positionManager:expectEvmAddress("0x006F54F7f9A22e0000CC2AB60031000000ae9fEF"),autoRedeemOperator:expectEvmAddress("0xa1200000d0002264C9a1698e001292D00E1b00af"),safeMultisend:expectEvmAddress("0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761"),relayHub:expectEvmAddress("0xD216153c06E857cD7f72665E0aF1d7D82172F494"),perpsDepositContract:expectEvmAddress("0xDCa4af75705dbB50f62437045afF9921947917d2")},clob:{rest:"https://clob.polymarket.com",market:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/market"},user:{ws:"wss://ws-subscriptions-clob.polymarket.com/ws/user"}},relayer:{rest:"https://relayer-v2.polymarket.com"},gamma:{rest:"https://gamma-api.polymarket.com"},data:{rest:"https://data-api.polymarket.com"},combos:{rest:"https://combos-rfq-api.polymarket.com",ws:"wss://combos-rfq-gateway-quoter.polymarket.com/ws/rfq",builderGateway:{rest:"https://combos-rfq-gateway-builder.polymarket.com"},collateralReturn:{rest:"https://combos-rfq-collateral-return.polymarket.com"}},perps:{rest:"https://api.perpetuals.polymarket.com",ws:"wss://ws.perpetuals.polymarket.com/v1/ws"},rtds:{ws:"wss://ws-live-data.polymarket.com"},sports:{ws:"wss://sports-api.polymarket.com/ws"},relayerMaxPolls:100,relayerPollFrequencyMs:2e3};function $o(t,e=le){return {...e,...t,walletDerivation:{...e.walletDerivation,...t.walletDerivation},contracts:{...e.contracts,...t.contracts},clob:{...R(e.clob,t.clob),market:O(e.clob.market,t.clob?.market),user:O(e.clob.user,t.clob?.user)},relayer:R(e.relayer,t.relayer),gamma:R(e.gamma,t.gamma),data:R(e.data,t.data),combos:{...Ur(e.combos,t.combos),builderGateway:R(e.combos.builderGateway,t.combos?.builderGateway),collateralReturn:R(e.combos.collateralReturn,t.combos?.collateralReturn)},perps:Ur(e.perps,t.perps),rtds:O(e.rtds,t.rtds),sports:O(e.sports,t.sports)}}function R(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function O(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function Ur(t,e){return {...t,...e,headers:me(t.headers,e?.headers)}}function me(t,e){if(!(t===void 0&&e===void 0))return {...t,...e}}var wc=$o({name:"preproduction",clob:{rest:"https://clob-preprod-int-v2.polymarket.com"},data:{rest:"https://data-api-preprod-int.polymarket.com"},gamma:{rest:"https://gamma-api-preprod-int.polymarket.com"},relayer:{rest:"https://relayer-v2-preprod-int.polymarket.com"}});async function Hr(t,e,r,s,n){let o=`${e}${r}${s}`;n!==void 0&&(o+=n);let i=await globalThis.crypto.subtle.importKey("raw",No(t),{name:"HMAC",hash:"SHA-256"},false,["sign"]),A=await globalThis.crypto.subtle.sign("HMAC",i,new TextEncoder().encode(o));return Yo(Go(A))}function No(t){let e=t.replace(/-/g,"+").replace(/_/g,"/").replace(/[^A-Za-z0-9+/=]/g,""),r=atob(e),s=new Uint8Array(r.length);for(let n=0;n<r.length;n+=1)s[n]=r.charCodeAt(n);return s.buffer}function Go(t){let e=new Uint8Array(t),r="";for(let s of e)r+=String.fromCharCode(s);return btoa(r)}function Yo(t){return t.replace(/\+/g,"-").replace(/\//g,"_")}function m(t,e){let r;return {close:()=>(r===void 0&&(r=Promise.resolve(t.return()).then(()=>e())),r),[Symbol.asyncIterator](){return t[Symbol.asyncIterator]()}}}var p=class{#e=new Set;#s;constructor(e){this.#s=e?.deriveServerState??(()=>{});}add(e,r={}){let s={queue:pushable({objectMode:true})};r.matches!==void 0&&(s.matches=r.matches);let n={subscription:e,subscriber:s};return {change:this.#r(n),entry:n}}#r(e){let r=this.serverState();return this.#e.add(e),{before:r,after:this.serverState()}}remove(e){let r=this.serverState();return this.#e.delete(e),e.subscriber.queue.end(),{before:r,after:this.serverState()}}dispatch(e){for(let{subscriber:r}of this.#e)(r.matches===void 0||r.matches(e))&&r.queue.push(e);}hasActiveSubscriptions(){return this.#e.size>0}endAll(e){for(let{subscriber:r}of this.#e)r.queue.end(e);this.#e.clear();}serverState(){return this.#s(this.#e)}};function he(t,e,r){let s=L(r.assetsIds,e.assetsIds),n=L(e.assetsIds,r.assetsIds);s.length>0&&t(_r(s,r.customFeatureEnabled));let o=r.assetsIds[0];s.length===0&&e.customFeatureEnabled!==r.customFeatureEnabled&&o!==void 0&&t(_r([o],r.customFeatureEnabled)),n.length>0&&t(Zo(n));}function fe(t,e,r){if(r.includeAllMarkets){!e.includeAllMarkets&&e.markets.length>0&&t(Vr(e.markets));return}if(e.includeAllMarkets){r.markets.length>0&&t(Kr(r.markets));return}let s=L(r.markets,e.markets),n=L(e.markets,r.markets);s.length>0&&t(Kr(s)),n.length>0&&t(Vr(n));}function jr(t){let e=new Set,r=false;for(let{subscription:s}of t){for(let n of s.tokenIds)e.add(n);r||=s.customFeatureEnabled===true;}return {assetsIds:Array.from(e),customFeatureEnabled:r}}function zr(t){let e=false,r=new Set;for(let{subscription:s}of t){if(Jr(s)){e=true;continue}for(let n of s.markets??[])r.add(n);}return {includeAllMarkets:e,markets:e?[]:Array.from(r)}}function $r(t){return {assets_ids:t.assetsIds,custom_feature_enabled:t.customFeatureEnabled,type:"market"}}function _r(t,e){return {assets_ids:t,custom_feature_enabled:e,operation:"subscribe"}}function Zo(t){return {assets_ids:t,operation:"unsubscribe"}}function Nr(t,e){let r={auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},type:"user"};return t.includeAllMarkets||(r.markets=t.markets),r}function Kr(t){return {markets:t,operation:"subscribe"}}function Vr(t){return {markets:t,operation:"unsubscribe"}}function Gr(t){return e=>{switch(e.type){case "price_change":return e.payload.priceChanges.some(r=>t.tokenIds.includes(r.tokenId));case "new_market":return t.customFeatureEnabled===true;case "market_resolved":return t.customFeatureEnabled===true&&(e.payload.tokenIds??[]).some(r=>t.tokenIds.includes(r));case "best_bid_ask":return t.customFeatureEnabled===true&&t.tokenIds.includes(e.payload.tokenId);default:return t.tokenIds.includes(e.payload.tokenId)}}}function Yr(t){if(Jr(t))return ()=>true;let e=new Set((t.markets??[]).map(r=>r.toLowerCase()));return r=>e.has(r.payload.market.toLowerCase())}function Jr(t){return (t.markets?.length??0)===0}function L(t,e){let r=new Set(e);return t.filter(s=>!r.has(s))}var b=class{#e;#s;#r;#i=new Kd({heartbeat:new Fd});#o=new Jd;#t=new p({deriveServerState:jr});constructor(e){this.#e=e.headers,this.#s=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:Gr(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){let{before:s,after:n}=r;try{(await this.#u()).reusedOpenSocket&&he(i=>this.#i.send(i),s,n);}catch(o){throw await this.#a(e),o}}async#a(e){let{before:r,after:s}=this.#t.remove(e);if(!this.#t.hasActiveSubscriptions()){await this.close();return}he(n=>this.#i.send(n),r,s);}async close(){this.#r===void 0&&(this.#r=this.#d().finally(()=>{this.#r=void 0;})),await this.#r;}async#d(){this.#o.stop(),this.#t.endAll(),await this.#i.close();}#u(){return this.#i.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#s})}#c(){this.#o.resetBackoff(),this.#f();}#p(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=MarketEventSchema.safeParse(s);n.success&&this.#t.dispatch(n.data);}}#l(){this.#t.hasActiveSubscriptions()&&this.#m();}#h(){}#f(){this.#i.send($r(this.#t.serverState()));}#m(){this.#o.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var P=class{#e;#s;#r;#i;#o=new Kd({heartbeat:new Fd});#t=new Jd;#n=new p({deriveServerState:zr});constructor(e){this.#e=e.credentials,this.#s=e.headers,this.#r=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:Yr(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){let{before:s,after:n}=r;try{(await this.#c()).reusedOpenSocket&&fe(i=>this.#o.send(i),s,n);}catch(o){throw await this.#d(e),o}}async#d(e){let{before:r,after:s}=this.#n.remove(e);if(!this.#n.hasActiveSubscriptions()){await this.close();return}fe(n=>this.#o.send(n),r,s);}async close(){this.#i===void 0&&(this.#i=this.#u().finally(()=>{this.#i=void 0;})),await this.#i;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#o.close();}#c(){return this.#o.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:e=>this.#p(e),prepare:()=>this.#e,headers:this.#s,url:this.#r})}#p(e){this.#t.resetBackoff(),this.#m(e);}#l(e){let r=Array.isArray(e)?e:[e];for(let s of r){let n=UserEventSchema.safeParse(s);n.success&&this.#n.dispatch(n.data);}}#h(){this.#n.hasActiveSubscriptions()&&this.#y();}#f(){}#m(e){this.#o.send(Nr(this.#n.serverState(),e));}#y(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};var g=class{#e;#s;#r;#i;#o=new Set;#t=new Set;#n=new Set;#a=false;constructor(e){this.#e=e.chainId,this.#s=e.headers,this.#r=e.restUrl,this.#i=e.wsUrl;}connect(e){if(this.#a)return Promise.reject(new c("Perps session manager has been shut down."));let r=new Od({chainId:this.#e,credentials:e,headers:this.#s,onClose:n=>this.#d(n),restUrl:this.#r,wsUrl:this.#i});this.#t.add(r);let s;return s=(async()=>{try{if(await r.connect(),this.#a)throw await r.close(),new c("Perps session manager has been shut down.");return this.#o.add(r),r}catch(n){throw await r.close(),n}finally{this.#n.delete(s),this.#t.delete(r);}})(),this.#n.add(s),s}async shutdown(){this.#a=true;let e=Array.from(this.#o),r=Array.from(this.#t),s=Array.from(this.#n);this.#o.clear(),this.#t.clear(),this.#n.clear(),await Promise.allSettled([...e.map(n=>n.close()),...r.map(n=>n.close()),...s.map(n=>n.catch(()=>{}))]).then(()=>{});}#d(e){this.#o.delete(e),this.#t.delete(e);}};var S=class{#e;#s;#r;#i=1;#o=new Kd({heartbeat:new Id});#t=new Jd;#n=new p({deriveServerState:ri});constructor(e){this.#e=e.headers,this.#s=e.url;}async subscribe(e){let{change:r,entry:s}=this.#n.add(e,{matches:ni(e)});return await this.#a(s,r),m(s.subscriber.queue,()=>this.#d(s))}async#a(e,r){try{(await this.#c()).reusedOpenSocket&&(this.#m(Zr(r.before,r.after)),this.#y(Xr(r.before,r.after)));}catch(s){throw await this.#d(e),s}}async#d(e){let{before:r,after:s}=this.#n.remove(e);this.#m(Zr(r,s)),this.#y(Xr(r,s)),this.#n.hasActiveSubscriptions()||await this.close();}async close(){this.#r===void 0&&(this.#r=this.#u().finally(()=>{this.#r=void 0;})),await this.#r;}async#u(){this.#t.stop(),this.#n.endAll(),await this.#o.close();}#c(){return this.#o.connect({onConnectionLost:()=>this.#h(),onError:()=>this.#f(),onMessage:e=>this.#l(e),onOpen:()=>this.#p(),headers:this.#e,url:this.#s})}#p(){this.#t.resetBackoff(),this.#m(Array.from(this.#n.serverState()));}#l(e){let r=PerpsMarketDataEventSchema.safeParse(e);r.success&&this.#n.dispatch(r.data);}#h(){this.#n.hasActiveSubscriptions()&&this.#S();}#f(){}#m(e){e.length!==0&&this.#o.send(this.#b("sub",e));}#y(e){e.length!==0&&this.#o.send(this.#b("unsub",e));}#b(e,r){return {id:this.#i++,req:e,chs:r}}#S(){this.#t.schedule({reconnect:()=>this.#c(),shouldReconnect:()=>this.#n.hasActiveSubscriptions()});}};function ri(t){let e=new Set,r=new Set,s=new Set,n=false,o=false;for(let{subscription:i}of t)switch(i.topic){case "perps.tickers":i.instrumentId===void 0?n=true:r.add(i.instrumentId);break;case "perps.statistics":i.instrumentId===void 0?o=true:s.add(i.instrumentId);break;default:e.add(si(i));}if(n)e.add("tickers::all");else for(let i of r)e.add(`tickers::${i}`);if(o)e.add("statistics::all");else for(let i of s)e.add(`statistics::${i}`);return e}function Zr(t,e){return Array.from(e).filter(r=>!t.has(r))}function Xr(t,e){return Array.from(t).filter(r=>!e.has(r))}function si(t){switch(t.topic){case "perps.trades":return `trades::${t.instrumentId}`;case "perps.bbo":return `bbo::${t.instrumentId}`;case "perps.book":return `book::${t.instrumentId}`;case "perps.candles":return `klines::${t.instrumentId}::${t.interval}`;case "perps.tickers":return t.instrumentId===void 0?"tickers::all":`tickers::${t.instrumentId}`;case "perps.statistics":return t.instrumentId===void 0?"statistics::all":`statistics::${t.instrumentId}`;default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function ni(t){switch(t.topic){case "perps.trades":return e=>e.topic==="perps.trades"&&e.channel===`trades::${t.instrumentId}`;case "perps.bbo":case "perps.book":return e=>e.topic===t.topic&&e.payload.instrumentId===t.instrumentId;case "perps.candles":return e=>e.topic==="perps.candles"&&e.payload.instrumentId===t.instrumentId&&e.payload.interval===t.interval;case "perps.tickers":case "perps.statistics":return e=>e.topic===t.topic&&(t.instrumentId===void 0||e.payload.instrumentId===t.instrumentId);default:invariant(false,`Unknown Perps topic: ${String(t)}`);}}function rs(t,e){return {...e,quote:r=>t.quote(e,r)}}function ss(t,e){let r=e.rfqId,s=e.quoteId;return {...e,confirm:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Confirm),decline:()=>t.respondToConfirmation(r,s,RfqConfirmationDecision.Decline)}}function ns(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function os(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function is(t){return {quoteId:t.quoteId,rfqId:t.rfqId}}function as(t,e){let r=J(t);return {auth:{apiKey:e.key,passphrase:e.passphrase,secret:e.secret},identity:{maker_address:r.maker,signature_type:r.signatureType,signer_address:r.signer},type:"auth"}}function cs(t,e){return {price_e6:e.price.toString(),rfq_id:t.rfqId,signed_order:e.signedOrder,size_e6:e.size.toString(),type:"RFQ_QUOTE"}}function us(t,e,r){let s=J(t);return {maker_address:s.maker,quote_id:r,rfq_id:e,signer_address:s.signer,type:"RFQ_QUOTE_CANCEL"}}function ds(t,e,r){return {decision:r,quote_id:e,rfq_id:t,type:"RFQ_CONFIRMATION_RESPONSE"}}var D=class{#e=new Map;#s;constructor(e){this.#s=e;}waitFor(e,r){let s=ii(),n,o=setNonBlockingTimeout(()=>{this.remove(e,n),s.reject(new h(r));},this.#s);n=s.promise.finally(()=>clearTimeout(o));let i=this.#e.get(e)??[];return i.push({...s,promise:n}),this.#e.set(e,i),n}resolve(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.resolve(r));}reject(e,r){let s=this.#e.get(e),n=s?.shift();n!==void 0&&(s!==void 0&&s.length===0&&this.#e.delete(e),n.reject(r));}remove(e,r){let s=this.#e.get(e);if(s===void 0)return;let n=s.filter(o=>o.promise!==r);n.length===0?this.#e.delete(e):this.#e.set(e,n);}rejectAll(e){for(let r of this.#e.values())for(let s of r)s.reject(e);this.#e.clear();}};function ii(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var ls="0x0000000000000000000000000000000000000000000000000000000000000000";async function ms(t){let e=J(t.account),r=gd({chainId:t.chainId,exchange:t.exchange}),s={builder:ls,maker:e.maker,makerAmount:toBaseUnits(hd(t.orderSide,t.orderPrice,t.size)),metadata:ls,salt:jd().toString(),side:kd(t.orderSide),signatureType:e.signatureType,signer:e.signer,takerAmount:toBaseUnits(id(t.orderSide,t.orderPrice,t.size)),timestamp:Math.floor(Date.now()/1e3).toString(),tokenId:t.tokenId},n;try{n=await t.signer.signTypedData(ed({domain:r,order:s}));}catch(o){throw m$1.fromError(o,"Could not sign the RFQ quote order.")}return {...s,signature:fd({domain:r,order:s,signature:n})}}var ys=DecimalishSchema.transform(t=>Rs(t)).refine(t=>t<=BigInt(Number.MAX_SAFE_INTEGER),{message:"Value exceeds the temporary numeric wire limit."}),ui=z.strictObject({price:ys.refine(t=>t<1000000n,{message:"Price must be less than 1."}),size:ys.optional(),source:z.enum(["collateral","inventory"]).default("collateral")});function bs(t){return G(t,ui)}async function Ss(t){let e=t.response.price,r=t.response.size===void 0?mi(t.request.requestedSize,e):t.response.size,s=await ms({account:t.account,chainId:t.chainId,exchange:t.exchange,orderPrice:pi(t.request,t.response.source,e),orderSide:li(t.response.source),signer:t.signer,size:r,tokenId:di(t.request,t.response.source)});return {price:e,signedOrder:s,size:r}}function di(t,e){return t.direction===RfqDirection.Buy?e==="collateral"?t.noPositionId:t.yesPositionId:e==="collateral"?t.yesPositionId:t.noPositionId}function pi(t,e,r){return t.direction===RfqDirection.Buy&&e==="collateral"||t.direction===RfqDirection.Sell&&e==="inventory"?1000000n-r:r}function li(t){return t==="collateral"?OrderSide.BUY:OrderSide.SELL}function mi(t,e){let r=Rs(t.value);return t.unit===RfqRequestedSizeUnit.Shares?r:r*1000000n/e}function Rs(t){let e=/^(\d+)(?:\.(\d*))?$/.exec(t);if(e===null)throw new a("Value must be a valid decimal.");let[,r="",s=""]=e;if(s.length>6)throw new a("Value must have at most 6 decimal places.");let n=BigInt(r)*1000000n+BigInt(s.padEnd(6,"0"));if(n<=0n)throw new a("Value must be greater than 0.");return n}var bi=3e4,Si=3e4,q=class{#e;#s;#r;#i;#o;#t;#n;#a;#d;#u;#c=false;constructor(e){this.#e=e.account,this.#s=e.chainId,this.#r=e.credentials,this.#i=e.exchange,this.#o=e.headers,this.#t=e.signer,this.#n=e.url;}async connect(){if(this.#c)throw new c("RFQ quoter manager has been shut down.");if(this.#a!==void 0){if(!this.#a.closed)return this.#a;this.#a=void 0;}if(this.#u!==void 0)return this.#u;let e=new Re({account:this.#e,chainId:this.#s,credentials:this.#r,exchange:this.#i,headers:this.#o,onClose:()=>this.#p(e),signer:this.#t,url:this.#n});this.#d=e;let r;return r=(async()=>{try{if(await e.connect(),this.#c)throw await e.close(),new c("RFQ quoter manager has been shut down.");return this.#a=e,e}catch(s){throw await e.close(),s}finally{this.#u===r&&(this.#u=void 0),this.#d===e&&(this.#d=void 0);}})(),this.#u=r,r}async shutdown(){this.#c=true;let e=this.#a,r=this.#d,s=this.#u;this.#a=void 0,this.#d=void 0,this.#u=void 0,await Promise.allSettled([e?.close(),r?.close(),s?.catch(()=>{})]).then(()=>{});}#p(e){this.#a===e&&(this.#a=void 0),this.#d===e&&(this.#d=void 0);}},Re=class{#e;#s;#r;#i;#o;#t;#n;#a;#d=new Kd;#u=pushable({objectMode:true});#c=new D(Si);#p;#l;constructor(e){this.#e=e.account,this.#s=e.chainId,this.#r=e.credentials,this.#i=e.exchange,this.#o=e.headers,this.#t=e.onClose,this.#n=e.signer,this.#a=e.url;}get closed(){return this.#p!==void 0}async connect(){let e=Ri();this.#l=e;let r=setNonBlockingTimeout(()=>{e.reject(new c("RFQ quoter authentication timed out."));},bi);try{await this.#d.connect({headers:this.#o,onConnectionLost:s=>this.#g(s),onError:()=>{},onMessage:s=>this.#R(s),onOpen:()=>this.#S(),url:this.#a}),await e.promise;}finally{clearTimeout(r),this.#l=void 0;}}async#h(e){if(!this.#d.send(e))throw new c("RFQ quoter websocket is not open.")}async close(){this.#p===void 0&&(this.#p=this.#f()),await this.#p;}[Symbol.asyncIterator](){return this.#u[Symbol.asyncIterator]()}async#f(){let e=new c("RFQ quoter websocket closed.");this.#b(e),this.#u.end(),await this.#d.close(),this.#t();}async#m(e){this.#p===void 0&&(this.#p=this.#y(e)),await this.#p;}async#y(e){this.#b(e),this.#u.end(e),await this.#d.close(),this.#t();}#b(e){this.#l?.reject(e),this.#c.rejectAll(e);}#S(){this.#d.send(as(this.#e,this.#r));}#R(e){if(this.#p!==void 0)return;let r=RfqQuoterInboundMessageSchema.safeParse(e);if(!r.success)return;let s=r.data;switch(s.type){case "auth":this.#P(s);return;case "quote_request":this.#u.push(rs(this,s));return;case "quote_ack":this.#c.resolve(B(s.rfqId),ns(s));return;case "quote_cancel_ack":this.#c.resolve(be(s.rfqId,s.quoteId),os(s));return;case "confirmation_request":this.#u.push(ss(this,s));return;case "confirmation_ack":this.#c.resolve(Se(s.rfqId,s.quoteId),is(s));return;case "execution_update":this.#u.push(s);return;case "trade":this.#u.push(s);return;case "rfq_error":this.#q(s);return}}#P(e){if(e.success===true){this.#l?.resolve(void 0);return}this.#l?.reject(new c(`RFQ quoter authentication failed: ${e.error}`));}#g(e$1){this.#m(new e("RFQ quoter connection lost.",e$1));}#q(e){if(e.requestType==="RFQ_QUOTE"){if(e.rfqId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(B(e.rfqId),new _if(e.message,{code:e.code,errorId:e.errorId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_QUOTE_CANCEL"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(be(e.rfqId,e.quoteId),new kf(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));return}if(e.requestType==="RFQ_CONFIRMATION_RESPONSE"){if(e.rfqId===void 0||e.quoteId===void 0){this.#m(new c("Uncorrelated RFQ quoter error."));return}this.#c.reject(Se(e.rfqId,e.quoteId),new mf(e.message,{code:e.code,errorId:e.errorId,quoteId:e.quoteId,rfqId:e.rfqId}));}}async quote(e,r){let s=bs(r),n=await Ss({account:this.#e,chainId:this.#s,exchange:this.#i,request:e,response:s,signer:this.#n}),o=this.#c.waitFor(B(e.rfqId),`Timed out waiting for RFQ quote acknowledgement for ${e.rfqId}.`);try{return await this.#h(cs(e,n)),await o}catch(i){throw this.#c.remove(B(e.rfqId),o),i}}async cancelQuote(e){let r=be(e.rfqId,e.quoteId),s=this.#c.waitFor(r,`Timed out waiting for RFQ quote cancellation acknowledgement for ${e.rfqId}.`);try{return await this.#h(us(this.#e,e.rfqId,e.quoteId)),await s}catch(n){throw this.#c.remove(r,s),n}}async respondToConfirmation(e,r,s){let n=Se(e,r),o=this.#c.waitFor(n,`Timed out waiting for RFQ confirmation acknowledgement for ${e}.`);try{return await this.#h(ds(e,r,s)),await o}catch(i){throw this.#c.remove(n,o),i}}};function B(t){return `ACK_RFQ_QUOTE:${t}`}function be(t,e){return `ACK_RFQ_QUOTE_CANCEL:${t}:${e}`}function Se(t,e){return `ACK_RFQ_CONFIRMATION_RESPONSE:${t}:${e}`}function Ri(){let t,e;return {promise:new Promise((s,n)=>{t=s,e=n;}),reject:e,resolve:t}}var C=class{#e;#s;#r;#i=new Kd({heartbeat:new Gd});#o=new Jd;#t=new p({deriveServerState:Ci});constructor(e){this.#e=e.headers,this.#s=e.url;}async subscribe(e){let{change:r,entry:s}=this.#t.add(e,{matches:Ti(e)});return await this.#n(s,r),m(s.subscriber.queue,()=>this.#a(s))}async#n(e,r){try{if((await this.#u()).reusedOpenSocket){let{before:n,after:o}=r,i=gi(n,o);this.#m(i);}}catch(s){throw await this.#a(e),s}}async#a(e){let{before:r,after:s}=this.#t.remove(e),n=qi(r,s);this.#y(n),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#r===void 0&&(this.#r=this.#d().finally(()=>{this.#r=void 0;})),await this.#r;}async#d(){this.#o.stop(),this.#t.endAll(),await this.#i.close();}#u(){return this.#i.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#s})}#c(){this.#o.resetBackoff(),this.#f();}#p(e){let r=RealtimeEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#b();}#h(){}#f(){this.#m(Array.from(this.#t.serverState().values()));}#m(e){e.length!==0&&this.#i.send(vi(e));}#y(e){e.length!==0&&this.#i.send(Ai(e));}#b(){this.#o.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};function gi(t,e){return Array.from(e).flatMap(([r,s])=>t.has(r)?[]:[s])}function qi(t,e){return Array.from(t).flatMap(([r,s])=>e.has(r)?[]:[s])}function Ci(t){let e=new Map;for(let{subscription:r}of t)for(let s of Ei(r))e.has(s.key)||e.set(s.key,s);return e}function vi(t){return {action:"subscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function Ai(t){return {action:"unsubscribe",subscriptions:t.map(({topic:e,type:r})=>({topic:e,type:r}))}}function Ei(t){switch(t.topic){case "comments":return (t.types??["comment_created"]).map(e=>T("comments",e));case "prices.crypto.binance":return [T("crypto_prices","update")];case "prices.crypto.chainlink":return [T("crypto_prices_chainlink","update")];case "prices.crypto.chainlink.twap":return [T(ki(t.windowSeconds),"update")];case "prices.equity.pyth":return [T("equity_prices","update")];default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}function ki(t){switch(t){case 30:return "crypto_prices_twap_thirty";case 60:return "crypto_prices_twap_sixty";default:invariant(false,`Unknown TWAP window: ${String(t)}`);}}function T(t,e){return {key:`${t}:${e}`,topic:t,type:e}}function Ti(t){switch(t.topic){case "comments":return e=>!(e.topic!=="comments"||t.types!==void 0&&t.types.length>0&&!t.types.includes(e.type)||(t.parentEntityId!==void 0||t.parentEntityType!==void 0)&&(!(e.type==="comment_created"||e.type==="comment_removed")||t.parentEntityId!==void 0&&e.payload.parentEntityID!==t.parentEntityId||t.parentEntityType!==void 0&&e.payload.parentEntityType!==t.parentEntityType));case "prices.crypto.binance":return e=>e.topic==="prices.crypto.binance"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink":return e=>e.topic==="prices.crypto.chainlink"&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.crypto.chainlink.twap":return e=>e.topic==="prices.crypto.chainlink.twap"&&e.payload.windowSeconds===t.windowSeconds&&(t.symbols===void 0||t.symbols.length===0||t.symbols.includes(e.payload.symbol));case "prices.equity.pyth":return e=>e.topic==="prices.equity.pyth"&&e.payload.symbol.toLowerCase()===t.symbol.toLowerCase()&&(t.types===void 0||t.types.length===0||t.types.includes(e.type));default:invariant(false,`Unknown RTDS topic: ${String(t)}`);}}var v=class{#e;#s;#r;#i=new Kd({heartbeat:new Hd});#o=new Jd;#t=new p;constructor(e){this.#e=e.headers,this.#s=e.url;}async subscribe(e){let{entry:r}=this.#t.add(e);return await this.#n(r),m(r.subscriber.queue,()=>this.#a(r))}async#n(e){try{await this.#u();}catch(r){throw await this.#a(e),r}}async#a(e){this.#t.remove(e),this.#t.hasActiveSubscriptions()||await this.close();}async close(){this.#r===void 0&&(this.#r=this.#d().finally(()=>{this.#r=void 0;})),await this.#r;}async#d(){this.#o.stop(),this.#t.endAll(),await this.#i.close();}#u(){return this.#i.connect({onConnectionLost:()=>this.#l(),onError:()=>this.#h(),onMessage:e=>this.#p(e),onOpen:()=>this.#c(),headers:this.#e,url:this.#s})}#c(){this.#o.resetBackoff();}#p(e){let r=SportsResultEventSchema.safeParse(e);r.success&&this.#t.dispatch(r.data);}#l(){this.#t.hasActiveSubscriptions()&&this.#f();}#h(){}#f(){this.#o.schedule({reconnect:()=>this.#u(),shouldReconnect:()=>this.#t.hasActiveSubscriptions()});}};var W=class{#e;#s;get context(){return this.#e}get decorators(){return this.#s}get environment(){return this.context.environment}get clob(){return this.context.clob}get relayer(){return this.context.relayer}get rpc(){return this.context.rpc}get gamma(){return this.context.gamma}get data(){return this.context.data}get rfq(){return this.context.rfq}get perps(){return this.context.perps}get webSockets(){return this.context.webSockets}get supportsGasless(){return this.context.apiKey?.supportGasless??false}get hasBuilderApiKey(){return this.context.apiKey?.isBuilderKey??false}constructor(e){this.#e=e,this.#s=[];}async resolveClobHeaders(e){return this.context.apiKey?.isBuilderKey?this.context.apiKey.authorize(e):Promise.resolve({})}async resolveRelayerHeaders(e){return this.context.apiKey?.supportGasless?this.context.apiKey.authorize(e):Promise.resolve({})}rememberDecorator(e){this.#s.push(e);}},Li=z.object({key:ApiKeySchema,passphrase:z.string(),secret:z.string()}),Di=z.object({wallet:EvmAddressSchema,credentials:Li.optional(),nonce:z.number().int().nonnegative().optional()}).superRefine((t,e)=>{t.credentials!==void 0&&t.nonce!==void 0&&e.addIssue({code:"custom",message:"`credentials` and `nonce` are mutually exclusive.",path:["nonce"]});}).transform(t=>t.credentials!==void 0?{wallet:t.wallet,credentials:t.credentials}:t.nonce!==void 0?{wallet:t.wallet,nonce:t.nonce}:{wallet:t.wallet}),Q=class extends W{constructor(e){super({apiKey:e.apiKey,environment:e.environment,data:new Ed({headers:e.environment.data.headers,root:e.environment.data.rest}),gamma:new Ed({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),clob:new Ed({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new Ed({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rfq:new Ed({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new Ed({headers:e.environment.perps.headers,root:e.environment.perps.rest}),rpc:new H({url:e.environment.rpc}),webSockets:{clobMarket:new b({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new C({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new S({headers:e.environment.perps.headers,url:e.environment.perps.ws})}});}isSecureClient(){return false}isPublicClient(){return true}async closeSubscriptions(){await Promise.all([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close()]).then(()=>{});}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}beginAuthentication(e,r){let s=G(e,Di);return Promise.resolve(async function*(){let n=Math.floor(Date.now()/1e3),o=s?.nonce??0,i=expectEvmAddress(yield wa()),A=expectEvmAddress(s.wallet),ve=I(this.environment,i,A);if(s.credentials!==void 0){let Ae=this.#e(s.credentials,ve,r);try{if((await gb(Ae)).includes(s.credentials.key))return Ae}catch(x){if(!(x instanceof f$1)||x.status!==401)throw x}}let gs=yield {kind:"signAuthMessage",payload:Lr({address:i,chainId:this.environment.chainId,nonce:o,timestamp:n})},qs=await eb(this,{address:i,nonce:o,signature:expectEvmSignature(gs),timestamp:n});return this.#e(qs,ve,r)}.call(this))}#e(e,r,s){let n=new Ce({account:r,apiKey:this.context.apiKey,credentials:e,environment:this.environment,signer:s});for(let o of this.decorators)n.extend(o);return n}},Ce=class extends W{#e=false;get context(){return invariant(!this.#e,"This client has ended authentication and can no longer be used."),super.context}endAuthenticationLifecycle(){this.#e=true;}constructor(e){super({account:e.account,credentials:e.credentials,apiKey:e.apiKey,environment:e.environment,signer:e.signer,clob:new Ed({headers:e.environment.clob.headers,root:e.environment.clob.rest,resolveHeaders:r=>this.resolveClobHeaders(r)}),relayer:new Ed({headers:e.environment.relayer.headers,root:e.environment.relayer.rest,resolveHeaders:r=>this.resolveRelayerHeaders(r)}),rpc:new H({url:e.environment.rpc}),gamma:new Ed({headers:e.environment.gamma.headers,root:e.environment.gamma.rest}),data:new Ed({headers:e.environment.data.headers,root:e.environment.data.rest}),rfq:new Ed({headers:e.environment.combos.headers,root:e.environment.combos.rest}),perps:new Ed({headers:e.environment.perps.headers,root:e.environment.perps.rest}),secureClob:new Ed({headers:e.environment.clob.headers,resolveHeaders:async r=>({...await this.resolveClobHeaders(r),...await this.#r(r)}),root:e.environment.clob.rest}),combos:new Ed({headers:e.environment.combos.collateralReturn.headers,resolveHeaders:r=>this.resolveRelayerHeaders(r),root:e.environment.combos.collateralReturn.rest}),builderGateway:new Ed({headers:e.environment.combos.builderGateway.headers,resolveHeaders:async r=>({...await this.#s(r),...await this.#r(r)}),root:e.environment.combos.builderGateway.rest}),webSockets:{clobMarket:new b({headers:e.environment.clob.market.headers,url:e.environment.clob.market.ws}),clobUser:new P({credentials:e.credentials,headers:e.environment.clob.user.headers,url:e.environment.clob.user.ws}),rfqQuoter:new q({account:e.account,chainId:e.environment.chainId,credentials:e.credentials,exchange:e.environment.contracts.exchangeV3,headers:e.environment.combos.headers,signer:e.signer,url:e.environment.combos.ws}),sports:new v({headers:e.environment.sports.headers,url:e.environment.sports.ws}),rtds:new C({headers:e.environment.rtds.headers,url:e.environment.rtds.ws}),perpsSubscriptions:new S({headers:e.environment.perps.headers,url:e.environment.perps.ws}),perpsSession:new g({chainId:e.environment.chainId,headers:e.environment.perps.headers,restUrl:e.environment.perps.rest,wsUrl:e.environment.perps.ws})}});}get credentials(){return this.context.credentials}get account(){return this.context.account}get signer(){return this.context.signer}get secureClob(){return this.context.secureClob}get combos(){return this.context.combos}get builderGateway(){return this.context.builderGateway}get webSockets(){return this.context.webSockets}async closeSubscriptions(){await Promise.allSettled([this.webSockets.clobMarket.close(),this.webSockets.rtds.close(),this.webSockets.sports.close(),this.webSockets.perpsSubscriptions.close(),this.webSockets.clobUser.close()]).then(()=>{});}isSecureClient(){return true}isPublicClient(){return false}extend(e){return this.rememberDecorator(e),Object.assign(this,e(this)),this}async endAuthentication(){let e=this.closeSubscriptions(),r=this.webSockets.perpsSession.shutdown(),s=this.webSockets.rfqQuoter.shutdown(),{apiKey:n,environment:o}=this.context;try{await ib(this);}finally{this.endAuthenticationLifecycle(),await Promise.allSettled([e,r,s]).then(()=>{});}let i=new Q({apiKey:n,environment:o});for(let A of this.decorators)i.extend(A);return i}async#s(e){return e.method!=="GET"&&this.context.apiKey?.isBuilderKey?this.context.apiKey.authorize(e):{}}async#r(e){try{let r=Math.floor(Date.now()/1e3);return {POLY_ADDRESS:this.account.signer,POLY_API_KEY:this.credentials.key,POLY_PASSPHRASE:this.credentials.passphrase,POLY_SIGNATURE:await Hr(this.credentials.secret,r,e.method,e.path,e.body),POLY_TIMESTAMP:`${r}`}}catch(r){throw m$1.fromError(r,"Could not sign the L2-authenticated request")}}};function Ps(t={}){return new Q({environment:t.environment??le,apiKey:t.apiKey}).extend(Qr)}var Bi=n(j,g$1,f$1,m$1,h,i,c,b$1,a),Wi=n(a);async function Qi(t){let e=Ps({environment:t.environment,apiKey:t.apiKey}),r=await Ui(e,t),s=await e.beginAuthentication({wallet:r,credentials:t.credentials,nonce:t.nonce},t.signer).then(va(t.signer));if(s.account.walletType===WalletType.EOA||await Aa(s,{wallet:s.account.wallet,type:s.account.walletType}))return s;if(s.account.walletType===WalletType.DEPOSIT_WALLET)return await Hi(s),s;throw new a(`Wallet ${s.account.wallet} does not exist. Provide an existing wallet address, or omit wallet to use the default Deposit Wallet flow.`)}async function Ui(t,e){if(e.wallet!==void 0)return e.wallet;let r=expectEvmAddress(await e.signer.getAddress()),s=K(r,t.environment.walletDerivation);return await Aa(t,{wallet:s,type:WalletType.DEPOSIT_WALLET})?s:L$1(r,t.environment.walletDerivation)}async function Hi(t){let e=L$1(t.account.signer,t.environment.walletDerivation);if(!isSameEvmAddress(t.account.wallet,e))throw new a(`Wallet ${t.account.wallet} does not match the expected Deposit Wallet ${e} for this signer, nor a deployed wallet address.`);await(await Da(t)).wait();}
|
|
2
|
+
export{Bi as CreateSecureClientError,Wi as SetupGaslessWalletError,oe as accountActions,Qr as allActions,ie as analyticsActions,Hr as buildHmacSignature,Ps as createPublicClient,Qi as createSecureClient,ae as dataActions,ce as discoveryActions,$o as forkEnvironmentConfig,ue as perpsActions,wc as preproduction,le as production,Vo as relayerApiKey,Ko as remoteBuilderSigning,de as rewardsActions,Dr as rfqActions,pe as subscriptionsActions,Br as tradingActions,Wr as walletActions};//# sourceMappingURL=index.js.map
|
|
3
3
|
//# sourceMappingURL=index.js.map
|