@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
package/dist/utils.js CHANGED
@@ -1,26 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractVaultAddressFromCreateTx = exports.PARAM_MAP = void 0;
4
- exports.getMarketAddr = getMarketAddr;
5
- exports.postRequest = postRequest;
6
- exports.patchRequest = patchRequest;
7
- exports.getRequest = getRequest;
8
- exports.prettifyMaybeZodError = prettifyMaybeZodError;
9
- exports.bigIntReviver = bigIntReviver;
10
- exports.getPrimarySubaccountAddr = getPrimarySubaccountAddr;
11
- exports.getTradingCompetitionSubaccountAddr = getTradingCompetitionSubaccountAddr;
12
- exports.getVaultShareAddress = getVaultShareAddress;
13
- exports.constructKnownQueryParams = constructKnownQueryParams;
14
- exports.generateRandomReplayProtectionNonce = generateRandomReplayProtectionNonce;
15
- exports.roundToTickSize = roundToTickSize;
16
- const ts_sdk_1 = require("@aptos-labs/ts-sdk");
17
- const v4_1 = require("zod/v4");
18
- const constants_1 = require("./constants");
19
- function getMarketAddr(name, perpEngineGlobalAddr) {
20
- const marketNameBytes = new ts_sdk_1.MoveString(name).bcsToBytes();
21
- return (0, ts_sdk_1.createObjectAddress)(ts_sdk_1.AccountAddress.fromString(perpEngineGlobalAddr), marketNameBytes);
1
+ import { AccountAddress, createObjectAddress, MoveString, } from "@aptos-labs/ts-sdk";
2
+ import { z, ZodError } from "zod/v4";
3
+ import { CompatVersion, QUERY_PARAM_KEYS } from "./constants";
4
+ export function getMarketAddr(name, perpEngineGlobalAddr) {
5
+ const marketNameBytes = new MoveString(name).bcsToBytes();
6
+ return createObjectAddress(AccountAddress.fromString(perpEngineGlobalAddr), marketNameBytes);
22
7
  }
23
- async function postRequest({ schema, url, body, options = {}, apiKey, }) {
8
+ export async function postRequest({ schema, url, body, options = {}, apiKey, }) {
24
9
  return baseRequest({
25
10
  schema,
26
11
  url,
@@ -31,7 +16,7 @@ async function postRequest({ schema, url, body, options = {}, apiKey, }) {
31
16
  apiKey,
32
17
  });
33
18
  }
34
- async function patchRequest({ schema, url, body, options = {}, apiKey, }) {
19
+ export async function patchRequest({ schema, url, body, options = {}, apiKey, }) {
35
20
  return baseRequest({
36
21
  schema,
37
22
  url,
@@ -42,7 +27,7 @@ async function patchRequest({ schema, url, body, options = {}, apiKey, }) {
42
27
  apiKey,
43
28
  });
44
29
  }
45
- async function getRequest({ schema, url, queryParams, options = {}, apiKey, }) {
30
+ export async function getRequest({ schema, url, queryParams, options = {}, apiKey, }) {
46
31
  return baseRequest({
47
32
  schema,
48
33
  url,
@@ -87,13 +72,13 @@ async function baseRequest({ schema, url, method, options = {}, body, queryParam
87
72
  throw prettifyMaybeZodError(e);
88
73
  }
89
74
  }
90
- function prettifyMaybeZodError(e) {
91
- if (e instanceof v4_1.ZodError) {
92
- return new Error(v4_1.z.prettifyError(e), { cause: e });
75
+ export function prettifyMaybeZodError(e) {
76
+ if (e instanceof ZodError) {
77
+ return new Error(z.prettifyError(e), { cause: e });
93
78
  }
94
79
  return e;
95
80
  }
96
- function bigIntReviver(key, value) {
81
+ export function bigIntReviver(key, value) {
97
82
  if (value &&
98
83
  typeof value === "object" &&
99
84
  "$bigint" in value &&
@@ -102,45 +87,58 @@ function bigIntReviver(key, value) {
102
87
  }
103
88
  return value;
104
89
  }
105
- function getPrimarySubaccountAddr(addr, variant = "v2") {
106
- const account = typeof addr === "string" ? ts_sdk_1.AccountAddress.fromString(addr) : addr;
107
- const seed = new TextEncoder().encode(variant === "v1" ? "decibel_dex_primary" : "decibel_dex_primary_v2");
108
- return (0, ts_sdk_1.createObjectAddress)(account, seed).toString();
90
+ const baseSeed = "decibel_dex_primary";
91
+ const getCompatVersionAsNumber = (compatVersion) => {
92
+ return Number(compatVersion.split(".")[1]);
93
+ };
94
+ const createSeed = (compatVersion) => {
95
+ return new TextEncoder().encode(compatVersion === CompatVersion.V0_0
96
+ ? baseSeed
97
+ : `${baseSeed}_v${getCompatVersionAsNumber(compatVersion)}`);
98
+ };
99
+ export function getPrimarySubaccountAddr(addr, config, options) {
100
+ const account = typeof addr === "string" ? AccountAddress.fromString(addr) : addr;
101
+ if (options?.overrideCompatVersion &&
102
+ getCompatVersionAsNumber(options.overrideCompatVersion) <=
103
+ getCompatVersionAsNumber(config.compatVersion)) {
104
+ return createObjectAddress(account, createSeed(options.overrideCompatVersion)).toString();
105
+ }
106
+ return createObjectAddress(account, createSeed(config.compatVersion)).toString();
109
107
  }
110
- function getTradingCompetitionSubaccountAddr(addr) {
111
- const account = typeof addr === "string" ? ts_sdk_1.AccountAddress.fromString(addr) : addr;
108
+ export function getTradingCompetitionSubaccountAddr(addr) {
109
+ const account = typeof addr === "string" ? AccountAddress.fromString(addr) : addr;
112
110
  const seed = new TextEncoder().encode("trading_competition");
113
- return (0, ts_sdk_1.createObjectAddress)(account, seed).toString();
111
+ return createObjectAddress(account, seed).toString();
114
112
  }
115
- function getVaultShareAddress(vaultAddress) {
113
+ export function getVaultShareAddress(vaultAddress) {
116
114
  const seed = new TextEncoder().encode("vault_share_asset");
117
- return (0, ts_sdk_1.createObjectAddress)(ts_sdk_1.AccountAddress.fromString(vaultAddress), seed).toString();
115
+ return createObjectAddress(AccountAddress.fromString(vaultAddress), seed).toString();
118
116
  }
119
- exports.PARAM_MAP = {
120
- limit: constants_1.QUERY_PARAM_KEYS.limit,
121
- offset: constants_1.QUERY_PARAM_KEYS.offset,
122
- sortKey: constants_1.QUERY_PARAM_KEYS.sortKey,
123
- sortDir: constants_1.QUERY_PARAM_KEYS.sortDir,
124
- searchTerm: constants_1.QUERY_PARAM_KEYS.searchTerm,
117
+ export const PARAM_MAP = {
118
+ limit: QUERY_PARAM_KEYS.limit,
119
+ offset: QUERY_PARAM_KEYS.offset,
120
+ sortKey: QUERY_PARAM_KEYS.sortKey,
121
+ sortDir: QUERY_PARAM_KEYS.sortDir,
122
+ searchTerm: QUERY_PARAM_KEYS.searchTerm,
125
123
  };
126
124
  /**
127
125
  * Construct query params from an args object, supporting optional PageParams, SearchTermParams, and generic SortParams.
128
126
  * @param args - The argument object, which may include page, search, and sort params.
129
127
  * @returns URLSearchParams instance with the constructed query parameters.
130
128
  */
131
- function constructKnownQueryParams(args) {
129
+ export function constructKnownQueryParams(args) {
132
130
  const queryParams = new URLSearchParams();
133
131
  Object.keys(args).forEach((_argKey) => {
134
132
  const argKey = _argKey;
135
133
  const value = args[argKey];
136
- const paramKey = exports.PARAM_MAP[argKey];
134
+ const paramKey = PARAM_MAP[argKey];
137
135
  if (paramKey && value !== undefined && !(typeof value === "string" && value.trim() === "")) {
138
136
  queryParams.set(paramKey, String(value));
139
137
  }
140
138
  });
141
139
  return queryParams;
142
140
  }
143
- function generateRandomReplayProtectionNonce() {
141
+ export function generateRandomReplayProtectionNonce() {
144
142
  const buf = new Uint32Array(2);
145
143
  crypto.getRandomValues(buf);
146
144
  const valueAtIndex0 = buf[0];
@@ -154,7 +152,7 @@ function generateRandomReplayProtectionNonce() {
154
152
  * Round price to valid tick size.
155
153
  * Prices must be multiples of tickSize in chain units.
156
154
  */
157
- function roundToTickSize(price, tickSize, pxDecimals, roundUp) {
155
+ export function roundToTickSize(price, tickSize, pxDecimals, roundUp) {
158
156
  if (price === 0)
159
157
  return 0;
160
158
  const denormalized = price * 10 ** pxDecimals;
@@ -163,7 +161,7 @@ function roundToTickSize(price, tickSize, pxDecimals, roundUp) {
163
161
  : Math.floor(denormalized / tickSize) * tickSize;
164
162
  return Number((rounded / 10 ** pxDecimals).toFixed(pxDecimals));
165
163
  }
166
- const extractVaultAddressFromCreateTx = (createVaultTx) => {
164
+ export const extractVaultAddressFromCreateTx = (createVaultTx) => {
167
165
  // Extract vault address from transaction events
168
166
  let vaultAddress = null;
169
167
  if ("events" in createVaultTx && Array.isArray(createVaultTx.events)) {
@@ -181,4 +179,3 @@ const extractVaultAddressFromCreateTx = (createVaultTx) => {
181
179
  typeof vaultAddress === "object" && "inner" in vaultAddress ? vaultAddress.inner : vaultAddress;
182
180
  return vaultAddress;
183
181
  };
184
- exports.extractVaultAddressFromCreateTx = extractVaultAddressFromCreateTx;
package/dist/write.d.ts CHANGED
@@ -133,8 +133,8 @@ export declare class DecibelWriteDex extends BaseSDK {
133
133
  */
134
134
  accountOverride?: Account;
135
135
  }): Promise<CommittedTransactionResponse>;
136
- delegateTradingTo({ subaccountAddr, accountToDelegateTo, }: {
137
- subaccountAddr?: string;
136
+ delegateTradingToForSubaccount({ subaccountAddr, accountToDelegateTo, }: {
137
+ subaccountAddr: string;
138
138
  accountToDelegateTo: string;
139
139
  }): Promise<CommittedTransactionResponse>;
140
140
  revokeDelegation({ subaccountAddr, accountToRevoke, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"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"}
package/dist/write.js CHANGED
@@ -1,12 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DecibelWriteDex = exports.TimeInForce = void 0;
4
- const base_1 = require("./base");
5
- const constants_1 = require("./constants");
6
- const order_status_1 = require("./order-status");
7
- const subaccount_types_1 = require("./subaccount-types");
8
- const utils_1 = require("./utils");
9
- exports.TimeInForce = {
1
+ import { BaseSDK } from "./base";
2
+ import { getVaultApiModule } from "./constants";
3
+ import { OrderStatusClient } from "./order-status";
4
+ import { RenameSubaccountSchema } from "./subaccount-types";
5
+ import { getMarketAddr, getPrimarySubaccountAddr, postRequest } from "./utils";
6
+ export const TimeInForce = {
10
7
  GoodTillCanceled: 0,
11
8
  PostOnly: 1,
12
9
  ImmediateOrCancel: 2,
@@ -22,13 +19,13 @@ function roundToTickSize(price, tickSize) {
22
19
  return 0;
23
20
  return Math.round(price / tickSize) * tickSize;
24
21
  }
25
- class DecibelWriteDex extends base_1.BaseSDK {
22
+ export class DecibelWriteDex extends BaseSDK {
26
23
  cache;
27
24
  orderStatusClient;
28
25
  constructor(config, account, opts) {
29
26
  super(config, account, opts);
30
27
  this.cache = {};
31
- this.orderStatusClient = new order_status_1.OrderStatusClient(config);
28
+ this.orderStatusClient = new OrderStatusClient(config);
32
29
  }
33
30
  /**
34
31
  * Extract order_id from OrderEvent in transaction response
@@ -64,8 +61,8 @@ class DecibelWriteDex extends base_1.BaseSDK {
64
61
  }
65
62
  }
66
63
  async renameSubaccount({ subaccountAddress, newName }) {
67
- return await (0, utils_1.postRequest)({
68
- schema: subaccount_types_1.RenameSubaccountSchema,
64
+ return await postRequest({
65
+ schema: RenameSubaccountSchema,
69
66
  url: `${this.config.tradingHttpUrl}/api/v1/subaccounts/${subaccountAddress}`,
70
67
  body: { name: newName },
71
68
  });
@@ -79,13 +76,13 @@ class DecibelWriteDex extends base_1.BaseSDK {
79
76
  }
80
77
  async sendSubaccountTx(sendTx, subaccountAddr) {
81
78
  if (!subaccountAddr) {
82
- subaccountAddr = (0, utils_1.getPrimarySubaccountAddr)(this.account.accountAddress);
79
+ subaccountAddr = getPrimarySubaccountAddr(this.account.accountAddress, this.config);
83
80
  }
84
81
  return await sendTx(subaccountAddr);
85
82
  }
86
83
  async withSubaccount(fn, subaccountAddr) {
87
84
  if (!subaccountAddr) {
88
- subaccountAddr = (0, utils_1.getPrimarySubaccountAddr)(this.account.accountAddress);
85
+ subaccountAddr = getPrimarySubaccountAddr(this.account.accountAddress, this.config);
89
86
  }
90
87
  return await fn(subaccountAddr);
91
88
  }
@@ -127,7 +124,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
127
124
  }
128
125
  async placeOrder({ marketName, price, size, isBuy, timeInForce, isReduceOnly, clientOrderId, stopPrice, tpTriggerPrice, tpLimitPrice, slTriggerPrice, slLimitPrice, builderAddr, builderFee, subaccountAddr, accountOverride, tickSize, }) {
129
126
  try {
130
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.config.deployment.perpEngineGlobal);
127
+ const marketAddr = getMarketAddr(marketName, this.config.deployment.perpEngineGlobal);
131
128
  // Apply tick size rounding if tickSize is provided
132
129
  const roundedPrice = tickSize ? roundToTickSize(price, tickSize) : price;
133
130
  const roundedStopPrice = stopPrice !== undefined && tickSize ? roundToTickSize(stopPrice, tickSize) : stopPrice;
@@ -194,7 +191,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
194
191
  async placeTwapOrder({ marketName, size, isBuy, isReduceOnly,
195
192
  // clientOrderId,
196
193
  twapFrequencySeconds, twapDurationSeconds, builderAddress, builderFees, subaccountAddr, accountOverride, }) {
197
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.config.deployment.perpEngineGlobal);
194
+ const marketAddr = getMarketAddr(marketName, this.config.deployment.perpEngineGlobal);
198
195
  const txResponse = await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
199
196
  // TODO: update to place_twap_order_to_subaccount_v2 once available
200
197
  function: `${this.config.deployment.package}::dex_accounts::place_twap_order_to_subaccount`,
@@ -229,7 +226,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
229
226
  async cancelOrder({ orderId, subaccountAddr, accountOverride, ...args }) {
230
227
  // Either marketName or marketAddr must be provided
231
228
  const marketAddr = "marketName" in args
232
- ? (0, utils_1.getMarketAddr)(args.marketName, this.config.deployment.perpEngineGlobal)
229
+ ? getMarketAddr(args.marketName, this.config.deployment.perpEngineGlobal)
233
230
  : args.marketAddr;
234
231
  return await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
235
232
  function: `${this.config.deployment.package}::dex_accounts::cancel_order_to_subaccount`,
@@ -238,16 +235,16 @@ class DecibelWriteDex extends base_1.BaseSDK {
238
235
  }, accountOverride), subaccountAddr);
239
236
  }
240
237
  async cancelClientOrder({ clientOrderId, marketName, subaccountAddr, accountOverride, }) {
241
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.config.deployment.perpEngineGlobal);
238
+ const marketAddr = getMarketAddr(marketName, this.config.deployment.perpEngineGlobal);
242
239
  return await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
243
240
  function: `${this.config.deployment.package}::dex_accounts::cancel_client_order_to_subaccount`,
244
241
  typeArguments: [],
245
242
  functionArguments: [subaccountAddr, clientOrderId, marketAddr.toString()],
246
243
  }, accountOverride), subaccountAddr);
247
244
  }
248
- async delegateTradingTo({ subaccountAddr, accountToDelegateTo, }) {
245
+ async delegateTradingToForSubaccount({ subaccountAddr, accountToDelegateTo, }) {
249
246
  return await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
250
- function: `${this.config.deployment.package}::dex_accounts::delegate_trading_to`,
247
+ function: `${this.config.deployment.package}::dex_accounts::delegate_trading_to_for_subaccount`,
251
248
  typeArguments: [],
252
249
  functionArguments: [subaccountAddr, accountToDelegateTo],
253
250
  }), subaccountAddr);
@@ -357,7 +354,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
357
354
  * Create a new vault with optional initial funding
358
355
  */
359
356
  async buildCreateVaultTx({ contributionAssetType, vaultName, vaultShareSymbol, vaultShareIconUri = "", vaultShareProjectUri = "", feeBps, feeIntervalS, contributionLockupDurationS, initialFunding = 0, acceptsContributions = false, delegateToCreator = false, signerAddress, vaultDescription, vaultSocialLinks, }) {
360
- const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
357
+ const vaultApiModule = getVaultApiModule(this.config.compatVersion);
361
358
  const transaction = await this.buildTx({
362
359
  function: `${this.config.deployment.package}::${vaultApiModule}::create_and_fund_vault`,
363
360
  typeArguments: [],
@@ -381,7 +378,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
381
378
  return transaction;
382
379
  }
383
380
  async createVault(args) {
384
- const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
381
+ const vaultApiModule = getVaultApiModule(this.config.compatVersion);
385
382
  const txResponse = await this.sendSubaccountTx(() => this.sendTx({
386
383
  function: `${this.config.deployment.package}::${vaultApiModule}::create_and_fund_vault`,
387
384
  typeArguments: [],
@@ -408,7 +405,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
408
405
  * Activate a vault to accept contributions
409
406
  */
410
407
  async buildActivateVaultTx({ vaultAddress, additionalFunding = 0, signerAddress, }) {
411
- const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
408
+ const vaultApiModule = getVaultApiModule(this.config.compatVersion);
412
409
  return await this.buildTx({
413
410
  function: `${this.config.deployment.package}::${vaultApiModule}::activate_vault`,
414
411
  typeArguments: [],
@@ -419,7 +416,7 @@ class DecibelWriteDex extends base_1.BaseSDK {
419
416
  * Contribute funds to a vault in exchange for shares
420
417
  */
421
418
  async buildDepositToVaultTx({ vaultAddress, amount, signerAddress, }) {
422
- const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
419
+ const vaultApiModule = getVaultApiModule(this.config.compatVersion);
423
420
  return await this.buildTx({
424
421
  function: `${this.config.deployment.package}::${vaultApiModule}::contribute`,
425
422
  typeArguments: [],
@@ -493,4 +490,3 @@ class DecibelWriteDex extends base_1.BaseSDK {
493
490
  }), subaccountAddr);
494
491
  }
495
492
  }
496
- exports.DecibelWriteDex = DecibelWriteDex;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decibeltrade/sdk",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "exports": {
@@ -52,9 +52,9 @@ export class DecibelWsSubscription {
52
52
 
53
53
  ws.addEventListener("open", () => {
54
54
  this.#reconnectAttempts = 0;
55
- this.#subscriptions.keys().forEach((topic) => {
55
+ for (const topic of Array.from(this.#subscriptions.keys())) {
56
56
  ws.send(this.#getSubscribeMessage(topic));
57
- });
57
+ }
58
58
  });
59
59
 
60
60
  ws.addEventListener("message", (event) => {
package/src/write.ts CHANGED
@@ -439,17 +439,17 @@ export class DecibelWriteDex extends BaseSDK {
439
439
  );
440
440
  }
441
441
 
442
- async delegateTradingTo({
442
+ async delegateTradingToForSubaccount({
443
443
  subaccountAddr,
444
444
  accountToDelegateTo,
445
445
  }: {
446
- subaccountAddr?: string;
446
+ subaccountAddr: string;
447
447
  accountToDelegateTo: string;
448
448
  }) {
449
449
  return await this.sendSubaccountTx(
450
450
  (subaccountAddr) =>
451
451
  this.sendTx({
452
- function: `${this.config.deployment.package}::dex_accounts::delegate_trading_to`,
452
+ function: `${this.config.deployment.package}::dex_accounts::delegate_trading_to_for_subaccount`,
453
453
  typeArguments: [],
454
454
  functionArguments: [subaccountAddr, accountToDelegateTo],
455
455
  }),