@mysten/deepbook-v3 0.20.4 → 0.21.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 (56) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/client.d.ts +21 -0
  3. package/dist/cjs/client.js +71 -0
  4. package/dist/cjs/client.js.map +2 -2
  5. package/dist/cjs/transactions/balanceManager.d.ts +1 -23
  6. package/dist/cjs/transactions/balanceManager.js +2 -13
  7. package/dist/cjs/transactions/balanceManager.js.map +2 -2
  8. package/dist/cjs/transactions/deepbook.d.ts +1 -1
  9. package/dist/cjs/transactions/deepbook.js +2 -2
  10. package/dist/cjs/transactions/deepbook.js.map +2 -2
  11. package/dist/cjs/transactions/deepbookAdmin.d.ts +10 -0
  12. package/dist/cjs/transactions/deepbookAdmin.js +22 -0
  13. package/dist/cjs/transactions/deepbookAdmin.js.map +2 -2
  14. package/dist/cjs/transactions/marginAdmin.d.ts +9 -4
  15. package/dist/cjs/transactions/marginAdmin.js +16 -9
  16. package/dist/cjs/transactions/marginAdmin.js.map +2 -2
  17. package/dist/cjs/transactions/marginManager.d.ts +21 -0
  18. package/dist/cjs/transactions/marginManager.js +50 -0
  19. package/dist/cjs/transactions/marginManager.js.map +2 -2
  20. package/dist/cjs/utils/config.js +1 -1
  21. package/dist/cjs/utils/config.js.map +2 -2
  22. package/dist/cjs/utils/constants.js +5 -5
  23. package/dist/cjs/utils/constants.js.map +1 -1
  24. package/dist/esm/client.d.ts +21 -0
  25. package/dist/esm/client.js +71 -0
  26. package/dist/esm/client.js.map +2 -2
  27. package/dist/esm/transactions/balanceManager.d.ts +1 -23
  28. package/dist/esm/transactions/balanceManager.js +2 -13
  29. package/dist/esm/transactions/balanceManager.js.map +2 -2
  30. package/dist/esm/transactions/deepbook.d.ts +1 -1
  31. package/dist/esm/transactions/deepbook.js +2 -2
  32. package/dist/esm/transactions/deepbook.js.map +2 -2
  33. package/dist/esm/transactions/deepbookAdmin.d.ts +10 -0
  34. package/dist/esm/transactions/deepbookAdmin.js +22 -0
  35. package/dist/esm/transactions/deepbookAdmin.js.map +2 -2
  36. package/dist/esm/transactions/marginAdmin.d.ts +9 -4
  37. package/dist/esm/transactions/marginAdmin.js +16 -9
  38. package/dist/esm/transactions/marginAdmin.js.map +2 -2
  39. package/dist/esm/transactions/marginManager.d.ts +21 -0
  40. package/dist/esm/transactions/marginManager.js +50 -0
  41. package/dist/esm/transactions/marginManager.js.map +2 -2
  42. package/dist/esm/utils/config.js +1 -1
  43. package/dist/esm/utils/config.js.map +2 -2
  44. package/dist/esm/utils/constants.js +5 -5
  45. package/dist/esm/utils/constants.js.map +1 -1
  46. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  47. package/dist/tsconfig.tsbuildinfo +1 -1
  48. package/package.json +3 -3
  49. package/src/client.ts +110 -0
  50. package/src/transactions/balanceManager.ts +2 -15
  51. package/src/transactions/deepbook.ts +2 -2
  52. package/src/transactions/deepbookAdmin.ts +24 -0
  53. package/src/transactions/marginAdmin.ts +32 -20
  54. package/src/transactions/marginManager.ts +53 -0
  55. package/src/utils/config.ts +1 -1
  56. package/src/utils/constants.ts +5 -5
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @mysten/deepbook-v3
2
2
 
3
+ ## 0.21.0
4
+
5
+ ### Minor Changes
6
+
7
+ - ab5ff6c: New testnet core package upgrade, margin package redeployment
8
+
3
9
  ## 0.20.4
4
10
 
5
11
  ### Patch Changes
@@ -557,6 +557,27 @@ export declare class DeepBookClient {
557
557
  quotePythPrice: string;
558
558
  quotePythDecimals: number;
559
559
  }>;
560
+ /**
561
+ * @description Get the base asset balance of a margin manager
562
+ * @param {string} marginManagerKey The key to identify the margin manager
563
+ * @param {number} decimals Number of decimal places to show (default: 6)
564
+ * @returns {Promise<string>} The base asset balance
565
+ */
566
+ getMarginManagerBaseBalance(marginManagerKey: string, decimals?: number): Promise<string>;
567
+ /**
568
+ * @description Get the quote asset balance of a margin manager
569
+ * @param {string} marginManagerKey The key to identify the margin manager
570
+ * @param {number} decimals Number of decimal places to show (default: 6)
571
+ * @returns {Promise<string>} The quote asset balance
572
+ */
573
+ getMarginManagerQuoteBalance(marginManagerKey: string, decimals?: number): Promise<string>;
574
+ /**
575
+ * @description Get the DEEP token balance of a margin manager
576
+ * @param {string} marginManagerKey The key to identify the margin manager
577
+ * @param {number} decimals Number of decimal places to show (default: 6)
578
+ * @returns {Promise<string>} The DEEP token balance
579
+ */
580
+ getMarginManagerDeepBalance(marginManagerKey: string, decimals?: number): Promise<string>;
560
581
  /**
561
582
  * @description Check if a deepbook pool is enabled for margin trading
562
583
  * @param {string} poolKey The key to identify the pool
@@ -1209,6 +1209,77 @@ class DeepBookClient {
1209
1209
  quotePythDecimals
1210
1210
  };
1211
1211
  }
1212
+ /**
1213
+ * @description Get the base asset balance of a margin manager
1214
+ * @param {string} marginManagerKey The key to identify the margin manager
1215
+ * @param {number} decimals Number of decimal places to show (default: 6)
1216
+ * @returns {Promise<string>} The base asset balance
1217
+ */
1218
+ async getMarginManagerBaseBalance(marginManagerKey, decimals = 9) {
1219
+ const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
1220
+ const tx = new import_transactions.Transaction();
1221
+ tx.add(this.marginManager.baseBalance(manager.poolKey, manager.address));
1222
+ const res = await this.client.devInspectTransactionBlock({
1223
+ sender: (0, import_utils.normalizeSuiAddress)(__privateGet(this, _address)),
1224
+ transactionBlock: tx
1225
+ });
1226
+ if (!res.results || !res.results[0] || !res.results[0].returnValues) {
1227
+ throw new Error(
1228
+ `Failed to get margin manager base balance: ${res.effects?.status?.error || "Unknown error"}`
1229
+ );
1230
+ }
1231
+ const bytes = res.results[0].returnValues[0][0];
1232
+ const pool = __privateGet(this, _config).getPool(manager.poolKey);
1233
+ const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
1234
+ return __privateMethod(this, _DeepBookClient_instances, formatTokenAmount_fn).call(this, BigInt(import_bcs.bcs.U64.parse(new Uint8Array(bytes))), baseCoin.scalar, decimals);
1235
+ }
1236
+ /**
1237
+ * @description Get the quote asset balance of a margin manager
1238
+ * @param {string} marginManagerKey The key to identify the margin manager
1239
+ * @param {number} decimals Number of decimal places to show (default: 6)
1240
+ * @returns {Promise<string>} The quote asset balance
1241
+ */
1242
+ async getMarginManagerQuoteBalance(marginManagerKey, decimals = 9) {
1243
+ const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
1244
+ const tx = new import_transactions.Transaction();
1245
+ tx.add(this.marginManager.quoteBalance(manager.poolKey, manager.address));
1246
+ const res = await this.client.devInspectTransactionBlock({
1247
+ sender: (0, import_utils.normalizeSuiAddress)(__privateGet(this, _address)),
1248
+ transactionBlock: tx
1249
+ });
1250
+ if (!res.results || !res.results[0] || !res.results[0].returnValues) {
1251
+ throw new Error(
1252
+ `Failed to get margin manager quote balance: ${res.effects?.status?.error || "Unknown error"}`
1253
+ );
1254
+ }
1255
+ const bytes = res.results[0].returnValues[0][0];
1256
+ const pool = __privateGet(this, _config).getPool(manager.poolKey);
1257
+ const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
1258
+ return __privateMethod(this, _DeepBookClient_instances, formatTokenAmount_fn).call(this, BigInt(import_bcs.bcs.U64.parse(new Uint8Array(bytes))), quoteCoin.scalar, decimals);
1259
+ }
1260
+ /**
1261
+ * @description Get the DEEP token balance of a margin manager
1262
+ * @param {string} marginManagerKey The key to identify the margin manager
1263
+ * @param {number} decimals Number of decimal places to show (default: 6)
1264
+ * @returns {Promise<string>} The DEEP token balance
1265
+ */
1266
+ async getMarginManagerDeepBalance(marginManagerKey, decimals = 6) {
1267
+ const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
1268
+ const tx = new import_transactions.Transaction();
1269
+ tx.add(this.marginManager.deepBalance(manager.poolKey, manager.address));
1270
+ const res = await this.client.devInspectTransactionBlock({
1271
+ sender: (0, import_utils.normalizeSuiAddress)(__privateGet(this, _address)),
1272
+ transactionBlock: tx
1273
+ });
1274
+ if (!res.results || !res.results[0] || !res.results[0].returnValues) {
1275
+ throw new Error(
1276
+ `Failed to get margin manager DEEP balance: ${res.effects?.status?.error || "Unknown error"}`
1277
+ );
1278
+ }
1279
+ const bytes = res.results[0].returnValues[0][0];
1280
+ const deepCoin = __privateGet(this, _config).getCoin("DEEP");
1281
+ return __privateMethod(this, _DeepBookClient_instances, formatTokenAmount_fn).call(this, BigInt(import_bcs.bcs.U64.parse(new Uint8Array(bytes))), deepCoin.scalar, decimals);
1282
+ }
1212
1283
  // === Margin Registry Functions ===
1213
1284
  /**
1214
1285
  * @description Check if a deepbook pool is enabled for margin trading