@pear-protocol/hyperliquid 0.1.0 → 0.1.1

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/index.d.cts CHANGED
@@ -7511,6 +7511,7 @@ interface PositionAssetDetail {
7511
7511
  currentWeight: number;
7512
7512
  fundingPaid: number;
7513
7513
  targetWeight: number;
7514
+ liquidationPrice: number | null;
7514
7515
  }
7515
7516
  interface EnrichedPositionDto {
7516
7517
  positionId: string;
@@ -7578,7 +7579,7 @@ declare function parsePerpMetas(perpMetas: AllPerpMetasResponse, perpDexNames: s
7578
7579
  declare function parseAssetCtxs(data: AllDexsAssetCtxsData): Map<string, AssetCtx[]>;
7579
7580
  declare function getMarkPrice(coin: string, prices: PriceMap): number;
7580
7581
  declare function getLeverage(coin: string, fallback: number, clearinghouseState: ClearinghouseState): number;
7581
- declare function calculateAsset(asset: RawAssetDto, currentPrice: number, totalInitialSize: number, totalCurrentSize: number, leverage: number, isLong: boolean): PositionAssetDetail & {
7582
+ declare function calculateAsset(asset: RawAssetDto, currentPrice: number, totalInitialSize: number, totalCurrentSize: number, leverage: number, isLong: boolean, liquidationPrice: number | null): PositionAssetDetail & {
7582
7583
  entryMarginUsed: number;
7583
7584
  };
7584
7585
  declare function aggregateClearinghouseStates(data: AllDexsClearinghouseStateData): ClearinghouseState;
package/dist/index.d.ts CHANGED
@@ -7511,6 +7511,7 @@ interface PositionAssetDetail {
7511
7511
  currentWeight: number;
7512
7512
  fundingPaid: number;
7513
7513
  targetWeight: number;
7514
+ liquidationPrice: number | null;
7514
7515
  }
7515
7516
  interface EnrichedPositionDto {
7516
7517
  positionId: string;
@@ -7578,7 +7579,7 @@ declare function parsePerpMetas(perpMetas: AllPerpMetasResponse, perpDexNames: s
7578
7579
  declare function parseAssetCtxs(data: AllDexsAssetCtxsData): Map<string, AssetCtx[]>;
7579
7580
  declare function getMarkPrice(coin: string, prices: PriceMap): number;
7580
7581
  declare function getLeverage(coin: string, fallback: number, clearinghouseState: ClearinghouseState): number;
7581
- declare function calculateAsset(asset: RawAssetDto, currentPrice: number, totalInitialSize: number, totalCurrentSize: number, leverage: number, isLong: boolean): PositionAssetDetail & {
7582
+ declare function calculateAsset(asset: RawAssetDto, currentPrice: number, totalInitialSize: number, totalCurrentSize: number, leverage: number, isLong: boolean, liquidationPrice: number | null): PositionAssetDetail & {
7582
7583
  entryMarginUsed: number;
7583
7584
  };
7584
7585
  declare function aggregateClearinghouseStates(data: AllDexsClearinghouseStateData): ClearinghouseState;
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- import x from'axios';import {WebSocket}from'partysocket';var yt=(b=>(b.POSITION_NOT_FOUND="POSITION_NOT_FOUND",b.POSITION_NOT_OPEN="POSITION_NOT_OPEN",b.POSITION_UNAUTHORIZED="POSITION_UNAUTHORIZED",b.ORDER_NOT_FOUND="ORDER_NOT_FOUND",b.INVALID_ORDER_STATUS="INVALID_ORDER_STATUS",b.INVALID_ORDER_TYPE="INVALID_ORDER_TYPE",b.ACTIVE_TRADE_TIMEOUT="ACTIVE_TRADE_TIMEOUT",b.UNSUPPORTED_EXECUTION_TYPE="UNSUPPORTED_EXECUTION_TYPE",b.DUPLICATE_TRIGGER="DUPLICATE_TRIGGER",b.HL_CANCEL_FAILED="HL_CANCEL_FAILED",b.HL_INSUFFICIENT_MARGIN="HL_INSUFFICIENT_MARGIN",b.HL_AGENT_WALLET_REVOKED="HL_AGENT_WALLET_REVOKED",b.HL_TICK_SIZE="HL_TICK_SIZE",b.HL_MIN_TRADE_VALUE="HL_MIN_TRADE_VALUE",b.HL_REDUCE_ONLY="HL_REDUCE_ONLY",b.HL_POST_ONLY_WOULD_MATCH="HL_POST_ONLY_WOULD_MATCH",b.HL_IOC_NO_MATCH="HL_IOC_NO_MATCH",b.HL_BAD_TRIGGER_PRICE="HL_BAD_TRIGGER_PRICE",b.HL_NO_LIQUIDITY="HL_NO_LIQUIDITY",b.HL_OPEN_INTEREST_CAP="HL_OPEN_INTEREST_CAP",b.HL_OPEN_INTEREST_RATE="HL_OPEN_INTEREST_RATE",b.HL_INSUFFICIENT_SPOT_BALANCE="HL_INSUFFICIENT_SPOT_BALANCE",b.HL_PRICE_TOO_FAR_FROM_ORACLE="HL_PRICE_TOO_FAR_FROM_ORACLE",b.HL_MAX_POSITION_EXCEEDED="HL_MAX_POSITION_EXCEEDED",b.HL_ORDER_MISSING="HL_ORDER_MISSING",b.HL_ORDER_FAILED="HL_ORDER_FAILED",b.INVALID_ADDRESS="INVALID_ADDRESS",b.MISSING_REQUIRED_FIELD="MISSING_REQUIRED_FIELD",b.INVALID_FIELD_VALUE="INVALID_FIELD_VALUE",b.UNSUPPORTED_TRIGGER_TYPE="UNSUPPORTED_TRIGGER_TYPE",b.INVALID_POSITION_STRUCTURE="INVALID_POSITION_STRUCTURE",b.INVALID_LADDER_CONFIG="INVALID_LADDER_CONFIG",b.LADDER_CREATION_FAILED="LADDER_CREATION_FAILED",b.TWAP_DURATION_REQUIRED="TWAP_DURATION_REQUIRED",b.TWAP_INSUFFICIENT_VALUE="TWAP_INSUFFICIENT_VALUE",b.TWAP_CHUNK_SCHEDULING_FAILED="TWAP_CHUNK_SCHEDULING_FAILED",b.LEVERAGE_CONFIG_FAILED="LEVERAGE_CONFIG_FAILED",b.INVALID_RISK_PARAMETERS="INVALID_RISK_PARAMETERS",b.VAULT_WALLET_NOT_FOUND="VAULT_WALLET_NOT_FOUND",b.VAULT_UNAUTHORIZED="VAULT_UNAUTHORIZED",b.VAULT_UNSUPPORTED_TOKEN="VAULT_UNSUPPORTED_TOKEN",b.VAULT_MISSING_CONFIG="VAULT_MISSING_CONFIG",b.INVALID_NOTIFICATION_PARAMS="INVALID_NOTIFICATION_PARAMS",b.INTERNAL_ERROR="INTERNAL_ERROR",b.NETWORK_ERROR="NETWORK_ERROR",b.UNKNOWN="UNKNOWN",b))(yt||{}),j=class extends Error{constructor(t,s,r,o){super(t);this.statusCode=s;this.code=r;this.originalError=o;this.name="PearApiError";}};var A="https://hl-v2.pearprotocol.io".replace(/\/+$/,"");var V=class{constructor(e,t=A,s=x){this.basePath=t;this.axios=s;e&&(this.configuration=e,this.basePath=e.basePath??t);}},ue=class extends Error{constructor(t,s){super(s);this.field=t;this.name="RequiredError";}},y={};var P="https://example.com",D=function(a,e,t){if(t==null)throw new ue(e,`Required parameter ${e} was null or undefined when calling ${a}.`)};var T=async function(a,e){if(e&&e.accessToken){let t=typeof e.accessToken=="function"?await e.accessToken():await e.accessToken;a.Authorization="Bearer "+t;}};function ke(a,e,t=""){e!=null&&(typeof e=="object"?Array.isArray(e)?e.forEach(s=>ke(a,s,t)):Object.keys(e).forEach(s=>ke(a,e[s],`${t}${t!==""?".":""}${s}`)):a.has(t)?a.append(t,e):a.set(t,e));}var C=function(a,...e){let t=new URLSearchParams(a.search);ke(t,e),a.search=t.toString();},w=function(a,e,t){let s=typeof a!="string";return (s&&t&&t.isJsonMime?t.isJsonMime(e.headers["Content-Type"]):s)?JSON.stringify(a!==void 0?a:{}):a||""},R=function(a){return a.pathname+a.search+a.hash},f=function(a,e,t,s){return (r=e,o=t)=>{let n={...a.options,url:(r.defaults.baseURL?"":s?.basePath??o)+a.url};return r.request(n)}};var er={Reduce:"REDUCE",Increase:"INCREASE"},tr={Market:"MARKET",Limit:"LIMIT"},rr={Reduce:"REDUCE",Increase:"INCREASE"},sr={Eip712:"eip712",ApiKey:"api_key",PrivyAccessToken:"privy_access_token"},or={PredictionMarket:"prediction_market",Btcdom:"btcdom"},nr={Market:"MARKET",Twap:"TWAP",Trigger:"TRIGGER"},ar={Price:"PRICE",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO",Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE"},ir={MoreThan:"MORE_THAN",LessThan:"LESS_THAN"},lr={Sync:"SYNC",Market:"MARKET",Trigger:"TRIGGER",Twap:"TWAP",Ladder:"LADDER",Tp:"TP",Sl:"SL",SpotMarket:"SPOT_MARKET",SpotLimit:"SPOT_LIMIT",SpotTwap:"SPOT_TWAP"},cr={Price:"PRICE",PriceLimit:"PRICE_LIMIT",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO",BtcDom:"BTC_DOM",CrossAssetPrice:"CROSS_ASSET_PRICE",PredictionMarketOutcome:"PREDICTION_MARKET_OUTCOME"},ur={MoreThan:"MORE_THAN",LessThan:"LESS_THAN"},pr={Kalshi:"KALSHI",Hyperliquid:"HYPERLIQUID"},dr={B:"B",A:"A"},hr={Active:"active",Watchlist:"watchlist",AiPicks:"ai-picks"},gr={PredictionMarket:"prediction_market",Btcdom:"btcdom"},mr={Binary:"binary",Multi:"multi"},Ar={Open:"open",Closed:"closed",Settled:"settled"},yr={Sync:"SYNC",Market:"MARKET",Trigger:"TRIGGER",Twap:"TWAP",Ladder:"LADDER",Tp:"TP",Sl:"SL",SpotMarket:"SPOT_MARKET",SpotLimit:"SPOT_LIMIT",SpotTwap:"SPOT_TWAP"},Pr={Open:"OPEN",Processing:"PROCESSING",Executed:"EXECUTED",Cancelled:"CANCELLED",Failed:"FAILED",PartiallyFilled:"PARTIALLY_FILLED"},Je={FullyPear:"FULLY_PEAR",Partial:"PARTIAL",FullyExternal:"FULLY_EXTERNAL"},Cr={Cent:"cent",Percent:"percent"},Rr={Long:"long",Short:"short"},fr={Open:"OPEN",Processing:"PROCESSING",Executed:"EXECUTED",Cancelled:"CANCELLED",Failed:"FAILED",PartiallyFilled:"PARTIALLY_FILLED"},xr={Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE",Price:"PRICE",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO"},br={Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE",Price:"PRICE",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO"},Tr={PredictionMarket:"prediction_market",Btcdom:"btcdom"},Dr={Kalshi:"kalshi",Hyperliquid:"hyperliquid",Coingecko:"coingecko"},Or={Price:"PRICE",PriceLimit:"PRICE_LIMIT",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO",BtcDom:"BTC_DOM",CrossAssetPrice:"CROSS_ASSET_PRICE",PredictionMarketOutcome:"PREDICTION_MARKET_OUTCOME",Price2:"PRICE",PriceRatio2:"PRICE_RATIO",WeightedRatio2:"WEIGHTED_RATIO",Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE"},Sr={MoreThan:"MORE_THAN",LessThan:"LESS_THAN"},vr={Kalshi:"KALSHI",Hyperliquid:"HYPERLIQUID"},wr={Pending:"PENDING",Scheduled:"SCHEDULED",Executing:"EXECUTING",Completed:"COMPLETED",Failed:"FAILED",Cancelled:"CANCELLED"},Ir={Open:"OPEN",Executing:"EXECUTING",Completed:"COMPLETED",PartiallyCompleted:"PARTIALLY_COMPLETED",Failed:"FAILED",Cancelled:"CANCELLED"},Ct=function(a){return {apiKeysControllerCreateApiKey:async(e,t={})=>{D("apiKeysControllerCreateApiKey","apiKeysControllerCreateApiKeyRequest",e);let s="/api-keys",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},apiKeysControllerGetUserApiKeys:async(e={})=>{let t="/api-keys",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},Ee=function(a){let e=Ct(a);return {async apiKeysControllerCreateApiKey(t,s){let r=await e.apiKeysControllerCreateApiKey(t,s),o=a?.serverIndex??0,n=y["APIKeysApi.apiKeysControllerCreateApiKey"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async apiKeysControllerGetUserApiKeys(t){let s=await e.apiKeysControllerGetUserApiKeys(t),r=a?.serverIndex??0,o=y["APIKeysApi.apiKeysControllerGetUserApiKeys"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},Vr=function(a,e,t){let s=Ee(a);return {apiKeysControllerCreateApiKey(r,o){return s.apiKeysControllerCreateApiKey(r,o).then(n=>n(t,e))},apiKeysControllerGetUserApiKeys(r){return s.apiKeysControllerGetUserApiKeys(r).then(o=>o(t,e))}}},Q=class extends V{apiKeysControllerCreateApiKey(e,t){return Ee(this.configuration).apiKeysControllerCreateApiKey(e,t).then(s=>s(this.axios,this.basePath))}apiKeysControllerGetUserApiKeys(e){return Ee(this.configuration).apiKeysControllerGetUserApiKeys(e).then(t=>t(this.axios,this.basePath))}},Rt=function(a){return {accountsControllerGetAccountSummary:async(e={})=>{let t="/accounts",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},Ze=function(a){let e=Rt(a);return {async accountsControllerGetAccountSummary(t){let s=await e.accountsControllerGetAccountSummary(t),r=a?.serverIndex??0,o=y["AccountsApi.accountsControllerGetAccountSummary"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},kr=function(a,e,t){let s=Ze(a);return {accountsControllerGetAccountSummary(r){return s.accountsControllerGetAccountSummary(r).then(o=>o(t,e))}}},de=class extends V{accountsControllerGetAccountSummary(e){return Ze(this.configuration).accountsControllerGetAccountSummary(e).then(t=>t(this.axios,this.basePath))}},ft=function(a){return {agentWalletControllerCreateAgentWallet:async(e={})=>{let t="/agentWallet",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"POST",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},agentWalletControllerGetAgentWallet:async(e={})=>{let t="/agentWallet",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},qe=function(a){let e=ft(a);return {async agentWalletControllerCreateAgentWallet(t){let s=await e.agentWalletControllerCreateAgentWallet(t),r=a?.serverIndex??0,o=y["AgentWalletApi.agentWalletControllerCreateAgentWallet"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async agentWalletControllerGetAgentWallet(t){let s=await e.agentWalletControllerGetAgentWallet(t),r=a?.serverIndex??0,o=y["AgentWalletApi.agentWalletControllerGetAgentWallet"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},Er=function(a,e,t){let s=qe(a);return {agentWalletControllerCreateAgentWallet(r){return s.agentWalletControllerCreateAgentWallet(r).then(o=>o(t,e))},agentWalletControllerGetAgentWallet(r){return s.agentWalletControllerGetAgentWallet(r).then(o=>o(t,e))}}},$=class extends V{agentWalletControllerCreateAgentWallet(e){return qe(this.configuration).agentWalletControllerCreateAgentWallet(e).then(t=>t(this.axios,this.basePath))}agentWalletControllerGetAgentWallet(e){return qe(this.configuration).agentWalletControllerGetAgentWallet(e).then(t=>t(this.axios,this.basePath))}},xt=function(a){return {authControllerAuthenticate:async(e,t={})=>{D("authControllerAuthenticate","authenticateRequestDto",e);let s="/auth/login",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},authControllerGetEIP712Message:async(e,t,s,r={})=>{D("authControllerGetEIP712Message","address",e),D("authControllerGetEIP712Message","clientId",t),D("authControllerGetEIP712Message","chainId",s);let o="/auth/eip712-message",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};e!==void 0&&(u.address=e),t!==void 0&&(u.clientId=t),s!==void 0&&(u.chainId=s),C(n,u);let p=i&&i.headers?i.headers:{};return l.headers={...c,...p,...r.headers},{url:R(n),options:l}},authControllerLogout:async(e,t={})=>{D("authControllerLogout","logoutRequestDto",e);let s="/auth/logout",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},authControllerRefreshToken:async(e,t={})=>{D("authControllerRefreshToken","refreshTokenRequestDto",e);let s="/auth/refresh",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},K=function(a){let e=xt(a);return {async authControllerAuthenticate(t,s){let r=await e.authControllerAuthenticate(t,s),o=a?.serverIndex??0,n=y["AuthenticationApi.authControllerAuthenticate"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async authControllerGetEIP712Message(t,s,r,o){let n=await e.authControllerGetEIP712Message(t,s,r,o),i=a?.serverIndex??0,l=y["AuthenticationApi.authControllerGetEIP712Message"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async authControllerLogout(t,s){let r=await e.authControllerLogout(t,s),o=a?.serverIndex??0,n=y["AuthenticationApi.authControllerLogout"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async authControllerRefreshToken(t,s){let r=await e.authControllerRefreshToken(t,s),o=a?.serverIndex??0,n=y["AuthenticationApi.authControllerRefreshToken"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},qr=function(a,e,t){let s=K(a);return {authControllerAuthenticate(r,o){return s.authControllerAuthenticate(r,o).then(n=>n(t,e))},authControllerGetEIP712Message(r,o,n,i){return s.authControllerGetEIP712Message(r,o,n,i).then(l=>l(t,e))},authControllerLogout(r,o){return s.authControllerLogout(r,o).then(n=>n(t,e))},authControllerRefreshToken(r,o){return s.authControllerRefreshToken(r,o).then(n=>n(t,e))}}},U=class extends V{authControllerAuthenticate(e,t){return K(this.configuration).authControllerAuthenticate(e,t).then(s=>s(this.axios,this.basePath))}authControllerGetEIP712Message(e,t,s,r){return K(this.configuration).authControllerGetEIP712Message(e,t,s,r).then(o=>o(this.axios,this.basePath))}authControllerLogout(e,t){return K(this.configuration).authControllerLogout(e,t).then(s=>s(this.axios,this.basePath))}authControllerRefreshToken(e,t){return K(this.configuration).authControllerRefreshToken(e,t).then(s=>s(this.axios,this.basePath))}},bt=function(a){return {fillsControllerGetFills:async(e,t,s,r,o,n,i={})=>{let l="/fills",c=new URL(l,P),u;a&&(u=a.baseOptions);let p={method:"GET",...u,...i},h={},d={};e!==void 0&&(d.address=e),t!==void 0&&(d.assetName=t),s!==void 0&&(d.clientId=s),r!==void 0&&(d.isPearTrade=r),o!==void 0&&(d.startTime=o),n!==void 0&&(d.endTime=n),C(c,d);let g=u&&u.headers?u.headers:{};return p.headers={...h,...g,...i.headers},{url:R(c),options:p}}}},et=function(a){let e=bt(a);return {async fillsControllerGetFills(t,s,r,o,n,i,l){let c=await e.fillsControllerGetFills(t,s,r,o,n,i,l),u=a?.serverIndex??0,p=y["FillsApi.fillsControllerGetFills"]?.[u]?.url;return (h,d)=>f(c,x,A,a)(h,p||d)}}},Lr=function(a,e,t){let s=et(a);return {fillsControllerGetFills(r,o,n,i,l,c,u){return s.fillsControllerGetFills(r,o,n,i,l,c,u).then(p=>p(t,e))}}},he=class extends V{fillsControllerGetFills(e,t,s,r,o,n,i){return et(this.configuration).fillsControllerGetFills(e,t,s,r,o,n,i).then(l=>l(this.axios,this.basePath))}},Tt=function(a){return {healthControllerGetHealth:async(e={})=>{let t="/health",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={};C(s,{});let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},tt=function(a){let e=Tt(a);return {async healthControllerGetHealth(t){let s=await e.healthControllerGetHealth(t),r=a?.serverIndex??0,o=y["HealthApi.healthControllerGetHealth"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},Mr=function(a,e,t){let s=tt(a);return {healthControllerGetHealth(r){return s.healthControllerGetHealth(r).then(o=>o(t,e))}}},$e=class extends V{healthControllerGetHealth(e){return tt(this.configuration).healthControllerGetHealth(e).then(t=>t(this.axios,this.basePath))}},Dt=function(a){return {legacySupportControllerGetLegacyDailyStats:async(e,t,s,r={})=>{let o="/legacysupport/dailyStats",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};e!==void 0&&(u.period=e),t!==void 0&&(u.startDate=t),s!==void 0&&(u.endDate=s),C(n,u);let p=i&&i.headers?i.headers:{};return l.headers={...c,...p,...r.headers},{url:R(n),options:l}},legacySupportControllerGetLegacyHyperliquidStats:async(e,t,s,r={})=>{D("legacySupportControllerGetLegacyHyperliquidStats","address",e);let o="/legacysupport/stats/hyperliquid",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};e!==void 0&&(u.address=e),t!==void 0&&(u.period=t),s!==void 0&&(u.startDate=s),C(n,u);let p=i&&i.headers?i.headers:{};return l.headers={...c,...p,...r.headers},{url:R(n),options:l}},legacySupportControllerGetLegacyMetrics:async(e,t={})=>{let s="/legacysupport/metric",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};e!==void 0&&(l.timestamp=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},legacySupportControllerGetLegacyWeeklyVolume:async(e,t={})=>{let s="/legacysupport/weeklyVolume",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};e!==void 0&&(l.timestamp=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}}}},z=function(a){let e=Dt(a);return {async legacySupportControllerGetLegacyDailyStats(t,s,r,o){let n=await e.legacySupportControllerGetLegacyDailyStats(t,s,r,o),i=a?.serverIndex??0,l=y["LegacySupportApi.legacySupportControllerGetLegacyDailyStats"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async legacySupportControllerGetLegacyHyperliquidStats(t,s,r,o){let n=await e.legacySupportControllerGetLegacyHyperliquidStats(t,s,r,o),i=a?.serverIndex??0,l=y["LegacySupportApi.legacySupportControllerGetLegacyHyperliquidStats"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async legacySupportControllerGetLegacyMetrics(t,s){let r=await e.legacySupportControllerGetLegacyMetrics(t,s),o=a?.serverIndex??0,n=y["LegacySupportApi.legacySupportControllerGetLegacyMetrics"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async legacySupportControllerGetLegacyWeeklyVolume(t,s){let r=await e.legacySupportControllerGetLegacyWeeklyVolume(t,s),o=a?.serverIndex??0,n=y["LegacySupportApi.legacySupportControllerGetLegacyWeeklyVolume"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Wr=function(a,e,t){let s=z(a);return {legacySupportControllerGetLegacyDailyStats(r,o,n,i){return s.legacySupportControllerGetLegacyDailyStats(r,o,n,i).then(l=>l(t,e))},legacySupportControllerGetLegacyHyperliquidStats(r,o,n,i){return s.legacySupportControllerGetLegacyHyperliquidStats(r,o,n,i).then(l=>l(t,e))},legacySupportControllerGetLegacyMetrics(r,o){return s.legacySupportControllerGetLegacyMetrics(r,o).then(n=>n(t,e))},legacySupportControllerGetLegacyWeeklyVolume(r,o){return s.legacySupportControllerGetLegacyWeeklyVolume(r,o).then(n=>n(t,e))}}},Ye=class extends V{legacySupportControllerGetLegacyDailyStats(e,t,s,r){return z(this.configuration).legacySupportControllerGetLegacyDailyStats(e,t,s,r).then(o=>o(this.axios,this.basePath))}legacySupportControllerGetLegacyHyperliquidStats(e,t,s,r){return z(this.configuration).legacySupportControllerGetLegacyHyperliquidStats(e,t,s,r).then(o=>o(this.axios,this.basePath))}legacySupportControllerGetLegacyMetrics(e,t){return z(this.configuration).legacySupportControllerGetLegacyMetrics(e,t).then(s=>s(this.axios,this.basePath))}legacySupportControllerGetLegacyWeeklyVolume(e,t){return z(this.configuration).legacySupportControllerGetLegacyWeeklyVolume(e,t).then(s=>s(this.axios,this.basePath))}},Ot=function(a){return {marketsControllerGetActiveMarket:async(e={})=>{let t="/markets/active",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={};C(s,{});let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},marketsControllerGetMarketDataV2:async(e={})=>{let t="/markets/v2",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={};C(s,{});let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},marketsControllerGetMarkets:async(e,t,s,r,o,n,i,l,c,u,p,h={})=>{let d="/markets",g=new URL(d,P),v;a&&(v=a.baseOptions);let O={method:"GET",...v,...h},I={},m={};e!==void 0&&(m.offset=e),t!==void 0&&(m.page=t),s!==void 0&&(m.pageSize=s),r!==void 0&&(m.engine=r),o!==void 0&&(m.minVolume=o),n!==void 0&&(m.change24h=n),i!==void 0&&(m.netFunding=i),l!==void 0&&(m.searchText=l),c!==void 0&&(m.sort=c),u!==void 0&&(m.excludeText=u),p!==void 0&&(m.active=p),C(g,m);let S=v&&v.headers?v.headers:{};return O.headers={...I,...S,...h.headers},{url:R(g),options:O}}}},pe=function(a){let e=Ot(a);return {async marketsControllerGetActiveMarket(t){let s=await e.marketsControllerGetActiveMarket(t),r=a?.serverIndex??0,o=y["MarketsApi.marketsControllerGetActiveMarket"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async marketsControllerGetMarketDataV2(t){let s=await e.marketsControllerGetMarketDataV2(t),r=a?.serverIndex??0,o=y["MarketsApi.marketsControllerGetMarketDataV2"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async marketsControllerGetMarkets(t,s,r,o,n,i,l,c,u,p,h,d){let g=await e.marketsControllerGetMarkets(t,s,r,o,n,i,l,c,u,p,h,d),v=a?.serverIndex??0,O=y["MarketsApi.marketsControllerGetMarkets"]?.[v]?.url;return (I,m)=>f(g,x,A,a)(I,O||m)}}},Gr=function(a,e,t){let s=pe(a);return {marketsControllerGetActiveMarket(r){return s.marketsControllerGetActiveMarket(r).then(o=>o(t,e))},marketsControllerGetMarketDataV2(r){return s.marketsControllerGetMarketDataV2(r).then(o=>o(t,e))},marketsControllerGetMarkets(r,o,n,i,l,c,u,p,h,d,g,v){return s.marketsControllerGetMarkets(r,o,n,i,l,c,u,p,h,d,g,v).then(O=>O(t,e))}}},Y=class extends V{marketsControllerGetActiveMarket(e){return pe(this.configuration).marketsControllerGetActiveMarket(e).then(t=>t(this.axios,this.basePath))}marketsControllerGetMarketDataV2(e){return pe(this.configuration).marketsControllerGetMarketDataV2(e).then(t=>t(this.axios,this.basePath))}marketsControllerGetMarkets(e,t,s,r,o,n,i,l,c,u,p,h){return pe(this.configuration).marketsControllerGetMarkets(e,t,s,r,o,n,i,l,c,u,p,h).then(d=>d(this.axios,this.basePath))}},St=function(a){return {notificationsControllerGetNotifications:async(e,t,s,r={})=>{let o="/notifications",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};await T(c,a),e!==void 0&&(u.limit=e),t!==void 0&&(u.startDate=t),s!==void 0&&(u.endDate=s),C(n,u);let p=i&&i.headers?i.headers:{};return l.headers={...c,...p,...r.headers},{url:R(n),options:l}},notificationsControllerMarkRead:async(e,t={})=>{D("notificationsControllerMarkRead","markNotificationsReadDto",e);let s="/notifications/read",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},Le=function(a){let e=St(a);return {async notificationsControllerGetNotifications(t,s,r,o){let n=await e.notificationsControllerGetNotifications(t,s,r,o),i=a?.serverIndex??0,l=y["NotificationsApi.notificationsControllerGetNotifications"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async notificationsControllerMarkRead(t,s){let r=await e.notificationsControllerMarkRead(t,s),o=a?.serverIndex??0,n=y["NotificationsApi.notificationsControllerMarkRead"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Ur=function(a,e,t){let s=Le(a);return {notificationsControllerGetNotifications(r,o,n,i){return s.notificationsControllerGetNotifications(r,o,n,i).then(l=>l(t,e))},notificationsControllerMarkRead(r,o){return s.notificationsControllerMarkRead(r,o).then(n=>n(t,e))}}},X=class extends V{notificationsControllerGetNotifications(e,t,s,r){return Le(this.configuration).notificationsControllerGetNotifications(e,t,s,r).then(o=>o(this.axios,this.basePath))}notificationsControllerMarkRead(e,t){return Le(this.configuration).notificationsControllerMarkRead(e,t).then(s=>s(this.axios,this.basePath))}},vt=function(a){return {ordersControllerCancelOrder:async(e,t={})=>{D("ordersControllerCancelOrder","orderId",e);let s="/orders/{orderId}/cancel".replace("{orderId}",encodeURIComponent(String(e))),r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"DELETE",...o,...t},i={},l={};await T(i,a),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},ordersControllerCancelTwapOrder:async(e,t={})=>{D("ordersControllerCancelTwapOrder","orderId",e);let s="/orders/{orderId}/twap/cancel".replace("{orderId}",encodeURIComponent(String(e))),r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},ordersControllerGetAllOrders:async(e,t,s,r,o={})=>{let n="/orders",i=new URL(n,P),l;a&&(l=a.baseOptions);let c={method:"GET",...l,...o},u={},p={};await T(u,a),e!==void 0&&(p.page=e),t!==void 0&&(p.limit=t),s!==void 0&&(p.status=s),r!==void 0&&(p.orderType=r),C(i,p);let h=l&&l.headers?l.headers:{};return c.headers={...u,...h,...o.headers},{url:R(i),options:c}},ordersControllerGetKalshiTriggers:async(e,t,s,r,o={})=>{let n="/orders/triggers/kalshi",i=new URL(n,P),l;a&&(l=a.baseOptions);let c={method:"GET",...l,...o},u={},p={};await T(u,a),e!==void 0&&(p.category=e),t!==void 0&&(p.search=t),s!==void 0&&(p.cursor=s),r!==void 0&&(p.pageSize=r),C(i,p);let h=l&&l.headers?l.headers:{};return c.headers={...u,...h,...o.headers},{url:R(i),options:c}},ordersControllerGetOpenOrders:async(e={})=>{let t="/orders/open",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},ordersControllerGetTriggers:async(e,t={})=>{let s="/orders/triggers",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.category=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},ordersControllerGetTwapOrders:async(e={})=>{let t="/orders/twap",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},ordersControllerSpotOrder:async(e,t={})=>{D("ordersControllerSpotOrder","spotOrderRequestDto",e);let s="/orders/spot",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},G=function(a){let e=vt(a);return {async ordersControllerCancelOrder(t,s){let r=await e.ordersControllerCancelOrder(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerCancelOrder"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async ordersControllerCancelTwapOrder(t,s){let r=await e.ordersControllerCancelTwapOrder(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerCancelTwapOrder"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async ordersControllerGetAllOrders(t,s,r,o,n){let i=await e.ordersControllerGetAllOrders(t,s,r,o,n),l=a?.serverIndex??0,c=y["OrdersApi.ordersControllerGetAllOrders"]?.[l]?.url;return (u,p)=>f(i,x,A,a)(u,c||p)},async ordersControllerGetKalshiTriggers(t,s,r,o,n){let i=await e.ordersControllerGetKalshiTriggers(t,s,r,o,n),l=a?.serverIndex??0,c=y["OrdersApi.ordersControllerGetKalshiTriggers"]?.[l]?.url;return (u,p)=>f(i,x,A,a)(u,c||p)},async ordersControllerGetOpenOrders(t){let s=await e.ordersControllerGetOpenOrders(t),r=a?.serverIndex??0,o=y["OrdersApi.ordersControllerGetOpenOrders"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async ordersControllerGetTriggers(t,s){let r=await e.ordersControllerGetTriggers(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerGetTriggers"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async ordersControllerGetTwapOrders(t){let s=await e.ordersControllerGetTwapOrders(t),r=a?.serverIndex??0,o=y["OrdersApi.ordersControllerGetTwapOrders"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async ordersControllerSpotOrder(t,s){let r=await e.ordersControllerSpotOrder(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerSpotOrder"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Hr=function(a,e,t){let s=G(a);return {ordersControllerCancelOrder(r,o){return s.ordersControllerCancelOrder(r,o).then(n=>n(t,e))},ordersControllerCancelTwapOrder(r,o){return s.ordersControllerCancelTwapOrder(r,o).then(n=>n(t,e))},ordersControllerGetAllOrders(r,o,n,i,l){return s.ordersControllerGetAllOrders(r,o,n,i,l).then(c=>c(t,e))},ordersControllerGetKalshiTriggers(r,o,n,i,l){return s.ordersControllerGetKalshiTriggers(r,o,n,i,l).then(c=>c(t,e))},ordersControllerGetOpenOrders(r){return s.ordersControllerGetOpenOrders(r).then(o=>o(t,e))},ordersControllerGetTriggers(r,o){return s.ordersControllerGetTriggers(r,o).then(n=>n(t,e))},ordersControllerGetTwapOrders(r){return s.ordersControllerGetTwapOrders(r).then(o=>o(t,e))},ordersControllerSpotOrder(r,o){return s.ordersControllerSpotOrder(r,o).then(n=>n(t,e))}}},L=class extends V{ordersControllerCancelOrder(e,t){return G(this.configuration).ordersControllerCancelOrder(e,t).then(s=>s(this.axios,this.basePath))}ordersControllerCancelTwapOrder(e,t){return G(this.configuration).ordersControllerCancelTwapOrder(e,t).then(s=>s(this.axios,this.basePath))}ordersControllerGetAllOrders(e,t,s,r,o){return G(this.configuration).ordersControllerGetAllOrders(e,t,s,r,o).then(n=>n(this.axios,this.basePath))}ordersControllerGetKalshiTriggers(e,t,s,r,o){return G(this.configuration).ordersControllerGetKalshiTriggers(e,t,s,r,o).then(n=>n(this.axios,this.basePath))}ordersControllerGetOpenOrders(e){return G(this.configuration).ordersControllerGetOpenOrders(e).then(t=>t(this.axios,this.basePath))}ordersControllerGetTriggers(e,t){return G(this.configuration).ordersControllerGetTriggers(e,t).then(s=>s(this.axios,this.basePath))}ordersControllerGetTwapOrders(e){return G(this.configuration).ordersControllerGetTwapOrders(e).then(t=>t(this.axios,this.basePath))}ordersControllerSpotOrder(e,t){return G(this.configuration).ordersControllerSpotOrder(e,t).then(s=>s(this.axios,this.basePath))}},_r={Open:"OPEN",Processing:"PROCESSING",Executed:"EXECUTED",Cancelled:"CANCELLED",Failed:"FAILED",PartiallyFilled:"PARTIALLY_FILLED"},Fr={Sync:"SYNC",Market:"MARKET",Trigger:"TRIGGER",Twap:"TWAP",Ladder:"LADDER",Tp:"TP",Sl:"SL",SpotMarket:"SPOT_MARKET",SpotLimit:"SPOT_LIMIT",SpotTwap:"SPOT_TWAP"},Br={PredictionMarket:"prediction_market",Btcdom:"btcdom",All:"all"},wt=function(a){return {portfolioControllerGetAnalytics:async(e,t,s,r,o,n={})=>{let i="/portfolio/analytics",l=new URL(i,P),c;a&&(c=a.baseOptions);let u={method:"GET",...c,...n},p={},h={};await T(p,a),e!==void 0&&(h.startDate=e),t!==void 0&&(h.endDate=t),s!==void 0&&(h.interval=s),r!==void 0&&(h.rollingWindowDays=r),o!==void 0&&(h.includeSeries=o),C(l,h);let d=c&&c.headers?c.headers:{};return u.headers={...p,...d,...n.headers},{url:R(l),options:u}},portfolioControllerGetPortfolio:async(e,t,s={})=>{let r="/portfolio",o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"GET",...n,...s},l={},c={};await T(l,a),e!==void 0&&(c.startDate=e),t!==void 0&&(c.endDate=t),C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},{url:R(o),options:i}}}},Me=function(a){let e=wt(a);return {async portfolioControllerGetAnalytics(t,s,r,o,n,i){let l=await e.portfolioControllerGetAnalytics(t,s,r,o,n,i),c=a?.serverIndex??0,u=y["PortfolioApi.portfolioControllerGetAnalytics"]?.[c]?.url;return (p,h)=>f(l,x,A,a)(p,u||h)},async portfolioControllerGetPortfolio(t,s,r){let o=await e.portfolioControllerGetPortfolio(t,s,r),n=a?.serverIndex??0,i=y["PortfolioApi.portfolioControllerGetPortfolio"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)}}},Nr=function(a,e,t){let s=Me(a);return {portfolioControllerGetAnalytics(r,o,n,i,l,c){return s.portfolioControllerGetAnalytics(r,o,n,i,l,c).then(u=>u(t,e))},portfolioControllerGetPortfolio(r,o,n){return s.portfolioControllerGetPortfolio(r,o,n).then(i=>i(t,e))}}},ge=class extends V{portfolioControllerGetAnalytics(e,t,s,r,o,n){return Me(this.configuration).portfolioControllerGetAnalytics(e,t,s,r,o,n).then(i=>i(this.axios,this.basePath))}portfolioControllerGetPortfolio(e,t,s){return Me(this.configuration).portfolioControllerGetPortfolio(e,t,s).then(r=>r(this.axios,this.basePath))}},jr={_1d:"1d",_1w:"1w",_1m:"1m",_1y:"1y",All:"all"},It=function(a){return {positionsControllerAdjustAdvancePosition:async(e,t,s={})=>{D("positionsControllerAdjustAdvancePosition","positionId",e),D("positionsControllerAdjustAdvancePosition","adjustAdvanceItemDto",t);let r="/positions/{positionId}/adjust-advance".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerAdjustLeverage:async(e,t,s={})=>{D("positionsControllerAdjustLeverage","positionId",e),D("positionsControllerAdjustLeverage","adjustLeverageRequestDto",t);let r="/positions/{positionId}/adjust-leverage".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerAdjustPosition:async(e,t,s={})=>{D("positionsControllerAdjustPosition","positionId",e),D("positionsControllerAdjustPosition","adjustPositionRequestDto",t);let r="/positions/{positionId}/adjust".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerCloseAllPositions:async(e,t={})=>{D("positionsControllerCloseAllPositions","closePositionRequestDto",e);let s="/positions/close-all",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},positionsControllerClosePosition:async(e,t,s={})=>{D("positionsControllerClosePosition","positionId",e),D("positionsControllerClosePosition","closePositionRequestDto",t);let r="/positions/{positionId}/close".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerCreatePosition:async(e,t={})=>{D("positionsControllerCreatePosition","createPositionRequestDto",e);let s="/positions",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},positionsControllerGetOpenPositions:async(e={})=>{let t="/positions",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},positionsControllerPlanRebalance:async(e,t,s={})=>{D("positionsControllerPlanRebalance","positionId",e),D("positionsControllerPlanRebalance","rebalancePositionRequestDto",t);let r="/positions/{positionId}/rebalance/plan".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerRebalancePosition:async(e,t,s={})=>{D("positionsControllerRebalancePosition","positionId",e),D("positionsControllerRebalancePosition","rebalancePositionRequestDto",t);let r="/positions/{positionId}/rebalance".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerUpdateRiskParameters:async(e,t,s={})=>{D("positionsControllerUpdateRiskParameters","positionId",e),D("positionsControllerUpdateRiskParameters","updateRiskParametersRequestDto",t);let r="/positions/{positionId}/riskParameters".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"PUT",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}}}},q=function(a){let e=It(a);return {async positionsControllerAdjustAdvancePosition(t,s,r){let o=await e.positionsControllerAdjustAdvancePosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerAdjustAdvancePosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerAdjustLeverage(t,s,r){let o=await e.positionsControllerAdjustLeverage(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerAdjustLeverage"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerAdjustPosition(t,s,r){let o=await e.positionsControllerAdjustPosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerAdjustPosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerCloseAllPositions(t,s){let r=await e.positionsControllerCloseAllPositions(t,s),o=a?.serverIndex??0,n=y["PositionsApi.positionsControllerCloseAllPositions"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async positionsControllerClosePosition(t,s,r){let o=await e.positionsControllerClosePosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerClosePosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerCreatePosition(t,s){let r=await e.positionsControllerCreatePosition(t,s),o=a?.serverIndex??0,n=y["PositionsApi.positionsControllerCreatePosition"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async positionsControllerGetOpenPositions(t){let s=await e.positionsControllerGetOpenPositions(t),r=a?.serverIndex??0,o=y["PositionsApi.positionsControllerGetOpenPositions"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async positionsControllerPlanRebalance(t,s,r){let o=await e.positionsControllerPlanRebalance(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerPlanRebalance"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerRebalancePosition(t,s,r){let o=await e.positionsControllerRebalancePosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerRebalancePosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerUpdateRiskParameters(t,s,r){let o=await e.positionsControllerUpdateRiskParameters(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerUpdateRiskParameters"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)}}},Kr=function(a,e,t){let s=q(a);return {positionsControllerAdjustAdvancePosition(r,o,n){return s.positionsControllerAdjustAdvancePosition(r,o,n).then(i=>i(t,e))},positionsControllerAdjustLeverage(r,o,n){return s.positionsControllerAdjustLeverage(r,o,n).then(i=>i(t,e))},positionsControllerAdjustPosition(r,o,n){return s.positionsControllerAdjustPosition(r,o,n).then(i=>i(t,e))},positionsControllerCloseAllPositions(r,o){return s.positionsControllerCloseAllPositions(r,o).then(n=>n(t,e))},positionsControllerClosePosition(r,o,n){return s.positionsControllerClosePosition(r,o,n).then(i=>i(t,e))},positionsControllerCreatePosition(r,o){return s.positionsControllerCreatePosition(r,o).then(n=>n(t,e))},positionsControllerGetOpenPositions(r){return s.positionsControllerGetOpenPositions(r).then(o=>o(t,e))},positionsControllerPlanRebalance(r,o,n){return s.positionsControllerPlanRebalance(r,o,n).then(i=>i(t,e))},positionsControllerRebalancePosition(r,o,n){return s.positionsControllerRebalancePosition(r,o,n).then(i=>i(t,e))},positionsControllerUpdateRiskParameters(r,o,n){return s.positionsControllerUpdateRiskParameters(r,o,n).then(i=>i(t,e))}}},E=class extends V{positionsControllerAdjustAdvancePosition(e,t,s){return q(this.configuration).positionsControllerAdjustAdvancePosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerAdjustLeverage(e,t,s){return q(this.configuration).positionsControllerAdjustLeverage(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerAdjustPosition(e,t,s){return q(this.configuration).positionsControllerAdjustPosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerCloseAllPositions(e,t){return q(this.configuration).positionsControllerCloseAllPositions(e,t).then(s=>s(this.axios,this.basePath))}positionsControllerClosePosition(e,t,s){return q(this.configuration).positionsControllerClosePosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerCreatePosition(e,t){return q(this.configuration).positionsControllerCreatePosition(e,t).then(s=>s(this.axios,this.basePath))}positionsControllerGetOpenPositions(e){return q(this.configuration).positionsControllerGetOpenPositions(e).then(t=>t(this.axios,this.basePath))}positionsControllerPlanRebalance(e,t,s){return q(this.configuration).positionsControllerPlanRebalance(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerRebalancePosition(e,t,s){return q(this.configuration).positionsControllerRebalancePosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerUpdateRiskParameters(e,t,s){return q(this.configuration).positionsControllerUpdateRiskParameters(e,t,s).then(r=>r(this.axios,this.basePath))}},Vt=function(a){return {publicStatsControllerGetAddressStats:async(e,t,s={})=>{D("publicStatsControllerGetAddressStats","addresses",e);let r="/public-stats/address",o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"GET",...n,...s},l={},c={};e!==void 0&&(c.addresses=e),t!==void 0&&(c.startFrom=t),C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},{url:R(o),options:i}}}},rt=function(a){let e=Vt(a);return {async publicStatsControllerGetAddressStats(t,s,r){let o=await e.publicStatsControllerGetAddressStats(t,s,r),n=a?.serverIndex??0,i=y["PublicStatsApi.publicStatsControllerGetAddressStats"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)}}},zr=function(a,e,t){let s=rt(a);return {publicStatsControllerGetAddressStats(r,o,n){return s.publicStatsControllerGetAddressStats(r,o,n).then(i=>i(t,e))}}},me=class extends V{publicStatsControllerGetAddressStats(e,t,s){return rt(this.configuration).publicStatsControllerGetAddressStats(e,t,s).then(r=>r(this.axios,this.basePath))}},kt=function(a){return {syncControllerSyncFills:async(e,t={})=>{D("syncControllerSyncFills","syncFillsRequestDto",e);let s="/sync/fills",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},st=function(a){let e=kt(a);return {async syncControllerSyncFills(t,s){let r=await e.syncControllerSyncFills(t,s),o=a?.serverIndex??0,n=y["SyncApi.syncControllerSyncFills"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Qr=function(a,e,t){let s=st(a);return {syncControllerSyncFills(r,o){return s.syncControllerSyncFills(r,o).then(n=>n(t,e))}}},Ae=class extends V{syncControllerSyncFills(e,t){return st(this.configuration).syncControllerSyncFills(e,t).then(s=>s(this.axios,this.basePath))}},Et=function(a){return {tradeHistoryControllerGetTradeHistory:async(e,t,s,r={})=>{let o="/trade-history",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};await T(c,a),e!==void 0&&(u.limit=e),t!==void 0&&(u.startDate=t),s!==void 0&&(u.endDate=s),C(n,u);let p=i&&i.headers?i.headers:{};return l.headers={...c,...p,...r.headers},{url:R(n),options:l}}}},ot=function(a){let e=Et(a);return {async tradeHistoryControllerGetTradeHistory(t,s,r,o){let n=await e.tradeHistoryControllerGetTradeHistory(t,s,r,o),i=a?.serverIndex??0,l=y["TradeHistoryApi.tradeHistoryControllerGetTradeHistory"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)}}},$r=function(a,e,t){let s=ot(a);return {tradeHistoryControllerGetTradeHistory(r,o,n,i){return s.tradeHistoryControllerGetTradeHistory(r,o,n,i).then(l=>l(t,e))}}},ye=class extends V{tradeHistoryControllerGetTradeHistory(e,t,s,r){return ot(this.configuration).tradeHistoryControllerGetTradeHistory(e,t,s,r).then(o=>o(this.axios,this.basePath))}},qt=function(a){return {vaultWalletControllerCreateVaultWallet:async(e,t={})=>{D("vaultWalletControllerCreateVaultWallet","createVaultWalletRequestDto",e);let s="/vault-wallet",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},vaultWalletControllerDeleteVaultWallet:async(e,t={})=>{D("vaultWalletControllerDeleteVaultWallet","vaultAddress",e);let s="/vault-wallet",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"DELETE",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.vaultAddress=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},vaultWalletControllerGetAllVaultWallets:async(e,t,s={})=>{let r="/vault-wallet/all",o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"GET",...n,...s},l={},c={};await T(l,a),e!==void 0&&(c.name=e),t!==void 0&&(c.address=t),C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},{url:R(o),options:i}},vaultWalletControllerGetBalances:async(e={})=>{let t="/vault-wallet/balances",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},vaultWalletControllerGetVaultWallet:async(e,t={})=>{D("vaultWalletControllerGetVaultWallet","vaultAddress",e);let s="/vault-wallet",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.vaultAddress=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},vaultWalletControllerRefreshApiForVault:async(e,t={})=>{D("vaultWalletControllerRefreshApiForVault","vaultAddress",e);let s="/vault-wallet/refreshAPIforVault",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.vaultAddress=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},vaultWalletControllerSwapAndTransferToPerp:async(e,t={})=>{D("vaultWalletControllerSwapAndTransferToPerp","swapAndTransferRequestDto",e);let s="/vault-wallet/swap-and-transfer",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},vaultWalletControllerTransferPerpToSpot:async(e,t={})=>{D("vaultWalletControllerTransferPerpToSpot","transferPerpToSpotRequestDto",e);let s="/vault-wallet/perp-to-spot",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},vaultWalletControllerTransferSpotToPerp:async(e,t={})=>{D("vaultWalletControllerTransferSpotToPerp","transferSpotToPerpRequestDto",e);let s="/vault-wallet/spot-to-perp",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},M=function(a){let e=qt(a);return {async vaultWalletControllerCreateVaultWallet(t,s){let r=await e.vaultWalletControllerCreateVaultWallet(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerCreateVaultWallet"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerDeleteVaultWallet(t,s){let r=await e.vaultWalletControllerDeleteVaultWallet(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerDeleteVaultWallet"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerGetAllVaultWallets(t,s,r){let o=await e.vaultWalletControllerGetAllVaultWallets(t,s,r),n=a?.serverIndex??0,i=y["VaultWalletApi.vaultWalletControllerGetAllVaultWallets"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async vaultWalletControllerGetBalances(t){let s=await e.vaultWalletControllerGetBalances(t),r=a?.serverIndex??0,o=y["VaultWalletApi.vaultWalletControllerGetBalances"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async vaultWalletControllerGetVaultWallet(t,s){let r=await e.vaultWalletControllerGetVaultWallet(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerGetVaultWallet"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerRefreshApiForVault(t,s){let r=await e.vaultWalletControllerRefreshApiForVault(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerRefreshApiForVault"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerSwapAndTransferToPerp(t,s){let r=await e.vaultWalletControllerSwapAndTransferToPerp(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerSwapAndTransferToPerp"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerTransferPerpToSpot(t,s){let r=await e.vaultWalletControllerTransferPerpToSpot(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerTransferPerpToSpot"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerTransferSpotToPerp(t,s){let r=await e.vaultWalletControllerTransferSpotToPerp(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerTransferSpotToPerp"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Yr=function(a,e,t){let s=M(a);return {vaultWalletControllerCreateVaultWallet(r,o){return s.vaultWalletControllerCreateVaultWallet(r,o).then(n=>n(t,e))},vaultWalletControllerDeleteVaultWallet(r,o){return s.vaultWalletControllerDeleteVaultWallet(r,o).then(n=>n(t,e))},vaultWalletControllerGetAllVaultWallets(r,o,n){return s.vaultWalletControllerGetAllVaultWallets(r,o,n).then(i=>i(t,e))},vaultWalletControllerGetBalances(r){return s.vaultWalletControllerGetBalances(r).then(o=>o(t,e))},vaultWalletControllerGetVaultWallet(r,o){return s.vaultWalletControllerGetVaultWallet(r,o).then(n=>n(t,e))},vaultWalletControllerRefreshApiForVault(r,o){return s.vaultWalletControllerRefreshApiForVault(r,o).then(n=>n(t,e))},vaultWalletControllerSwapAndTransferToPerp(r,o){return s.vaultWalletControllerSwapAndTransferToPerp(r,o).then(n=>n(t,e))},vaultWalletControllerTransferPerpToSpot(r,o){return s.vaultWalletControllerTransferPerpToSpot(r,o).then(n=>n(t,e))},vaultWalletControllerTransferSpotToPerp(r,o){return s.vaultWalletControllerTransferSpotToPerp(r,o).then(n=>n(t,e))}}},Xe=class extends V{vaultWalletControllerCreateVaultWallet(e,t){return M(this.configuration).vaultWalletControllerCreateVaultWallet(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerDeleteVaultWallet(e,t){return M(this.configuration).vaultWalletControllerDeleteVaultWallet(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerGetAllVaultWallets(e,t,s){return M(this.configuration).vaultWalletControllerGetAllVaultWallets(e,t,s).then(r=>r(this.axios,this.basePath))}vaultWalletControllerGetBalances(e){return M(this.configuration).vaultWalletControllerGetBalances(e).then(t=>t(this.axios,this.basePath))}vaultWalletControllerGetVaultWallet(e,t){return M(this.configuration).vaultWalletControllerGetVaultWallet(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerRefreshApiForVault(e,t){return M(this.configuration).vaultWalletControllerRefreshApiForVault(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerSwapAndTransferToPerp(e,t){return M(this.configuration).vaultWalletControllerSwapAndTransferToPerp(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerTransferPerpToSpot(e,t){return M(this.configuration).vaultWalletControllerTransferPerpToSpot(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerTransferSpotToPerp(e,t){return M(this.configuration).vaultWalletControllerTransferSpotToPerp(e,t).then(s=>s(this.axios,this.basePath))}},Lt=function(a){return {watchlistControllerGetWatchlist:async(e={})=>{let t="/watchlist",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},watchlistControllerToggle:async(e,t={})=>{D("watchlistControllerToggle","toggleWatchlistDto",e);let s="/watchlist",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},We=function(a){let e=Lt(a);return {async watchlistControllerGetWatchlist(t){let s=await e.watchlistControllerGetWatchlist(t),r=a?.serverIndex??0,o=y["WatchlistApi.watchlistControllerGetWatchlist"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async watchlistControllerToggle(t,s){let r=await e.watchlistControllerToggle(t,s),o=a?.serverIndex??0,n=y["WatchlistApi.watchlistControllerToggle"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Xr=function(a,e,t){let s=We(a);return {watchlistControllerGetWatchlist(r){return s.watchlistControllerGetWatchlist(r).then(o=>o(t,e))},watchlistControllerToggle(r,o){return s.watchlistControllerToggle(r,o).then(n=>n(t,e))}}},J=class extends V{watchlistControllerGetWatchlist(e){return We(this.configuration).watchlistControllerGetWatchlist(e).then(t=>t(this.axios,this.basePath))}watchlistControllerToggle(e,t){return We(this.configuration).watchlistControllerToggle(e,t).then(s=>s(this.axios,this.basePath))}};var Pe=class{constructor(e={}){this.apiKey=e.apiKey,this.username=e.username,this.password=e.password,this.accessToken=e.accessToken,this.basePath=e.basePath,this.serverIndex=e.serverIndex,this.baseOptions={...e.baseOptions,headers:{...e.baseOptions?.headers}},this.formDataCtor=e.formDataCtor;}isJsonMime(e){let t=new RegExp("^(application/json|[^;/ ]+/[^;/ ]+[+]json)[ ]*(;.*)?$","i");return e!==null&&(t.test(e)||e.toLowerCase()==="application/json-patch+json")}};var Wt="https://hl-v2.pearprotocol.io",Z=class{constructor(e){this.accessToken=null;this.refreshToken=null;this.isRefreshing=false;this.pendingRequests=[];this.public={auth:{login:async e=>{let t=await this.api(U).authControllerAuthenticate(e);return this.accessToken=t.data.accessToken,this.refreshToken=t.data.refreshToken,this.onTokenRefreshed?.(t.data.accessToken,t.data.refreshToken),t},getEIP712Message:(e,t,s)=>this.api(U).authControllerGetEIP712Message(e,t,s),refresh:async e=>{let t=await this.api(U).authControllerRefreshToken(e);return this.accessToken=t.data.accessToken,this.refreshToken=t.data.refreshToken,this.onTokenRefreshed?.(t.data.accessToken,t.data.refreshToken),t},logout:async e=>{let t=await this.api(U).authControllerLogout(e);return this.clearTokens(),this.onLogout?.(),t}},fills:{list:e=>this.api(he).fillsControllerGetFills(e?.address,e?.assetName,e?.clientId,e?.isPearTrade,e?.startTime,e?.endTime)},markets:{list:e=>this.api(Y).marketsControllerGetMarkets(e?.offset,e?.page,e?.pageSize,e?.engine,e?.minVolume,e?.change24h,e?.netFunding,e?.searchText,e?.sort,e?.excludeText,e?.active),active:()=>this.api(Y).marketsControllerGetActiveMarket()},stats:{addressStats:(e,t)=>this.api(me).publicStatsControllerGetAddressStats(e,t)}};this.private={accounts:{summary:()=>this.api(de).accountsControllerGetAccountSummary()},agentWallet:{get:()=>this.api($).agentWalletControllerGetAgentWallet(),create:()=>this.api($).agentWalletControllerCreateAgentWallet()},apiKeys:{list:()=>this.api(Q).apiKeysControllerGetUserApiKeys(),create:e=>this.api(Q).apiKeysControllerCreateApiKey(e)},notifications:{list:e=>this.api(X).notificationsControllerGetNotifications(e?.limit,e?.startDate,e?.endDate),markRead:e=>this.api(X).notificationsControllerMarkRead(e)},orders:{list:e=>this.api(L).ordersControllerGetAllOrders(e?.page,e?.limit,e?.status,e?.orderType),open:()=>this.api(L).ordersControllerGetOpenOrders(),twap:()=>this.api(L).ordersControllerGetTwapOrders(),cancel:e=>this.api(L).ordersControllerCancelOrder(e),cancelTwap:e=>this.api(L).ordersControllerCancelTwapOrder(e),spot:e=>this.api(L).ordersControllerSpotOrder(e),triggers:e=>this.api(L).ordersControllerGetTriggers(e?.category),kalshiTriggers:e=>this.api(L).ordersControllerGetKalshiTriggers(e?.category,e?.search,e?.cursor,e?.pageSize)},portfolio:{get:()=>this.api(ge).portfolioControllerGetPortfolio()},positions:{list:()=>this.api(E).positionsControllerGetOpenPositions(),create:e=>this.api(E).positionsControllerCreatePosition(e),close:(e,t)=>this.api(E).positionsControllerClosePosition(e,t),closeAll:e=>this.api(E).positionsControllerCloseAllPositions(e),adjust:(e,t)=>this.api(E).positionsControllerAdjustPosition(e,t),adjustAdvance:(e,t)=>this.api(E).positionsControllerAdjustAdvancePosition(e,t),adjustLeverage:(e,t)=>this.api(E).positionsControllerAdjustLeverage(e,t),updateRiskParameters:(e,t)=>this.api(E).positionsControllerUpdateRiskParameters(e,t),planRebalance:(e,t)=>this.api(E).positionsControllerPlanRebalance(e,t),rebalance:(e,t)=>this.api(E).positionsControllerRebalancePosition(e,t)},sync:{fills:e=>this.api(Ae).syncControllerSyncFills(e)},tradeHistory:{list:e=>this.api(ye).tradeHistoryControllerGetTradeHistory(e?.limit,e?.startDate,e?.endDate)},watchlist:{get:()=>this.api(J).watchlistControllerGetWatchlist(),toggle:e=>this.api(J).watchlistControllerToggle(e)}};this.basePath=e?.basePath??Wt,this.onTokenRefreshed=e?.onTokenRefreshed,this.onLogout=e?.onLogout,this.axiosInstance=x.create(),this.setupInterceptors();}setupInterceptors(){this.axiosInstance.interceptors.request.use(e=>(this.accessToken&&(e.headers=e.headers??{},e.headers.Authorization=`Bearer ${this.accessToken}`),e)),this.axiosInstance.interceptors.response.use(e=>e,async e=>{let t=e.config;if(((e.response?.status??0)!==401||!t)&&this.transformError(e),t.url?.includes("/auth/refresh")&&(this.clearTokens(),this.onLogout?.(),this.transformError(e)),t._retry&&(this.clearTokens(),this.onLogout?.(),this.transformError(e)),t._retry=true,this.isRefreshing)return new Promise((r,o)=>{this.pendingRequests.push(n=>{if(!n)try{this.transformError(e);}catch(i){return o(i)}t.headers=t.headers??{},t.headers.Authorization=`Bearer ${n}`,r(this.axiosInstance.request(t));});});this.isRefreshing=true;try{if(!this.refreshToken)throw new Error("No refresh token available");let{data:r}=await new U(this.createConfig()).authControllerRefreshToken({refreshToken:this.refreshToken});return this.accessToken=r.accessToken,this.refreshToken=r.refreshToken,this.onTokenRefreshed?.(r.accessToken,r.refreshToken),this.resolvePendingRequests(r.accessToken),t.headers=t.headers??{},t.headers.Authorization=`Bearer ${r.accessToken}`,this.axiosInstance.request(t)}catch(r){this.resolvePendingRequests(null),this.clearTokens(),this.onLogout?.(),this.transformError(r);}finally{this.isRefreshing=false;}});}resolvePendingRequests(e){this.pendingRequests.forEach(t=>t(e)),this.pendingRequests=[];}clearTokens(){this.accessToken=null,this.refreshToken=null;}transformError(e){if(e.response){let{status:t,data:s}=e.response,r=s?.message??e.message,o=s?.code??"UNKNOWN";throw new j(r,t,o,e)}throw new j(e.message??"Network error",0,"NETWORK_ERROR",e)}createConfig(){return new Pe({basePath:this.basePath})}api(e){return new e(this.createConfig(),this.basePath,this.axiosInstance)}setAccessToken(e){this.accessToken=e;}setRefreshToken(e){this.refreshToken=e;}setTokens(e,t){this.accessToken=e,this.refreshToken=t;}getAccessToken(){return this.accessToken}getRefreshToken(){return this.refreshToken}};var H=(a,e)=>`${a}-${e}`,Ge=a=>{switch(a){case "1m":return 60;case "3m":return 180;case "5m":return 300;case "15m":return 900;case "30m":return 1800;case "1h":return 3600;case "2h":return 7200;case "4h":return 14400;case "8h":return 28800;case "12h":return 43200;case "1d":return 86400;case "3d":return 259200;case "1w":return 604800;case "1M":return 2592e3}},nt=(a,e)=>{let t=[...a,e].sort((r,o)=>r.start-o.start),s=[];for(let r of t){let o=s[s.length-1];s.length===0||!o||r.start>o.end?s.push({start:r.start,end:r.end}):o.end=Math.max(o.end,r.end);}return s},_=a=>{let e={};for(let[t,s]of Object.entries(a)){let r=new Map;for(let o of s)r.set(o.t,o);e[t]=r;}return e},F=(a,e)=>{if(e.length===0)return [];let t,s,r=1/0;for(let n of e){let i=a[n],l=i?.size??0;if(l===0)return [];l<r&&(r=l,t=n,s=i);}if(!s||!t)return [];let o=[];for(let n of Array.from(s.keys())){let i=true;for(let l of e){if(l===t)continue;let c=a[l];if(!c||!c.has(n)){i=false;break}}i&&o.push(n);}return o.sort((n,i)=>n-i),o};var ee=class{constructor(){this.historicalPriceData={};this.loadingTokens=new Set;}addLoadingToken(e){this.loadingTokens.add(e);}removeLoadingToken(e){this.loadingTokens.delete(e);}addHistoricalPriceData(e,t,s,r){let o=H(e,t),n=this.historicalPriceData[o];if(!n){let g=[...s].sort((O,I)=>O.t-I.t),v=g.length===0?r.end:null;this.historicalPriceData[o]={symbol:e,interval:t,candles:g,oldestTime:g.length>0?g[0]?.t??null:null,latestTime:g.length>0?g[g.length-1]?.t??null:null,requestedRanges:[r],noDataBefore:v};return}let i=new Set(n.candles.map(g=>g.t)),l=s.filter(g=>!i.has(g.t)),c=[...n.candles,...l].sort((g,v)=>g.t-v.t),u=c.length>0?c[0]?.t??null:null,p=c.length>0?c[c.length-1]?.t??null:null,h=nt(n.requestedRanges,r),d=n.noDataBefore;s.length===0&&n.oldestTime!==null&&r.end<=n.oldestTime&&(d=n.oldestTime),this.historicalPriceData[o]={...n,candles:c,oldestTime:u,latestTime:p,requestedRanges:h,noDataBefore:d};}hasData(e,t,s,r){let o=H(e,t),n=this.historicalPriceData[o];if(!n)return false;if(n.noDataBefore!==null&&r<=n.noDataBefore)return true;for(let u of n.requestedRanges)if(u.start<=s&&u.end>=r)return true;if(n.oldestTime===null||n.latestTime===null)return false;let i=Ge(t)*1e3,l=n.oldestTime<=s,c=n.latestTime>=r||n.latestTime+i>=r;return l&&c}getData(e,t,s,r){let o=H(e,t),n=this.historicalPriceData[o];return n?n.candles.filter(i=>i.t>=s&&i.t<r):[]}getEffectiveBoundary(e,t){if(e.length===0)return null;let s=null;for(let r of e){let o=H(r,t),n=this.historicalPriceData[o];if(!n)continue;let i=n.noDataBefore??n.oldestTime;i!==null&&(s===null||i>s)&&(s=i);}return s}getLatestCandle(e,t){let s=H(e,t),r=this.historicalPriceData[s];return !r||r.candles.length===0?null:r.candles[r.candles.length-1]??null}removeToken(e,t){let s=H(e,t);delete this.historicalPriceData[s],this.loadingTokens.delete(e);}clear(){this.historicalPriceData={},this.loadingTokens=new Set;}};var te=class{constructor(e,t){this.handlerId=null;this.subscribedKeys=new Set;this.ws=e,this.onCandle=t;}start(){this.handlerId||(this.handlerId=this.ws.addChannelHandler("candle",e=>{let t=this.parsePayload(e);t&&this.onCandle(t.symbol,t.candle);}));}stop(){this.handlerId&&(this.ws.removeChannelHandler("candle",this.handlerId),this.handlerId=null);for(let e of this.subscribedKeys){let[t,s]=e.split("::");this.ws.unsubscribe(e);}this.subscribedKeys.clear();}subscribe(e,t){let s=`${e}::${t}`;this.subscribedKeys.has(s)||(this.subscribedKeys.add(s),this.ws.subscribe(s,{type:"candle",coin:e,interval:t}));}onHistoricalDataFetched(e,t,s){}unsubscribe(e,t){let s=`${e}::${t}`;this.subscribedKeys.has(s)&&(this.subscribedKeys.delete(s),this.ws.unsubscribe(s));}parsePayload(e){return !e||!e.s?null:{symbol:e.s,candle:{s:e.s,t:e.t,T:e.T,o:Number(e.o),h:Number(e.h),l:Number(e.l),c:Number(e.c)}}}};async function Ue(a,e,t,s){let r={req:{coin:a,startTime:e,endTime:t,interval:s},type:"candleSnapshot"},{data:o}=await x.post("https://api.hyperliquid.xyz/info",r);return o}var re=class{constructor(e){this.prevTokenSymbols=new Set;this.prevInterval=null;this.candleWs=null;this.latestCandles=new Map;this.realtimeListeners=new Map;this.cache=new ee;this.ws=e.ws,this.longTokens=e.longTokens??[],this.shortTokens=e.shortTokens??[],this.candleInterval=e.candleInterval??"1h",this.syncTokenChanges();}setTokens(e,t){this.longTokens=e,this.shortTokens=t,this.syncWsSubscriptions(),this.syncTokenChanges();}setCandleInterval(e){let t=this.candleInterval;if(this.candleInterval=e,this.syncTokenChanges(),this.candleWs&&t!==e){for(let s of this.prevTokenSymbols)this.candleWs.unsubscribe(s,t);this.latestCandles.clear();for(let s of this.prevTokenSymbols)this.candleWs.subscribe(s,e);}}attachCandleWs(){if(!this.candleWs){this.candleWs=new te(this.ws,(e,t)=>{this.latestCandles.set(e,t);for(let s of this.realtimeListeners.values())try{s(e,t);}catch(r){console.warn("Error in realtime listener callback",r);}}),this.candleWs.start();for(let e of this.getAllTokens()){let t=this.cache.getLatestCandle(e.symbol,this.candleInterval);t&&!this.latestCandles.has(e.symbol)&&this.latestCandles.set(e.symbol,t),this.candleWs.subscribe(e.symbol,this.candleInterval);}}}detachCandleWs(){this.candleWs&&(this.candleWs.stop(),this.candleWs=null);}get isWsAttached(){return this.candleWs!==null}addRealtimeListener(e,t){this.realtimeListeners.set(e,t);}removeRealtimeListener(e){this.realtimeListeners.delete(e);}getLatestCandles(){let e=this.getAllTokens();if(e.length===0)return null;let t={};for(let s of e){let r=this.latestCandles.get(s.symbol);if(!r)return null;t[s.symbol]=r;}return t}getLongTokens(){return this.longTokens}getShortTokens(){return this.shortTokens}getCandleInterval(){return this.candleInterval}getEffectiveDataBoundary(e){let t=this.getAllTokens().map(s=>s.symbol);return this.cache.getEffectiveBoundary(t,e)}clearCache(){this.cache.clear(),this.latestCandles.clear();}async fetchHistoricalPriceData(e,t,s,r){let o=this.getAllTokens();if(o.length===0){let i={};return r?.(i),i}let n=o.filter(i=>!this.cache.hasData(i.symbol,s,e,t));if(n.length===0){let i=this.getHistoricalPriceData(e,t,s);return r?.(i),i}for(let i of n)this.cache.addLoadingToken(i.symbol);try{let i=n.map(async c=>{try{let u=await Ue(c.symbol,e,t,s);return this.cache.addHistoricalPriceData(c.symbol,s,u,{start:e,end:t}),u.length>0&&!this.latestCandles.has(c.symbol)&&this.latestCandles.set(c.symbol,u[u.length-1]),{symbol:c.symbol,candles:u,success:!0}}catch(u){return console.warn(`Failed to fetch historical data for ${c.symbol}:`,u),{symbol:c.symbol,candles:[],success:!1}}});await Promise.all(i);let l=this.getHistoricalPriceData(e,t,s);return r?.(l),l}catch(i){throw console.error("Failed to fetch historical data:",i),i}finally{for(let i of n)this.cache.removeLoadingToken(i.symbol);}}destroy(){this.detachCandleWs(),this.realtimeListeners.clear(),this.latestCandles.clear(),this.cache.clear();}getAllTokens(){return [...this.longTokens,...this.shortTokens]}syncTokenChanges(){let e=new Set(this.getAllTokens().map(t=>t.symbol));if(this.prevInterval!==null&&this.prevInterval!==this.candleInterval){this.cache.clear(),this.prevTokenSymbols=e,this.prevInterval=this.candleInterval;return}for(let t of this.prevTokenSymbols)e.has(t)||this.cache.removeToken(t,this.candleInterval);this.prevTokenSymbols=e,this.prevInterval=this.candleInterval;}getHistoricalPriceData(e,t,s){let r=this.getAllTokens(),o={};for(let n of r)o[n.symbol]=this.cache.getData(n.symbol,s,e,t);return o}syncWsSubscriptions(){if(!this.candleWs)return;let e=new Set(this.getAllTokens().map(t=>t.symbol));for(let t of this.prevTokenSymbols)e.has(t)||(this.candleWs.unsubscribe(t,this.candleInterval),this.latestCandles.delete(t));if(e.size===0){this.detachCandleWs(),this.latestCandles.clear();return}for(let t of e)this.candleWs.subscribe(t,this.candleInterval);}};function Ce(a,e){let t=a[e];return t?t.map(s=>({time:s.t,open:s.o,high:s.h,low:s.l,close:s.c})):[]}function Re(a,e){let t=a[e];return t?{time:t.t,open:t.o,high:t.h,low:t.l,close:t.c}:null}function fe(a,e,t){let s={bars:[],baselinePrices:{}},r=[...a,...e];if(r.length===0)return s;let o=_(t),n=r.map(d=>d.symbol),i=F(o,n);if(i.length===0)return s;let l={},c=i[0];for(let d of r){let g=o[d.symbol]?.get(c);if(!g||g.o<=0)return s;l[d.symbol]=g.o;}let u=1e3,p=new Set(a.map(d=>d.symbol)),h=[];for(let d of i){let g=0,v=false;for(let O of r){let I=o[O.symbol]?.get(d);if(!I){v=true;break}let m=l[O.symbol],S=O.weight*u,Qe=I.c/m;p.has(O.symbol)?g+=S*Qe:g+=S/Qe;}v||h.push({time:d,open:g,high:g,low:g,close:g});}return {bars:h,baselinePrices:l}}function xe(a,e,t,s){let r=[...a,...e];if(r.length===0)return null;let o=1e3,n=new Set(a.map(c=>c.symbol)),i=0,l=null;for(let c of r){let u=t[c.symbol];if(!u)return null;let p=s[c.symbol];if(!p||p<=0)return null;let h=c.weight*o,d=u.c/p;n.has(c.symbol)?i+=h*d:i+=h/d,l===null&&(l=u.t);}return l===null?null:{time:l,open:i,high:i,low:i,close:i}}function be(a,e,t){if(a.length===0&&e.length===0)return [];let s=_(t),r=[...a,...e].map(i=>i.symbol),o=F(s,r),n=[];for(let i of o){let l=0,c=0,u=0,p=0,h=0,d=0,g=0,v=0,O=false;for(let I of a){let m=s[I.symbol]?.get(i);if(!m){O=true;break}if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){O=true;break}let S=I.weight;l+=S*m.o,c+=S*m.h,u+=S*m.l,p+=S*m.c;}if(!O){for(let I of e){let m=s[I.symbol]?.get(i);if(!m){O=true;break}if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){O=true;break}let S=I.weight;h+=S*m.o,d+=S*m.h,g+=S*m.l,v+=S*m.c;}O||h<=0||d<=0||g<=0||v<=0||n.push({time:i,open:l/h,high:c/d,low:u/g,close:p/v});}}return n}function Te(a,e,t){let s=0,r=0,o=0,n=0,i=0,l=0,c=0,u=0,p=null;for(let h of a){let d=t[h.symbol];if(!d||!(d.o>0&&d.h>0&&d.l>0&&d.c>0))return null;let g=h.weight;s+=g*d.o,r+=g*d.h,o+=g*d.l,n+=g*d.c,p===null&&(p=d.t);}for(let h of e){let d=t[h.symbol];if(!d||!(d.o>0&&d.h>0&&d.l>0&&d.c>0))return null;let g=h.weight;i+=g*d.o,l+=g*d.h,c+=g*d.l,u+=g*d.c,p===null&&(p=d.t);}return p===null||i<=0||l<=0||c<=0||u<=0?null:{time:p,open:s/i,high:r/l,low:o/c,close:n/u}}function k(a,e){return a<=0?0:Math.exp(e*Math.log(a))}function De(a,e,t){if(a.length===0&&e.length===0)return [];let s=_(t),r=[...a,...e].map(i=>i.symbol),o=F(s,r),n=[];for(let i of o){let l=1,c=1,u=1,p=1,h=1,d=1,g=1,v=1,O=false;for(let I of a){let m=s[I.symbol]?.get(i);if(!m){O=true;break}let S=I.weight;if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){O=true;break}l*=k(m.o,S),c*=k(m.h,S),u*=k(m.l,S),p*=k(m.c,S);}if(!O){for(let I of e){let m=s[I.symbol]?.get(i);if(!m){O=true;break}let S=-I.weight;if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){O=true;break}h*=k(m.o,S),d*=k(m.h,S),g*=k(m.l,S),v*=k(m.c,S);}O||n.push({time:i,open:l*h,high:c*d,low:u*g,close:p*v});}}return n}function Oe(a,e,t){let s=1,r=1,o=1,n=1,i=1,l=1,c=1,u=1,p=null;for(let h of a){let d=t[h.symbol];if(!d||!(d.o>0&&d.h>0&&d.l>0&&d.c>0))return null;let g=h.weight;s*=k(d.o,g),r*=k(d.h,g),o*=k(d.l,g),n*=k(d.c,g),p===null&&(p=d.t);}for(let h of e){let d=t[h.symbol];if(!d||!(d.o>0&&d.h>0&&d.l>0&&d.c>0))return null;let g=-h.weight;i*=k(d.o,g),l*=k(d.h,g),c*=k(d.l,g),u*=k(d.c,g),p===null&&(p=d.t);}return p===null?null:{time:p,open:s*i,high:r*l,low:o*c,close:n*u}}var se=class{constructor(e){this.baselinePrices={};this.collector=new re(e);}setTokens(e,t){this.collector.setTokens(e,t),this.baselinePrices={};}setCandleInterval(e){this.collector.setCandleInterval(e),this.baselinePrices={};}async getBars(e,t,s){let r=this.collector.getCandleInterval(),o=await this.collector.fetchHistoricalPriceData(t,s,r);switch(e){case "weighted-ratio":return De(this.collector.getLongTokens(),this.collector.getShortTokens(),o);case "price-ratio":return be(this.collector.getLongTokens(),this.collector.getShortTokens(),o);case "performance":{let n=fe(this.collector.getLongTokens(),this.collector.getShortTokens(),o);return n.bars.length>0&&(this.baselinePrices=n.baselinePrices),n.bars}default:throw new Error(`Unsupported chart type: ${e}`)}}async getAssetBars(e,t,s){this.assertTokenExists(e);let r=this.collector.getCandleInterval(),o=await this.collector.fetchHistoricalPriceData(t,s,r);return Ce(o,e)}getEffectiveDataBoundary(){return this.collector.getEffectiveDataBoundary(this.collector.getCandleInterval())}subscribeRealtimeBars(e,t){this.collector.isWsAttached||this.collector.attachCandleWs();let s=o=>o.map(n=>`${n.symbol}:${n.weight}`).join(","),r=`${e}-${s(this.collector.getLongTokens())}-${s(this.collector.getShortTokens())}`;return this.collector.addRealtimeListener(r,()=>{let o=this.collector.getLatestCandles();if(!o)return;let n=null;switch(e){case "weighted-ratio":n=Oe(this.collector.getLongTokens(),this.collector.getShortTokens(),o);break;case "price-ratio":n=Te(this.collector.getLongTokens(),this.collector.getShortTokens(),o);break;case "performance":if(Object.keys(this.baselinePrices).length===0)break;n=xe(this.collector.getLongTokens(),this.collector.getShortTokens(),o,this.baselinePrices);break}if(n)try{t(n);}catch(i){console.warn("Error in realtime bar callback, skipping this update",{chartType:e,error:i});}}),r}subscribeRealtimeAssetBars(e,t){this.assertTokenExists(e),this.collector.isWsAttached||this.collector.attachCandleWs();let s=`price-${e}`;return this.collector.addRealtimeListener(s,()=>{let r=this.collector.getLatestCandles();if(!r)return;let o=Re(r,e);if(o)try{t(o);}catch(n){console.warn("Error in realtime asset bar callback, skipping this update",{symbol:e,error:n});}}),s}unsubscribeRealtimeBars(e){this.collector.removeRealtimeListener(e);}assertTokenExists(e){if(![...this.collector.getLongTokens(),...this.collector.getShortTokens()].some(s=>s.symbol===e))throw new Error(`Symbol "${e}" is not part of the configured long or short tokens`)}clearCache(){this.collector.clearCache(),this.baselinePrices={};}destroy(){this.collector.destroy();}};function He(a,e){let t=new Map;for(let[s,r]of a){let o=e.get(s);if(o)for(let n=0;n<r.length;n++){let i=r[n],l=o[n];if(!l)continue;let c=parseFloat(l.markPx)||0,u=parseFloat(l.midPx??"")||c,p=parseFloat(l.prevDayPx)||0,h=u-p;t.set(i.name,{assetName:i.name,maxLeverage:i.maxLeverage,szDecimals:i.szDecimals,currentPrice:u,markPrice:c,oraclePrice:parseFloat(l.oraclePx)||0,prevDayPrice:p,priceChange24h:h,priceChange24hPercent:p!==0?h/p*100:0,funding:parseFloat(l.funding)});}}return t}function _e(a){let e=new Map;for(let[t,s]of a)e.set(t,s.markPrice);return e}function Fe(a,e){let t=new Map;for(let s=0;s<a.length;s++){let r=e[s]??(s===0?"HYPERLIQUID":`DEX_${s}`);t.set(r,a[s].universe);}return t}function Be(a){let e=new Map;for(let[t,s]of a.ctxs){let r=t===""?"HYPERLIQUID":t;e.set(r,s);}return e}function W(a,e){return e.get(a)??0}function Se(a,e,t){return t.assetPositions.find(r=>r.position.coin===a)?.position.leverage?.value??e??1}function ve(a,e,t,s,r,o){let n=a.entryPrice*a.size,i=e*a.size,l=r||1,c=i/l,u=n/l,p=o?i-n:n-i;return {coin:a.coin,entryPrice:a.entryPrice,actualSize:a.size,leverage:l,marginUsed:c,positionValue:i,unrealizedPnl:p,entryPositionValue:n,currentWeight:s>0?i/s:0,fundingPaid:a.fundingPaid??0,targetWeight:a.targetWeight!=null?a.targetWeight:t>0?n/t:0,entryMarginUsed:u}}function oe(a){let e=(a.clearinghouseStates||[]).map(([,r])=>r).filter(Boolean);if(e.length===0)return {assetPositions:[],crossMaintenanceMarginUsed:"0",crossMarginSummary:{accountValue:"0",totalMarginUsed:"0",totalNtlPos:"0",totalRawUsd:"0"},marginSummary:{accountValue:"0",totalMarginUsed:"0",totalNtlPos:"0",totalRawUsd:"0"},time:0,withdrawable:"0"};if(e.length===1)return e[0];let t=r=>r.reduce((o,n)=>o+(parseFloat(n||"0")||0),0),s=r=>Number.isFinite(r)?r.toString():"0";return {assetPositions:e.flatMap(r=>r.assetPositions||[]),crossMaintenanceMarginUsed:s(t(e.map(r=>r.crossMaintenanceMarginUsed))),crossMarginSummary:{accountValue:s(t(e.map(r=>r.crossMarginSummary?.accountValue))),totalMarginUsed:s(t(e.map(r=>r.crossMarginSummary?.totalMarginUsed))),totalNtlPos:s(t(e.map(r=>r.crossMarginSummary?.totalNtlPos))),totalRawUsd:s(t(e.map(r=>r.crossMarginSummary?.totalRawUsd)))},marginSummary:{accountValue:s(t(e.map(r=>r.marginSummary?.accountValue))),totalMarginUsed:s(t(e.map(r=>r.marginSummary?.totalMarginUsed))),totalNtlPos:s(t(e.map(r=>r.marginSummary?.totalNtlPos))),totalRawUsd:s(t(e.map(r=>r.marginSummary?.totalRawUsd)))},withdrawable:s(t(e.map(r=>r.withdrawable))),time:Math.max(0,...e.map(r=>r.time||0))}}function we(a,e){return a<=0?0:Math.exp(e*Math.log(a))}function at(a,e,t){let s=1;for(let r of a){let o=t.get(r.symbol)?.markPrice??0;s*=we(o,r.weight);}for(let r of e){let o=t.get(r.symbol)?.markPrice??0;s*=we(o,-r.weight);}return s}function it(a,e,t){if(a.length!==1||e.length!==1)return null;let s=t.get(a[0].symbol)?.markPrice??0,r=t.get(e[0].symbol)?.markPrice??0;return r<=0?null:s/r}function lt(a,e,t){return a.length===1&&e.length===0?t.get(a[0].symbol)?.markPrice??null:a.length===0&&e.length===1?t.get(e[0].symbol)?.markPrice??null:null}function ct(a,e,t){let s=1;for(let r of a){let o=t.get(r.symbol)?.prevDayPrice??0;s*=we(o,r.weight);}for(let r of e){let o=t.get(r.symbol)?.prevDayPrice??0;s*=we(o,-r.weight);}return s}function ut(a,e,t){if(a.length!==1||e.length!==1)return null;let s=t.get(a[0].symbol)?.prevDayPrice??0,r=t.get(e[0].symbol)?.prevDayPrice??0;return r<=0?null:s/r}function pt(a,e,t){return a.length===1&&e.length===0?t.get(a[0].symbol)?.prevDayPrice??null:a.length===0&&e.length===1?t.get(e[0].symbol)?.prevDayPrice??null:null}function dt(a,e,t){let s=0;for(let r of a){let o=t.get(r.symbol)?.funding;o!==void 0&&r.weight>0&&(s+=-o*r.weight);}for(let r of e){let o=t.get(r.symbol)?.funding;o!==void 0&&r.weight>0&&(s+=o*r.weight);}return s}function Ut(a,e,t){let s=[...a,...e];if(s.length===0)return 0;let r=1/0;for(let o of s){let n=t.get(o.symbol)?.maxLeverage;n!==void 0&&n<r&&(r=n);}return r===1/0?1:r}function ne(a,e,t){return {weightedRatio:at(a,e,t),priceRatio:it(a,e,t),price:lt(a,e,t),weightedRatio24hAgo:ct(a,e,t),priceRatio24hAgo:ut(a,e,t),price24hAgo:pt(a,e,t),netFundingRate:dt(a,e,t),maxLeverage:Ut(a,e,t)}}var ae=class{constructor(e,t){this.perpMetasByDex=null;this.metadata=new Map;this.prices=new Map;this.assetCtxsHandlerId=null;this.instrumentHandler=null;this.basketSubs=new Map;this.nextBasketId=0;this.picksHandler=null;this.lastPicksData=[];this.onPricesUpdated=null;this.hlWs=e,this.pearWs=t,this.chart=new se({ws:e}),this.init();}async init(){try{let[e,t]=await Promise.all([x.post("https://api.hyperliquid.xyz/info",{type:"allPerpMetas"}),x.post("https://api.hyperliquid.xyz/info",{type:"perpDexs"})]),s=t.data.map((r,o)=>o===0?"HYPERLIQUID":r?.name??`DEX_${o}`);this.perpMetasByDex=Fe(e.data,s),this.hlWs.subscribe("allDexsAssetCtxs",{type:"allDexsAssetCtxs"}),this.assetCtxsHandlerId=this.hlWs.addChannelHandler("allDexsAssetCtxs",r=>{this.perpMetasByDex&&(this.metadata=He(this.perpMetasByDex,Be(r)),this.prices=_e(this.metadata),this.notifyInstrument(),this.notifyBaskets(),this.notifyPicks(),this.onPricesUpdated?.());});}catch{setTimeout(()=>this.init(),5e3);}}getMetadata(){return this.metadata}getPrices(){return this.prices}setOnPricesUpdated(e){this.onPricesUpdated=e;}instrument(e){return this.instrumentHandler=e,this.metadata.size>0&&e(Array.from(this.metadata.values())),()=>{this.instrumentHandler=null;}}basket(e,t,s){let r=++this.nextBasketId;return this.basketSubs.set(r,{longTokens:e,shortTokens:t,handler:s}),this.metadata.size>0&&s(ne(e,t,this.metadata)),()=>{this.basketSubs.delete(r);}}picks(e){return this.picksHandler=e,this.pearWs.subscribe("market-data/v2",t=>{this.lastPicksData=t.baskets||[],this.notifyPicks();}),()=>{this.picksHandler=null,this.lastPicksData=[],this.pearWs.unsubscribe("market-data/v2");}}notifyInstrument(){!this.instrumentHandler||this.metadata.size===0||this.instrumentHandler(Array.from(this.metadata.values()));}notifyBaskets(){if(this.metadata.size!==0)for(let e of this.basketSubs.values())e.handler(ne(e.longTokens,e.shortTokens,this.metadata));}notifyPicks(){!this.picksHandler||this.lastPicksData.length===0||this.picksHandler(this.lastPicksData.map(e=>this.enrichBasket(e)));}enrichBasket(e){let t=e.longAssets.map(o=>({symbol:o.asset,weight:o.weight})),s=e.shortAssets.map(o=>({symbol:o.asset,weight:o.weight}));return {...ne(t,s,this.metadata),longTokens:t,shortTokens:s,category:e.category,name:e.name}}destroy(){this.chart.destroy(),this.assetCtxsHandlerId&&(this.hlWs.removeChannelHandler("allDexsAssetCtxs",this.assetCtxsHandlerId),this.assetCtxsHandlerId=null),this.picksHandler&&(this.pearWs.unsubscribe("market-data/v2"),this.picksHandler=null),this.instrumentHandler=null,this.basketSubs.clear();}};function Ne(a,e){return a.map(t=>{let s=t.orderType==="TP"||t.orderType==="SL",r=(t.longAssets?.length??0)>0||(t.shortAssets?.length??0)>0,o=e.get(String(t.positionId??""));return s&&!r&&o?{...t,longAssets:o.longAssets.map(n=>({asset:n.coin,weight:n.targetWeight})),shortAssets:o.shortAssets.map(n=>({asset:n.coin,weight:n.targetWeight}))}:t})}function je(a,e,t,s=true){return a.filter(r=>!r.longAssets.some(o=>o.coin.startsWith("#"))&&!r.shortAssets.some(o=>o.coin.startsWith("#"))&&(!s||r.pearExecutionFlag!==Je.FullyExternal)).map(r=>{let o={positionId:r.positionId,address:r.address,pearExecutionFlag:r.pearExecutionFlag,stopLoss:r.stopLoss,takeProfit:r.takeProfit,entryRatio:1,markRatio:1,entryPositionValue:0,positionValue:0,marginUsed:0,unrealizedPnl:0,unrealizedPnlPercentage:0,longAssets:[],shortAssets:[],createdAt:r.createdAt,updatedAt:r.updatedAt},n=0,i=r.longAssets.reduce((c,u)=>c+u.entryPrice*u.size,0)+r.shortAssets.reduce((c,u)=>c+u.entryPrice*u.size,0),l=r.longAssets.reduce((c,u)=>c+W(u.coin,t)*u.size,0)+r.shortAssets.reduce((c,u)=>c+W(u.coin,t)*u.size,0);if(o.longAssets=r.longAssets.map(c=>{let u=W(c.coin,t),p=Se(c.coin,c.leverage??1,e),h=ve(c,u,i,l,p,true);o.entryPositionValue+=h.entryPositionValue,o.unrealizedPnl+=h.unrealizedPnl,o.positionValue+=h.positionValue,o.marginUsed+=h.marginUsed,n+=h.entryMarginUsed,o.entryRatio*=Math.pow(c.entryPrice,h.targetWeight),o.markRatio*=Math.pow(u,h.targetWeight);let{entryMarginUsed:d,...g}=h;return g}),o.shortAssets=r.shortAssets.map(c=>{let u=W(c.coin,t),p=Se(c.coin,c.leverage??1,e),h=ve(c,u,i,l,p,false);o.entryPositionValue+=h.entryPositionValue,o.unrealizedPnl+=h.unrealizedPnl,o.positionValue+=h.positionValue,o.marginUsed+=h.marginUsed,n+=h.entryMarginUsed,o.entryRatio*=Math.pow(c.entryPrice,-h.targetWeight),o.markRatio*=Math.pow(u,-h.currentWeight);let{entryMarginUsed:d,...g}=h;return g}),o.positionValue=o.entryPositionValue+o.unrealizedPnl,r.longAssets.length===1&&r.shortAssets.length===1){let c=r.longAssets[0],u=r.shortAssets[0],p=W(c.coin,t),h=W(u.coin,t);c.size>0&&u.size>0?(o.entryPriceRatio=c.entryPrice/u.entryPrice,o.markPriceRatio=p/h):c.size>0?(o.entryPriceRatio=c.entryPrice,o.markPriceRatio=p):u.size>0&&(o.entryPriceRatio=u.entryPrice,o.markPriceRatio=h);}if(r.longAssets.length===1&&r.shortAssets.length===0){let c=r.longAssets[0];o.entryPriceRatio=c.entryPrice,o.markPriceRatio=W(c.coin,t);}if(r.longAssets.length===0&&r.shortAssets.length===1){let c=r.shortAssets[0];o.entryPriceRatio=c.entryPrice,o.markPriceRatio=W(c.coin,t);}return o.unrealizedPnlPercentage=n>0?o.unrealizedPnl/n:0,o})}var Ie=class Ie{constructor(e,t,s,r,o){this.rawPositions=null;this.clearinghouseState=null;this.enrichedPositions=null;this.positionHandler=null;this.chStateHandlerId=null;this.hideExternalPosition=true;this.rawOrders=null;this.orderHandler=null;this.api=e,this.pearWs=t,this.hlWs=s,this.getPrices=r,this.getAddress=o;}async isBuilderApproved(){let e=this.getAddress();if(!e)return false;let{data:t}=await x.post("https://api.hyperliquid.xyz/info",{type:"approvedBuilders",user:e});return t.some(s=>s.toLowerCase()===Ie.BUILDER_ADDRESS)}async isAgentApproved(){let e=this.getAddress();if(!e)return false;let[t,s]=await Promise.all([x.post("https://api.hyperliquid.xyz/info",{type:"extraAgents",user:e}),this.api.private.agentWallet.get()]),r=s.data.agentWalletAddress.toLowerCase();return t.data.some(o=>o.address.toLowerCase()===r)}positions(e,t=true){return this.positionHandler=e,this.hideExternalPosition=t,this.pearWs.subscribe("open-positions",s=>{this.rawPositions=s,this.recomputePositions();}),this.chStateHandlerId||(this.chStateHandlerId=this.hlWs.addChannelHandler("allDexsClearinghouseState",s=>{this.clearinghouseState=oe(s),this.recomputePositions();})),()=>{this.positionHandler=null;}}orders(e){return this.orderHandler=e,this.pearWs.subscribe("open-orders",t=>{this.rawOrders=t,this.recomputeOrders();}),()=>{this.orderHandler=null;}}tradeHistories(e){return this.pearWs.subscribe("trade-histories",e),()=>{this.pearWs.unsubscribe("trade-histories");}}twapDetails(e){return this.pearWs.subscribe("twap-details",e),()=>{this.pearWs.unsubscribe("twap-details");}}accountSummary(e){return this.pearWs.subscribe("account-summary",e),()=>{this.pearWs.unsubscribe("account-summary");}}notifications(e){return this.pearWs.subscribe("notifications",e),()=>{this.pearWs.unsubscribe("notifications");}}recomputePositions(){let e=this.getPrices();!this.rawPositions||!this.clearinghouseState||e.size===0||(this.enrichedPositions=je(this.rawPositions,this.clearinghouseState,e,this.hideExternalPosition),this.positionHandler?.(this.enrichedPositions),this.recomputeOrders());}recomputeOrders(){if(!this.orderHandler||!this.rawOrders)return;let e=new Map;if(this.enrichedPositions)for(let t of this.enrichedPositions)e.set(t.positionId,t);this.orderHandler(Ne(this.rawOrders,e));}};Ie.BUILDER_ADDRESS="0xa47d4d99191db54a4829cdf3de2417e527c3b042";var ie=Ie;async function Ht(a,e){let t=[],s=new Set,r=e,o=0;do{let{data:n}=await x.post("https://api.hyperliquid.xyz/info",{type:"userFillsByTime",user:a,startTime:r,aggregateByTime:true});o=n.length;for(let i of n)i.tid!==void 0&&!s.has(i.tid)&&(s.add(i.tid),t.push(i));o===2e3&&(r=n[n.length-1].time);}while(o===2e3);r=e,o=0;do{let{data:n}=await x.post("https://api.hyperliquid.xyz/info",{type:"userTwapSliceFillsByTime",user:a,startTime:r,aggregateByTime:true});o=n.length;for(let i of n){let l=i.fill;l.tid!==void 0&&!s.has(l.tid)&&(s.add(l.tid),t.push(l));}o===2e3&&(r=n[n.length-1].fill.time);}while(o===2e3);return t.sort((n,i)=>n.time-i.time)}var le=class{constructor(e,t){this.address=null;this.clearinghouseState=null;this.syncing=false;this.userFillsHandlerId=null;this.chStateHandlerId=null;this.initialSyncDone=false;this.api=e,this.hlWs=t;}start(e){this.stop(),this.address=e.toLowerCase(),this.initialSyncDone=false,this.hlWs.subscribe("userFills",{type:"userFills",user:this.address}),this.userFillsHandlerId=this.hlWs.addChannelHandler("userFills",()=>{this.sync();}),this.chStateHandlerId=this.hlWs.addChannelHandler("allDexsClearinghouseState",t=>{this.clearinghouseState=oe(t),!this.initialSyncDone&&this.clearinghouseState&&(this.initialSyncDone=true,this.sync());});}stop(){this.userFillsHandlerId&&(this.hlWs.removeChannelHandler("userFills",this.userFillsHandlerId),this.userFillsHandlerId=null),this.chStateHandlerId&&(this.hlWs.removeChannelHandler("allDexsClearinghouseState",this.chStateHandlerId),this.chStateHandlerId=null),this.address&&this.hlWs.unsubscribe("userFills"),this.address=null,this.clearinghouseState=null,this.initialSyncDone=false;}async sync(){if(!(this.syncing||!this.address||!this.clearinghouseState)&&this.api.getAccessToken()){this.syncing=true;try{let{data:e}=await this.api.private.accounts.summary(),t=e.lastSyncedAt?Number(e.lastSyncedAt)+1:0,s=await Ht(this.address,t);if(s.length===0)return;await this.api.private.sync.fills({user:this.address,fills:s,assetPositions:this.clearinghouseState.assetPositions});}catch{}finally{this.syncing=false;}}}};var B=class{constructor(e){this.messageListeners=new Map;this.openListeners=new Map;this.nextId=0;this.ws=new WebSocket(e.url,[],{maxReconnectionDelay:e.maxReconnectionDelay??3e4,minReconnectionDelay:e.minReconnectionDelay??1e3,reconnectionDelayGrowFactor:2,connectionTimeout:e.connectionTimeout??1e4}),this.ws.addEventListener("open",()=>{for(let t of this.openListeners.values())try{t();}catch{}}),this.ws.addEventListener("message",t=>{for(let s of this.messageListeners.values())try{s(t.data);}catch{}});}get connected(){return this.ws.readyState===WebSocket.OPEN}send(e){this.ws.readyState===WebSocket.OPEN&&this.ws.send(e);}addMessageListener(e){let t=String(++this.nextId);return this.messageListeners.set(t,e),t}removeMessageListener(e){this.messageListeners.delete(e);}addOpenListener(e){let t=String(++this.nextId);return this.openListeners.set(t,e),t}removeOpenListener(e){this.openListeners.delete(e);}close(){this.ws.close(),this.messageListeners.clear(),this.openListeners.clear();}};var Ve=new Set(["trade-histories","open-positions","positions","account-summary","open-orders","twap-details","fills-checkpoint","notifications","trades","twap-trades"]),ce=class{constructor(e){this.handlers=new Map;this.address=null;this.messageListenerId=null;this.openListenerId=null;this.transport=e,this.messageListenerId=this.transport.addMessageListener(t=>this.handleMessage(t)),this.openListenerId=this.transport.addOpenListener(()=>this.resubscribeAll());}setAddress(e){let t=e?.toLowerCase()??null;if(t===this.address)return;let s=this.address;if(this.address=t,!this.transport.connected)return;let r=this.getActiveAddressChannels();r.length!==0&&(s&&this.sendToTransport({action:"unsubscribe",address:s,channels:r}),t&&this.sendToTransport({action:"subscribe",address:t,channels:r}));}subscribe(e,t){let s=this.handlers.has(e);this.handlers.set(e,t),!s&&this.transport.connected&&this.sendSubscribe([e]);}unsubscribe(e){this.handlers.has(e)&&(this.handlers.delete(e),this.transport.connected&&this.sendUnsubscribe([e]));}destroy(){this.messageListenerId&&(this.transport.removeMessageListener(this.messageListenerId),this.messageListenerId=null),this.openListenerId&&(this.transport.removeOpenListener(this.openListenerId),this.openListenerId=null),this.handlers.clear(),this.address=null;}handleMessage(e){let t;try{t=JSON.parse(e);}catch{return}if(("success"in t||"error"in t)&&!("channel"in t)||!("channel"in t)||!("data"in t))return;let s=t;if(s.data===null||s.data===void 0)return;let r=this.handlers.get(s.channel);if(r)try{r(s.data);}catch{}}resubscribeAll(){if(this.handlers.size===0)return;let e=[],t=[];for(let s of this.handlers.keys())Ve.has(s)?t.push(s):e.push(s);e.length>0&&this.sendToTransport({action:"subscribe",channels:e}),t.length>0&&this.address&&this.sendToTransport({action:"subscribe",address:this.address,channels:t});}sendSubscribe(e){let t=e.some(s=>Ve.has(s));this.sendToTransport({action:"subscribe",...t&&this.address?{address:this.address}:{},channels:e});}sendUnsubscribe(e){let t=e.some(s=>Ve.has(s));this.sendToTransport({action:"unsubscribe",...t&&this.address?{address:this.address}:{},channels:e});}sendToTransport(e){this.transport.send(JSON.stringify(e));}getActiveAddressChannels(){return Array.from(this.handlers.keys()).filter(e=>Ve.has(e))}};var N=class{constructor(e){this.subscriptions=new Map;this.channelHandlers=new Map;this.messageListenerId=null;this.openListenerId=null;this.nextHandlerId=0;this.transport=e;}get connected(){return this.transport.connected}start(){this.messageListenerId||(this.messageListenerId=this.transport.addMessageListener(e=>{this.handleMessage(e);}),this.openListenerId=this.transport.addOpenListener(()=>{this.resubscribeAll();}),this.transport.connected&&this.resubscribeAll());}stop(){this.messageListenerId&&(this.transport.removeMessageListener(this.messageListenerId),this.messageListenerId=null),this.openListenerId&&(this.transport.removeOpenListener(this.openListenerId),this.openListenerId=null);for(let[,e]of this.subscriptions)this.sendUnsubscribe(e.subscription);this.subscriptions.clear();}subscribe(e,t){this.subscriptions.has(e)||(this.subscriptions.set(e,{channel:t.type,subscription:t}),this.transport.connected&&this.sendSubscribe(t));}unsubscribe(e){let t=this.subscriptions.get(e);t&&(this.subscriptions.delete(e),this.transport.connected&&this.sendUnsubscribe(t.subscription));}addChannelHandler(e,t){let s=String(++this.nextHandlerId),r=this.channelHandlers.get(e);return r||(r=new Map,this.channelHandlers.set(e,r)),r.set(s,t),s}removeChannelHandler(e,t){let s=this.channelHandlers.get(e);s&&(s.delete(t),s.size===0&&this.channelHandlers.delete(e));}destroy(){this.stop(),this.channelHandlers.clear();}handleMessage(e){let t;try{t=JSON.parse(e);}catch{return}let s=t.channel;if(!s||!("data"in t))return;let r=this.channelHandlers.get(s);if(r)for(let o of r.values())try{o(t.data);}catch{}}resubscribeAll(){for(let[,e]of this.subscriptions)this.sendSubscribe(e.subscription);}sendSubscribe(e){this.transport.send(JSON.stringify({method:"subscribe",subscription:e}));}sendUnsubscribe(e){this.transport.send(JSON.stringify({method:"unsubscribe",subscription:e}));}};var ze=class{constructor(){this.address=null;this.api=new Z,this.pearTransport=new B({url:"wss://hl-v2.pearprotocol.io/ws"}),this.hlTransport=new B({url:"wss://api.hyperliquid.xyz/ws"}),this.pear=new ce(this.pearTransport),this.hyperliquid=new N(this.hlTransport),this.hyperliquid.start(),this.market=new ae(this.hyperliquid,this.pear),this.user=new ie(this.api,this.pear,this.hyperliquid,()=>this.market.getPrices(),()=>this.address),this.syncer=new le(this.api,this.hyperliquid),this.market.setOnPricesUpdated(()=>{this.user.recomputePositions();});}setAddress(e){let t=e.toLowerCase();this.address=t,this.pear.setAddress(t),this.hyperliquid.subscribe("allDexsClearinghouseState",{type:"allDexsClearinghouseState",user:t}),this.syncer.start(t);}destroy(){this.syncer.stop(),this.market.destroy(),this.pear.destroy(),this.hyperliquid.destroy(),this.pearTransport.close(),this.hlTransport.close();}};var At=(r=>(r[r.CONNECTING=0]="CONNECTING",r[r.OPEN=1]="OPEN",r[r.CLOSING=2]="CLOSING",r[r.CLOSED=3]="CLOSED",r))(At||{});
2
- export{Q as APIKeysApi,Ct as APIKeysApiAxiosParamCreator,Vr as APIKeysApiFactory,Ee as APIKeysApiFp,de as AccountsApi,Rt as AccountsApiAxiosParamCreator,kr as AccountsApiFactory,Ze as AccountsApiFp,er as AdjustPositionRequestDtoAdjustmentTypeEnum,tr as AdjustPositionRequestDtoExecutionTypeEnum,rr as AdjustPositionResponseDtoAdjustmentTypeEnum,$ as AgentWalletApi,ft as AgentWalletApiAxiosParamCreator,Er as AgentWalletApiFactory,qe as AgentWalletApiFp,sr as AuthenticateRequestDtoMethodEnum,U as AuthenticationApi,xt as AuthenticationApiAxiosParamCreator,qr as AuthenticationApiFactory,K as AuthenticationApiFp,or as BtcDomMetaDtoKindEnum,ee as CandleCache,se as Chart,ir as ClosePositionRequestDtoDirectionEnum,nr as ClosePositionRequestDtoExecutionTypeEnum,ar as ClosePositionRequestDtoTriggerTypeEnum,Pe as Configuration,ur as CreatePositionRequestDtoDirectionEnum,lr as CreatePositionRequestDtoExecutionTypeEnum,pr as CreatePositionRequestDtoMarketSourceEnum,cr as CreatePositionRequestDtoTriggerTypeEnum,re as DataCollector,dr as ExternalFillDtoSideEnum,he as FillsApi,bt as FillsApiAxiosParamCreator,Lr as FillsApiFactory,et as FillsApiFp,le as FillsSyncer,$e as HealthApi,Tt as HealthApiAxiosParamCreator,Mr as HealthApiFactory,tt as HealthApiFp,te as HyperliquidCandleWs,N as HyperliquidWs,Ye as LegacySupportApi,Dt as LegacySupportApiAxiosParamCreator,Wr as LegacySupportApiFactory,z as LegacySupportApiFp,hr as MarketDataV2BasketDtoCategoryEnum,ae as MarketSubscriptions,gr as MarketTriggerMetaDtoKindEnum,Ar as MarketTriggerMetaDtoStatusEnum,mr as MarketTriggerMetaDtoTypeEnum,Y as MarketsApi,Ot as MarketsApiAxiosParamCreator,Gr as MarketsApiFactory,pe as MarketsApiFp,X as NotificationsApi,St as NotificationsApiAxiosParamCreator,Ur as NotificationsApiFactory,Le as NotificationsApiFp,yr as OpenOrderDtoOrderTypeEnum,Pr as OpenOrderDtoStatusEnum,Je as OpenPositionProcessedDtoPearExecutionFlagEnum,Cr as OracleValueDtoUnitEnum,L as OrdersApi,vt as OrdersApiAxiosParamCreator,Hr as OrdersApiFactory,G as OrdersApiFp,Fr as OrdersControllerGetAllOrdersOrderTypeEnum,_r as OrdersControllerGetAllOrdersStatusEnum,Br as OrdersControllerGetTriggersCategoryEnum,Z as PearApi,j as PearApiError,B as PearDefaultTransport,yt as PearErrorCode,ze as PearSdk,ce as PearWs,ge as PortfolioApi,wt as PortfolioApiAxiosParamCreator,Nr as PortfolioApiFactory,Me as PortfolioApiFp,jr as PortfolioControllerGetAnalyticsIntervalEnum,E as PositionsApi,It as PositionsApiAxiosParamCreator,Kr as PositionsApiFactory,q as PositionsApiFp,me as PublicStatsApi,Vt as PublicStatsApiAxiosParamCreator,zr as PublicStatsApiFactory,rt as PublicStatsApiFp,At as ReadyState,Rr as RebalanceAssetPlanDtoSideEnum,fr as SpotOrderResponseDtoStatusEnum,Ae as SyncApi,kt as SyncApiAxiosParamCreator,Qr as SyncApiFactory,st as SyncApiFp,xr as TpSlOrderParametersTriggerTypeEnum,br as TpSlThresholdTypeEnum,ye as TradeHistoryApi,Et as TradeHistoryApiAxiosParamCreator,$r as TradeHistoryApiFactory,ot as TradeHistoryApiFp,Tr as TriggerDtoCategoryEnum,Dr as TriggerDtoSourceEnum,Sr as TriggerOrderParametersDirectionEnum,vr as TriggerOrderParametersMarketSourceEnum,Or as TriggerOrderParametersTriggerTypeEnum,wr as TwapChunkStatusDtoStatusEnum,Ir as TwapMonitoringDtoStatusEnum,ie as UserSubscriptions,Xe as VaultWalletApi,qt as VaultWalletApiAxiosParamCreator,Yr as VaultWalletApiFactory,M as VaultWalletApiFp,J as WatchlistApi,Lt as WatchlistApiAxiosParamCreator,Xr as WatchlistApiFactory,We as WatchlistApiFp,oe as aggregateClearinghouseStates,je as buildPositionValue,_e as buildPriceMap,He as buildTokenMetadataMap,ve as calculateAsset,Ce as computeAssetBars,ne as computeBasketSnapshot,dt as computeNetFundingRate,fe as computePerformanceCandles,lt as computePrice,pt as computePrice24hAgo,it as computePriceRatio,ut as computePriceRatio24hAgo,be as computePriceRatioCandles,Re as computeRealtimeAssetBar,xe as computeRealtimePerformanceBar,Te as computeRealtimePriceRatioBar,Oe as computeRealtimeWeightedRatioBar,at as computeWeightedRatio,ct as computeWeightedRatio24hAgo,De as computeWeightedRatioCandles,H as createKey,Ne as enrichOrders,Ue as fetchHistoricalCandles,Ge as getIntervalSeconds,Se as getLeverage,W as getMarkPrice,Be as parseAssetCtxs,Fe as parsePerpMetas};//# sourceMappingURL=index.js.map
1
+ import x from'axios';import {WebSocket}from'partysocket';var Pt=(b=>(b.POSITION_NOT_FOUND="POSITION_NOT_FOUND",b.POSITION_NOT_OPEN="POSITION_NOT_OPEN",b.POSITION_UNAUTHORIZED="POSITION_UNAUTHORIZED",b.ORDER_NOT_FOUND="ORDER_NOT_FOUND",b.INVALID_ORDER_STATUS="INVALID_ORDER_STATUS",b.INVALID_ORDER_TYPE="INVALID_ORDER_TYPE",b.ACTIVE_TRADE_TIMEOUT="ACTIVE_TRADE_TIMEOUT",b.UNSUPPORTED_EXECUTION_TYPE="UNSUPPORTED_EXECUTION_TYPE",b.DUPLICATE_TRIGGER="DUPLICATE_TRIGGER",b.HL_CANCEL_FAILED="HL_CANCEL_FAILED",b.HL_INSUFFICIENT_MARGIN="HL_INSUFFICIENT_MARGIN",b.HL_AGENT_WALLET_REVOKED="HL_AGENT_WALLET_REVOKED",b.HL_TICK_SIZE="HL_TICK_SIZE",b.HL_MIN_TRADE_VALUE="HL_MIN_TRADE_VALUE",b.HL_REDUCE_ONLY="HL_REDUCE_ONLY",b.HL_POST_ONLY_WOULD_MATCH="HL_POST_ONLY_WOULD_MATCH",b.HL_IOC_NO_MATCH="HL_IOC_NO_MATCH",b.HL_BAD_TRIGGER_PRICE="HL_BAD_TRIGGER_PRICE",b.HL_NO_LIQUIDITY="HL_NO_LIQUIDITY",b.HL_OPEN_INTEREST_CAP="HL_OPEN_INTEREST_CAP",b.HL_OPEN_INTEREST_RATE="HL_OPEN_INTEREST_RATE",b.HL_INSUFFICIENT_SPOT_BALANCE="HL_INSUFFICIENT_SPOT_BALANCE",b.HL_PRICE_TOO_FAR_FROM_ORACLE="HL_PRICE_TOO_FAR_FROM_ORACLE",b.HL_MAX_POSITION_EXCEEDED="HL_MAX_POSITION_EXCEEDED",b.HL_ORDER_MISSING="HL_ORDER_MISSING",b.HL_ORDER_FAILED="HL_ORDER_FAILED",b.INVALID_ADDRESS="INVALID_ADDRESS",b.MISSING_REQUIRED_FIELD="MISSING_REQUIRED_FIELD",b.INVALID_FIELD_VALUE="INVALID_FIELD_VALUE",b.UNSUPPORTED_TRIGGER_TYPE="UNSUPPORTED_TRIGGER_TYPE",b.INVALID_POSITION_STRUCTURE="INVALID_POSITION_STRUCTURE",b.INVALID_LADDER_CONFIG="INVALID_LADDER_CONFIG",b.LADDER_CREATION_FAILED="LADDER_CREATION_FAILED",b.TWAP_DURATION_REQUIRED="TWAP_DURATION_REQUIRED",b.TWAP_INSUFFICIENT_VALUE="TWAP_INSUFFICIENT_VALUE",b.TWAP_CHUNK_SCHEDULING_FAILED="TWAP_CHUNK_SCHEDULING_FAILED",b.LEVERAGE_CONFIG_FAILED="LEVERAGE_CONFIG_FAILED",b.INVALID_RISK_PARAMETERS="INVALID_RISK_PARAMETERS",b.VAULT_WALLET_NOT_FOUND="VAULT_WALLET_NOT_FOUND",b.VAULT_UNAUTHORIZED="VAULT_UNAUTHORIZED",b.VAULT_UNSUPPORTED_TOKEN="VAULT_UNSUPPORTED_TOKEN",b.VAULT_MISSING_CONFIG="VAULT_MISSING_CONFIG",b.INVALID_NOTIFICATION_PARAMS="INVALID_NOTIFICATION_PARAMS",b.INTERNAL_ERROR="INTERNAL_ERROR",b.NETWORK_ERROR="NETWORK_ERROR",b.UNKNOWN="UNKNOWN",b))(Pt||{}),j=class extends Error{constructor(t,s,r,o){super(t);this.statusCode=s;this.code=r;this.originalError=o;this.name="PearApiError";}};var A="https://hl-v2.pearprotocol.io".replace(/\/+$/,"");var V=class{constructor(e,t=A,s=x){this.basePath=t;this.axios=s;e&&(this.configuration=e,this.basePath=e.basePath??t);}},ue=class extends Error{constructor(t,s){super(s);this.field=t;this.name="RequiredError";}},y={};var P="https://example.com",D=function(a,e,t){if(t==null)throw new ue(e,`Required parameter ${e} was null or undefined when calling ${a}.`)};var T=async function(a,e){if(e&&e.accessToken){let t=typeof e.accessToken=="function"?await e.accessToken():await e.accessToken;a.Authorization="Bearer "+t;}};function ke(a,e,t=""){e!=null&&(typeof e=="object"?Array.isArray(e)?e.forEach(s=>ke(a,s,t)):Object.keys(e).forEach(s=>ke(a,e[s],`${t}${t!==""?".":""}${s}`)):a.has(t)?a.append(t,e):a.set(t,e));}var C=function(a,...e){let t=new URLSearchParams(a.search);ke(t,e),a.search=t.toString();},w=function(a,e,t){let s=typeof a!="string";return (s&&t&&t.isJsonMime?t.isJsonMime(e.headers["Content-Type"]):s)?JSON.stringify(a!==void 0?a:{}):a||""},R=function(a){return a.pathname+a.search+a.hash},f=function(a,e,t,s){return (r=e,o=t)=>{let n={...a.options,url:(r.defaults.baseURL?"":s?.basePath??o)+a.url};return r.request(n)}};var tr={Reduce:"REDUCE",Increase:"INCREASE"},rr={Market:"MARKET",Limit:"LIMIT"},sr={Reduce:"REDUCE",Increase:"INCREASE"},or={Eip712:"eip712",ApiKey:"api_key",PrivyAccessToken:"privy_access_token"},nr={PredictionMarket:"prediction_market",Btcdom:"btcdom"},ar={Market:"MARKET",Twap:"TWAP",Trigger:"TRIGGER"},ir={Price:"PRICE",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO",Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE"},lr={MoreThan:"MORE_THAN",LessThan:"LESS_THAN"},cr={Sync:"SYNC",Market:"MARKET",Trigger:"TRIGGER",Twap:"TWAP",Ladder:"LADDER",Tp:"TP",Sl:"SL",SpotMarket:"SPOT_MARKET",SpotLimit:"SPOT_LIMIT",SpotTwap:"SPOT_TWAP"},ur={Price:"PRICE",PriceLimit:"PRICE_LIMIT",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO",BtcDom:"BTC_DOM",CrossAssetPrice:"CROSS_ASSET_PRICE",PredictionMarketOutcome:"PREDICTION_MARKET_OUTCOME"},pr={MoreThan:"MORE_THAN",LessThan:"LESS_THAN"},dr={Kalshi:"KALSHI",Hyperliquid:"HYPERLIQUID"},hr={B:"B",A:"A"},gr={Active:"active",Watchlist:"watchlist",AiPicks:"ai-picks"},mr={PredictionMarket:"prediction_market",Btcdom:"btcdom"},Ar={Binary:"binary",Multi:"multi"},yr={Open:"open",Closed:"closed",Settled:"settled"},Pr={Sync:"SYNC",Market:"MARKET",Trigger:"TRIGGER",Twap:"TWAP",Ladder:"LADDER",Tp:"TP",Sl:"SL",SpotMarket:"SPOT_MARKET",SpotLimit:"SPOT_LIMIT",SpotTwap:"SPOT_TWAP"},Cr={Open:"OPEN",Processing:"PROCESSING",Executed:"EXECUTED",Cancelled:"CANCELLED",Failed:"FAILED",PartiallyFilled:"PARTIALLY_FILLED"},Ze={FullyPear:"FULLY_PEAR",Partial:"PARTIAL",FullyExternal:"FULLY_EXTERNAL"},Rr={Cent:"cent",Percent:"percent"},fr={Long:"long",Short:"short"},xr={Open:"OPEN",Processing:"PROCESSING",Executed:"EXECUTED",Cancelled:"CANCELLED",Failed:"FAILED",PartiallyFilled:"PARTIALLY_FILLED"},br={Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE",Price:"PRICE",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO"},Tr={Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE",Price:"PRICE",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO"},Dr={PredictionMarket:"prediction_market",Btcdom:"btcdom"},Or={Kalshi:"kalshi",Hyperliquid:"hyperliquid",Coingecko:"coingecko"},Sr={Price:"PRICE",PriceLimit:"PRICE_LIMIT",PriceRatio:"PRICE_RATIO",WeightedRatio:"WEIGHTED_RATIO",BtcDom:"BTC_DOM",CrossAssetPrice:"CROSS_ASSET_PRICE",PredictionMarketOutcome:"PREDICTION_MARKET_OUTCOME",Price2:"PRICE",PriceRatio2:"PRICE_RATIO",WeightedRatio2:"WEIGHTED_RATIO",Percentage:"PERCENTAGE",Dollar:"DOLLAR",PositionValue:"POSITION_VALUE"},vr={MoreThan:"MORE_THAN",LessThan:"LESS_THAN"},wr={Kalshi:"KALSHI",Hyperliquid:"HYPERLIQUID"},Ir={Pending:"PENDING",Scheduled:"SCHEDULED",Executing:"EXECUTING",Completed:"COMPLETED",Failed:"FAILED",Cancelled:"CANCELLED"},Vr={Open:"OPEN",Executing:"EXECUTING",Completed:"COMPLETED",PartiallyCompleted:"PARTIALLY_COMPLETED",Failed:"FAILED",Cancelled:"CANCELLED"},Rt=function(a){return {apiKeysControllerCreateApiKey:async(e,t={})=>{D("apiKeysControllerCreateApiKey","apiKeysControllerCreateApiKeyRequest",e);let s="/api-keys",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},apiKeysControllerGetUserApiKeys:async(e={})=>{let t="/api-keys",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},Ee=function(a){let e=Rt(a);return {async apiKeysControllerCreateApiKey(t,s){let r=await e.apiKeysControllerCreateApiKey(t,s),o=a?.serverIndex??0,n=y["APIKeysApi.apiKeysControllerCreateApiKey"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async apiKeysControllerGetUserApiKeys(t){let s=await e.apiKeysControllerGetUserApiKeys(t),r=a?.serverIndex??0,o=y["APIKeysApi.apiKeysControllerGetUserApiKeys"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},kr=function(a,e,t){let s=Ee(a);return {apiKeysControllerCreateApiKey(r,o){return s.apiKeysControllerCreateApiKey(r,o).then(n=>n(t,e))},apiKeysControllerGetUserApiKeys(r){return s.apiKeysControllerGetUserApiKeys(r).then(o=>o(t,e))}}},Q=class extends V{apiKeysControllerCreateApiKey(e,t){return Ee(this.configuration).apiKeysControllerCreateApiKey(e,t).then(s=>s(this.axios,this.basePath))}apiKeysControllerGetUserApiKeys(e){return Ee(this.configuration).apiKeysControllerGetUserApiKeys(e).then(t=>t(this.axios,this.basePath))}},ft=function(a){return {accountsControllerGetAccountSummary:async(e={})=>{let t="/accounts",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},et=function(a){let e=ft(a);return {async accountsControllerGetAccountSummary(t){let s=await e.accountsControllerGetAccountSummary(t),r=a?.serverIndex??0,o=y["AccountsApi.accountsControllerGetAccountSummary"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},Er=function(a,e,t){let s=et(a);return {accountsControllerGetAccountSummary(r){return s.accountsControllerGetAccountSummary(r).then(o=>o(t,e))}}},de=class extends V{accountsControllerGetAccountSummary(e){return et(this.configuration).accountsControllerGetAccountSummary(e).then(t=>t(this.axios,this.basePath))}},xt=function(a){return {agentWalletControllerCreateAgentWallet:async(e={})=>{let t="/agentWallet",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"POST",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},agentWalletControllerGetAgentWallet:async(e={})=>{let t="/agentWallet",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},qe=function(a){let e=xt(a);return {async agentWalletControllerCreateAgentWallet(t){let s=await e.agentWalletControllerCreateAgentWallet(t),r=a?.serverIndex??0,o=y["AgentWalletApi.agentWalletControllerCreateAgentWallet"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async agentWalletControllerGetAgentWallet(t){let s=await e.agentWalletControllerGetAgentWallet(t),r=a?.serverIndex??0,o=y["AgentWalletApi.agentWalletControllerGetAgentWallet"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},qr=function(a,e,t){let s=qe(a);return {agentWalletControllerCreateAgentWallet(r){return s.agentWalletControllerCreateAgentWallet(r).then(o=>o(t,e))},agentWalletControllerGetAgentWallet(r){return s.agentWalletControllerGetAgentWallet(r).then(o=>o(t,e))}}},$=class extends V{agentWalletControllerCreateAgentWallet(e){return qe(this.configuration).agentWalletControllerCreateAgentWallet(e).then(t=>t(this.axios,this.basePath))}agentWalletControllerGetAgentWallet(e){return qe(this.configuration).agentWalletControllerGetAgentWallet(e).then(t=>t(this.axios,this.basePath))}},bt=function(a){return {authControllerAuthenticate:async(e,t={})=>{D("authControllerAuthenticate","authenticateRequestDto",e);let s="/auth/login",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},authControllerGetEIP712Message:async(e,t,s,r={})=>{D("authControllerGetEIP712Message","address",e),D("authControllerGetEIP712Message","clientId",t),D("authControllerGetEIP712Message","chainId",s);let o="/auth/eip712-message",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};e!==void 0&&(u.address=e),t!==void 0&&(u.clientId=t),s!==void 0&&(u.chainId=s),C(n,u);let d=i&&i.headers?i.headers:{};return l.headers={...c,...d,...r.headers},{url:R(n),options:l}},authControllerLogout:async(e,t={})=>{D("authControllerLogout","logoutRequestDto",e);let s="/auth/logout",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},authControllerRefreshToken:async(e,t={})=>{D("authControllerRefreshToken","refreshTokenRequestDto",e);let s="/auth/refresh",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},K=function(a){let e=bt(a);return {async authControllerAuthenticate(t,s){let r=await e.authControllerAuthenticate(t,s),o=a?.serverIndex??0,n=y["AuthenticationApi.authControllerAuthenticate"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async authControllerGetEIP712Message(t,s,r,o){let n=await e.authControllerGetEIP712Message(t,s,r,o),i=a?.serverIndex??0,l=y["AuthenticationApi.authControllerGetEIP712Message"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async authControllerLogout(t,s){let r=await e.authControllerLogout(t,s),o=a?.serverIndex??0,n=y["AuthenticationApi.authControllerLogout"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async authControllerRefreshToken(t,s){let r=await e.authControllerRefreshToken(t,s),o=a?.serverIndex??0,n=y["AuthenticationApi.authControllerRefreshToken"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Lr=function(a,e,t){let s=K(a);return {authControllerAuthenticate(r,o){return s.authControllerAuthenticate(r,o).then(n=>n(t,e))},authControllerGetEIP712Message(r,o,n,i){return s.authControllerGetEIP712Message(r,o,n,i).then(l=>l(t,e))},authControllerLogout(r,o){return s.authControllerLogout(r,o).then(n=>n(t,e))},authControllerRefreshToken(r,o){return s.authControllerRefreshToken(r,o).then(n=>n(t,e))}}},U=class extends V{authControllerAuthenticate(e,t){return K(this.configuration).authControllerAuthenticate(e,t).then(s=>s(this.axios,this.basePath))}authControllerGetEIP712Message(e,t,s,r){return K(this.configuration).authControllerGetEIP712Message(e,t,s,r).then(o=>o(this.axios,this.basePath))}authControllerLogout(e,t){return K(this.configuration).authControllerLogout(e,t).then(s=>s(this.axios,this.basePath))}authControllerRefreshToken(e,t){return K(this.configuration).authControllerRefreshToken(e,t).then(s=>s(this.axios,this.basePath))}},Tt=function(a){return {fillsControllerGetFills:async(e,t,s,r,o,n,i={})=>{let l="/fills",c=new URL(l,P),u;a&&(u=a.baseOptions);let d={method:"GET",...u,...i},h={},p={};e!==void 0&&(p.address=e),t!==void 0&&(p.assetName=t),s!==void 0&&(p.clientId=s),r!==void 0&&(p.isPearTrade=r),o!==void 0&&(p.startTime=o),n!==void 0&&(p.endTime=n),C(c,p);let g=u&&u.headers?u.headers:{};return d.headers={...h,...g,...i.headers},{url:R(c),options:d}}}},tt=function(a){let e=Tt(a);return {async fillsControllerGetFills(t,s,r,o,n,i,l){let c=await e.fillsControllerGetFills(t,s,r,o,n,i,l),u=a?.serverIndex??0,d=y["FillsApi.fillsControllerGetFills"]?.[u]?.url;return (h,p)=>f(c,x,A,a)(h,d||p)}}},Mr=function(a,e,t){let s=tt(a);return {fillsControllerGetFills(r,o,n,i,l,c,u){return s.fillsControllerGetFills(r,o,n,i,l,c,u).then(d=>d(t,e))}}},he=class extends V{fillsControllerGetFills(e,t,s,r,o,n,i){return tt(this.configuration).fillsControllerGetFills(e,t,s,r,o,n,i).then(l=>l(this.axios,this.basePath))}},Dt=function(a){return {healthControllerGetHealth:async(e={})=>{let t="/health",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={};C(s,{});let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}}}},rt=function(a){let e=Dt(a);return {async healthControllerGetHealth(t){let s=await e.healthControllerGetHealth(t),r=a?.serverIndex??0,o=y["HealthApi.healthControllerGetHealth"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)}}},Wr=function(a,e,t){let s=rt(a);return {healthControllerGetHealth(r){return s.healthControllerGetHealth(r).then(o=>o(t,e))}}},Ye=class extends V{healthControllerGetHealth(e){return rt(this.configuration).healthControllerGetHealth(e).then(t=>t(this.axios,this.basePath))}},Ot=function(a){return {legacySupportControllerGetLegacyDailyStats:async(e,t,s,r={})=>{let o="/legacysupport/dailyStats",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};e!==void 0&&(u.period=e),t!==void 0&&(u.startDate=t),s!==void 0&&(u.endDate=s),C(n,u);let d=i&&i.headers?i.headers:{};return l.headers={...c,...d,...r.headers},{url:R(n),options:l}},legacySupportControllerGetLegacyHyperliquidStats:async(e,t,s,r={})=>{D("legacySupportControllerGetLegacyHyperliquidStats","address",e);let o="/legacysupport/stats/hyperliquid",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};e!==void 0&&(u.address=e),t!==void 0&&(u.period=t),s!==void 0&&(u.startDate=s),C(n,u);let d=i&&i.headers?i.headers:{};return l.headers={...c,...d,...r.headers},{url:R(n),options:l}},legacySupportControllerGetLegacyMetrics:async(e,t={})=>{let s="/legacysupport/metric",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};e!==void 0&&(l.timestamp=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},legacySupportControllerGetLegacyWeeklyVolume:async(e,t={})=>{let s="/legacysupport/weeklyVolume",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};e!==void 0&&(l.timestamp=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}}}},z=function(a){let e=Ot(a);return {async legacySupportControllerGetLegacyDailyStats(t,s,r,o){let n=await e.legacySupportControllerGetLegacyDailyStats(t,s,r,o),i=a?.serverIndex??0,l=y["LegacySupportApi.legacySupportControllerGetLegacyDailyStats"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async legacySupportControllerGetLegacyHyperliquidStats(t,s,r,o){let n=await e.legacySupportControllerGetLegacyHyperliquidStats(t,s,r,o),i=a?.serverIndex??0,l=y["LegacySupportApi.legacySupportControllerGetLegacyHyperliquidStats"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async legacySupportControllerGetLegacyMetrics(t,s){let r=await e.legacySupportControllerGetLegacyMetrics(t,s),o=a?.serverIndex??0,n=y["LegacySupportApi.legacySupportControllerGetLegacyMetrics"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async legacySupportControllerGetLegacyWeeklyVolume(t,s){let r=await e.legacySupportControllerGetLegacyWeeklyVolume(t,s),o=a?.serverIndex??0,n=y["LegacySupportApi.legacySupportControllerGetLegacyWeeklyVolume"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Gr=function(a,e,t){let s=z(a);return {legacySupportControllerGetLegacyDailyStats(r,o,n,i){return s.legacySupportControllerGetLegacyDailyStats(r,o,n,i).then(l=>l(t,e))},legacySupportControllerGetLegacyHyperliquidStats(r,o,n,i){return s.legacySupportControllerGetLegacyHyperliquidStats(r,o,n,i).then(l=>l(t,e))},legacySupportControllerGetLegacyMetrics(r,o){return s.legacySupportControllerGetLegacyMetrics(r,o).then(n=>n(t,e))},legacySupportControllerGetLegacyWeeklyVolume(r,o){return s.legacySupportControllerGetLegacyWeeklyVolume(r,o).then(n=>n(t,e))}}},Xe=class extends V{legacySupportControllerGetLegacyDailyStats(e,t,s,r){return z(this.configuration).legacySupportControllerGetLegacyDailyStats(e,t,s,r).then(o=>o(this.axios,this.basePath))}legacySupportControllerGetLegacyHyperliquidStats(e,t,s,r){return z(this.configuration).legacySupportControllerGetLegacyHyperliquidStats(e,t,s,r).then(o=>o(this.axios,this.basePath))}legacySupportControllerGetLegacyMetrics(e,t){return z(this.configuration).legacySupportControllerGetLegacyMetrics(e,t).then(s=>s(this.axios,this.basePath))}legacySupportControllerGetLegacyWeeklyVolume(e,t){return z(this.configuration).legacySupportControllerGetLegacyWeeklyVolume(e,t).then(s=>s(this.axios,this.basePath))}},St=function(a){return {marketsControllerGetActiveMarket:async(e={})=>{let t="/markets/active",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={};C(s,{});let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},marketsControllerGetMarketDataV2:async(e={})=>{let t="/markets/v2",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={};C(s,{});let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},marketsControllerGetMarkets:async(e,t,s,r,o,n,i,l,c,u,d,h={})=>{let p="/markets",g=new URL(p,P),O;a&&(O=a.baseOptions);let S={method:"GET",...O,...h},I={},m={};e!==void 0&&(m.offset=e),t!==void 0&&(m.page=t),s!==void 0&&(m.pageSize=s),r!==void 0&&(m.engine=r),o!==void 0&&(m.minVolume=o),n!==void 0&&(m.change24h=n),i!==void 0&&(m.netFunding=i),l!==void 0&&(m.searchText=l),c!==void 0&&(m.sort=c),u!==void 0&&(m.excludeText=u),d!==void 0&&(m.active=d),C(g,m);let v=O&&O.headers?O.headers:{};return S.headers={...I,...v,...h.headers},{url:R(g),options:S}}}},pe=function(a){let e=St(a);return {async marketsControllerGetActiveMarket(t){let s=await e.marketsControllerGetActiveMarket(t),r=a?.serverIndex??0,o=y["MarketsApi.marketsControllerGetActiveMarket"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async marketsControllerGetMarketDataV2(t){let s=await e.marketsControllerGetMarketDataV2(t),r=a?.serverIndex??0,o=y["MarketsApi.marketsControllerGetMarketDataV2"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async marketsControllerGetMarkets(t,s,r,o,n,i,l,c,u,d,h,p){let g=await e.marketsControllerGetMarkets(t,s,r,o,n,i,l,c,u,d,h,p),O=a?.serverIndex??0,S=y["MarketsApi.marketsControllerGetMarkets"]?.[O]?.url;return (I,m)=>f(g,x,A,a)(I,S||m)}}},Ur=function(a,e,t){let s=pe(a);return {marketsControllerGetActiveMarket(r){return s.marketsControllerGetActiveMarket(r).then(o=>o(t,e))},marketsControllerGetMarketDataV2(r){return s.marketsControllerGetMarketDataV2(r).then(o=>o(t,e))},marketsControllerGetMarkets(r,o,n,i,l,c,u,d,h,p,g,O){return s.marketsControllerGetMarkets(r,o,n,i,l,c,u,d,h,p,g,O).then(S=>S(t,e))}}},Y=class extends V{marketsControllerGetActiveMarket(e){return pe(this.configuration).marketsControllerGetActiveMarket(e).then(t=>t(this.axios,this.basePath))}marketsControllerGetMarketDataV2(e){return pe(this.configuration).marketsControllerGetMarketDataV2(e).then(t=>t(this.axios,this.basePath))}marketsControllerGetMarkets(e,t,s,r,o,n,i,l,c,u,d,h){return pe(this.configuration).marketsControllerGetMarkets(e,t,s,r,o,n,i,l,c,u,d,h).then(p=>p(this.axios,this.basePath))}},vt=function(a){return {notificationsControllerGetNotifications:async(e,t,s,r={})=>{let o="/notifications",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};await T(c,a),e!==void 0&&(u.limit=e),t!==void 0&&(u.startDate=t),s!==void 0&&(u.endDate=s),C(n,u);let d=i&&i.headers?i.headers:{};return l.headers={...c,...d,...r.headers},{url:R(n),options:l}},notificationsControllerMarkRead:async(e,t={})=>{D("notificationsControllerMarkRead","markNotificationsReadDto",e);let s="/notifications/read",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},Le=function(a){let e=vt(a);return {async notificationsControllerGetNotifications(t,s,r,o){let n=await e.notificationsControllerGetNotifications(t,s,r,o),i=a?.serverIndex??0,l=y["NotificationsApi.notificationsControllerGetNotifications"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)},async notificationsControllerMarkRead(t,s){let r=await e.notificationsControllerMarkRead(t,s),o=a?.serverIndex??0,n=y["NotificationsApi.notificationsControllerMarkRead"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Hr=function(a,e,t){let s=Le(a);return {notificationsControllerGetNotifications(r,o,n,i){return s.notificationsControllerGetNotifications(r,o,n,i).then(l=>l(t,e))},notificationsControllerMarkRead(r,o){return s.notificationsControllerMarkRead(r,o).then(n=>n(t,e))}}},X=class extends V{notificationsControllerGetNotifications(e,t,s,r){return Le(this.configuration).notificationsControllerGetNotifications(e,t,s,r).then(o=>o(this.axios,this.basePath))}notificationsControllerMarkRead(e,t){return Le(this.configuration).notificationsControllerMarkRead(e,t).then(s=>s(this.axios,this.basePath))}},wt=function(a){return {ordersControllerCancelOrder:async(e,t={})=>{D("ordersControllerCancelOrder","orderId",e);let s="/orders/{orderId}/cancel".replace("{orderId}",encodeURIComponent(String(e))),r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"DELETE",...o,...t},i={},l={};await T(i,a),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},ordersControllerCancelTwapOrder:async(e,t={})=>{D("ordersControllerCancelTwapOrder","orderId",e);let s="/orders/{orderId}/twap/cancel".replace("{orderId}",encodeURIComponent(String(e))),r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},ordersControllerGetAllOrders:async(e,t,s,r,o={})=>{let n="/orders",i=new URL(n,P),l;a&&(l=a.baseOptions);let c={method:"GET",...l,...o},u={},d={};await T(u,a),e!==void 0&&(d.page=e),t!==void 0&&(d.limit=t),s!==void 0&&(d.status=s),r!==void 0&&(d.orderType=r),C(i,d);let h=l&&l.headers?l.headers:{};return c.headers={...u,...h,...o.headers},{url:R(i),options:c}},ordersControllerGetKalshiTriggers:async(e,t,s,r,o={})=>{let n="/orders/triggers/kalshi",i=new URL(n,P),l;a&&(l=a.baseOptions);let c={method:"GET",...l,...o},u={},d={};await T(u,a),e!==void 0&&(d.category=e),t!==void 0&&(d.search=t),s!==void 0&&(d.cursor=s),r!==void 0&&(d.pageSize=r),C(i,d);let h=l&&l.headers?l.headers:{};return c.headers={...u,...h,...o.headers},{url:R(i),options:c}},ordersControllerGetOpenOrders:async(e={})=>{let t="/orders/open",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},ordersControllerGetTriggers:async(e,t={})=>{let s="/orders/triggers",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.category=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},ordersControllerGetTwapOrders:async(e={})=>{let t="/orders/twap",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},ordersControllerSpotOrder:async(e,t={})=>{D("ordersControllerSpotOrder","spotOrderRequestDto",e);let s="/orders/spot",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},G=function(a){let e=wt(a);return {async ordersControllerCancelOrder(t,s){let r=await e.ordersControllerCancelOrder(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerCancelOrder"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async ordersControllerCancelTwapOrder(t,s){let r=await e.ordersControllerCancelTwapOrder(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerCancelTwapOrder"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async ordersControllerGetAllOrders(t,s,r,o,n){let i=await e.ordersControllerGetAllOrders(t,s,r,o,n),l=a?.serverIndex??0,c=y["OrdersApi.ordersControllerGetAllOrders"]?.[l]?.url;return (u,d)=>f(i,x,A,a)(u,c||d)},async ordersControllerGetKalshiTriggers(t,s,r,o,n){let i=await e.ordersControllerGetKalshiTriggers(t,s,r,o,n),l=a?.serverIndex??0,c=y["OrdersApi.ordersControllerGetKalshiTriggers"]?.[l]?.url;return (u,d)=>f(i,x,A,a)(u,c||d)},async ordersControllerGetOpenOrders(t){let s=await e.ordersControllerGetOpenOrders(t),r=a?.serverIndex??0,o=y["OrdersApi.ordersControllerGetOpenOrders"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async ordersControllerGetTriggers(t,s){let r=await e.ordersControllerGetTriggers(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerGetTriggers"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async ordersControllerGetTwapOrders(t){let s=await e.ordersControllerGetTwapOrders(t),r=a?.serverIndex??0,o=y["OrdersApi.ordersControllerGetTwapOrders"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async ordersControllerSpotOrder(t,s){let r=await e.ordersControllerSpotOrder(t,s),o=a?.serverIndex??0,n=y["OrdersApi.ordersControllerSpotOrder"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},_r=function(a,e,t){let s=G(a);return {ordersControllerCancelOrder(r,o){return s.ordersControllerCancelOrder(r,o).then(n=>n(t,e))},ordersControllerCancelTwapOrder(r,o){return s.ordersControllerCancelTwapOrder(r,o).then(n=>n(t,e))},ordersControllerGetAllOrders(r,o,n,i,l){return s.ordersControllerGetAllOrders(r,o,n,i,l).then(c=>c(t,e))},ordersControllerGetKalshiTriggers(r,o,n,i,l){return s.ordersControllerGetKalshiTriggers(r,o,n,i,l).then(c=>c(t,e))},ordersControllerGetOpenOrders(r){return s.ordersControllerGetOpenOrders(r).then(o=>o(t,e))},ordersControllerGetTriggers(r,o){return s.ordersControllerGetTriggers(r,o).then(n=>n(t,e))},ordersControllerGetTwapOrders(r){return s.ordersControllerGetTwapOrders(r).then(o=>o(t,e))},ordersControllerSpotOrder(r,o){return s.ordersControllerSpotOrder(r,o).then(n=>n(t,e))}}},L=class extends V{ordersControllerCancelOrder(e,t){return G(this.configuration).ordersControllerCancelOrder(e,t).then(s=>s(this.axios,this.basePath))}ordersControllerCancelTwapOrder(e,t){return G(this.configuration).ordersControllerCancelTwapOrder(e,t).then(s=>s(this.axios,this.basePath))}ordersControllerGetAllOrders(e,t,s,r,o){return G(this.configuration).ordersControllerGetAllOrders(e,t,s,r,o).then(n=>n(this.axios,this.basePath))}ordersControllerGetKalshiTriggers(e,t,s,r,o){return G(this.configuration).ordersControllerGetKalshiTriggers(e,t,s,r,o).then(n=>n(this.axios,this.basePath))}ordersControllerGetOpenOrders(e){return G(this.configuration).ordersControllerGetOpenOrders(e).then(t=>t(this.axios,this.basePath))}ordersControllerGetTriggers(e,t){return G(this.configuration).ordersControllerGetTriggers(e,t).then(s=>s(this.axios,this.basePath))}ordersControllerGetTwapOrders(e){return G(this.configuration).ordersControllerGetTwapOrders(e).then(t=>t(this.axios,this.basePath))}ordersControllerSpotOrder(e,t){return G(this.configuration).ordersControllerSpotOrder(e,t).then(s=>s(this.axios,this.basePath))}},Fr={Open:"OPEN",Processing:"PROCESSING",Executed:"EXECUTED",Cancelled:"CANCELLED",Failed:"FAILED",PartiallyFilled:"PARTIALLY_FILLED"},Br={Sync:"SYNC",Market:"MARKET",Trigger:"TRIGGER",Twap:"TWAP",Ladder:"LADDER",Tp:"TP",Sl:"SL",SpotMarket:"SPOT_MARKET",SpotLimit:"SPOT_LIMIT",SpotTwap:"SPOT_TWAP"},Nr={PredictionMarket:"prediction_market",Btcdom:"btcdom",All:"all"},It=function(a){return {portfolioControllerGetAnalytics:async(e,t,s,r,o,n={})=>{let i="/portfolio/analytics",l=new URL(i,P),c;a&&(c=a.baseOptions);let u={method:"GET",...c,...n},d={},h={};await T(d,a),e!==void 0&&(h.startDate=e),t!==void 0&&(h.endDate=t),s!==void 0&&(h.interval=s),r!==void 0&&(h.rollingWindowDays=r),o!==void 0&&(h.includeSeries=o),C(l,h);let p=c&&c.headers?c.headers:{};return u.headers={...d,...p,...n.headers},{url:R(l),options:u}},portfolioControllerGetPortfolio:async(e,t,s={})=>{let r="/portfolio",o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"GET",...n,...s},l={},c={};await T(l,a),e!==void 0&&(c.startDate=e),t!==void 0&&(c.endDate=t),C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},{url:R(o),options:i}}}},Me=function(a){let e=It(a);return {async portfolioControllerGetAnalytics(t,s,r,o,n,i){let l=await e.portfolioControllerGetAnalytics(t,s,r,o,n,i),c=a?.serverIndex??0,u=y["PortfolioApi.portfolioControllerGetAnalytics"]?.[c]?.url;return (d,h)=>f(l,x,A,a)(d,u||h)},async portfolioControllerGetPortfolio(t,s,r){let o=await e.portfolioControllerGetPortfolio(t,s,r),n=a?.serverIndex??0,i=y["PortfolioApi.portfolioControllerGetPortfolio"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)}}},jr=function(a,e,t){let s=Me(a);return {portfolioControllerGetAnalytics(r,o,n,i,l,c){return s.portfolioControllerGetAnalytics(r,o,n,i,l,c).then(u=>u(t,e))},portfolioControllerGetPortfolio(r,o,n){return s.portfolioControllerGetPortfolio(r,o,n).then(i=>i(t,e))}}},ge=class extends V{portfolioControllerGetAnalytics(e,t,s,r,o,n){return Me(this.configuration).portfolioControllerGetAnalytics(e,t,s,r,o,n).then(i=>i(this.axios,this.basePath))}portfolioControllerGetPortfolio(e,t,s){return Me(this.configuration).portfolioControllerGetPortfolio(e,t,s).then(r=>r(this.axios,this.basePath))}},Kr={_1d:"1d",_1w:"1w",_1m:"1m",_1y:"1y",All:"all"},Vt=function(a){return {positionsControllerAdjustAdvancePosition:async(e,t,s={})=>{D("positionsControllerAdjustAdvancePosition","positionId",e),D("positionsControllerAdjustAdvancePosition","adjustAdvanceItemDto",t);let r="/positions/{positionId}/adjust-advance".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerAdjustLeverage:async(e,t,s={})=>{D("positionsControllerAdjustLeverage","positionId",e),D("positionsControllerAdjustLeverage","adjustLeverageRequestDto",t);let r="/positions/{positionId}/adjust-leverage".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerAdjustPosition:async(e,t,s={})=>{D("positionsControllerAdjustPosition","positionId",e),D("positionsControllerAdjustPosition","adjustPositionRequestDto",t);let r="/positions/{positionId}/adjust".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerCloseAllPositions:async(e,t={})=>{D("positionsControllerCloseAllPositions","closePositionRequestDto",e);let s="/positions/close-all",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},positionsControllerClosePosition:async(e,t,s={})=>{D("positionsControllerClosePosition","positionId",e),D("positionsControllerClosePosition","closePositionRequestDto",t);let r="/positions/{positionId}/close".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerCreatePosition:async(e,t={})=>{D("positionsControllerCreatePosition","createPositionRequestDto",e);let s="/positions",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},positionsControllerGetOpenPositions:async(e={})=>{let t="/positions",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},positionsControllerPlanRebalance:async(e,t,s={})=>{D("positionsControllerPlanRebalance","positionId",e),D("positionsControllerPlanRebalance","rebalancePositionRequestDto",t);let r="/positions/{positionId}/rebalance/plan".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerRebalancePosition:async(e,t,s={})=>{D("positionsControllerRebalancePosition","positionId",e),D("positionsControllerRebalancePosition","rebalancePositionRequestDto",t);let r="/positions/{positionId}/rebalance".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"POST",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}},positionsControllerUpdateRiskParameters:async(e,t,s={})=>{D("positionsControllerUpdateRiskParameters","positionId",e),D("positionsControllerUpdateRiskParameters","updateRiskParametersRequestDto",t);let r="/positions/{positionId}/riskParameters".replace("{positionId}",encodeURIComponent(String(e))),o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"PUT",...n,...s},l={},c={};await T(l,a),l["Content-Type"]="application/json",C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},i.data=w(t,i,a),{url:R(o),options:i}}}},q=function(a){let e=Vt(a);return {async positionsControllerAdjustAdvancePosition(t,s,r){let o=await e.positionsControllerAdjustAdvancePosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerAdjustAdvancePosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerAdjustLeverage(t,s,r){let o=await e.positionsControllerAdjustLeverage(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerAdjustLeverage"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerAdjustPosition(t,s,r){let o=await e.positionsControllerAdjustPosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerAdjustPosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerCloseAllPositions(t,s){let r=await e.positionsControllerCloseAllPositions(t,s),o=a?.serverIndex??0,n=y["PositionsApi.positionsControllerCloseAllPositions"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async positionsControllerClosePosition(t,s,r){let o=await e.positionsControllerClosePosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerClosePosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerCreatePosition(t,s){let r=await e.positionsControllerCreatePosition(t,s),o=a?.serverIndex??0,n=y["PositionsApi.positionsControllerCreatePosition"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async positionsControllerGetOpenPositions(t){let s=await e.positionsControllerGetOpenPositions(t),r=a?.serverIndex??0,o=y["PositionsApi.positionsControllerGetOpenPositions"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async positionsControllerPlanRebalance(t,s,r){let o=await e.positionsControllerPlanRebalance(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerPlanRebalance"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerRebalancePosition(t,s,r){let o=await e.positionsControllerRebalancePosition(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerRebalancePosition"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async positionsControllerUpdateRiskParameters(t,s,r){let o=await e.positionsControllerUpdateRiskParameters(t,s,r),n=a?.serverIndex??0,i=y["PositionsApi.positionsControllerUpdateRiskParameters"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)}}},zr=function(a,e,t){let s=q(a);return {positionsControllerAdjustAdvancePosition(r,o,n){return s.positionsControllerAdjustAdvancePosition(r,o,n).then(i=>i(t,e))},positionsControllerAdjustLeverage(r,o,n){return s.positionsControllerAdjustLeverage(r,o,n).then(i=>i(t,e))},positionsControllerAdjustPosition(r,o,n){return s.positionsControllerAdjustPosition(r,o,n).then(i=>i(t,e))},positionsControllerCloseAllPositions(r,o){return s.positionsControllerCloseAllPositions(r,o).then(n=>n(t,e))},positionsControllerClosePosition(r,o,n){return s.positionsControllerClosePosition(r,o,n).then(i=>i(t,e))},positionsControllerCreatePosition(r,o){return s.positionsControllerCreatePosition(r,o).then(n=>n(t,e))},positionsControllerGetOpenPositions(r){return s.positionsControllerGetOpenPositions(r).then(o=>o(t,e))},positionsControllerPlanRebalance(r,o,n){return s.positionsControllerPlanRebalance(r,o,n).then(i=>i(t,e))},positionsControllerRebalancePosition(r,o,n){return s.positionsControllerRebalancePosition(r,o,n).then(i=>i(t,e))},positionsControllerUpdateRiskParameters(r,o,n){return s.positionsControllerUpdateRiskParameters(r,o,n).then(i=>i(t,e))}}},E=class extends V{positionsControllerAdjustAdvancePosition(e,t,s){return q(this.configuration).positionsControllerAdjustAdvancePosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerAdjustLeverage(e,t,s){return q(this.configuration).positionsControllerAdjustLeverage(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerAdjustPosition(e,t,s){return q(this.configuration).positionsControllerAdjustPosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerCloseAllPositions(e,t){return q(this.configuration).positionsControllerCloseAllPositions(e,t).then(s=>s(this.axios,this.basePath))}positionsControllerClosePosition(e,t,s){return q(this.configuration).positionsControllerClosePosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerCreatePosition(e,t){return q(this.configuration).positionsControllerCreatePosition(e,t).then(s=>s(this.axios,this.basePath))}positionsControllerGetOpenPositions(e){return q(this.configuration).positionsControllerGetOpenPositions(e).then(t=>t(this.axios,this.basePath))}positionsControllerPlanRebalance(e,t,s){return q(this.configuration).positionsControllerPlanRebalance(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerRebalancePosition(e,t,s){return q(this.configuration).positionsControllerRebalancePosition(e,t,s).then(r=>r(this.axios,this.basePath))}positionsControllerUpdateRiskParameters(e,t,s){return q(this.configuration).positionsControllerUpdateRiskParameters(e,t,s).then(r=>r(this.axios,this.basePath))}},kt=function(a){return {publicStatsControllerGetAddressStats:async(e,t,s={})=>{D("publicStatsControllerGetAddressStats","addresses",e);let r="/public-stats/address",o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"GET",...n,...s},l={},c={};e!==void 0&&(c.addresses=e),t!==void 0&&(c.startFrom=t),C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},{url:R(o),options:i}}}},st=function(a){let e=kt(a);return {async publicStatsControllerGetAddressStats(t,s,r){let o=await e.publicStatsControllerGetAddressStats(t,s,r),n=a?.serverIndex??0,i=y["PublicStatsApi.publicStatsControllerGetAddressStats"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)}}},Qr=function(a,e,t){let s=st(a);return {publicStatsControllerGetAddressStats(r,o,n){return s.publicStatsControllerGetAddressStats(r,o,n).then(i=>i(t,e))}}},me=class extends V{publicStatsControllerGetAddressStats(e,t,s){return st(this.configuration).publicStatsControllerGetAddressStats(e,t,s).then(r=>r(this.axios,this.basePath))}},Et=function(a){return {syncControllerSyncFills:async(e,t={})=>{D("syncControllerSyncFills","syncFillsRequestDto",e);let s="/sync/fills",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},ot=function(a){let e=Et(a);return {async syncControllerSyncFills(t,s){let r=await e.syncControllerSyncFills(t,s),o=a?.serverIndex??0,n=y["SyncApi.syncControllerSyncFills"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},$r=function(a,e,t){let s=ot(a);return {syncControllerSyncFills(r,o){return s.syncControllerSyncFills(r,o).then(n=>n(t,e))}}},Ae=class extends V{syncControllerSyncFills(e,t){return ot(this.configuration).syncControllerSyncFills(e,t).then(s=>s(this.axios,this.basePath))}},qt=function(a){return {tradeHistoryControllerGetTradeHistory:async(e,t,s,r={})=>{let o="/trade-history",n=new URL(o,P),i;a&&(i=a.baseOptions);let l={method:"GET",...i,...r},c={},u={};await T(c,a),e!==void 0&&(u.limit=e),t!==void 0&&(u.startDate=t),s!==void 0&&(u.endDate=s),C(n,u);let d=i&&i.headers?i.headers:{};return l.headers={...c,...d,...r.headers},{url:R(n),options:l}}}},nt=function(a){let e=qt(a);return {async tradeHistoryControllerGetTradeHistory(t,s,r,o){let n=await e.tradeHistoryControllerGetTradeHistory(t,s,r,o),i=a?.serverIndex??0,l=y["TradeHistoryApi.tradeHistoryControllerGetTradeHistory"]?.[i]?.url;return (c,u)=>f(n,x,A,a)(c,l||u)}}},Yr=function(a,e,t){let s=nt(a);return {tradeHistoryControllerGetTradeHistory(r,o,n,i){return s.tradeHistoryControllerGetTradeHistory(r,o,n,i).then(l=>l(t,e))}}},ye=class extends V{tradeHistoryControllerGetTradeHistory(e,t,s,r){return nt(this.configuration).tradeHistoryControllerGetTradeHistory(e,t,s,r).then(o=>o(this.axios,this.basePath))}},Lt=function(a){return {vaultWalletControllerCreateVaultWallet:async(e,t={})=>{D("vaultWalletControllerCreateVaultWallet","createVaultWalletRequestDto",e);let s="/vault-wallet",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},vaultWalletControllerDeleteVaultWallet:async(e,t={})=>{D("vaultWalletControllerDeleteVaultWallet","vaultAddress",e);let s="/vault-wallet",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"DELETE",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.vaultAddress=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},vaultWalletControllerGetAllVaultWallets:async(e,t,s={})=>{let r="/vault-wallet/all",o=new URL(r,P),n;a&&(n=a.baseOptions);let i={method:"GET",...n,...s},l={},c={};await T(l,a),e!==void 0&&(c.name=e),t!==void 0&&(c.address=t),C(o,c);let u=n&&n.headers?n.headers:{};return i.headers={...l,...u,...s.headers},{url:R(o),options:i}},vaultWalletControllerGetBalances:async(e={})=>{let t="/vault-wallet/balances",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},vaultWalletControllerGetVaultWallet:async(e,t={})=>{D("vaultWalletControllerGetVaultWallet","vaultAddress",e);let s="/vault-wallet",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"GET",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.vaultAddress=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},vaultWalletControllerRefreshApiForVault:async(e,t={})=>{D("vaultWalletControllerRefreshApiForVault","vaultAddress",e);let s="/vault-wallet/refreshAPIforVault",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),e!==void 0&&(l.vaultAddress=e),C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},{url:R(r),options:n}},vaultWalletControllerSwapAndTransferToPerp:async(e,t={})=>{D("vaultWalletControllerSwapAndTransferToPerp","swapAndTransferRequestDto",e);let s="/vault-wallet/swap-and-transfer",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},vaultWalletControllerTransferPerpToSpot:async(e,t={})=>{D("vaultWalletControllerTransferPerpToSpot","transferPerpToSpotRequestDto",e);let s="/vault-wallet/perp-to-spot",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}},vaultWalletControllerTransferSpotToPerp:async(e,t={})=>{D("vaultWalletControllerTransferSpotToPerp","transferSpotToPerpRequestDto",e);let s="/vault-wallet/spot-to-perp",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},M=function(a){let e=Lt(a);return {async vaultWalletControllerCreateVaultWallet(t,s){let r=await e.vaultWalletControllerCreateVaultWallet(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerCreateVaultWallet"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerDeleteVaultWallet(t,s){let r=await e.vaultWalletControllerDeleteVaultWallet(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerDeleteVaultWallet"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerGetAllVaultWallets(t,s,r){let o=await e.vaultWalletControllerGetAllVaultWallets(t,s,r),n=a?.serverIndex??0,i=y["VaultWalletApi.vaultWalletControllerGetAllVaultWallets"]?.[n]?.url;return (l,c)=>f(o,x,A,a)(l,i||c)},async vaultWalletControllerGetBalances(t){let s=await e.vaultWalletControllerGetBalances(t),r=a?.serverIndex??0,o=y["VaultWalletApi.vaultWalletControllerGetBalances"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async vaultWalletControllerGetVaultWallet(t,s){let r=await e.vaultWalletControllerGetVaultWallet(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerGetVaultWallet"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerRefreshApiForVault(t,s){let r=await e.vaultWalletControllerRefreshApiForVault(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerRefreshApiForVault"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerSwapAndTransferToPerp(t,s){let r=await e.vaultWalletControllerSwapAndTransferToPerp(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerSwapAndTransferToPerp"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerTransferPerpToSpot(t,s){let r=await e.vaultWalletControllerTransferPerpToSpot(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerTransferPerpToSpot"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)},async vaultWalletControllerTransferSpotToPerp(t,s){let r=await e.vaultWalletControllerTransferSpotToPerp(t,s),o=a?.serverIndex??0,n=y["VaultWalletApi.vaultWalletControllerTransferSpotToPerp"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Xr=function(a,e,t){let s=M(a);return {vaultWalletControllerCreateVaultWallet(r,o){return s.vaultWalletControllerCreateVaultWallet(r,o).then(n=>n(t,e))},vaultWalletControllerDeleteVaultWallet(r,o){return s.vaultWalletControllerDeleteVaultWallet(r,o).then(n=>n(t,e))},vaultWalletControllerGetAllVaultWallets(r,o,n){return s.vaultWalletControllerGetAllVaultWallets(r,o,n).then(i=>i(t,e))},vaultWalletControllerGetBalances(r){return s.vaultWalletControllerGetBalances(r).then(o=>o(t,e))},vaultWalletControllerGetVaultWallet(r,o){return s.vaultWalletControllerGetVaultWallet(r,o).then(n=>n(t,e))},vaultWalletControllerRefreshApiForVault(r,o){return s.vaultWalletControllerRefreshApiForVault(r,o).then(n=>n(t,e))},vaultWalletControllerSwapAndTransferToPerp(r,o){return s.vaultWalletControllerSwapAndTransferToPerp(r,o).then(n=>n(t,e))},vaultWalletControllerTransferPerpToSpot(r,o){return s.vaultWalletControllerTransferPerpToSpot(r,o).then(n=>n(t,e))},vaultWalletControllerTransferSpotToPerp(r,o){return s.vaultWalletControllerTransferSpotToPerp(r,o).then(n=>n(t,e))}}},Je=class extends V{vaultWalletControllerCreateVaultWallet(e,t){return M(this.configuration).vaultWalletControllerCreateVaultWallet(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerDeleteVaultWallet(e,t){return M(this.configuration).vaultWalletControllerDeleteVaultWallet(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerGetAllVaultWallets(e,t,s){return M(this.configuration).vaultWalletControllerGetAllVaultWallets(e,t,s).then(r=>r(this.axios,this.basePath))}vaultWalletControllerGetBalances(e){return M(this.configuration).vaultWalletControllerGetBalances(e).then(t=>t(this.axios,this.basePath))}vaultWalletControllerGetVaultWallet(e,t){return M(this.configuration).vaultWalletControllerGetVaultWallet(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerRefreshApiForVault(e,t){return M(this.configuration).vaultWalletControllerRefreshApiForVault(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerSwapAndTransferToPerp(e,t){return M(this.configuration).vaultWalletControllerSwapAndTransferToPerp(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerTransferPerpToSpot(e,t){return M(this.configuration).vaultWalletControllerTransferPerpToSpot(e,t).then(s=>s(this.axios,this.basePath))}vaultWalletControllerTransferSpotToPerp(e,t){return M(this.configuration).vaultWalletControllerTransferSpotToPerp(e,t).then(s=>s(this.axios,this.basePath))}},Mt=function(a){return {watchlistControllerGetWatchlist:async(e={})=>{let t="/watchlist",s=new URL(t,P),r;a&&(r=a.baseOptions);let o={method:"GET",...r,...e},n={},i={};await T(n,a),C(s,i);let l=r&&r.headers?r.headers:{};return o.headers={...n,...l,...e.headers},{url:R(s),options:o}},watchlistControllerToggle:async(e,t={})=>{D("watchlistControllerToggle","toggleWatchlistDto",e);let s="/watchlist",r=new URL(s,P),o;a&&(o=a.baseOptions);let n={method:"POST",...o,...t},i={},l={};await T(i,a),i["Content-Type"]="application/json",C(r,l);let c=o&&o.headers?o.headers:{};return n.headers={...i,...c,...t.headers},n.data=w(e,n,a),{url:R(r),options:n}}}},We=function(a){let e=Mt(a);return {async watchlistControllerGetWatchlist(t){let s=await e.watchlistControllerGetWatchlist(t),r=a?.serverIndex??0,o=y["WatchlistApi.watchlistControllerGetWatchlist"]?.[r]?.url;return (n,i)=>f(s,x,A,a)(n,o||i)},async watchlistControllerToggle(t,s){let r=await e.watchlistControllerToggle(t,s),o=a?.serverIndex??0,n=y["WatchlistApi.watchlistControllerToggle"]?.[o]?.url;return (i,l)=>f(r,x,A,a)(i,n||l)}}},Jr=function(a,e,t){let s=We(a);return {watchlistControllerGetWatchlist(r){return s.watchlistControllerGetWatchlist(r).then(o=>o(t,e))},watchlistControllerToggle(r,o){return s.watchlistControllerToggle(r,o).then(n=>n(t,e))}}},J=class extends V{watchlistControllerGetWatchlist(e){return We(this.configuration).watchlistControllerGetWatchlist(e).then(t=>t(this.axios,this.basePath))}watchlistControllerToggle(e,t){return We(this.configuration).watchlistControllerToggle(e,t).then(s=>s(this.axios,this.basePath))}};var Pe=class{constructor(e={}){this.apiKey=e.apiKey,this.username=e.username,this.password=e.password,this.accessToken=e.accessToken,this.basePath=e.basePath,this.serverIndex=e.serverIndex,this.baseOptions={...e.baseOptions,headers:{...e.baseOptions?.headers}},this.formDataCtor=e.formDataCtor;}isJsonMime(e){let t=new RegExp("^(application/json|[^;/ ]+/[^;/ ]+[+]json)[ ]*(;.*)?$","i");return e!==null&&(t.test(e)||e.toLowerCase()==="application/json-patch+json")}};var Gt="https://hl-v2.pearprotocol.io",Z=class{constructor(e){this.accessToken=null;this.refreshToken=null;this.isRefreshing=false;this.pendingRequests=[];this.public={auth:{login:async e=>{let t=await this.api(U).authControllerAuthenticate(e);return this.accessToken=t.data.accessToken,this.refreshToken=t.data.refreshToken,this.onTokenRefreshed?.(t.data.accessToken,t.data.refreshToken),t},getEIP712Message:(e,t,s)=>this.api(U).authControllerGetEIP712Message(e,t,s),refresh:async e=>{let t=await this.api(U).authControllerRefreshToken(e);return this.accessToken=t.data.accessToken,this.refreshToken=t.data.refreshToken,this.onTokenRefreshed?.(t.data.accessToken,t.data.refreshToken),t},logout:async e=>{let t=await this.api(U).authControllerLogout(e);return this.clearTokens(),this.onLogout?.(),t}},fills:{list:e=>this.api(he).fillsControllerGetFills(e?.address,e?.assetName,e?.clientId,e?.isPearTrade,e?.startTime,e?.endTime)},markets:{list:e=>this.api(Y).marketsControllerGetMarkets(e?.offset,e?.page,e?.pageSize,e?.engine,e?.minVolume,e?.change24h,e?.netFunding,e?.searchText,e?.sort,e?.excludeText,e?.active),active:()=>this.api(Y).marketsControllerGetActiveMarket()},stats:{addressStats:(e,t)=>this.api(me).publicStatsControllerGetAddressStats(e,t)}};this.private={accounts:{summary:()=>this.api(de).accountsControllerGetAccountSummary()},agentWallet:{get:()=>this.api($).agentWalletControllerGetAgentWallet(),create:()=>this.api($).agentWalletControllerCreateAgentWallet()},apiKeys:{list:()=>this.api(Q).apiKeysControllerGetUserApiKeys(),create:e=>this.api(Q).apiKeysControllerCreateApiKey(e)},notifications:{list:e=>this.api(X).notificationsControllerGetNotifications(e?.limit,e?.startDate,e?.endDate),markRead:e=>this.api(X).notificationsControllerMarkRead(e)},orders:{list:e=>this.api(L).ordersControllerGetAllOrders(e?.page,e?.limit,e?.status,e?.orderType),open:()=>this.api(L).ordersControllerGetOpenOrders(),twap:()=>this.api(L).ordersControllerGetTwapOrders(),cancel:e=>this.api(L).ordersControllerCancelOrder(e),cancelTwap:e=>this.api(L).ordersControllerCancelTwapOrder(e),spot:e=>this.api(L).ordersControllerSpotOrder(e),triggers:e=>this.api(L).ordersControllerGetTriggers(e?.category),kalshiTriggers:e=>this.api(L).ordersControllerGetKalshiTriggers(e?.category,e?.search,e?.cursor,e?.pageSize)},portfolio:{get:()=>this.api(ge).portfolioControllerGetPortfolio()},positions:{list:()=>this.api(E).positionsControllerGetOpenPositions(),create:e=>this.api(E).positionsControllerCreatePosition(e),close:(e,t)=>this.api(E).positionsControllerClosePosition(e,t),closeAll:e=>this.api(E).positionsControllerCloseAllPositions(e),adjust:(e,t)=>this.api(E).positionsControllerAdjustPosition(e,t),adjustAdvance:(e,t)=>this.api(E).positionsControllerAdjustAdvancePosition(e,t),adjustLeverage:(e,t)=>this.api(E).positionsControllerAdjustLeverage(e,t),updateRiskParameters:(e,t)=>this.api(E).positionsControllerUpdateRiskParameters(e,t),planRebalance:(e,t)=>this.api(E).positionsControllerPlanRebalance(e,t),rebalance:(e,t)=>this.api(E).positionsControllerRebalancePosition(e,t)},sync:{fills:e=>this.api(Ae).syncControllerSyncFills(e)},tradeHistory:{list:e=>this.api(ye).tradeHistoryControllerGetTradeHistory(e?.limit,e?.startDate,e?.endDate)},watchlist:{get:()=>this.api(J).watchlistControllerGetWatchlist(),toggle:e=>this.api(J).watchlistControllerToggle(e)}};this.basePath=e?.basePath??Gt,this.onTokenRefreshed=e?.onTokenRefreshed,this.onLogout=e?.onLogout,this.axiosInstance=x.create(),this.setupInterceptors();}setupInterceptors(){this.axiosInstance.interceptors.request.use(e=>(this.accessToken&&(e.headers=e.headers??{},e.headers.Authorization=`Bearer ${this.accessToken}`),e)),this.axiosInstance.interceptors.response.use(e=>e,async e=>{let t=e.config;if(((e.response?.status??0)!==401||!t)&&this.transformError(e),t.url?.includes("/auth/refresh")&&(this.clearTokens(),this.onLogout?.(),this.transformError(e)),t._retry&&(this.clearTokens(),this.onLogout?.(),this.transformError(e)),t._retry=true,this.isRefreshing)return new Promise((r,o)=>{this.pendingRequests.push(n=>{if(!n)try{this.transformError(e);}catch(i){return o(i)}t.headers=t.headers??{},t.headers.Authorization=`Bearer ${n}`,r(this.axiosInstance.request(t));});});this.isRefreshing=true;try{if(!this.refreshToken)throw new Error("No refresh token available");let{data:r}=await new U(this.createConfig()).authControllerRefreshToken({refreshToken:this.refreshToken});return this.accessToken=r.accessToken,this.refreshToken=r.refreshToken,this.onTokenRefreshed?.(r.accessToken,r.refreshToken),this.resolvePendingRequests(r.accessToken),t.headers=t.headers??{},t.headers.Authorization=`Bearer ${r.accessToken}`,this.axiosInstance.request(t)}catch(r){this.resolvePendingRequests(null),this.clearTokens(),this.onLogout?.(),this.transformError(r);}finally{this.isRefreshing=false;}});}resolvePendingRequests(e){this.pendingRequests.forEach(t=>t(e)),this.pendingRequests=[];}clearTokens(){this.accessToken=null,this.refreshToken=null;}transformError(e){if(e.response){let{status:t,data:s}=e.response,r=s?.message??e.message,o=s?.code??"UNKNOWN";throw new j(r,t,o,e)}throw new j(e.message??"Network error",0,"NETWORK_ERROR",e)}createConfig(){return new Pe({basePath:this.basePath})}api(e){return new e(this.createConfig(),this.basePath,this.axiosInstance)}setAccessToken(e){this.accessToken=e;}setRefreshToken(e){this.refreshToken=e;}setTokens(e,t){this.accessToken=e,this.refreshToken=t;}getAccessToken(){return this.accessToken}getRefreshToken(){return this.refreshToken}};var H=(a,e)=>`${a}-${e}`,Ge=a=>{switch(a){case "1m":return 60;case "3m":return 180;case "5m":return 300;case "15m":return 900;case "30m":return 1800;case "1h":return 3600;case "2h":return 7200;case "4h":return 14400;case "8h":return 28800;case "12h":return 43200;case "1d":return 86400;case "3d":return 259200;case "1w":return 604800;case "1M":return 2592e3}},at=(a,e)=>{let t=[...a,e].sort((r,o)=>r.start-o.start),s=[];for(let r of t){let o=s[s.length-1];s.length===0||!o||r.start>o.end?s.push({start:r.start,end:r.end}):o.end=Math.max(o.end,r.end);}return s},_=a=>{let e={};for(let[t,s]of Object.entries(a)){let r=new Map;for(let o of s)r.set(o.t,o);e[t]=r;}return e},F=(a,e)=>{if(e.length===0)return [];let t,s,r=1/0;for(let n of e){let i=a[n],l=i?.size??0;if(l===0)return [];l<r&&(r=l,t=n,s=i);}if(!s||!t)return [];let o=[];for(let n of Array.from(s.keys())){let i=true;for(let l of e){if(l===t)continue;let c=a[l];if(!c||!c.has(n)){i=false;break}}i&&o.push(n);}return o.sort((n,i)=>n-i),o};var ee=class{constructor(){this.historicalPriceData={};this.loadingTokens=new Set;}addLoadingToken(e){this.loadingTokens.add(e);}removeLoadingToken(e){this.loadingTokens.delete(e);}addHistoricalPriceData(e,t,s,r){let o=H(e,t),n=this.historicalPriceData[o];if(!n){let g=[...s].sort((S,I)=>S.t-I.t),O=g.length===0?r.end:null;this.historicalPriceData[o]={symbol:e,interval:t,candles:g,oldestTime:g.length>0?g[0]?.t??null:null,latestTime:g.length>0?g[g.length-1]?.t??null:null,requestedRanges:[r],noDataBefore:O};return}let i=new Set(n.candles.map(g=>g.t)),l=s.filter(g=>!i.has(g.t)),c=[...n.candles,...l].sort((g,O)=>g.t-O.t),u=c.length>0?c[0]?.t??null:null,d=c.length>0?c[c.length-1]?.t??null:null,h=at(n.requestedRanges,r),p=n.noDataBefore;s.length===0&&n.oldestTime!==null&&r.end<=n.oldestTime&&(p=n.oldestTime),this.historicalPriceData[o]={...n,candles:c,oldestTime:u,latestTime:d,requestedRanges:h,noDataBefore:p};}hasData(e,t,s,r){let o=H(e,t),n=this.historicalPriceData[o];if(!n)return false;if(n.noDataBefore!==null&&r<=n.noDataBefore)return true;for(let u of n.requestedRanges)if(u.start<=s&&u.end>=r)return true;if(n.oldestTime===null||n.latestTime===null)return false;let i=Ge(t)*1e3,l=n.oldestTime<=s,c=n.latestTime>=r||n.latestTime+i>=r;return l&&c}getData(e,t,s,r){let o=H(e,t),n=this.historicalPriceData[o];return n?n.candles.filter(i=>i.t>=s&&i.t<r):[]}getEffectiveBoundary(e,t){if(e.length===0)return null;let s=null;for(let r of e){let o=H(r,t),n=this.historicalPriceData[o];if(!n)continue;let i=n.noDataBefore??n.oldestTime;i!==null&&(s===null||i>s)&&(s=i);}return s}getLatestCandle(e,t){let s=H(e,t),r=this.historicalPriceData[s];return !r||r.candles.length===0?null:r.candles[r.candles.length-1]??null}removeToken(e,t){let s=H(e,t);delete this.historicalPriceData[s],this.loadingTokens.delete(e);}clear(){this.historicalPriceData={},this.loadingTokens=new Set;}};var te=class{constructor(e,t){this.handlerId=null;this.subscribedKeys=new Set;this.ws=e,this.onCandle=t;}start(){this.handlerId||(this.handlerId=this.ws.addChannelHandler("candle",e=>{let t=this.parsePayload(e);t&&this.onCandle(t.symbol,t.candle);}));}stop(){this.handlerId&&(this.ws.removeChannelHandler("candle",this.handlerId),this.handlerId=null);for(let e of this.subscribedKeys){let[t,s]=e.split("::");this.ws.unsubscribe(e);}this.subscribedKeys.clear();}subscribe(e,t){let s=`${e}::${t}`;this.subscribedKeys.has(s)||(this.subscribedKeys.add(s),this.ws.subscribe(s,{type:"candle",coin:e,interval:t}));}onHistoricalDataFetched(e,t,s){}unsubscribe(e,t){let s=`${e}::${t}`;this.subscribedKeys.has(s)&&(this.subscribedKeys.delete(s),this.ws.unsubscribe(s));}parsePayload(e){return !e||!e.s?null:{symbol:e.s,candle:{s:e.s,t:e.t,T:e.T,o:Number(e.o),h:Number(e.h),l:Number(e.l),c:Number(e.c)}}}};async function Ue(a,e,t,s){let r={req:{coin:a,startTime:e,endTime:t,interval:s},type:"candleSnapshot"},{data:o}=await x.post("https://api.hyperliquid.xyz/info",r);return o}var re=class{constructor(e){this.prevTokenSymbols=new Set;this.prevInterval=null;this.candleWs=null;this.latestCandles=new Map;this.realtimeListeners=new Map;this.cache=new ee;this.ws=e.ws,this.longTokens=e.longTokens??[],this.shortTokens=e.shortTokens??[],this.candleInterval=e.candleInterval??"1h",this.syncTokenChanges();}setTokens(e,t){this.longTokens=e,this.shortTokens=t,this.syncWsSubscriptions(),this.syncTokenChanges();}setCandleInterval(e){let t=this.candleInterval;if(this.candleInterval=e,this.syncTokenChanges(),this.candleWs&&t!==e){for(let s of this.prevTokenSymbols)this.candleWs.unsubscribe(s,t);this.latestCandles.clear();for(let s of this.prevTokenSymbols)this.candleWs.subscribe(s,e);}}attachCandleWs(){if(!this.candleWs){this.candleWs=new te(this.ws,(e,t)=>{this.latestCandles.set(e,t);for(let s of this.realtimeListeners.values())try{s(e,t);}catch(r){console.warn("Error in realtime listener callback",r);}}),this.candleWs.start();for(let e of this.getAllTokens()){let t=this.cache.getLatestCandle(e.symbol,this.candleInterval);t&&!this.latestCandles.has(e.symbol)&&this.latestCandles.set(e.symbol,t),this.candleWs.subscribe(e.symbol,this.candleInterval);}}}detachCandleWs(){this.candleWs&&(this.candleWs.stop(),this.candleWs=null);}get isWsAttached(){return this.candleWs!==null}addRealtimeListener(e,t){this.realtimeListeners.set(e,t);}removeRealtimeListener(e){this.realtimeListeners.delete(e);}getLatestCandles(){let e=this.getAllTokens();if(e.length===0)return null;let t={};for(let s of e){let r=this.latestCandles.get(s.symbol);if(!r)return null;t[s.symbol]=r;}return t}getLongTokens(){return this.longTokens}getShortTokens(){return this.shortTokens}getCandleInterval(){return this.candleInterval}getEffectiveDataBoundary(e){let t=this.getAllTokens().map(s=>s.symbol);return this.cache.getEffectiveBoundary(t,e)}clearCache(){this.cache.clear(),this.latestCandles.clear();}async fetchHistoricalPriceData(e,t,s,r){let o=this.getAllTokens();if(o.length===0){let i={};return r?.(i),i}let n=o.filter(i=>!this.cache.hasData(i.symbol,s,e,t));if(n.length===0){let i=this.getHistoricalPriceData(e,t,s);return r?.(i),i}for(let i of n)this.cache.addLoadingToken(i.symbol);try{let i=n.map(async c=>{try{let u=await Ue(c.symbol,e,t,s);return this.cache.addHistoricalPriceData(c.symbol,s,u,{start:e,end:t}),u.length>0&&!this.latestCandles.has(c.symbol)&&this.latestCandles.set(c.symbol,u[u.length-1]),{symbol:c.symbol,candles:u,success:!0}}catch(u){return console.warn(`Failed to fetch historical data for ${c.symbol}:`,u),{symbol:c.symbol,candles:[],success:!1}}});await Promise.all(i);let l=this.getHistoricalPriceData(e,t,s);return r?.(l),l}catch(i){throw console.error("Failed to fetch historical data:",i),i}finally{for(let i of n)this.cache.removeLoadingToken(i.symbol);}}destroy(){this.detachCandleWs(),this.realtimeListeners.clear(),this.latestCandles.clear(),this.cache.clear();}getAllTokens(){return [...this.longTokens,...this.shortTokens]}syncTokenChanges(){let e=new Set(this.getAllTokens().map(t=>t.symbol));if(this.prevInterval!==null&&this.prevInterval!==this.candleInterval){this.cache.clear(),this.prevTokenSymbols=e,this.prevInterval=this.candleInterval;return}for(let t of this.prevTokenSymbols)e.has(t)||this.cache.removeToken(t,this.candleInterval);this.prevTokenSymbols=e,this.prevInterval=this.candleInterval;}getHistoricalPriceData(e,t,s){let r=this.getAllTokens(),o={};for(let n of r)o[n.symbol]=this.cache.getData(n.symbol,s,e,t);return o}syncWsSubscriptions(){if(!this.candleWs)return;let e=new Set(this.getAllTokens().map(t=>t.symbol));for(let t of this.prevTokenSymbols)e.has(t)||(this.candleWs.unsubscribe(t,this.candleInterval),this.latestCandles.delete(t));if(e.size===0){this.detachCandleWs(),this.latestCandles.clear();return}for(let t of e)this.candleWs.subscribe(t,this.candleInterval);}};function Ce(a,e){let t=a[e];return t?t.map(s=>({time:s.t,open:s.o,high:s.h,low:s.l,close:s.c})):[]}function Re(a,e){let t=a[e];return t?{time:t.t,open:t.o,high:t.h,low:t.l,close:t.c}:null}function fe(a,e,t){let s={bars:[],baselinePrices:{}},r=[...a,...e];if(r.length===0)return s;let o=_(t),n=r.map(p=>p.symbol),i=F(o,n);if(i.length===0)return s;let l={},c=i[0];for(let p of r){let g=o[p.symbol]?.get(c);if(!g||g.o<=0)return s;l[p.symbol]=g.o;}let u=1e3,d=new Set(a.map(p=>p.symbol)),h=[];for(let p of i){let g=0,O=false;for(let S of r){let I=o[S.symbol]?.get(p);if(!I){O=true;break}let m=l[S.symbol],v=S.weight*u,$e=I.c/m;d.has(S.symbol)?g+=v*$e:g+=v/$e;}O||h.push({time:p,open:g,high:g,low:g,close:g});}return {bars:h,baselinePrices:l}}function xe(a,e,t,s){let r=[...a,...e];if(r.length===0)return null;let o=1e3,n=new Set(a.map(c=>c.symbol)),i=0,l=null;for(let c of r){let u=t[c.symbol];if(!u)return null;let d=s[c.symbol];if(!d||d<=0)return null;let h=c.weight*o,p=u.c/d;n.has(c.symbol)?i+=h*p:i+=h/p,l===null&&(l=u.t);}return l===null?null:{time:l,open:i,high:i,low:i,close:i}}function be(a,e,t){if(a.length===0&&e.length===0)return [];let s=_(t),r=[...a,...e].map(i=>i.symbol),o=F(s,r),n=[];for(let i of o){let l=0,c=0,u=0,d=0,h=0,p=0,g=0,O=0,S=false;for(let I of a){let m=s[I.symbol]?.get(i);if(!m){S=true;break}if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){S=true;break}let v=I.weight;l+=v*m.o,c+=v*m.h,u+=v*m.l,d+=v*m.c;}if(!S){for(let I of e){let m=s[I.symbol]?.get(i);if(!m){S=true;break}if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){S=true;break}let v=I.weight;h+=v*m.o,p+=v*m.h,g+=v*m.l,O+=v*m.c;}S||h<=0||p<=0||g<=0||O<=0||n.push({time:i,open:l/h,high:c/p,low:u/g,close:d/O});}}return n}function Te(a,e,t){let s=0,r=0,o=0,n=0,i=0,l=0,c=0,u=0,d=null;for(let h of a){let p=t[h.symbol];if(!p||!(p.o>0&&p.h>0&&p.l>0&&p.c>0))return null;let g=h.weight;s+=g*p.o,r+=g*p.h,o+=g*p.l,n+=g*p.c,d===null&&(d=p.t);}for(let h of e){let p=t[h.symbol];if(!p||!(p.o>0&&p.h>0&&p.l>0&&p.c>0))return null;let g=h.weight;i+=g*p.o,l+=g*p.h,c+=g*p.l,u+=g*p.c,d===null&&(d=p.t);}return d===null||i<=0||l<=0||c<=0||u<=0?null:{time:d,open:s/i,high:r/l,low:o/c,close:n/u}}function k(a,e){return a<=0?0:Math.exp(e*Math.log(a))}function De(a,e,t){if(a.length===0&&e.length===0)return [];let s=_(t),r=[...a,...e].map(i=>i.symbol),o=F(s,r),n=[];for(let i of o){let l=1,c=1,u=1,d=1,h=1,p=1,g=1,O=1,S=false;for(let I of a){let m=s[I.symbol]?.get(i);if(!m){S=true;break}let v=I.weight;if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){S=true;break}l*=k(m.o,v),c*=k(m.h,v),u*=k(m.l,v),d*=k(m.c,v);}if(!S){for(let I of e){let m=s[I.symbol]?.get(i);if(!m){S=true;break}let v=-I.weight;if(!(m.o>0&&m.h>0&&m.l>0&&m.c>0)){S=true;break}h*=k(m.o,v),p*=k(m.h,v),g*=k(m.l,v),O*=k(m.c,v);}S||n.push({time:i,open:l*h,high:c*p,low:u*g,close:d*O});}}return n}function Oe(a,e,t){let s=1,r=1,o=1,n=1,i=1,l=1,c=1,u=1,d=null;for(let h of a){let p=t[h.symbol];if(!p||!(p.o>0&&p.h>0&&p.l>0&&p.c>0))return null;let g=h.weight;s*=k(p.o,g),r*=k(p.h,g),o*=k(p.l,g),n*=k(p.c,g),d===null&&(d=p.t);}for(let h of e){let p=t[h.symbol];if(!p||!(p.o>0&&p.h>0&&p.l>0&&p.c>0))return null;let g=-h.weight;i*=k(p.o,g),l*=k(p.h,g),c*=k(p.l,g),u*=k(p.c,g),d===null&&(d=p.t);}return d===null?null:{time:d,open:s*i,high:r*l,low:o*c,close:n*u}}var se=class{constructor(e){this.baselinePrices={};this.collector=new re(e);}setTokens(e,t){this.collector.setTokens(e,t),this.baselinePrices={};}setCandleInterval(e){this.collector.setCandleInterval(e),this.baselinePrices={};}async getBars(e,t,s){let r=this.collector.getCandleInterval(),o=await this.collector.fetchHistoricalPriceData(t,s,r);switch(e){case "weighted-ratio":return De(this.collector.getLongTokens(),this.collector.getShortTokens(),o);case "price-ratio":return be(this.collector.getLongTokens(),this.collector.getShortTokens(),o);case "performance":{let n=fe(this.collector.getLongTokens(),this.collector.getShortTokens(),o);return n.bars.length>0&&(this.baselinePrices=n.baselinePrices),n.bars}default:throw new Error(`Unsupported chart type: ${e}`)}}async getAssetBars(e,t,s){this.assertTokenExists(e);let r=this.collector.getCandleInterval(),o=await this.collector.fetchHistoricalPriceData(t,s,r);return Ce(o,e)}getEffectiveDataBoundary(){return this.collector.getEffectiveDataBoundary(this.collector.getCandleInterval())}subscribeRealtimeBars(e,t){this.collector.isWsAttached||this.collector.attachCandleWs();let s=o=>o.map(n=>`${n.symbol}:${n.weight}`).join(","),r=`${e}-${s(this.collector.getLongTokens())}-${s(this.collector.getShortTokens())}`;return this.collector.addRealtimeListener(r,()=>{let o=this.collector.getLatestCandles();if(!o)return;let n=null;switch(e){case "weighted-ratio":n=Oe(this.collector.getLongTokens(),this.collector.getShortTokens(),o);break;case "price-ratio":n=Te(this.collector.getLongTokens(),this.collector.getShortTokens(),o);break;case "performance":if(Object.keys(this.baselinePrices).length===0)break;n=xe(this.collector.getLongTokens(),this.collector.getShortTokens(),o,this.baselinePrices);break}if(n)try{t(n);}catch(i){console.warn("Error in realtime bar callback, skipping this update",{chartType:e,error:i});}}),r}subscribeRealtimeAssetBars(e,t){this.assertTokenExists(e),this.collector.isWsAttached||this.collector.attachCandleWs();let s=`price-${e}`;return this.collector.addRealtimeListener(s,()=>{let r=this.collector.getLatestCandles();if(!r)return;let o=Re(r,e);if(o)try{t(o);}catch(n){console.warn("Error in realtime asset bar callback, skipping this update",{symbol:e,error:n});}}),s}unsubscribeRealtimeBars(e){this.collector.removeRealtimeListener(e);}assertTokenExists(e){if(![...this.collector.getLongTokens(),...this.collector.getShortTokens()].some(s=>s.symbol===e))throw new Error(`Symbol "${e}" is not part of the configured long or short tokens`)}clearCache(){this.collector.clearCache(),this.baselinePrices={};}destroy(){this.collector.destroy();}};function He(a,e){let t=new Map;for(let[s,r]of a){let o=e.get(s);if(o)for(let n=0;n<r.length;n++){let i=r[n],l=o[n];if(!l)continue;let c=parseFloat(l.markPx)||0,u=parseFloat(l.midPx??"")||c,d=parseFloat(l.prevDayPx)||0,h=u-d;t.set(i.name,{assetName:i.name,maxLeverage:i.maxLeverage,szDecimals:i.szDecimals,currentPrice:u,markPrice:c,oraclePrice:parseFloat(l.oraclePx)||0,prevDayPrice:d,priceChange24h:h,priceChange24hPercent:d!==0?h/d*100:0,funding:parseFloat(l.funding)});}}return t}function _e(a){let e=new Map;for(let[t,s]of a)e.set(t,s.markPrice);return e}function Fe(a,e){let t=new Map;for(let s=0;s<a.length;s++){let r=e[s]??(s===0?"HYPERLIQUID":`DEX_${s}`);t.set(r,a[s].universe);}return t}function Be(a){let e=new Map;for(let[t,s]of a.ctxs){let r=t===""?"HYPERLIQUID":t;e.set(r,s);}return e}function W(a,e){return e.get(a)??0}function Ne(a,e){let s=e.assetPositions.find(o=>o.position.coin===a)?.position.liquidationPx;if(s==null)return null;let r=parseFloat(s);return Number.isFinite(r)?r:null}function Se(a,e,t){return t.assetPositions.find(r=>r.position.coin===a)?.position.leverage?.value??e??1}function ve(a,e,t,s,r,o,n){let i=a.entryPrice*a.size,l=e*a.size,c=r||1,u=l/c,d=i/c,h=o?l-i:i-l;return {coin:a.coin,entryPrice:a.entryPrice,actualSize:a.size,leverage:c,marginUsed:u,positionValue:l,unrealizedPnl:h,entryPositionValue:i,currentWeight:s>0?l/s:0,fundingPaid:a.fundingPaid??0,targetWeight:a.targetWeight!=null?a.targetWeight:t>0?i/t:0,liquidationPrice:n,entryMarginUsed:d}}function oe(a){let e=(a.clearinghouseStates||[]).map(([,r])=>r).filter(Boolean);if(e.length===0)return {assetPositions:[],crossMaintenanceMarginUsed:"0",crossMarginSummary:{accountValue:"0",totalMarginUsed:"0",totalNtlPos:"0",totalRawUsd:"0"},marginSummary:{accountValue:"0",totalMarginUsed:"0",totalNtlPos:"0",totalRawUsd:"0"},time:0,withdrawable:"0"};if(e.length===1)return e[0];let t=r=>r.reduce((o,n)=>o+(parseFloat(n||"0")||0),0),s=r=>Number.isFinite(r)?r.toString():"0";return {assetPositions:e.flatMap(r=>r.assetPositions||[]),crossMaintenanceMarginUsed:s(t(e.map(r=>r.crossMaintenanceMarginUsed))),crossMarginSummary:{accountValue:s(t(e.map(r=>r.crossMarginSummary?.accountValue))),totalMarginUsed:s(t(e.map(r=>r.crossMarginSummary?.totalMarginUsed))),totalNtlPos:s(t(e.map(r=>r.crossMarginSummary?.totalNtlPos))),totalRawUsd:s(t(e.map(r=>r.crossMarginSummary?.totalRawUsd)))},marginSummary:{accountValue:s(t(e.map(r=>r.marginSummary?.accountValue))),totalMarginUsed:s(t(e.map(r=>r.marginSummary?.totalMarginUsed))),totalNtlPos:s(t(e.map(r=>r.marginSummary?.totalNtlPos))),totalRawUsd:s(t(e.map(r=>r.marginSummary?.totalRawUsd)))},withdrawable:s(t(e.map(r=>r.withdrawable))),time:Math.max(0,...e.map(r=>r.time||0))}}function we(a,e){return a<=0?0:Math.exp(e*Math.log(a))}function it(a,e,t){let s=1;for(let r of a){let o=t.get(r.symbol)?.markPrice??0;s*=we(o,r.weight);}for(let r of e){let o=t.get(r.symbol)?.markPrice??0;s*=we(o,-r.weight);}return s}function lt(a,e,t){if(a.length!==1||e.length!==1)return null;let s=t.get(a[0].symbol)?.markPrice??0,r=t.get(e[0].symbol)?.markPrice??0;return r<=0?null:s/r}function ct(a,e,t){return a.length===1&&e.length===0?t.get(a[0].symbol)?.markPrice??null:a.length===0&&e.length===1?t.get(e[0].symbol)?.markPrice??null:null}function ut(a,e,t){let s=1;for(let r of a){let o=t.get(r.symbol)?.prevDayPrice??0;s*=we(o,r.weight);}for(let r of e){let o=t.get(r.symbol)?.prevDayPrice??0;s*=we(o,-r.weight);}return s}function pt(a,e,t){if(a.length!==1||e.length!==1)return null;let s=t.get(a[0].symbol)?.prevDayPrice??0,r=t.get(e[0].symbol)?.prevDayPrice??0;return r<=0?null:s/r}function dt(a,e,t){return a.length===1&&e.length===0?t.get(a[0].symbol)?.prevDayPrice??null:a.length===0&&e.length===1?t.get(e[0].symbol)?.prevDayPrice??null:null}function ht(a,e,t){let s=0;for(let r of a){let o=t.get(r.symbol)?.funding;o!==void 0&&r.weight>0&&(s+=-o*r.weight);}for(let r of e){let o=t.get(r.symbol)?.funding;o!==void 0&&r.weight>0&&(s+=o*r.weight);}return s}function Ht(a,e,t){let s=[...a,...e];if(s.length===0)return 0;let r=1/0;for(let o of s){let n=t.get(o.symbol)?.maxLeverage;n!==void 0&&n<r&&(r=n);}return r===1/0?1:r}function ne(a,e,t){return {weightedRatio:it(a,e,t),priceRatio:lt(a,e,t),price:ct(a,e,t),weightedRatio24hAgo:ut(a,e,t),priceRatio24hAgo:pt(a,e,t),price24hAgo:dt(a,e,t),netFundingRate:ht(a,e,t),maxLeverage:Ht(a,e,t)}}var ae=class{constructor(e,t){this.perpMetasByDex=null;this.metadata=new Map;this.prices=new Map;this.assetCtxsHandlerId=null;this.instrumentHandler=null;this.basketSubs=new Map;this.nextBasketId=0;this.picksHandler=null;this.lastPicksData=[];this.onPricesUpdated=null;this.hlWs=e,this.pearWs=t,this.chart=new se({ws:e}),this.init();}async init(){try{let[e,t]=await Promise.all([x.post("https://api.hyperliquid.xyz/info",{type:"allPerpMetas"}),x.post("https://api.hyperliquid.xyz/info",{type:"perpDexs"})]),s=t.data.map((r,o)=>o===0?"HYPERLIQUID":r?.name??`DEX_${o}`);this.perpMetasByDex=Fe(e.data,s),this.hlWs.subscribe("allDexsAssetCtxs",{type:"allDexsAssetCtxs"}),this.assetCtxsHandlerId=this.hlWs.addChannelHandler("allDexsAssetCtxs",r=>{this.perpMetasByDex&&(this.metadata=He(this.perpMetasByDex,Be(r)),this.prices=_e(this.metadata),this.notifyInstrument(),this.notifyBaskets(),this.notifyPicks(),this.onPricesUpdated?.());});}catch{setTimeout(()=>this.init(),5e3);}}getMetadata(){return this.metadata}getPrices(){return this.prices}setOnPricesUpdated(e){this.onPricesUpdated=e;}instrument(e){return this.instrumentHandler=e,this.metadata.size>0&&e(Array.from(this.metadata.values())),()=>{this.instrumentHandler=null;}}basket(e,t,s){let r=++this.nextBasketId;return this.basketSubs.set(r,{longTokens:e,shortTokens:t,handler:s}),this.metadata.size>0&&s(ne(e,t,this.metadata)),()=>{this.basketSubs.delete(r);}}picks(e){return this.picksHandler=e,this.pearWs.subscribe("market-data/v2",t=>{this.lastPicksData=t.baskets||[],this.notifyPicks();}),()=>{this.picksHandler=null,this.lastPicksData=[],this.pearWs.unsubscribe("market-data/v2");}}notifyInstrument(){!this.instrumentHandler||this.metadata.size===0||this.instrumentHandler(Array.from(this.metadata.values()));}notifyBaskets(){if(this.metadata.size!==0)for(let e of this.basketSubs.values())e.handler(ne(e.longTokens,e.shortTokens,this.metadata));}notifyPicks(){!this.picksHandler||this.lastPicksData.length===0||this.picksHandler(this.lastPicksData.map(e=>this.enrichBasket(e)));}enrichBasket(e){let t=e.longAssets.map(o=>({symbol:o.asset,weight:o.weight})),s=e.shortAssets.map(o=>({symbol:o.asset,weight:o.weight}));return {...ne(t,s,this.metadata),longTokens:t,shortTokens:s,category:e.category,name:e.name}}destroy(){this.chart.destroy(),this.assetCtxsHandlerId&&(this.hlWs.removeChannelHandler("allDexsAssetCtxs",this.assetCtxsHandlerId),this.assetCtxsHandlerId=null),this.picksHandler&&(this.pearWs.unsubscribe("market-data/v2"),this.picksHandler=null),this.instrumentHandler=null,this.basketSubs.clear();}};function je(a,e){return a.map(t=>{let s=t.orderType==="TP"||t.orderType==="SL",r=(t.longAssets?.length??0)>0||(t.shortAssets?.length??0)>0,o=e.get(String(t.positionId??""));return s&&!r&&o?{...t,longAssets:o.longAssets.map(n=>({asset:n.coin,weight:n.targetWeight})),shortAssets:o.shortAssets.map(n=>({asset:n.coin,weight:n.targetWeight}))}:t})}function Ke(a,e,t,s=true){return a.filter(r=>!r.longAssets.some(o=>o.coin.startsWith("#"))&&!r.shortAssets.some(o=>o.coin.startsWith("#"))&&(!s||r.pearExecutionFlag!==Ze.FullyExternal)).map(r=>{let o={positionId:r.positionId,address:r.address,pearExecutionFlag:r.pearExecutionFlag,stopLoss:r.stopLoss,takeProfit:r.takeProfit,entryRatio:1,markRatio:1,entryPositionValue:0,positionValue:0,marginUsed:0,unrealizedPnl:0,unrealizedPnlPercentage:0,longAssets:[],shortAssets:[],createdAt:r.createdAt,updatedAt:r.updatedAt},n=0,i=r.longAssets.reduce((c,u)=>c+u.entryPrice*u.size,0)+r.shortAssets.reduce((c,u)=>c+u.entryPrice*u.size,0),l=r.longAssets.reduce((c,u)=>c+W(u.coin,t)*u.size,0)+r.shortAssets.reduce((c,u)=>c+W(u.coin,t)*u.size,0);if(o.longAssets=r.longAssets.map(c=>{let u=W(c.coin,t),d=Se(c.coin,c.leverage??1,e),h=Ne(c.coin,e),p=ve(c,u,i,l,d,true,h);o.entryPositionValue+=p.entryPositionValue,o.unrealizedPnl+=p.unrealizedPnl,o.positionValue+=p.positionValue,o.marginUsed+=p.marginUsed,n+=p.entryMarginUsed,o.entryRatio*=Math.pow(c.entryPrice,p.targetWeight),o.markRatio*=Math.pow(u,p.targetWeight);let{entryMarginUsed:g,...O}=p;return O}),o.shortAssets=r.shortAssets.map(c=>{let u=W(c.coin,t),d=Se(c.coin,c.leverage??1,e),h=Ne(c.coin,e),p=ve(c,u,i,l,d,false,h);o.entryPositionValue+=p.entryPositionValue,o.unrealizedPnl+=p.unrealizedPnl,o.positionValue+=p.positionValue,o.marginUsed+=p.marginUsed,n+=p.entryMarginUsed,o.entryRatio*=Math.pow(c.entryPrice,-p.targetWeight),o.markRatio*=Math.pow(u,-p.currentWeight);let{entryMarginUsed:g,...O}=p;return O}),o.positionValue=o.entryPositionValue+o.unrealizedPnl,r.longAssets.length===1&&r.shortAssets.length===1){let c=r.longAssets[0],u=r.shortAssets[0],d=W(c.coin,t),h=W(u.coin,t);c.size>0&&u.size>0?(o.entryPriceRatio=c.entryPrice/u.entryPrice,o.markPriceRatio=d/h):c.size>0?(o.entryPriceRatio=c.entryPrice,o.markPriceRatio=d):u.size>0&&(o.entryPriceRatio=u.entryPrice,o.markPriceRatio=h);}if(r.longAssets.length===1&&r.shortAssets.length===0){let c=r.longAssets[0];o.entryPriceRatio=c.entryPrice,o.markPriceRatio=W(c.coin,t);}if(r.longAssets.length===0&&r.shortAssets.length===1){let c=r.shortAssets[0];o.entryPriceRatio=c.entryPrice,o.markPriceRatio=W(c.coin,t);}return o.unrealizedPnlPercentage=n>0?o.unrealizedPnl/n:0,o})}var Ie=class Ie{constructor(e,t,s,r,o){this.rawPositions=null;this.clearinghouseState=null;this.enrichedPositions=null;this.positionHandler=null;this.chStateHandlerId=null;this.hideExternalPosition=true;this.rawOrders=null;this.orderHandler=null;this.api=e,this.pearWs=t,this.hlWs=s,this.getPrices=r,this.getAddress=o;}async isBuilderApproved(){let e=this.getAddress();if(!e)return false;let{data:t}=await x.post("https://api.hyperliquid.xyz/info",{type:"approvedBuilders",user:e});return t.some(s=>s.toLowerCase()===Ie.BUILDER_ADDRESS)}async isAgentApproved(){let e=this.getAddress();if(!e)return false;let[t,s]=await Promise.all([x.post("https://api.hyperliquid.xyz/info",{type:"extraAgents",user:e}),this.api.private.agentWallet.get()]),r=s.data.agentWalletAddress.toLowerCase();return t.data.some(o=>o.address.toLowerCase()===r)}positions(e,t=true){return this.positionHandler=e,this.hideExternalPosition=t,this.pearWs.subscribe("open-positions",s=>{this.rawPositions=s,this.recomputePositions();}),this.chStateHandlerId||(this.chStateHandlerId=this.hlWs.addChannelHandler("allDexsClearinghouseState",s=>{this.clearinghouseState=oe(s),this.recomputePositions();})),()=>{this.positionHandler=null;}}orders(e){return this.orderHandler=e,this.pearWs.subscribe("open-orders",t=>{this.rawOrders=t,this.recomputeOrders();}),()=>{this.orderHandler=null;}}tradeHistories(e){return this.pearWs.subscribe("trade-histories",e),()=>{this.pearWs.unsubscribe("trade-histories");}}twapDetails(e){return this.pearWs.subscribe("twap-details",e),()=>{this.pearWs.unsubscribe("twap-details");}}accountSummary(e){return this.pearWs.subscribe("account-summary",e),()=>{this.pearWs.unsubscribe("account-summary");}}notifications(e){return this.pearWs.subscribe("notifications",e),()=>{this.pearWs.unsubscribe("notifications");}}recomputePositions(){let e=this.getPrices();!this.rawPositions||!this.clearinghouseState||e.size===0||(this.enrichedPositions=Ke(this.rawPositions,this.clearinghouseState,e,this.hideExternalPosition),this.positionHandler?.(this.enrichedPositions),this.recomputeOrders());}recomputeOrders(){if(!this.orderHandler||!this.rawOrders)return;let e=new Map;if(this.enrichedPositions)for(let t of this.enrichedPositions)e.set(t.positionId,t);this.orderHandler(je(this.rawOrders,e));}};Ie.BUILDER_ADDRESS="0xa47d4d99191db54a4829cdf3de2417e527c3b042";var ie=Ie;async function _t(a,e){let t=[],s=new Set,r=e,o=0;do{let{data:n}=await x.post("https://api.hyperliquid.xyz/info",{type:"userFillsByTime",user:a,startTime:r,aggregateByTime:true});o=n.length;for(let i of n)i.tid!==void 0&&!s.has(i.tid)&&(s.add(i.tid),t.push(i));o===2e3&&(r=n[n.length-1].time);}while(o===2e3);r=e,o=0;do{let{data:n}=await x.post("https://api.hyperliquid.xyz/info",{type:"userTwapSliceFillsByTime",user:a,startTime:r,aggregateByTime:true});o=n.length;for(let i of n){let l=i.fill;l.tid!==void 0&&!s.has(l.tid)&&(s.add(l.tid),t.push(l));}o===2e3&&(r=n[n.length-1].fill.time);}while(o===2e3);return t.sort((n,i)=>n.time-i.time)}var le=class{constructor(e,t){this.address=null;this.clearinghouseState=null;this.syncing=false;this.userFillsHandlerId=null;this.chStateHandlerId=null;this.initialSyncDone=false;this.api=e,this.hlWs=t;}start(e){this.stop(),this.address=e.toLowerCase(),this.initialSyncDone=false,this.hlWs.subscribe("userFills",{type:"userFills",user:this.address}),this.userFillsHandlerId=this.hlWs.addChannelHandler("userFills",()=>{this.sync();}),this.chStateHandlerId=this.hlWs.addChannelHandler("allDexsClearinghouseState",t=>{this.clearinghouseState=oe(t),!this.initialSyncDone&&this.clearinghouseState&&(this.initialSyncDone=true,this.sync());});}stop(){this.userFillsHandlerId&&(this.hlWs.removeChannelHandler("userFills",this.userFillsHandlerId),this.userFillsHandlerId=null),this.chStateHandlerId&&(this.hlWs.removeChannelHandler("allDexsClearinghouseState",this.chStateHandlerId),this.chStateHandlerId=null),this.address&&this.hlWs.unsubscribe("userFills"),this.address=null,this.clearinghouseState=null,this.initialSyncDone=false;}async sync(){if(!(this.syncing||!this.address||!this.clearinghouseState)&&this.api.getAccessToken()){this.syncing=true;try{let{data:e}=await this.api.private.accounts.summary(),t=e.lastSyncedAt?Number(e.lastSyncedAt)+1:0,s=await _t(this.address,t);if(s.length===0)return;await this.api.private.sync.fills({user:this.address,fills:s,assetPositions:this.clearinghouseState.assetPositions});}catch{}finally{this.syncing=false;}}}};var B=class{constructor(e){this.messageListeners=new Map;this.openListeners=new Map;this.nextId=0;this.ws=new WebSocket(e.url,[],{maxReconnectionDelay:e.maxReconnectionDelay??3e4,minReconnectionDelay:e.minReconnectionDelay??1e3,reconnectionDelayGrowFactor:2,connectionTimeout:e.connectionTimeout??1e4}),this.ws.addEventListener("open",()=>{for(let t of this.openListeners.values())try{t();}catch{}}),this.ws.addEventListener("message",t=>{for(let s of this.messageListeners.values())try{s(t.data);}catch{}});}get connected(){return this.ws.readyState===WebSocket.OPEN}send(e){this.ws.readyState===WebSocket.OPEN&&this.ws.send(e);}addMessageListener(e){let t=String(++this.nextId);return this.messageListeners.set(t,e),t}removeMessageListener(e){this.messageListeners.delete(e);}addOpenListener(e){let t=String(++this.nextId);return this.openListeners.set(t,e),t}removeOpenListener(e){this.openListeners.delete(e);}close(){this.ws.close(),this.messageListeners.clear(),this.openListeners.clear();}};var Ve=new Set(["trade-histories","open-positions","positions","account-summary","open-orders","twap-details","fills-checkpoint","notifications","trades","twap-trades"]),ce=class{constructor(e){this.handlers=new Map;this.address=null;this.messageListenerId=null;this.openListenerId=null;this.transport=e,this.messageListenerId=this.transport.addMessageListener(t=>this.handleMessage(t)),this.openListenerId=this.transport.addOpenListener(()=>this.resubscribeAll());}setAddress(e){let t=e?.toLowerCase()??null;if(t===this.address)return;let s=this.address;if(this.address=t,!this.transport.connected)return;let r=this.getActiveAddressChannels();r.length!==0&&(s&&this.sendToTransport({action:"unsubscribe",address:s,channels:r}),t&&this.sendToTransport({action:"subscribe",address:t,channels:r}));}subscribe(e,t){let s=this.handlers.has(e);this.handlers.set(e,t),!s&&this.transport.connected&&this.sendSubscribe([e]);}unsubscribe(e){this.handlers.has(e)&&(this.handlers.delete(e),this.transport.connected&&this.sendUnsubscribe([e]));}destroy(){this.messageListenerId&&(this.transport.removeMessageListener(this.messageListenerId),this.messageListenerId=null),this.openListenerId&&(this.transport.removeOpenListener(this.openListenerId),this.openListenerId=null),this.handlers.clear(),this.address=null;}handleMessage(e){let t;try{t=JSON.parse(e);}catch{return}if(("success"in t||"error"in t)&&!("channel"in t)||!("channel"in t)||!("data"in t))return;let s=t;if(s.data===null||s.data===void 0)return;let r=this.handlers.get(s.channel);if(r)try{r(s.data);}catch{}}resubscribeAll(){if(this.handlers.size===0)return;let e=[],t=[];for(let s of this.handlers.keys())Ve.has(s)?t.push(s):e.push(s);e.length>0&&this.sendToTransport({action:"subscribe",channels:e}),t.length>0&&this.address&&this.sendToTransport({action:"subscribe",address:this.address,channels:t});}sendSubscribe(e){let t=e.some(s=>Ve.has(s));this.sendToTransport({action:"subscribe",...t&&this.address?{address:this.address}:{},channels:e});}sendUnsubscribe(e){let t=e.some(s=>Ve.has(s));this.sendToTransport({action:"unsubscribe",...t&&this.address?{address:this.address}:{},channels:e});}sendToTransport(e){this.transport.send(JSON.stringify(e));}getActiveAddressChannels(){return Array.from(this.handlers.keys()).filter(e=>Ve.has(e))}};var N=class{constructor(e){this.subscriptions=new Map;this.channelHandlers=new Map;this.messageListenerId=null;this.openListenerId=null;this.nextHandlerId=0;this.transport=e;}get connected(){return this.transport.connected}start(){this.messageListenerId||(this.messageListenerId=this.transport.addMessageListener(e=>{this.handleMessage(e);}),this.openListenerId=this.transport.addOpenListener(()=>{this.resubscribeAll();}),this.transport.connected&&this.resubscribeAll());}stop(){this.messageListenerId&&(this.transport.removeMessageListener(this.messageListenerId),this.messageListenerId=null),this.openListenerId&&(this.transport.removeOpenListener(this.openListenerId),this.openListenerId=null);for(let[,e]of this.subscriptions)this.sendUnsubscribe(e.subscription);this.subscriptions.clear();}subscribe(e,t){this.subscriptions.has(e)||(this.subscriptions.set(e,{channel:t.type,subscription:t}),this.transport.connected&&this.sendSubscribe(t));}unsubscribe(e){let t=this.subscriptions.get(e);t&&(this.subscriptions.delete(e),this.transport.connected&&this.sendUnsubscribe(t.subscription));}addChannelHandler(e,t){let s=String(++this.nextHandlerId),r=this.channelHandlers.get(e);return r||(r=new Map,this.channelHandlers.set(e,r)),r.set(s,t),s}removeChannelHandler(e,t){let s=this.channelHandlers.get(e);s&&(s.delete(t),s.size===0&&this.channelHandlers.delete(e));}destroy(){this.stop(),this.channelHandlers.clear();}handleMessage(e){let t;try{t=JSON.parse(e);}catch{return}let s=t.channel;if(!s||!("data"in t))return;let r=this.channelHandlers.get(s);if(r)for(let o of r.values())try{o(t.data);}catch{}}resubscribeAll(){for(let[,e]of this.subscriptions)this.sendSubscribe(e.subscription);}sendSubscribe(e){this.transport.send(JSON.stringify({method:"subscribe",subscription:e}));}sendUnsubscribe(e){this.transport.send(JSON.stringify({method:"unsubscribe",subscription:e}));}};var Qe=class{constructor(){this.address=null;this.api=new Z,this.pearTransport=new B({url:"wss://hl-v2.pearprotocol.io/ws"}),this.hlTransport=new B({url:"wss://api.hyperliquid.xyz/ws"}),this.pear=new ce(this.pearTransport),this.hyperliquid=new N(this.hlTransport),this.hyperliquid.start(),this.market=new ae(this.hyperliquid,this.pear),this.user=new ie(this.api,this.pear,this.hyperliquid,()=>this.market.getPrices(),()=>this.address),this.syncer=new le(this.api,this.hyperliquid),this.market.setOnPricesUpdated(()=>{this.user.recomputePositions();});}setAddress(e){let t=e.toLowerCase();this.address=t,this.pear.setAddress(t),this.hyperliquid.subscribe("allDexsClearinghouseState",{type:"allDexsClearinghouseState",user:t}),this.syncer.start(t);}destroy(){this.syncer.stop(),this.market.destroy(),this.pear.destroy(),this.hyperliquid.destroy(),this.pearTransport.close(),this.hlTransport.close();}};var yt=(r=>(r[r.CONNECTING=0]="CONNECTING",r[r.OPEN=1]="OPEN",r[r.CLOSING=2]="CLOSING",r[r.CLOSED=3]="CLOSED",r))(yt||{});
2
+ export{Q as APIKeysApi,Rt as APIKeysApiAxiosParamCreator,kr as APIKeysApiFactory,Ee as APIKeysApiFp,de as AccountsApi,ft as AccountsApiAxiosParamCreator,Er as AccountsApiFactory,et as AccountsApiFp,tr as AdjustPositionRequestDtoAdjustmentTypeEnum,rr as AdjustPositionRequestDtoExecutionTypeEnum,sr as AdjustPositionResponseDtoAdjustmentTypeEnum,$ as AgentWalletApi,xt as AgentWalletApiAxiosParamCreator,qr as AgentWalletApiFactory,qe as AgentWalletApiFp,or as AuthenticateRequestDtoMethodEnum,U as AuthenticationApi,bt as AuthenticationApiAxiosParamCreator,Lr as AuthenticationApiFactory,K as AuthenticationApiFp,nr as BtcDomMetaDtoKindEnum,ee as CandleCache,se as Chart,lr as ClosePositionRequestDtoDirectionEnum,ar as ClosePositionRequestDtoExecutionTypeEnum,ir as ClosePositionRequestDtoTriggerTypeEnum,Pe as Configuration,pr as CreatePositionRequestDtoDirectionEnum,cr as CreatePositionRequestDtoExecutionTypeEnum,dr as CreatePositionRequestDtoMarketSourceEnum,ur as CreatePositionRequestDtoTriggerTypeEnum,re as DataCollector,hr as ExternalFillDtoSideEnum,he as FillsApi,Tt as FillsApiAxiosParamCreator,Mr as FillsApiFactory,tt as FillsApiFp,le as FillsSyncer,Ye as HealthApi,Dt as HealthApiAxiosParamCreator,Wr as HealthApiFactory,rt as HealthApiFp,te as HyperliquidCandleWs,N as HyperliquidWs,Xe as LegacySupportApi,Ot as LegacySupportApiAxiosParamCreator,Gr as LegacySupportApiFactory,z as LegacySupportApiFp,gr as MarketDataV2BasketDtoCategoryEnum,ae as MarketSubscriptions,mr as MarketTriggerMetaDtoKindEnum,yr as MarketTriggerMetaDtoStatusEnum,Ar as MarketTriggerMetaDtoTypeEnum,Y as MarketsApi,St as MarketsApiAxiosParamCreator,Ur as MarketsApiFactory,pe as MarketsApiFp,X as NotificationsApi,vt as NotificationsApiAxiosParamCreator,Hr as NotificationsApiFactory,Le as NotificationsApiFp,Pr as OpenOrderDtoOrderTypeEnum,Cr as OpenOrderDtoStatusEnum,Ze as OpenPositionProcessedDtoPearExecutionFlagEnum,Rr as OracleValueDtoUnitEnum,L as OrdersApi,wt as OrdersApiAxiosParamCreator,_r as OrdersApiFactory,G as OrdersApiFp,Br as OrdersControllerGetAllOrdersOrderTypeEnum,Fr as OrdersControllerGetAllOrdersStatusEnum,Nr as OrdersControllerGetTriggersCategoryEnum,Z as PearApi,j as PearApiError,B as PearDefaultTransport,Pt as PearErrorCode,Qe as PearSdk,ce as PearWs,ge as PortfolioApi,It as PortfolioApiAxiosParamCreator,jr as PortfolioApiFactory,Me as PortfolioApiFp,Kr as PortfolioControllerGetAnalyticsIntervalEnum,E as PositionsApi,Vt as PositionsApiAxiosParamCreator,zr as PositionsApiFactory,q as PositionsApiFp,me as PublicStatsApi,kt as PublicStatsApiAxiosParamCreator,Qr as PublicStatsApiFactory,st as PublicStatsApiFp,yt as ReadyState,fr as RebalanceAssetPlanDtoSideEnum,xr as SpotOrderResponseDtoStatusEnum,Ae as SyncApi,Et as SyncApiAxiosParamCreator,$r as SyncApiFactory,ot as SyncApiFp,br as TpSlOrderParametersTriggerTypeEnum,Tr as TpSlThresholdTypeEnum,ye as TradeHistoryApi,qt as TradeHistoryApiAxiosParamCreator,Yr as TradeHistoryApiFactory,nt as TradeHistoryApiFp,Dr as TriggerDtoCategoryEnum,Or as TriggerDtoSourceEnum,vr as TriggerOrderParametersDirectionEnum,wr as TriggerOrderParametersMarketSourceEnum,Sr as TriggerOrderParametersTriggerTypeEnum,Ir as TwapChunkStatusDtoStatusEnum,Vr as TwapMonitoringDtoStatusEnum,ie as UserSubscriptions,Je as VaultWalletApi,Lt as VaultWalletApiAxiosParamCreator,Xr as VaultWalletApiFactory,M as VaultWalletApiFp,J as WatchlistApi,Mt as WatchlistApiAxiosParamCreator,Jr as WatchlistApiFactory,We as WatchlistApiFp,oe as aggregateClearinghouseStates,Ke as buildPositionValue,_e as buildPriceMap,He as buildTokenMetadataMap,ve as calculateAsset,Ce as computeAssetBars,ne as computeBasketSnapshot,ht as computeNetFundingRate,fe as computePerformanceCandles,ct as computePrice,dt as computePrice24hAgo,lt as computePriceRatio,pt as computePriceRatio24hAgo,be as computePriceRatioCandles,Re as computeRealtimeAssetBar,xe as computeRealtimePerformanceBar,Te as computeRealtimePriceRatioBar,Oe as computeRealtimeWeightedRatioBar,it as computeWeightedRatio,ut as computeWeightedRatio24hAgo,De as computeWeightedRatioCandles,H as createKey,je as enrichOrders,Ue as fetchHistoricalCandles,Ge as getIntervalSeconds,Se as getLeverage,W as getMarkPrice,Be as parseAssetCtxs,Fe as parsePerpMetas};//# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map