@nadohq/nuanze-client 0.45.0 → 0.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +27 -1
  2. package/dist/{NuanzeClient-D_LPUkvb.cjs → NuanzeClient-DK1Y8O_6.cjs} +13 -6
  3. package/dist/NuanzeClient-DK1Y8O_6.cjs.map +1 -0
  4. package/dist/NuanzeClient.cjs +1 -1
  5. package/dist/NuanzeClient.d.cts +14 -7
  6. package/dist/NuanzeClient.d.cts.map +1 -1
  7. package/dist/NuanzeClient.d.ts +14 -7
  8. package/dist/NuanzeClient.d.ts.map +1 -1
  9. package/dist/NuanzeClient.js +12 -5
  10. package/dist/NuanzeClient.js.map +1 -1
  11. package/dist/{NuanzeServerFailureError-cR0V5to1.d.cts → NuanzeServerFailureError-BhwISexo.d.cts} +2 -2
  12. package/dist/{NuanzeServerFailureError-cR0V5to1.d.cts.map → NuanzeServerFailureError-BhwISexo.d.cts.map} +1 -1
  13. package/dist/{NuanzeServerFailureError-D-C98gOE.d.ts → NuanzeServerFailureError-DNZobL5e.d.ts} +2 -2
  14. package/dist/{NuanzeServerFailureError-D-C98gOE.d.ts.map → NuanzeServerFailureError-DNZobL5e.d.ts.map} +1 -1
  15. package/dist/{clientModelTypes-Bzf5pbVl.d.ts → clientModelTypes-0e6V-2qK.d.cts} +2 -2
  16. package/dist/{clientModelTypes-DE60UN6J.d.cts.map → clientModelTypes-0e6V-2qK.d.cts.map} +1 -1
  17. package/dist/{clientModelTypes-DE60UN6J.d.cts → clientModelTypes-Ck_xwS0G.d.ts} +2 -2
  18. package/dist/{clientModelTypes-Bzf5pbVl.d.ts.map → clientModelTypes-Ck_xwS0G.d.ts.map} +1 -1
  19. package/dist/{clientTypes-BxpTClrz.d.ts → clientTypes-Dn_aEMkq.d.cts} +37 -2
  20. package/dist/clientTypes-Dn_aEMkq.d.cts.map +1 -0
  21. package/dist/{clientTypes-DXquGZPe.d.cts → clientTypes-o_pl9igJ.d.ts} +37 -2
  22. package/dist/clientTypes-o_pl9igJ.d.ts.map +1 -0
  23. package/dist/dataMappers.cjs +10 -3
  24. package/dist/dataMappers.cjs.map +1 -1
  25. package/dist/dataMappers.d.cts +8 -6
  26. package/dist/dataMappers.d.cts.map +1 -1
  27. package/dist/dataMappers.d.ts +8 -6
  28. package/dist/dataMappers.d.ts.map +1 -1
  29. package/dist/dataMappers.js +9 -2
  30. package/dist/dataMappers.js.map +1 -1
  31. package/dist/index.cjs +1 -1
  32. package/dist/index.d.cts +5 -5
  33. package/dist/index.d.ts +5 -5
  34. package/dist/{serverModelTypes-Db5COWs3.d.cts → serverModelTypes-CwgwD-Ig.d.cts} +2 -2
  35. package/dist/{serverModelTypes-Db5COWs3.d.cts.map → serverModelTypes-CwgwD-Ig.d.cts.map} +1 -1
  36. package/dist/{serverModelTypes-A_b-zjZO.d.ts → serverModelTypes-zBIYazFf.d.ts} +2 -2
  37. package/dist/{serverModelTypes-A_b-zjZO.d.ts.map → serverModelTypes-zBIYazFf.d.ts.map} +1 -1
  38. package/dist/{serverQueryTypes-CHYSYH97.d.ts → serverQueryTypes-BZPjG_2U.d.ts} +8 -3
  39. package/dist/serverQueryTypes-BZPjG_2U.d.ts.map +1 -0
  40. package/dist/{serverQueryTypes-QNx6f1km.d.cts → serverQueryTypes-CumC-LaJ.d.cts} +8 -3
  41. package/dist/serverQueryTypes-CumC-LaJ.d.cts.map +1 -0
  42. package/dist/types/NuanzeServerFailureError.d.cts +1 -1
  43. package/dist/types/NuanzeServerFailureError.d.ts +1 -1
  44. package/dist/types/clientModelTypes.cjs.map +1 -1
  45. package/dist/types/clientModelTypes.d.cts +1 -1
  46. package/dist/types/clientModelTypes.d.ts +1 -1
  47. package/dist/types/clientModelTypes.js.map +1 -1
  48. package/dist/types/clientTypes.d.cts +1 -1
  49. package/dist/types/clientTypes.d.ts +1 -1
  50. package/dist/types/index.d.cts +5 -5
  51. package/dist/types/index.d.ts +5 -5
  52. package/dist/types/serverModelTypes.d.cts +1 -1
  53. package/dist/types/serverModelTypes.d.ts +1 -1
  54. package/dist/types/serverQueryTypes.cjs.map +1 -1
  55. package/dist/types/serverQueryTypes.d.cts +1 -1
  56. package/dist/types/serverQueryTypes.d.ts +1 -1
  57. package/dist/types/serverQueryTypes.js.map +1 -1
  58. package/package.json +3 -3
  59. package/src/NuanzeClient.ts +12 -5
  60. package/src/dataMappers.ts +16 -2
  61. package/src/types/clientModelTypes.ts +1 -1
  62. package/src/types/clientTypes.ts +37 -0
  63. package/src/types/serverQueryTypes.ts +5 -0
  64. package/dist/NuanzeClient-D_LPUkvb.cjs.map +0 -1
  65. package/dist/clientTypes-BxpTClrz.d.ts.map +0 -1
  66. package/dist/clientTypes-DXquGZPe.d.cts.map +0 -1
  67. package/dist/serverQueryTypes-CHYSYH97.d.ts.map +0 -1
  68. package/dist/serverQueryTypes-QNx6f1km.d.cts.map +0 -1
package/README.md CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  HTTP client for the Nuanze public analytics API. Serves markets, wallets, trades, candles, collateral flows,
4
4
  positioning, and globally ranked current open positions. Read-only and credential-free, so unlike the other
5
- service clients it takes no wallet client or linked signer.
5
+ service clients it takes no wallet client or linked signer. Leaderboard viewer lookups take an explicit public
6
+ wallet address (`getLeaderboard` `viewAs`) or bytes32 subaccount hex (`getSubaccountLeaderboard` `viewAs`) and
7
+ require no authentication.
6
8
 
7
9
  [Full SDK Documentation](https://nadohq.github.io/nado-typescript-sdk/index.html)
8
10
 
@@ -75,6 +77,30 @@ Each method maps one-to-one onto a public GET operation:
75
77
  - `getOpenPositions`
76
78
 
77
79
  Decimal fields are mapped to `BigNumber`; timestamps stay UTC ISO 8601 strings, matching the API contract.
80
+ Both leaderboard collections accept an optional `viewAs` viewer selector: `getLeaderboard` takes an EVM address
81
+ and returns the wallet's full row plus rank as `viewer`; `getSubaccountLeaderboard` takes a bytes32 subaccount hex
82
+ and returns `{ filteredRank, item }` as `viewer`. A `viewer` is null when `viewAs` is omitted or has no source row.
83
+ For subaccounts, privacy, trading, and username-claim filters define the filtered-rank population without removing
84
+ an existing full item or its `globalRank`; exclusion sets only `filteredRank` to null.
85
+
86
+ ```ts
87
+ const board = await nuanze.getLeaderboard({
88
+ timeframe: '30d',
89
+ limit: 10,
90
+ viewAs: '0x1234567890123456789012345678901234567890',
91
+ });
92
+ if (board.viewer) {
93
+ console.log(board.viewer.rank, board.viewer.accountPnl.toFixed());
94
+ }
95
+
96
+ const subs = await nuanze.getSubaccountLeaderboard({
97
+ timeframe: '30d',
98
+ viewAs: '0x1234...0012',
99
+ });
100
+ if (subs.viewer) {
101
+ console.log(subs.viewer.filteredRank, subs.viewer.item?.globalRank);
102
+ }
103
+ ```
78
104
 
79
105
  ## Errors
80
106
 
@@ -92,9 +92,12 @@ var NuanzeClient = class {
92
92
  }
93
93
  /**
94
94
  * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized
95
- * movement plus funding and is not realized PnL.
95
+ * movement plus funding and is not realized PnL. Pass `viewAs` with an EVM address to also
96
+ * receive that wallet's full row plus rank as `viewer`, computed in the same request without
97
+ * altering pagination; `viewer` is null when `viewAs` is omitted or has no source row.
96
98
  *
97
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.
99
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid, or
100
+ * `INVALID_ADDRESS` when `viewAs` is malformed.
98
101
  */
99
102
  async getLeaderboard(params = {}) {
100
103
  return require_dataMappers.mapNuanzeLeaderboardResponse(await this.getJson("/leaderboard", params));
@@ -103,10 +106,14 @@ var NuanzeClient = class {
103
106
  * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account
104
107
  * PnL descending with nulls last. Username and display name are null when unavailable.
105
108
  * `globalRank` is independent of the active privacy and trading filters. Pagination uses a
106
- * filter-bound opaque cursor.
109
+ * filter-bound opaque cursor. Pass `viewAs` with a bytes32 subaccount hex to also receive that
110
+ * subaccount's `filteredRank` plus full item as `viewer` without altering pagination: `viewer`
111
+ * is null when `viewAs` is omitted or has no source row, and a filter-excluded row keeps its
112
+ * item with `filteredRank` null.
107
113
  *
108
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or
109
- * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.
114
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`,
115
+ * `CURSOR_FILTER_MISMATCH`, or `INVALID_SUBACCOUNT` when filters, the cursor, or `viewAs`
116
+ * are invalid.
110
117
  */
111
118
  async getSubaccountLeaderboard(params = {}) {
112
119
  return require_dataMappers.mapNuanzeSubaccountLeaderboardResponse(await this.getJson("/leaderboard/subaccounts", params));
@@ -338,4 +345,4 @@ Object.defineProperty(exports, "__toESM", {
338
345
  }
339
346
  });
340
347
 
341
- //# sourceMappingURL=NuanzeClient-D_LPUkvb.cjs.map
348
+ //# sourceMappingURL=NuanzeClient-DK1Y8O_6.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NuanzeClient-DK1Y8O_6.cjs","names":["mapNuanzeNewsResponse","mapNuanzeMarketsResponse","mapNuanzeMarketByTickerResponse","mapNuanzeFundingRatesResponse","mapNuanzeLeaderboardResponse","mapNuanzeSubaccountLeaderboardResponse","mapNuanzePlatformSummaryResponse","mapNuanzeFollowedLeaderboardResponse","mapNuanzeWalletSummaryResponse","mapNuanzeWalletPositionsResponse","mapNuanzeMarketTradesResponse","mapNuanzeMarketCandlesResponse","mapNuanzeWalletTradesResponse","mapNuanzeWalletPnlResponse","mapNuanzeWalletPnlSeriesResponse","mapNuanzeCollateralFlowsResponse","mapNuanzeCollateralFlowSummaryResponse","mapNuanzeCollateralFlowSeriesResponse","mapNuanzeMarketPositioningResponse","mapNuanzeMarketPositionsResponse","mapNuanzeOpenPositionsResponse","isNuanzeServerFailureResponse","NuanzeServerFailureError"],"sources":["../src/NuanzeClient.ts"],"sourcesContent":["import axios, { AxiosInstance, AxiosResponse } from 'axios';\nimport {\n mapNuanzeCollateralFlowSeriesResponse,\n mapNuanzeCollateralFlowSummaryResponse,\n mapNuanzeCollateralFlowsResponse,\n mapNuanzeFollowedLeaderboardResponse,\n mapNuanzeFundingRatesResponse,\n mapNuanzeLeaderboardResponse,\n mapNuanzeMarketByTickerResponse,\n mapNuanzeMarketCandlesResponse,\n mapNuanzeMarketPositioningResponse,\n mapNuanzeMarketPositionsResponse,\n mapNuanzeMarketTradesResponse,\n mapNuanzeMarketsResponse,\n mapNuanzeNewsResponse,\n mapNuanzeOpenPositionsResponse,\n mapNuanzePlatformSummaryResponse,\n mapNuanzeSubaccountLeaderboardResponse,\n mapNuanzeWalletPnlResponse,\n mapNuanzeWalletPnlSeriesResponse,\n mapNuanzeWalletPositionsResponse,\n mapNuanzeWalletSummaryResponse,\n mapNuanzeWalletTradesResponse,\n} from './dataMappers';\nimport {\n GetNuanzeCollateralFlowSeriesParams,\n GetNuanzeCollateralFlowSeriesResponse,\n GetNuanzeCollateralFlowSummaryParams,\n GetNuanzeCollateralFlowSummaryResponse,\n GetNuanzeCollateralFlowsParams,\n GetNuanzeCollateralFlowsResponse,\n GetNuanzeFollowedLeaderboardParams,\n GetNuanzeFollowedLeaderboardResponse,\n GetNuanzeFundingRatesParams,\n GetNuanzeFundingRatesResponse,\n GetNuanzeLeaderboardParams,\n GetNuanzeLeaderboardResponse,\n GetNuanzeMarketByTickerParams,\n GetNuanzeMarketByTickerResponse,\n GetNuanzeMarketCandlesParams,\n GetNuanzeMarketCandlesResponse,\n GetNuanzeMarketPositioningParams,\n GetNuanzeMarketPositioningResponse,\n GetNuanzeMarketPositionsParams,\n GetNuanzeMarketPositionsResponse,\n GetNuanzeMarketTradesParams,\n GetNuanzeMarketTradesResponse,\n GetNuanzeMarketsParams,\n GetNuanzeMarketsResponse,\n GetNuanzeNewsParams,\n GetNuanzeNewsResponse,\n GetNuanzeOpenPositionsParams,\n GetNuanzeOpenPositionsResponse,\n GetNuanzePlatformSummaryParams,\n GetNuanzePlatformSummaryResponse,\n GetNuanzeSubaccountLeaderboardParams,\n GetNuanzeSubaccountLeaderboardResponse,\n GetNuanzeWalletPnlParams,\n GetNuanzeWalletPnlResponse,\n GetNuanzeWalletPnlSeriesParams,\n GetNuanzeWalletPnlSeriesResponse,\n GetNuanzeWalletPositionsParams,\n GetNuanzeWalletPositionsResponse,\n GetNuanzeWalletSummaryParams,\n GetNuanzeWalletSummaryResponse,\n GetNuanzeWalletTradesParams,\n GetNuanzeWalletTradesResponse,\n NuanzeMarketSelector,\n} from './types/clientTypes';\nimport { NuanzeServerFailureError } from './types/NuanzeServerFailureError';\nimport { NuanzeServerMarketPositioningResponse } from './types/serverModelTypes';\nimport {\n NuanzeServerCollateralFlowSeriesResponse,\n NuanzeServerCollateralFlowSummaryResponse,\n NuanzeServerCollateralFlowsResponse,\n NuanzeServerFollowedLeaderboardResponse,\n NuanzeServerFundingRatesResponse,\n NuanzeServerLeaderboardResponse,\n NuanzeServerMarketByTickerResponse,\n NuanzeServerMarketCandlesResponse,\n NuanzeServerMarketPositionsResponse,\n NuanzeServerMarketTradesResponse,\n NuanzeServerMarketsResponse,\n NuanzeServerNewsResponse,\n NuanzeServerOpenPositionsResponse,\n NuanzeServerPlatformSummaryResponse,\n NuanzeServerSubaccountLeaderboardResponse,\n NuanzeServerWalletPnlResponse,\n NuanzeServerWalletPnlSeriesResponse,\n NuanzeServerWalletPositionsResponse,\n NuanzeServerWalletSummaryResponse,\n NuanzeServerWalletTradesResponse,\n isNuanzeServerFailureResponse,\n} from './types/serverQueryTypes';\n\n/**\n * Options for constructing a {@link NuanzeClient}.\n */\nexport interface NuanzeClientOpts {\n /**\n * Base URL of the Nuanze API, including the version segment, e.g. {@link NUANZE_CLIENT_ENDPOINTS}.\n */\n url: string;\n}\n\n/**\n * Client for the Nuanze public analytics API: markets, wallets, trades, candles, collateral flows,\n * and positioning.\n *\n * Read-only and credential-free, so unlike the other service clients it takes no wallet client or\n * linked signer. It also sends no `x-nado-client-type` header: Nuanze is a public API that does not\n * attribute traffic per client, and its `Access-Control-Allow-Headers` does not list the header, so\n * sending it would fail CORS preflight in the browser. All operations are GET.\n */\nexport class NuanzeClient {\n readonly opts: NuanzeClientOpts;\n readonly axiosInstance: AxiosInstance;\n\n constructor(opts: NuanzeClientOpts) {\n this.opts = opts;\n this.axiosInstance = axios.create({\n // Nuanze is public and answers every origin with `Access-Control-Allow-Origin: *`, which\n // browsers reject for credentialed requests.\n withCredentials: false,\n // We have custom logic to validate response status and create an appropriate error\n validateStatus: () => true,\n // Repeatable `productId` must serialize as `productId=1&productId=2` (OpenAPI explode).\n paramsSerializer: { indexes: null },\n });\n }\n\n /**\n * Lists published editorial stories, sorted by `publishedAt` descending then `id` descending.\n * Ticker filters include every product for the asset without distinguishing spot from perpetual\n * markets; an optional product ID narrows to one exact product. The opaque cursor is exclusive\n * and bound to normalized filters. Raw article ingestion, scoring, queue, and newsdesk fields are\n * excluded.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getNews(\n params: GetNuanzeNewsParams = {},\n ): Promise<GetNuanzeNewsResponse> {\n return mapNuanzeNewsResponse(\n await this.getJson<NuanzeServerNewsResponse>('/news', params),\n );\n }\n\n /**\n * Gets the active market universe, ordered by `productId` ascending. Never truncated, so `count`\n * always equals the length of `markets`. Market metadata refreshes about every five minutes and\n * prices about every minute.\n *\n * @throws {NuanzeServerFailureError} With error code `BAD_REQUEST` if a filter value is not a\n * documented venue or tradability state.\n */\n async getMarkets(\n params: GetNuanzeMarketsParams = {},\n ): Promise<GetNuanzeMarketsResponse> {\n return mapNuanzeMarketsResponse(\n await this.getJson<NuanzeServerMarketsResponse>('/markets', params),\n );\n }\n\n /**\n * Resolves a market by {@link NuanzeMarketSelector}. Supply at least `ticker` or `productId`;\n * when both are given, `productId` is used for the path segment and `ticker` is ignored.\n * Ticker lookup is case-insensitive and accepts canonical tickers or legacy source symbols.\n * An explicit unavailable venue returns `MARKET_NOT_FOUND`. With no venue, `strictVenue=true`\n * returns `AMBIGUOUS_MARKET` for multi-venue assets; otherwise the primary venue is used.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET` or `BAD_REQUEST` on invalid\n * selectors, and `MARKET_NOT_FOUND` when the selector does not resolve.\n */\n async getMarketByTicker(\n params: GetNuanzeMarketByTickerParams,\n ): Promise<GetNuanzeMarketByTickerResponse> {\n return mapNuanzeMarketByTickerResponse(\n await this.getMarketJson<NuanzeServerMarketByTickerResponse>(params),\n );\n }\n\n /**\n * Lists the latest funding observation per active perpetual market, refreshed about every five\n * minutes.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getFundingRates(\n params: GetNuanzeFundingRatesParams = {},\n ): Promise<GetNuanzeFundingRatesResponse> {\n return mapNuanzeFundingRatesResponse(\n await this.getJson<NuanzeServerFundingRatesResponse>(\n '/funding/rates',\n params,\n ),\n );\n }\n\n /**\n * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized\n * movement plus funding and is not realized PnL. Pass `viewAs` with an EVM address to also\n * receive that wallet's full row plus rank as `viewer`, computed in the same request without\n * altering pagination; `viewer` is null when `viewAs` is omitted or has no source row.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid, or\n * `INVALID_ADDRESS` when `viewAs` is malformed.\n */\n async getLeaderboard(\n params: GetNuanzeLeaderboardParams = {},\n ): Promise<GetNuanzeLeaderboardResponse> {\n return mapNuanzeLeaderboardResponse(\n await this.getJson<NuanzeServerLeaderboardResponse>(\n '/leaderboard',\n params,\n ),\n );\n }\n\n /**\n * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account\n * PnL descending with nulls last. Username and display name are null when unavailable.\n * `globalRank` is independent of the active privacy and trading filters. Pagination uses a\n * filter-bound opaque cursor. Pass `viewAs` with a bytes32 subaccount hex to also receive that\n * subaccount's `filteredRank` plus full item as `viewer` without altering pagination: `viewer`\n * is null when `viewAs` is omitted or has no source row, and a filter-excluded row keeps its\n * item with `filteredRank` null.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, or `INVALID_SUBACCOUNT` when filters, the cursor, or `viewAs`\n * are invalid.\n */\n async getSubaccountLeaderboard(\n params: GetNuanzeSubaccountLeaderboardParams = {},\n ): Promise<GetNuanzeSubaccountLeaderboardResponse> {\n return mapNuanzeSubaccountLeaderboardResponse(\n await this.getJson<NuanzeServerSubaccountLeaderboardResponse>(\n '/leaderboard/subaccounts',\n params,\n ),\n );\n }\n\n /**\n * Gets platform activity summary from five-minute aggregates.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if the window is not a documented value.\n */\n async getPlatformSummary(\n params: GetNuanzePlatformSummaryParams = {},\n ): Promise<GetNuanzePlatformSummaryResponse> {\n return mapNuanzePlatformSummaryResponse(\n await this.getJson<NuanzeServerPlatformSummaryResponse>(\n '/platform/summary',\n params,\n ),\n );\n }\n\n /**\n * Gets a keyset-paginated leaderboard for every subaccount a supplied bytes32 subaccount actively\n * follows, sorted by PnL descending with nulls last. The follower does not need a claimed\n * username. Subaccounts with no PnL in the window are included by default with null PnL/rank,\n * zero counts, and no products. Private subaccounts are excluded unless `includePrivate=true`.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` when params are invalid.\n */\n async getFollowedLeaderboard(\n params: GetNuanzeFollowedLeaderboardParams,\n ): Promise<GetNuanzeFollowedLeaderboardResponse> {\n return mapNuanzeFollowedLeaderboardResponse(\n await this.getJson<NuanzeServerFollowedLeaderboardResponse>(\n '/wallets/leaderboard',\n params,\n ),\n );\n }\n\n /**\n * Gets replica-backed wallet analytics. Without `subaccountName`, latest cumulative values are\n * selected per known subaccount and then summed. The response is a snapshot and does not claim\n * live health, withdrawable collateral, open-order, or signer state.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletSummary(\n params: GetNuanzeWalletSummaryParams,\n ): Promise<GetNuanzeWalletSummaryResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletSummaryResponse(\n await this.getJson<NuanzeServerWalletSummaryResponse>(\n `/wallets/${encodeURIComponent(address)}`,\n query,\n ),\n );\n }\n\n /**\n * Lists at most 500 current replica position rows across all known subaccounts by default. Rows\n * remain per subaccount. Spot rows are excluded unless `includeSpot=true`. This is not an\n * execution-grade live feed.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPositions(\n params: GetNuanzeWalletPositionsParams,\n ): Promise<GetNuanzeWalletPositionsResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPositionsResponse(\n await this.getJson<NuanzeServerWalletPositionsResponse>(\n `/wallets/${encodeURIComponent(address)}/positions`,\n query,\n ),\n );\n }\n\n /**\n * Lists market trades for a {@link NuanzeMarketSelector}: one taker-side row per match, sorted\n * by `matchedAt` then `id` descending. Supply at least `ticker` or `productId`; when both are\n * given, `productId` is used for the path segment and `ticker` is ignored. The exclusive cursor\n * is bound to operation and normalized filters. `from` is inclusive and `to` exclusive. Wallet\n * identity is absent.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, `RANGE_TOO_LARGE`, or `BAD_REQUEST` on invalid input, and\n * `MARKET_NOT_FOUND` when the selector does not resolve.\n */\n async getMarketTrades(\n params: GetNuanzeMarketTradesParams,\n ): Promise<GetNuanzeMarketTradesResponse> {\n return mapNuanzeMarketTradesResponse(\n await this.getMarketJson<NuanzeServerMarketTradesResponse>(\n params,\n '/trades',\n ),\n );\n }\n\n /**\n * Lists market candles for a {@link NuanzeMarketSelector}. Supply at least `ticker` or\n * `productId`; when both are given, `productId` is used for the path segment and `ticker` is\n * ignored. Source storage is 1h; 4h and 1d are UTC-aligned rollups and missing bars are not\n * interpolated. The newest `limit` matching bars are selected and returned oldest-to-newest,\n * at most 750, with no pagination. A current bucket has `complete=false`.\n *\n * @throws {NuanzeServerFailureError} With `UNSUPPORTED_INTERVAL`, `RANGE_TOO_LARGE`,\n * `AMBIGUOUS_MARKET`, or `BAD_REQUEST` on invalid input, and `MARKET_NOT_FOUND` when the\n * selector does not resolve.\n */\n async getMarketCandles(\n params: GetNuanzeMarketCandlesParams,\n ): Promise<GetNuanzeMarketCandlesResponse> {\n return mapNuanzeMarketCandlesResponse(\n await this.getMarketJson<NuanzeServerMarketCandlesResponse>(\n params,\n '/candles',\n ),\n );\n }\n\n /**\n * Lists wallet-owned maker and taker execution rows, sorted by `matchedAt` then `id` descending.\n * The cursor is exclusive and filter-bound. `from` is inclusive and `to` exclusive.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, `RANGE_TOO_LARGE`, or `BAD_REQUEST` on invalid input, and\n * `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletTrades(\n params: GetNuanzeWalletTradesParams,\n ): Promise<GetNuanzeWalletTradesResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletTradesResponse(\n await this.getJson<NuanzeServerWalletTradesResponse>(\n `/wallets/${encodeURIComponent(address)}/trades`,\n query,\n ),\n );\n }\n\n /**\n * Gets wallet account PnL. 24h is rolling and uses hourly snapshots with a daily fallback\n * baseline. Longer windows use daily snapshots; `all` starts at earliest coverage. PnL includes\n * realized and unrealized movement plus funding.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPnl(\n params: GetNuanzeWalletPnlParams,\n ): Promise<GetNuanzeWalletPnlResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPnlResponse(\n await this.getJson<NuanzeServerWalletPnlResponse>(\n `/wallets/${encodeURIComponent(address)}/pnl`,\n query,\n ),\n );\n }\n\n /**\n * Gets a wallet account series of at most 1,000 deterministically sampled points ordered by\n * timestamp. Series contain a boundary anchor and a carried-forward request-time tip; synthetic\n * points are identified. Latest buckets may be provisional.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPnlSeries(\n params: GetNuanzeWalletPnlSeriesParams,\n ): Promise<GetNuanzeWalletPnlSeriesResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPnlSeriesResponse(\n await this.getJson<NuanzeServerWalletPnlSeriesResponse>(\n `/wallets/${encodeURIComponent(address)}/pnl/series`,\n query,\n ),\n );\n }\n\n /**\n * Lists public collateral events, sorted by timestamp then `id` descending. Repeated `productId`\n * uses OR semantics. `minUsd` excludes unvalued events; without it unvalued events remain.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getCollateralFlows(\n params: GetNuanzeCollateralFlowsParams = {},\n ): Promise<GetNuanzeCollateralFlowsResponse> {\n return mapNuanzeCollateralFlowsResponse(\n await this.getJson<NuanzeServerCollateralFlowsResponse>('/flows', params),\n );\n }\n\n /**\n * Gets collateral flow aggregates: deposited, withdrawn, net, and gross, with valuation coverage\n * and a prior equal-window comparison. `all` has no prior window.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getCollateralFlowSummary(\n params: GetNuanzeCollateralFlowSummaryParams = {},\n ): Promise<GetNuanzeCollateralFlowSummaryResponse> {\n return mapNuanzeCollateralFlowSummaryResponse(\n await this.getJson<NuanzeServerCollateralFlowSummaryResponse>(\n '/flows/summary',\n params,\n ),\n );\n }\n\n /**\n * Gets collateral flow series of at most 1,000 UTC buckets. Allowed timeframe/bucket pairs are\n * 24h/hour, 7d/hour or day (default hour), 30d/day, and all/day.\n *\n * @throws {NuanzeServerFailureError} With `UNSUPPORTED_BUCKET` or `BAD_REQUEST` when the pair or\n * filters are invalid.\n */\n async getCollateralFlowSeries(\n params: GetNuanzeCollateralFlowSeriesParams = {},\n ): Promise<GetNuanzeCollateralFlowSeriesResponse> {\n return mapNuanzeCollateralFlowSeriesResponse(\n await this.getJson<NuanzeServerCollateralFlowSeriesResponse>(\n '/flows/series',\n params,\n ),\n );\n }\n\n /**\n * Gets privacy-preserving aggregate positioning for an active perpetual identified by\n * {@link NuanzeMarketSelector}. Supply at least `ticker` or `productId`; when both are given,\n * `productId` is used for the path segment and `ticker` is ignored. Cross and isolated legs\n * are summed within owner/subaccount/product before direction classification. Every cell\n * requires at least 20 distinct contributing owners. No identity, individual position, entry\n * price, PnL, margin, or leverage fields are returned.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET` or `BAD_REQUEST` on invalid input,\n * and `MARKET_NOT_FOUND` when the selector does not resolve to a perp.\n */\n async getMarketPositioning(\n params: GetNuanzeMarketPositioningParams,\n ): Promise<GetNuanzeMarketPositioningResponse> {\n return mapNuanzeMarketPositioningResponse(\n await this.getMarketJson<NuanzeServerMarketPositioningResponse>(\n params,\n '/positioning',\n ),\n );\n }\n\n /**\n * Lists open perpetual position legs for a market identified by {@link NuanzeMarketSelector}.\n * Supply at least `ticker` or `productId`; when both are given, `productId` is used for the\n * path segment and `ticker` is ignored. Results default to absolute notional descending and\n * can be ordered by signed unrealized PnL or absolute base amount in either direction. Spot\n * markets are not supported. Legs below $10 absolute notional are excluded. Wallet addresses,\n * nullable synced usernames and display names, and signed exact base amounts are returned.\n * Isolated positions include effective leverage computed by Nuanze; cross positions return\n * null leverage.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, or `BAD_REQUEST` on invalid input, and `MARKET_NOT_FOUND` when the\n * selector does not resolve to a perp.\n */\n async getMarketPositions(\n params: GetNuanzeMarketPositionsParams,\n ): Promise<GetNuanzeMarketPositionsResponse> {\n return mapNuanzeMarketPositionsResponse(\n await this.getMarketJson<NuanzeServerMarketPositionsResponse>(\n params,\n '/positions',\n ),\n );\n }\n\n /**\n * Lists current open perpetual position legs across every market by signed unrealized PnL.\n * Descending returns the largest gainers and ascending returns the largest losers. This is a\n * latest indexed snapshot with no timeframe. Legs below $10 absolute notional are excluded.\n * Private subaccounts are excluded unless `includePrivate=true`. Each row includes market\n * identity, nullable synced username and display name, and its source snapshot timestamp.\n * Isolated positions include effective leverage computed by Nuanze; cross positions return\n * null leverage.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_CURSOR`, `CURSOR_FILTER_MISMATCH`, or\n * `BAD_REQUEST` when the query or cursor is invalid.\n */\n async getOpenPositions(\n params: GetNuanzeOpenPositionsParams = {},\n ): Promise<GetNuanzeOpenPositionsResponse> {\n return mapNuanzeOpenPositionsResponse(\n await this.getJson<NuanzeServerOpenPositionsResponse>(\n '/positions',\n params,\n ),\n );\n }\n\n /**\n * Performs a GET against `{baseUrl}{path}` and classifies the status before returning the body.\n */\n private async getJson<T>(path: string, params?: object): Promise<T> {\n return this.requestJson<T>(path, { params });\n }\n\n private async getMarketJson<T>(\n params: NuanzeMarketSelector & object,\n suffix = '',\n ): Promise<T> {\n const { productId, ticker, ...query } = params;\n const selector = productId ?? ticker;\n if (selector === undefined) {\n throw new Error('A market ticker or productId is required.');\n }\n return this.getJson<T>(\n `/markets/${encodeURIComponent(selector.toString())}${suffix}`,\n query,\n );\n }\n\n private async requestJson<T>(\n path: string,\n config: { params?: object } = {},\n ): Promise<T> {\n const response = await this.axiosInstance.request<T>({\n method: 'GET',\n url: `${this.opts.url}${path}`,\n ...config,\n });\n this.checkResponseStatus(response);\n return response.data;\n }\n\n /**\n * Validates the HTTP status before interpreting the body. Nuanze maps every domain failure onto a\n * non-2xx status carrying a failure envelope, so anything else is a transport-level error.\n */\n private checkResponseStatus(response: AxiosResponse<unknown>) {\n if (response.status >= 200 && response.status < 300) {\n return;\n }\n if (isNuanzeServerFailureResponse(response.data)) {\n throw new NuanzeServerFailureError(response.data, response.status);\n }\n throw new Error(\n `Unexpected response from Nuanze: ${response.status} ${response.statusText}. Data: ${JSON.stringify(response.data)}`,\n );\n }\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_NuanzeClient = require("./NuanzeClient-D_LPUkvb.cjs");
2
+ const require_NuanzeClient = require("./NuanzeClient-DK1Y8O_6.cjs");
3
3
  require("./dataMappers.cjs");
4
4
  exports.NuanzeClient = require_NuanzeClient.NuanzeClient;
@@ -1,4 +1,4 @@
1
- import { A as GetNuanzePlatformSummaryResponse, B as GetNuanzeWalletSummaryResponse, C as GetNuanzeMarketsParams, D as GetNuanzeOpenPositionsParams, E as GetNuanzeNewsResponse, F as GetNuanzeWalletPnlSeriesParams, H as GetNuanzeWalletTradesResponse, I as GetNuanzeWalletPnlSeriesResponse, L as GetNuanzeWalletPositionsParams, M as GetNuanzeSubaccountLeaderboardResponse, N as GetNuanzeWalletPnlParams, O as GetNuanzeOpenPositionsResponse, P as GetNuanzeWalletPnlResponse, R as GetNuanzeWalletPositionsResponse, S as GetNuanzeMarketTradesResponse, T as GetNuanzeNewsParams, V as GetNuanzeWalletTradesParams, _ as GetNuanzeMarketPositioningParams, a as GetNuanzeCollateralFlowsParams, b as GetNuanzeMarketPositionsResponse, c as GetNuanzeFollowedLeaderboardResponse, d as GetNuanzeLeaderboardParams, f as GetNuanzeLeaderboardResponse, g as GetNuanzeMarketCandlesResponse, h as GetNuanzeMarketCandlesParams, i as GetNuanzeCollateralFlowSummaryResponse, j as GetNuanzeSubaccountLeaderboardParams, k as GetNuanzePlatformSummaryParams, l as GetNuanzeFundingRatesParams, m as GetNuanzeMarketByTickerResponse, n as GetNuanzeCollateralFlowSeriesResponse, o as GetNuanzeCollateralFlowsResponse, p as GetNuanzeMarketByTickerParams, r as GetNuanzeCollateralFlowSummaryParams, s as GetNuanzeFollowedLeaderboardParams, t as GetNuanzeCollateralFlowSeriesParams, u as GetNuanzeFundingRatesResponse, v as GetNuanzeMarketPositioningResponse, w as GetNuanzeMarketsResponse, x as GetNuanzeMarketTradesParams, y as GetNuanzeMarketPositionsParams, z as GetNuanzeWalletSummaryParams } from "./clientTypes-DXquGZPe.cjs";
1
+ import { A as GetNuanzePlatformSummaryResponse, B as GetNuanzeWalletSummaryResponse, C as GetNuanzeMarketsParams, D as GetNuanzeOpenPositionsParams, E as GetNuanzeNewsResponse, F as GetNuanzeWalletPnlSeriesParams, H as GetNuanzeWalletTradesResponse, I as GetNuanzeWalletPnlSeriesResponse, L as GetNuanzeWalletPositionsParams, M as GetNuanzeSubaccountLeaderboardResponse, N as GetNuanzeWalletPnlParams, O as GetNuanzeOpenPositionsResponse, P as GetNuanzeWalletPnlResponse, R as GetNuanzeWalletPositionsResponse, S as GetNuanzeMarketTradesResponse, T as GetNuanzeNewsParams, V as GetNuanzeWalletTradesParams, _ as GetNuanzeMarketPositioningParams, a as GetNuanzeCollateralFlowsParams, b as GetNuanzeMarketPositionsResponse, c as GetNuanzeFollowedLeaderboardResponse, d as GetNuanzeLeaderboardParams, f as GetNuanzeLeaderboardResponse, g as GetNuanzeMarketCandlesResponse, h as GetNuanzeMarketCandlesParams, i as GetNuanzeCollateralFlowSummaryResponse, j as GetNuanzeSubaccountLeaderboardParams, k as GetNuanzePlatformSummaryParams, l as GetNuanzeFundingRatesParams, m as GetNuanzeMarketByTickerResponse, n as GetNuanzeCollateralFlowSeriesResponse, o as GetNuanzeCollateralFlowsResponse, p as GetNuanzeMarketByTickerParams, r as GetNuanzeCollateralFlowSummaryParams, s as GetNuanzeFollowedLeaderboardParams, t as GetNuanzeCollateralFlowSeriesParams, u as GetNuanzeFundingRatesResponse, v as GetNuanzeMarketPositioningResponse, w as GetNuanzeMarketsResponse, x as GetNuanzeMarketTradesParams, y as GetNuanzeMarketPositionsParams, z as GetNuanzeWalletSummaryParams } from "./clientTypes-Dn_aEMkq.cjs";
2
2
  import { AxiosInstance } from "axios";
3
3
 
4
4
  //#region src/NuanzeClient.d.ts
@@ -64,19 +64,26 @@ declare class NuanzeClient {
64
64
  getFundingRates(params?: GetNuanzeFundingRatesParams): Promise<GetNuanzeFundingRatesResponse>;
65
65
  /**
66
66
  * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized
67
- * movement plus funding and is not realized PnL.
67
+ * movement plus funding and is not realized PnL. Pass `viewAs` with an EVM address to also
68
+ * receive that wallet's full row plus rank as `viewer`, computed in the same request without
69
+ * altering pagination; `viewer` is null when `viewAs` is omitted or has no source row.
68
70
  *
69
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.
71
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid, or
72
+ * `INVALID_ADDRESS` when `viewAs` is malformed.
70
73
  */
71
74
  getLeaderboard(params?: GetNuanzeLeaderboardParams): Promise<GetNuanzeLeaderboardResponse>;
72
75
  /**
73
76
  * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account
74
77
  * PnL descending with nulls last. Username and display name are null when unavailable.
75
78
  * `globalRank` is independent of the active privacy and trading filters. Pagination uses a
76
- * filter-bound opaque cursor.
77
- *
78
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or
79
- * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.
79
+ * filter-bound opaque cursor. Pass `viewAs` with a bytes32 subaccount hex to also receive that
80
+ * subaccount's `filteredRank` plus full item as `viewer` without altering pagination: `viewer`
81
+ * is null when `viewAs` is omitted or has no source row, and a filter-excluded row keeps its
82
+ * item with `filteredRank` null.
83
+ *
84
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`,
85
+ * `CURSOR_FILTER_MISMATCH`, or `INVALID_SUBACCOUNT` when filters, the cursor, or `viewAs`
86
+ * are invalid.
80
87
  */
81
88
  getSubaccountLeaderboard(params?: GetNuanzeSubaccountLeaderboardParams): Promise<GetNuanzeSubaccountLeaderboardResponse>;
82
89
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"NuanzeClient.d.cts","names":[],"sources":["../src/src/NuanzeClient.ts"],"mappings":";;;;;;AAkGA;UAAiB,gBAAA;;;AAIZ;EAAH,GAAG;AAAA;;;;;;;;;;cAYQ,YAAA;EAAA,SACF,IAAA,EAAM,gBAAA;EAAA,SACN,aAAA,EAAe,aAAA;cAEZ,IAAA,EAAM,gBAAA;EAwER;;;;;;;;;;EAjDJ,OAAA,CACJ,MAAA,GAAQ,mBAAA,GACP,OAAA,CAAQ,qBAAA;EAqGR;;;;;;;;EAvFG,UAAA,CACJ,MAAA,GAAQ,sBAAA,GACP,OAAA,CAAQ,wBAAA;EA+IR;;;;;;;;;;EA/HG,iBAAA,CACJ,MAAA,EAAQ,6BAAA,GACP,OAAA,CAAQ,+BAAA;EAiNA;;;;;;EArML,eAAA,CACJ,MAAA,GAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EA0OR;;;;;;EA3NG,cAAA,CACJ,MAAA,GAAQ,0BAAA,GACP,OAAA,CAAQ,4BAAA;EA8QD;;;;;;;;;EA5PJ,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EA2SD;;;;;EA7RJ,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA9HO;;;;;;;;EA+IZ,sBAAA,CACJ,MAAA,EAAQ,kCAAA,GACP,OAAA,CAAQ,oCAAA;EAzGT;;;;;;;;EA0HI,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EA5FD;;;;;;;;EA8GJ,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA5EL;;;;;;;;;;;EAiGA,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EA/DT;;;;;;;;;;;EAmFI,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EA7CA;;;;;;;;EA8DL,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EAnBR;;;;;;;;EAqCG,YAAA,CACJ,MAAA,EAAQ,wBAAA,GACP,OAAA,CAAQ,0BAAA;EADT;;;;;;;;EAmBI,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAkBD;;;;;;;EADJ,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAcA;;;;;;EAFL,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EAuCD;;;;;;;EAvBJ,uBAAA,CACJ,MAAA,GAAQ,mCAAA,GACP,OAAA,CAAQ,qCAAA;EA+CA;;;;;;;;;;;EA3BL,oBAAA,CACJ,MAAA,EAAQ,gCAAA,GACP,OAAA,CAAQ,kCAAA;;;;;;;;;;;;;;;EAuBL,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;;;;;;;;;;;;;EAqBL,gBAAA,CACJ,MAAA,GAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;;;;UAYG,OAAA;EAAA,QAIA,aAAA;EAAA,QAeA,WAAA;;;;;UAiBN,mBAAA;AAAA"}
1
+ {"version":3,"file":"NuanzeClient.d.cts","names":[],"sources":["../src/src/NuanzeClient.ts"],"mappings":";;;;;;AAkGA;UAAiB,gBAAA;;;AAIZ;EAAH,GAAG;AAAA;;;;;;;;;;cAYQ,YAAA;EAAA,SACF,IAAA,EAAM,gBAAA;EAAA,SACN,aAAA,EAAe,aAAA;cAEZ,IAAA,EAAM,gBAAA;EAwER;;;;;;;;;;EAjDJ,OAAA,CACJ,MAAA,GAAQ,mBAAA,GACP,OAAA,CAAQ,qBAAA;EA4GR;;;;;;;;EA9FG,UAAA,CACJ,MAAA,GAAQ,sBAAA,GACP,OAAA,CAAQ,wBAAA;EAsJR;;;;;;;;;;EAtIG,iBAAA,CACJ,MAAA,EAAQ,6BAAA,GACP,OAAA,CAAQ,+BAAA;EAwNA;;;;;;EA5ML,eAAA,CACJ,MAAA,GAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EAiPR;;;;;;;;;EA/NG,cAAA,CACJ,MAAA,GAAQ,0BAAA,GACP,OAAA,CAAQ,4BAAA;EA2SD;;;;;;;;;;;;;EArRJ,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EArHC;;;;;EAmIN,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA9FL;;;;;;;;EA+GA,sBAAA,CACJ,MAAA,EAAQ,kCAAA,GACP,OAAA,CAAQ,oCAAA;EA7FA;;;;;;;;EA8GL,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EA9ER;;;;;;;;EAgGG,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA3DT;;;;;;;;;;;EAgFI,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EA3CA;;;;;;;;;;;EA+DL,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EADD;;;;;;;;EAkBJ,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EAkBL;;;;;;;;EAAA,YAAA,CACJ,MAAA,EAAQ,wBAAA,GACP,OAAA,CAAQ,0BAAA;EAoBA;;;;;;;;EAFL,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAiCR;;;;;;;EAhBG,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAqDD;;;;;;EAzCJ,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EAiER;;;;;;;EAjDG,uBAAA,CACJ,MAAA,GAAQ,mCAAA,GACP,OAAA,CAAQ,qCAAA;EAsFG;;;;AAgCa;;;;;;;EAlGrB,oBAAA,CACJ,MAAA,EAAQ,gCAAA,GACP,OAAA,CAAQ,kCAAA;;;;;;;;;;;;;;;EAuBL,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;;;;;;;;;;;;;EAqBL,gBAAA,CACJ,MAAA,GAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;;;;UAYG,OAAA;EAAA,QAIA,aAAA;EAAA,QAeA,WAAA;;;;;UAiBN,mBAAA;AAAA"}
@@ -1,4 +1,4 @@
1
- import { A as GetNuanzePlatformSummaryResponse, B as GetNuanzeWalletSummaryResponse, C as GetNuanzeMarketsParams, D as GetNuanzeOpenPositionsParams, E as GetNuanzeNewsResponse, F as GetNuanzeWalletPnlSeriesParams, H as GetNuanzeWalletTradesResponse, I as GetNuanzeWalletPnlSeriesResponse, L as GetNuanzeWalletPositionsParams, M as GetNuanzeSubaccountLeaderboardResponse, N as GetNuanzeWalletPnlParams, O as GetNuanzeOpenPositionsResponse, P as GetNuanzeWalletPnlResponse, R as GetNuanzeWalletPositionsResponse, S as GetNuanzeMarketTradesResponse, T as GetNuanzeNewsParams, V as GetNuanzeWalletTradesParams, _ as GetNuanzeMarketPositioningParams, a as GetNuanzeCollateralFlowsParams, b as GetNuanzeMarketPositionsResponse, c as GetNuanzeFollowedLeaderboardResponse, d as GetNuanzeLeaderboardParams, f as GetNuanzeLeaderboardResponse, g as GetNuanzeMarketCandlesResponse, h as GetNuanzeMarketCandlesParams, i as GetNuanzeCollateralFlowSummaryResponse, j as GetNuanzeSubaccountLeaderboardParams, k as GetNuanzePlatformSummaryParams, l as GetNuanzeFundingRatesParams, m as GetNuanzeMarketByTickerResponse, n as GetNuanzeCollateralFlowSeriesResponse, o as GetNuanzeCollateralFlowsResponse, p as GetNuanzeMarketByTickerParams, r as GetNuanzeCollateralFlowSummaryParams, s as GetNuanzeFollowedLeaderboardParams, t as GetNuanzeCollateralFlowSeriesParams, u as GetNuanzeFundingRatesResponse, v as GetNuanzeMarketPositioningResponse, w as GetNuanzeMarketsResponse, x as GetNuanzeMarketTradesParams, y as GetNuanzeMarketPositionsParams, z as GetNuanzeWalletSummaryParams } from "./clientTypes-BxpTClrz.js";
1
+ import { A as GetNuanzePlatformSummaryResponse, B as GetNuanzeWalletSummaryResponse, C as GetNuanzeMarketsParams, D as GetNuanzeOpenPositionsParams, E as GetNuanzeNewsResponse, F as GetNuanzeWalletPnlSeriesParams, H as GetNuanzeWalletTradesResponse, I as GetNuanzeWalletPnlSeriesResponse, L as GetNuanzeWalletPositionsParams, M as GetNuanzeSubaccountLeaderboardResponse, N as GetNuanzeWalletPnlParams, O as GetNuanzeOpenPositionsResponse, P as GetNuanzeWalletPnlResponse, R as GetNuanzeWalletPositionsResponse, S as GetNuanzeMarketTradesResponse, T as GetNuanzeNewsParams, V as GetNuanzeWalletTradesParams, _ as GetNuanzeMarketPositioningParams, a as GetNuanzeCollateralFlowsParams, b as GetNuanzeMarketPositionsResponse, c as GetNuanzeFollowedLeaderboardResponse, d as GetNuanzeLeaderboardParams, f as GetNuanzeLeaderboardResponse, g as GetNuanzeMarketCandlesResponse, h as GetNuanzeMarketCandlesParams, i as GetNuanzeCollateralFlowSummaryResponse, j as GetNuanzeSubaccountLeaderboardParams, k as GetNuanzePlatformSummaryParams, l as GetNuanzeFundingRatesParams, m as GetNuanzeMarketByTickerResponse, n as GetNuanzeCollateralFlowSeriesResponse, o as GetNuanzeCollateralFlowsResponse, p as GetNuanzeMarketByTickerParams, r as GetNuanzeCollateralFlowSummaryParams, s as GetNuanzeFollowedLeaderboardParams, t as GetNuanzeCollateralFlowSeriesParams, u as GetNuanzeFundingRatesResponse, v as GetNuanzeMarketPositioningResponse, w as GetNuanzeMarketsResponse, x as GetNuanzeMarketTradesParams, y as GetNuanzeMarketPositionsParams, z as GetNuanzeWalletSummaryParams } from "./clientTypes-o_pl9igJ.js";
2
2
  import { AxiosInstance } from "axios";
3
3
 
4
4
  //#region src/NuanzeClient.d.ts
@@ -64,19 +64,26 @@ declare class NuanzeClient {
64
64
  getFundingRates(params?: GetNuanzeFundingRatesParams): Promise<GetNuanzeFundingRatesResponse>;
65
65
  /**
66
66
  * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized
67
- * movement plus funding and is not realized PnL.
67
+ * movement plus funding and is not realized PnL. Pass `viewAs` with an EVM address to also
68
+ * receive that wallet's full row plus rank as `viewer`, computed in the same request without
69
+ * altering pagination; `viewer` is null when `viewAs` is omitted or has no source row.
68
70
  *
69
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.
71
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid, or
72
+ * `INVALID_ADDRESS` when `viewAs` is malformed.
70
73
  */
71
74
  getLeaderboard(params?: GetNuanzeLeaderboardParams): Promise<GetNuanzeLeaderboardResponse>;
72
75
  /**
73
76
  * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account
74
77
  * PnL descending with nulls last. Username and display name are null when unavailable.
75
78
  * `globalRank` is independent of the active privacy and trading filters. Pagination uses a
76
- * filter-bound opaque cursor.
77
- *
78
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or
79
- * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.
79
+ * filter-bound opaque cursor. Pass `viewAs` with a bytes32 subaccount hex to also receive that
80
+ * subaccount's `filteredRank` plus full item as `viewer` without altering pagination: `viewer`
81
+ * is null when `viewAs` is omitted or has no source row, and a filter-excluded row keeps its
82
+ * item with `filteredRank` null.
83
+ *
84
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`,
85
+ * `CURSOR_FILTER_MISMATCH`, or `INVALID_SUBACCOUNT` when filters, the cursor, or `viewAs`
86
+ * are invalid.
80
87
  */
81
88
  getSubaccountLeaderboard(params?: GetNuanzeSubaccountLeaderboardParams): Promise<GetNuanzeSubaccountLeaderboardResponse>;
82
89
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"NuanzeClient.d.ts","names":[],"sources":["../src/src/NuanzeClient.ts"],"mappings":";;;;;;AAkGA;UAAiB,gBAAA;;;AAIZ;EAAH,GAAG;AAAA;;;;;;;;;;cAYQ,YAAA;EAAA,SACF,IAAA,EAAM,gBAAA;EAAA,SACN,aAAA,EAAe,aAAA;cAEZ,IAAA,EAAM,gBAAA;EAwER;;;;;;;;;;EAjDJ,OAAA,CACJ,MAAA,GAAQ,mBAAA,GACP,OAAA,CAAQ,qBAAA;EAqGR;;;;;;;;EAvFG,UAAA,CACJ,MAAA,GAAQ,sBAAA,GACP,OAAA,CAAQ,wBAAA;EA+IR;;;;;;;;;;EA/HG,iBAAA,CACJ,MAAA,EAAQ,6BAAA,GACP,OAAA,CAAQ,+BAAA;EAiNA;;;;;;EArML,eAAA,CACJ,MAAA,GAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EA0OR;;;;;;EA3NG,cAAA,CACJ,MAAA,GAAQ,0BAAA,GACP,OAAA,CAAQ,4BAAA;EA8QD;;;;;;;;;EA5PJ,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EA2SD;;;;;EA7RJ,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA9HO;;;;;;;;EA+IZ,sBAAA,CACJ,MAAA,EAAQ,kCAAA,GACP,OAAA,CAAQ,oCAAA;EAzGT;;;;;;;;EA0HI,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EA5FD;;;;;;;;EA8GJ,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA5EL;;;;;;;;;;;EAiGA,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EA/DT;;;;;;;;;;;EAmFI,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EA7CA;;;;;;;;EA8DL,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EAnBR;;;;;;;;EAqCG,YAAA,CACJ,MAAA,EAAQ,wBAAA,GACP,OAAA,CAAQ,0BAAA;EADT;;;;;;;;EAmBI,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAkBD;;;;;;;EADJ,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAcA;;;;;;EAFL,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EAuCD;;;;;;;EAvBJ,uBAAA,CACJ,MAAA,GAAQ,mCAAA,GACP,OAAA,CAAQ,qCAAA;EA+CA;;;;;;;;;;;EA3BL,oBAAA,CACJ,MAAA,EAAQ,gCAAA,GACP,OAAA,CAAQ,kCAAA;;;;;;;;;;;;;;;EAuBL,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;;;;;;;;;;;;;EAqBL,gBAAA,CACJ,MAAA,GAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;;;;UAYG,OAAA;EAAA,QAIA,aAAA;EAAA,QAeA,WAAA;;;;;UAiBN,mBAAA;AAAA"}
1
+ {"version":3,"file":"NuanzeClient.d.ts","names":[],"sources":["../src/src/NuanzeClient.ts"],"mappings":";;;;;;AAkGA;UAAiB,gBAAA;;;AAIZ;EAAH,GAAG;AAAA;;;;;;;;;;cAYQ,YAAA;EAAA,SACF,IAAA,EAAM,gBAAA;EAAA,SACN,aAAA,EAAe,aAAA;cAEZ,IAAA,EAAM,gBAAA;EAwER;;;;;;;;;;EAjDJ,OAAA,CACJ,MAAA,GAAQ,mBAAA,GACP,OAAA,CAAQ,qBAAA;EA4GR;;;;;;;;EA9FG,UAAA,CACJ,MAAA,GAAQ,sBAAA,GACP,OAAA,CAAQ,wBAAA;EAsJR;;;;;;;;;;EAtIG,iBAAA,CACJ,MAAA,EAAQ,6BAAA,GACP,OAAA,CAAQ,+BAAA;EAwNA;;;;;;EA5ML,eAAA,CACJ,MAAA,GAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EAiPR;;;;;;;;;EA/NG,cAAA,CACJ,MAAA,GAAQ,0BAAA,GACP,OAAA,CAAQ,4BAAA;EA2SD;;;;;;;;;;;;;EArRJ,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EArHC;;;;;EAmIN,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA9FL;;;;;;;;EA+GA,sBAAA,CACJ,MAAA,EAAQ,kCAAA,GACP,OAAA,CAAQ,oCAAA;EA7FA;;;;;;;;EA8GL,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EA9ER;;;;;;;;EAgGG,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EA3DT;;;;;;;;;;;EAgFI,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EA3CA;;;;;;;;;;;EA+DL,gBAAA,CACJ,MAAA,EAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;EADD;;;;;;;;EAkBJ,eAAA,CACJ,MAAA,EAAQ,2BAAA,GACP,OAAA,CAAQ,6BAAA;EAkBL;;;;;;;;EAAA,YAAA,CACJ,MAAA,EAAQ,wBAAA,GACP,OAAA,CAAQ,0BAAA;EAoBA;;;;;;;;EAFL,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAiCR;;;;;;;EAhBG,kBAAA,CACJ,MAAA,GAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;EAqDD;;;;;;EAzCJ,wBAAA,CACJ,MAAA,GAAQ,oCAAA,GACP,OAAA,CAAQ,sCAAA;EAiER;;;;;;;EAjDG,uBAAA,CACJ,MAAA,GAAQ,mCAAA,GACP,OAAA,CAAQ,qCAAA;EAsFG;;;;AAgCa;;;;;;;EAlGrB,oBAAA,CACJ,MAAA,EAAQ,gCAAA,GACP,OAAA,CAAQ,kCAAA;;;;;;;;;;;;;;;EAuBL,kBAAA,CACJ,MAAA,EAAQ,8BAAA,GACP,OAAA,CAAQ,gCAAA;;;;;;;;;;;;;EAqBL,gBAAA,CACJ,MAAA,GAAQ,4BAAA,GACP,OAAA,CAAQ,8BAAA;;;;UAYG,OAAA;EAAA,QAIA,aAAA;EAAA,QAeA,WAAA;;;;;UAiBN,mBAAA;AAAA"}
@@ -69,9 +69,12 @@ var NuanzeClient = class {
69
69
  }
70
70
  /**
71
71
  * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized
72
- * movement plus funding and is not realized PnL.
72
+ * movement plus funding and is not realized PnL. Pass `viewAs` with an EVM address to also
73
+ * receive that wallet's full row plus rank as `viewer`, computed in the same request without
74
+ * altering pagination; `viewer` is null when `viewAs` is omitted or has no source row.
73
75
  *
74
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.
76
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid, or
77
+ * `INVALID_ADDRESS` when `viewAs` is malformed.
75
78
  */
76
79
  async getLeaderboard(params = {}) {
77
80
  return mapNuanzeLeaderboardResponse(await this.getJson("/leaderboard", params));
@@ -80,10 +83,14 @@ var NuanzeClient = class {
80
83
  * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account
81
84
  * PnL descending with nulls last. Username and display name are null when unavailable.
82
85
  * `globalRank` is independent of the active privacy and trading filters. Pagination uses a
83
- * filter-bound opaque cursor.
86
+ * filter-bound opaque cursor. Pass `viewAs` with a bytes32 subaccount hex to also receive that
87
+ * subaccount's `filteredRank` plus full item as `viewer` without altering pagination: `viewer`
88
+ * is null when `viewAs` is omitted or has no source row, and a filter-excluded row keeps its
89
+ * item with `filteredRank` null.
84
90
  *
85
- * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or
86
- * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.
91
+ * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`,
92
+ * `CURSOR_FILTER_MISMATCH`, or `INVALID_SUBACCOUNT` when filters, the cursor, or `viewAs`
93
+ * are invalid.
87
94
  */
88
95
  async getSubaccountLeaderboard(params = {}) {
89
96
  return mapNuanzeSubaccountLeaderboardResponse(await this.getJson("/leaderboard/subaccounts", params));
@@ -1 +1 @@
1
- {"version":3,"file":"NuanzeClient.js","names":[],"sources":["../src/NuanzeClient.ts"],"sourcesContent":["import axios, { AxiosInstance, AxiosResponse } from 'axios';\nimport {\n mapNuanzeCollateralFlowSeriesResponse,\n mapNuanzeCollateralFlowSummaryResponse,\n mapNuanzeCollateralFlowsResponse,\n mapNuanzeFollowedLeaderboardResponse,\n mapNuanzeFundingRatesResponse,\n mapNuanzeLeaderboardResponse,\n mapNuanzeMarketByTickerResponse,\n mapNuanzeMarketCandlesResponse,\n mapNuanzeMarketPositioningResponse,\n mapNuanzeMarketPositionsResponse,\n mapNuanzeMarketTradesResponse,\n mapNuanzeMarketsResponse,\n mapNuanzeNewsResponse,\n mapNuanzeOpenPositionsResponse,\n mapNuanzePlatformSummaryResponse,\n mapNuanzeSubaccountLeaderboardResponse,\n mapNuanzeWalletPnlResponse,\n mapNuanzeWalletPnlSeriesResponse,\n mapNuanzeWalletPositionsResponse,\n mapNuanzeWalletSummaryResponse,\n mapNuanzeWalletTradesResponse,\n} from './dataMappers';\nimport {\n GetNuanzeCollateralFlowSeriesParams,\n GetNuanzeCollateralFlowSeriesResponse,\n GetNuanzeCollateralFlowSummaryParams,\n GetNuanzeCollateralFlowSummaryResponse,\n GetNuanzeCollateralFlowsParams,\n GetNuanzeCollateralFlowsResponse,\n GetNuanzeFollowedLeaderboardParams,\n GetNuanzeFollowedLeaderboardResponse,\n GetNuanzeFundingRatesParams,\n GetNuanzeFundingRatesResponse,\n GetNuanzeLeaderboardParams,\n GetNuanzeLeaderboardResponse,\n GetNuanzeMarketByTickerParams,\n GetNuanzeMarketByTickerResponse,\n GetNuanzeMarketCandlesParams,\n GetNuanzeMarketCandlesResponse,\n GetNuanzeMarketPositioningParams,\n GetNuanzeMarketPositioningResponse,\n GetNuanzeMarketPositionsParams,\n GetNuanzeMarketPositionsResponse,\n GetNuanzeMarketTradesParams,\n GetNuanzeMarketTradesResponse,\n GetNuanzeMarketsParams,\n GetNuanzeMarketsResponse,\n GetNuanzeNewsParams,\n GetNuanzeNewsResponse,\n GetNuanzeOpenPositionsParams,\n GetNuanzeOpenPositionsResponse,\n GetNuanzePlatformSummaryParams,\n GetNuanzePlatformSummaryResponse,\n GetNuanzeSubaccountLeaderboardParams,\n GetNuanzeSubaccountLeaderboardResponse,\n GetNuanzeWalletPnlParams,\n GetNuanzeWalletPnlResponse,\n GetNuanzeWalletPnlSeriesParams,\n GetNuanzeWalletPnlSeriesResponse,\n GetNuanzeWalletPositionsParams,\n GetNuanzeWalletPositionsResponse,\n GetNuanzeWalletSummaryParams,\n GetNuanzeWalletSummaryResponse,\n GetNuanzeWalletTradesParams,\n GetNuanzeWalletTradesResponse,\n NuanzeMarketSelector,\n} from './types/clientTypes';\nimport { NuanzeServerFailureError } from './types/NuanzeServerFailureError';\nimport { NuanzeServerMarketPositioningResponse } from './types/serverModelTypes';\nimport {\n NuanzeServerCollateralFlowSeriesResponse,\n NuanzeServerCollateralFlowSummaryResponse,\n NuanzeServerCollateralFlowsResponse,\n NuanzeServerFollowedLeaderboardResponse,\n NuanzeServerFundingRatesResponse,\n NuanzeServerLeaderboardResponse,\n NuanzeServerMarketByTickerResponse,\n NuanzeServerMarketCandlesResponse,\n NuanzeServerMarketPositionsResponse,\n NuanzeServerMarketTradesResponse,\n NuanzeServerMarketsResponse,\n NuanzeServerNewsResponse,\n NuanzeServerOpenPositionsResponse,\n NuanzeServerPlatformSummaryResponse,\n NuanzeServerSubaccountLeaderboardResponse,\n NuanzeServerWalletPnlResponse,\n NuanzeServerWalletPnlSeriesResponse,\n NuanzeServerWalletPositionsResponse,\n NuanzeServerWalletSummaryResponse,\n NuanzeServerWalletTradesResponse,\n isNuanzeServerFailureResponse,\n} from './types/serverQueryTypes';\n\n/**\n * Options for constructing a {@link NuanzeClient}.\n */\nexport interface NuanzeClientOpts {\n /**\n * Base URL of the Nuanze API, including the version segment, e.g. {@link NUANZE_CLIENT_ENDPOINTS}.\n */\n url: string;\n}\n\n/**\n * Client for the Nuanze public analytics API: markets, wallets, trades, candles, collateral flows,\n * and positioning.\n *\n * Read-only and credential-free, so unlike the other service clients it takes no wallet client or\n * linked signer. It also sends no `x-nado-client-type` header: Nuanze is a public API that does not\n * attribute traffic per client, and its `Access-Control-Allow-Headers` does not list the header, so\n * sending it would fail CORS preflight in the browser. All operations are GET.\n */\nexport class NuanzeClient {\n readonly opts: NuanzeClientOpts;\n readonly axiosInstance: AxiosInstance;\n\n constructor(opts: NuanzeClientOpts) {\n this.opts = opts;\n this.axiosInstance = axios.create({\n // Nuanze is public and answers every origin with `Access-Control-Allow-Origin: *`, which\n // browsers reject for credentialed requests.\n withCredentials: false,\n // We have custom logic to validate response status and create an appropriate error\n validateStatus: () => true,\n // Repeatable `productId` must serialize as `productId=1&productId=2` (OpenAPI explode).\n paramsSerializer: { indexes: null },\n });\n }\n\n /**\n * Lists published editorial stories, sorted by `publishedAt` descending then `id` descending.\n * Ticker filters include every product for the asset without distinguishing spot from perpetual\n * markets; an optional product ID narrows to one exact product. The opaque cursor is exclusive\n * and bound to normalized filters. Raw article ingestion, scoring, queue, and newsdesk fields are\n * excluded.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getNews(\n params: GetNuanzeNewsParams = {},\n ): Promise<GetNuanzeNewsResponse> {\n return mapNuanzeNewsResponse(\n await this.getJson<NuanzeServerNewsResponse>('/news', params),\n );\n }\n\n /**\n * Gets the active market universe, ordered by `productId` ascending. Never truncated, so `count`\n * always equals the length of `markets`. Market metadata refreshes about every five minutes and\n * prices about every minute.\n *\n * @throws {NuanzeServerFailureError} With error code `BAD_REQUEST` if a filter value is not a\n * documented venue or tradability state.\n */\n async getMarkets(\n params: GetNuanzeMarketsParams = {},\n ): Promise<GetNuanzeMarketsResponse> {\n return mapNuanzeMarketsResponse(\n await this.getJson<NuanzeServerMarketsResponse>('/markets', params),\n );\n }\n\n /**\n * Resolves a market by {@link NuanzeMarketSelector}. Supply at least `ticker` or `productId`;\n * when both are given, `productId` is used for the path segment and `ticker` is ignored.\n * Ticker lookup is case-insensitive and accepts canonical tickers or legacy source symbols.\n * An explicit unavailable venue returns `MARKET_NOT_FOUND`. With no venue, `strictVenue=true`\n * returns `AMBIGUOUS_MARKET` for multi-venue assets; otherwise the primary venue is used.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET` or `BAD_REQUEST` on invalid\n * selectors, and `MARKET_NOT_FOUND` when the selector does not resolve.\n */\n async getMarketByTicker(\n params: GetNuanzeMarketByTickerParams,\n ): Promise<GetNuanzeMarketByTickerResponse> {\n return mapNuanzeMarketByTickerResponse(\n await this.getMarketJson<NuanzeServerMarketByTickerResponse>(params),\n );\n }\n\n /**\n * Lists the latest funding observation per active perpetual market, refreshed about every five\n * minutes.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getFundingRates(\n params: GetNuanzeFundingRatesParams = {},\n ): Promise<GetNuanzeFundingRatesResponse> {\n return mapNuanzeFundingRatesResponse(\n await this.getJson<NuanzeServerFundingRatesResponse>(\n '/funding/rates',\n params,\n ),\n );\n }\n\n /**\n * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized\n * movement plus funding and is not realized PnL.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getLeaderboard(\n params: GetNuanzeLeaderboardParams = {},\n ): Promise<GetNuanzeLeaderboardResponse> {\n return mapNuanzeLeaderboardResponse(\n await this.getJson<NuanzeServerLeaderboardResponse>(\n '/leaderboard',\n params,\n ),\n );\n }\n\n /**\n * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account\n * PnL descending with nulls last. Username and display name are null when unavailable.\n * `globalRank` is independent of the active privacy and trading filters. Pagination uses a\n * filter-bound opaque cursor.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getSubaccountLeaderboard(\n params: GetNuanzeSubaccountLeaderboardParams = {},\n ): Promise<GetNuanzeSubaccountLeaderboardResponse> {\n return mapNuanzeSubaccountLeaderboardResponse(\n await this.getJson<NuanzeServerSubaccountLeaderboardResponse>(\n '/leaderboard/subaccounts',\n params,\n ),\n );\n }\n\n /**\n * Gets platform activity summary from five-minute aggregates.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if the window is not a documented value.\n */\n async getPlatformSummary(\n params: GetNuanzePlatformSummaryParams = {},\n ): Promise<GetNuanzePlatformSummaryResponse> {\n return mapNuanzePlatformSummaryResponse(\n await this.getJson<NuanzeServerPlatformSummaryResponse>(\n '/platform/summary',\n params,\n ),\n );\n }\n\n /**\n * Gets a keyset-paginated leaderboard for every subaccount a supplied bytes32 subaccount actively\n * follows, sorted by PnL descending with nulls last. The follower does not need a claimed\n * username. Subaccounts with no PnL in the window are included by default with null PnL/rank,\n * zero counts, and no products. Private subaccounts are excluded unless `includePrivate=true`.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` when params are invalid.\n */\n async getFollowedLeaderboard(\n params: GetNuanzeFollowedLeaderboardParams,\n ): Promise<GetNuanzeFollowedLeaderboardResponse> {\n return mapNuanzeFollowedLeaderboardResponse(\n await this.getJson<NuanzeServerFollowedLeaderboardResponse>(\n '/wallets/leaderboard',\n params,\n ),\n );\n }\n\n /**\n * Gets replica-backed wallet analytics. Without `subaccountName`, latest cumulative values are\n * selected per known subaccount and then summed. The response is a snapshot and does not claim\n * live health, withdrawable collateral, open-order, or signer state.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletSummary(\n params: GetNuanzeWalletSummaryParams,\n ): Promise<GetNuanzeWalletSummaryResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletSummaryResponse(\n await this.getJson<NuanzeServerWalletSummaryResponse>(\n `/wallets/${encodeURIComponent(address)}`,\n query,\n ),\n );\n }\n\n /**\n * Lists at most 500 current replica position rows across all known subaccounts by default. Rows\n * remain per subaccount. Spot rows are excluded unless `includeSpot=true`. This is not an\n * execution-grade live feed.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPositions(\n params: GetNuanzeWalletPositionsParams,\n ): Promise<GetNuanzeWalletPositionsResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPositionsResponse(\n await this.getJson<NuanzeServerWalletPositionsResponse>(\n `/wallets/${encodeURIComponent(address)}/positions`,\n query,\n ),\n );\n }\n\n /**\n * Lists market trades for a {@link NuanzeMarketSelector}: one taker-side row per match, sorted\n * by `matchedAt` then `id` descending. Supply at least `ticker` or `productId`; when both are\n * given, `productId` is used for the path segment and `ticker` is ignored. The exclusive cursor\n * is bound to operation and normalized filters. `from` is inclusive and `to` exclusive. Wallet\n * identity is absent.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, `RANGE_TOO_LARGE`, or `BAD_REQUEST` on invalid input, and\n * `MARKET_NOT_FOUND` when the selector does not resolve.\n */\n async getMarketTrades(\n params: GetNuanzeMarketTradesParams,\n ): Promise<GetNuanzeMarketTradesResponse> {\n return mapNuanzeMarketTradesResponse(\n await this.getMarketJson<NuanzeServerMarketTradesResponse>(\n params,\n '/trades',\n ),\n );\n }\n\n /**\n * Lists market candles for a {@link NuanzeMarketSelector}. Supply at least `ticker` or\n * `productId`; when both are given, `productId` is used for the path segment and `ticker` is\n * ignored. Source storage is 1h; 4h and 1d are UTC-aligned rollups and missing bars are not\n * interpolated. The newest `limit` matching bars are selected and returned oldest-to-newest,\n * at most 750, with no pagination. A current bucket has `complete=false`.\n *\n * @throws {NuanzeServerFailureError} With `UNSUPPORTED_INTERVAL`, `RANGE_TOO_LARGE`,\n * `AMBIGUOUS_MARKET`, or `BAD_REQUEST` on invalid input, and `MARKET_NOT_FOUND` when the\n * selector does not resolve.\n */\n async getMarketCandles(\n params: GetNuanzeMarketCandlesParams,\n ): Promise<GetNuanzeMarketCandlesResponse> {\n return mapNuanzeMarketCandlesResponse(\n await this.getMarketJson<NuanzeServerMarketCandlesResponse>(\n params,\n '/candles',\n ),\n );\n }\n\n /**\n * Lists wallet-owned maker and taker execution rows, sorted by `matchedAt` then `id` descending.\n * The cursor is exclusive and filter-bound. `from` is inclusive and `to` exclusive.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, `RANGE_TOO_LARGE`, or `BAD_REQUEST` on invalid input, and\n * `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletTrades(\n params: GetNuanzeWalletTradesParams,\n ): Promise<GetNuanzeWalletTradesResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletTradesResponse(\n await this.getJson<NuanzeServerWalletTradesResponse>(\n `/wallets/${encodeURIComponent(address)}/trades`,\n query,\n ),\n );\n }\n\n /**\n * Gets wallet account PnL. 24h is rolling and uses hourly snapshots with a daily fallback\n * baseline. Longer windows use daily snapshots; `all` starts at earliest coverage. PnL includes\n * realized and unrealized movement plus funding.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPnl(\n params: GetNuanzeWalletPnlParams,\n ): Promise<GetNuanzeWalletPnlResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPnlResponse(\n await this.getJson<NuanzeServerWalletPnlResponse>(\n `/wallets/${encodeURIComponent(address)}/pnl`,\n query,\n ),\n );\n }\n\n /**\n * Gets a wallet account series of at most 1,000 deterministically sampled points ordered by\n * timestamp. Series contain a boundary anchor and a carried-forward request-time tip; synthetic\n * points are identified. Latest buckets may be provisional.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPnlSeries(\n params: GetNuanzeWalletPnlSeriesParams,\n ): Promise<GetNuanzeWalletPnlSeriesResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPnlSeriesResponse(\n await this.getJson<NuanzeServerWalletPnlSeriesResponse>(\n `/wallets/${encodeURIComponent(address)}/pnl/series`,\n query,\n ),\n );\n }\n\n /**\n * Lists public collateral events, sorted by timestamp then `id` descending. Repeated `productId`\n * uses OR semantics. `minUsd` excludes unvalued events; without it unvalued events remain.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getCollateralFlows(\n params: GetNuanzeCollateralFlowsParams = {},\n ): Promise<GetNuanzeCollateralFlowsResponse> {\n return mapNuanzeCollateralFlowsResponse(\n await this.getJson<NuanzeServerCollateralFlowsResponse>('/flows', params),\n );\n }\n\n /**\n * Gets collateral flow aggregates: deposited, withdrawn, net, and gross, with valuation coverage\n * and a prior equal-window comparison. `all` has no prior window.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getCollateralFlowSummary(\n params: GetNuanzeCollateralFlowSummaryParams = {},\n ): Promise<GetNuanzeCollateralFlowSummaryResponse> {\n return mapNuanzeCollateralFlowSummaryResponse(\n await this.getJson<NuanzeServerCollateralFlowSummaryResponse>(\n '/flows/summary',\n params,\n ),\n );\n }\n\n /**\n * Gets collateral flow series of at most 1,000 UTC buckets. Allowed timeframe/bucket pairs are\n * 24h/hour, 7d/hour or day (default hour), 30d/day, and all/day.\n *\n * @throws {NuanzeServerFailureError} With `UNSUPPORTED_BUCKET` or `BAD_REQUEST` when the pair or\n * filters are invalid.\n */\n async getCollateralFlowSeries(\n params: GetNuanzeCollateralFlowSeriesParams = {},\n ): Promise<GetNuanzeCollateralFlowSeriesResponse> {\n return mapNuanzeCollateralFlowSeriesResponse(\n await this.getJson<NuanzeServerCollateralFlowSeriesResponse>(\n '/flows/series',\n params,\n ),\n );\n }\n\n /**\n * Gets privacy-preserving aggregate positioning for an active perpetual identified by\n * {@link NuanzeMarketSelector}. Supply at least `ticker` or `productId`; when both are given,\n * `productId` is used for the path segment and `ticker` is ignored. Cross and isolated legs\n * are summed within owner/subaccount/product before direction classification. Every cell\n * requires at least 20 distinct contributing owners. No identity, individual position, entry\n * price, PnL, margin, or leverage fields are returned.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET` or `BAD_REQUEST` on invalid input,\n * and `MARKET_NOT_FOUND` when the selector does not resolve to a perp.\n */\n async getMarketPositioning(\n params: GetNuanzeMarketPositioningParams,\n ): Promise<GetNuanzeMarketPositioningResponse> {\n return mapNuanzeMarketPositioningResponse(\n await this.getMarketJson<NuanzeServerMarketPositioningResponse>(\n params,\n '/positioning',\n ),\n );\n }\n\n /**\n * Lists open perpetual position legs for a market identified by {@link NuanzeMarketSelector}.\n * Supply at least `ticker` or `productId`; when both are given, `productId` is used for the\n * path segment and `ticker` is ignored. Results default to absolute notional descending and\n * can be ordered by signed unrealized PnL or absolute base amount in either direction. Spot\n * markets are not supported. Legs below $10 absolute notional are excluded. Wallet addresses,\n * nullable synced usernames and display names, and signed exact base amounts are returned.\n * Isolated positions include effective leverage computed by Nuanze; cross positions return\n * null leverage.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, or `BAD_REQUEST` on invalid input, and `MARKET_NOT_FOUND` when the\n * selector does not resolve to a perp.\n */\n async getMarketPositions(\n params: GetNuanzeMarketPositionsParams,\n ): Promise<GetNuanzeMarketPositionsResponse> {\n return mapNuanzeMarketPositionsResponse(\n await this.getMarketJson<NuanzeServerMarketPositionsResponse>(\n params,\n '/positions',\n ),\n );\n }\n\n /**\n * Lists current open perpetual position legs across every market by signed unrealized PnL.\n * Descending returns the largest gainers and ascending returns the largest losers. This is a\n * latest indexed snapshot with no timeframe. Legs below $10 absolute notional are excluded.\n * Private subaccounts are excluded unless `includePrivate=true`. Each row includes market\n * identity, nullable synced username and display name, and its source snapshot timestamp.\n * Isolated positions include effective leverage computed by Nuanze; cross positions return\n * null leverage.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_CURSOR`, `CURSOR_FILTER_MISMATCH`, or\n * `BAD_REQUEST` when the query or cursor is invalid.\n */\n async getOpenPositions(\n params: GetNuanzeOpenPositionsParams = {},\n ): Promise<GetNuanzeOpenPositionsResponse> {\n return mapNuanzeOpenPositionsResponse(\n await this.getJson<NuanzeServerOpenPositionsResponse>(\n '/positions',\n params,\n ),\n );\n }\n\n /**\n * Performs a GET against `{baseUrl}{path}` and classifies the status before returning the body.\n */\n private async getJson<T>(path: string, params?: object): Promise<T> {\n return this.requestJson<T>(path, { params });\n }\n\n private async getMarketJson<T>(\n params: NuanzeMarketSelector & object,\n suffix = '',\n ): Promise<T> {\n const { productId, ticker, ...query } = params;\n const selector = productId ?? ticker;\n if (selector === undefined) {\n throw new Error('A market ticker or productId is required.');\n }\n return this.getJson<T>(\n `/markets/${encodeURIComponent(selector.toString())}${suffix}`,\n query,\n );\n }\n\n private async requestJson<T>(\n path: string,\n config: { params?: object } = {},\n ): Promise<T> {\n const response = await this.axiosInstance.request<T>({\n method: 'GET',\n url: `${this.opts.url}${path}`,\n ...config,\n });\n this.checkResponseStatus(response);\n return response.data;\n }\n\n /**\n * Validates the HTTP status before interpreting the body. Nuanze maps every domain failure onto a\n * non-2xx status carrying a failure envelope, so anything else is a transport-level error.\n */\n private checkResponseStatus(response: AxiosResponse<unknown>) {\n if (response.status >= 200 && response.status < 300) {\n return;\n }\n if (isNuanzeServerFailureResponse(response.data)) {\n throw new NuanzeServerFailureError(response.data, response.status);\n }\n throw new Error(\n `Unexpected response from Nuanze: ${response.status} ${response.statusText}. Data: ${JSON.stringify(response.data)}`,\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"NuanzeClient.js","names":[],"sources":["../src/NuanzeClient.ts"],"sourcesContent":["import axios, { AxiosInstance, AxiosResponse } from 'axios';\nimport {\n mapNuanzeCollateralFlowSeriesResponse,\n mapNuanzeCollateralFlowSummaryResponse,\n mapNuanzeCollateralFlowsResponse,\n mapNuanzeFollowedLeaderboardResponse,\n mapNuanzeFundingRatesResponse,\n mapNuanzeLeaderboardResponse,\n mapNuanzeMarketByTickerResponse,\n mapNuanzeMarketCandlesResponse,\n mapNuanzeMarketPositioningResponse,\n mapNuanzeMarketPositionsResponse,\n mapNuanzeMarketTradesResponse,\n mapNuanzeMarketsResponse,\n mapNuanzeNewsResponse,\n mapNuanzeOpenPositionsResponse,\n mapNuanzePlatformSummaryResponse,\n mapNuanzeSubaccountLeaderboardResponse,\n mapNuanzeWalletPnlResponse,\n mapNuanzeWalletPnlSeriesResponse,\n mapNuanzeWalletPositionsResponse,\n mapNuanzeWalletSummaryResponse,\n mapNuanzeWalletTradesResponse,\n} from './dataMappers';\nimport {\n GetNuanzeCollateralFlowSeriesParams,\n GetNuanzeCollateralFlowSeriesResponse,\n GetNuanzeCollateralFlowSummaryParams,\n GetNuanzeCollateralFlowSummaryResponse,\n GetNuanzeCollateralFlowsParams,\n GetNuanzeCollateralFlowsResponse,\n GetNuanzeFollowedLeaderboardParams,\n GetNuanzeFollowedLeaderboardResponse,\n GetNuanzeFundingRatesParams,\n GetNuanzeFundingRatesResponse,\n GetNuanzeLeaderboardParams,\n GetNuanzeLeaderboardResponse,\n GetNuanzeMarketByTickerParams,\n GetNuanzeMarketByTickerResponse,\n GetNuanzeMarketCandlesParams,\n GetNuanzeMarketCandlesResponse,\n GetNuanzeMarketPositioningParams,\n GetNuanzeMarketPositioningResponse,\n GetNuanzeMarketPositionsParams,\n GetNuanzeMarketPositionsResponse,\n GetNuanzeMarketTradesParams,\n GetNuanzeMarketTradesResponse,\n GetNuanzeMarketsParams,\n GetNuanzeMarketsResponse,\n GetNuanzeNewsParams,\n GetNuanzeNewsResponse,\n GetNuanzeOpenPositionsParams,\n GetNuanzeOpenPositionsResponse,\n GetNuanzePlatformSummaryParams,\n GetNuanzePlatformSummaryResponse,\n GetNuanzeSubaccountLeaderboardParams,\n GetNuanzeSubaccountLeaderboardResponse,\n GetNuanzeWalletPnlParams,\n GetNuanzeWalletPnlResponse,\n GetNuanzeWalletPnlSeriesParams,\n GetNuanzeWalletPnlSeriesResponse,\n GetNuanzeWalletPositionsParams,\n GetNuanzeWalletPositionsResponse,\n GetNuanzeWalletSummaryParams,\n GetNuanzeWalletSummaryResponse,\n GetNuanzeWalletTradesParams,\n GetNuanzeWalletTradesResponse,\n NuanzeMarketSelector,\n} from './types/clientTypes';\nimport { NuanzeServerFailureError } from './types/NuanzeServerFailureError';\nimport { NuanzeServerMarketPositioningResponse } from './types/serverModelTypes';\nimport {\n NuanzeServerCollateralFlowSeriesResponse,\n NuanzeServerCollateralFlowSummaryResponse,\n NuanzeServerCollateralFlowsResponse,\n NuanzeServerFollowedLeaderboardResponse,\n NuanzeServerFundingRatesResponse,\n NuanzeServerLeaderboardResponse,\n NuanzeServerMarketByTickerResponse,\n NuanzeServerMarketCandlesResponse,\n NuanzeServerMarketPositionsResponse,\n NuanzeServerMarketTradesResponse,\n NuanzeServerMarketsResponse,\n NuanzeServerNewsResponse,\n NuanzeServerOpenPositionsResponse,\n NuanzeServerPlatformSummaryResponse,\n NuanzeServerSubaccountLeaderboardResponse,\n NuanzeServerWalletPnlResponse,\n NuanzeServerWalletPnlSeriesResponse,\n NuanzeServerWalletPositionsResponse,\n NuanzeServerWalletSummaryResponse,\n NuanzeServerWalletTradesResponse,\n isNuanzeServerFailureResponse,\n} from './types/serverQueryTypes';\n\n/**\n * Options for constructing a {@link NuanzeClient}.\n */\nexport interface NuanzeClientOpts {\n /**\n * Base URL of the Nuanze API, including the version segment, e.g. {@link NUANZE_CLIENT_ENDPOINTS}.\n */\n url: string;\n}\n\n/**\n * Client for the Nuanze public analytics API: markets, wallets, trades, candles, collateral flows,\n * and positioning.\n *\n * Read-only and credential-free, so unlike the other service clients it takes no wallet client or\n * linked signer. It also sends no `x-nado-client-type` header: Nuanze is a public API that does not\n * attribute traffic per client, and its `Access-Control-Allow-Headers` does not list the header, so\n * sending it would fail CORS preflight in the browser. All operations are GET.\n */\nexport class NuanzeClient {\n readonly opts: NuanzeClientOpts;\n readonly axiosInstance: AxiosInstance;\n\n constructor(opts: NuanzeClientOpts) {\n this.opts = opts;\n this.axiosInstance = axios.create({\n // Nuanze is public and answers every origin with `Access-Control-Allow-Origin: *`, which\n // browsers reject for credentialed requests.\n withCredentials: false,\n // We have custom logic to validate response status and create an appropriate error\n validateStatus: () => true,\n // Repeatable `productId` must serialize as `productId=1&productId=2` (OpenAPI explode).\n paramsSerializer: { indexes: null },\n });\n }\n\n /**\n * Lists published editorial stories, sorted by `publishedAt` descending then `id` descending.\n * Ticker filters include every product for the asset without distinguishing spot from perpetual\n * markets; an optional product ID narrows to one exact product. The opaque cursor is exclusive\n * and bound to normalized filters. Raw article ingestion, scoring, queue, and newsdesk fields are\n * excluded.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getNews(\n params: GetNuanzeNewsParams = {},\n ): Promise<GetNuanzeNewsResponse> {\n return mapNuanzeNewsResponse(\n await this.getJson<NuanzeServerNewsResponse>('/news', params),\n );\n }\n\n /**\n * Gets the active market universe, ordered by `productId` ascending. Never truncated, so `count`\n * always equals the length of `markets`. Market metadata refreshes about every five minutes and\n * prices about every minute.\n *\n * @throws {NuanzeServerFailureError} With error code `BAD_REQUEST` if a filter value is not a\n * documented venue or tradability state.\n */\n async getMarkets(\n params: GetNuanzeMarketsParams = {},\n ): Promise<GetNuanzeMarketsResponse> {\n return mapNuanzeMarketsResponse(\n await this.getJson<NuanzeServerMarketsResponse>('/markets', params),\n );\n }\n\n /**\n * Resolves a market by {@link NuanzeMarketSelector}. Supply at least `ticker` or `productId`;\n * when both are given, `productId` is used for the path segment and `ticker` is ignored.\n * Ticker lookup is case-insensitive and accepts canonical tickers or legacy source symbols.\n * An explicit unavailable venue returns `MARKET_NOT_FOUND`. With no venue, `strictVenue=true`\n * returns `AMBIGUOUS_MARKET` for multi-venue assets; otherwise the primary venue is used.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET` or `BAD_REQUEST` on invalid\n * selectors, and `MARKET_NOT_FOUND` when the selector does not resolve.\n */\n async getMarketByTicker(\n params: GetNuanzeMarketByTickerParams,\n ): Promise<GetNuanzeMarketByTickerResponse> {\n return mapNuanzeMarketByTickerResponse(\n await this.getMarketJson<NuanzeServerMarketByTickerResponse>(params),\n );\n }\n\n /**\n * Lists the latest funding observation per active perpetual market, refreshed about every five\n * minutes.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getFundingRates(\n params: GetNuanzeFundingRatesParams = {},\n ): Promise<GetNuanzeFundingRatesResponse> {\n return mapNuanzeFundingRatesResponse(\n await this.getJson<NuanzeServerFundingRatesResponse>(\n '/funding/rates',\n params,\n ),\n );\n }\n\n /**\n * Gets the account PnL leaderboard. Equity-basis account PnL includes realized and unrealized\n * movement plus funding and is not realized PnL. Pass `viewAs` with an EVM address to also\n * receive that wallet's full row plus rank as `viewer`, computed in the same request without\n * altering pagination; `viewer` is null when `viewAs` is omitted or has no source row.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid, or\n * `INVALID_ADDRESS` when `viewAs` is malformed.\n */\n async getLeaderboard(\n params: GetNuanzeLeaderboardParams = {},\n ): Promise<GetNuanzeLeaderboardResponse> {\n return mapNuanzeLeaderboardResponse(\n await this.getJson<NuanzeServerLeaderboardResponse>(\n '/leaderboard',\n params,\n ),\n );\n }\n\n /**\n * Gets the global public leaderboard of subaccounts. Results are sorted by equity-basis account\n * PnL descending with nulls last. Username and display name are null when unavailable.\n * `globalRank` is independent of the active privacy and trading filters. Pagination uses a\n * filter-bound opaque cursor. Pass `viewAs` with a bytes32 subaccount hex to also receive that\n * subaccount's `filteredRank` plus full item as `viewer` without altering pagination: `viewer`\n * is null when `viewAs` is omitted or has no source row, and a filter-excluded row keeps its\n * item with `filteredRank` null.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, or `INVALID_SUBACCOUNT` when filters, the cursor, or `viewAs`\n * are invalid.\n */\n async getSubaccountLeaderboard(\n params: GetNuanzeSubaccountLeaderboardParams = {},\n ): Promise<GetNuanzeSubaccountLeaderboardResponse> {\n return mapNuanzeSubaccountLeaderboardResponse(\n await this.getJson<NuanzeServerSubaccountLeaderboardResponse>(\n '/leaderboard/subaccounts',\n params,\n ),\n );\n }\n\n /**\n * Gets platform activity summary from five-minute aggregates.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if the window is not a documented value.\n */\n async getPlatformSummary(\n params: GetNuanzePlatformSummaryParams = {},\n ): Promise<GetNuanzePlatformSummaryResponse> {\n return mapNuanzePlatformSummaryResponse(\n await this.getJson<NuanzeServerPlatformSummaryResponse>(\n '/platform/summary',\n params,\n ),\n );\n }\n\n /**\n * Gets a keyset-paginated leaderboard for every subaccount a supplied bytes32 subaccount actively\n * follows, sorted by PnL descending with nulls last. The follower does not need a claimed\n * username. Subaccounts with no PnL in the window are included by default with null PnL/rank,\n * zero counts, and no products. Private subaccounts are excluded unless `includePrivate=true`.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` when params are invalid.\n */\n async getFollowedLeaderboard(\n params: GetNuanzeFollowedLeaderboardParams,\n ): Promise<GetNuanzeFollowedLeaderboardResponse> {\n return mapNuanzeFollowedLeaderboardResponse(\n await this.getJson<NuanzeServerFollowedLeaderboardResponse>(\n '/wallets/leaderboard',\n params,\n ),\n );\n }\n\n /**\n * Gets replica-backed wallet analytics. Without `subaccountName`, latest cumulative values are\n * selected per known subaccount and then summed. The response is a snapshot and does not claim\n * live health, withdrawable collateral, open-order, or signer state.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletSummary(\n params: GetNuanzeWalletSummaryParams,\n ): Promise<GetNuanzeWalletSummaryResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletSummaryResponse(\n await this.getJson<NuanzeServerWalletSummaryResponse>(\n `/wallets/${encodeURIComponent(address)}`,\n query,\n ),\n );\n }\n\n /**\n * Lists at most 500 current replica position rows across all known subaccounts by default. Rows\n * remain per subaccount. Spot rows are excluded unless `includeSpot=true`. This is not an\n * execution-grade live feed.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPositions(\n params: GetNuanzeWalletPositionsParams,\n ): Promise<GetNuanzeWalletPositionsResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPositionsResponse(\n await this.getJson<NuanzeServerWalletPositionsResponse>(\n `/wallets/${encodeURIComponent(address)}/positions`,\n query,\n ),\n );\n }\n\n /**\n * Lists market trades for a {@link NuanzeMarketSelector}: one taker-side row per match, sorted\n * by `matchedAt` then `id` descending. Supply at least `ticker` or `productId`; when both are\n * given, `productId` is used for the path segment and `ticker` is ignored. The exclusive cursor\n * is bound to operation and normalized filters. `from` is inclusive and `to` exclusive. Wallet\n * identity is absent.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, `RANGE_TOO_LARGE`, or `BAD_REQUEST` on invalid input, and\n * `MARKET_NOT_FOUND` when the selector does not resolve.\n */\n async getMarketTrades(\n params: GetNuanzeMarketTradesParams,\n ): Promise<GetNuanzeMarketTradesResponse> {\n return mapNuanzeMarketTradesResponse(\n await this.getMarketJson<NuanzeServerMarketTradesResponse>(\n params,\n '/trades',\n ),\n );\n }\n\n /**\n * Lists market candles for a {@link NuanzeMarketSelector}. Supply at least `ticker` or\n * `productId`; when both are given, `productId` is used for the path segment and `ticker` is\n * ignored. Source storage is 1h; 4h and 1d are UTC-aligned rollups and missing bars are not\n * interpolated. The newest `limit` matching bars are selected and returned oldest-to-newest,\n * at most 750, with no pagination. A current bucket has `complete=false`.\n *\n * @throws {NuanzeServerFailureError} With `UNSUPPORTED_INTERVAL`, `RANGE_TOO_LARGE`,\n * `AMBIGUOUS_MARKET`, or `BAD_REQUEST` on invalid input, and `MARKET_NOT_FOUND` when the\n * selector does not resolve.\n */\n async getMarketCandles(\n params: GetNuanzeMarketCandlesParams,\n ): Promise<GetNuanzeMarketCandlesResponse> {\n return mapNuanzeMarketCandlesResponse(\n await this.getMarketJson<NuanzeServerMarketCandlesResponse>(\n params,\n '/candles',\n ),\n );\n }\n\n /**\n * Lists wallet-owned maker and taker execution rows, sorted by `matchedAt` then `id` descending.\n * The cursor is exclusive and filter-bound. `from` is inclusive and `to` exclusive.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, `RANGE_TOO_LARGE`, or `BAD_REQUEST` on invalid input, and\n * `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletTrades(\n params: GetNuanzeWalletTradesParams,\n ): Promise<GetNuanzeWalletTradesResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletTradesResponse(\n await this.getJson<NuanzeServerWalletTradesResponse>(\n `/wallets/${encodeURIComponent(address)}/trades`,\n query,\n ),\n );\n }\n\n /**\n * Gets wallet account PnL. 24h is rolling and uses hourly snapshots with a daily fallback\n * baseline. Longer windows use daily snapshots; `all` starts at earliest coverage. PnL includes\n * realized and unrealized movement plus funding.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPnl(\n params: GetNuanzeWalletPnlParams,\n ): Promise<GetNuanzeWalletPnlResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPnlResponse(\n await this.getJson<NuanzeServerWalletPnlResponse>(\n `/wallets/${encodeURIComponent(address)}/pnl`,\n query,\n ),\n );\n }\n\n /**\n * Gets a wallet account series of at most 1,000 deterministically sampled points ordered by\n * timestamp. Series contain a boundary anchor and a carried-forward request-time tip; synthetic\n * points are identified. Latest buckets may be provisional.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_ADDRESS` or `BAD_REQUEST` on invalid input,\n * and `WALLET_NOT_FOUND` when the address has no wallet data.\n */\n async getWalletPnlSeries(\n params: GetNuanzeWalletPnlSeriesParams,\n ): Promise<GetNuanzeWalletPnlSeriesResponse> {\n const { address, ...query } = params;\n return mapNuanzeWalletPnlSeriesResponse(\n await this.getJson<NuanzeServerWalletPnlSeriesResponse>(\n `/wallets/${encodeURIComponent(address)}/pnl/series`,\n query,\n ),\n );\n }\n\n /**\n * Lists public collateral events, sorted by timestamp then `id` descending. Repeated `productId`\n * uses OR semantics. `minUsd` excludes unvalued events; without it unvalued events remain.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST`, `INVALID_CURSOR`, or\n * `CURSOR_FILTER_MISMATCH` when filters or the cursor are invalid.\n */\n async getCollateralFlows(\n params: GetNuanzeCollateralFlowsParams = {},\n ): Promise<GetNuanzeCollateralFlowsResponse> {\n return mapNuanzeCollateralFlowsResponse(\n await this.getJson<NuanzeServerCollateralFlowsResponse>('/flows', params),\n );\n }\n\n /**\n * Gets collateral flow aggregates: deposited, withdrawn, net, and gross, with valuation coverage\n * and a prior equal-window comparison. `all` has no prior window.\n *\n * @throws {NuanzeServerFailureError} With `BAD_REQUEST` if a filter value is invalid.\n */\n async getCollateralFlowSummary(\n params: GetNuanzeCollateralFlowSummaryParams = {},\n ): Promise<GetNuanzeCollateralFlowSummaryResponse> {\n return mapNuanzeCollateralFlowSummaryResponse(\n await this.getJson<NuanzeServerCollateralFlowSummaryResponse>(\n '/flows/summary',\n params,\n ),\n );\n }\n\n /**\n * Gets collateral flow series of at most 1,000 UTC buckets. Allowed timeframe/bucket pairs are\n * 24h/hour, 7d/hour or day (default hour), 30d/day, and all/day.\n *\n * @throws {NuanzeServerFailureError} With `UNSUPPORTED_BUCKET` or `BAD_REQUEST` when the pair or\n * filters are invalid.\n */\n async getCollateralFlowSeries(\n params: GetNuanzeCollateralFlowSeriesParams = {},\n ): Promise<GetNuanzeCollateralFlowSeriesResponse> {\n return mapNuanzeCollateralFlowSeriesResponse(\n await this.getJson<NuanzeServerCollateralFlowSeriesResponse>(\n '/flows/series',\n params,\n ),\n );\n }\n\n /**\n * Gets privacy-preserving aggregate positioning for an active perpetual identified by\n * {@link NuanzeMarketSelector}. Supply at least `ticker` or `productId`; when both are given,\n * `productId` is used for the path segment and `ticker` is ignored. Cross and isolated legs\n * are summed within owner/subaccount/product before direction classification. Every cell\n * requires at least 20 distinct contributing owners. No identity, individual position, entry\n * price, PnL, margin, or leverage fields are returned.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET` or `BAD_REQUEST` on invalid input,\n * and `MARKET_NOT_FOUND` when the selector does not resolve to a perp.\n */\n async getMarketPositioning(\n params: GetNuanzeMarketPositioningParams,\n ): Promise<GetNuanzeMarketPositioningResponse> {\n return mapNuanzeMarketPositioningResponse(\n await this.getMarketJson<NuanzeServerMarketPositioningResponse>(\n params,\n '/positioning',\n ),\n );\n }\n\n /**\n * Lists open perpetual position legs for a market identified by {@link NuanzeMarketSelector}.\n * Supply at least `ticker` or `productId`; when both are given, `productId` is used for the\n * path segment and `ticker` is ignored. Results default to absolute notional descending and\n * can be ordered by signed unrealized PnL or absolute base amount in either direction. Spot\n * markets are not supported. Legs below $10 absolute notional are excluded. Wallet addresses,\n * nullable synced usernames and display names, and signed exact base amounts are returned.\n * Isolated positions include effective leverage computed by Nuanze; cross positions return\n * null leverage.\n *\n * @throws {NuanzeServerFailureError} With `AMBIGUOUS_MARKET`, `INVALID_CURSOR`,\n * `CURSOR_FILTER_MISMATCH`, or `BAD_REQUEST` on invalid input, and `MARKET_NOT_FOUND` when the\n * selector does not resolve to a perp.\n */\n async getMarketPositions(\n params: GetNuanzeMarketPositionsParams,\n ): Promise<GetNuanzeMarketPositionsResponse> {\n return mapNuanzeMarketPositionsResponse(\n await this.getMarketJson<NuanzeServerMarketPositionsResponse>(\n params,\n '/positions',\n ),\n );\n }\n\n /**\n * Lists current open perpetual position legs across every market by signed unrealized PnL.\n * Descending returns the largest gainers and ascending returns the largest losers. This is a\n * latest indexed snapshot with no timeframe. Legs below $10 absolute notional are excluded.\n * Private subaccounts are excluded unless `includePrivate=true`. Each row includes market\n * identity, nullable synced username and display name, and its source snapshot timestamp.\n * Isolated positions include effective leverage computed by Nuanze; cross positions return\n * null leverage.\n *\n * @throws {NuanzeServerFailureError} With `INVALID_CURSOR`, `CURSOR_FILTER_MISMATCH`, or\n * `BAD_REQUEST` when the query or cursor is invalid.\n */\n async getOpenPositions(\n params: GetNuanzeOpenPositionsParams = {},\n ): Promise<GetNuanzeOpenPositionsResponse> {\n return mapNuanzeOpenPositionsResponse(\n await this.getJson<NuanzeServerOpenPositionsResponse>(\n '/positions',\n params,\n ),\n );\n }\n\n /**\n * Performs a GET against `{baseUrl}{path}` and classifies the status before returning the body.\n */\n private async getJson<T>(path: string, params?: object): Promise<T> {\n return this.requestJson<T>(path, { params });\n }\n\n private async getMarketJson<T>(\n params: NuanzeMarketSelector & object,\n suffix = '',\n ): Promise<T> {\n const { productId, ticker, ...query } = params;\n const selector = productId ?? ticker;\n if (selector === undefined) {\n throw new Error('A market ticker or productId is required.');\n }\n return this.getJson<T>(\n `/markets/${encodeURIComponent(selector.toString())}${suffix}`,\n query,\n );\n }\n\n private async requestJson<T>(\n path: string,\n config: { params?: object } = {},\n ): Promise<T> {\n const response = await this.axiosInstance.request<T>({\n method: 'GET',\n url: `${this.opts.url}${path}`,\n ...config,\n });\n this.checkResponseStatus(response);\n return response.data;\n }\n\n /**\n * Validates the HTTP status before interpreting the body. Nuanze maps every domain failure onto a\n * non-2xx status carrying a failure envelope, so anything else is a transport-level error.\n */\n private checkResponseStatus(response: AxiosResponse<unknown>) {\n if (response.status >= 200 && response.status < 300) {\n return;\n }\n if (isNuanzeServerFailureResponse(response.data)) {\n throw new NuanzeServerFailureError(response.data, response.status);\n }\n throw new Error(\n `Unexpected response from Nuanze: ${response.status} ${response.statusText}. Data: ${JSON.stringify(response.data)}`,\n );\n }\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { n as NuanzeErrorCode } from "./nuanzeErrorCodes-BJA7C7xg.cjs";
2
- import { i as NuanzeServerFailureResponse } from "./serverQueryTypes-QNx6f1km.cjs";
2
+ import { i as NuanzeServerFailureResponse } from "./serverQueryTypes-CumC-LaJ.cjs";
3
3
 
4
4
  //#region src/types/NuanzeServerFailureError.d.ts
5
5
  /**
@@ -26,4 +26,4 @@ declare class NuanzeServerFailureError extends Error {
26
26
  }
27
27
  //#endregion
28
28
  export { NuanzeServerFailureError as t };
29
- //# sourceMappingURL=NuanzeServerFailureError-cR0V5to1.d.cts.map
29
+ //# sourceMappingURL=NuanzeServerFailureError-BhwISexo.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NuanzeServerFailureError-cR0V5to1.d.cts","names":[],"sources":["../src/types/src/types/NuanzeServerFailureError.ts"],"mappings":";;;;;;AAQA;;;cAAa,wBAAA,SAAiC,KAAA;EAAA,SAkBjC,YAAA,EAAc,2BAAA;EAAA;;;;EAAA,SAbhB,SAAA,EAAW,eAAA;EAaT;;;EAAA,SARF,UAAA;EAAA;;;EAAA,SAKA,SAAA;cAGE,YAAA,EAAc,2BAAA,EACvB,UAAA;AAAA"}
1
+ {"version":3,"file":"NuanzeServerFailureError-BhwISexo.d.cts","names":[],"sources":["../src/types/src/types/NuanzeServerFailureError.ts"],"mappings":";;;;;;AAQA;;;cAAa,wBAAA,SAAiC,KAAA;EAAA,SAkBjC,YAAA,EAAc,2BAAA;EAAA;;;;EAAA,SAbhB,SAAA,EAAW,eAAA;EAaT;;;EAAA,SARF,UAAA;EAAA;;;EAAA,SAKA,SAAA;cAGE,YAAA,EAAc,2BAAA,EACvB,UAAA;AAAA"}
@@ -1,5 +1,5 @@
1
1
  import { n as NuanzeErrorCode } from "./nuanzeErrorCodes-BXfbZV_p.js";
2
- import { i as NuanzeServerFailureResponse } from "./serverQueryTypes-CHYSYH97.js";
2
+ import { i as NuanzeServerFailureResponse } from "./serverQueryTypes-BZPjG_2U.js";
3
3
 
4
4
  //#region src/types/NuanzeServerFailureError.d.ts
5
5
  /**
@@ -26,4 +26,4 @@ declare class NuanzeServerFailureError extends Error {
26
26
  }
27
27
  //#endregion
28
28
  export { NuanzeServerFailureError as t };
29
- //# sourceMappingURL=NuanzeServerFailureError-D-C98gOE.d.ts.map
29
+ //# sourceMappingURL=NuanzeServerFailureError-DNZobL5e.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NuanzeServerFailureError-D-C98gOE.d.ts","names":[],"sources":["../src/types/src/types/NuanzeServerFailureError.ts"],"mappings":";;;;;;AAQA;;;cAAa,wBAAA,SAAiC,KAAA;EAAA,SAkBjC,YAAA,EAAc,2BAAA;EAAA;;;;EAAA,SAbhB,SAAA,EAAW,eAAA;EAaT;;;EAAA,SARF,UAAA;EAAA;;;EAAA,SAKA,SAAA;cAGE,YAAA,EAAc,2BAAA,EACvB,UAAA;AAAA"}
1
+ {"version":3,"file":"NuanzeServerFailureError-DNZobL5e.d.ts","names":[],"sources":["../src/types/src/types/NuanzeServerFailureError.ts"],"mappings":";;;;;;AAQA;;;cAAa,wBAAA,SAAiC,KAAA;EAAA,SAkBjC,YAAA,EAAc,2BAAA;EAAA;;;;EAAA,SAbhB,SAAA,EAAW,eAAA;EAaT;;;EAAA,SARF,UAAA;EAAA;;;EAAA,SAKA,SAAA;cAGE,YAAA,EAAc,2BAAA,EACvB,UAAA;AAAA"}
@@ -561,7 +561,7 @@ interface NuanzeFollowedLeaderboardItem {
561
561
  globalRank: number | null;
562
562
  }
563
563
  /**
564
- * Username-claimed subaccount row from `GET /leaderboard/subaccounts`.
564
+ * Public subaccount row from `GET /leaderboard/subaccounts`.
565
565
  */
566
566
  interface NuanzeSubaccountLeaderboardItem {
567
567
  /**
@@ -980,4 +980,4 @@ interface NuanzeMarketPositioningNotionalBucketResponse extends NuanzeMarketPosi
980
980
  }
981
981
  //#endregion
982
982
  export { NuanzeMarket as $, NuanzeCandleInterval as A, NuanzePositioningTotals as At, NuanzeFlowTimeframe as B, NUANZE_PNL_WINDOWS as C, NuanzeOpenPositionSortDirection as Ct, NUANZE_SOURCE_INTERVALS as D, NuanzePositionSide as Dt, NUANZE_SERIES_METRICS as E, NuanzePnlWindow as Et, NuanzeCoverage as F, NuanzeStockFundamentals as Ft, NuanzeFundamentalsSource as G, NuanzeFundamentalsKeyData as H, NuanzeFlowBucket as I, NuanzeSubaccountLeaderboardItem as It, NuanzeFundingRate as J, NuanzeFundamentalsValuation as K, NuanzeFlowEventType as L, NuanzeTradeSide as Lt, NuanzeCohortPositioningCell as M, NuanzeSeriesPoint as Mt, NuanzeCollateralFlow as N, NuanzeSidePositioningCell as Nt, NUANZE_TRADE_SIDES as O, NuanzePositioningCellBase as Ot, NuanzeCollateralFlowPoint as P, NuanzeSourceInterval as Pt, NuanzeMarginKind as Q, NuanzeFlowEventTypeFilter as R, NuanzeWalletPosition as Rt, NUANZE_PLATFORM_WINDOWS as S, NuanzeOpenPosition as St, NUANZE_POSITION_SIDES as T, NuanzePlatformWindow as Tt, NuanzeFundamentalsPerformance as U, NuanzeFollowedLeaderboardItem as V, NuanzeFundamentalsSocial as W, NuanzeLeaderboardItem as X, NuanzeLatestTicker as Y, NuanzeLeaderboardTimeframe as Z, NUANZE_NEWS_EVENT_TYPES as _, NuanzeNewsSentiment as _t, NUANZE_FLOW_EVENT_TYPES as a, NuanzeMarketPositionSortDirection as at, NUANZE_NOTIONAL_BUCKETS as b, NuanzeNotionalBucket as bt, NUANZE_FUNDAMENTALS_SOURCES as c, NuanzeMarketPositioningNotionalBucketResponse as ct, NUANZE_MARKET_POSITION_SORT_BYS as d, NuanzeMarketTradingStatus as dt, NuanzeMarketComponentUpdatedAt as et, NUANZE_MARKET_POSITION_SORT_DIRECTIONS as f, NuanzeMarketVenue as ft, NUANZE_NEWS_ENTITY_ROLES as g, NuanzeNewsEventType as gt, NUANZE_MIN_POSITION_USDS as h, NuanzeNewsEntityRole as ht, NUANZE_FLOW_BUCKETS as i, NuanzeMarketPositionSortBy as it, NuanzeCohortKey as j, NuanzeSeriesMetric as jt, NuanzeCandle as k, NuanzePositioningGroupBy as kt, NUANZE_LEADERBOARD_TIMEFRAMES as l, NuanzeMarketPositioningSideResponse as lt, NUANZE_MARKET_VENUES as m, NuanzeNewsEntity as mt, NUANZE_COHORT_KEYS as n, NuanzeMarketIdentity as nt, NUANZE_FLOW_EVENT_TYPE_FILTERS as o, NuanzeMarketPositioningBase as ot, NUANZE_MARKET_TRADING_STATUSES as p, NuanzeMinPositionUsd as pt, NuanzeFundingObservation as q, NUANZE_COVERAGES as r, NuanzeMarketPosition as rt, NUANZE_FLOW_TIMEFRAMES as s, NuanzeMarketPositioningCohortResponse as st, NUANZE_CANDLE_INTERVALS as t, NuanzeMarketDetail as tt, NUANZE_MARGIN_KINDS as u, NuanzeMarketTrade as ut, NUANZE_NEWS_SENTIMENTS as v, NuanzeNewsStory as vt, NUANZE_POSITIONING_GROUP_BYS as w, NuanzePlatformDeltas as wt, NUANZE_OPEN_POSITION_SORT_DIRECTIONS as x, NuanzeNotionalBucketPositioningCell as xt, NUANZE_NEWS_TIERS as y, NuanzeNewsTier as yt, NuanzeFlowTags as z, NuanzeWalletTrade as zt };
983
- //# sourceMappingURL=clientModelTypes-Bzf5pbVl.d.ts.map
983
+ //# sourceMappingURL=clientModelTypes-0e6V-2qK.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientModelTypes-DE60UN6J.d.cts","names":[],"sources":["../src/types/src/types/clientModelTypes.ts"],"mappings":"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"}
1
+ {"version":3,"file":"clientModelTypes-0e6V-2qK.d.cts","names":[],"sources":["../src/types/src/types/clientModelTypes.ts"],"mappings":"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"}
@@ -561,7 +561,7 @@ interface NuanzeFollowedLeaderboardItem {
561
561
  globalRank: number | null;
562
562
  }
563
563
  /**
564
- * Username-claimed subaccount row from `GET /leaderboard/subaccounts`.
564
+ * Public subaccount row from `GET /leaderboard/subaccounts`.
565
565
  */
566
566
  interface NuanzeSubaccountLeaderboardItem {
567
567
  /**
@@ -980,4 +980,4 @@ interface NuanzeMarketPositioningNotionalBucketResponse extends NuanzeMarketPosi
980
980
  }
981
981
  //#endregion
982
982
  export { NuanzeMarket as $, NuanzeCandleInterval as A, NuanzePositioningTotals as At, NuanzeFlowTimeframe as B, NUANZE_PNL_WINDOWS as C, NuanzeOpenPositionSortDirection as Ct, NUANZE_SOURCE_INTERVALS as D, NuanzePositionSide as Dt, NUANZE_SERIES_METRICS as E, NuanzePnlWindow as Et, NuanzeCoverage as F, NuanzeStockFundamentals as Ft, NuanzeFundamentalsSource as G, NuanzeFundamentalsKeyData as H, NuanzeFlowBucket as I, NuanzeSubaccountLeaderboardItem as It, NuanzeFundingRate as J, NuanzeFundamentalsValuation as K, NuanzeFlowEventType as L, NuanzeTradeSide as Lt, NuanzeCohortPositioningCell as M, NuanzeSeriesPoint as Mt, NuanzeCollateralFlow as N, NuanzeSidePositioningCell as Nt, NUANZE_TRADE_SIDES as O, NuanzePositioningCellBase as Ot, NuanzeCollateralFlowPoint as P, NuanzeSourceInterval as Pt, NuanzeMarginKind as Q, NuanzeFlowEventTypeFilter as R, NuanzeWalletPosition as Rt, NUANZE_PLATFORM_WINDOWS as S, NuanzeOpenPosition as St, NUANZE_POSITION_SIDES as T, NuanzePlatformWindow as Tt, NuanzeFundamentalsPerformance as U, NuanzeFollowedLeaderboardItem as V, NuanzeFundamentalsSocial as W, NuanzeLeaderboardItem as X, NuanzeLatestTicker as Y, NuanzeLeaderboardTimeframe as Z, NUANZE_NEWS_EVENT_TYPES as _, NuanzeNewsSentiment as _t, NUANZE_FLOW_EVENT_TYPES as a, NuanzeMarketPositionSortDirection as at, NUANZE_NOTIONAL_BUCKETS as b, NuanzeNotionalBucket as bt, NUANZE_FUNDAMENTALS_SOURCES as c, NuanzeMarketPositioningNotionalBucketResponse as ct, NUANZE_MARKET_POSITION_SORT_BYS as d, NuanzeMarketTradingStatus as dt, NuanzeMarketComponentUpdatedAt as et, NUANZE_MARKET_POSITION_SORT_DIRECTIONS as f, NuanzeMarketVenue as ft, NUANZE_NEWS_ENTITY_ROLES as g, NuanzeNewsEventType as gt, NUANZE_MIN_POSITION_USDS as h, NuanzeNewsEntityRole as ht, NUANZE_FLOW_BUCKETS as i, NuanzeMarketPositionSortBy as it, NuanzeCohortKey as j, NuanzeSeriesMetric as jt, NuanzeCandle as k, NuanzePositioningGroupBy as kt, NUANZE_LEADERBOARD_TIMEFRAMES as l, NuanzeMarketPositioningSideResponse as lt, NUANZE_MARKET_VENUES as m, NuanzeNewsEntity as mt, NUANZE_COHORT_KEYS as n, NuanzeMarketIdentity as nt, NUANZE_FLOW_EVENT_TYPE_FILTERS as o, NuanzeMarketPositioningBase as ot, NUANZE_MARKET_TRADING_STATUSES as p, NuanzeMinPositionUsd as pt, NuanzeFundingObservation as q, NUANZE_COVERAGES as r, NuanzeMarketPosition as rt, NUANZE_FLOW_TIMEFRAMES as s, NuanzeMarketPositioningCohortResponse as st, NUANZE_CANDLE_INTERVALS as t, NuanzeMarketDetail as tt, NUANZE_MARGIN_KINDS as u, NuanzeMarketTrade as ut, NUANZE_NEWS_SENTIMENTS as v, NuanzeNewsStory as vt, NUANZE_POSITIONING_GROUP_BYS as w, NuanzePlatformDeltas as wt, NUANZE_OPEN_POSITION_SORT_DIRECTIONS as x, NuanzeNotionalBucketPositioningCell as xt, NUANZE_NEWS_TIERS as y, NuanzeNewsTier as yt, NuanzeFlowTags as z, NuanzeWalletTrade as zt };
983
- //# sourceMappingURL=clientModelTypes-DE60UN6J.d.cts.map
983
+ //# sourceMappingURL=clientModelTypes-Ck_xwS0G.d.ts.map