@ritbit/v4-client-js 2.4.1 → 2.4.2

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 (296) hide show
  1. package/build/cjs/src/clients/composite-client.js +10 -9
  2. package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  3. package/build/esm/src/clients/composite-client.d.ts +3 -3
  4. package/build/esm/src/clients/composite-client.d.ts.map +1 -1
  5. package/build/esm/src/clients/composite-client.js +10 -9
  6. package/build/esm/tsconfig.esm.tsbuildinfo +1 -1
  7. package/package.json +11 -3
  8. package/.env +0 -1
  9. package/.eslintignore +0 -2
  10. package/.eslintrc.js +0 -15
  11. package/.gitleaks.toml +0 -24
  12. package/.gitleaksignore +0 -1
  13. package/.nvmrc +0 -1
  14. package/.prettierignore +0 -3
  15. package/.prettierrc.json +0 -6
  16. package/.releaserc +0 -10
  17. package/.vscode/launch.json +0 -11
  18. package/__native__/__ios__/v4-native-client.js +0 -251395
  19. package/__native__/__ios__/v4-native-client.js.map +0 -1
  20. package/__tests__/clients/composite-client.test.ts +0 -140
  21. package/__tests__/helpers/baseClients.ts +0 -23
  22. package/__tests__/helpers/constants.ts +0 -131
  23. package/__tests__/lib/helpers.test.ts +0 -55
  24. package/__tests__/lib/util.test.ts +0 -77
  25. package/__tests__/lib/validation.test.ts +0 -289
  26. package/__tests__/modules/client/AccountEndpoints.test.ts +0 -236
  27. package/__tests__/modules/client/FaucetEndpoint.test.ts +0 -14
  28. package/__tests__/modules/client/MarketsEndpoints.test.ts +0 -84
  29. package/__tests__/modules/client/Transfers.test.ts +0 -44
  30. package/__tests__/modules/client/UtilityEndpoints.test.ts +0 -29
  31. package/__tests__/modules/client/ValidatorGetEndpoints.test.ts +0 -50
  32. package/__tests__/modules/client/ValidatorPostEndpoints.test.ts +0 -52
  33. package/__tests__/modules/client/constants.ts +0 -5
  34. package/__tests__/modules/onboarding.test.ts +0 -66
  35. package/build/cjs/__tests__/clients/composite-client.test.js +0 -130
  36. package/build/cjs/__tests__/helpers/baseClients.js +0 -29
  37. package/build/cjs/__tests__/helpers/constants.js +0 -110
  38. package/build/cjs/__tests__/lib/helpers.test.js +0 -46
  39. package/build/cjs/__tests__/lib/util.test.js +0 -67
  40. package/build/cjs/__tests__/lib/validation.test.js +0 -254
  41. package/build/cjs/__tests__/modules/client/AccountEndpoints.test.js +0 -171
  42. package/build/cjs/__tests__/modules/client/FaucetEndpoint.test.js +0 -15
  43. package/build/cjs/__tests__/modules/client/MarketsEndpoints.test.js +0 -69
  44. package/build/cjs/__tests__/modules/client/Transfers.test.js +0 -44
  45. package/build/cjs/__tests__/modules/client/UtilityEndpoints.test.js +0 -28
  46. package/build/cjs/__tests__/modules/client/ValidatorGetEndpoints.test.js +0 -46
  47. package/build/cjs/__tests__/modules/client/ValidatorPostEndpoints.test.js +0 -53
  48. package/build/cjs/__tests__/modules/client/constants.js +0 -7
  49. package/build/cjs/__tests__/modules/onboarding.test.js +0 -50
  50. package/build/cjs/examples/account_endpoints.js +0 -129
  51. package/build/cjs/examples/batch_cancel_orders_example.js +0 -93
  52. package/build/cjs/examples/composite_example.js +0 -50
  53. package/build/cjs/examples/constants.js +0 -35
  54. package/build/cjs/examples/faucet_endpoint.js +0 -23
  55. package/build/cjs/examples/gov_add_new_market.js +0 -77
  56. package/build/cjs/examples/human_readable_orders.json +0 -86
  57. package/build/cjs/examples/human_readable_short_term_orders.json +0 -42
  58. package/build/cjs/examples/json-encoding.js +0 -32
  59. package/build/cjs/examples/long_term_order_cancel_example.js +0 -63
  60. package/build/cjs/examples/markets_endpoints.js +0 -134
  61. package/build/cjs/examples/native_examples.js +0 -112
  62. package/build/cjs/examples/noble_example.js +0 -88
  63. package/build/cjs/examples/optimal_node.js +0 -70
  64. package/build/cjs/examples/permissioned_keys_example.js +0 -104
  65. package/build/cjs/examples/raw_orders.json +0 -130
  66. package/build/cjs/examples/short_term_order_cancel_example.js +0 -54
  67. package/build/cjs/examples/short_term_order_composite_example.js +0 -68
  68. package/build/cjs/examples/test.js +0 -50
  69. package/build/cjs/examples/transfer_example_deposit.js +0 -29
  70. package/build/cjs/examples/transfer_example_send.js +0 -42
  71. package/build/cjs/examples/transfer_example_subaccount_transfer.js +0 -29
  72. package/build/cjs/examples/transfer_example_withdraw.js +0 -30
  73. package/build/cjs/examples/transfer_example_withdraw_other.js +0 -42
  74. package/build/cjs/examples/utility_endpoints.js +0 -42
  75. package/build/cjs/examples/validator_get_example.js +0 -158
  76. package/build/cjs/examples/validator_post_example.js +0 -76
  77. package/build/cjs/examples/wallet_address.js +0 -22
  78. package/build/cjs/examples/websocket_example.js +0 -36
  79. package/build/cjs/examples/websocket_orderbook_example.js +0 -196
  80. package/build/esm/__tests__/clients/composite-client.test.d.ts +0 -2
  81. package/build/esm/__tests__/clients/composite-client.test.d.ts.map +0 -1
  82. package/build/esm/__tests__/clients/composite-client.test.js +0 -128
  83. package/build/esm/__tests__/helpers/baseClients.d.ts +0 -19
  84. package/build/esm/__tests__/helpers/baseClients.d.ts.map +0 -1
  85. package/build/esm/__tests__/helpers/baseClients.js +0 -22
  86. package/build/esm/__tests__/helpers/constants.d.ts +0 -19
  87. package/build/esm/__tests__/helpers/constants.d.ts.map +0 -1
  88. package/build/esm/__tests__/helpers/constants.js +0 -104
  89. package/build/esm/__tests__/lib/helpers.test.d.ts +0 -2
  90. package/build/esm/__tests__/lib/helpers.test.d.ts.map +0 -1
  91. package/build/esm/__tests__/lib/helpers.test.js +0 -41
  92. package/build/esm/__tests__/lib/util.test.d.ts +0 -2
  93. package/build/esm/__tests__/lib/util.test.d.ts.map +0 -1
  94. package/build/esm/__tests__/lib/util.test.js +0 -65
  95. package/build/esm/__tests__/lib/validation.test.d.ts +0 -2
  96. package/build/esm/__tests__/lib/validation.test.d.ts.map +0 -1
  97. package/build/esm/__tests__/lib/validation.test.js +0 -249
  98. package/build/esm/__tests__/modules/client/AccountEndpoints.test.d.ts +0 -2
  99. package/build/esm/__tests__/modules/client/AccountEndpoints.test.d.ts.map +0 -1
  100. package/build/esm/__tests__/modules/client/AccountEndpoints.test.js +0 -169
  101. package/build/esm/__tests__/modules/client/FaucetEndpoint.test.d.ts +0 -2
  102. package/build/esm/__tests__/modules/client/FaucetEndpoint.test.d.ts.map +0 -1
  103. package/build/esm/__tests__/modules/client/FaucetEndpoint.test.js +0 -13
  104. package/build/esm/__tests__/modules/client/MarketsEndpoints.test.d.ts +0 -2
  105. package/build/esm/__tests__/modules/client/MarketsEndpoints.test.d.ts.map +0 -1
  106. package/build/esm/__tests__/modules/client/MarketsEndpoints.test.js +0 -66
  107. package/build/esm/__tests__/modules/client/Transfers.test.d.ts +0 -2
  108. package/build/esm/__tests__/modules/client/Transfers.test.d.ts.map +0 -1
  109. package/build/esm/__tests__/modules/client/Transfers.test.js +0 -39
  110. package/build/esm/__tests__/modules/client/UtilityEndpoints.test.d.ts +0 -2
  111. package/build/esm/__tests__/modules/client/UtilityEndpoints.test.d.ts.map +0 -1
  112. package/build/esm/__tests__/modules/client/UtilityEndpoints.test.js +0 -26
  113. package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.d.ts +0 -2
  114. package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.d.ts.map +0 -1
  115. package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.js +0 -44
  116. package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.d.ts +0 -2
  117. package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.d.ts.map +0 -1
  118. package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.js +0 -48
  119. package/build/esm/__tests__/modules/client/constants.d.ts +0 -4
  120. package/build/esm/__tests__/modules/client/constants.d.ts.map +0 -1
  121. package/build/esm/__tests__/modules/client/constants.js +0 -4
  122. package/build/esm/__tests__/modules/onboarding.test.d.ts +0 -2
  123. package/build/esm/__tests__/modules/onboarding.test.d.ts.map +0 -1
  124. package/build/esm/__tests__/modules/onboarding.test.js +0 -48
  125. package/build/esm/examples/account_endpoints.d.ts +0 -5
  126. package/build/esm/examples/account_endpoints.d.ts.map +0 -1
  127. package/build/esm/examples/account_endpoints.js +0 -127
  128. package/build/esm/examples/batch_cancel_orders_example.d.ts +0 -2
  129. package/build/esm/examples/batch_cancel_orders_example.d.ts.map +0 -1
  130. package/build/esm/examples/batch_cancel_orders_example.js +0 -88
  131. package/build/esm/examples/composite_example.d.ts +0 -2
  132. package/build/esm/examples/composite_example.d.ts.map +0 -1
  133. package/build/esm/examples/composite_example.js +0 -45
  134. package/build/esm/examples/constants.d.ts +0 -13
  135. package/build/esm/examples/constants.d.ts.map +0 -1
  136. package/build/esm/examples/constants.js +0 -29
  137. package/build/esm/examples/faucet_endpoint.d.ts +0 -5
  138. package/build/esm/examples/faucet_endpoint.d.ts.map +0 -1
  139. package/build/esm/examples/faucet_endpoint.js +0 -21
  140. package/build/esm/examples/gov_add_new_market.d.ts +0 -2
  141. package/build/esm/examples/gov_add_new_market.d.ts.map +0 -1
  142. package/build/esm/examples/gov_add_new_market.js +0 -72
  143. package/build/esm/examples/human_readable_orders.json +0 -86
  144. package/build/esm/examples/human_readable_short_term_orders.json +0 -42
  145. package/build/esm/examples/json-encoding.d.ts +0 -2
  146. package/build/esm/examples/json-encoding.d.ts.map +0 -1
  147. package/build/esm/examples/json-encoding.js +0 -27
  148. package/build/esm/examples/long_term_order_cancel_example.d.ts +0 -2
  149. package/build/esm/examples/long_term_order_cancel_example.d.ts.map +0 -1
  150. package/build/esm/examples/long_term_order_cancel_example.js +0 -58
  151. package/build/esm/examples/markets_endpoints.d.ts +0 -5
  152. package/build/esm/examples/markets_endpoints.d.ts.map +0 -1
  153. package/build/esm/examples/markets_endpoints.js +0 -131
  154. package/build/esm/examples/native_examples.d.ts +0 -2
  155. package/build/esm/examples/native_examples.d.ts.map +0 -1
  156. package/build/esm/examples/native_examples.js +0 -110
  157. package/build/esm/examples/noble_example.d.ts +0 -2
  158. package/build/esm/examples/noble_example.d.ts.map +0 -1
  159. package/build/esm/examples/noble_example.js +0 -83
  160. package/build/esm/examples/optimal_node.d.ts +0 -2
  161. package/build/esm/examples/optimal_node.d.ts.map +0 -1
  162. package/build/esm/examples/optimal_node.js +0 -68
  163. package/build/esm/examples/permissioned_keys_example.d.ts +0 -2
  164. package/build/esm/examples/permissioned_keys_example.d.ts.map +0 -1
  165. package/build/esm/examples/permissioned_keys_example.js +0 -99
  166. package/build/esm/examples/raw_orders.json +0 -130
  167. package/build/esm/examples/short_term_order_cancel_example.d.ts +0 -2
  168. package/build/esm/examples/short_term_order_cancel_example.d.ts.map +0 -1
  169. package/build/esm/examples/short_term_order_cancel_example.js +0 -49
  170. package/build/esm/examples/short_term_order_composite_example.d.ts +0 -2
  171. package/build/esm/examples/short_term_order_composite_example.d.ts.map +0 -1
  172. package/build/esm/examples/short_term_order_composite_example.js +0 -63
  173. package/build/esm/examples/test.d.ts +0 -2
  174. package/build/esm/examples/test.d.ts.map +0 -1
  175. package/build/esm/examples/test.js +0 -45
  176. package/build/esm/examples/transfer_example_deposit.d.ts +0 -2
  177. package/build/esm/examples/transfer_example_deposit.d.ts.map +0 -1
  178. package/build/esm/examples/transfer_example_deposit.js +0 -24
  179. package/build/esm/examples/transfer_example_send.d.ts +0 -2
  180. package/build/esm/examples/transfer_example_send.d.ts.map +0 -1
  181. package/build/esm/examples/transfer_example_send.js +0 -37
  182. package/build/esm/examples/transfer_example_subaccount_transfer.d.ts +0 -2
  183. package/build/esm/examples/transfer_example_subaccount_transfer.d.ts.map +0 -1
  184. package/build/esm/examples/transfer_example_subaccount_transfer.js +0 -24
  185. package/build/esm/examples/transfer_example_withdraw.d.ts +0 -2
  186. package/build/esm/examples/transfer_example_withdraw.d.ts.map +0 -1
  187. package/build/esm/examples/transfer_example_withdraw.js +0 -25
  188. package/build/esm/examples/transfer_example_withdraw_other.d.ts +0 -2
  189. package/build/esm/examples/transfer_example_withdraw_other.d.ts.map +0 -1
  190. package/build/esm/examples/transfer_example_withdraw_other.js +0 -37
  191. package/build/esm/examples/utility_endpoints.d.ts +0 -5
  192. package/build/esm/examples/utility_endpoints.d.ts.map +0 -1
  193. package/build/esm/examples/utility_endpoints.js +0 -40
  194. package/build/esm/examples/validator_get_example.d.ts +0 -2
  195. package/build/esm/examples/validator_get_example.d.ts.map +0 -1
  196. package/build/esm/examples/validator_get_example.js +0 -156
  197. package/build/esm/examples/validator_post_example.d.ts +0 -2
  198. package/build/esm/examples/validator_post_example.d.ts.map +0 -1
  199. package/build/esm/examples/validator_post_example.js +0 -71
  200. package/build/esm/examples/wallet_address.d.ts +0 -2
  201. package/build/esm/examples/wallet_address.d.ts.map +0 -1
  202. package/build/esm/examples/wallet_address.js +0 -17
  203. package/build/esm/examples/websocket_example.d.ts +0 -2
  204. package/build/esm/examples/websocket_example.d.ts.map +0 -1
  205. package/build/esm/examples/websocket_example.js +0 -34
  206. package/build/esm/examples/websocket_orderbook_example.d.ts +0 -2
  207. package/build/esm/examples/websocket_orderbook_example.d.ts.map +0 -1
  208. package/build/esm/examples/websocket_orderbook_example.js +0 -194
  209. package/commitlint.config.js +0 -8
  210. package/examples/account_endpoints.ts +0 -129
  211. package/examples/batch_cancel_orders_example.ts +0 -130
  212. package/examples/composite_example.ts +0 -65
  213. package/examples/constants.ts +0 -42
  214. package/examples/faucet_endpoint.ts +0 -24
  215. package/examples/gov_add_new_market.json +0 -64
  216. package/examples/gov_add_new_market.ts +0 -95
  217. package/examples/human_readable_orders.json +0 -86
  218. package/examples/human_readable_short_term_orders.json +0 -42
  219. package/examples/json-encoding.ts +0 -33
  220. package/examples/long_term_order_cancel_example.ts +0 -87
  221. package/examples/markets_endpoints.ts +0 -134
  222. package/examples/native_examples.ts +0 -151
  223. package/examples/noble_example.ts +0 -107
  224. package/examples/optimal_node.ts +0 -70
  225. package/examples/permissioned_keys_example.ts +0 -162
  226. package/examples/raw_orders.json +0 -130
  227. package/examples/short_term_order_cancel_example.ts +0 -68
  228. package/examples/short_term_order_composite_example.ts +0 -80
  229. package/examples/test.ts +0 -65
  230. package/examples/transfer_example_deposit.ts +0 -28
  231. package/examples/transfer_example_send.ts +0 -60
  232. package/examples/transfer_example_subaccount_transfer.ts +0 -29
  233. package/examples/transfer_example_withdraw.ts +0 -31
  234. package/examples/transfer_example_withdraw_other.ts +0 -60
  235. package/examples/utility_endpoints.ts +0 -42
  236. package/examples/validator_get_example.ts +0 -160
  237. package/examples/validator_post_example.ts +0 -81
  238. package/examples/wallet_address.ts +0 -18
  239. package/examples/websocket_example.ts +0 -44
  240. package/examples/websocket_orderbook_example.ts +0 -239
  241. package/jest.config.js +0 -12
  242. package/jest.globalSetup.js +0 -5
  243. package/jest.setup.js +0 -1
  244. package/ritbit-v4-client-js-2.4.0.tgz +0 -0
  245. package/scripts/bump_version.sh +0 -16
  246. package/scripts/generate-cctp-protos.sh +0 -41
  247. package/scripts/mobile_build_pack.sh +0 -5
  248. package/scripts/publish-if-not-exists.sh +0 -21
  249. package/src/clients/composite-client.ts +0 -1469
  250. package/src/clients/constants.ts +0 -361
  251. package/src/clients/faucet-client.ts +0 -48
  252. package/src/clients/helpers/chain-helpers.ts +0 -231
  253. package/src/clients/helpers/request-helpers.ts +0 -71
  254. package/src/clients/indexer-client.ts +0 -61
  255. package/src/clients/lib/axios/axiosRequest.ts +0 -41
  256. package/src/clients/lib/axios/errors.ts +0 -41
  257. package/src/clients/lib/axios/index.ts +0 -7
  258. package/src/clients/lib/axios/types.ts +0 -6
  259. package/src/clients/lib/cctpProto.ts +0 -4197
  260. package/src/clients/lib/errors.ts +0 -63
  261. package/src/clients/lib/registry.ts +0 -93
  262. package/src/clients/modules/account.ts +0 -438
  263. package/src/clients/modules/composer.ts +0 -669
  264. package/src/clients/modules/get.ts +0 -791
  265. package/src/clients/modules/local-wallet.ts +0 -79
  266. package/src/clients/modules/markets.ts +0 -76
  267. package/src/clients/modules/post.ts +0 -1043
  268. package/src/clients/modules/proto-includes.ts +0 -34
  269. package/src/clients/modules/rest.ts +0 -40
  270. package/src/clients/modules/signer.ts +0 -139
  271. package/src/clients/modules/tendermintClient.ts +0 -168
  272. package/src/clients/modules/utility.ts +0 -47
  273. package/src/clients/modules/vault.ts +0 -23
  274. package/src/clients/native.ts +0 -1689
  275. package/src/clients/noble-client.ts +0 -108
  276. package/src/clients/socket-client.ts +0 -331
  277. package/src/clients/subaccount.ts +0 -57
  278. package/src/clients/types.ts +0 -191
  279. package/src/clients/validator-client.ts +0 -106
  280. package/src/index.ts +0 -19
  281. package/src/lib/constants.ts +0 -28
  282. package/src/lib/errors.ts +0 -38
  283. package/src/lib/helpers.ts +0 -99
  284. package/src/lib/onboarding.ts +0 -96
  285. package/src/lib/trading-key-utils.ts +0 -136
  286. package/src/lib/utils.ts +0 -84
  287. package/src/lib/validation.ts +0 -197
  288. package/src/network_optimizer.ts +0 -132
  289. package/src/types.ts +0 -44
  290. package/tasks.json +0 -16
  291. package/tsconfig.base.json +0 -21
  292. package/tsconfig.cjs.json +0 -10
  293. package/tsconfig.eslint.json +0 -14
  294. package/tsconfig.esm.json +0 -11
  295. package/tsconfig.json +0 -6
  296. package/webpack.config.js +0 -56
@@ -1,669 +0,0 @@
1
- /* eslint-disable comma-dangle */
2
- /* eslint-disable @typescript-eslint/quotes */
3
- import { EncodeObject, Registry } from '@cosmjs/proto-signing';
4
- import { MsgWithdrawDelegatorReward } from '@ritbit/v4-proto/src/codegen/cosmos/distribution/v1beta1/tx';
5
- import { MsgSubmitProposal } from '@ritbit/v4-proto/src/codegen/cosmos/gov/v1/tx';
6
- import {
7
- MsgDelegate,
8
- MsgUndelegate,
9
- } from '@ritbit/v4-proto/src/codegen/cosmos/staking/v1beta1/tx';
10
- import { MsgAddAuthenticator, MsgRemoveAuthenticator } from '@ritbit/v4-proto/src/codegen/ritbit/accountplus/tx';
11
- import { MsgRegisterAffiliate } from '@ritbit/v4-proto/src/codegen/ritbit/affiliates/tx';
12
- import { ClobPair_Status } from '@ritbit/v4-proto/src/codegen/ritbit/clob/clob_pair';
13
- import {
14
- MsgBatchCancel,
15
- MsgCreateClobPair,
16
- MsgUpdateClobPair,
17
- OrderBatch,
18
- } from '@ritbit/v4-proto/src/codegen/ritbit/clob/tx';
19
- import { MsgDelayMessage } from '@ritbit/v4-proto/src/codegen/ritbit/delaymsg/tx';
20
- import { PerpetualMarketType } from '@ritbit/v4-proto/src/codegen/ritbit/perpetuals/perpetual';
21
- import { MsgCreatePerpetual } from '@ritbit/v4-proto/src/codegen/ritbit/perpetuals/tx';
22
- import { MsgCreateOracleMarket } from '@ritbit/v4-proto/src/codegen/ritbit/prices/tx';
23
- import { MsgWithdrawal } from '@ritbit/v4-proto/src/codegen/ritbit/bridge/tx';
24
- import {
25
- MsgDepositToMegavault,
26
- MsgWithdrawFromMegavault,
27
- } from '@ritbit/v4-proto/src/codegen/ritbit/vault/tx';
28
- import { MsgSend } from '@ritbit/v4-proto/src/codegen/cosmos/bank/v1beta1/tx';
29
- import { Coin } from '@ritbit/v4-proto/src/codegen/cosmos/base/v1beta1/coin';
30
- import { Any } from '@ritbit/v4-proto/src/codegen/google/protobuf/any';
31
- import Long from 'long';
32
- import protobuf from 'protobufjs';
33
-
34
- import {
35
- GOV_MODULE_ADDRESS,
36
- DELAYMSG_MODULE_ADDRESS,
37
- TYPE_URL_MSG_SEND,
38
- TYPE_URL_MSG_SUBMIT_PROPOSAL,
39
- TYPE_URL_MSG_PLACE_ORDER,
40
- TYPE_URL_MSG_CANCEL_ORDER,
41
- TYPE_URL_MSG_CREATE_CLOB_PAIR,
42
- TYPE_URL_MSG_UPDATE_CLOB_PAIR,
43
- TYPE_URL_MSG_DELAY_MESSAGE,
44
- TYPE_URL_MSG_CREATE_PERPETUAL,
45
- TYPE_URL_MSG_CREATE_ORACLE_MARKET,
46
- TYPE_URL_MSG_CREATE_TRANSFER,
47
- TYPE_URL_MSG_WITHDRAW_FROM_SUBACCOUNT,
48
- TYPE_URL_MSG_DEPOSIT_TO_SUBACCOUNT,
49
- TYPE_URL_MSG_DELEGATE,
50
- TYPE_URL_MSG_UNDELEGATE,
51
- TYPE_URL_MSG_WITHDRAW_DELEGATOR_REWARD,
52
- TYPE_URL_BATCH_CANCEL,
53
- TYPE_URL_MSG_REGISTER_AFFILIATE,
54
- TYPE_URL_MSG_DEPOSIT_TO_MEGAVAULT,
55
- TYPE_URL_MSG_WITHDRAW_FROM_MEGAVAULT,
56
- TYPE_URL_MSG_CREATE_MARKET_PERMISSIONLESS,
57
- TYPE_URL_MSG_ADD_AUTHENTICATOR,
58
- TYPE_URL_MSG_REMOVE_AUTHENTICATOR,
59
- TYPE_URL_MSG_WITHDRAWAL,
60
- AuthenticatorType,
61
- } from '../constants';
62
- import { DenomConfig, ITwapParameters, IBuilderCodeParameters } from '../types';
63
- import {
64
- OrderId,
65
- Order,
66
- Order_ConditionType,
67
- Order_Side,
68
- Order_TimeInForce,
69
- MsgPlaceOrder,
70
- MsgCancelOrder,
71
- SubaccountId,
72
- MsgCreateMarketPermissionless,
73
- MsgCreateTransfer,
74
- MsgTransfer,
75
- MsgDepositToSubaccount,
76
- MsgWithdrawFromSubaccount,
77
- } from './proto-includes';
78
-
79
- protobuf.util.Long = Long;
80
- protobuf.configure();
81
-
82
- export class Composer {
83
- // ------------ x/clob ------------
84
- public composeMsgPlaceOrder(
85
- address: string,
86
- subaccountNumber: number,
87
- clientId: number,
88
- clobPairId: number,
89
- orderFlags: number,
90
- goodTilBlock: number,
91
- goodTilBlockTime: number,
92
- side: Order_Side,
93
- quantums: Long,
94
- subticks: Long,
95
- timeInForce: Order_TimeInForce,
96
- reduceOnly: boolean,
97
- clientMetadata: number,
98
- conditionType: Order_ConditionType = Order_ConditionType.CONDITION_TYPE_UNSPECIFIED,
99
- conditionalOrderTriggerSubticks: Long = Long.fromInt(0),
100
- twapParameters?: ITwapParameters,
101
- builderCodeParameters?: IBuilderCodeParameters,
102
- orderRouterAddress: string = "",
103
- ): EncodeObject {
104
- this.validateGoodTilBlockAndTime(orderFlags, goodTilBlock, goodTilBlockTime);
105
-
106
- const subaccountId: SubaccountId = {
107
- owner: address,
108
- number: subaccountNumber,
109
- };
110
-
111
- const orderId: OrderId = {
112
- subaccountId,
113
- clientId,
114
- orderFlags,
115
- clobPairId,
116
- };
117
-
118
- const order: Order = {
119
- orderId,
120
- side,
121
- quantums,
122
- subticks,
123
- goodTilBlock: goodTilBlock === 0 ? undefined : goodTilBlock,
124
- goodTilBlockTime: goodTilBlock === 0 ? goodTilBlockTime : undefined,
125
- timeInForce,
126
- reduceOnly,
127
- clientMetadata: clientMetadata ?? 0,
128
- conditionType,
129
- conditionalOrderTriggerSubticks,
130
- twapParameters,
131
- builderCodeParameters,
132
- orderRouterAddress,
133
- };
134
- const msg: MsgPlaceOrder = {
135
- order,
136
- };
137
- return {
138
- typeUrl: TYPE_URL_MSG_PLACE_ORDER,
139
- value: msg,
140
- };
141
- }
142
-
143
- public composeMsgCancelOrder(
144
- address: string,
145
- subaccountNumber: number,
146
- clientId: number,
147
- clobPairId: number,
148
- orderFlags: number,
149
- goodTilBlock: number,
150
- goodTilBlockTime: number,
151
- ): EncodeObject {
152
- this.validateGoodTilBlockAndTime(orderFlags, goodTilBlock, goodTilBlockTime);
153
-
154
- const subaccountId: SubaccountId = {
155
- owner: address,
156
- number: subaccountNumber,
157
- };
158
-
159
- const orderId: OrderId = {
160
- subaccountId,
161
- clientId,
162
- orderFlags,
163
- clobPairId,
164
- };
165
-
166
- const msg: MsgCancelOrder = {
167
- orderId,
168
- goodTilBlock: goodTilBlock === 0 ? undefined : goodTilBlock,
169
- goodTilBlockTime: goodTilBlock === 0 ? goodTilBlockTime : undefined,
170
- };
171
-
172
- return {
173
- typeUrl: TYPE_URL_MSG_CANCEL_ORDER,
174
- value: msg,
175
- };
176
- }
177
-
178
- public composeMsgBatchCancelShortTermOrders(
179
- address: string,
180
- subaccountNumber: number,
181
- shortTermCancels: OrderBatch[],
182
- goodTilBlock: number,
183
- ): EncodeObject {
184
- const subaccountId: SubaccountId = {
185
- owner: address,
186
- number: subaccountNumber,
187
- };
188
-
189
- const msg: MsgBatchCancel = {
190
- subaccountId,
191
- shortTermCancels,
192
- goodTilBlock,
193
- };
194
-
195
- return {
196
- typeUrl: TYPE_URL_BATCH_CANCEL,
197
- value: msg,
198
- };
199
- }
200
-
201
- public composeMsgCreateClobPair(
202
- clobId: number,
203
- perpetualId: number,
204
- quantumConversionExponent: number,
205
- stepBaseQuantums: Long,
206
- subticksPerTick: number,
207
- ): EncodeObject {
208
- const msg: MsgCreateClobPair = {
209
- // uses x/gov module account since creating the clob pair is a governance action.
210
- authority: GOV_MODULE_ADDRESS,
211
- clobPair: {
212
- id: clobId,
213
- perpetualClobMetadata: {
214
- perpetualId,
215
- },
216
- quantumConversionExponent,
217
- stepBaseQuantums,
218
- subticksPerTick,
219
- status: ClobPair_Status.STATUS_INITIALIZING,
220
- },
221
- };
222
-
223
- return {
224
- typeUrl: TYPE_URL_MSG_CREATE_CLOB_PAIR,
225
- value: msg,
226
- };
227
- }
228
-
229
- public composeMsgUpdateClobPair(
230
- clobId: number,
231
- perpetualId: number,
232
- quantumConversionExponent: number,
233
- stepBaseQuantums: Long,
234
- subticksPerTick: number,
235
- ): EncodeObject {
236
- const msg: MsgUpdateClobPair = {
237
- // uses x/delaymsg module account since updating the clob pair is a delayedmsg action.
238
- authority: DELAYMSG_MODULE_ADDRESS,
239
- clobPair: {
240
- id: clobId,
241
- perpetualClobMetadata: {
242
- perpetualId,
243
- },
244
- quantumConversionExponent,
245
- stepBaseQuantums,
246
- subticksPerTick,
247
- status: ClobPair_Status.STATUS_ACTIVE,
248
- },
249
- };
250
-
251
- return {
252
- typeUrl: TYPE_URL_MSG_UPDATE_CLOB_PAIR,
253
- value: msg,
254
- };
255
- }
256
-
257
- // ------------ x/sending ------------
258
- public composeMsgTransfer(
259
- address: string,
260
- subaccountNumber: number,
261
- recipientAddress: string,
262
- recipientSubaccountNumber: number,
263
- assetId: number,
264
- amount: Long,
265
- ): EncodeObject {
266
- const sender: SubaccountId = {
267
- owner: address,
268
- number: subaccountNumber,
269
- };
270
- const recipient: SubaccountId = {
271
- owner: recipientAddress,
272
- number: recipientSubaccountNumber,
273
- };
274
-
275
- const transfer: MsgTransfer = {
276
- sender,
277
- recipient,
278
- assetId,
279
- amount,
280
- };
281
-
282
- const msg: MsgCreateTransfer = {
283
- transfer,
284
- };
285
-
286
- return {
287
- typeUrl: TYPE_URL_MSG_CREATE_TRANSFER,
288
- value: msg,
289
- };
290
- }
291
-
292
- public composeMsgDepositToSubaccount(
293
- address: string,
294
- subaccountNumber: number,
295
- assetId: number,
296
- quantums: Long,
297
- ): EncodeObject {
298
- const recipient: SubaccountId = {
299
- owner: address,
300
- number: subaccountNumber,
301
- };
302
-
303
- const msg: MsgDepositToSubaccount = {
304
- sender: address,
305
- recipient,
306
- assetId,
307
- quantums,
308
- };
309
-
310
- return {
311
- typeUrl: TYPE_URL_MSG_DEPOSIT_TO_SUBACCOUNT,
312
- value: msg,
313
- };
314
- }
315
-
316
- public composeMsgWithdrawFromSubaccount(
317
- address: string,
318
- subaccountNumber: number,
319
- assetId: number,
320
- quantums: Long,
321
- recipient: string = address,
322
- ): EncodeObject {
323
- const sender: SubaccountId = {
324
- owner: address,
325
- number: subaccountNumber,
326
- };
327
-
328
- const msg: MsgWithdrawFromSubaccount = {
329
- sender,
330
- recipient,
331
- assetId,
332
- quantums,
333
- };
334
-
335
- return {
336
- typeUrl: TYPE_URL_MSG_WITHDRAW_FROM_SUBACCOUNT,
337
- value: msg,
338
- };
339
- }
340
-
341
- public composeMsgWithdrawal(
342
- sender: string,
343
- amount: string,
344
- ethRecipient: string,
345
- ethChainId: number,
346
- assetId: number,
347
- ): EncodeObject {
348
- const msg: MsgWithdrawal = {
349
- sender,
350
- amount,
351
- ethRecipient,
352
- ethChainId: Long.fromNumber(ethChainId),
353
- assetId,
354
- };
355
-
356
- return {
357
- typeUrl: TYPE_URL_MSG_WITHDRAWAL,
358
- value: msg,
359
- };
360
- }
361
-
362
- // ------------ x/bank ------------
363
- public composeMsgSendToken(
364
- address: string,
365
- recipient: string,
366
- coinDenom: string,
367
- quantums: string,
368
- ): EncodeObject {
369
- const coin: Coin = {
370
- denom: coinDenom,
371
- amount: quantums,
372
- };
373
-
374
- const msg: MsgSend = {
375
- fromAddress: address,
376
- toAddress: recipient,
377
- amount: [coin],
378
- };
379
-
380
- return {
381
- typeUrl: TYPE_URL_MSG_SEND,
382
- value: msg,
383
- };
384
- }
385
-
386
- // ------------ x/prices ------------
387
- public composeMsgCreateOracleMarket(
388
- marketId: number,
389
- pair: string,
390
- exponent: number,
391
- minExchanges: number,
392
- minPriceChangePpm: number,
393
- exchangeConfigJson: string,
394
- ): EncodeObject {
395
- const msg: MsgCreateOracleMarket = {
396
- // uses x/gov module account since creating the oracle market is a governance action.
397
- authority: GOV_MODULE_ADDRESS,
398
- params: {
399
- id: marketId,
400
- pair,
401
- exponent,
402
- minExchanges,
403
- minPriceChangePpm,
404
- exchangeConfigJson,
405
- },
406
- };
407
-
408
- return {
409
- typeUrl: TYPE_URL_MSG_CREATE_ORACLE_MARKET,
410
- value: msg,
411
- };
412
- }
413
-
414
- // ------------ x/perpetuals ------------
415
- public composeMsgCreatePerpetual(
416
- perpetualId: number,
417
- marketId: number,
418
- ticker: string,
419
- atomicResolution: number,
420
- liquidityTier: number,
421
- marketType: PerpetualMarketType,
422
- ): EncodeObject {
423
- const msg: MsgCreatePerpetual = {
424
- // uses x/gov module account since creating the perpetual is a governance action.
425
- authority: GOV_MODULE_ADDRESS,
426
- params: {
427
- id: perpetualId,
428
- marketId,
429
- ticker,
430
- atomicResolution,
431
- defaultFundingPpm: 0, // default funding should be 0 to start.
432
- liquidityTier,
433
- marketType,
434
- },
435
- };
436
-
437
- return {
438
- typeUrl: TYPE_URL_MSG_CREATE_PERPETUAL,
439
- value: msg,
440
- };
441
- }
442
-
443
- // ------------ x/delaymsg ------------
444
- public composeMsgDelayMessage(embeddedMsg: EncodeObject, delayBlocks: number): EncodeObject {
445
- const msg: MsgDelayMessage = {
446
- // all msgs sent to x/delay must be from x/gov module account.
447
- authority: GOV_MODULE_ADDRESS,
448
- msg: embeddedMsg,
449
- delayBlocks,
450
- };
451
-
452
- return {
453
- typeUrl: TYPE_URL_MSG_DELAY_MESSAGE,
454
- value: msg,
455
- };
456
- }
457
-
458
- // ------------ x/gov ------------
459
- public composeMsgSubmitProposal(
460
- title: string,
461
- initialDepositAmount: string,
462
- initialDepositDenomConfig: DenomConfig,
463
- summary: string,
464
- messages: EncodeObject[],
465
- proposer: string,
466
- metadata: string = '',
467
- expedited: boolean = false,
468
- ): EncodeObject {
469
- const initialDeposit: Coin[] = [
470
- {
471
- amount: initialDepositAmount,
472
- denom: initialDepositDenomConfig.CHAINTOKEN_DENOM,
473
- },
474
- ];
475
-
476
- const msg: MsgSubmitProposal = {
477
- title,
478
- initialDeposit,
479
- summary,
480
- messages,
481
- proposer,
482
- metadata,
483
- expedited,
484
- };
485
-
486
- return {
487
- typeUrl: TYPE_URL_MSG_SUBMIT_PROPOSAL,
488
- value: msg,
489
- };
490
- }
491
-
492
- // ------------ x/vault ------------
493
- public composeMsgDepositToMegavault(
494
- address: string,
495
- subaccountNumber: number,
496
- quoteQuantums: Uint8Array,
497
- ): EncodeObject {
498
- const subaccountId: SubaccountId = {
499
- owner: address,
500
- number: subaccountNumber,
501
- };
502
-
503
- const msg: MsgDepositToMegavault = {
504
- quoteQuantums,
505
- subaccountId,
506
- };
507
-
508
- return {
509
- typeUrl: TYPE_URL_MSG_DEPOSIT_TO_MEGAVAULT,
510
- value: msg,
511
- };
512
- }
513
-
514
- public composeMsgWithdrawFromMegavault(
515
- address: string,
516
- subaccountNumber: number,
517
- shares: Uint8Array,
518
- minQuoteQuantums: Uint8Array,
519
- ): EncodeObject {
520
- const subaccountId: SubaccountId = {
521
- owner: address,
522
- number: subaccountNumber,
523
- };
524
-
525
- const msg: MsgWithdrawFromMegavault = {
526
- minQuoteQuantums,
527
- shares: { numShares: shares },
528
- subaccountId,
529
- };
530
-
531
- return {
532
- typeUrl: TYPE_URL_MSG_WITHDRAW_FROM_MEGAVAULT,
533
- value: msg,
534
- };
535
- }
536
-
537
- // ------------ x/staking ------------
538
- public composeMsgDelegate(delegator: string, validator: string, amount: Coin): EncodeObject {
539
- const msg: MsgDelegate = {
540
- delegatorAddress: delegator,
541
- validatorAddress: validator,
542
- amount,
543
- };
544
-
545
- return {
546
- typeUrl: TYPE_URL_MSG_DELEGATE,
547
- value: msg,
548
- };
549
- }
550
-
551
- public composeMsgUndelegate(delegator: string, validator: string, amount: Coin): EncodeObject {
552
- const msg: MsgUndelegate = {
553
- delegatorAddress: delegator,
554
- validatorAddress: validator,
555
- amount,
556
- };
557
-
558
- return {
559
- typeUrl: TYPE_URL_MSG_UNDELEGATE,
560
- value: msg,
561
- };
562
- }
563
-
564
- // ------------ x/distribution ------------
565
- public composeMsgWithdrawDelegatorReward(delegator: string, validator: string): EncodeObject {
566
- const msg: MsgWithdrawDelegatorReward = {
567
- delegatorAddress: delegator,
568
- validatorAddress: validator,
569
- };
570
-
571
- return {
572
- typeUrl: TYPE_URL_MSG_WITHDRAW_DELEGATOR_REWARD,
573
- value: msg,
574
- };
575
- }
576
-
577
- // ------------ x/affiliates ------------
578
- public composeMsgRegisterAffiliate(referee: string, affiliate: string): EncodeObject {
579
- const msg: MsgRegisterAffiliate = {
580
- referee,
581
- affiliate,
582
- };
583
-
584
- return {
585
- typeUrl: TYPE_URL_MSG_REGISTER_AFFILIATE,
586
- value: msg,
587
- };
588
- }
589
-
590
- // ------------ x/listing ------------
591
- public composeMsgCreateMarketPermissionless(
592
- address: string,
593
- ticker: string,
594
- subaccountNumber: number,
595
- ): EncodeObject {
596
- const subaccountId: SubaccountId = {
597
- owner: address,
598
- number: subaccountNumber,
599
- };
600
-
601
- const msg: MsgCreateMarketPermissionless = {
602
- ticker,
603
- subaccountId
604
- };
605
-
606
- return {
607
- typeUrl: TYPE_URL_MSG_CREATE_MARKET_PERMISSIONLESS,
608
- value: msg,
609
- }
610
- }
611
-
612
- // ----------- x/accountplus --------
613
-
614
- public composeMsgAddAuthenticator(
615
- address: string,
616
- authenticatorType: AuthenticatorType,
617
- data: Uint8Array,
618
- ): EncodeObject {
619
- const msg: MsgAddAuthenticator = {
620
- sender: address,
621
- authenticatorType,
622
- data,
623
- }
624
-
625
- return {
626
- typeUrl: TYPE_URL_MSG_ADD_AUTHENTICATOR,
627
- value: msg,
628
- }
629
- }
630
-
631
- public composeMsgRemoveAuthenticator(
632
- address: string,
633
- id: Long,
634
- ): EncodeObject {
635
- const msg: MsgRemoveAuthenticator = {
636
- sender: address,
637
- id,
638
- }
639
-
640
- return {
641
- typeUrl: TYPE_URL_MSG_REMOVE_AUTHENTICATOR,
642
- value: msg,
643
- }
644
- }
645
-
646
- // ------------ util ------------
647
- public validateGoodTilBlockAndTime(
648
- orderFlags: number,
649
- goodTilBlock: number,
650
- goodTilBlockTime: number,
651
- ): void {
652
- if (orderFlags === 0 && goodTilBlock === 0) {
653
- throw new Error('goodTilBlock must be set if orderFlags is 0');
654
- } else if (orderFlags !== 0 && goodTilBlockTime === 0) {
655
- throw new Error('goodTilBlockTime must be set if orderFlags is not 0');
656
- }
657
- }
658
-
659
- public wrapMessageAsAny(registry: Registry, message: EncodeObject): Any {
660
- return registry.encodeAsAny(message);
661
- }
662
-
663
- public wrapMessageArrAsAny(registry: Registry, messages: EncodeObject[]): Any[] {
664
- const encodedMessages: Any[] = messages.map((message: EncodeObject) =>
665
- this.wrapMessageAsAny(registry, message),
666
- );
667
- return encodedMessages;
668
- }
669
- }