@nadohq/indexer-client 0.29.0 → 0.31.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 (71) hide show
  1. package/dist/{IndexerBaseClient-BesuTUAd.cjs → IndexerBaseClient-B7cApziU.cjs} +11 -1
  2. package/dist/IndexerBaseClient-B7cApziU.cjs.map +1 -0
  3. package/dist/IndexerBaseClient.cjs +1 -1
  4. package/dist/IndexerBaseClient.d.cts +10 -2
  5. package/dist/IndexerBaseClient.d.cts.map +1 -1
  6. package/dist/IndexerBaseClient.d.ts +10 -2
  7. package/dist/IndexerBaseClient.d.ts.map +1 -1
  8. package/dist/IndexerBaseClient.js +11 -1
  9. package/dist/IndexerBaseClient.js.map +1 -1
  10. package/dist/IndexerClient.cjs +1 -1
  11. package/dist/IndexerClient.d.cts +1 -1
  12. package/dist/IndexerClient.d.ts +1 -1
  13. package/dist/{IndexerServerFailureError-hEhRAwJS.d.cts → IndexerServerFailureError-BDumqvxn.d.cts} +2 -2
  14. package/dist/{IndexerServerFailureError-hEhRAwJS.d.cts.map → IndexerServerFailureError-BDumqvxn.d.cts.map} +1 -1
  15. package/dist/{IndexerServerFailureError-CV5XXgNJ.d.ts → IndexerServerFailureError-CNfg1fnY.d.ts} +2 -2
  16. package/dist/{IndexerServerFailureError-CV5XXgNJ.d.ts.map → IndexerServerFailureError-CNfg1fnY.d.ts.map} +1 -1
  17. package/dist/{clientTypes-Cke-KLUR.d.ts → clientTypes-B9CLpWyr.d.ts} +28 -3
  18. package/dist/clientTypes-B9CLpWyr.d.ts.map +1 -0
  19. package/dist/{clientTypes-C6gfQzsU.d.cts → clientTypes-pI3pxxup.d.cts} +28 -3
  20. package/dist/clientTypes-pI3pxxup.d.cts.map +1 -0
  21. package/dist/dataMappers.cjs +15 -1
  22. package/dist/dataMappers.cjs.map +1 -1
  23. package/dist/dataMappers.d.cts +4 -3
  24. package/dist/dataMappers.d.cts.map +1 -1
  25. package/dist/dataMappers.d.ts +4 -3
  26. package/dist/dataMappers.d.ts.map +1 -1
  27. package/dist/dataMappers.js +14 -1
  28. package/dist/dataMappers.js.map +1 -1
  29. package/dist/index.cjs +1 -1
  30. package/dist/index.d.cts +6 -6
  31. package/dist/index.d.ts +6 -6
  32. package/dist/{indexerBalanceValue-BBUGThDY.d.cts → indexerBalanceValue-DyBxYbS1.d.cts} +2 -2
  33. package/dist/{indexerBalanceValue-BBUGThDY.d.cts.map → indexerBalanceValue-DyBxYbS1.d.cts.map} +1 -1
  34. package/dist/{indexerBalanceValue-dX29Cr7g.d.ts → indexerBalanceValue-Dz405nR_.d.ts} +2 -2
  35. package/dist/{indexerBalanceValue-dX29Cr7g.d.ts.map → indexerBalanceValue-Dz405nR_.d.ts.map} +1 -1
  36. package/dist/{paginatedEventsTypes-BOUjVtm0.d.ts → paginatedEventsTypes-BJXTuQTz.d.ts} +2 -2
  37. package/dist/{paginatedEventsTypes-BOUjVtm0.d.ts.map → paginatedEventsTypes-BJXTuQTz.d.ts.map} +1 -1
  38. package/dist/{paginatedEventsTypes-BeMZ3Cac.d.cts → paginatedEventsTypes-CrzCU35F.d.cts} +2 -2
  39. package/dist/{paginatedEventsTypes-BeMZ3Cac.d.cts.map → paginatedEventsTypes-CrzCU35F.d.cts.map} +1 -1
  40. package/dist/{serverTypes-E311idZv.d.cts → serverTypes-BNCw3_T1.d.cts} +15 -2
  41. package/dist/serverTypes-BNCw3_T1.d.cts.map +1 -0
  42. package/dist/{serverTypes-l4ceojIp.d.ts → serverTypes-DkRgWlZV.d.ts} +15 -2
  43. package/dist/serverTypes-DkRgWlZV.d.ts.map +1 -0
  44. package/dist/types/IndexerServerFailureError.cjs +1 -1
  45. package/dist/types/IndexerServerFailureError.d.cts +1 -1
  46. package/dist/types/IndexerServerFailureError.d.ts +1 -1
  47. package/dist/types/clientTypes.d.cts +2 -2
  48. package/dist/types/clientTypes.d.ts +2 -2
  49. package/dist/types/index.d.cts +5 -5
  50. package/dist/types/index.d.ts +5 -5
  51. package/dist/types/indexerErrorCodes.cjs +1 -1
  52. package/dist/types/paginatedEventsTypes.d.cts +1 -1
  53. package/dist/types/paginatedEventsTypes.d.ts +1 -1
  54. package/dist/types/serverTypes.cjs.map +1 -1
  55. package/dist/types/serverTypes.d.cts +2 -2
  56. package/dist/types/serverTypes.d.ts +2 -2
  57. package/dist/types/serverTypes.js.map +1 -1
  58. package/dist/utils/index.d.cts +1 -1
  59. package/dist/utils/index.d.ts +1 -1
  60. package/dist/utils/indexerBalanceValue.d.cts +1 -1
  61. package/dist/utils/indexerBalanceValue.d.ts +1 -1
  62. package/package.json +4 -4
  63. package/src/IndexerBaseClient.ts +20 -0
  64. package/src/dataMappers.ts +31 -0
  65. package/src/types/clientTypes.ts +45 -0
  66. package/src/types/serverTypes.ts +30 -0
  67. package/dist/IndexerBaseClient-BesuTUAd.cjs.map +0 -1
  68. package/dist/clientTypes-C6gfQzsU.d.cts.map +0 -1
  69. package/dist/clientTypes-Cke-KLUR.d.ts.map +0 -1
  70. package/dist/serverTypes-E311idZv.d.cts.map +0 -1
  71. package/dist/serverTypes-l4ceojIp.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"IndexerServerFailureError-CV5XXgNJ.d.ts","names":[],"sources":["../src/types/src/types/IndexerServerFailureError.ts"],"mappings":";;;;;;AAeA;;;;;;;cAAa,yBAAA,SAAkC,sBAAA;EAAA,SAC5B,YAAA,EAAc,4BAAA;EAAA,SACd,WAAA,EAAa,wBAAA;EADb;;;EAAA,SAMR,UAAA;cAEG,YAAA,EAAc,4BAAA,EAA8B,UAAA;AAAA"}
1
+ {"version":3,"file":"IndexerServerFailureError-CNfg1fnY.d.ts","names":[],"sources":["../src/types/src/types/IndexerServerFailureError.ts"],"mappings":";;;;;;AAeA;;;;;;;cAAa,yBAAA,SAAkC,sBAAA;EAAA,SAC5B,YAAA,EAAc,4BAAA;EAAA,SACd,WAAA,EAAa,wBAAA;EADb;;;EAAA,SAMR,UAAA;cAEG,YAAA,EAAc,4BAAA,EAA8B,UAAA;AAAA"}
@@ -2,7 +2,7 @@ import { t as CandlestickPeriod } from "./CandlestickPeriod-1DtcEiOb.js";
2
2
  import { t as IndexerEventType } from "./IndexerEventType-Brm9aX8w.js";
3
3
  import { t as IndexerLeaderboardRankType } from "./IndexerLeaderboardType-DAKw2tfI.js";
4
4
  import { c as NadoWithdrawCollateralV2Tx, o as NadoTx, s as NadoWithdrawCollateralTx } from "./NadoTx-Bd4U-zDu.js";
5
- import { K as IndexerServerListSubaccountsParams, Nt as IndexerServerTriggerTypeFilter, x as IndexerServerFastWithdrawalSignatureParams } from "./serverTypes-l4ceojIp.js";
5
+ import { K as IndexerServerListSubaccountsParams, Rt as IndexerServerTriggerTypeFilter, x as IndexerServerFastWithdrawalSignatureParams } from "./serverTypes-DkRgWlZV.js";
6
6
  import { EIP712OrderValues, Market, OrderAppendix, PerpBalance, PerpMarket, ProductEngineType, SignatureParams, SpotBalance, SpotMarket, Subaccount } from "@nadohq/shared";
7
7
  import BigNumber from "bignumber.js";
8
8
  import { Address, Hex } from "viem";
@@ -152,6 +152,31 @@ interface IndexerFundingRateHistoryEntry {
152
152
  * pass the last entry's `timestamp + 1` as the next request's `startTimeInclusive`.
153
153
  */
154
154
  type GetIndexerFundingRateHistoryResponse = IndexerFundingRateHistoryEntry[];
155
+ /**
156
+ * Portfolio
157
+ */
158
+ interface GetIndexerPortfolioParams {
159
+ /**
160
+ * Cross-margin subaccount to query. Its value aggregates the cross-margin
161
+ * account plus every isolated child; isolated subaccounts are rejected.
162
+ */
163
+ subaccount: Subaccount;
164
+ }
165
+ type IndexerPortfolioPeriod = 'day' | 'week' | 'month' | 'allTime' | 'perpDay' | 'perpWeek' | 'perpMonth' | 'perpAllTime';
166
+ interface IndexerPortfolioPoint {
167
+ timestamp: BigNumber;
168
+ value: BigNumber;
169
+ }
170
+ interface IndexerPortfolioHistory {
171
+ accountValueHistory: IndexerPortfolioPoint[];
172
+ /**
173
+ * Trading PnL over the timeframe, baseline-subtracted so the first visible
174
+ * point is `0`. Capital flows (deposits/withdrawals/transfers) are netted out.
175
+ */
176
+ pnlHistory: IndexerPortfolioPoint[];
177
+ volume: BigNumber;
178
+ }
179
+ type GetIndexerPortfolioResponse = Record<IndexerPortfolioPeriod, IndexerPortfolioHistory>;
155
180
  /**
156
181
  * Candlesticks
157
182
  */
@@ -802,5 +827,5 @@ interface IndexerV2Symbol {
802
827
  */
803
828
  type GetIndexerV2SymbolsResponse = Record<string, IndexerV2Symbol>;
804
829
  //#endregion
805
- export { GetIndexerOrdersResponse as $, IndexerSocialAccountInfo as $t, GetIndexerLeaderboardRegistrationsResponse as A, IndexerEventWithTx as At, GetIndexerMultiProductFundingRatesParams as B, IndexerMarketSnapshot as Bt, GetIndexerInterestFundingPaymentsResponse as C, IndexerCashIncentivesEventPlatform as Ct, GetIndexerLeaderboardParticipantParams as D, IndexerEventBalanceStateSnapshot as Dt, GetIndexerLeaderboardParams as E, IndexerEvent as Et, GetIndexerMakerStatisticsResponse as F, IndexerLeaderboardParticipant as Ft, GetIndexerMultiProductSnapshotsResponse as G, IndexerOrder as Gt, GetIndexerMultiProductPerpPricesParams as H, IndexerMatchEventBalances as Ht, GetIndexerMarketSnapshotsParams as I, IndexerLeaderboardRegistration as It, GetIndexerNlpSnapshotsParams as J, IndexerPointsEpoch as Jt, GetIndexerMultiSubaccountSnapshotsParams as K, IndexerPerpBalance as Kt, GetIndexerMarketSnapshotsResponse as L, IndexerLeaderboardTrackPosition as Lt, GetIndexerLinkedSignerParams as M, IndexerFundingRateHistoryEntry as Mt, GetIndexerLinkedSignerResponse as N, IndexerLeaderboardContest as Nt, GetIndexerLeaderboardParticipantResponse as O, IndexerEventPerpStateSnapshot as Ot, GetIndexerMakerStatisticsParams as P, IndexerLeaderboardContestTrack as Pt, GetIndexerOrdersParams as Q, IndexerSnapshotsIntervalParams as Qt, GetIndexerMatchEventsParams as R, IndexerMaker as Rt, GetIndexerInterestFundingPaymentsParams as S, IndexerCashIncentivesEventMetadata as St, GetIndexerLeaderboardContestsResponse as T, IndexerCashIncentivesWalletSummary as Tt, GetIndexerMultiProductPerpPricesResponse as U, IndexerNlpSnapshot as Ut, GetIndexerMultiProductFundingRatesResponse as V, IndexerMatchEvent as Vt, GetIndexerMultiProductSnapshotsParams as W, IndexerOraclePrice as Wt, GetIndexerOraclePricesParams as X, IndexerProductSnapshot as Xt, GetIndexerNlpSnapshotsResponse as Y, IndexerProductPayment as Yt, GetIndexerOraclePricesResponse as Z, IndexerSnapshotBalance as Zt, GetIndexerFastWithdrawalSignatureResponse as _, TickerMarketType as _n, GetIndexerXPointsParams as _t, GetIndexerCandlesticksParams as a, IndexerV2TradingStatus as an, GetIndexerPrivateAlphaChoiceResponse as at, GetIndexerFundingRateParams as b, IndexerBalanceTrackedVars as bt, GetIndexerCashIncentivesResponse as c, IndexerXPointsQuest as cn, GetIndexerQuotePriceResponse as ct, GetIndexerEdgeMarketSnapshotResponse as d, ListIndexerSubaccountsParams as dn, GetIndexerSubaccountDDAParams as dt, IndexerSpotBalance as en, GetIndexerPerpPricesParams as et, GetIndexerEdgeMarketSnapshotsParams as f, ListIndexerSubaccountsResponse as fn, GetIndexerSubaccountDDAResponse as ft, GetIndexerFastWithdrawalSignatureParams as g, RevokeSocialAccountResponse as gn, GetIndexerV2TickersResponse as gt, GetIndexerEventsResponse as h, RevokeSocialAccountParams as hn, GetIndexerV2TickersParams as ht, GetIndexerBacklogResponse as i, IndexerV2TickerResponse as in, GetIndexerPrivateAlphaChoiceParams as it, GetIndexerLeaderboardResponse as j, IndexerFundingRate as jt, GetIndexerLeaderboardRegistrationsParams as k, IndexerEventSpotStateSnapshot as kt, GetIndexerEdgeCandlesticksParams as l, ListIndexerSocialAccountsParams as ln, GetIndexerReferralCodeParams as lt, GetIndexerEventsParams as m, RegisterLeaderboardResponse as mn, GetIndexerV2SymbolsResponse as mt, ConnectSocialAccountParams as n, IndexerV2MarketHours as nn, GetIndexerPointsParams as nt, GetIndexerCandlesticksResponse as o, IndexerXPointsAllTime as on, GetIndexerProductSnapshotsParams as ot, GetIndexerEventsLimitType as p, RegisterLeaderboardParams as pn, GetIndexerV2SymbolsParams as pt, GetIndexerMultiSubaccountSnapshotsResponse as q, IndexerPerpPrices as qt, ConnectSocialAccountResponse as r, IndexerV2Symbol as rn, GetIndexerPointsResponse as rt, GetIndexerCashIncentivesParams as s, IndexerXPointsEpoch as sn, GetIndexerProductSnapshotsResponse as st, Candlestick as t, IndexerSubaccountSnapshot as tn, GetIndexerPerpPricesResponse as tt, GetIndexerEdgeCandlesticksResponse as u, ListIndexerSocialAccountsResponse as un, GetIndexerReferralCodeResponse as ut, GetIndexerFundingRateHistoryParams as v, GetIndexerXPointsResponse as vt, GetIndexerLeaderboardContestsParams as w, IndexerCashIncentivesEventWallet as wt, GetIndexerFundingRateResponse as x, IndexerCashIncentivesEvent as xt, GetIndexerFundingRateHistoryResponse as y, IndexerAllTimePoints as yt, GetIndexerMatchEventsResponse as z, IndexerMakerSnapshot as zt };
806
- //# sourceMappingURL=clientTypes-Cke-KLUR.d.ts.map
830
+ export { GetIndexerOrdersResponse as $, IndexerPortfolioPoint as $t, GetIndexerLeaderboardRegistrationsResponse as A, IndexerEventPerpStateSnapshot as At, GetIndexerMultiProductFundingRatesParams as B, IndexerMaker as Bt, GetIndexerInterestFundingPaymentsResponse as C, IndexerCashIncentivesEvent as Ct, GetIndexerLeaderboardParticipantParams as D, IndexerCashIncentivesWalletSummary as Dt, GetIndexerLeaderboardParams as E, IndexerCashIncentivesEventWallet as Et, GetIndexerMakerStatisticsResponse as F, IndexerLeaderboardContest as Ft, GetIndexerMultiProductSnapshotsResponse as G, IndexerNlpSnapshot as Gt, GetIndexerMultiProductPerpPricesParams as H, IndexerMarketSnapshot as Ht, GetIndexerMarketSnapshotsParams as I, IndexerLeaderboardContestTrack as It, GetIndexerNlpSnapshotsParams as J, IndexerPerpBalance as Jt, GetIndexerMultiSubaccountSnapshotsParams as K, IndexerOraclePrice as Kt, GetIndexerMarketSnapshotsResponse as L, IndexerLeaderboardParticipant as Lt, GetIndexerLinkedSignerParams as M, IndexerEventWithTx as Mt, GetIndexerLinkedSignerResponse as N, IndexerFundingRate as Nt, GetIndexerLeaderboardParticipantResponse as O, IndexerEvent as Ot, GetIndexerMakerStatisticsParams as P, IndexerFundingRateHistoryEntry as Pt, GetIndexerOrdersParams as Q, IndexerPortfolioPeriod as Qt, GetIndexerMatchEventsParams as R, IndexerLeaderboardRegistration as Rt, GetIndexerInterestFundingPaymentsParams as S, TickerMarketType as Sn, IndexerBalanceTrackedVars as St, GetIndexerLeaderboardContestsResponse as T, IndexerCashIncentivesEventPlatform as Tt, GetIndexerMultiProductPerpPricesResponse as U, IndexerMatchEvent as Ut, GetIndexerMultiProductFundingRatesResponse as V, IndexerMakerSnapshot as Vt, GetIndexerMultiProductSnapshotsParams as W, IndexerMatchEventBalances as Wt, GetIndexerOraclePricesParams as X, IndexerPointsEpoch as Xt, GetIndexerNlpSnapshotsResponse as Y, IndexerPerpPrices as Yt, GetIndexerOraclePricesResponse as Z, IndexerPortfolioHistory as Zt, GetIndexerFastWithdrawalSignatureResponse as _, ListIndexerSubaccountsResponse as _n, GetIndexerV2TickersParams as _t, GetIndexerCandlesticksParams as a, IndexerSpotBalance as an, GetIndexerPortfolioResponse as at, GetIndexerFundingRateParams as b, RevokeSocialAccountParams as bn, GetIndexerXPointsResponse as bt, GetIndexerCashIncentivesResponse as c, IndexerV2Symbol as cn, GetIndexerProductSnapshotsParams as ct, GetIndexerEdgeMarketSnapshotResponse as d, IndexerXPointsAllTime as dn, GetIndexerReferralCodeParams as dt, IndexerProductPayment as en, GetIndexerPerpPricesParams as et, GetIndexerEdgeMarketSnapshotsParams as f, IndexerXPointsEpoch as fn, GetIndexerReferralCodeResponse as ft, GetIndexerFastWithdrawalSignatureParams as g, ListIndexerSubaccountsParams as gn, GetIndexerV2SymbolsResponse as gt, GetIndexerEventsResponse as h, ListIndexerSocialAccountsResponse as hn, GetIndexerV2SymbolsParams as ht, GetIndexerBacklogResponse as i, IndexerSocialAccountInfo as in, GetIndexerPortfolioParams as it, GetIndexerLeaderboardResponse as j, IndexerEventSpotStateSnapshot as jt, GetIndexerLeaderboardRegistrationsParams as k, IndexerEventBalanceStateSnapshot as kt, GetIndexerEdgeCandlesticksParams as l, IndexerV2TickerResponse as ln, GetIndexerProductSnapshotsResponse as lt, GetIndexerEventsParams as m, ListIndexerSocialAccountsParams as mn, GetIndexerSubaccountDDAResponse as mt, ConnectSocialAccountParams as n, IndexerSnapshotBalance as nn, GetIndexerPointsParams as nt, GetIndexerCandlesticksResponse as o, IndexerSubaccountSnapshot as on, GetIndexerPrivateAlphaChoiceParams as ot, GetIndexerEventsLimitType as p, IndexerXPointsQuest as pn, GetIndexerSubaccountDDAParams as pt, GetIndexerMultiSubaccountSnapshotsResponse as q, IndexerOrder as qt, ConnectSocialAccountResponse as r, IndexerSnapshotsIntervalParams as rn, GetIndexerPointsResponse as rt, GetIndexerCashIncentivesParams as s, IndexerV2MarketHours as sn, GetIndexerPrivateAlphaChoiceResponse as st, Candlestick as t, IndexerProductSnapshot as tn, GetIndexerPerpPricesResponse as tt, GetIndexerEdgeCandlesticksResponse as u, IndexerV2TradingStatus as un, GetIndexerQuotePriceResponse as ut, GetIndexerFundingRateHistoryParams as v, RegisterLeaderboardParams as vn, GetIndexerV2TickersResponse as vt, GetIndexerLeaderboardContestsParams as w, IndexerCashIncentivesEventMetadata as wt, GetIndexerFundingRateResponse as x, RevokeSocialAccountResponse as xn, IndexerAllTimePoints as xt, GetIndexerFundingRateHistoryResponse as y, RegisterLeaderboardResponse as yn, GetIndexerXPointsParams as yt, GetIndexerMatchEventsResponse as z, IndexerLeaderboardTrackPosition as zt };
831
+ //# sourceMappingURL=clientTypes-B9CLpWyr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientTypes-B9CLpWyr.d.ts","names":[],"sources":["../src/types/src/types/clientTypes.ts"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { t as CandlestickPeriod } from "./CandlestickPeriod-D3_IoSev.cjs";
2
2
  import { t as IndexerEventType } from "./IndexerEventType-9GB2zRoN.cjs";
3
3
  import { t as IndexerLeaderboardRankType } from "./IndexerLeaderboardType-Ck12QVWR.cjs";
4
4
  import { c as NadoWithdrawCollateralV2Tx, o as NadoTx, s as NadoWithdrawCollateralTx } from "./NadoTx-C3_f0YvI.cjs";
5
- import { K as IndexerServerListSubaccountsParams, Nt as IndexerServerTriggerTypeFilter, x as IndexerServerFastWithdrawalSignatureParams } from "./serverTypes-E311idZv.cjs";
5
+ import { K as IndexerServerListSubaccountsParams, Rt as IndexerServerTriggerTypeFilter, x as IndexerServerFastWithdrawalSignatureParams } from "./serverTypes-BNCw3_T1.cjs";
6
6
  import { EIP712OrderValues, Market, OrderAppendix, PerpBalance, PerpMarket, ProductEngineType, SignatureParams, SpotBalance, SpotMarket, Subaccount } from "@nadohq/shared";
7
7
  import BigNumber from "bignumber.js";
8
8
  import { Address, Hex } from "viem";
@@ -152,6 +152,31 @@ interface IndexerFundingRateHistoryEntry {
152
152
  * pass the last entry's `timestamp + 1` as the next request's `startTimeInclusive`.
153
153
  */
154
154
  type GetIndexerFundingRateHistoryResponse = IndexerFundingRateHistoryEntry[];
155
+ /**
156
+ * Portfolio
157
+ */
158
+ interface GetIndexerPortfolioParams {
159
+ /**
160
+ * Cross-margin subaccount to query. Its value aggregates the cross-margin
161
+ * account plus every isolated child; isolated subaccounts are rejected.
162
+ */
163
+ subaccount: Subaccount;
164
+ }
165
+ type IndexerPortfolioPeriod = 'day' | 'week' | 'month' | 'allTime' | 'perpDay' | 'perpWeek' | 'perpMonth' | 'perpAllTime';
166
+ interface IndexerPortfolioPoint {
167
+ timestamp: BigNumber;
168
+ value: BigNumber;
169
+ }
170
+ interface IndexerPortfolioHistory {
171
+ accountValueHistory: IndexerPortfolioPoint[];
172
+ /**
173
+ * Trading PnL over the timeframe, baseline-subtracted so the first visible
174
+ * point is `0`. Capital flows (deposits/withdrawals/transfers) are netted out.
175
+ */
176
+ pnlHistory: IndexerPortfolioPoint[];
177
+ volume: BigNumber;
178
+ }
179
+ type GetIndexerPortfolioResponse = Record<IndexerPortfolioPeriod, IndexerPortfolioHistory>;
155
180
  /**
156
181
  * Candlesticks
157
182
  */
@@ -802,5 +827,5 @@ interface IndexerV2Symbol {
802
827
  */
803
828
  type GetIndexerV2SymbolsResponse = Record<string, IndexerV2Symbol>;
804
829
  //#endregion
805
- export { GetIndexerOrdersResponse as $, IndexerSocialAccountInfo as $t, GetIndexerLeaderboardRegistrationsResponse as A, IndexerEventWithTx as At, GetIndexerMultiProductFundingRatesParams as B, IndexerMarketSnapshot as Bt, GetIndexerInterestFundingPaymentsResponse as C, IndexerCashIncentivesEventPlatform as Ct, GetIndexerLeaderboardParticipantParams as D, IndexerEventBalanceStateSnapshot as Dt, GetIndexerLeaderboardParams as E, IndexerEvent as Et, GetIndexerMakerStatisticsResponse as F, IndexerLeaderboardParticipant as Ft, GetIndexerMultiProductSnapshotsResponse as G, IndexerOrder as Gt, GetIndexerMultiProductPerpPricesParams as H, IndexerMatchEventBalances as Ht, GetIndexerMarketSnapshotsParams as I, IndexerLeaderboardRegistration as It, GetIndexerNlpSnapshotsParams as J, IndexerPointsEpoch as Jt, GetIndexerMultiSubaccountSnapshotsParams as K, IndexerPerpBalance as Kt, GetIndexerMarketSnapshotsResponse as L, IndexerLeaderboardTrackPosition as Lt, GetIndexerLinkedSignerParams as M, IndexerFundingRateHistoryEntry as Mt, GetIndexerLinkedSignerResponse as N, IndexerLeaderboardContest as Nt, GetIndexerLeaderboardParticipantResponse as O, IndexerEventPerpStateSnapshot as Ot, GetIndexerMakerStatisticsParams as P, IndexerLeaderboardContestTrack as Pt, GetIndexerOrdersParams as Q, IndexerSnapshotsIntervalParams as Qt, GetIndexerMatchEventsParams as R, IndexerMaker as Rt, GetIndexerInterestFundingPaymentsParams as S, IndexerCashIncentivesEventMetadata as St, GetIndexerLeaderboardContestsResponse as T, IndexerCashIncentivesWalletSummary as Tt, GetIndexerMultiProductPerpPricesResponse as U, IndexerNlpSnapshot as Ut, GetIndexerMultiProductFundingRatesResponse as V, IndexerMatchEvent as Vt, GetIndexerMultiProductSnapshotsParams as W, IndexerOraclePrice as Wt, GetIndexerOraclePricesParams as X, IndexerProductSnapshot as Xt, GetIndexerNlpSnapshotsResponse as Y, IndexerProductPayment as Yt, GetIndexerOraclePricesResponse as Z, IndexerSnapshotBalance as Zt, GetIndexerFastWithdrawalSignatureResponse as _, TickerMarketType as _n, GetIndexerXPointsParams as _t, GetIndexerCandlesticksParams as a, IndexerV2TradingStatus as an, GetIndexerPrivateAlphaChoiceResponse as at, GetIndexerFundingRateParams as b, IndexerBalanceTrackedVars as bt, GetIndexerCashIncentivesResponse as c, IndexerXPointsQuest as cn, GetIndexerQuotePriceResponse as ct, GetIndexerEdgeMarketSnapshotResponse as d, ListIndexerSubaccountsParams as dn, GetIndexerSubaccountDDAParams as dt, IndexerSpotBalance as en, GetIndexerPerpPricesParams as et, GetIndexerEdgeMarketSnapshotsParams as f, ListIndexerSubaccountsResponse as fn, GetIndexerSubaccountDDAResponse as ft, GetIndexerFastWithdrawalSignatureParams as g, RevokeSocialAccountResponse as gn, GetIndexerV2TickersResponse as gt, GetIndexerEventsResponse as h, RevokeSocialAccountParams as hn, GetIndexerV2TickersParams as ht, GetIndexerBacklogResponse as i, IndexerV2TickerResponse as in, GetIndexerPrivateAlphaChoiceParams as it, GetIndexerLeaderboardResponse as j, IndexerFundingRate as jt, GetIndexerLeaderboardRegistrationsParams as k, IndexerEventSpotStateSnapshot as kt, GetIndexerEdgeCandlesticksParams as l, ListIndexerSocialAccountsParams as ln, GetIndexerReferralCodeParams as lt, GetIndexerEventsParams as m, RegisterLeaderboardResponse as mn, GetIndexerV2SymbolsResponse as mt, ConnectSocialAccountParams as n, IndexerV2MarketHours as nn, GetIndexerPointsParams as nt, GetIndexerCandlesticksResponse as o, IndexerXPointsAllTime as on, GetIndexerProductSnapshotsParams as ot, GetIndexerEventsLimitType as p, RegisterLeaderboardParams as pn, GetIndexerV2SymbolsParams as pt, GetIndexerMultiSubaccountSnapshotsResponse as q, IndexerPerpPrices as qt, ConnectSocialAccountResponse as r, IndexerV2Symbol as rn, GetIndexerPointsResponse as rt, GetIndexerCashIncentivesParams as s, IndexerXPointsEpoch as sn, GetIndexerProductSnapshotsResponse as st, Candlestick as t, IndexerSubaccountSnapshot as tn, GetIndexerPerpPricesResponse as tt, GetIndexerEdgeCandlesticksResponse as u, ListIndexerSocialAccountsResponse as un, GetIndexerReferralCodeResponse as ut, GetIndexerFundingRateHistoryParams as v, GetIndexerXPointsResponse as vt, GetIndexerLeaderboardContestsParams as w, IndexerCashIncentivesEventWallet as wt, GetIndexerFundingRateResponse as x, IndexerCashIncentivesEvent as xt, GetIndexerFundingRateHistoryResponse as y, IndexerAllTimePoints as yt, GetIndexerMatchEventsResponse as z, IndexerMakerSnapshot as zt };
806
- //# sourceMappingURL=clientTypes-C6gfQzsU.d.cts.map
830
+ export { GetIndexerOrdersResponse as $, IndexerPortfolioPoint as $t, GetIndexerLeaderboardRegistrationsResponse as A, IndexerEventPerpStateSnapshot as At, GetIndexerMultiProductFundingRatesParams as B, IndexerMaker as Bt, GetIndexerInterestFundingPaymentsResponse as C, IndexerCashIncentivesEvent as Ct, GetIndexerLeaderboardParticipantParams as D, IndexerCashIncentivesWalletSummary as Dt, GetIndexerLeaderboardParams as E, IndexerCashIncentivesEventWallet as Et, GetIndexerMakerStatisticsResponse as F, IndexerLeaderboardContest as Ft, GetIndexerMultiProductSnapshotsResponse as G, IndexerNlpSnapshot as Gt, GetIndexerMultiProductPerpPricesParams as H, IndexerMarketSnapshot as Ht, GetIndexerMarketSnapshotsParams as I, IndexerLeaderboardContestTrack as It, GetIndexerNlpSnapshotsParams as J, IndexerPerpBalance as Jt, GetIndexerMultiSubaccountSnapshotsParams as K, IndexerOraclePrice as Kt, GetIndexerMarketSnapshotsResponse as L, IndexerLeaderboardParticipant as Lt, GetIndexerLinkedSignerParams as M, IndexerEventWithTx as Mt, GetIndexerLinkedSignerResponse as N, IndexerFundingRate as Nt, GetIndexerLeaderboardParticipantResponse as O, IndexerEvent as Ot, GetIndexerMakerStatisticsParams as P, IndexerFundingRateHistoryEntry as Pt, GetIndexerOrdersParams as Q, IndexerPortfolioPeriod as Qt, GetIndexerMatchEventsParams as R, IndexerLeaderboardRegistration as Rt, GetIndexerInterestFundingPaymentsParams as S, TickerMarketType as Sn, IndexerBalanceTrackedVars as St, GetIndexerLeaderboardContestsResponse as T, IndexerCashIncentivesEventPlatform as Tt, GetIndexerMultiProductPerpPricesResponse as U, IndexerMatchEvent as Ut, GetIndexerMultiProductFundingRatesResponse as V, IndexerMakerSnapshot as Vt, GetIndexerMultiProductSnapshotsParams as W, IndexerMatchEventBalances as Wt, GetIndexerOraclePricesParams as X, IndexerPointsEpoch as Xt, GetIndexerNlpSnapshotsResponse as Y, IndexerPerpPrices as Yt, GetIndexerOraclePricesResponse as Z, IndexerPortfolioHistory as Zt, GetIndexerFastWithdrawalSignatureResponse as _, ListIndexerSubaccountsResponse as _n, GetIndexerV2TickersParams as _t, GetIndexerCandlesticksParams as a, IndexerSpotBalance as an, GetIndexerPortfolioResponse as at, GetIndexerFundingRateParams as b, RevokeSocialAccountParams as bn, GetIndexerXPointsResponse as bt, GetIndexerCashIncentivesResponse as c, IndexerV2Symbol as cn, GetIndexerProductSnapshotsParams as ct, GetIndexerEdgeMarketSnapshotResponse as d, IndexerXPointsAllTime as dn, GetIndexerReferralCodeParams as dt, IndexerProductPayment as en, GetIndexerPerpPricesParams as et, GetIndexerEdgeMarketSnapshotsParams as f, IndexerXPointsEpoch as fn, GetIndexerReferralCodeResponse as ft, GetIndexerFastWithdrawalSignatureParams as g, ListIndexerSubaccountsParams as gn, GetIndexerV2SymbolsResponse as gt, GetIndexerEventsResponse as h, ListIndexerSocialAccountsResponse as hn, GetIndexerV2SymbolsParams as ht, GetIndexerBacklogResponse as i, IndexerSocialAccountInfo as in, GetIndexerPortfolioParams as it, GetIndexerLeaderboardResponse as j, IndexerEventSpotStateSnapshot as jt, GetIndexerLeaderboardRegistrationsParams as k, IndexerEventBalanceStateSnapshot as kt, GetIndexerEdgeCandlesticksParams as l, IndexerV2TickerResponse as ln, GetIndexerProductSnapshotsResponse as lt, GetIndexerEventsParams as m, ListIndexerSocialAccountsParams as mn, GetIndexerSubaccountDDAResponse as mt, ConnectSocialAccountParams as n, IndexerSnapshotBalance as nn, GetIndexerPointsParams as nt, GetIndexerCandlesticksResponse as o, IndexerSubaccountSnapshot as on, GetIndexerPrivateAlphaChoiceParams as ot, GetIndexerEventsLimitType as p, IndexerXPointsQuest as pn, GetIndexerSubaccountDDAParams as pt, GetIndexerMultiSubaccountSnapshotsResponse as q, IndexerOrder as qt, ConnectSocialAccountResponse as r, IndexerSnapshotsIntervalParams as rn, GetIndexerPointsResponse as rt, GetIndexerCashIncentivesParams as s, IndexerV2MarketHours as sn, GetIndexerPrivateAlphaChoiceResponse as st, Candlestick as t, IndexerProductSnapshot as tn, GetIndexerPerpPricesResponse as tt, GetIndexerEdgeCandlesticksResponse as u, IndexerV2TradingStatus as un, GetIndexerQuotePriceResponse as ut, GetIndexerFundingRateHistoryParams as v, RegisterLeaderboardParams as vn, GetIndexerV2TickersResponse as vt, GetIndexerLeaderboardContestsParams as w, IndexerCashIncentivesEventMetadata as wt, GetIndexerFundingRateResponse as x, RevokeSocialAccountResponse as xn, IndexerAllTimePoints as xt, GetIndexerFundingRateHistoryResponse as y, RegisterLeaderboardResponse as yn, GetIndexerXPointsParams as yt, GetIndexerMatchEventsResponse as z, IndexerLeaderboardTrackPosition as zt };
831
+ //# sourceMappingURL=clientTypes-pI3pxxup.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientTypes-pI3pxxup.d.cts","names":[],"sources":["../src/types/src/types/clientTypes.ts"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- require("./IndexerBaseClient-BesuTUAd.cjs");
2
+ require("./IndexerBaseClient-B7cApziU.cjs");
3
3
  let _nadohq_shared = require("@nadohq/shared");
4
4
  let _nadohq_engine_client = require("@nadohq/engine-client");
5
5
  //#region src/dataMappers.ts
@@ -138,6 +138,19 @@ function mapIndexerFundingRateHistory(entry) {
138
138
  fundingRateFrac: (0, _nadohq_shared.removeDecimals)(entry.funding_rate_x18)
139
139
  };
140
140
  }
141
+ function mapIndexerPortfolioPoint([timestamp, value]) {
142
+ return {
143
+ timestamp: (0, _nadohq_shared.toBigNumber)(timestamp),
144
+ value: (0, _nadohq_shared.toBigNumber)(value)
145
+ };
146
+ }
147
+ function mapIndexerPortfolio(response) {
148
+ return Object.fromEntries(response.map(([period, history]) => [period, {
149
+ accountValueHistory: history.accountValueHistory.map(mapIndexerPortfolioPoint),
150
+ pnlHistory: history.pnlHistory.map(mapIndexerPortfolioPoint),
151
+ volume: (0, _nadohq_shared.toBigNumber)(history.vlm)
152
+ }]));
153
+ }
141
154
  function mapIndexerMakerStatistics(maker) {
142
155
  return {
143
156
  address: maker.address,
@@ -308,6 +321,7 @@ exports.mapIndexerMatchEventBalances = mapIndexerMatchEventBalances;
308
321
  exports.mapIndexerNlpSnapshot = mapIndexerNlpSnapshot;
309
322
  exports.mapIndexerOrder = mapIndexerOrder;
310
323
  exports.mapIndexerPerpPrices = mapIndexerPerpPrices;
324
+ exports.mapIndexerPortfolio = mapIndexerPortfolio;
311
325
  exports.mapIndexerProductPayment = mapIndexerProductPayment;
312
326
  exports.mapIndexerServerBalance = mapIndexerServerBalance;
313
327
  exports.mapIndexerServerProduct = mapIndexerServerProduct;
@@ -1 +1 @@
1
- {"version":3,"file":"dataMappers.cjs","names":["ProductEngineType","toBigNumber"],"sources":["../src/dataMappers.ts"],"sourcesContent":["import {\n mapEngineServerPerpProduct,\n mapEngineServerSpotProduct,\n} from '@nadohq/engine-client';\nimport {\n getRecvTimeFromOrderNonce,\n mapValues,\n Market,\n PerpMarket,\n ProductEngineType,\n removeDecimals,\n SpotMarket,\n subaccountFromHex,\n toBigNumber,\n toIntegerString,\n unpackOrderAppendix,\n} from '@nadohq/shared';\nimport {\n Candlestick,\n IndexerEvent,\n IndexerEventWithTx,\n IndexerFundingRate,\n IndexerFundingRateHistoryEntry,\n IndexerLeaderboardContest,\n IndexerLeaderboardParticipant,\n IndexerLeaderboardRegistration,\n IndexerMaker,\n IndexerMarketSnapshot,\n IndexerMatchEventBalances,\n IndexerNlpSnapshot,\n IndexerOrder,\n IndexerPerpBalance,\n IndexerPerpPrices,\n IndexerProductPayment,\n IndexerServerBalance,\n IndexerServerCandlestick,\n IndexerServerEvent,\n IndexerServerFundingRate,\n IndexerServerFundingRateHistoryEntry,\n IndexerServerLeaderboardContest,\n IndexerServerLeaderboardPosition,\n IndexerServerLeaderboardRegistration,\n IndexerServerMaker,\n IndexerServerMarketSnapshot,\n IndexerServerMatchEventBalances,\n IndexerServerNlpSnapshot,\n IndexerServerOrder,\n IndexerServerPerpPrices,\n IndexerServerProduct,\n IndexerServerProductPayment,\n IndexerServerSnapshotsInterval,\n IndexerServerTx,\n IndexerServerV2MarketHours,\n IndexerServerV2Symbol,\n IndexerServerV2TickerResponse,\n IndexerSnapshotsIntervalParams,\n IndexerSpotBalance,\n IndexerV2MarketHours,\n IndexerV2Symbol,\n IndexerV2TickerResponse,\n IndexerV2TradingStatus,\n} from './types';\n\nexport function mapSnapshotsIntervalToServerParams(\n params: IndexerSnapshotsIntervalParams,\n): IndexerServerSnapshotsInterval {\n return {\n count: params.limit,\n max_time: params.maxTimeInclusive\n ? toIntegerString(params.maxTimeInclusive)\n : undefined,\n granularity: params.granularity,\n };\n}\n\nexport function mapIndexerServerProduct(product: IndexerServerProduct): Market {\n if ('spot' in product) {\n return mapEngineServerSpotProduct(product.spot);\n }\n return mapEngineServerPerpProduct(product.perp);\n}\n\nexport function mapIndexerServerBalance(\n balance: IndexerServerBalance,\n): IndexerSpotBalance | IndexerPerpBalance {\n if ('spot' in balance) {\n return {\n amount: toBigNumber(balance.spot.balance.amount),\n productId: balance.spot.product_id,\n type: ProductEngineType.SPOT,\n };\n }\n return {\n amount: toBigNumber(balance.perp.balance.amount),\n productId: balance.perp.product_id,\n type: ProductEngineType.PERP,\n vQuoteBalance: toBigNumber(balance.perp.balance.v_quote_balance),\n };\n}\n\nexport function mapIndexerOrder(order: IndexerServerOrder): IndexerOrder {\n const appendix = unpackOrderAppendix(order.appendix);\n return {\n amount: toBigNumber(order.amount),\n digest: order.digest,\n expiration: Number(order.expiration),\n appendix,\n nonce: toBigNumber(order.nonce),\n isolated: order.isolated,\n recvTimeSeconds: getRecvTimeFromOrderNonce(order.nonce) / 1000,\n price: removeDecimals(order.price_x18),\n productId: order.product_id,\n subaccount: order.subaccount,\n submissionIndex: order.submission_idx,\n lastFillSubmissionIndex: order.last_fill_submission_idx,\n baseFilled: toBigNumber(order.base_filled),\n quoteFilled: toBigNumber(order.quote_filled),\n totalFee: toBigNumber(order.fee),\n builderFee: toBigNumber(order.builder_fee),\n realizedPnl: toBigNumber(order.realized_pnl),\n closedAmount: toBigNumber(order.closed_amount),\n closedNetEntry: toBigNumber(order.closed_net_entry),\n preCloseMargin: order.closed_margin\n ? toBigNumber(order.closed_margin)\n : null,\n firstFillTimestamp: toBigNumber(order.first_fill_timestamp),\n lastFillTimestamp: toBigNumber(order.last_fill_timestamp),\n preBalances: mapIndexerMatchEventBalances(order.pre_balance),\n postBalances: mapIndexerMatchEventBalances(order.post_balance),\n };\n}\n\nexport function mapIndexerEvent(event: IndexerServerEvent): IndexerEvent {\n const eventState: IndexerEvent['state'] = (() => {\n // Assume backend data is consistent\n if ('spot' in event.pre_balance) {\n return {\n type: ProductEngineType.SPOT,\n market: mapIndexerServerProduct(event.product) as SpotMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerSpotBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerSpotBalance,\n };\n }\n return {\n type: ProductEngineType.PERP,\n market: mapIndexerServerProduct(event.product) as PerpMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerPerpBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerPerpBalance,\n };\n })();\n\n return {\n eventType: event.event_type,\n productId: event.product_id,\n isolated: event.isolated,\n isolatedProductId: event.isolated_product_id,\n state: eventState,\n subaccount: event.subaccount,\n submissionIndex: event.submission_idx,\n trackedVars: {\n netEntryCumulative: toBigNumber(event.net_entry_cumulative),\n netEntryUnrealized: toBigNumber(event.net_entry_unrealized),\n netFundingCumulative: toBigNumber(event.net_funding_cumulative),\n netFundingUnrealized: toBigNumber(event.net_funding_unrealized),\n netInterestCumulative: toBigNumber(event.net_interest_cumulative),\n netInterestUnrealized: toBigNumber(event.net_interest_unrealized),\n quoteVolumeCumulative: toBigNumber(event.quote_volume_cumulative),\n },\n };\n}\n\nexport function mapIndexerEventWithTx(\n event: IndexerServerEvent,\n tx: IndexerServerTx,\n): IndexerEventWithTx {\n return {\n timestamp: toBigNumber(tx.timestamp),\n tx: tx.tx,\n ...mapIndexerEvent(event),\n };\n}\n\nexport function mapIndexerMatchEventBalances(\n eventBalances: IndexerServerMatchEventBalances,\n): IndexerMatchEventBalances {\n return {\n base: mapIndexerServerBalance(eventBalances.base),\n quote: eventBalances.quote\n ? (mapIndexerServerBalance(eventBalances.quote) as IndexerSpotBalance)\n : undefined,\n };\n}\n\nexport function mapIndexerProductPayment(\n payment: IndexerServerProductPayment,\n): IndexerProductPayment {\n return {\n submissionIndex: payment.idx,\n timestamp: toBigNumber(payment.timestamp),\n paymentAmount: toBigNumber(payment.amount),\n balanceAmount: toBigNumber(payment.balance_amount),\n annualPaymentRate: removeDecimals(payment.rate_x18),\n oraclePrice: removeDecimals(payment.oracle_price_x18),\n isolated: payment.isolated,\n productId: payment.product_id,\n isolatedProductId: payment.isolated_product_id,\n };\n}\n\nexport function mapIndexerPerpPrices(\n perpPrices: IndexerServerPerpPrices,\n): IndexerPerpPrices {\n return {\n indexPrice: removeDecimals(perpPrices.index_price_x18),\n markPrice: removeDecimals(perpPrices.mark_price_x18),\n updateTime: toBigNumber(perpPrices.update_time),\n productId: perpPrices.product_id,\n };\n}\n\nexport function mapIndexerFundingRate(\n fundingRate: IndexerServerFundingRate,\n): IndexerFundingRate {\n return {\n fundingRate: removeDecimals(fundingRate.funding_rate_x18),\n updateTime: toBigNumber(fundingRate.update_time),\n productId: fundingRate.product_id,\n };\n}\n\nexport function mapIndexerFundingRateHistory(\n entry: IndexerServerFundingRateHistoryEntry,\n): IndexerFundingRateHistoryEntry {\n return {\n productId: entry.product_id,\n timestamp: toBigNumber(entry.timestamp),\n fundingRateFrac: removeDecimals(entry.funding_rate_x18),\n };\n}\n\nexport function mapIndexerMakerStatistics(\n maker: IndexerServerMaker,\n): IndexerMaker {\n return {\n address: maker.address,\n snapshots: maker.data.map((makerData) => {\n return {\n timestamp: toBigNumber(makerData.timestamp),\n makerFee: toBigNumber(makerData.maker_fee),\n uptime: toBigNumber(makerData.uptime),\n sumQMin: toBigNumber(makerData.sum_q_min),\n qScore: toBigNumber(makerData.q_score),\n makerShare: toBigNumber(makerData.maker_share),\n expectedMakerReward: toBigNumber(makerData.expected_maker_reward),\n };\n }),\n };\n}\n\nexport function mapIndexerLeaderboardPosition(\n position: IndexerServerLeaderboardPosition,\n): IndexerLeaderboardParticipant {\n const tracks = mapValues(position.tracks, (trackData) => ({\n value: toBigNumber(trackData.value),\n rank: toBigNumber(trackData.rank),\n qualificationStatus: trackData.qualification_status,\n }));\n\n return {\n subaccount: subaccountFromHex(position.subaccount),\n contestId: position.contest_id,\n accountValue: toBigNumber(position.account_value),\n updateTime: toBigNumber(position.update_time),\n tracks,\n socialAccounts: position.social_accounts.map((account) => ({\n provider: account.provider,\n username: account.username,\n displayName: account.display_name,\n profileImageUrl: account.profile_image_url,\n })),\n };\n}\n\nexport function mapIndexerLeaderboardRegistration(\n registration: IndexerServerLeaderboardRegistration,\n): IndexerLeaderboardRegistration {\n return {\n subaccount: subaccountFromHex(registration.subaccount),\n contestId: registration.contest_id,\n updateTime: toBigNumber(registration.update_time),\n };\n}\n\nexport function mapIndexerLeaderboardContest(\n contest: IndexerServerLeaderboardContest,\n): IndexerLeaderboardContest {\n const startTime = toBigNumber(contest.start_time);\n const endTime = toBigNumber(contest.end_time);\n\n return {\n contestId: contest.contest_id,\n startTime,\n endTime,\n totalParticipants: toBigNumber(contest.count),\n requiredProductIds: contest.product_ids,\n active: contest.active,\n lastUpdated: toBigNumber(contest.last_updated),\n title: contest.title,\n description: contest.description,\n tracks: contest.tracks.map((track) => ({\n trackId: track.track_id,\n rankType: track.rank_type,\n sortOrder: track.sort_order,\n accountValueThreshold: toBigNumber(track.threshold),\n volumeThreshold: toBigNumber(track.volume_threshold),\n })),\n };\n}\n\nexport function mapIndexerCandlesticks(\n candlestick: IndexerServerCandlestick,\n): Candlestick {\n return {\n close: removeDecimals(candlestick.close_x18),\n high: removeDecimals(candlestick.high_x18),\n low: removeDecimals(candlestick.low_x18),\n open: removeDecimals(candlestick.open_x18),\n time: toBigNumber(candlestick.timestamp),\n volume: toBigNumber(candlestick.volume),\n };\n}\n\nexport function mapIndexerMarketSnapshot(\n snapshot: IndexerServerMarketSnapshot,\n): IndexerMarketSnapshot {\n return {\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeUsers: toBigNumber(snapshot.cumulative_users),\n dailyActiveUsers: toBigNumber(snapshot.daily_active_users),\n tvl: toBigNumber(snapshot.tvl),\n borrowRates: mapValues(snapshot.borrow_rates, (value) =>\n removeDecimals(value),\n ),\n cumulativeLiquidationAmounts: mapValues(\n snapshot.cumulative_liquidation_amounts,\n toBigNumber,\n ),\n cumulativeMakerFees: mapValues(snapshot.cumulative_maker_fees, toBigNumber),\n cumulativeSequencerFees: mapValues(\n snapshot.cumulative_sequencer_fees,\n toBigNumber,\n ),\n cumulativeTakerFees: mapValues(snapshot.cumulative_taker_fees, toBigNumber),\n cumulativeTrades: mapValues(snapshot.cumulative_trades, toBigNumber),\n cumulativeVolumes: mapValues(snapshot.cumulative_volumes, toBigNumber),\n depositRates: mapValues(snapshot.deposit_rates, (value) =>\n removeDecimals(value),\n ),\n fundingRates: mapValues(snapshot.funding_rates, (value) =>\n removeDecimals(value),\n ),\n openInterestsQuote: mapValues(snapshot.open_interests, toBigNumber),\n totalBorrows: mapValues(snapshot.total_borrows, toBigNumber),\n totalDeposits: mapValues(snapshot.total_deposits, toBigNumber),\n cumulativeTradeSizes: mapValues(\n snapshot.cumulative_trade_sizes,\n toBigNumber,\n ),\n cumulativeInflows: mapValues(snapshot.cumulative_inflows, toBigNumber),\n cumulativeOutflows: mapValues(snapshot.cumulative_outflows, toBigNumber),\n oraclePrices: mapValues(snapshot.oracle_prices, (value) =>\n removeDecimals(value),\n ),\n };\n}\n\nexport function mapIndexerNlpSnapshot(\n snapshot: IndexerServerNlpSnapshot,\n): IndexerNlpSnapshot {\n return {\n submissionIndex: snapshot.submission_idx,\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeBurnAmountQuote: toBigNumber(snapshot.cumulative_burn_quote),\n cumulativeMintAmountQuote: toBigNumber(snapshot.cumulative_mint_quote),\n cumulativePnl: toBigNumber(snapshot.cumulative_pnl),\n cumulativeTrades: toBigNumber(snapshot.cumulative_trades),\n cumulativeVolume: toBigNumber(snapshot.cumulative_volume),\n depositors: toBigNumber(snapshot.depositors),\n oraclePrice: removeDecimals(snapshot.oracle_price_x18),\n tvl: toBigNumber(snapshot.tvl),\n };\n}\n\nexport function mapIndexerV2Ticker(\n ticker: IndexerServerV2TickerResponse,\n): IndexerV2TickerResponse {\n return {\n productId: ticker.product_id,\n tickerId: ticker.ticker_id,\n baseCurrency: ticker.base_currency,\n quoteCurrency: ticker.quote_currency,\n lastPrice: ticker.last_price,\n baseVolume: ticker.base_volume,\n quoteVolume: ticker.quote_volume,\n priceChangePercent24h: ticker.price_change_percent_24h,\n };\n}\n\nexport function mapIndexerV2MarketHours(\n hours: IndexerServerV2MarketHours,\n): IndexerV2MarketHours {\n return {\n isOpen: hours.is_open,\n reason: hours.reason,\n nextClose: hours.next_close,\n nextOpen: hours.next_open,\n };\n}\n\nexport function mapIndexerV2Symbols(\n symbol: IndexerServerV2Symbol,\n): IndexerV2Symbol {\n return {\n type: symbol.type,\n productId: symbol.product_id,\n symbol: symbol.symbol,\n priceIncrement: removeDecimals(symbol.price_increment_x18),\n sizeIncrement: symbol.size_increment,\n minSize: symbol.min_size,\n makerFeeRate: removeDecimals(symbol.maker_fee_rate_x18),\n takerFeeRate: removeDecimals(symbol.taker_fee_rate_x18),\n longWeightInitial: removeDecimals(symbol.long_weight_initial_x18),\n longWeightMaintenance: removeDecimals(symbol.long_weight_maintenance_x18),\n maxOpenInterest: symbol.max_open_interest_x18\n ? removeDecimals(symbol.max_open_interest_x18)\n : null,\n exchangeRate: symbol.exchange_rate_x18\n ? removeDecimals(symbol.exchange_rate_x18)\n : null,\n tradingStatus: symbol.trading_status as IndexerV2TradingStatus,\n isolatedOnly: symbol.isolated_only,\n marketHours: symbol.market_hours\n ? mapIndexerV2MarketHours(symbol.market_hours)\n : null,\n boostType: symbol.boost_type ?? null,\n takerMultiplier: symbol.taker_multiplier ?? null,\n makerMultiplier: symbol.maker_multiplier ?? null,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"dataMappers.cjs","names":["ProductEngineType","toBigNumber"],"sources":["../src/dataMappers.ts"],"sourcesContent":["import {\n mapEngineServerPerpProduct,\n mapEngineServerSpotProduct,\n} from '@nadohq/engine-client';\nimport {\n getRecvTimeFromOrderNonce,\n mapValues,\n Market,\n PerpMarket,\n ProductEngineType,\n removeDecimals,\n SpotMarket,\n subaccountFromHex,\n toBigNumber,\n toIntegerString,\n unpackOrderAppendix,\n} from '@nadohq/shared';\nimport {\n Candlestick,\n GetIndexerPortfolioResponse,\n IndexerEvent,\n IndexerEventWithTx,\n IndexerFundingRate,\n IndexerFundingRateHistoryEntry,\n IndexerLeaderboardContest,\n IndexerLeaderboardParticipant,\n IndexerLeaderboardRegistration,\n IndexerMaker,\n IndexerMarketSnapshot,\n IndexerMatchEventBalances,\n IndexerNlpSnapshot,\n IndexerOrder,\n IndexerPerpBalance,\n IndexerPerpPrices,\n IndexerPortfolioPoint,\n IndexerProductPayment,\n IndexerServerBalance,\n IndexerServerCandlestick,\n IndexerServerEvent,\n IndexerServerFundingRate,\n IndexerServerFundingRateHistoryEntry,\n IndexerServerLeaderboardContest,\n IndexerServerLeaderboardPosition,\n IndexerServerLeaderboardRegistration,\n IndexerServerMaker,\n IndexerServerMarketSnapshot,\n IndexerServerMatchEventBalances,\n IndexerServerNlpSnapshot,\n IndexerServerOrder,\n IndexerServerPerpPrices,\n IndexerServerPortfolioPoint,\n IndexerServerPortfolioResponse,\n IndexerServerProduct,\n IndexerServerProductPayment,\n IndexerServerSnapshotsInterval,\n IndexerServerTx,\n IndexerServerV2MarketHours,\n IndexerServerV2Symbol,\n IndexerServerV2TickerResponse,\n IndexerSnapshotsIntervalParams,\n IndexerSpotBalance,\n IndexerV2MarketHours,\n IndexerV2Symbol,\n IndexerV2TickerResponse,\n IndexerV2TradingStatus,\n} from './types';\n\nexport function mapSnapshotsIntervalToServerParams(\n params: IndexerSnapshotsIntervalParams,\n): IndexerServerSnapshotsInterval {\n return {\n count: params.limit,\n max_time: params.maxTimeInclusive\n ? toIntegerString(params.maxTimeInclusive)\n : undefined,\n granularity: params.granularity,\n };\n}\n\nexport function mapIndexerServerProduct(product: IndexerServerProduct): Market {\n if ('spot' in product) {\n return mapEngineServerSpotProduct(product.spot);\n }\n return mapEngineServerPerpProduct(product.perp);\n}\n\nexport function mapIndexerServerBalance(\n balance: IndexerServerBalance,\n): IndexerSpotBalance | IndexerPerpBalance {\n if ('spot' in balance) {\n return {\n amount: toBigNumber(balance.spot.balance.amount),\n productId: balance.spot.product_id,\n type: ProductEngineType.SPOT,\n };\n }\n return {\n amount: toBigNumber(balance.perp.balance.amount),\n productId: balance.perp.product_id,\n type: ProductEngineType.PERP,\n vQuoteBalance: toBigNumber(balance.perp.balance.v_quote_balance),\n };\n}\n\nexport function mapIndexerOrder(order: IndexerServerOrder): IndexerOrder {\n const appendix = unpackOrderAppendix(order.appendix);\n return {\n amount: toBigNumber(order.amount),\n digest: order.digest,\n expiration: Number(order.expiration),\n appendix,\n nonce: toBigNumber(order.nonce),\n isolated: order.isolated,\n recvTimeSeconds: getRecvTimeFromOrderNonce(order.nonce) / 1000,\n price: removeDecimals(order.price_x18),\n productId: order.product_id,\n subaccount: order.subaccount,\n submissionIndex: order.submission_idx,\n lastFillSubmissionIndex: order.last_fill_submission_idx,\n baseFilled: toBigNumber(order.base_filled),\n quoteFilled: toBigNumber(order.quote_filled),\n totalFee: toBigNumber(order.fee),\n builderFee: toBigNumber(order.builder_fee),\n realizedPnl: toBigNumber(order.realized_pnl),\n closedAmount: toBigNumber(order.closed_amount),\n closedNetEntry: toBigNumber(order.closed_net_entry),\n preCloseMargin: order.closed_margin\n ? toBigNumber(order.closed_margin)\n : null,\n firstFillTimestamp: toBigNumber(order.first_fill_timestamp),\n lastFillTimestamp: toBigNumber(order.last_fill_timestamp),\n preBalances: mapIndexerMatchEventBalances(order.pre_balance),\n postBalances: mapIndexerMatchEventBalances(order.post_balance),\n };\n}\n\nexport function mapIndexerEvent(event: IndexerServerEvent): IndexerEvent {\n const eventState: IndexerEvent['state'] = (() => {\n // Assume backend data is consistent\n if ('spot' in event.pre_balance) {\n return {\n type: ProductEngineType.SPOT,\n market: mapIndexerServerProduct(event.product) as SpotMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerSpotBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerSpotBalance,\n };\n }\n return {\n type: ProductEngineType.PERP,\n market: mapIndexerServerProduct(event.product) as PerpMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerPerpBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerPerpBalance,\n };\n })();\n\n return {\n eventType: event.event_type,\n productId: event.product_id,\n isolated: event.isolated,\n isolatedProductId: event.isolated_product_id,\n state: eventState,\n subaccount: event.subaccount,\n submissionIndex: event.submission_idx,\n trackedVars: {\n netEntryCumulative: toBigNumber(event.net_entry_cumulative),\n netEntryUnrealized: toBigNumber(event.net_entry_unrealized),\n netFundingCumulative: toBigNumber(event.net_funding_cumulative),\n netFundingUnrealized: toBigNumber(event.net_funding_unrealized),\n netInterestCumulative: toBigNumber(event.net_interest_cumulative),\n netInterestUnrealized: toBigNumber(event.net_interest_unrealized),\n quoteVolumeCumulative: toBigNumber(event.quote_volume_cumulative),\n },\n };\n}\n\nexport function mapIndexerEventWithTx(\n event: IndexerServerEvent,\n tx: IndexerServerTx,\n): IndexerEventWithTx {\n return {\n timestamp: toBigNumber(tx.timestamp),\n tx: tx.tx,\n ...mapIndexerEvent(event),\n };\n}\n\nexport function mapIndexerMatchEventBalances(\n eventBalances: IndexerServerMatchEventBalances,\n): IndexerMatchEventBalances {\n return {\n base: mapIndexerServerBalance(eventBalances.base),\n quote: eventBalances.quote\n ? (mapIndexerServerBalance(eventBalances.quote) as IndexerSpotBalance)\n : undefined,\n };\n}\n\nexport function mapIndexerProductPayment(\n payment: IndexerServerProductPayment,\n): IndexerProductPayment {\n return {\n submissionIndex: payment.idx,\n timestamp: toBigNumber(payment.timestamp),\n paymentAmount: toBigNumber(payment.amount),\n balanceAmount: toBigNumber(payment.balance_amount),\n annualPaymentRate: removeDecimals(payment.rate_x18),\n oraclePrice: removeDecimals(payment.oracle_price_x18),\n isolated: payment.isolated,\n productId: payment.product_id,\n isolatedProductId: payment.isolated_product_id,\n };\n}\n\nexport function mapIndexerPerpPrices(\n perpPrices: IndexerServerPerpPrices,\n): IndexerPerpPrices {\n return {\n indexPrice: removeDecimals(perpPrices.index_price_x18),\n markPrice: removeDecimals(perpPrices.mark_price_x18),\n updateTime: toBigNumber(perpPrices.update_time),\n productId: perpPrices.product_id,\n };\n}\n\nexport function mapIndexerFundingRate(\n fundingRate: IndexerServerFundingRate,\n): IndexerFundingRate {\n return {\n fundingRate: removeDecimals(fundingRate.funding_rate_x18),\n updateTime: toBigNumber(fundingRate.update_time),\n productId: fundingRate.product_id,\n };\n}\n\nexport function mapIndexerFundingRateHistory(\n entry: IndexerServerFundingRateHistoryEntry,\n): IndexerFundingRateHistoryEntry {\n return {\n productId: entry.product_id,\n timestamp: toBigNumber(entry.timestamp),\n fundingRateFrac: removeDecimals(entry.funding_rate_x18),\n };\n}\n\nfunction mapIndexerPortfolioPoint([\n timestamp,\n value,\n]: IndexerServerPortfolioPoint): IndexerPortfolioPoint {\n return {\n timestamp: toBigNumber(timestamp),\n value: toBigNumber(value),\n };\n}\n\nexport function mapIndexerPortfolio(\n response: IndexerServerPortfolioResponse,\n): GetIndexerPortfolioResponse {\n return Object.fromEntries(\n response.map(([period, history]) => [\n period,\n {\n accountValueHistory: history.accountValueHistory.map(\n mapIndexerPortfolioPoint,\n ),\n pnlHistory: history.pnlHistory.map(mapIndexerPortfolioPoint),\n volume: toBigNumber(history.vlm),\n },\n ]),\n ) as GetIndexerPortfolioResponse;\n}\n\nexport function mapIndexerMakerStatistics(\n maker: IndexerServerMaker,\n): IndexerMaker {\n return {\n address: maker.address,\n snapshots: maker.data.map((makerData) => {\n return {\n timestamp: toBigNumber(makerData.timestamp),\n makerFee: toBigNumber(makerData.maker_fee),\n uptime: toBigNumber(makerData.uptime),\n sumQMin: toBigNumber(makerData.sum_q_min),\n qScore: toBigNumber(makerData.q_score),\n makerShare: toBigNumber(makerData.maker_share),\n expectedMakerReward: toBigNumber(makerData.expected_maker_reward),\n };\n }),\n };\n}\n\nexport function mapIndexerLeaderboardPosition(\n position: IndexerServerLeaderboardPosition,\n): IndexerLeaderboardParticipant {\n const tracks = mapValues(position.tracks, (trackData) => ({\n value: toBigNumber(trackData.value),\n rank: toBigNumber(trackData.rank),\n qualificationStatus: trackData.qualification_status,\n }));\n\n return {\n subaccount: subaccountFromHex(position.subaccount),\n contestId: position.contest_id,\n accountValue: toBigNumber(position.account_value),\n updateTime: toBigNumber(position.update_time),\n tracks,\n socialAccounts: position.social_accounts.map((account) => ({\n provider: account.provider,\n username: account.username,\n displayName: account.display_name,\n profileImageUrl: account.profile_image_url,\n })),\n };\n}\n\nexport function mapIndexerLeaderboardRegistration(\n registration: IndexerServerLeaderboardRegistration,\n): IndexerLeaderboardRegistration {\n return {\n subaccount: subaccountFromHex(registration.subaccount),\n contestId: registration.contest_id,\n updateTime: toBigNumber(registration.update_time),\n };\n}\n\nexport function mapIndexerLeaderboardContest(\n contest: IndexerServerLeaderboardContest,\n): IndexerLeaderboardContest {\n const startTime = toBigNumber(contest.start_time);\n const endTime = toBigNumber(contest.end_time);\n\n return {\n contestId: contest.contest_id,\n startTime,\n endTime,\n totalParticipants: toBigNumber(contest.count),\n requiredProductIds: contest.product_ids,\n active: contest.active,\n lastUpdated: toBigNumber(contest.last_updated),\n title: contest.title,\n description: contest.description,\n tracks: contest.tracks.map((track) => ({\n trackId: track.track_id,\n rankType: track.rank_type,\n sortOrder: track.sort_order,\n accountValueThreshold: toBigNumber(track.threshold),\n volumeThreshold: toBigNumber(track.volume_threshold),\n })),\n };\n}\n\nexport function mapIndexerCandlesticks(\n candlestick: IndexerServerCandlestick,\n): Candlestick {\n return {\n close: removeDecimals(candlestick.close_x18),\n high: removeDecimals(candlestick.high_x18),\n low: removeDecimals(candlestick.low_x18),\n open: removeDecimals(candlestick.open_x18),\n time: toBigNumber(candlestick.timestamp),\n volume: toBigNumber(candlestick.volume),\n };\n}\n\nexport function mapIndexerMarketSnapshot(\n snapshot: IndexerServerMarketSnapshot,\n): IndexerMarketSnapshot {\n return {\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeUsers: toBigNumber(snapshot.cumulative_users),\n dailyActiveUsers: toBigNumber(snapshot.daily_active_users),\n tvl: toBigNumber(snapshot.tvl),\n borrowRates: mapValues(snapshot.borrow_rates, (value) =>\n removeDecimals(value),\n ),\n cumulativeLiquidationAmounts: mapValues(\n snapshot.cumulative_liquidation_amounts,\n toBigNumber,\n ),\n cumulativeMakerFees: mapValues(snapshot.cumulative_maker_fees, toBigNumber),\n cumulativeSequencerFees: mapValues(\n snapshot.cumulative_sequencer_fees,\n toBigNumber,\n ),\n cumulativeTakerFees: mapValues(snapshot.cumulative_taker_fees, toBigNumber),\n cumulativeTrades: mapValues(snapshot.cumulative_trades, toBigNumber),\n cumulativeVolumes: mapValues(snapshot.cumulative_volumes, toBigNumber),\n depositRates: mapValues(snapshot.deposit_rates, (value) =>\n removeDecimals(value),\n ),\n fundingRates: mapValues(snapshot.funding_rates, (value) =>\n removeDecimals(value),\n ),\n openInterestsQuote: mapValues(snapshot.open_interests, toBigNumber),\n totalBorrows: mapValues(snapshot.total_borrows, toBigNumber),\n totalDeposits: mapValues(snapshot.total_deposits, toBigNumber),\n cumulativeTradeSizes: mapValues(\n snapshot.cumulative_trade_sizes,\n toBigNumber,\n ),\n cumulativeInflows: mapValues(snapshot.cumulative_inflows, toBigNumber),\n cumulativeOutflows: mapValues(snapshot.cumulative_outflows, toBigNumber),\n oraclePrices: mapValues(snapshot.oracle_prices, (value) =>\n removeDecimals(value),\n ),\n };\n}\n\nexport function mapIndexerNlpSnapshot(\n snapshot: IndexerServerNlpSnapshot,\n): IndexerNlpSnapshot {\n return {\n submissionIndex: snapshot.submission_idx,\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeBurnAmountQuote: toBigNumber(snapshot.cumulative_burn_quote),\n cumulativeMintAmountQuote: toBigNumber(snapshot.cumulative_mint_quote),\n cumulativePnl: toBigNumber(snapshot.cumulative_pnl),\n cumulativeTrades: toBigNumber(snapshot.cumulative_trades),\n cumulativeVolume: toBigNumber(snapshot.cumulative_volume),\n depositors: toBigNumber(snapshot.depositors),\n oraclePrice: removeDecimals(snapshot.oracle_price_x18),\n tvl: toBigNumber(snapshot.tvl),\n };\n}\n\nexport function mapIndexerV2Ticker(\n ticker: IndexerServerV2TickerResponse,\n): IndexerV2TickerResponse {\n return {\n productId: ticker.product_id,\n tickerId: ticker.ticker_id,\n baseCurrency: ticker.base_currency,\n quoteCurrency: ticker.quote_currency,\n lastPrice: ticker.last_price,\n baseVolume: ticker.base_volume,\n quoteVolume: ticker.quote_volume,\n priceChangePercent24h: ticker.price_change_percent_24h,\n };\n}\n\nexport function mapIndexerV2MarketHours(\n hours: IndexerServerV2MarketHours,\n): IndexerV2MarketHours {\n return {\n isOpen: hours.is_open,\n reason: hours.reason,\n nextClose: hours.next_close,\n nextOpen: hours.next_open,\n };\n}\n\nexport function mapIndexerV2Symbols(\n symbol: IndexerServerV2Symbol,\n): IndexerV2Symbol {\n return {\n type: symbol.type,\n productId: symbol.product_id,\n symbol: symbol.symbol,\n priceIncrement: removeDecimals(symbol.price_increment_x18),\n sizeIncrement: symbol.size_increment,\n minSize: symbol.min_size,\n makerFeeRate: removeDecimals(symbol.maker_fee_rate_x18),\n takerFeeRate: removeDecimals(symbol.taker_fee_rate_x18),\n longWeightInitial: removeDecimals(symbol.long_weight_initial_x18),\n longWeightMaintenance: removeDecimals(symbol.long_weight_maintenance_x18),\n maxOpenInterest: symbol.max_open_interest_x18\n ? removeDecimals(symbol.max_open_interest_x18)\n : null,\n exchangeRate: symbol.exchange_rate_x18\n ? removeDecimals(symbol.exchange_rate_x18)\n : null,\n tradingStatus: symbol.trading_status as IndexerV2TradingStatus,\n isolatedOnly: symbol.isolated_only,\n marketHours: symbol.market_hours\n ? mapIndexerV2MarketHours(symbol.market_hours)\n : null,\n boostType: symbol.boost_type ?? null,\n takerMultiplier: symbol.taker_multiplier ?? null,\n makerMultiplier: symbol.maker_multiplier ?? null,\n };\n}\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { C as IndexerServerTx, _ as IndexerServerOrder, d as IndexerServerMarketSnapshot, h as IndexerServerNlpSnapshot, i as IndexerServerLeaderboardContest, l as IndexerServerMaker, m as IndexerServerMatchEventBalances, n as IndexerServerCandlestick, o as IndexerServerLeaderboardPosition, r as IndexerServerEvent, s as IndexerServerLeaderboardRegistration, t as IndexerServerBalance, v as IndexerServerProduct, x as IndexerServerSnapshotsInterval, y as IndexerServerProductPayment } from "./serverModelTypes-sQOL10Bi.cjs";
2
- import { C as IndexerServerFundingRate, Ft as IndexerServerV2Symbol, Lt as IndexerServerV2TickerResponse, Pt as IndexerServerV2MarketHours, ut as IndexerServerPerpPrices, w as IndexerServerFundingRateHistoryEntry } from "./serverTypes-E311idZv.cjs";
3
- import { At as IndexerEventWithTx, Bt as IndexerMarketSnapshot, Et as IndexerEvent, Ft as IndexerLeaderboardParticipant, Gt as IndexerOrder, Ht as IndexerMatchEventBalances, It as IndexerLeaderboardRegistration, Kt as IndexerPerpBalance, Mt as IndexerFundingRateHistoryEntry, Nt as IndexerLeaderboardContest, Qt as IndexerSnapshotsIntervalParams, Rt as IndexerMaker, Ut as IndexerNlpSnapshot, Yt as IndexerProductPayment, en as IndexerSpotBalance, in as IndexerV2TickerResponse, jt as IndexerFundingRate, nn as IndexerV2MarketHours, qt as IndexerPerpPrices, rn as IndexerV2Symbol, t as Candlestick } from "./clientTypes-C6gfQzsU.cjs";
2
+ import { Bt as IndexerServerV2Symbol, C as IndexerServerFundingRate, Ht as IndexerServerV2TickerResponse, bt as IndexerServerPortfolioResponse, ut as IndexerServerPerpPrices, w as IndexerServerFundingRateHistoryEntry, zt as IndexerServerV2MarketHours } from "./serverTypes-BNCw3_T1.cjs";
3
+ import { Bt as IndexerMaker, Ft as IndexerLeaderboardContest, Gt as IndexerNlpSnapshot, Ht as IndexerMarketSnapshot, Jt as IndexerPerpBalance, Lt as IndexerLeaderboardParticipant, Mt as IndexerEventWithTx, Nt as IndexerFundingRate, Ot as IndexerEvent, Pt as IndexerFundingRateHistoryEntry, Rt as IndexerLeaderboardRegistration, Wt as IndexerMatchEventBalances, Yt as IndexerPerpPrices, an as IndexerSpotBalance, at as GetIndexerPortfolioResponse, cn as IndexerV2Symbol, en as IndexerProductPayment, ln as IndexerV2TickerResponse, qt as IndexerOrder, rn as IndexerSnapshotsIntervalParams, sn as IndexerV2MarketHours, t as Candlestick } from "./clientTypes-pI3pxxup.cjs";
4
4
  import { Market } from "@nadohq/shared";
5
5
 
6
6
  //#region src/dataMappers.d.ts
@@ -15,6 +15,7 @@ declare function mapIndexerProductPayment(payment: IndexerServerProductPayment):
15
15
  declare function mapIndexerPerpPrices(perpPrices: IndexerServerPerpPrices): IndexerPerpPrices;
16
16
  declare function mapIndexerFundingRate(fundingRate: IndexerServerFundingRate): IndexerFundingRate;
17
17
  declare function mapIndexerFundingRateHistory(entry: IndexerServerFundingRateHistoryEntry): IndexerFundingRateHistoryEntry;
18
+ declare function mapIndexerPortfolio(response: IndexerServerPortfolioResponse): GetIndexerPortfolioResponse;
18
19
  declare function mapIndexerMakerStatistics(maker: IndexerServerMaker): IndexerMaker;
19
20
  declare function mapIndexerLeaderboardPosition(position: IndexerServerLeaderboardPosition): IndexerLeaderboardParticipant;
20
21
  declare function mapIndexerLeaderboardRegistration(registration: IndexerServerLeaderboardRegistration): IndexerLeaderboardRegistration;
@@ -26,5 +27,5 @@ declare function mapIndexerV2Ticker(ticker: IndexerServerV2TickerResponse): Inde
26
27
  declare function mapIndexerV2MarketHours(hours: IndexerServerV2MarketHours): IndexerV2MarketHours;
27
28
  declare function mapIndexerV2Symbols(symbol: IndexerServerV2Symbol): IndexerV2Symbol;
28
29
  //#endregion
29
- export { mapIndexerCandlesticks, mapIndexerEvent, mapIndexerEventWithTx, mapIndexerFundingRate, mapIndexerFundingRateHistory, mapIndexerLeaderboardContest, mapIndexerLeaderboardPosition, mapIndexerLeaderboardRegistration, mapIndexerMakerStatistics, mapIndexerMarketSnapshot, mapIndexerMatchEventBalances, mapIndexerNlpSnapshot, mapIndexerOrder, mapIndexerPerpPrices, mapIndexerProductPayment, mapIndexerServerBalance, mapIndexerServerProduct, mapIndexerV2MarketHours, mapIndexerV2Symbols, mapIndexerV2Ticker, mapSnapshotsIntervalToServerParams };
30
+ export { mapIndexerCandlesticks, mapIndexerEvent, mapIndexerEventWithTx, mapIndexerFundingRate, mapIndexerFundingRateHistory, mapIndexerLeaderboardContest, mapIndexerLeaderboardPosition, mapIndexerLeaderboardRegistration, mapIndexerMakerStatistics, mapIndexerMarketSnapshot, mapIndexerMatchEventBalances, mapIndexerNlpSnapshot, mapIndexerOrder, mapIndexerPerpPrices, mapIndexerPortfolio, mapIndexerProductPayment, mapIndexerServerBalance, mapIndexerServerProduct, mapIndexerV2MarketHours, mapIndexerV2Symbols, mapIndexerV2Ticker, mapSnapshotsIntervalToServerParams };
30
31
  //# sourceMappingURL=dataMappers.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataMappers.d.cts","names":[],"sources":["../src/src/dataMappers.ts"],"mappings":";;;;;;iBA+DgB,kCAAA,CACd,MAAA,EAAQ,8BAAA,GACP,8BAA8B;AAAA,iBAUjB,uBAAA,CAAwB,OAAA,EAAS,oBAAA,GAAuB,MAAM;AAAA,iBAO9D,uBAAA,CACd,OAAA,EAAS,oBAAA,GACR,kBAAA,GAAqB,kBAAA;AAAA,iBAgBR,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBAgCxD,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBA+CxD,qBAAA,CACd,KAAA,EAAO,kBAAA,EACP,EAAA,EAAI,eAAA,GACH,kBAAA;AAAA,iBAQa,4BAAA,CACd,aAAA,EAAe,+BAAA,GACd,yBAAyB;AAAA,iBASZ,wBAAA,CACd,OAAA,EAAS,2BAAA,GACR,qBAAqB;AAAA,iBAcR,oBAAA,CACd,UAAA,EAAY,uBAAA,GACX,iBAAiB;AAAA,iBASJ,qBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,kBAAkB;AAAA,iBAQL,4BAAA,CACd,KAAA,EAAO,oCAAA,GACN,8BAA8B;AAAA,iBAQjB,yBAAA,CACd,KAAA,EAAO,kBAAA,GACN,YAAY;AAAA,iBAiBC,6BAAA,CACd,QAAA,EAAU,gCAAA,GACT,6BAA6B;AAAA,iBAsBhB,iCAAA,CACd,YAAA,EAAc,oCAAA,GACb,8BAA8B;AAAA,iBAQjB,4BAAA,CACd,OAAA,EAAS,+BAAA,GACR,yBAAyB;AAAA,iBAwBZ,sBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,WAAW;AAAA,iBAWE,wBAAA,CACd,QAAA,EAAU,2BAAA,GACT,qBAAqB;AAAA,iBA0CR,qBAAA,CACd,QAAA,EAAU,wBAAA,GACT,kBAAkB;AAAA,iBAeL,kBAAA,CACd,MAAA,EAAQ,6BAAA,GACP,uBAAuB;AAAA,iBAaV,uBAAA,CACd,KAAA,EAAO,0BAAA,GACN,oBAAoB;AAAA,iBASP,mBAAA,CACd,MAAA,EAAQ,qBAAA,GACP,eAAe"}
1
+ {"version":3,"file":"dataMappers.d.cts","names":[],"sources":["../src/src/dataMappers.ts"],"mappings":";;;;;;iBAmEgB,kCAAA,CACd,MAAA,EAAQ,8BAAA,GACP,8BAA8B;AAAA,iBAUjB,uBAAA,CAAwB,OAAA,EAAS,oBAAA,GAAuB,MAAM;AAAA,iBAO9D,uBAAA,CACd,OAAA,EAAS,oBAAA,GACR,kBAAA,GAAqB,kBAAA;AAAA,iBAgBR,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBAgCxD,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBA+CxD,qBAAA,CACd,KAAA,EAAO,kBAAA,EACP,EAAA,EAAI,eAAA,GACH,kBAAA;AAAA,iBAQa,4BAAA,CACd,aAAA,EAAe,+BAAA,GACd,yBAAyB;AAAA,iBASZ,wBAAA,CACd,OAAA,EAAS,2BAAA,GACR,qBAAqB;AAAA,iBAcR,oBAAA,CACd,UAAA,EAAY,uBAAA,GACX,iBAAiB;AAAA,iBASJ,qBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,kBAAkB;AAAA,iBAQL,4BAAA,CACd,KAAA,EAAO,oCAAA,GACN,8BAA8B;AAAA,iBAkBjB,mBAAA,CACd,QAAA,EAAU,8BAAA,GACT,2BAA2B;AAAA,iBAed,yBAAA,CACd,KAAA,EAAO,kBAAA,GACN,YAAY;AAAA,iBAiBC,6BAAA,CACd,QAAA,EAAU,gCAAA,GACT,6BAA6B;AAAA,iBAsBhB,iCAAA,CACd,YAAA,EAAc,oCAAA,GACb,8BAA8B;AAAA,iBAQjB,4BAAA,CACd,OAAA,EAAS,+BAAA,GACR,yBAAyB;AAAA,iBAwBZ,sBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,WAAW;AAAA,iBAWE,wBAAA,CACd,QAAA,EAAU,2BAAA,GACT,qBAAqB;AAAA,iBA0CR,qBAAA,CACd,QAAA,EAAU,wBAAA,GACT,kBAAkB;AAAA,iBAeL,kBAAA,CACd,MAAA,EAAQ,6BAAA,GACP,uBAAuB;AAAA,iBAaV,uBAAA,CACd,KAAA,EAAO,0BAAA,GACN,oBAAoB;AAAA,iBASP,mBAAA,CACd,MAAA,EAAQ,qBAAA,GACP,eAAe"}
@@ -1,6 +1,6 @@
1
1
  import { C as IndexerServerTx, _ as IndexerServerOrder, d as IndexerServerMarketSnapshot, h as IndexerServerNlpSnapshot, i as IndexerServerLeaderboardContest, l as IndexerServerMaker, m as IndexerServerMatchEventBalances, n as IndexerServerCandlestick, o as IndexerServerLeaderboardPosition, r as IndexerServerEvent, s as IndexerServerLeaderboardRegistration, t as IndexerServerBalance, v as IndexerServerProduct, x as IndexerServerSnapshotsInterval, y as IndexerServerProductPayment } from "./serverModelTypes-BwLIAkc1.js";
2
- import { C as IndexerServerFundingRate, Ft as IndexerServerV2Symbol, Lt as IndexerServerV2TickerResponse, Pt as IndexerServerV2MarketHours, ut as IndexerServerPerpPrices, w as IndexerServerFundingRateHistoryEntry } from "./serverTypes-l4ceojIp.js";
3
- import { At as IndexerEventWithTx, Bt as IndexerMarketSnapshot, Et as IndexerEvent, Ft as IndexerLeaderboardParticipant, Gt as IndexerOrder, Ht as IndexerMatchEventBalances, It as IndexerLeaderboardRegistration, Kt as IndexerPerpBalance, Mt as IndexerFundingRateHistoryEntry, Nt as IndexerLeaderboardContest, Qt as IndexerSnapshotsIntervalParams, Rt as IndexerMaker, Ut as IndexerNlpSnapshot, Yt as IndexerProductPayment, en as IndexerSpotBalance, in as IndexerV2TickerResponse, jt as IndexerFundingRate, nn as IndexerV2MarketHours, qt as IndexerPerpPrices, rn as IndexerV2Symbol, t as Candlestick } from "./clientTypes-Cke-KLUR.js";
2
+ import { Bt as IndexerServerV2Symbol, C as IndexerServerFundingRate, Ht as IndexerServerV2TickerResponse, bt as IndexerServerPortfolioResponse, ut as IndexerServerPerpPrices, w as IndexerServerFundingRateHistoryEntry, zt as IndexerServerV2MarketHours } from "./serverTypes-DkRgWlZV.js";
3
+ import { Bt as IndexerMaker, Ft as IndexerLeaderboardContest, Gt as IndexerNlpSnapshot, Ht as IndexerMarketSnapshot, Jt as IndexerPerpBalance, Lt as IndexerLeaderboardParticipant, Mt as IndexerEventWithTx, Nt as IndexerFundingRate, Ot as IndexerEvent, Pt as IndexerFundingRateHistoryEntry, Rt as IndexerLeaderboardRegistration, Wt as IndexerMatchEventBalances, Yt as IndexerPerpPrices, an as IndexerSpotBalance, at as GetIndexerPortfolioResponse, cn as IndexerV2Symbol, en as IndexerProductPayment, ln as IndexerV2TickerResponse, qt as IndexerOrder, rn as IndexerSnapshotsIntervalParams, sn as IndexerV2MarketHours, t as Candlestick } from "./clientTypes-B9CLpWyr.js";
4
4
  import { Market } from "@nadohq/shared";
5
5
 
6
6
  //#region src/dataMappers.d.ts
@@ -15,6 +15,7 @@ declare function mapIndexerProductPayment(payment: IndexerServerProductPayment):
15
15
  declare function mapIndexerPerpPrices(perpPrices: IndexerServerPerpPrices): IndexerPerpPrices;
16
16
  declare function mapIndexerFundingRate(fundingRate: IndexerServerFundingRate): IndexerFundingRate;
17
17
  declare function mapIndexerFundingRateHistory(entry: IndexerServerFundingRateHistoryEntry): IndexerFundingRateHistoryEntry;
18
+ declare function mapIndexerPortfolio(response: IndexerServerPortfolioResponse): GetIndexerPortfolioResponse;
18
19
  declare function mapIndexerMakerStatistics(maker: IndexerServerMaker): IndexerMaker;
19
20
  declare function mapIndexerLeaderboardPosition(position: IndexerServerLeaderboardPosition): IndexerLeaderboardParticipant;
20
21
  declare function mapIndexerLeaderboardRegistration(registration: IndexerServerLeaderboardRegistration): IndexerLeaderboardRegistration;
@@ -26,5 +27,5 @@ declare function mapIndexerV2Ticker(ticker: IndexerServerV2TickerResponse): Inde
26
27
  declare function mapIndexerV2MarketHours(hours: IndexerServerV2MarketHours): IndexerV2MarketHours;
27
28
  declare function mapIndexerV2Symbols(symbol: IndexerServerV2Symbol): IndexerV2Symbol;
28
29
  //#endregion
29
- export { mapIndexerCandlesticks, mapIndexerEvent, mapIndexerEventWithTx, mapIndexerFundingRate, mapIndexerFundingRateHistory, mapIndexerLeaderboardContest, mapIndexerLeaderboardPosition, mapIndexerLeaderboardRegistration, mapIndexerMakerStatistics, mapIndexerMarketSnapshot, mapIndexerMatchEventBalances, mapIndexerNlpSnapshot, mapIndexerOrder, mapIndexerPerpPrices, mapIndexerProductPayment, mapIndexerServerBalance, mapIndexerServerProduct, mapIndexerV2MarketHours, mapIndexerV2Symbols, mapIndexerV2Ticker, mapSnapshotsIntervalToServerParams };
30
+ export { mapIndexerCandlesticks, mapIndexerEvent, mapIndexerEventWithTx, mapIndexerFundingRate, mapIndexerFundingRateHistory, mapIndexerLeaderboardContest, mapIndexerLeaderboardPosition, mapIndexerLeaderboardRegistration, mapIndexerMakerStatistics, mapIndexerMarketSnapshot, mapIndexerMatchEventBalances, mapIndexerNlpSnapshot, mapIndexerOrder, mapIndexerPerpPrices, mapIndexerPortfolio, mapIndexerProductPayment, mapIndexerServerBalance, mapIndexerServerProduct, mapIndexerV2MarketHours, mapIndexerV2Symbols, mapIndexerV2Ticker, mapSnapshotsIntervalToServerParams };
30
31
  //# sourceMappingURL=dataMappers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataMappers.d.ts","names":[],"sources":["../src/src/dataMappers.ts"],"mappings":";;;;;;iBA+DgB,kCAAA,CACd,MAAA,EAAQ,8BAAA,GACP,8BAA8B;AAAA,iBAUjB,uBAAA,CAAwB,OAAA,EAAS,oBAAA,GAAuB,MAAM;AAAA,iBAO9D,uBAAA,CACd,OAAA,EAAS,oBAAA,GACR,kBAAA,GAAqB,kBAAA;AAAA,iBAgBR,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBAgCxD,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBA+CxD,qBAAA,CACd,KAAA,EAAO,kBAAA,EACP,EAAA,EAAI,eAAA,GACH,kBAAA;AAAA,iBAQa,4BAAA,CACd,aAAA,EAAe,+BAAA,GACd,yBAAyB;AAAA,iBASZ,wBAAA,CACd,OAAA,EAAS,2BAAA,GACR,qBAAqB;AAAA,iBAcR,oBAAA,CACd,UAAA,EAAY,uBAAA,GACX,iBAAiB;AAAA,iBASJ,qBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,kBAAkB;AAAA,iBAQL,4BAAA,CACd,KAAA,EAAO,oCAAA,GACN,8BAA8B;AAAA,iBAQjB,yBAAA,CACd,KAAA,EAAO,kBAAA,GACN,YAAY;AAAA,iBAiBC,6BAAA,CACd,QAAA,EAAU,gCAAA,GACT,6BAA6B;AAAA,iBAsBhB,iCAAA,CACd,YAAA,EAAc,oCAAA,GACb,8BAA8B;AAAA,iBAQjB,4BAAA,CACd,OAAA,EAAS,+BAAA,GACR,yBAAyB;AAAA,iBAwBZ,sBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,WAAW;AAAA,iBAWE,wBAAA,CACd,QAAA,EAAU,2BAAA,GACT,qBAAqB;AAAA,iBA0CR,qBAAA,CACd,QAAA,EAAU,wBAAA,GACT,kBAAkB;AAAA,iBAeL,kBAAA,CACd,MAAA,EAAQ,6BAAA,GACP,uBAAuB;AAAA,iBAaV,uBAAA,CACd,KAAA,EAAO,0BAAA,GACN,oBAAoB;AAAA,iBASP,mBAAA,CACd,MAAA,EAAQ,qBAAA,GACP,eAAe"}
1
+ {"version":3,"file":"dataMappers.d.ts","names":[],"sources":["../src/src/dataMappers.ts"],"mappings":";;;;;;iBAmEgB,kCAAA,CACd,MAAA,EAAQ,8BAAA,GACP,8BAA8B;AAAA,iBAUjB,uBAAA,CAAwB,OAAA,EAAS,oBAAA,GAAuB,MAAM;AAAA,iBAO9D,uBAAA,CACd,OAAA,EAAS,oBAAA,GACR,kBAAA,GAAqB,kBAAA;AAAA,iBAgBR,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBAgCxD,eAAA,CAAgB,KAAA,EAAO,kBAAA,GAAqB,YAAY;AAAA,iBA+CxD,qBAAA,CACd,KAAA,EAAO,kBAAA,EACP,EAAA,EAAI,eAAA,GACH,kBAAA;AAAA,iBAQa,4BAAA,CACd,aAAA,EAAe,+BAAA,GACd,yBAAyB;AAAA,iBASZ,wBAAA,CACd,OAAA,EAAS,2BAAA,GACR,qBAAqB;AAAA,iBAcR,oBAAA,CACd,UAAA,EAAY,uBAAA,GACX,iBAAiB;AAAA,iBASJ,qBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,kBAAkB;AAAA,iBAQL,4BAAA,CACd,KAAA,EAAO,oCAAA,GACN,8BAA8B;AAAA,iBAkBjB,mBAAA,CACd,QAAA,EAAU,8BAAA,GACT,2BAA2B;AAAA,iBAed,yBAAA,CACd,KAAA,EAAO,kBAAA,GACN,YAAY;AAAA,iBAiBC,6BAAA,CACd,QAAA,EAAU,gCAAA,GACT,6BAA6B;AAAA,iBAsBhB,iCAAA,CACd,YAAA,EAAc,oCAAA,GACb,8BAA8B;AAAA,iBAQjB,4BAAA,CACd,OAAA,EAAS,+BAAA,GACR,yBAAyB;AAAA,iBAwBZ,sBAAA,CACd,WAAA,EAAa,wBAAA,GACZ,WAAW;AAAA,iBAWE,wBAAA,CACd,QAAA,EAAU,2BAAA,GACT,qBAAqB;AAAA,iBA0CR,qBAAA,CACd,QAAA,EAAU,wBAAA,GACT,kBAAkB;AAAA,iBAeL,kBAAA,CACd,MAAA,EAAQ,6BAAA,GACP,uBAAuB;AAAA,iBAaV,uBAAA,CACd,KAAA,EAAO,0BAAA,GACN,oBAAoB;AAAA,iBASP,mBAAA,CACd,MAAA,EAAQ,qBAAA,GACP,eAAe"}
@@ -136,6 +136,19 @@ function mapIndexerFundingRateHistory(entry) {
136
136
  fundingRateFrac: removeDecimals(entry.funding_rate_x18)
137
137
  };
138
138
  }
139
+ function mapIndexerPortfolioPoint([timestamp, value]) {
140
+ return {
141
+ timestamp: toBigNumber(timestamp),
142
+ value: toBigNumber(value)
143
+ };
144
+ }
145
+ function mapIndexerPortfolio(response) {
146
+ return Object.fromEntries(response.map(([period, history]) => [period, {
147
+ accountValueHistory: history.accountValueHistory.map(mapIndexerPortfolioPoint),
148
+ pnlHistory: history.pnlHistory.map(mapIndexerPortfolioPoint),
149
+ volume: toBigNumber(history.vlm)
150
+ }]));
151
+ }
139
152
  function mapIndexerMakerStatistics(maker) {
140
153
  return {
141
154
  address: maker.address,
@@ -292,6 +305,6 @@ function mapIndexerV2Symbols(symbol) {
292
305
  };
293
306
  }
294
307
  //#endregion
295
- export { mapIndexerCandlesticks, mapIndexerEvent, mapIndexerEventWithTx, mapIndexerFundingRate, mapIndexerFundingRateHistory, mapIndexerLeaderboardContest, mapIndexerLeaderboardPosition, mapIndexerLeaderboardRegistration, mapIndexerMakerStatistics, mapIndexerMarketSnapshot, mapIndexerMatchEventBalances, mapIndexerNlpSnapshot, mapIndexerOrder, mapIndexerPerpPrices, mapIndexerProductPayment, mapIndexerServerBalance, mapIndexerServerProduct, mapIndexerV2MarketHours, mapIndexerV2Symbols, mapIndexerV2Ticker, mapSnapshotsIntervalToServerParams };
308
+ export { mapIndexerCandlesticks, mapIndexerEvent, mapIndexerEventWithTx, mapIndexerFundingRate, mapIndexerFundingRateHistory, mapIndexerLeaderboardContest, mapIndexerLeaderboardPosition, mapIndexerLeaderboardRegistration, mapIndexerMakerStatistics, mapIndexerMarketSnapshot, mapIndexerMatchEventBalances, mapIndexerNlpSnapshot, mapIndexerOrder, mapIndexerPerpPrices, mapIndexerPortfolio, mapIndexerProductPayment, mapIndexerServerBalance, mapIndexerServerProduct, mapIndexerV2MarketHours, mapIndexerV2Symbols, mapIndexerV2Ticker, mapSnapshotsIntervalToServerParams };
296
309
 
297
310
  //# sourceMappingURL=dataMappers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataMappers.js","names":[],"sources":["../src/dataMappers.ts"],"sourcesContent":["import {\n mapEngineServerPerpProduct,\n mapEngineServerSpotProduct,\n} from '@nadohq/engine-client';\nimport {\n getRecvTimeFromOrderNonce,\n mapValues,\n Market,\n PerpMarket,\n ProductEngineType,\n removeDecimals,\n SpotMarket,\n subaccountFromHex,\n toBigNumber,\n toIntegerString,\n unpackOrderAppendix,\n} from '@nadohq/shared';\nimport {\n Candlestick,\n IndexerEvent,\n IndexerEventWithTx,\n IndexerFundingRate,\n IndexerFundingRateHistoryEntry,\n IndexerLeaderboardContest,\n IndexerLeaderboardParticipant,\n IndexerLeaderboardRegistration,\n IndexerMaker,\n IndexerMarketSnapshot,\n IndexerMatchEventBalances,\n IndexerNlpSnapshot,\n IndexerOrder,\n IndexerPerpBalance,\n IndexerPerpPrices,\n IndexerProductPayment,\n IndexerServerBalance,\n IndexerServerCandlestick,\n IndexerServerEvent,\n IndexerServerFundingRate,\n IndexerServerFundingRateHistoryEntry,\n IndexerServerLeaderboardContest,\n IndexerServerLeaderboardPosition,\n IndexerServerLeaderboardRegistration,\n IndexerServerMaker,\n IndexerServerMarketSnapshot,\n IndexerServerMatchEventBalances,\n IndexerServerNlpSnapshot,\n IndexerServerOrder,\n IndexerServerPerpPrices,\n IndexerServerProduct,\n IndexerServerProductPayment,\n IndexerServerSnapshotsInterval,\n IndexerServerTx,\n IndexerServerV2MarketHours,\n IndexerServerV2Symbol,\n IndexerServerV2TickerResponse,\n IndexerSnapshotsIntervalParams,\n IndexerSpotBalance,\n IndexerV2MarketHours,\n IndexerV2Symbol,\n IndexerV2TickerResponse,\n IndexerV2TradingStatus,\n} from './types';\n\nexport function mapSnapshotsIntervalToServerParams(\n params: IndexerSnapshotsIntervalParams,\n): IndexerServerSnapshotsInterval {\n return {\n count: params.limit,\n max_time: params.maxTimeInclusive\n ? toIntegerString(params.maxTimeInclusive)\n : undefined,\n granularity: params.granularity,\n };\n}\n\nexport function mapIndexerServerProduct(product: IndexerServerProduct): Market {\n if ('spot' in product) {\n return mapEngineServerSpotProduct(product.spot);\n }\n return mapEngineServerPerpProduct(product.perp);\n}\n\nexport function mapIndexerServerBalance(\n balance: IndexerServerBalance,\n): IndexerSpotBalance | IndexerPerpBalance {\n if ('spot' in balance) {\n return {\n amount: toBigNumber(balance.spot.balance.amount),\n productId: balance.spot.product_id,\n type: ProductEngineType.SPOT,\n };\n }\n return {\n amount: toBigNumber(balance.perp.balance.amount),\n productId: balance.perp.product_id,\n type: ProductEngineType.PERP,\n vQuoteBalance: toBigNumber(balance.perp.balance.v_quote_balance),\n };\n}\n\nexport function mapIndexerOrder(order: IndexerServerOrder): IndexerOrder {\n const appendix = unpackOrderAppendix(order.appendix);\n return {\n amount: toBigNumber(order.amount),\n digest: order.digest,\n expiration: Number(order.expiration),\n appendix,\n nonce: toBigNumber(order.nonce),\n isolated: order.isolated,\n recvTimeSeconds: getRecvTimeFromOrderNonce(order.nonce) / 1000,\n price: removeDecimals(order.price_x18),\n productId: order.product_id,\n subaccount: order.subaccount,\n submissionIndex: order.submission_idx,\n lastFillSubmissionIndex: order.last_fill_submission_idx,\n baseFilled: toBigNumber(order.base_filled),\n quoteFilled: toBigNumber(order.quote_filled),\n totalFee: toBigNumber(order.fee),\n builderFee: toBigNumber(order.builder_fee),\n realizedPnl: toBigNumber(order.realized_pnl),\n closedAmount: toBigNumber(order.closed_amount),\n closedNetEntry: toBigNumber(order.closed_net_entry),\n preCloseMargin: order.closed_margin\n ? toBigNumber(order.closed_margin)\n : null,\n firstFillTimestamp: toBigNumber(order.first_fill_timestamp),\n lastFillTimestamp: toBigNumber(order.last_fill_timestamp),\n preBalances: mapIndexerMatchEventBalances(order.pre_balance),\n postBalances: mapIndexerMatchEventBalances(order.post_balance),\n };\n}\n\nexport function mapIndexerEvent(event: IndexerServerEvent): IndexerEvent {\n const eventState: IndexerEvent['state'] = (() => {\n // Assume backend data is consistent\n if ('spot' in event.pre_balance) {\n return {\n type: ProductEngineType.SPOT,\n market: mapIndexerServerProduct(event.product) as SpotMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerSpotBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerSpotBalance,\n };\n }\n return {\n type: ProductEngineType.PERP,\n market: mapIndexerServerProduct(event.product) as PerpMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerPerpBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerPerpBalance,\n };\n })();\n\n return {\n eventType: event.event_type,\n productId: event.product_id,\n isolated: event.isolated,\n isolatedProductId: event.isolated_product_id,\n state: eventState,\n subaccount: event.subaccount,\n submissionIndex: event.submission_idx,\n trackedVars: {\n netEntryCumulative: toBigNumber(event.net_entry_cumulative),\n netEntryUnrealized: toBigNumber(event.net_entry_unrealized),\n netFundingCumulative: toBigNumber(event.net_funding_cumulative),\n netFundingUnrealized: toBigNumber(event.net_funding_unrealized),\n netInterestCumulative: toBigNumber(event.net_interest_cumulative),\n netInterestUnrealized: toBigNumber(event.net_interest_unrealized),\n quoteVolumeCumulative: toBigNumber(event.quote_volume_cumulative),\n },\n };\n}\n\nexport function mapIndexerEventWithTx(\n event: IndexerServerEvent,\n tx: IndexerServerTx,\n): IndexerEventWithTx {\n return {\n timestamp: toBigNumber(tx.timestamp),\n tx: tx.tx,\n ...mapIndexerEvent(event),\n };\n}\n\nexport function mapIndexerMatchEventBalances(\n eventBalances: IndexerServerMatchEventBalances,\n): IndexerMatchEventBalances {\n return {\n base: mapIndexerServerBalance(eventBalances.base),\n quote: eventBalances.quote\n ? (mapIndexerServerBalance(eventBalances.quote) as IndexerSpotBalance)\n : undefined,\n };\n}\n\nexport function mapIndexerProductPayment(\n payment: IndexerServerProductPayment,\n): IndexerProductPayment {\n return {\n submissionIndex: payment.idx,\n timestamp: toBigNumber(payment.timestamp),\n paymentAmount: toBigNumber(payment.amount),\n balanceAmount: toBigNumber(payment.balance_amount),\n annualPaymentRate: removeDecimals(payment.rate_x18),\n oraclePrice: removeDecimals(payment.oracle_price_x18),\n isolated: payment.isolated,\n productId: payment.product_id,\n isolatedProductId: payment.isolated_product_id,\n };\n}\n\nexport function mapIndexerPerpPrices(\n perpPrices: IndexerServerPerpPrices,\n): IndexerPerpPrices {\n return {\n indexPrice: removeDecimals(perpPrices.index_price_x18),\n markPrice: removeDecimals(perpPrices.mark_price_x18),\n updateTime: toBigNumber(perpPrices.update_time),\n productId: perpPrices.product_id,\n };\n}\n\nexport function mapIndexerFundingRate(\n fundingRate: IndexerServerFundingRate,\n): IndexerFundingRate {\n return {\n fundingRate: removeDecimals(fundingRate.funding_rate_x18),\n updateTime: toBigNumber(fundingRate.update_time),\n productId: fundingRate.product_id,\n };\n}\n\nexport function mapIndexerFundingRateHistory(\n entry: IndexerServerFundingRateHistoryEntry,\n): IndexerFundingRateHistoryEntry {\n return {\n productId: entry.product_id,\n timestamp: toBigNumber(entry.timestamp),\n fundingRateFrac: removeDecimals(entry.funding_rate_x18),\n };\n}\n\nexport function mapIndexerMakerStatistics(\n maker: IndexerServerMaker,\n): IndexerMaker {\n return {\n address: maker.address,\n snapshots: maker.data.map((makerData) => {\n return {\n timestamp: toBigNumber(makerData.timestamp),\n makerFee: toBigNumber(makerData.maker_fee),\n uptime: toBigNumber(makerData.uptime),\n sumQMin: toBigNumber(makerData.sum_q_min),\n qScore: toBigNumber(makerData.q_score),\n makerShare: toBigNumber(makerData.maker_share),\n expectedMakerReward: toBigNumber(makerData.expected_maker_reward),\n };\n }),\n };\n}\n\nexport function mapIndexerLeaderboardPosition(\n position: IndexerServerLeaderboardPosition,\n): IndexerLeaderboardParticipant {\n const tracks = mapValues(position.tracks, (trackData) => ({\n value: toBigNumber(trackData.value),\n rank: toBigNumber(trackData.rank),\n qualificationStatus: trackData.qualification_status,\n }));\n\n return {\n subaccount: subaccountFromHex(position.subaccount),\n contestId: position.contest_id,\n accountValue: toBigNumber(position.account_value),\n updateTime: toBigNumber(position.update_time),\n tracks,\n socialAccounts: position.social_accounts.map((account) => ({\n provider: account.provider,\n username: account.username,\n displayName: account.display_name,\n profileImageUrl: account.profile_image_url,\n })),\n };\n}\n\nexport function mapIndexerLeaderboardRegistration(\n registration: IndexerServerLeaderboardRegistration,\n): IndexerLeaderboardRegistration {\n return {\n subaccount: subaccountFromHex(registration.subaccount),\n contestId: registration.contest_id,\n updateTime: toBigNumber(registration.update_time),\n };\n}\n\nexport function mapIndexerLeaderboardContest(\n contest: IndexerServerLeaderboardContest,\n): IndexerLeaderboardContest {\n const startTime = toBigNumber(contest.start_time);\n const endTime = toBigNumber(contest.end_time);\n\n return {\n contestId: contest.contest_id,\n startTime,\n endTime,\n totalParticipants: toBigNumber(contest.count),\n requiredProductIds: contest.product_ids,\n active: contest.active,\n lastUpdated: toBigNumber(contest.last_updated),\n title: contest.title,\n description: contest.description,\n tracks: contest.tracks.map((track) => ({\n trackId: track.track_id,\n rankType: track.rank_type,\n sortOrder: track.sort_order,\n accountValueThreshold: toBigNumber(track.threshold),\n volumeThreshold: toBigNumber(track.volume_threshold),\n })),\n };\n}\n\nexport function mapIndexerCandlesticks(\n candlestick: IndexerServerCandlestick,\n): Candlestick {\n return {\n close: removeDecimals(candlestick.close_x18),\n high: removeDecimals(candlestick.high_x18),\n low: removeDecimals(candlestick.low_x18),\n open: removeDecimals(candlestick.open_x18),\n time: toBigNumber(candlestick.timestamp),\n volume: toBigNumber(candlestick.volume),\n };\n}\n\nexport function mapIndexerMarketSnapshot(\n snapshot: IndexerServerMarketSnapshot,\n): IndexerMarketSnapshot {\n return {\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeUsers: toBigNumber(snapshot.cumulative_users),\n dailyActiveUsers: toBigNumber(snapshot.daily_active_users),\n tvl: toBigNumber(snapshot.tvl),\n borrowRates: mapValues(snapshot.borrow_rates, (value) =>\n removeDecimals(value),\n ),\n cumulativeLiquidationAmounts: mapValues(\n snapshot.cumulative_liquidation_amounts,\n toBigNumber,\n ),\n cumulativeMakerFees: mapValues(snapshot.cumulative_maker_fees, toBigNumber),\n cumulativeSequencerFees: mapValues(\n snapshot.cumulative_sequencer_fees,\n toBigNumber,\n ),\n cumulativeTakerFees: mapValues(snapshot.cumulative_taker_fees, toBigNumber),\n cumulativeTrades: mapValues(snapshot.cumulative_trades, toBigNumber),\n cumulativeVolumes: mapValues(snapshot.cumulative_volumes, toBigNumber),\n depositRates: mapValues(snapshot.deposit_rates, (value) =>\n removeDecimals(value),\n ),\n fundingRates: mapValues(snapshot.funding_rates, (value) =>\n removeDecimals(value),\n ),\n openInterestsQuote: mapValues(snapshot.open_interests, toBigNumber),\n totalBorrows: mapValues(snapshot.total_borrows, toBigNumber),\n totalDeposits: mapValues(snapshot.total_deposits, toBigNumber),\n cumulativeTradeSizes: mapValues(\n snapshot.cumulative_trade_sizes,\n toBigNumber,\n ),\n cumulativeInflows: mapValues(snapshot.cumulative_inflows, toBigNumber),\n cumulativeOutflows: mapValues(snapshot.cumulative_outflows, toBigNumber),\n oraclePrices: mapValues(snapshot.oracle_prices, (value) =>\n removeDecimals(value),\n ),\n };\n}\n\nexport function mapIndexerNlpSnapshot(\n snapshot: IndexerServerNlpSnapshot,\n): IndexerNlpSnapshot {\n return {\n submissionIndex: snapshot.submission_idx,\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeBurnAmountQuote: toBigNumber(snapshot.cumulative_burn_quote),\n cumulativeMintAmountQuote: toBigNumber(snapshot.cumulative_mint_quote),\n cumulativePnl: toBigNumber(snapshot.cumulative_pnl),\n cumulativeTrades: toBigNumber(snapshot.cumulative_trades),\n cumulativeVolume: toBigNumber(snapshot.cumulative_volume),\n depositors: toBigNumber(snapshot.depositors),\n oraclePrice: removeDecimals(snapshot.oracle_price_x18),\n tvl: toBigNumber(snapshot.tvl),\n };\n}\n\nexport function mapIndexerV2Ticker(\n ticker: IndexerServerV2TickerResponse,\n): IndexerV2TickerResponse {\n return {\n productId: ticker.product_id,\n tickerId: ticker.ticker_id,\n baseCurrency: ticker.base_currency,\n quoteCurrency: ticker.quote_currency,\n lastPrice: ticker.last_price,\n baseVolume: ticker.base_volume,\n quoteVolume: ticker.quote_volume,\n priceChangePercent24h: ticker.price_change_percent_24h,\n };\n}\n\nexport function mapIndexerV2MarketHours(\n hours: IndexerServerV2MarketHours,\n): IndexerV2MarketHours {\n return {\n isOpen: hours.is_open,\n reason: hours.reason,\n nextClose: hours.next_close,\n nextOpen: hours.next_open,\n };\n}\n\nexport function mapIndexerV2Symbols(\n symbol: IndexerServerV2Symbol,\n): IndexerV2Symbol {\n return {\n type: symbol.type,\n productId: symbol.product_id,\n symbol: symbol.symbol,\n priceIncrement: removeDecimals(symbol.price_increment_x18),\n sizeIncrement: symbol.size_increment,\n minSize: symbol.min_size,\n makerFeeRate: removeDecimals(symbol.maker_fee_rate_x18),\n takerFeeRate: removeDecimals(symbol.taker_fee_rate_x18),\n longWeightInitial: removeDecimals(symbol.long_weight_initial_x18),\n longWeightMaintenance: removeDecimals(symbol.long_weight_maintenance_x18),\n maxOpenInterest: symbol.max_open_interest_x18\n ? removeDecimals(symbol.max_open_interest_x18)\n : null,\n exchangeRate: symbol.exchange_rate_x18\n ? removeDecimals(symbol.exchange_rate_x18)\n : null,\n tradingStatus: symbol.trading_status as IndexerV2TradingStatus,\n isolatedOnly: symbol.isolated_only,\n marketHours: symbol.market_hours\n ? mapIndexerV2MarketHours(symbol.market_hours)\n : null,\n boostType: symbol.boost_type ?? null,\n takerMultiplier: symbol.taker_multiplier ?? null,\n makerMultiplier: symbol.maker_multiplier ?? null,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"dataMappers.js","names":[],"sources":["../src/dataMappers.ts"],"sourcesContent":["import {\n mapEngineServerPerpProduct,\n mapEngineServerSpotProduct,\n} from '@nadohq/engine-client';\nimport {\n getRecvTimeFromOrderNonce,\n mapValues,\n Market,\n PerpMarket,\n ProductEngineType,\n removeDecimals,\n SpotMarket,\n subaccountFromHex,\n toBigNumber,\n toIntegerString,\n unpackOrderAppendix,\n} from '@nadohq/shared';\nimport {\n Candlestick,\n GetIndexerPortfolioResponse,\n IndexerEvent,\n IndexerEventWithTx,\n IndexerFundingRate,\n IndexerFundingRateHistoryEntry,\n IndexerLeaderboardContest,\n IndexerLeaderboardParticipant,\n IndexerLeaderboardRegistration,\n IndexerMaker,\n IndexerMarketSnapshot,\n IndexerMatchEventBalances,\n IndexerNlpSnapshot,\n IndexerOrder,\n IndexerPerpBalance,\n IndexerPerpPrices,\n IndexerPortfolioPoint,\n IndexerProductPayment,\n IndexerServerBalance,\n IndexerServerCandlestick,\n IndexerServerEvent,\n IndexerServerFundingRate,\n IndexerServerFundingRateHistoryEntry,\n IndexerServerLeaderboardContest,\n IndexerServerLeaderboardPosition,\n IndexerServerLeaderboardRegistration,\n IndexerServerMaker,\n IndexerServerMarketSnapshot,\n IndexerServerMatchEventBalances,\n IndexerServerNlpSnapshot,\n IndexerServerOrder,\n IndexerServerPerpPrices,\n IndexerServerPortfolioPoint,\n IndexerServerPortfolioResponse,\n IndexerServerProduct,\n IndexerServerProductPayment,\n IndexerServerSnapshotsInterval,\n IndexerServerTx,\n IndexerServerV2MarketHours,\n IndexerServerV2Symbol,\n IndexerServerV2TickerResponse,\n IndexerSnapshotsIntervalParams,\n IndexerSpotBalance,\n IndexerV2MarketHours,\n IndexerV2Symbol,\n IndexerV2TickerResponse,\n IndexerV2TradingStatus,\n} from './types';\n\nexport function mapSnapshotsIntervalToServerParams(\n params: IndexerSnapshotsIntervalParams,\n): IndexerServerSnapshotsInterval {\n return {\n count: params.limit,\n max_time: params.maxTimeInclusive\n ? toIntegerString(params.maxTimeInclusive)\n : undefined,\n granularity: params.granularity,\n };\n}\n\nexport function mapIndexerServerProduct(product: IndexerServerProduct): Market {\n if ('spot' in product) {\n return mapEngineServerSpotProduct(product.spot);\n }\n return mapEngineServerPerpProduct(product.perp);\n}\n\nexport function mapIndexerServerBalance(\n balance: IndexerServerBalance,\n): IndexerSpotBalance | IndexerPerpBalance {\n if ('spot' in balance) {\n return {\n amount: toBigNumber(balance.spot.balance.amount),\n productId: balance.spot.product_id,\n type: ProductEngineType.SPOT,\n };\n }\n return {\n amount: toBigNumber(balance.perp.balance.amount),\n productId: balance.perp.product_id,\n type: ProductEngineType.PERP,\n vQuoteBalance: toBigNumber(balance.perp.balance.v_quote_balance),\n };\n}\n\nexport function mapIndexerOrder(order: IndexerServerOrder): IndexerOrder {\n const appendix = unpackOrderAppendix(order.appendix);\n return {\n amount: toBigNumber(order.amount),\n digest: order.digest,\n expiration: Number(order.expiration),\n appendix,\n nonce: toBigNumber(order.nonce),\n isolated: order.isolated,\n recvTimeSeconds: getRecvTimeFromOrderNonce(order.nonce) / 1000,\n price: removeDecimals(order.price_x18),\n productId: order.product_id,\n subaccount: order.subaccount,\n submissionIndex: order.submission_idx,\n lastFillSubmissionIndex: order.last_fill_submission_idx,\n baseFilled: toBigNumber(order.base_filled),\n quoteFilled: toBigNumber(order.quote_filled),\n totalFee: toBigNumber(order.fee),\n builderFee: toBigNumber(order.builder_fee),\n realizedPnl: toBigNumber(order.realized_pnl),\n closedAmount: toBigNumber(order.closed_amount),\n closedNetEntry: toBigNumber(order.closed_net_entry),\n preCloseMargin: order.closed_margin\n ? toBigNumber(order.closed_margin)\n : null,\n firstFillTimestamp: toBigNumber(order.first_fill_timestamp),\n lastFillTimestamp: toBigNumber(order.last_fill_timestamp),\n preBalances: mapIndexerMatchEventBalances(order.pre_balance),\n postBalances: mapIndexerMatchEventBalances(order.post_balance),\n };\n}\n\nexport function mapIndexerEvent(event: IndexerServerEvent): IndexerEvent {\n const eventState: IndexerEvent['state'] = (() => {\n // Assume backend data is consistent\n if ('spot' in event.pre_balance) {\n return {\n type: ProductEngineType.SPOT,\n market: mapIndexerServerProduct(event.product) as SpotMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerSpotBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerSpotBalance,\n };\n }\n return {\n type: ProductEngineType.PERP,\n market: mapIndexerServerProduct(event.product) as PerpMarket,\n preBalance: mapIndexerServerBalance(\n event.pre_balance,\n ) as IndexerPerpBalance,\n postBalance: mapIndexerServerBalance(\n event.post_balance,\n ) as IndexerPerpBalance,\n };\n })();\n\n return {\n eventType: event.event_type,\n productId: event.product_id,\n isolated: event.isolated,\n isolatedProductId: event.isolated_product_id,\n state: eventState,\n subaccount: event.subaccount,\n submissionIndex: event.submission_idx,\n trackedVars: {\n netEntryCumulative: toBigNumber(event.net_entry_cumulative),\n netEntryUnrealized: toBigNumber(event.net_entry_unrealized),\n netFundingCumulative: toBigNumber(event.net_funding_cumulative),\n netFundingUnrealized: toBigNumber(event.net_funding_unrealized),\n netInterestCumulative: toBigNumber(event.net_interest_cumulative),\n netInterestUnrealized: toBigNumber(event.net_interest_unrealized),\n quoteVolumeCumulative: toBigNumber(event.quote_volume_cumulative),\n },\n };\n}\n\nexport function mapIndexerEventWithTx(\n event: IndexerServerEvent,\n tx: IndexerServerTx,\n): IndexerEventWithTx {\n return {\n timestamp: toBigNumber(tx.timestamp),\n tx: tx.tx,\n ...mapIndexerEvent(event),\n };\n}\n\nexport function mapIndexerMatchEventBalances(\n eventBalances: IndexerServerMatchEventBalances,\n): IndexerMatchEventBalances {\n return {\n base: mapIndexerServerBalance(eventBalances.base),\n quote: eventBalances.quote\n ? (mapIndexerServerBalance(eventBalances.quote) as IndexerSpotBalance)\n : undefined,\n };\n}\n\nexport function mapIndexerProductPayment(\n payment: IndexerServerProductPayment,\n): IndexerProductPayment {\n return {\n submissionIndex: payment.idx,\n timestamp: toBigNumber(payment.timestamp),\n paymentAmount: toBigNumber(payment.amount),\n balanceAmount: toBigNumber(payment.balance_amount),\n annualPaymentRate: removeDecimals(payment.rate_x18),\n oraclePrice: removeDecimals(payment.oracle_price_x18),\n isolated: payment.isolated,\n productId: payment.product_id,\n isolatedProductId: payment.isolated_product_id,\n };\n}\n\nexport function mapIndexerPerpPrices(\n perpPrices: IndexerServerPerpPrices,\n): IndexerPerpPrices {\n return {\n indexPrice: removeDecimals(perpPrices.index_price_x18),\n markPrice: removeDecimals(perpPrices.mark_price_x18),\n updateTime: toBigNumber(perpPrices.update_time),\n productId: perpPrices.product_id,\n };\n}\n\nexport function mapIndexerFundingRate(\n fundingRate: IndexerServerFundingRate,\n): IndexerFundingRate {\n return {\n fundingRate: removeDecimals(fundingRate.funding_rate_x18),\n updateTime: toBigNumber(fundingRate.update_time),\n productId: fundingRate.product_id,\n };\n}\n\nexport function mapIndexerFundingRateHistory(\n entry: IndexerServerFundingRateHistoryEntry,\n): IndexerFundingRateHistoryEntry {\n return {\n productId: entry.product_id,\n timestamp: toBigNumber(entry.timestamp),\n fundingRateFrac: removeDecimals(entry.funding_rate_x18),\n };\n}\n\nfunction mapIndexerPortfolioPoint([\n timestamp,\n value,\n]: IndexerServerPortfolioPoint): IndexerPortfolioPoint {\n return {\n timestamp: toBigNumber(timestamp),\n value: toBigNumber(value),\n };\n}\n\nexport function mapIndexerPortfolio(\n response: IndexerServerPortfolioResponse,\n): GetIndexerPortfolioResponse {\n return Object.fromEntries(\n response.map(([period, history]) => [\n period,\n {\n accountValueHistory: history.accountValueHistory.map(\n mapIndexerPortfolioPoint,\n ),\n pnlHistory: history.pnlHistory.map(mapIndexerPortfolioPoint),\n volume: toBigNumber(history.vlm),\n },\n ]),\n ) as GetIndexerPortfolioResponse;\n}\n\nexport function mapIndexerMakerStatistics(\n maker: IndexerServerMaker,\n): IndexerMaker {\n return {\n address: maker.address,\n snapshots: maker.data.map((makerData) => {\n return {\n timestamp: toBigNumber(makerData.timestamp),\n makerFee: toBigNumber(makerData.maker_fee),\n uptime: toBigNumber(makerData.uptime),\n sumQMin: toBigNumber(makerData.sum_q_min),\n qScore: toBigNumber(makerData.q_score),\n makerShare: toBigNumber(makerData.maker_share),\n expectedMakerReward: toBigNumber(makerData.expected_maker_reward),\n };\n }),\n };\n}\n\nexport function mapIndexerLeaderboardPosition(\n position: IndexerServerLeaderboardPosition,\n): IndexerLeaderboardParticipant {\n const tracks = mapValues(position.tracks, (trackData) => ({\n value: toBigNumber(trackData.value),\n rank: toBigNumber(trackData.rank),\n qualificationStatus: trackData.qualification_status,\n }));\n\n return {\n subaccount: subaccountFromHex(position.subaccount),\n contestId: position.contest_id,\n accountValue: toBigNumber(position.account_value),\n updateTime: toBigNumber(position.update_time),\n tracks,\n socialAccounts: position.social_accounts.map((account) => ({\n provider: account.provider,\n username: account.username,\n displayName: account.display_name,\n profileImageUrl: account.profile_image_url,\n })),\n };\n}\n\nexport function mapIndexerLeaderboardRegistration(\n registration: IndexerServerLeaderboardRegistration,\n): IndexerLeaderboardRegistration {\n return {\n subaccount: subaccountFromHex(registration.subaccount),\n contestId: registration.contest_id,\n updateTime: toBigNumber(registration.update_time),\n };\n}\n\nexport function mapIndexerLeaderboardContest(\n contest: IndexerServerLeaderboardContest,\n): IndexerLeaderboardContest {\n const startTime = toBigNumber(contest.start_time);\n const endTime = toBigNumber(contest.end_time);\n\n return {\n contestId: contest.contest_id,\n startTime,\n endTime,\n totalParticipants: toBigNumber(contest.count),\n requiredProductIds: contest.product_ids,\n active: contest.active,\n lastUpdated: toBigNumber(contest.last_updated),\n title: contest.title,\n description: contest.description,\n tracks: contest.tracks.map((track) => ({\n trackId: track.track_id,\n rankType: track.rank_type,\n sortOrder: track.sort_order,\n accountValueThreshold: toBigNumber(track.threshold),\n volumeThreshold: toBigNumber(track.volume_threshold),\n })),\n };\n}\n\nexport function mapIndexerCandlesticks(\n candlestick: IndexerServerCandlestick,\n): Candlestick {\n return {\n close: removeDecimals(candlestick.close_x18),\n high: removeDecimals(candlestick.high_x18),\n low: removeDecimals(candlestick.low_x18),\n open: removeDecimals(candlestick.open_x18),\n time: toBigNumber(candlestick.timestamp),\n volume: toBigNumber(candlestick.volume),\n };\n}\n\nexport function mapIndexerMarketSnapshot(\n snapshot: IndexerServerMarketSnapshot,\n): IndexerMarketSnapshot {\n return {\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeUsers: toBigNumber(snapshot.cumulative_users),\n dailyActiveUsers: toBigNumber(snapshot.daily_active_users),\n tvl: toBigNumber(snapshot.tvl),\n borrowRates: mapValues(snapshot.borrow_rates, (value) =>\n removeDecimals(value),\n ),\n cumulativeLiquidationAmounts: mapValues(\n snapshot.cumulative_liquidation_amounts,\n toBigNumber,\n ),\n cumulativeMakerFees: mapValues(snapshot.cumulative_maker_fees, toBigNumber),\n cumulativeSequencerFees: mapValues(\n snapshot.cumulative_sequencer_fees,\n toBigNumber,\n ),\n cumulativeTakerFees: mapValues(snapshot.cumulative_taker_fees, toBigNumber),\n cumulativeTrades: mapValues(snapshot.cumulative_trades, toBigNumber),\n cumulativeVolumes: mapValues(snapshot.cumulative_volumes, toBigNumber),\n depositRates: mapValues(snapshot.deposit_rates, (value) =>\n removeDecimals(value),\n ),\n fundingRates: mapValues(snapshot.funding_rates, (value) =>\n removeDecimals(value),\n ),\n openInterestsQuote: mapValues(snapshot.open_interests, toBigNumber),\n totalBorrows: mapValues(snapshot.total_borrows, toBigNumber),\n totalDeposits: mapValues(snapshot.total_deposits, toBigNumber),\n cumulativeTradeSizes: mapValues(\n snapshot.cumulative_trade_sizes,\n toBigNumber,\n ),\n cumulativeInflows: mapValues(snapshot.cumulative_inflows, toBigNumber),\n cumulativeOutflows: mapValues(snapshot.cumulative_outflows, toBigNumber),\n oraclePrices: mapValues(snapshot.oracle_prices, (value) =>\n removeDecimals(value),\n ),\n };\n}\n\nexport function mapIndexerNlpSnapshot(\n snapshot: IndexerServerNlpSnapshot,\n): IndexerNlpSnapshot {\n return {\n submissionIndex: snapshot.submission_idx,\n timestamp: toBigNumber(snapshot.timestamp),\n cumulativeBurnAmountQuote: toBigNumber(snapshot.cumulative_burn_quote),\n cumulativeMintAmountQuote: toBigNumber(snapshot.cumulative_mint_quote),\n cumulativePnl: toBigNumber(snapshot.cumulative_pnl),\n cumulativeTrades: toBigNumber(snapshot.cumulative_trades),\n cumulativeVolume: toBigNumber(snapshot.cumulative_volume),\n depositors: toBigNumber(snapshot.depositors),\n oraclePrice: removeDecimals(snapshot.oracle_price_x18),\n tvl: toBigNumber(snapshot.tvl),\n };\n}\n\nexport function mapIndexerV2Ticker(\n ticker: IndexerServerV2TickerResponse,\n): IndexerV2TickerResponse {\n return {\n productId: ticker.product_id,\n tickerId: ticker.ticker_id,\n baseCurrency: ticker.base_currency,\n quoteCurrency: ticker.quote_currency,\n lastPrice: ticker.last_price,\n baseVolume: ticker.base_volume,\n quoteVolume: ticker.quote_volume,\n priceChangePercent24h: ticker.price_change_percent_24h,\n };\n}\n\nexport function mapIndexerV2MarketHours(\n hours: IndexerServerV2MarketHours,\n): IndexerV2MarketHours {\n return {\n isOpen: hours.is_open,\n reason: hours.reason,\n nextClose: hours.next_close,\n nextOpen: hours.next_open,\n };\n}\n\nexport function mapIndexerV2Symbols(\n symbol: IndexerServerV2Symbol,\n): IndexerV2Symbol {\n return {\n type: symbol.type,\n productId: symbol.product_id,\n symbol: symbol.symbol,\n priceIncrement: removeDecimals(symbol.price_increment_x18),\n sizeIncrement: symbol.size_increment,\n minSize: symbol.min_size,\n makerFeeRate: removeDecimals(symbol.maker_fee_rate_x18),\n takerFeeRate: removeDecimals(symbol.taker_fee_rate_x18),\n longWeightInitial: removeDecimals(symbol.long_weight_initial_x18),\n longWeightMaintenance: removeDecimals(symbol.long_weight_maintenance_x18),\n maxOpenInterest: symbol.max_open_interest_x18\n ? removeDecimals(symbol.max_open_interest_x18)\n : null,\n exchangeRate: symbol.exchange_rate_x18\n ? removeDecimals(symbol.exchange_rate_x18)\n : null,\n tradingStatus: symbol.trading_status as IndexerV2TradingStatus,\n isolatedOnly: symbol.isolated_only,\n marketHours: symbol.market_hours\n ? mapIndexerV2MarketHours(symbol.market_hours)\n : null,\n boostType: symbol.boost_type ?? null,\n takerMultiplier: symbol.taker_multiplier ?? null,\n makerMultiplier: symbol.maker_multiplier ?? null,\n };\n}\n"],"mappings":";;;AAmEA,SAAgB,mCACd,QACgC;CAChC,OAAO;EACL,OAAO,OAAO;EACd,UAAU,OAAO,mBACb,gBAAgB,OAAO,gBAAgB,IACvC,KAAA;EACJ,aAAa,OAAO;CACtB;AACF;AAEA,SAAgB,wBAAwB,SAAuC;CAC7E,IAAI,UAAU,SACZ,OAAO,2BAA2B,QAAQ,IAAI;CAEhD,OAAO,2BAA2B,QAAQ,IAAI;AAChD;AAEA,SAAgB,wBACd,SACyC;CACzC,IAAI,UAAU,SACZ,OAAO;EACL,QAAQ,YAAY,QAAQ,KAAK,QAAQ,MAAM;EAC/C,WAAW,QAAQ,KAAK;EACxB,MAAM,kBAAkB;CAC1B;CAEF,OAAO;EACL,QAAQ,YAAY,QAAQ,KAAK,QAAQ,MAAM;EAC/C,WAAW,QAAQ,KAAK;EACxB,MAAM,kBAAkB;EACxB,eAAe,YAAY,QAAQ,KAAK,QAAQ,eAAe;CACjE;AACF;AAEA,SAAgB,gBAAgB,OAAyC;CACvE,MAAM,WAAW,oBAAoB,MAAM,QAAQ;CACnD,OAAO;EACL,QAAQ,YAAY,MAAM,MAAM;EAChC,QAAQ,MAAM;EACd,YAAY,OAAO,MAAM,UAAU;EACnC;EACA,OAAO,YAAY,MAAM,KAAK;EAC9B,UAAU,MAAM;EAChB,iBAAiB,0BAA0B,MAAM,KAAK,IAAI;EAC1D,OAAO,eAAe,MAAM,SAAS;EACrC,WAAW,MAAM;EACjB,YAAY,MAAM;EAClB,iBAAiB,MAAM;EACvB,yBAAyB,MAAM;EAC/B,YAAY,YAAY,MAAM,WAAW;EACzC,aAAa,YAAY,MAAM,YAAY;EAC3C,UAAU,YAAY,MAAM,GAAG;EAC/B,YAAY,YAAY,MAAM,WAAW;EACzC,aAAa,YAAY,MAAM,YAAY;EAC3C,cAAc,YAAY,MAAM,aAAa;EAC7C,gBAAgB,YAAY,MAAM,gBAAgB;EAClD,gBAAgB,MAAM,gBAClB,YAAY,MAAM,aAAa,IAC/B;EACJ,oBAAoB,YAAY,MAAM,oBAAoB;EAC1D,mBAAmB,YAAY,MAAM,mBAAmB;EACxD,aAAa,6BAA6B,MAAM,WAAW;EAC3D,cAAc,6BAA6B,MAAM,YAAY;CAC/D;AACF;AAEA,SAAgB,gBAAgB,OAAyC;CACvE,MAAM,oBAA2C;EAE/C,IAAI,UAAU,MAAM,aAClB,OAAO;GACL,MAAM,kBAAkB;GACxB,QAAQ,wBAAwB,MAAM,OAAO;GAC7C,YAAY,wBACV,MAAM,WACR;GACA,aAAa,wBACX,MAAM,YACR;EACF;EAEF,OAAO;GACL,MAAM,kBAAkB;GACxB,QAAQ,wBAAwB,MAAM,OAAO;GAC7C,YAAY,wBACV,MAAM,WACR;GACA,aAAa,wBACX,MAAM,YACR;EACF;CACF,GAAG;CAEH,OAAO;EACL,WAAW,MAAM;EACjB,WAAW,MAAM;EACjB,UAAU,MAAM;EAChB,mBAAmB,MAAM;EACzB,OAAO;EACP,YAAY,MAAM;EAClB,iBAAiB,MAAM;EACvB,aAAa;GACX,oBAAoB,YAAY,MAAM,oBAAoB;GAC1D,oBAAoB,YAAY,MAAM,oBAAoB;GAC1D,sBAAsB,YAAY,MAAM,sBAAsB;GAC9D,sBAAsB,YAAY,MAAM,sBAAsB;GAC9D,uBAAuB,YAAY,MAAM,uBAAuB;GAChE,uBAAuB,YAAY,MAAM,uBAAuB;GAChE,uBAAuB,YAAY,MAAM,uBAAuB;EAClE;CACF;AACF;AAEA,SAAgB,sBACd,OACA,IACoB;CACpB,OAAO;EACL,WAAW,YAAY,GAAG,SAAS;EACnC,IAAI,GAAG;EACP,GAAG,gBAAgB,KAAK;CAC1B;AACF;AAEA,SAAgB,6BACd,eAC2B;CAC3B,OAAO;EACL,MAAM,wBAAwB,cAAc,IAAI;EAChD,OAAO,cAAc,QAChB,wBAAwB,cAAc,KAAK,IAC5C,KAAA;CACN;AACF;AAEA,SAAgB,yBACd,SACuB;CACvB,OAAO;EACL,iBAAiB,QAAQ;EACzB,WAAW,YAAY,QAAQ,SAAS;EACxC,eAAe,YAAY,QAAQ,MAAM;EACzC,eAAe,YAAY,QAAQ,cAAc;EACjD,mBAAmB,eAAe,QAAQ,QAAQ;EAClD,aAAa,eAAe,QAAQ,gBAAgB;EACpD,UAAU,QAAQ;EAClB,WAAW,QAAQ;EACnB,mBAAmB,QAAQ;CAC7B;AACF;AAEA,SAAgB,qBACd,YACmB;CACnB,OAAO;EACL,YAAY,eAAe,WAAW,eAAe;EACrD,WAAW,eAAe,WAAW,cAAc;EACnD,YAAY,YAAY,WAAW,WAAW;EAC9C,WAAW,WAAW;CACxB;AACF;AAEA,SAAgB,sBACd,aACoB;CACpB,OAAO;EACL,aAAa,eAAe,YAAY,gBAAgB;EACxD,YAAY,YAAY,YAAY,WAAW;EAC/C,WAAW,YAAY;CACzB;AACF;AAEA,SAAgB,6BACd,OACgC;CAChC,OAAO;EACL,WAAW,MAAM;EACjB,WAAW,YAAY,MAAM,SAAS;EACtC,iBAAiB,eAAe,MAAM,gBAAgB;CACxD;AACF;AAEA,SAAS,yBAAyB,CAChC,WACA,QACqD;CACrD,OAAO;EACL,WAAW,YAAY,SAAS;EAChC,OAAO,YAAY,KAAK;CAC1B;AACF;AAEA,SAAgB,oBACd,UAC6B;CAC7B,OAAO,OAAO,YACZ,SAAS,KAAK,CAAC,QAAQ,aAAa,CAClC,QACA;EACE,qBAAqB,QAAQ,oBAAoB,IAC/C,wBACF;EACA,YAAY,QAAQ,WAAW,IAAI,wBAAwB;EAC3D,QAAQ,YAAY,QAAQ,GAAG;CACjC,CACF,CAAC,CACH;AACF;AAEA,SAAgB,0BACd,OACc;CACd,OAAO;EACL,SAAS,MAAM;EACf,WAAW,MAAM,KAAK,KAAK,cAAc;GACvC,OAAO;IACL,WAAW,YAAY,UAAU,SAAS;IAC1C,UAAU,YAAY,UAAU,SAAS;IACzC,QAAQ,YAAY,UAAU,MAAM;IACpC,SAAS,YAAY,UAAU,SAAS;IACxC,QAAQ,YAAY,UAAU,OAAO;IACrC,YAAY,YAAY,UAAU,WAAW;IAC7C,qBAAqB,YAAY,UAAU,qBAAqB;GAClE;EACF,CAAC;CACH;AACF;AAEA,SAAgB,8BACd,UAC+B;CAC/B,MAAM,SAAS,UAAU,SAAS,SAAS,eAAe;EACxD,OAAO,YAAY,UAAU,KAAK;EAClC,MAAM,YAAY,UAAU,IAAI;EAChC,qBAAqB,UAAU;CACjC,EAAE;CAEF,OAAO;EACL,YAAY,kBAAkB,SAAS,UAAU;EACjD,WAAW,SAAS;EACpB,cAAc,YAAY,SAAS,aAAa;EAChD,YAAY,YAAY,SAAS,WAAW;EAC5C;EACA,gBAAgB,SAAS,gBAAgB,KAAK,aAAa;GACzD,UAAU,QAAQ;GAClB,UAAU,QAAQ;GAClB,aAAa,QAAQ;GACrB,iBAAiB,QAAQ;EAC3B,EAAE;CACJ;AACF;AAEA,SAAgB,kCACd,cACgC;CAChC,OAAO;EACL,YAAY,kBAAkB,aAAa,UAAU;EACrD,WAAW,aAAa;EACxB,YAAY,YAAY,aAAa,WAAW;CAClD;AACF;AAEA,SAAgB,6BACd,SAC2B;CAC3B,MAAM,YAAY,YAAY,QAAQ,UAAU;CAChD,MAAM,UAAU,YAAY,QAAQ,QAAQ;CAE5C,OAAO;EACL,WAAW,QAAQ;EACnB;EACA;EACA,mBAAmB,YAAY,QAAQ,KAAK;EAC5C,oBAAoB,QAAQ;EAC5B,QAAQ,QAAQ;EAChB,aAAa,YAAY,QAAQ,YAAY;EAC7C,OAAO,QAAQ;EACf,aAAa,QAAQ;EACrB,QAAQ,QAAQ,OAAO,KAAK,WAAW;GACrC,SAAS,MAAM;GACf,UAAU,MAAM;GAChB,WAAW,MAAM;GACjB,uBAAuB,YAAY,MAAM,SAAS;GAClD,iBAAiB,YAAY,MAAM,gBAAgB;EACrD,EAAE;CACJ;AACF;AAEA,SAAgB,uBACd,aACa;CACb,OAAO;EACL,OAAO,eAAe,YAAY,SAAS;EAC3C,MAAM,eAAe,YAAY,QAAQ;EACzC,KAAK,eAAe,YAAY,OAAO;EACvC,MAAM,eAAe,YAAY,QAAQ;EACzC,MAAM,YAAY,YAAY,SAAS;EACvC,QAAQ,YAAY,YAAY,MAAM;CACxC;AACF;AAEA,SAAgB,yBACd,UACuB;CACvB,OAAO;EACL,WAAW,YAAY,SAAS,SAAS;EACzC,iBAAiB,YAAY,SAAS,gBAAgB;EACtD,kBAAkB,YAAY,SAAS,kBAAkB;EACzD,KAAK,YAAY,SAAS,GAAG;EAC7B,aAAa,UAAU,SAAS,eAAe,UAC7C,eAAe,KAAK,CACtB;EACA,8BAA8B,UAC5B,SAAS,gCACT,WACF;EACA,qBAAqB,UAAU,SAAS,uBAAuB,WAAW;EAC1E,yBAAyB,UACvB,SAAS,2BACT,WACF;EACA,qBAAqB,UAAU,SAAS,uBAAuB,WAAW;EAC1E,kBAAkB,UAAU,SAAS,mBAAmB,WAAW;EACnE,mBAAmB,UAAU,SAAS,oBAAoB,WAAW;EACrE,cAAc,UAAU,SAAS,gBAAgB,UAC/C,eAAe,KAAK,CACtB;EACA,cAAc,UAAU,SAAS,gBAAgB,UAC/C,eAAe,KAAK,CACtB;EACA,oBAAoB,UAAU,SAAS,gBAAgB,WAAW;EAClE,cAAc,UAAU,SAAS,eAAe,WAAW;EAC3D,eAAe,UAAU,SAAS,gBAAgB,WAAW;EAC7D,sBAAsB,UACpB,SAAS,wBACT,WACF;EACA,mBAAmB,UAAU,SAAS,oBAAoB,WAAW;EACrE,oBAAoB,UAAU,SAAS,qBAAqB,WAAW;EACvE,cAAc,UAAU,SAAS,gBAAgB,UAC/C,eAAe,KAAK,CACtB;CACF;AACF;AAEA,SAAgB,sBACd,UACoB;CACpB,OAAO;EACL,iBAAiB,SAAS;EAC1B,WAAW,YAAY,SAAS,SAAS;EACzC,2BAA2B,YAAY,SAAS,qBAAqB;EACrE,2BAA2B,YAAY,SAAS,qBAAqB;EACrE,eAAe,YAAY,SAAS,cAAc;EAClD,kBAAkB,YAAY,SAAS,iBAAiB;EACxD,kBAAkB,YAAY,SAAS,iBAAiB;EACxD,YAAY,YAAY,SAAS,UAAU;EAC3C,aAAa,eAAe,SAAS,gBAAgB;EACrD,KAAK,YAAY,SAAS,GAAG;CAC/B;AACF;AAEA,SAAgB,mBACd,QACyB;CACzB,OAAO;EACL,WAAW,OAAO;EAClB,UAAU,OAAO;EACjB,cAAc,OAAO;EACrB,eAAe,OAAO;EACtB,WAAW,OAAO;EAClB,YAAY,OAAO;EACnB,aAAa,OAAO;EACpB,uBAAuB,OAAO;CAChC;AACF;AAEA,SAAgB,wBACd,OACsB;CACtB,OAAO;EACL,QAAQ,MAAM;EACd,QAAQ,MAAM;EACd,WAAW,MAAM;EACjB,UAAU,MAAM;CAClB;AACF;AAEA,SAAgB,oBACd,QACiB;CACjB,OAAO;EACL,MAAM,OAAO;EACb,WAAW,OAAO;EAClB,QAAQ,OAAO;EACf,gBAAgB,eAAe,OAAO,mBAAmB;EACzD,eAAe,OAAO;EACtB,SAAS,OAAO;EAChB,cAAc,eAAe,OAAO,kBAAkB;EACtD,cAAc,eAAe,OAAO,kBAAkB;EACtD,mBAAmB,eAAe,OAAO,uBAAuB;EAChE,uBAAuB,eAAe,OAAO,2BAA2B;EACxE,iBAAiB,OAAO,wBACpB,eAAe,OAAO,qBAAqB,IAC3C;EACJ,cAAc,OAAO,oBACjB,eAAe,OAAO,iBAAiB,IACvC;EACJ,eAAe,OAAO;EACtB,cAAc,OAAO;EACrB,aAAa,OAAO,eAChB,wBAAwB,OAAO,YAAY,IAC3C;EACJ,WAAW,OAAO,cAAc;EAChC,iBAAiB,OAAO,oBAAoB;EAC5C,iBAAiB,OAAO,oBAAoB;CAC9C;AACF"}
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_IndexerBaseClient = require("./IndexerBaseClient-BesuTUAd.cjs");
2
+ const require_IndexerBaseClient = require("./IndexerBaseClient-B7cApziU.cjs");
3
3
  const require_types_CandlestickPeriod = require("./types/CandlestickPeriod.cjs");
4
4
  const require_types_indexerErrorCodes = require("./types/indexerErrorCodes.cjs");
5
5
  const require_types_IndexerServerFailureError = require("./types/IndexerServerFailureError.cjs");