@dydxprotocol/v4-client-js 3.0.7 → 3.1.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 (124) hide show
  1. package/CHANGELOG.md +4 -3
  2. package/__native__/__ios__/v4-native-client.js +2035 -305
  3. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bundle.js +126 -126
  4. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.js +90 -2
  5. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/genesis.js +10 -2
  6. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.js +134 -4
  7. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.lcd.js +13 -1
  8. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.rpc.Query.js +19 -1
  9. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.js +142 -2
  10. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.rpc.msg.js +13 -1
  11. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.js +246 -240
  12. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/block_rate_limit_config.js +11 -3
  13. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.js +126 -2
  14. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.lcd.js +7 -1
  15. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.rpc.Query.js +10 -1
  16. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.js +116 -2
  17. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.rpc.msg.js +7 -1
  18. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/genesis.js +12 -2
  19. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/per_market_fee_discount.js +100 -0
  20. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.js +287 -2
  21. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.lcd.js +26 -1
  22. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.rpc.Query.js +37 -1
  23. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/staking_tier.js +126 -0
  24. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.js +144 -2
  25. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.rpc.msg.js +13 -1
  26. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.js +27 -3
  27. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/leverage.js +118 -0
  28. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/gogoproto/bundle.js +2 -2
  29. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/google/bundle.js +12 -12
  30. package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/bundle.js +22 -22
  31. package/build/cjs/src/clients/modules/get.js +31 -1
  32. package/build/cjs/src/clients/native.js +51 -1
  33. package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  34. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bundle.d.ts +158 -158
  35. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bundle.js +126 -126
  36. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.d.ts +43 -0
  37. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.d.ts.map +1 -1
  38. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.js +89 -1
  39. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/genesis.d.ts +4 -1
  40. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/genesis.d.ts.map +1 -1
  41. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/genesis.js +11 -3
  42. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.d.ts +78 -1
  43. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.d.ts.map +1 -1
  44. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.js +134 -4
  45. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.lcd.d.ts +3 -1
  46. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.lcd.d.ts.map +1 -1
  47. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.lcd.js +13 -1
  48. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.rpc.Query.d.ts +9 -1
  49. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.rpc.Query.d.ts.map +1 -1
  50. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.rpc.Query.js +20 -2
  51. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.d.ts +57 -1
  52. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.d.ts.map +1 -1
  53. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.js +142 -2
  54. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.rpc.msg.d.ts +7 -1
  55. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.rpc.msg.d.ts.map +1 -1
  56. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/tx.rpc.msg.js +14 -2
  57. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.d.ts +1396 -1214
  58. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.d.ts.map +1 -1
  59. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.js +246 -240
  60. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/block_rate_limit_config.d.ts +10 -0
  61. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/block_rate_limit_config.d.ts.map +1 -1
  62. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/block_rate_limit_config.js +11 -3
  63. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.d.ts +48 -0
  64. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.d.ts.map +1 -1
  65. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.js +125 -1
  66. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.lcd.d.ts +2 -1
  67. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.lcd.d.ts.map +1 -1
  68. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.lcd.js +7 -1
  69. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.rpc.Query.d.ts +5 -1
  70. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.rpc.Query.d.ts.map +1 -1
  71. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.rpc.Query.js +11 -2
  72. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.d.ts +51 -0
  73. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.d.ts.map +1 -1
  74. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.js +115 -1
  75. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.rpc.msg.d.ts +7 -1
  76. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.rpc.msg.d.ts.map +1 -1
  77. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.rpc.msg.js +8 -2
  78. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/genesis.d.ts +4 -0
  79. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/genesis.d.ts.map +1 -1
  80. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/genesis.js +12 -2
  81. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/per_market_fee_discount.d.ts +36 -0
  82. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/per_market_fee_discount.d.ts.map +1 -0
  83. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/per_market_fee_discount.js +64 -0
  84. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.d.ts +150 -0
  85. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.d.ts.map +1 -1
  86. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.js +286 -1
  87. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.lcd.d.ts +5 -1
  88. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.lcd.d.ts.map +1 -1
  89. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.lcd.js +26 -1
  90. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.rpc.Query.d.ts +20 -1
  91. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.rpc.Query.d.ts.map +1 -1
  92. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.rpc.Query.js +38 -2
  93. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/staking_tier.d.ts +46 -0
  94. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/staking_tier.d.ts.map +1 -0
  95. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/staking_tier.js +90 -0
  96. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.d.ts +69 -0
  97. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.d.ts.map +1 -1
  98. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.js +143 -1
  99. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.rpc.msg.d.ts +10 -1
  100. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.rpc.msg.d.ts.map +1 -1
  101. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.rpc.msg.js +14 -2
  102. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.query.d.ts +7 -0
  103. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.query.d.ts.map +1 -1
  104. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.d.ts +28 -6
  105. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.d.ts.map +1 -1
  106. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.js +27 -3
  107. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/leverage.d.ts +40 -0
  108. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/leverage.d.ts.map +1 -0
  109. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/leverage.js +82 -0
  110. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/gogoproto/bundle.js +2 -2
  111. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/google/bundle.d.ts +129 -129
  112. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/google/bundle.js +12 -12
  113. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/bundle.d.ts +314 -314
  114. package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/bundle.js +22 -22
  115. package/build/esm/src/clients/modules/get.d.ts +16 -0
  116. package/build/esm/src/clients/modules/get.d.ts.map +1 -1
  117. package/build/esm/src/clients/modules/get.js +32 -2
  118. package/build/esm/src/clients/native.d.ts +3 -0
  119. package/build/esm/src/clients/native.d.ts.map +1 -1
  120. package/build/esm/src/clients/native.js +48 -1
  121. package/build/esm/tsconfig.esm.tsbuildinfo +1 -1
  122. package/package.json +2 -2
  123. package/src/clients/modules/get.ts +50 -1
  124. package/src/clients/native.ts +44 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dydxprotocol/v4-client-js",
3
- "version": "3.0.7",
3
+ "version": "3.1.0",
4
4
  "description": "General client library for the new dYdX system (v4 decentralized)",
5
5
  "main": "build/cjs/src/index.js",
6
6
  "module": "build/esm/src/index.js",
@@ -52,7 +52,7 @@
52
52
  "@cosmjs/stargate": "^0.32.1",
53
53
  "@cosmjs/tendermint-rpc": "^0.32.1",
54
54
  "@cosmjs/utils": "^0.32.1",
55
- "@dydxprotocol/v4-proto": "9.0.0",
55
+ "@dydxprotocol/v4-proto": "9.4.0-rc.0",
56
56
  "@osmonauts/lcd": "^0.6.0",
57
57
  "@scure/bip32": "^1.1.5",
58
58
  "@scure/bip39": "^1.1.1",
@@ -7,7 +7,10 @@ import {
7
7
  TxExtension,
8
8
  QueryAbciResponse,
9
9
  } from '@cosmjs/stargate';
10
- import { GetAuthenticatorsRequest, GetAuthenticatorsResponse } from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/accountplus/query';
10
+ import {
11
+ GetAuthenticatorsRequest,
12
+ GetAuthenticatorsResponse,
13
+ } from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/accountplus/query';
11
14
  import * as AuthModule from 'cosmjs-types/cosmos/auth/v1beta1/query';
12
15
  import * as BankModule from 'cosmjs-types/cosmos/bank/v1beta1/query';
13
16
  import { Any } from 'cosmjs-types/google/protobuf/any';
@@ -626,6 +629,52 @@ export class Get {
626
629
  return GetAuthenticatorsResponse.decode(data);
627
630
  }
628
631
 
632
+ /**
633
+ * @description Get fee discounts for all perp markets.
634
+ * @returns All markets' fee discounts.
635
+ */
636
+ async getAllPerpMarketFeeDiscounts(): Promise<FeeTierModule.QueryAllMarketFeeDiscountParamsRequest> {
637
+ const requestData = Uint8Array.from(
638
+ FeeTierModule.QueryAllMarketFeeDiscountParamsRequest.encode({}).finish(),
639
+ );
640
+
641
+ const data = await this.sendQuery(
642
+ '/dydxprotocol.feetiers.Query/AllMarketFeeDiscountParams',
643
+ requestData,
644
+ );
645
+
646
+ return FeeTierModule.QueryAllMarketFeeDiscountParamsResponse.decode(data);
647
+ }
648
+
649
+ /**
650
+ *
651
+ * @param address The address of the user to get the staking tier for.
652
+ * @returns The staking tier for the user.
653
+ */
654
+ async getUserStakingTier(address: string): Promise<FeeTierModule.QueryUserStakingTierResponse> {
655
+ const requestData = Uint8Array.from(
656
+ FeeTierModule.QueryUserStakingTierRequest.encode({
657
+ address,
658
+ }).finish(),
659
+ );
660
+
661
+ const data = await this.sendQuery('/dydxprotocol.feetiers.Query/UserStakingTier', requestData);
662
+
663
+ return FeeTierModule.QueryUserStakingTierResponse.decode(data);
664
+ }
665
+
666
+ /**
667
+ * @description Get all staking tiers.
668
+ * @returns All staking tiers.
669
+ */
670
+ async getAllStakingTiers(): Promise<FeeTierModule.QueryStakingTiersResponse> {
671
+ const requestData = Uint8Array.from(FeeTierModule.QueryStakingTiersRequest.encode({}).finish());
672
+
673
+ const data = await this.sendQuery('/dydxprotocol.feetiers.Query/StakingTiers', requestData);
674
+
675
+ return FeeTierModule.QueryStakingTiersResponse.decode(data);
676
+ }
677
+
629
678
  private async sendQuery(requestUrl: string, requestData: Uint8Array): Promise<Uint8Array> {
630
679
  // eslint-disable-next-line max-len
631
680
  const resp: QueryAbciResponse = await this.stargateQueryClient.queryAbci(
@@ -1462,3 +1462,47 @@ export async function withdrawFromMegavault(
1462
1462
  return wrappedError(error);
1463
1463
  }
1464
1464
  }
1465
+
1466
+ export async function getAllPerpMarketFeeDiscounts(): Promise<string> {
1467
+ try {
1468
+ const client = globalThis.client;
1469
+ if (client === undefined) {
1470
+ throw new UserError('client is not connected. Call connectClient() first');
1471
+ }
1472
+ const response = await globalThis.client?.validatorClient.get.getAllPerpMarketFeeDiscounts();
1473
+ return encodeJson(response);
1474
+ } catch (error) {
1475
+ return wrappedError(error);
1476
+ }
1477
+ }
1478
+
1479
+ export async function getAllStakingTiers(): Promise<string> {
1480
+ try {
1481
+ const client = globalThis.client;
1482
+ if (client === undefined) {
1483
+ throw new UserError('client is not connected. Call connectClient() first');
1484
+ }
1485
+ const response = await globalThis.client?.validatorClient.get.getAllStakingTiers();
1486
+ return encodeJson(response);
1487
+ } catch (error) {
1488
+ return wrappedError(error);
1489
+ }
1490
+ }
1491
+
1492
+ export async function getUserStakingTier(payload: string): Promise<string> {
1493
+ try {
1494
+ const client = globalThis.client;
1495
+ if (client === undefined) {
1496
+ throw new UserError('client is not connected. Call connectClient() first');
1497
+ }
1498
+ const json = JSON.parse(payload);
1499
+ const address = json.address;
1500
+ if (address === undefined) {
1501
+ throw new UserError('address is not set');
1502
+ }
1503
+ const response = await globalThis.client?.validatorClient.get.getUserStakingTier(address);
1504
+ return encodeJson(response);
1505
+ } catch (error) {
1506
+ return wrappedError(error);
1507
+ }
1508
+ }