@decibeltrade/sdk 0.2.2 → 0.2.4

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 (74) hide show
  1. package/dist/abi/generate-abis.js +9 -44
  2. package/dist/abi/types.js +1 -2
  3. package/dist/admin.js +10 -14
  4. package/dist/base.d.ts +1 -0
  5. package/dist/base.d.ts.map +1 -1
  6. package/dist/base.js +22 -26
  7. package/dist/constants.d.ts +1 -0
  8. package/dist/constants.d.ts.map +1 -1
  9. package/dist/constants.js +37 -43
  10. package/dist/fee-pay.js +1 -4
  11. package/dist/gas/gas-price-manager.js +3 -7
  12. package/dist/index.js +10 -26
  13. package/dist/order-event.types.js +1 -2
  14. package/dist/order-status.js +16 -23
  15. package/dist/read/account-overview/account-overview.reader.js +5 -9
  16. package/dist/read/account-overview/account-overview.types.d.ts +7 -7
  17. package/dist/read/account-overview/account-overview.types.js +23 -29
  18. package/dist/read/base-reader.js +5 -9
  19. package/dist/read/candlesticks/candlesticks.reader.js +8 -12
  20. package/dist/read/candlesticks/candlesticks.types.js +14 -20
  21. package/dist/read/delegations/delegations.reader.js +4 -8
  22. package/dist/read/delegations/delegations.types.js +6 -12
  23. package/dist/read/index.js +50 -68
  24. package/dist/read/leaderboard/leaderboard.reader.js +6 -10
  25. package/dist/read/leaderboard/leaderboard.types.js +10 -13
  26. package/dist/read/market-contexts/market-contexts.reader.js +4 -8
  27. package/dist/read/market-contexts/market-contexts.types.js +11 -17
  28. package/dist/read/market-depth/market-depth.reader.js +9 -13
  29. package/dist/read/market-depth/market-depth.types.js +8 -14
  30. package/dist/read/market-prices/market-prices.reader.js +11 -15
  31. package/dist/read/market-prices/market-prices.types.js +22 -25
  32. package/dist/read/market-trades/market-trades.reader.js +8 -12
  33. package/dist/read/market-trades/market-trades.types.js +18 -21
  34. package/dist/read/markets/markets.reader.js +7 -11
  35. package/dist/read/markets/markets.types.js +32 -35
  36. package/dist/read/pagination.types.js +4 -11
  37. package/dist/read/portfolio-chart/portfolio-chart.reader.js +4 -8
  38. package/dist/read/portfolio-chart/portfolio-chart.types.js +5 -11
  39. package/dist/read/types.js +58 -75
  40. package/dist/read/user-active-twaps/user-active-twaps.reader.js +5 -9
  41. package/dist/read/user-active-twaps/user-active-twaps.types.js +18 -24
  42. package/dist/read/user-bulk-orders/user-bulk-orders.reader.js +5 -9
  43. package/dist/read/user-bulk-orders/user-bulk-orders.types.js +16 -22
  44. package/dist/read/user-funding-history/user-funding-history.reader.js +5 -9
  45. package/dist/read/user-funding-history/user-funding-history.types.js +13 -19
  46. package/dist/read/user-notifications/user-notifications.reader.js +4 -8
  47. package/dist/read/user-notifications/user-notifications.types.js +19 -25
  48. package/dist/read/user-open-orders/user-open-orders.reader.js +5 -9
  49. package/dist/read/user-open-orders/user-open-orders.types.js +27 -33
  50. package/dist/read/user-order-history/user-order-history.reader.js +5 -9
  51. package/dist/read/user-order-history/user-order-history.types.js +32 -38
  52. package/dist/read/user-positions/user-positions.reader.js +5 -9
  53. package/dist/read/user-positions/user-positions.types.d.ts +13 -13
  54. package/dist/read/user-positions/user-positions.types.js +21 -27
  55. package/dist/read/user-subaccounts/user-subaccounts.reader.js +4 -8
  56. package/dist/read/user-subaccounts/user-subaccounts.types.js +8 -14
  57. package/dist/read/user-trade-history/user-trade-history.reader.js +5 -9
  58. package/dist/read/user-trade-history/user-trade-history.types.js +18 -24
  59. package/dist/read/vaults/vaults.reader.js +6 -10
  60. package/dist/read/vaults/vaults.types.js +53 -59
  61. package/dist/read/ws-subscription.d.ts +1 -1
  62. package/dist/read/ws-subscription.js +12 -19
  63. package/dist/subaccount-types.js +4 -10
  64. package/dist/transaction-builder.js +11 -16
  65. package/dist/tsconfig.tsbuildinfo +1 -1
  66. package/dist/utils.d.ts +4 -1
  67. package/dist/utils.d.ts.map +1 -1
  68. package/dist/utils.js +46 -49
  69. package/dist/write.d.ts +2 -2
  70. package/dist/write.d.ts.map +1 -1
  71. package/dist/write.js +22 -26
  72. package/package.json +1 -1
  73. package/src/read/ws-subscription.ts +2 -2
  74. package/src/write.ts +3 -3
@@ -1,36 +1,30 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AccountOverviewWsMessageSchema = exports.AccountOverviewSchema = exports.VolumeWindow = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.VolumeWindow = {
1
+ import z from "zod/v4";
2
+ export const VolumeWindow = {
9
3
  SevenDays: "7d",
10
4
  FourteenDays: "14d",
11
5
  ThirtyDays: "30d",
12
6
  NinetyDays: "90d",
13
7
  };
14
- exports.AccountOverviewSchema = v4_1.default.object({
15
- perp_equity_balance: v4_1.default.number(),
16
- unrealized_pnl: v4_1.default.number(),
17
- unrealized_funding_cost: v4_1.default.number(),
18
- cross_margin_ratio: v4_1.default.number(),
19
- maintenance_margin: v4_1.default.number(),
20
- cross_account_leverage_ratio: v4_1.default.number().nullable(),
21
- volume: v4_1.default.number().nullable(),
22
- all_time_return: v4_1.default.number().nullable(),
23
- pnl_90d: v4_1.default.number().nullable(),
24
- sharpe_ratio: v4_1.default.number().nullable(),
25
- max_drawdown: v4_1.default.number().nullable(),
26
- weekly_win_rate_12w: v4_1.default.number().nullable(),
27
- average_cash_position: v4_1.default.number().nullable(),
28
- average_leverage: v4_1.default.number().nullable(),
29
- cross_account_position: v4_1.default.number(),
30
- total_margin: v4_1.default.number(),
31
- usdc_cross_withdrawable_balance: v4_1.default.number(),
32
- usdc_isolated_withdrawable_balance: v4_1.default.number(),
8
+ export const AccountOverviewSchema = z.object({
9
+ perp_equity_balance: z.number(),
10
+ unrealized_pnl: z.number(),
11
+ unrealized_funding_cost: z.number(),
12
+ cross_margin_ratio: z.number(),
13
+ maintenance_margin: z.number(),
14
+ cross_account_leverage_ratio: z.number().nullable(),
15
+ volume: z.number().nullable(),
16
+ all_time_return: z.number().nullable(),
17
+ pnl_90d: z.number().nullable(),
18
+ sharpe_ratio: z.number().nullable(),
19
+ max_drawdown: z.number().nullable(),
20
+ weekly_win_rate_12w: z.number().nullable(),
21
+ average_cash_position: z.number().nullable(),
22
+ average_leverage: z.number().nullable(),
23
+ cross_account_position: z.number(),
24
+ total_margin: z.number(),
25
+ usdc_cross_withdrawable_balance: z.number(),
26
+ usdc_isolated_withdrawable_balance: z.number(),
33
27
  });
34
- exports.AccountOverviewWsMessageSchema = v4_1.default.object({
35
- account_overview: exports.AccountOverviewSchema.omit({ volume: true }),
28
+ export const AccountOverviewWsMessageSchema = z.object({
29
+ account_overview: AccountOverviewSchema.omit({ volume: true }),
36
30
  });
@@ -1,29 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseReader = void 0;
4
- const utils_1 = require("../utils");
5
- class BaseReader {
1
+ import { getRequest as baseGetRequest, patchRequest as basePatchRequest, postRequest as basePostRequest, } from "../utils";
2
+ export class BaseReader {
6
3
  deps;
7
4
  constructor(deps) {
8
5
  this.deps = deps;
9
6
  }
10
7
  async getRequest(args) {
11
- return (0, utils_1.getRequest)({
8
+ return baseGetRequest({
12
9
  ...args,
13
10
  apiKey: this.deps.apiKey,
14
11
  });
15
12
  }
16
13
  async postRequest(args) {
17
- return (0, utils_1.postRequest)({
14
+ return basePostRequest({
18
15
  ...args,
19
16
  apiKey: this.deps.apiKey,
20
17
  });
21
18
  }
22
19
  async patchRequest(args) {
23
- return (0, utils_1.patchRequest)({
20
+ return basePatchRequest({
24
21
  ...args,
25
22
  apiKey: this.deps.apiKey,
26
23
  });
27
24
  }
28
25
  }
29
- exports.BaseReader = BaseReader;
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CandlesticksReader = void 0;
4
- const utils_1 = require("../../utils");
5
- const base_reader_1 = require("../base-reader");
6
- const candlesticks_types_1 = require("./candlesticks.types");
7
- class CandlesticksReader extends base_reader_1.BaseReader {
1
+ import { getMarketAddr } from "../../utils";
2
+ import { BaseReader } from "../base-reader";
3
+ import { CandlesticksSchema, CandlestickWsMessageSchema, } from "./candlesticks.types";
4
+ export class CandlesticksReader extends BaseReader {
8
5
  /**
9
6
  * Get the candlestick data points for a given market during a given time period
10
7
  * @param marketName The name of the market to get candlestick data for
@@ -14,9 +11,9 @@ class CandlesticksReader extends base_reader_1.BaseReader {
14
11
  * @returns The candlestick data points for the given market during the given time period
15
12
  */
16
13
  async getByName({ marketName, interval, startTime, endTime, fetchOptions, }) {
17
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
14
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
18
15
  const response = await this.getRequest({
19
- schema: candlesticks_types_1.CandlesticksSchema,
16
+ schema: CandlesticksSchema,
20
17
  url: `${this.deps.config.tradingHttpUrl}/api/v1/candlesticks`,
21
18
  queryParams: {
22
19
  market: marketAddr.toString(),
@@ -36,9 +33,8 @@ class CandlesticksReader extends base_reader_1.BaseReader {
36
33
  * @returns A function to unsubscribe from the candlestick updates
37
34
  */
38
35
  subscribeByName(marketName, interval, onData) {
39
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
36
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
40
37
  const topic = `market_candlestick:${marketAddr}:${interval}`;
41
- return this.deps.ws.subscribe(topic, candlesticks_types_1.CandlestickWsMessageSchema, onData);
38
+ return this.deps.ws.subscribe(topic, CandlestickWsMessageSchema, onData);
42
39
  }
43
40
  }
44
- exports.CandlesticksReader = CandlesticksReader;
@@ -1,36 +1,30 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.CandlestickWsMessageSchema = exports.CandlesticksSchema = exports.CandlestickSchema = exports.CandlestickInterval = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.CandlestickInterval = {
1
+ import z from "zod/v4";
2
+ export const CandlestickInterval = {
9
3
  OneMinute: "1m",
10
4
  FifteenMinutes: "15m",
11
5
  OneHour: "1h",
12
6
  FourHours: "4h",
13
7
  OneDay: "1d",
14
8
  };
15
- exports.CandlestickSchema = v4_1.default.object({
9
+ export const CandlestickSchema = z.object({
16
10
  /** time end */
17
- T: v4_1.default.number(),
11
+ T: z.number(),
18
12
  /** close */
19
- c: v4_1.default.number(),
13
+ c: z.number(),
20
14
  /** high */
21
- h: v4_1.default.number(),
15
+ h: z.number(),
22
16
  /** internal */
23
- i: v4_1.default.string(),
17
+ i: z.string(),
24
18
  /** low */
25
- l: v4_1.default.number(),
19
+ l: z.number(),
26
20
  /** open */
27
- o: v4_1.default.number(),
21
+ o: z.number(),
28
22
  /** time start */
29
- t: v4_1.default.number(),
23
+ t: z.number(),
30
24
  /** volume */
31
- v: v4_1.default.number(),
25
+ v: z.number(),
32
26
  });
33
- exports.CandlesticksSchema = v4_1.default.array(exports.CandlestickSchema);
34
- exports.CandlestickWsMessageSchema = v4_1.default.object({
35
- candle: exports.CandlestickSchema,
27
+ export const CandlesticksSchema = z.array(CandlestickSchema);
28
+ export const CandlestickWsMessageSchema = z.object({
29
+ candle: CandlestickSchema,
36
30
  });
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DelegationsReader = void 0;
4
- const base_reader_1 = require("../base-reader");
5
- const delegations_types_1 = require("./delegations.types");
6
- class DelegationsReader extends base_reader_1.BaseReader {
1
+ import { BaseReader } from "../base-reader";
2
+ import { DelegationsSchema } from "./delegations.types";
3
+ export class DelegationsReader extends BaseReader {
7
4
  /**
8
5
  * Get all active delegations for a subaccount
9
6
  * @param args The arguments containing the subaccount address
@@ -11,7 +8,7 @@ class DelegationsReader extends base_reader_1.BaseReader {
11
8
  */
12
9
  async getAll({ subAddr, fetchOptions }) {
13
10
  const response = await this.getRequest({
14
- schema: delegations_types_1.DelegationsSchema,
11
+ schema: DelegationsSchema,
15
12
  url: `${this.deps.config.tradingHttpUrl}/api/v1/delegations`,
16
13
  queryParams: new URLSearchParams({
17
14
  subaccount: subAddr,
@@ -21,4 +18,3 @@ class DelegationsReader extends base_reader_1.BaseReader {
21
18
  return response.data;
22
19
  }
23
20
  }
24
- exports.DelegationsReader = DelegationsReader;
@@ -1,13 +1,7 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DelegationsSchema = exports.DelegationSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.DelegationSchema = v4_1.default.object({
9
- delegated_account: v4_1.default.string(),
10
- permission_type: v4_1.default.string(),
11
- expiration_time_s: v4_1.default.number().nullable(),
1
+ import z from "zod/v4";
2
+ export const DelegationSchema = z.object({
3
+ delegated_account: z.string(),
4
+ permission_type: z.string(),
5
+ expiration_time_s: z.number().nullable(),
12
6
  });
13
- exports.DelegationsSchema = v4_1.default.array(exports.DelegationSchema);
7
+ export const DelegationsSchema = z.array(DelegationSchema);
@@ -1,45 +1,28 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.DecibelReadDex = void 0;
18
- const ts_sdk_1 = require("@aptos-labs/ts-sdk");
19
- const account_overview_reader_1 = require("./account-overview/account-overview.reader");
20
- const candlesticks_reader_1 = require("./candlesticks/candlesticks.reader");
21
- const delegations_reader_1 = require("./delegations/delegations.reader");
22
- const leaderboard_reader_1 = require("./leaderboard/leaderboard.reader");
23
- const market_contexts_reader_1 = require("./market-contexts/market-contexts.reader");
24
- const market_depth_reader_1 = require("./market-depth/market-depth.reader");
25
- const market_prices_reader_1 = require("./market-prices/market-prices.reader");
26
- const market_trades_reader_1 = require("./market-trades/market-trades.reader");
27
- const markets_reader_1 = require("./markets/markets.reader");
28
- const portfolio_chart_reader_1 = require("./portfolio-chart/portfolio-chart.reader");
29
- const types_1 = require("./types");
30
- const user_active_twaps_reader_1 = require("./user-active-twaps/user-active-twaps.reader");
31
- const user_bulk_orders_reader_1 = require("./user-bulk-orders/user-bulk-orders.reader");
32
- const user_funding_history_reader_1 = require("./user-funding-history/user-funding-history.reader");
33
- const user_notifications_reader_1 = require("./user-notifications/user-notifications.reader");
34
- const user_open_orders_reader_1 = require("./user-open-orders/user-open-orders.reader");
35
- const user_order_history_reader_1 = require("./user-order-history/user-order-history.reader");
36
- const user_positions_reader_1 = require("./user-positions/user-positions.reader");
37
- const user_subaccounts_reader_1 = require("./user-subaccounts/user-subaccounts.reader");
38
- const user_trade_history_reader_1 = require("./user-trade-history/user-trade-history.reader");
39
- const vaults_reader_1 = require("./vaults/vaults.reader");
40
- const ws_subscription_1 = require("./ws-subscription");
41
- __exportStar(require("./types"), exports);
42
- class DecibelReadDex {
1
+ import { Aptos, AptosConfig, createObjectAddress } from "@aptos-labs/ts-sdk";
2
+ import { AccountOverviewReader } from "./account-overview/account-overview.reader";
3
+ import { CandlesticksReader } from "./candlesticks/candlesticks.reader";
4
+ import { DelegationsReader } from "./delegations/delegations.reader";
5
+ import { LeaderboardReader } from "./leaderboard/leaderboard.reader";
6
+ import { MarketContextsReader } from "./market-contexts/market-contexts.reader";
7
+ import { MarketDepthReader } from "./market-depth/market-depth.reader";
8
+ import { MarketPricesReader } from "./market-prices/market-prices.reader";
9
+ import { MarketTradesReader } from "./market-trades/market-trades.reader";
10
+ import { MarketsReader } from "./markets/markets.reader";
11
+ import { PortfolioChartReader } from "./portfolio-chart/portfolio-chart.reader";
12
+ import { CrossedPosition } from "./types";
13
+ import { UserActiveTwapsReader } from "./user-active-twaps/user-active-twaps.reader";
14
+ import { UserBulkOrdersReader } from "./user-bulk-orders/user-bulk-orders.reader";
15
+ import { UserFundingHistoryReader } from "./user-funding-history/user-funding-history.reader";
16
+ import { UserNotificationsReader } from "./user-notifications/user-notifications.reader";
17
+ import { UserOpenOrdersReader } from "./user-open-orders/user-open-orders.reader";
18
+ import { UserOrderHistoryReader } from "./user-order-history/user-order-history.reader";
19
+ import { UserPositionsReader } from "./user-positions/user-positions.reader";
20
+ import { UserSubaccountsReader } from "./user-subaccounts/user-subaccounts.reader";
21
+ import { UserTradeHistoryReader } from "./user-trade-history/user-trade-history.reader";
22
+ import { VaultsReader } from "./vaults/vaults.reader";
23
+ import { DecibelWsSubscription } from "./ws-subscription";
24
+ export * from "./types";
25
+ export class DecibelReadDex {
43
26
  config;
44
27
  cache;
45
28
  deps;
@@ -65,38 +48,38 @@ class DecibelReadDex {
65
48
  userNotifications;
66
49
  constructor(config, opts) {
67
50
  this.config = config;
68
- const aptosConfig = new ts_sdk_1.AptosConfig({
51
+ const aptosConfig = new AptosConfig({
69
52
  network: config.network,
70
53
  fullnode: config.fullnodeUrl,
71
54
  clientConfig: { API_KEY: opts?.nodeApiKey },
72
55
  });
73
56
  this.deps = {
74
- aptos: new ts_sdk_1.Aptos(aptosConfig),
75
- ws: new ws_subscription_1.DecibelWsSubscription(config, opts?.onWsError),
57
+ aptos: new Aptos(aptosConfig),
58
+ ws: new DecibelWsSubscription(config, opts?.onWsError),
76
59
  config: this.config,
77
60
  apiKey: opts?.nodeApiKey,
78
61
  };
79
62
  this.cache = {};
80
- this.accountOverview = new account_overview_reader_1.AccountOverviewReader(this.deps);
81
- this.markets = new markets_reader_1.MarketsReader(this.deps);
82
- this.marketContexts = new market_contexts_reader_1.MarketContextsReader(this.deps);
83
- this.marketDepth = new market_depth_reader_1.MarketDepthReader(this.deps);
84
- this.marketPrices = new market_prices_reader_1.MarketPricesReader(this.deps);
85
- this.marketTrades = new market_trades_reader_1.MarketTradesReader(this.deps);
86
- this.userPositions = new user_positions_reader_1.UserPositionsReader(this.deps);
87
- this.userOrderHistory = new user_order_history_reader_1.UserOrderHistoryReader(this.deps);
88
- this.userSubaccounts = new user_subaccounts_reader_1.UserSubaccountsReader(this.deps);
89
- this.userOpenOrders = new user_open_orders_reader_1.UserOpenOrdersReader(this.deps);
90
- this.userBulkOrders = new user_bulk_orders_reader_1.UserBulkOrdersReader(this.deps);
91
- this.userFundingHistory = new user_funding_history_reader_1.UserFundingHistoryReader(this.deps);
92
- this.userTradeHistory = new user_trade_history_reader_1.UserTradeHistoryReader(this.deps);
93
- this.userActiveTwaps = new user_active_twaps_reader_1.UserActiveTwapsReader(this.deps);
94
- this.candlesticks = new candlesticks_reader_1.CandlesticksReader(this.deps);
95
- this.portfolioChart = new portfolio_chart_reader_1.PortfolioChartReader(this.deps);
96
- this.leaderboard = new leaderboard_reader_1.LeaderboardReader(this.deps);
97
- this.vaults = new vaults_reader_1.VaultsReader(this.deps);
98
- this.delegations = new delegations_reader_1.DelegationsReader(this.deps);
99
- this.userNotifications = new user_notifications_reader_1.UserNotificationsReader(this.deps);
63
+ this.accountOverview = new AccountOverviewReader(this.deps);
64
+ this.markets = new MarketsReader(this.deps);
65
+ this.marketContexts = new MarketContextsReader(this.deps);
66
+ this.marketDepth = new MarketDepthReader(this.deps);
67
+ this.marketPrices = new MarketPricesReader(this.deps);
68
+ this.marketTrades = new MarketTradesReader(this.deps);
69
+ this.userPositions = new UserPositionsReader(this.deps);
70
+ this.userOrderHistory = new UserOrderHistoryReader(this.deps);
71
+ this.userSubaccounts = new UserSubaccountsReader(this.deps);
72
+ this.userOpenOrders = new UserOpenOrdersReader(this.deps);
73
+ this.userBulkOrders = new UserBulkOrdersReader(this.deps);
74
+ this.userFundingHistory = new UserFundingHistoryReader(this.deps);
75
+ this.userTradeHistory = new UserTradeHistoryReader(this.deps);
76
+ this.userActiveTwaps = new UserActiveTwapsReader(this.deps);
77
+ this.candlesticks = new CandlesticksReader(this.deps);
78
+ this.portfolioChart = new PortfolioChartReader(this.deps);
79
+ this.leaderboard = new LeaderboardReader(this.deps);
80
+ this.vaults = new VaultsReader(this.deps);
81
+ this.delegations = new DelegationsReader(this.deps);
82
+ this.userNotifications = new UserNotificationsReader(this.deps);
100
83
  }
101
84
  async globalPerpEngineState() {
102
85
  try {
@@ -242,7 +225,7 @@ class DecibelReadDex {
242
225
  */
243
226
  async getCrossedPosition(addr) {
244
227
  const seed = new TextEncoder().encode("perp_position");
245
- const crossedPositionAddr = (0, ts_sdk_1.createObjectAddress)(addr, seed);
228
+ const crossedPositionAddr = createObjectAddress(addr, seed);
246
229
  try {
247
230
  // TODO: Fix lint error
248
231
  // eslint-disable-next-line custom/no-get-account-resource
@@ -250,11 +233,10 @@ class DecibelReadDex {
250
233
  accountAddress: crossedPositionAddr,
251
234
  resourceType: `${this.config.deployment.package}::perp_positions::CrossedPosition`,
252
235
  });
253
- return types_1.CrossedPosition.parse(crossedPosition);
236
+ return CrossedPosition.parse(crossedPosition);
254
237
  }
255
238
  catch {
256
239
  return null;
257
240
  }
258
241
  }
259
242
  }
260
- exports.DecibelReadDex = DecibelReadDex;
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LeaderboardReader = void 0;
4
- const utils_1 = require("../../utils");
5
- const base_reader_1 = require("../base-reader");
6
- const leaderboard_types_1 = require("./leaderboard.types");
7
- class LeaderboardReader extends base_reader_1.BaseReader {
1
+ import { constructKnownQueryParams } from "../../utils";
2
+ import { BaseReader } from "../base-reader";
3
+ import { LeaderboardSchema } from "./leaderboard.types";
4
+ export class LeaderboardReader extends BaseReader {
8
5
  /**
9
6
  * Get the leaderboard
10
7
  * @param queryParams The query parameters for the leaderboard
@@ -12,12 +9,11 @@ class LeaderboardReader extends base_reader_1.BaseReader {
12
9
  */
13
10
  async getLeaderboard({ fetchOptions, ...args }) {
14
11
  const response = await this.getRequest({
15
- schema: leaderboard_types_1.LeaderboardSchema,
12
+ schema: LeaderboardSchema,
16
13
  url: `${this.deps.config.tradingHttpUrl}/api/v1/leaderboard`,
17
- queryParams: (0, utils_1.constructKnownQueryParams)(args),
14
+ queryParams: constructKnownQueryParams(args),
18
15
  options: fetchOptions,
19
16
  });
20
17
  return response.data;
21
18
  }
22
19
  }
23
- exports.LeaderboardReader = LeaderboardReader;
@@ -1,14 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LeaderboardSchema = exports.LeaderboardItemSchema = void 0;
4
- const v4_1 = require("zod/v4");
5
- const types_1 = require("../types");
6
- exports.LeaderboardItemSchema = v4_1.z.object({
7
- rank: v4_1.z.number(),
8
- account: v4_1.z.string(),
9
- account_value: v4_1.z.number(),
10
- realized_pnl: v4_1.z.number(),
11
- roi: v4_1.z.number(),
12
- volume: v4_1.z.number(),
1
+ import { z } from "zod/v4";
2
+ import { PaginatedResponseSchema } from "../types";
3
+ export const LeaderboardItemSchema = z.object({
4
+ rank: z.number(),
5
+ account: z.string(),
6
+ account_value: z.number(),
7
+ realized_pnl: z.number(),
8
+ roi: z.number(),
9
+ volume: z.number(),
13
10
  });
14
- exports.LeaderboardSchema = (0, types_1.PaginatedResponseSchema)(exports.LeaderboardItemSchema);
11
+ export const LeaderboardSchema = PaginatedResponseSchema(LeaderboardItemSchema);
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarketContextsReader = void 0;
4
- const base_reader_1 = require("../base-reader");
5
- const market_contexts_types_1 = require("./market-contexts.types");
6
- class MarketContextsReader extends base_reader_1.BaseReader {
1
+ import { BaseReader } from "../base-reader";
2
+ import { MarketContextsSchema } from "./market-contexts.types";
3
+ export class MarketContextsReader extends BaseReader {
7
4
  /**
8
5
  * Get the asset context for a given market
9
6
  *
@@ -16,7 +13,7 @@ class MarketContextsReader extends base_reader_1.BaseReader {
16
13
  // ? getMarketAddr(marketName, this.config.deployment.perpEngineGlobal)
17
14
  // : undefined;
18
15
  const response = await this.getRequest({
19
- schema: market_contexts_types_1.MarketContextsSchema,
16
+ schema: MarketContextsSchema,
20
17
  // TODO: Update this when the API is /market_contexts
21
18
  url: `${this.deps.config.tradingHttpUrl}/api/v1/asset_contexts`,
22
19
  // queryParams: marketAddr ? { market: marketAddr.toString() } : undefined,
@@ -25,4 +22,3 @@ class MarketContextsReader extends base_reader_1.BaseReader {
25
22
  return response.data;
26
23
  }
27
24
  }
28
- exports.MarketContextsReader = MarketContextsReader;
@@ -1,18 +1,12 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MarketContextsSchema = exports.MarketContextSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.MarketContextSchema = v4_1.default.object({
9
- market: v4_1.default.string(),
10
- volume_24h: v4_1.default.number(),
11
- open_interest: v4_1.default.number(),
12
- mark_price: v4_1.default.number(),
13
- mid_price: v4_1.default.number(),
14
- oracle_price: v4_1.default.number(),
15
- previous_day_price: v4_1.default.number(),
16
- price_change_pct_24h: v4_1.default.number(),
1
+ import z from "zod/v4";
2
+ export const MarketContextSchema = z.object({
3
+ market: z.string(),
4
+ volume_24h: z.number(),
5
+ open_interest: z.number(),
6
+ mark_price: z.number(),
7
+ mid_price: z.number(),
8
+ oracle_price: z.number(),
9
+ previous_day_price: z.number(),
10
+ price_change_pct_24h: z.number(),
17
11
  });
18
- exports.MarketContextsSchema = v4_1.default.array(exports.MarketContextSchema);
12
+ export const MarketContextsSchema = z.array(MarketContextSchema);
@@ -1,23 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarketDepthReader = void 0;
4
- const utils_1 = require("../../utils");
5
- const base_reader_1 = require("../base-reader");
6
- const market_depth_types_1 = require("./market-depth.types");
7
- class MarketDepthReader extends base_reader_1.BaseReader {
1
+ import { getMarketAddr } from "../../utils";
2
+ import { BaseReader } from "../base-reader";
3
+ import { MarketDepthSchema, } from "./market-depth.types";
4
+ export class MarketDepthReader extends BaseReader {
8
5
  /**
9
6
  * Get the market depth data for a given market
10
7
  * @param marketName The name of the market to get market depth for
11
8
  * @returns The market depth data for the given market
12
9
  */
13
10
  async getByName({ marketName, limit, fetchOptions }) {
14
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
11
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
15
12
  const queryParams = new URLSearchParams({ market: marketAddr.toString() });
16
13
  if (limit !== undefined) {
17
14
  queryParams.set("limit", limit.toString());
18
15
  }
19
16
  const response = await this.getRequest({
20
- schema: market_depth_types_1.MarketDepthSchema,
17
+ schema: MarketDepthSchema,
21
18
  url: `${this.deps.config.tradingHttpUrl}/api/v1/depth`,
22
19
  queryParams,
23
20
  options: fetchOptions,
@@ -31,12 +28,12 @@ class MarketDepthReader extends base_reader_1.BaseReader {
31
28
  * @returns A function to unsubscribe from the market depth updates
32
29
  */
33
30
  subscribeByName(marketName, aggregationSize, onData) {
34
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
31
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
35
32
  const topic = `depth:${marketAddr}:${aggregationSize}`;
36
- return this.deps.ws.subscribe(topic, market_depth_types_1.MarketDepthSchema, onData);
33
+ return this.deps.ws.subscribe(topic, MarketDepthSchema, onData);
37
34
  }
38
35
  resetSubscriptionByName(marketName, aggregationSize = 1) {
39
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
36
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
40
37
  const topic = `depth:${marketAddr}:${aggregationSize}`;
41
38
  this.deps.ws.reset(topic);
42
39
  }
@@ -44,4 +41,3 @@ class MarketDepthReader extends base_reader_1.BaseReader {
44
41
  return [1, 2, 5, 10];
45
42
  }
46
43
  }
47
- exports.MarketDepthReader = MarketDepthReader;
@@ -1,16 +1,10 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MarketDepthSchema = exports.MarketOrderSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.MarketOrderSchema = v4_1.default.object({
9
- price: v4_1.default.number(),
10
- size: v4_1.default.number(),
1
+ import z from "zod/v4";
2
+ export const MarketOrderSchema = z.object({
3
+ price: z.number(),
4
+ size: z.number(),
11
5
  });
12
- exports.MarketDepthSchema = v4_1.default.object({
13
- market: v4_1.default.string(),
14
- bids: v4_1.default.array(exports.MarketOrderSchema),
15
- asks: v4_1.default.array(exports.MarketOrderSchema),
6
+ export const MarketDepthSchema = z.object({
7
+ market: z.string(),
8
+ bids: z.array(MarketOrderSchema),
9
+ asks: z.array(MarketOrderSchema),
16
10
  });