@typus/typus-perp-sdk 1.1.29-codegen → 1.1.29-codegen-test

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 (249) hide show
  1. package/dist/src/_dependencies/source/0x1/ascii/structs.d.ts +88 -0
  2. package/dist/src/_dependencies/source/0x1/ascii/structs.js +398 -0
  3. package/dist/src/_dependencies/source/0x1/index.d.ts +3 -0
  4. package/dist/src/_dependencies/source/0x1/index.js +6 -0
  5. package/dist/src/_dependencies/source/0x1/option/structs.d.ts +50 -0
  6. package/dist/src/_dependencies/source/0x1/option/structs.js +271 -0
  7. package/dist/src/_dependencies/source/0x1/string/structs.d.ts +48 -0
  8. package/dist/src/_dependencies/source/0x1/string/structs.js +256 -0
  9. package/dist/src/_dependencies/source/0x1/type-name/structs.d.ts +49 -0
  10. package/dist/src/_dependencies/source/0x1/type-name/structs.js +223 -0
  11. package/dist/src/_dependencies/source/0x2/bag/structs.d.ts +54 -0
  12. package/dist/src/_dependencies/source/0x2/bag/structs.js +229 -0
  13. package/dist/src/_dependencies/source/0x2/balance/structs.d.ts +84 -0
  14. package/dist/src/_dependencies/source/0x2/balance/structs.js +386 -0
  15. package/dist/src/_dependencies/source/0x2/coin/structs.d.ts +406 -0
  16. package/dist/src/_dependencies/source/0x2/coin/structs.js +1247 -0
  17. package/dist/src/_dependencies/source/0x2/index.d.ts +3 -0
  18. package/dist/src/_dependencies/source/0x2/index.js +6 -0
  19. package/dist/src/_dependencies/source/0x2/linked-table/structs.d.ts +132 -0
  20. package/dist/src/_dependencies/source/0x2/linked-table/structs.js +438 -0
  21. package/dist/src/_dependencies/source/0x2/object/structs.d.ts +86 -0
  22. package/dist/src/_dependencies/source/0x2/object/structs.js +364 -0
  23. package/dist/src/_dependencies/source/0x2/object-table/structs.d.ts +54 -0
  24. package/dist/src/_dependencies/source/0x2/object-table/structs.js +248 -0
  25. package/dist/src/_dependencies/source/0x2/sui/structs.d.ts +44 -0
  26. package/dist/src/_dependencies/source/0x2/sui/structs.js +222 -0
  27. package/dist/src/_dependencies/source/0x2/table/structs.d.ts +54 -0
  28. package/dist/src/_dependencies/source/0x2/table/structs.js +248 -0
  29. package/dist/src/_dependencies/source/0x2/table-vec/structs.d.ts +59 -0
  30. package/dist/src/_dependencies/source/0x2/table-vec/structs.js +274 -0
  31. package/dist/src/_dependencies/source/0x2/token/structs.d.ts +421 -0
  32. package/dist/src/_dependencies/source/0x2/token/structs.js +1095 -0
  33. package/dist/src/_dependencies/source/0x2/transfer-policy/structs.d.ts +348 -0
  34. package/dist/src/_dependencies/source/0x2/transfer-policy/structs.js +1091 -0
  35. package/dist/src/_dependencies/source/0x2/url/structs.d.ts +49 -0
  36. package/dist/src/_dependencies/source/0x2/url/structs.js +223 -0
  37. package/dist/src/_dependencies/source/0x2/vec-map/structs.d.ts +106 -0
  38. package/dist/src/_dependencies/source/0x2/vec-map/structs.js +446 -0
  39. package/dist/src/_dependencies/source/0x2/vec-set/structs.d.ts +49 -0
  40. package/dist/src/_dependencies/source/0x2/vec-set/structs.js +270 -0
  41. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/airdrop/structs.d.ts +422 -0
  42. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/airdrop/structs.js +1084 -0
  43. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/big-vector/structs.d.ts +130 -0
  44. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/big-vector/structs.js +456 -0
  45. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/critbit/structs.d.ts +208 -0
  46. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/critbit/structs.js +653 -0
  47. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/ecosystem/structs.d.ts +362 -0
  48. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/ecosystem/structs.js +899 -0
  49. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/index.d.ts +8 -0
  50. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/index.js +11 -0
  51. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/init.d.ts +2 -0
  52. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/init.js +102 -0
  53. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/keyed-big-vector/structs.d.ts +202 -0
  54. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/keyed-big-vector/structs.js +632 -0
  55. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/leaderboard/structs.d.ts +600 -0
  56. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/leaderboard/structs.js +1459 -0
  57. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/linked-object-table/structs.d.ts +136 -0
  58. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/linked-object-table/structs.js +438 -0
  59. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/linked-set/structs.d.ts +127 -0
  60. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/linked-set/structs.js +430 -0
  61. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/tails-staking/structs.d.ts +957 -0
  62. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/tails-staking/structs.js +2261 -0
  63. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/tgld/structs.d.ts +244 -0
  64. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/tgld/structs.js +733 -0
  65. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/user/structs.d.ts +294 -0
  66. package/dist/src/_dependencies/source/0x4b0f4ee1a40ce37ec81c987cc4e76a665419e74b863319492fc7d26f708b835a/user/structs.js +892 -0
  67. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/authority/structs.d.ts +73 -0
  68. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/authority/structs.js +263 -0
  69. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/balance-pool/structs.d.ts +294 -0
  70. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/balance-pool/structs.js +591 -0
  71. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/big-vector/structs.d.ts +64 -0
  72. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/big-vector/structs.js +258 -0
  73. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/dutch/structs.d.ts +756 -0
  74. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/dutch/structs.js +1721 -0
  75. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/i64/structs.d.ts +44 -0
  76. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/i64/structs.js +222 -0
  77. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/index.d.ts +3 -0
  78. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/index.js +6 -0
  79. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/init.d.ts +2 -0
  80. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/init.js +89 -0
  81. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/linked-list/structs.d.ts +135 -0
  82. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/linked-list/structs.js +444 -0
  83. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/vault/structs.d.ts +2106 -0
  84. package/dist/src/_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/vault/structs.js +4952 -0
  85. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/discount-mint/structs.d.ts +390 -0
  86. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/discount-mint/structs.js +844 -0
  87. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/index.d.ts +6 -0
  88. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/index.js +9 -0
  89. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/init.d.ts +2 -0
  90. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/init.js +69 -0
  91. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/royalty-rule/structs.d.ts +89 -0
  92. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/royalty-rule/structs.js +376 -0
  93. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/staking/structs.d.ts +386 -0
  94. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/staking/structs.js +881 -0
  95. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/table-vec/structs.d.ts +59 -0
  96. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/table-vec/structs.js +274 -0
  97. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/typus-nft/structs.d.ts +974 -0
  98. package/dist/src/_dependencies/source/0xbd147bc7f12f38f175d78947a61364e8e077b9b188b00e7094bc0c3623162196/typus-nft/structs.js +2387 -0
  99. package/dist/src/_framework/init-loader.d.ts +2 -0
  100. package/dist/src/{generated/typus_perp/treasury_caps.js → _framework/init-loader.js} +10 -17
  101. package/dist/src/_framework/loader.d.ts +17 -0
  102. package/dist/src/_framework/loader.js +108 -0
  103. package/dist/src/_framework/reified.d.ts +108 -0
  104. package/dist/src/_framework/reified.js +237 -0
  105. package/dist/src/_framework/util.d.ts +35 -0
  106. package/dist/src/_framework/util.js +396 -0
  107. package/dist/src/_framework/vector.d.ts +42 -0
  108. package/dist/src/_framework/vector.js +112 -0
  109. package/dist/src/api/sentio.js +538 -604
  110. package/dist/src/fetch.d.ts +34 -160
  111. package/dist/src/fetch.js +665 -365
  112. package/dist/src/index.d.ts +4 -0
  113. package/dist/src/index.js +29 -9
  114. package/dist/src/pyth.js +1 -0
  115. package/dist/src/typus_perp/admin/functions.d.ts +59 -0
  116. package/dist/src/typus_perp/admin/functions.js +122 -0
  117. package/dist/src/typus_perp/admin/structs.d.ts +467 -0
  118. package/dist/src/typus_perp/admin/structs.js +1065 -0
  119. package/dist/src/typus_perp/competition/functions.d.ts +24 -0
  120. package/dist/src/typus_perp/competition/functions.js +38 -0
  121. package/dist/src/typus_perp/competition/structs.d.ts +80 -0
  122. package/dist/src/typus_perp/competition/structs.js +288 -0
  123. package/dist/src/typus_perp/error/functions.d.ts +73 -0
  124. package/dist/src/typus_perp/error/functions.js +363 -0
  125. package/dist/src/typus_perp/escrow/functions.d.ts +17 -0
  126. package/dist/src/typus_perp/escrow/functions.js +36 -0
  127. package/dist/src/typus_perp/escrow/structs.d.ts +160 -0
  128. package/dist/src/typus_perp/escrow/structs.js +324 -0
  129. package/dist/src/typus_perp/index.d.ts +1 -0
  130. package/dist/src/typus_perp/index.js +7 -0
  131. package/dist/src/typus_perp/init.d.ts +2 -0
  132. package/dist/src/typus_perp/init.js +118 -0
  133. package/dist/src/typus_perp/lending/functions.d.ts +15 -0
  134. package/dist/src/typus_perp/lending/functions.js +22 -0
  135. package/dist/src/typus_perp/lp-pool/functions.d.ts +460 -0
  136. package/dist/src/typus_perp/lp-pool/functions.js +732 -0
  137. package/dist/src/typus_perp/lp-pool/structs.d.ts +3705 -0
  138. package/dist/src/typus_perp/lp-pool/structs.js +6789 -0
  139. package/dist/src/typus_perp/math/functions.d.ts +29 -0
  140. package/dist/src/typus_perp/math/functions.js +61 -0
  141. package/dist/src/typus_perp/position/functions.d.ts +379 -0
  142. package/dist/src/typus_perp/position/functions.js +713 -0
  143. package/dist/src/typus_perp/position/structs.d.ts +905 -0
  144. package/dist/src/typus_perp/position/structs.js +1450 -0
  145. package/dist/src/typus_perp/symbol/functions.d.ts +9 -0
  146. package/dist/src/typus_perp/symbol/functions.js +24 -0
  147. package/dist/src/typus_perp/symbol/structs.d.ts +70 -0
  148. package/dist/src/typus_perp/symbol/structs.js +235 -0
  149. package/dist/src/typus_perp/tlp/functions.d.ts +19 -0
  150. package/dist/src/typus_perp/tlp/functions.js +40 -0
  151. package/dist/src/typus_perp/tlp/structs.d.ts +121 -0
  152. package/dist/src/typus_perp/tlp/structs.js +416 -0
  153. package/dist/src/typus_perp/token-interface/functions.d.ts +11 -0
  154. package/dist/src/typus_perp/token-interface/functions.js +22 -0
  155. package/dist/src/typus_perp/trading/functions.d.ts +812 -0
  156. package/dist/src/typus_perp/trading/functions.js +1218 -0
  157. package/dist/src/typus_perp/trading/structs.d.ts +3060 -0
  158. package/dist/src/typus_perp/trading/structs.js +5813 -0
  159. package/dist/src/typus_perp/treasury-caps/functions.d.ts +9 -0
  160. package/dist/src/typus_perp/treasury-caps/functions.js +36 -0
  161. package/dist/src/typus_perp/treasury-caps/structs.d.ts +49 -0
  162. package/dist/src/typus_perp/treasury-caps/structs.js +223 -0
  163. package/dist/src/typus_perp/user-account/functions.d.ts +36 -0
  164. package/dist/src/typus_perp/user-account/functions.js +70 -0
  165. package/dist/src/typus_perp/user-account/structs.d.ts +148 -0
  166. package/dist/src/typus_perp/user-account/structs.js +448 -0
  167. package/dist/src/typus_stake_pool/admin/functions.d.ts +49 -0
  168. package/dist/src/typus_stake_pool/admin/functions.js +105 -0
  169. package/dist/src/typus_stake_pool/admin/structs.d.ts +365 -0
  170. package/dist/src/typus_stake_pool/admin/structs.js +789 -0
  171. package/dist/src/typus_stake_pool/index.d.ts +1 -0
  172. package/dist/src/typus_stake_pool/index.js +7 -0
  173. package/dist/src/typus_stake_pool/init.d.ts +2 -0
  174. package/dist/src/typus_stake_pool/init.js +69 -0
  175. package/dist/src/typus_stake_pool/stake-pool/functions.d.ts +229 -0
  176. package/dist/src/typus_stake_pool/stake-pool/functions.js +380 -0
  177. package/dist/src/typus_stake_pool/stake-pool/structs.d.ts +2199 -0
  178. package/dist/src/typus_stake_pool/stake-pool/structs.js +4653 -0
  179. package/dist/src/user/history.js +680 -611
  180. package/dist/src/user/order.d.ts +11 -11
  181. package/dist/src/user/order.js +302 -171
  182. package/dist/src/user/orderWithBidReceipt.d.ts +6 -8
  183. package/dist/src/user/orderWithBidReceipt.js +225 -127
  184. package/dist/src/user/tlp.d.ts +23 -32
  185. package/dist/src/user/tlp.js +468 -316
  186. package/package.json +1 -1
  187. package/dist/src/client.d.ts +0 -27
  188. package/dist/src/client.js +0 -108
  189. package/dist/src/generated/typus_perp/admin.d.ts +0 -117
  190. package/dist/src/generated/typus_perp/admin.js +0 -110
  191. package/dist/src/generated/typus_perp/competition.d.ts +0 -22
  192. package/dist/src/generated/typus_perp/competition.js +0 -58
  193. package/dist/src/generated/typus_perp/deps/std/type_name.d.ts +0 -17
  194. package/dist/src/generated/typus_perp/deps/std/type_name.js +0 -25
  195. package/dist/src/generated/typus_perp/deps/sui/balance.d.ts +0 -12
  196. package/dist/src/generated/typus_perp/deps/sui/balance.js +0 -20
  197. package/dist/src/generated/typus_perp/deps/sui/object.d.ts +0 -8
  198. package/dist/src/generated/typus_perp/deps/sui/object.js +0 -16
  199. package/dist/src/generated/typus_perp/deps/sui/object_table.d.ts +0 -19
  200. package/dist/src/generated/typus_perp/deps/sui/object_table.js +0 -59
  201. package/dist/src/generated/typus_perp/deps/sui/vec_set.d.ts +0 -18
  202. package/dist/src/generated/typus_perp/deps/sui/vec_set.js +0 -25
  203. package/dist/src/generated/typus_perp/deps/typus/keyed_big_vector.d.ts +0 -30
  204. package/dist/src/generated/typus_perp/deps/typus/keyed_big_vector.js +0 -67
  205. package/dist/src/generated/typus_perp/deps/typus/linked_object_table.d.ts +0 -32
  206. package/dist/src/generated/typus_perp/deps/typus/linked_object_table.js +0 -71
  207. package/dist/src/generated/typus_perp/deps/typus_framework/vault.d.ts +0 -23
  208. package/dist/src/generated/typus_perp/deps/typus_framework/vault.js +0 -61
  209. package/dist/src/generated/typus_perp/escrow.d.ts +0 -59
  210. package/dist/src/generated/typus_perp/escrow.js +0 -76
  211. package/dist/src/generated/typus_perp/lending.d.ts +0 -47
  212. package/dist/src/generated/typus_perp/lending.js +0 -50
  213. package/dist/src/generated/typus_perp/lp_pool.d.ts +0 -2327
  214. package/dist/src/generated/typus_perp/lp_pool.js +0 -1956
  215. package/dist/src/generated/typus_perp/math.d.ts +0 -95
  216. package/dist/src/generated/typus_perp/math.js +0 -97
  217. package/dist/src/generated/typus_perp/position.d.ts +0 -234
  218. package/dist/src/generated/typus_perp/position.js +0 -204
  219. package/dist/src/generated/typus_perp/symbol.d.ts +0 -18
  220. package/dist/src/generated/typus_perp/symbol.js +0 -55
  221. package/dist/src/generated/typus_perp/tlp.d.ts +0 -13
  222. package/dist/src/generated/typus_perp/tlp.js +0 -56
  223. package/dist/src/generated/typus_perp/trading.d.ts +0 -2486
  224. package/dist/src/generated/typus_perp/trading.js +0 -2476
  225. package/dist/src/generated/typus_perp/treasury_caps.d.ts +0 -13
  226. package/dist/src/generated/typus_perp/user_account.d.ts +0 -40
  227. package/dist/src/generated/typus_perp/user_account.js +0 -72
  228. package/dist/src/generated/typus_stake_pool/admin.d.ts +0 -100
  229. package/dist/src/generated/typus_stake_pool/admin.js +0 -91
  230. package/dist/src/generated/typus_stake_pool/deps/std/type_name.d.ts +0 -17
  231. package/dist/src/generated/typus_stake_pool/deps/std/type_name.js +0 -25
  232. package/dist/src/generated/typus_stake_pool/deps/sui/object.d.ts +0 -8
  233. package/dist/src/generated/typus_stake_pool/deps/sui/object.js +0 -16
  234. package/dist/src/generated/typus_stake_pool/deps/sui/vec_map.d.ts +0 -30
  235. package/dist/src/generated/typus_stake_pool/deps/sui/vec_map.js +0 -37
  236. package/dist/src/generated/typus_stake_pool/deps/sui/vec_set.d.ts +0 -18
  237. package/dist/src/generated/typus_stake_pool/deps/sui/vec_set.js +0 -25
  238. package/dist/src/generated/typus_stake_pool/stake_pool.d.ts +0 -1023
  239. package/dist/src/generated/typus_stake_pool/stake_pool.js +0 -918
  240. package/dist/src/generated/utils/index.d.ts +0 -11
  241. package/dist/src/generated/utils/index.js +0 -135
  242. package/dist/src/grpc/graphql.d.ts +0 -26
  243. package/dist/src/grpc/graphql.js +0 -126
  244. package/dist/src/grpc/grpc.d.ts +0 -1
  245. package/dist/src/grpc/grpc.js +0 -38
  246. package/dist/src/grpc/ledgerService.js +0 -64
  247. package/dist/src/grpc/liveDataService.d.ts +0 -0
  248. package/dist/src/grpc/liveDataService.js +0 -49
  249. /package/dist/src/{grpc/ledgerService.d.ts → pyth.d.ts} +0 -0
package/dist/src/fetch.js CHANGED
@@ -1,4 +1,51 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __values = (this && this.__values) || function(o) {
39
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
40
+ if (m) return m.call(o);
41
+ if (o && typeof o.length === "number") return {
42
+ next: function () {
43
+ if (o && i >= o.length) o = void 0;
44
+ return { value: o && o[i++], done: !o };
45
+ }
46
+ };
47
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
48
+ };
2
49
  Object.defineProperty(exports, "__esModule", { value: true });
3
50
  exports.getLpPools = getLpPools;
4
51
  exports.getLpPool = getLpPool;
@@ -9,173 +56,293 @@ exports.getUserOrders = getUserOrders;
9
56
  exports.getUserPositions = getUserPositions;
10
57
  exports.parseOptionBidReceipts = parseOptionBidReceipts;
11
58
  exports.getUserStake = getUserStake;
59
+ exports.getUserStakeById = getUserStakeById;
12
60
  exports.getDeactivatingShares = getDeactivatingShares;
13
61
  exports.getLiquidationPriceAndPnl = getLiquidationPriceAndPnl;
62
+ exports.getPositionCount = getPositionCount;
14
63
  exports.getAllPositions = getAllPositions;
15
64
  exports.getAllPositionsWithTradingSymbol = getAllPositionsWithTradingSymbol;
16
- const transactions_1 = require("@mysten/sui/transactions");
17
- const bcs_1 = require("@mysten/bcs");
18
- const constants_1 = require("@typus/typus-sdk/dist/src/constants");
19
- const utils_1 = require("@typus/typus-sdk/dist/src/utils");
20
- const _1 = require(".");
21
- const trading_1 = require("./generated/typus_perp/trading");
22
- const lp_pool_1 = require("./generated/typus_perp/lp_pool");
23
- const position_1 = require("./generated/typus_perp/position");
24
- const trading_2 = require("./generated/typus_perp/trading");
25
- const lp_pool_2 = require("./generated/typus_perp/lp_pool");
26
- const stake_pool_1 = require("./generated/typus_stake_pool/stake_pool");
27
- const vault_1 = require("./generated/typus_perp/deps/typus_framework/vault");
28
- async function getLpPools(client) {
29
- // let dynamicFields = await client.getDynamicFields({
30
- // parentId: LIQUIDITY_POOL,
31
- // });
32
- // let lpPools: (typeof LiquidityPool.$inferType)[] = [];
33
- // for (const field of dynamicFields.data) {
34
- // let lpPool = await getLpPool(client, field.objectId);
35
- // // console.log(lpPool);
36
- // lpPools.push(lpPool);
37
- // }
38
- // return lpPools;
39
- return (await client.getDynamicObjectFieldsBcs(_1.LIQUIDITY_POOL).then((x) => x.map((x) => lp_pool_2.LiquidityPool.parse(x)))).sort((a, b) => Number(a.index) - Number(b.index));
65
+ var client_1 = require("@mysten/sui/client");
66
+ var transactions_1 = require("@mysten/sui/transactions");
67
+ var bcs_1 = require("@mysten/bcs");
68
+ var structs_1 = require("./typus_perp/trading/structs");
69
+ var structs_2 = require("./typus_perp/lp-pool/structs");
70
+ var structs_3 = require("./typus_perp/position/structs");
71
+ var functions_1 = require("./typus_perp/trading/functions");
72
+ var functions_2 = require("./typus_stake_pool/stake-pool/functions");
73
+ var structs_4 = require("./typus_stake_pool/stake-pool/structs");
74
+ var constants_1 = require("@typus/typus-sdk/dist/src/constants");
75
+ var utils_1 = require("@typus/typus-sdk/dist/src/utils");
76
+ var _1 = require(".");
77
+ var structs_5 = require("./_dependencies/source/0xb4f25230ba74837d8299e92951306100c4a532e8c48cc3d8828abe9b91c8b274/vault/structs");
78
+ var typus_perp_1 = require("./typus_perp");
79
+ var functions_3 = require("./typus_perp/lp-pool/functions");
80
+ function getLpPools(config) {
81
+ return __awaiter(this, void 0, void 0, function () {
82
+ var provider, dynamicFields, lpPools, _a, _b, field, lpPool, e_1_1;
83
+ var e_1, _c;
84
+ return __generator(this, function (_d) {
85
+ switch (_d.label) {
86
+ case 0:
87
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
88
+ return [4 /*yield*/, provider.getDynamicFields({
89
+ parentId: _1.LIQUIDITY_POOL,
90
+ })];
91
+ case 1:
92
+ dynamicFields = _d.sent();
93
+ lpPools = [];
94
+ _d.label = 2;
95
+ case 2:
96
+ _d.trys.push([2, 7, 8, 9]);
97
+ _a = __values(dynamicFields.data), _b = _a.next();
98
+ _d.label = 3;
99
+ case 3:
100
+ if (!!_b.done) return [3 /*break*/, 6];
101
+ field = _b.value;
102
+ return [4 /*yield*/, structs_2.LiquidityPool.fetch(provider, field.objectId)];
103
+ case 4:
104
+ lpPool = _d.sent();
105
+ // console.log(lpPool);
106
+ lpPools.push(lpPool);
107
+ _d.label = 5;
108
+ case 5:
109
+ _b = _a.next();
110
+ return [3 /*break*/, 3];
111
+ case 6: return [3 /*break*/, 9];
112
+ case 7:
113
+ e_1_1 = _d.sent();
114
+ e_1 = { error: e_1_1 };
115
+ return [3 /*break*/, 9];
116
+ case 8:
117
+ try {
118
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
119
+ }
120
+ finally { if (e_1) throw e_1.error; }
121
+ return [7 /*endfinally*/];
122
+ case 9: return [2 /*return*/, lpPools];
123
+ }
124
+ });
125
+ });
40
126
  }
41
- async function getLpPool(client, objectId) {
42
- // const data = await client.getObject({
43
- // id: objectId,
44
- // options: {
45
- // // request the bcs data when loading your object
46
- // showBcs: true,
47
- // },
48
- // });
49
- // if (data.data?.bcs?.dataType !== "moveObject") {
50
- // throw new Error("Expected a move object");
51
- // }
52
- // // console.log(data.data.bcs.bcsBytes);
53
- // return LiquidityPool.fromBase64(data.data.bcs.bcsBytes);
54
- const bcs = await client.getObjectBcs(objectId);
55
- return lp_pool_2.LiquidityPool.parse(bcs);
127
+ function getLpPool(config_1) {
128
+ return __awaiter(this, arguments, void 0, function (config, objectId) {
129
+ var provider, lpPool;
130
+ if (objectId === void 0) { objectId = _1.LIQUIDITY_POOL_0; }
131
+ return __generator(this, function (_a) {
132
+ switch (_a.label) {
133
+ case 0:
134
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
135
+ return [4 /*yield*/, structs_2.LiquidityPool.fetch(provider, objectId)];
136
+ case 1:
137
+ lpPool = _a.sent();
138
+ return [2 /*return*/, lpPool];
139
+ }
140
+ });
141
+ });
56
142
  }
57
- // getLpPool(client).then((x) => console.log(x));
58
- async function getStakePools(client) {
59
- // let dynamicFields = await client.getDynamicFields({
60
- // parentId: STAKE_POOL,
61
- // });
62
- // let stakePools: (typeof StakePool.$inferType)[] = [];
63
- // for (const field of dynamicFields.data) {
64
- // let stakePool = await getStakePool(client, field.objectId);
65
- // // console.log(stakePool);
66
- // stakePools.push(stakePool);
67
- // }
68
- // return stakePools;
69
- return (await client.getDynamicObjectFieldsBcs(_1.STAKE_POOL).then((x) => x.map((x) => stake_pool_1.StakePool.parse(x)))).sort((a, b) => Number(a.pool_info.index) - Number(b.pool_info.index));
143
+ function getStakePools(config) {
144
+ return __awaiter(this, void 0, void 0, function () {
145
+ var provider, dynamicFields, stakePools, _a, _b, field, stakePool, e_2_1;
146
+ var e_2, _c;
147
+ return __generator(this, function (_d) {
148
+ switch (_d.label) {
149
+ case 0:
150
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
151
+ return [4 /*yield*/, provider.getDynamicFields({
152
+ parentId: _1.STAKE_POOL,
153
+ })];
154
+ case 1:
155
+ dynamicFields = _d.sent();
156
+ stakePools = [];
157
+ _d.label = 2;
158
+ case 2:
159
+ _d.trys.push([2, 7, 8, 9]);
160
+ _a = __values(dynamicFields.data), _b = _a.next();
161
+ _d.label = 3;
162
+ case 3:
163
+ if (!!_b.done) return [3 /*break*/, 6];
164
+ field = _b.value;
165
+ return [4 /*yield*/, structs_4.StakePool.fetch(provider, field.objectId)];
166
+ case 4:
167
+ stakePool = _d.sent();
168
+ // console.log(stakePool);
169
+ stakePools.push(stakePool);
170
+ _d.label = 5;
171
+ case 5:
172
+ _b = _a.next();
173
+ return [3 /*break*/, 3];
174
+ case 6: return [3 /*break*/, 9];
175
+ case 7:
176
+ e_2_1 = _d.sent();
177
+ e_2 = { error: e_2_1 };
178
+ return [3 /*break*/, 9];
179
+ case 8:
180
+ try {
181
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
182
+ }
183
+ finally { if (e_2) throw e_2.error; }
184
+ return [7 /*endfinally*/];
185
+ case 9: return [2 /*return*/, stakePools];
186
+ }
187
+ });
188
+ });
70
189
  }
71
- async function getStakePool(client, objectId) {
72
- // const data = await client.getObject({
73
- // id: objectId,
74
- // options: {
75
- // // request the bcs data when loading your object
76
- // showBcs: true,
77
- // },
78
- // });
79
- // if (data.data?.bcs?.dataType !== "moveObject") {
80
- // throw new Error("Expected a move object");
81
- // }
82
- // // console.log(data.data.bcs.bcsBytes);
83
- // return StakePool.fromBase64(data.data.bcs.bcsBytes);
84
- const bcs = await client.getObjectBcs(objectId);
85
- return stake_pool_1.StakePool.parse(bcs);
190
+ function getStakePool(config_1) {
191
+ return __awaiter(this, arguments, void 0, function (config, objectId) {
192
+ var provider, stakePool;
193
+ if (objectId === void 0) { objectId = _1.STAKE_POOL_0; }
194
+ return __generator(this, function (_a) {
195
+ switch (_a.label) {
196
+ case 0:
197
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
198
+ return [4 /*yield*/, structs_4.StakePool.fetch(provider, objectId)];
199
+ case 1:
200
+ stakePool = _a.sent();
201
+ return [2 /*return*/, stakePool];
202
+ }
203
+ });
204
+ });
86
205
  }
87
- async function getMarkets(client, input) {
88
- let tx = new transactions_1.Transaction();
89
- tx.add((0, trading_1.getMarketsBcs)({ arguments: { registry: _1.MARKET, indexes: input.indexes.map((x) => BigInt(x)) } }));
90
- let devInspectTransactionBlockResult = await client.devInspectTransactionBlock({ sender: constants_1.SENDER, transactionBlock: tx });
91
- // @ts-ignore
92
- let bytes = devInspectTransactionBlockResult.results[0].returnValues[0][0];
93
- let reader = new bcs_1.BcsReader(new Uint8Array(bytes));
94
- let marketIndex = 0;
95
- let results = [];
96
- reader.readVec((reader, i) => {
97
- if (i == marketIndex) {
98
- let length = reader.readULEB();
99
- let bytes = reader.readBytes(length);
100
- let markets = trading_1.Markets.parse(bytes);
101
- results.push({ markets, symbolMarkets: [] });
102
- marketIndex = i + markets.symbols.length + 1;
103
- }
104
- else {
105
- let length = reader.readULEB();
106
- let bytes = reader.readBytes(length);
107
- let symbolMarket = trading_1.SymbolMarket.parse(bytes);
108
- results[results.length - 1].symbolMarkets.push(symbolMarket);
109
- }
206
+ function getMarkets(config, input) {
207
+ return __awaiter(this, void 0, void 0, function () {
208
+ var provider, transaction, devInspectTransactionBlockResult, bytes, reader, marketIndex, results;
209
+ return __generator(this, function (_a) {
210
+ switch (_a.label) {
211
+ case 0:
212
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
213
+ transaction = new transactions_1.Transaction();
214
+ transaction.moveCall({
215
+ target: "".concat(typus_perp_1.PUBLISHED_AT, "::trading::get_markets_bcs"),
216
+ arguments: [transaction.object(_1.MARKET), transaction.pure.vector("u64", input.indexes)],
217
+ });
218
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: constants_1.SENDER, transactionBlock: transaction })];
219
+ case 1:
220
+ devInspectTransactionBlockResult = _a.sent();
221
+ bytes = devInspectTransactionBlockResult.results[0].returnValues[0][0];
222
+ reader = new bcs_1.BcsReader(new Uint8Array(bytes));
223
+ marketIndex = 0;
224
+ results = [];
225
+ reader.readVec(function (reader, i) {
226
+ if (i == marketIndex) {
227
+ var length_1 = reader.readULEB();
228
+ var bytes_1 = reader.readBytes(length_1);
229
+ var markets = structs_1.Markets.fromBcs(Uint8Array.from(Array.from(bytes_1)));
230
+ results.push({ markets: markets, symbolMarkets: [] });
231
+ marketIndex = i + markets.symbols.length + 1;
232
+ }
233
+ else {
234
+ var length_2 = reader.readULEB();
235
+ var bytes_2 = reader.readBytes(length_2);
236
+ var symbolMarket = structs_1.SymbolMarket.fromBcs(Uint8Array.from(Array.from(bytes_2)));
237
+ results[results.length - 1].symbolMarkets.push(symbolMarket);
238
+ }
239
+ });
240
+ return [2 /*return*/, results];
241
+ }
242
+ });
110
243
  });
111
- return results;
112
244
  }
113
- async function getUserOrders(client, input) {
114
- let tx = new transactions_1.Transaction();
115
- for (let i of input.indexes) {
116
- tx.add((0, trading_2.getUserOrders)({
117
- arguments: {
118
- version: _1.PERP_VERSION,
119
- registry: _1.MARKET,
120
- marketIndex: BigInt(i),
121
- user: input.user,
122
- },
123
- }));
124
- }
125
- let res = await client.devInspectTransactionBlock({ sender: input.user, transactionBlock: tx });
126
- // console.log(res);
127
- let orders = [];
128
- for (var x = 0; x < input.indexes.length; x++) {
129
- // @ts-ignore
130
- let returnValues = res.results[x].returnValues[0][0];
131
- // console.log(returnValues);
132
- let reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
133
- reader.readVec((reader) => {
134
- let length = reader.readULEB();
135
- let bytes = reader.readBytes(length);
136
- let order = position_1.TradingOrder.parse(bytes);
137
- orders.push(order);
245
+ // export async function getMarkets(config: TypusConfig): Promise<Markets[]> {
246
+ // let provider = new SuiClient({ url: config.rpcEndpoint });
247
+ // // const marketRegistry = await MarketRegistry.fetch(provider, MARKET);
248
+ // // console.log(marketRegistry.markets.vid);
249
+ // let dynamicFields = await provider.getDynamicFields({
250
+ // // @ts-ignore
251
+ // parentId: config.object.perpMarketVid,
252
+ // });
253
+ // let markets: Markets[] = [];
254
+ // for (const field of dynamicFields.data) {
255
+ // let market = await Markets.fetch(provider, field.objectId);
256
+ // // console.log(market);
257
+ // markets.push(market);
258
+ // }
259
+ // return markets;
260
+ // }
261
+ // export async function getSymbolMarkets(provider: SuiClient, market: Markets): Promise<Map<string, SymbolMarket>> {
262
+ // let symbolMarkets = new Map<string, SymbolMarket>();
263
+ // let dynamicFields = await provider.getDynamicFields({
264
+ // parentId: market.symbolMarkets.id,
265
+ // });
266
+ // for (const field of dynamicFields.data) {
267
+ // let symbolMarket = await SymbolMarket.fetch(provider, field.objectId);
268
+ // // @ts-ignore
269
+ // let key = field.name.value.name;
270
+ // // console.log(key);
271
+ // // console.log(symbolMarket);
272
+ // symbolMarkets.set(key, symbolMarket);
273
+ // }
274
+ // return symbolMarkets;
275
+ // }
276
+ function getUserOrders(config, user) {
277
+ return __awaiter(this, void 0, void 0, function () {
278
+ var provider, tx, res, returnValues, reader, orders;
279
+ return __generator(this, function (_a) {
280
+ switch (_a.label) {
281
+ case 0:
282
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
283
+ tx = new transactions_1.Transaction();
284
+ (0, functions_1.getUserOrders)(tx, {
285
+ version: _1.PERP_VERSION,
286
+ registry: _1.MARKET,
287
+ marketIndex: BigInt(0),
288
+ user: user,
289
+ });
290
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: user, transactionBlock: tx })];
291
+ case 1:
292
+ res = _a.sent();
293
+ returnValues = res.results[0].returnValues[0][0];
294
+ reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
295
+ orders = [];
296
+ reader.readVec(function (reader) {
297
+ var length = reader.readULEB();
298
+ var bytes = reader.readBytes(length);
299
+ var order = structs_3.TradingOrder.fromBcs(Uint8Array.from(Array.from(bytes)));
300
+ orders.push(order);
301
+ });
302
+ // let orders: TradingOrder[] = readVecOrder(Uint8Array.from(returnValues));
303
+ // console.log(orders);
304
+ return [2 /*return*/, orders];
305
+ }
138
306
  });
139
- }
140
- return orders;
307
+ });
141
308
  }
142
- async function getUserPositions(client, input) {
143
- let tx = new transactions_1.Transaction();
144
- for (let i of input.indexes) {
145
- tx.add((0, trading_2.getUserPositions)({
146
- arguments: {
147
- version: _1.PERP_VERSION,
148
- registry: _1.MARKET,
149
- marketIndex: BigInt(i),
150
- user: input.user,
151
- },
152
- }));
153
- }
154
- let res = await client.devInspectTransactionBlock({ sender: input.user, transactionBlock: tx });
155
- // console.log(res);
156
- let positions = [];
157
- for (var x = 0; x < input.indexes.length; x++) {
158
- // @ts-ignore
159
- let returnValues = res.results[x].returnValues[0][0];
160
- // console.log(returnValues);
161
- let reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
162
- reader.readVec((reader) => {
163
- let length = reader.readULEB();
164
- let bytes = reader.readBytes(length);
165
- let position = position_1.Position.parse(bytes);
166
- // @ts-ignore
167
- position.marketIndex = x;
168
- positions.push(position);
309
+ function getUserPositions(config, user) {
310
+ return __awaiter(this, void 0, void 0, function () {
311
+ var provider, tx, res, returnValues, reader, positions;
312
+ return __generator(this, function (_a) {
313
+ switch (_a.label) {
314
+ case 0:
315
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
316
+ tx = new transactions_1.Transaction();
317
+ (0, functions_1.getUserPositions)(tx, {
318
+ version: _1.PERP_VERSION,
319
+ registry: _1.MARKET,
320
+ marketIndex: BigInt(0),
321
+ user: user,
322
+ });
323
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: user, transactionBlock: tx })];
324
+ case 1:
325
+ res = _a.sent();
326
+ returnValues = res.results[0].returnValues[0][0];
327
+ reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
328
+ positions = [];
329
+ reader.readVec(function (reader) {
330
+ var length = reader.readULEB();
331
+ var bytes = reader.readBytes(length);
332
+ var position = structs_3.Position.fromBcs(Uint8Array.from(Array.from(bytes)));
333
+ positions.push(position);
334
+ });
335
+ // let positions: Position[] = readVecPosition(Uint8Array.from(returnValues));
336
+ // console.log(positions);
337
+ return [2 /*return*/, positions];
338
+ }
169
339
  });
170
- }
171
- // let positions: Position[] = readVecPosition(Uint8Array.from(returnValues));
172
- // console.log(positions);
173
- return positions;
340
+ });
174
341
  }
175
342
  function parseOptionBidReceipts(positions) {
176
- return positions.map((position) => {
177
- if (position.option_collateral_info) {
178
- let bidReceipt = vault_1.TypusBidReceipt.parse(Uint8Array.from(Array.from(position.option_collateral_info.bid_receipts_bcs[0])));
343
+ return positions.map(function (position) {
344
+ if (position.optionCollateralInfo) {
345
+ var bidReceipt = structs_5.TypusBidReceipt.fromBcs(Uint8Array.from(Array.from(position.optionCollateralInfo.bidReceiptsBcs[0])));
179
346
  // console.log(bidReceipt);
180
347
  return bidReceipt;
181
348
  }
@@ -185,232 +352,365 @@ function parseOptionBidReceipts(positions) {
185
352
  });
186
353
  }
187
354
  /**
188
- * @returns [lpShare, incentives][]
355
+ * @returns [lpShare, incentives]
189
356
  */
190
- async function getUserStake(client, input) {
191
- let tx = new transactions_1.Transaction();
192
- for (let i of input.indexes) {
193
- tx.add((0, stake_pool_1.allocateIncentive)({
194
- arguments: {
195
- version: _1.STAKE_POOL_VERSION,
196
- registry: _1.STAKE_POOL,
197
- index: BigInt(i),
198
- },
199
- }));
200
- tx.add((0, stake_pool_1.getUserShares)({
201
- arguments: {
202
- registry: _1.STAKE_POOL,
203
- index: BigInt(i),
204
- user: input.user,
205
- },
206
- }));
207
- }
208
- let res = await client.devInspectTransactionBlock({ sender: input.user, transactionBlock: tx });
209
- // console.log(res);
210
- if (res.results) {
211
- let results = [];
212
- for (var x = 0; x < input.indexes.length; x++) {
213
- // @ts-ignore
214
- var returnValues = res.results[1].returnValues[0][0];
215
- // console.log(returnValues);
216
- var reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
217
- let length = reader.readULEB();
218
- console.log(length);
219
- if (length == 0) {
220
- results.push([]);
221
- continue;
357
+ function getUserStake(config, user) {
358
+ return __awaiter(this, void 0, void 0, function () {
359
+ var provider, tx, res, returnValues, reader, length_3, lpShare, incentives_1;
360
+ return __generator(this, function (_a) {
361
+ switch (_a.label) {
362
+ case 0:
363
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
364
+ tx = new transactions_1.Transaction();
365
+ // allocateIncentive(tx, {
366
+ // version: STAKE_POOL_VERSION,
367
+ // registry: STAKE_POOL,
368
+ // index: BigInt(0),
369
+ // clock: CLOCK,
370
+ // });
371
+ (0, functions_2.getUserShares)(tx, {
372
+ registry: _1.STAKE_POOL,
373
+ index: BigInt(0),
374
+ user: user,
375
+ });
376
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: user, transactionBlock: tx })];
377
+ case 1:
378
+ res = _a.sent();
379
+ // console.log(res);
380
+ if (res.results) {
381
+ returnValues = res.results[0].returnValues[0][0];
382
+ reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
383
+ length_3 = reader.readULEB();
384
+ // console.log(length);
385
+ if (length_3 == 0) {
386
+ return [2 /*return*/, null];
387
+ }
388
+ lpShare = structs_4.LpUserShare.fromFields(structs_4.LpUserShare.bcs.read(reader));
389
+ incentives_1 = [];
390
+ reader.readVec(function (reader) {
391
+ var incentive = reader.read64();
392
+ incentives_1.push(incentive);
393
+ });
394
+ return [2 /*return*/, [lpShare, incentives_1]];
395
+ }
396
+ else {
397
+ return [2 /*return*/, null];
398
+ }
399
+ return [2 /*return*/];
222
400
  }
223
- // let lpShare = LpUserShare.fromFields(LpUserShare.bcs.read(reader));
224
- let lpShare = stake_pool_1.LpUserShare.read(reader);
225
- let incentives = [];
226
- reader.readVec((reader) => {
227
- let incentive = reader.read64();
228
- incentives.push(incentive);
229
- });
230
- results.push([lpShare, incentives]);
231
- }
232
- return results;
233
- }
234
- else {
235
- return [];
236
- }
401
+ });
402
+ });
403
+ }
404
+ /**
405
+ * @returns [lpShare, incentives]
406
+ */
407
+ function getUserStakeById(config, userShareId) {
408
+ return __awaiter(this, void 0, void 0, function () {
409
+ var provider, tx, res, returnValues, reader, length_4, lpShare, incentives_2;
410
+ return __generator(this, function (_a) {
411
+ switch (_a.label) {
412
+ case 0:
413
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
414
+ tx = new transactions_1.Transaction();
415
+ (0, functions_2.allocateIncentive)(tx, {
416
+ version: _1.STAKE_POOL_VERSION,
417
+ registry: _1.STAKE_POOL,
418
+ index: BigInt(0),
419
+ clock: constants_1.CLOCK,
420
+ });
421
+ (0, functions_2.getUserSharesByUserShareId)(tx, {
422
+ registry: _1.STAKE_POOL,
423
+ index: BigInt(0),
424
+ userShareId: BigInt(userShareId),
425
+ });
426
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: constants_1.SENDER, transactionBlock: tx })];
427
+ case 1:
428
+ res = _a.sent();
429
+ // console.log(res);
430
+ if (res.results) {
431
+ returnValues = res.results[1].returnValues[0][0];
432
+ reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
433
+ length_4 = reader.readULEB();
434
+ // console.log(length);
435
+ if (length_4 == 0) {
436
+ return [2 /*return*/, null];
437
+ }
438
+ lpShare = structs_4.LpUserShare.fromFields(structs_4.LpUserShare.bcs.read(reader));
439
+ incentives_2 = [];
440
+ reader.readVec(function (reader) {
441
+ var incentive = reader.read64();
442
+ incentives_2.push(incentive);
443
+ });
444
+ return [2 /*return*/, [lpShare, incentives_2]];
445
+ }
446
+ else {
447
+ return [2 /*return*/, null];
448
+ }
449
+ return [2 /*return*/];
450
+ }
451
+ });
452
+ });
237
453
  }
238
454
  /**
239
455
  * @returns deactivatingShares[]
240
456
  */
241
- async function getDeactivatingShares(client, input) {
242
- let tx = new transactions_1.Transaction();
243
- for (let i of input.indexes) {
244
- tx.add((0, lp_pool_1.getUserDeactivatingShares)({
245
- arguments: {
246
- registry: _1.LP_POOL,
247
- index: BigInt(i),
248
- user: input.user,
249
- },
250
- typeArguments: ["TLP_TOKEN"],
251
- }));
252
- }
253
- let res = await client.devInspectTransactionBlock({ sender: input.user, transactionBlock: tx });
254
- // console.log(res);
255
- if (res.results) {
256
- let deactivatingShares = [];
257
- for (var x = 0; x < input.indexes.length; x++) {
258
- // @ts-ignore
259
- var returnValues = res.results[0].returnValues[0][0];
260
- // console.log(returnValues);
261
- var reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
262
- reader.readVec((reader) => {
263
- let length = reader.readULEB();
264
- let lpShare = lp_pool_1.DeactivatingShares.read(reader);
265
- // @ts-ignore
266
- deactivatingShares.push(lpShare);
267
- });
268
- }
269
- // console.log(deactivatingShares);
270
- return deactivatingShares;
271
- }
272
- else {
273
- return [];
274
- }
457
+ function getDeactivatingShares(config, user) {
458
+ return __awaiter(this, void 0, void 0, function () {
459
+ var provider, tx, res, returnValues, reader, deactivatingShares_1;
460
+ return __generator(this, function (_a) {
461
+ switch (_a.label) {
462
+ case 0:
463
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
464
+ tx = new transactions_1.Transaction();
465
+ (0, functions_3.getUserDeactivatingShares)(tx, _1.TLP_TOKEN, {
466
+ registry: _1.LP_POOL,
467
+ index: BigInt(0),
468
+ user: user,
469
+ });
470
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: user, transactionBlock: tx })];
471
+ case 1:
472
+ res = _a.sent();
473
+ // console.log(res);
474
+ if (res.results) {
475
+ returnValues = res.results[0].returnValues[0][0];
476
+ reader = new bcs_1.BcsReader(new Uint8Array(returnValues));
477
+ deactivatingShares_1 = [];
478
+ reader.readVec(function (reader) {
479
+ var length = reader.readULEB();
480
+ var lpShare = structs_2.DeactivatingShares.bcs.read(reader);
481
+ // @ts-ignore
482
+ deactivatingShares_1.push(lpShare);
483
+ });
484
+ // console.log(deactivatingShares);
485
+ return [2 /*return*/, deactivatingShares_1];
486
+ }
487
+ else {
488
+ return [2 /*return*/, []];
489
+ }
490
+ return [2 /*return*/];
491
+ }
492
+ });
493
+ });
275
494
  }
276
495
  /**
277
496
  * @returns [liquidationPrice, pnl(in USD)]
278
497
  */
279
- async function getLiquidationPriceAndPnl(client, input) {
280
- let tx = new transactions_1.Transaction();
281
- let tokens = [];
282
- for (let position of input.positions) {
283
- // parse from Position
284
- let TOKEN = (0, constants_1.typeArgToAsset)(position.collateral_token.name);
285
- let BASE_TOKEN = (0, constants_1.typeArgToAsset)(position.symbol.base_token.name);
286
- tokens.push(TOKEN);
287
- tokens.push(BASE_TOKEN);
288
- }
289
- await (0, utils_1.updatePyth)(client.pythClient, tx, Array.from(new Set(tokens)));
290
- for (let token of Array.from(new Set(tokens))) {
291
- (0, utils_1.updateOracleWithPythUsd)(client.pythClient, tx, client.config.package.oracle, token);
292
- }
293
- for (let position of input.positions) {
294
- // parse from Position
295
- let TOKEN = (0, constants_1.typeArgToAsset)(position.collateral_token.name);
296
- let BASE_TOKEN = (0, constants_1.typeArgToAsset)(position.symbol.base_token.name);
297
- // @ts-ignore
298
- let index = position.marketIndex;
299
- tx.add((0, trading_2.getEstimatedLiquidationPriceAndPnl)({
300
- arguments: {
301
- version: _1.PERP_VERSION,
302
- registry: _1.MARKET,
303
- poolRegistry: _1.LP_POOL,
304
- marketIndex: BigInt(index),
305
- poolIndex: BigInt(index),
306
- typusOracleCToken: constants_1.oracle[_1.NETWORK][TOKEN],
307
- typusOracleTradingSymbol: constants_1.oracle[_1.NETWORK][BASE_TOKEN],
308
- positionId: BigInt(position.position_id),
309
- dovRegistry: client.config.registry.dov.dovSingle,
310
- },
311
- typeArguments: [position.collateral_token.name, position.symbol.base_token.name],
312
- }));
313
- }
314
- let res = await client.devInspectTransactionBlock({ sender: constants_1.SENDER, transactionBlock: tx });
315
- // console.log(res);
316
- // 0 estimated_liquidation_price,
317
- // 1 has_profit,
318
- // 2 pnl_usd,
319
- // 3 is_cost,
320
- // 4 unrealized_cost_in_usd,
321
- // 5 unrealized_funding_sign,
322
- // 6 unrealized_funding_fee_usd,
323
- // 7 unrealized_borrow_fee_usd,
324
- // 8 close_fee_usd
325
- let results = res.results
326
- ? res.results.slice(-input.positions.length).map((x) => {
327
- // console.log(x);
328
- let liquidationPrice = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[0][0])));
329
- let isProfit = bcs_1.bcs.bool().parse(Uint8Array.from(x.returnValues[1][0]));
330
- var pnl = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[2][0])));
331
- pnl = isProfit ? pnl : -pnl;
332
- // including closeFee
333
- let isCost = bcs_1.bcs.bool().parse(Uint8Array.from(x.returnValues[3][0]));
334
- var cost = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[4][0])));
335
- cost = isCost ? cost : -cost;
336
- // cost = unrealized_loss + unrealized_trading_fee + unrealized_borrow_fee + unrealized_funding_fee;
337
- let fundingFeeSign = bcs_1.bcs.bool().parse(Uint8Array.from(x.returnValues[5][0]));
338
- var fundingFee = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[6][0])));
339
- fundingFee = fundingFeeSign ? fundingFee : -fundingFee;
340
- let borrowFee = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[7][0])));
341
- let closeFee = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[8][0])));
342
- return {
343
- liquidationPrice,
344
- pnl: pnl + closeFee,
345
- fundingFee,
346
- borrowFee,
347
- closeFee,
348
- pnlAfterFee: pnl - cost,
349
- };
350
- })
351
- : [];
352
- // console.log(results);
353
- return results;
498
+ function getLiquidationPriceAndPnl(config, pythClient, input) {
499
+ return __awaiter(this, void 0, void 0, function () {
500
+ var provider, tx, tokens, _a, _b, position, TOKEN, BASE_TOKEN, _c, _d, token, _e, _f, position, TOKEN, BASE_TOKEN, res, results;
501
+ var e_3, _g, e_4, _h, e_5, _j;
502
+ return __generator(this, function (_k) {
503
+ switch (_k.label) {
504
+ case 0:
505
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
506
+ tx = new transactions_1.Transaction();
507
+ tokens = [];
508
+ try {
509
+ for (_a = __values(input.positions), _b = _a.next(); !_b.done; _b = _a.next()) {
510
+ position = _b.value;
511
+ TOKEN = (0, constants_1.typeArgToAsset)(position.collateralToken.name);
512
+ BASE_TOKEN = (0, constants_1.typeArgToAsset)(position.symbol.baseToken.name);
513
+ tokens.push(TOKEN);
514
+ tokens.push(BASE_TOKEN);
515
+ }
516
+ }
517
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
518
+ finally {
519
+ try {
520
+ if (_b && !_b.done && (_g = _a.return)) _g.call(_a);
521
+ }
522
+ finally { if (e_3) throw e_3.error; }
523
+ }
524
+ return [4 /*yield*/, (0, utils_1.updatePyth)(pythClient, tx, Array.from(new Set(tokens)))];
525
+ case 1:
526
+ _k.sent();
527
+ try {
528
+ for (_c = __values(Array.from(new Set(tokens))), _d = _c.next(); !_d.done; _d = _c.next()) {
529
+ token = _d.value;
530
+ (0, utils_1.updateOracleWithPythUsd)(pythClient, tx, config.package.oracle, token);
531
+ }
532
+ }
533
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
534
+ finally {
535
+ try {
536
+ if (_d && !_d.done && (_h = _c.return)) _h.call(_c);
537
+ }
538
+ finally { if (e_4) throw e_4.error; }
539
+ }
540
+ try {
541
+ for (_e = __values(input.positions), _f = _e.next(); !_f.done; _f = _e.next()) {
542
+ position = _f.value;
543
+ TOKEN = (0, constants_1.typeArgToAsset)(position.collateralToken.name);
544
+ BASE_TOKEN = (0, constants_1.typeArgToAsset)(position.symbol.baseToken.name);
545
+ (0, functions_1.getEstimatedLiquidationPriceAndPnl)(tx, [position.collateralToken.name, position.symbol.baseToken.name], {
546
+ version: _1.PERP_VERSION,
547
+ registry: _1.MARKET,
548
+ poolRegistry: _1.LP_POOL,
549
+ marketIndex: BigInt(0),
550
+ poolIndex: BigInt(0),
551
+ typusOracleCToken: constants_1.oracle[_1.NETWORK][TOKEN],
552
+ typusOracleTradingSymbol: constants_1.oracle[_1.NETWORK][BASE_TOKEN],
553
+ clock: constants_1.CLOCK,
554
+ positionId: position.positionId,
555
+ dovRegistry: config.registry.dov.dovSingle,
556
+ });
557
+ }
558
+ }
559
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
560
+ finally {
561
+ try {
562
+ if (_f && !_f.done && (_j = _e.return)) _j.call(_e);
563
+ }
564
+ finally { if (e_5) throw e_5.error; }
565
+ }
566
+ return [4 /*yield*/, provider.devInspectTransactionBlock({ sender: input.user, transactionBlock: tx })];
567
+ case 2:
568
+ res = _k.sent();
569
+ results = res.results
570
+ ? res.results.slice(-input.positions.length).map(function (x) {
571
+ // console.log(x);
572
+ var liquidationPrice = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[0][0])));
573
+ var isProfit = bcs_1.bcs.bool().parse(Uint8Array.from(x.returnValues[1][0]));
574
+ var pnl = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[2][0])));
575
+ pnl = isProfit ? pnl : -pnl;
576
+ // including closeFee
577
+ var isCost = bcs_1.bcs.bool().parse(Uint8Array.from(x.returnValues[3][0]));
578
+ var cost = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[4][0])));
579
+ cost = isCost ? cost : -cost;
580
+ // cost = unrealized_loss + unrealized_trading_fee + unrealized_borrow_fee + unrealized_funding_fee;
581
+ var fundingFeeSign = bcs_1.bcs.bool().parse(Uint8Array.from(x.returnValues[5][0]));
582
+ var fundingFee = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[6][0])));
583
+ fundingFee = fundingFeeSign ? fundingFee : -fundingFee;
584
+ var borrowFee = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[7][0])));
585
+ var closeFee = Number(bcs_1.bcs.u64().parse(Uint8Array.from(x.returnValues[8][0])));
586
+ return {
587
+ liquidationPrice: liquidationPrice,
588
+ pnl: pnl + closeFee,
589
+ fundingFee: fundingFee,
590
+ borrowFee: borrowFee,
591
+ closeFee: closeFee,
592
+ pnlAfterFee: pnl - cost,
593
+ };
594
+ })
595
+ : [];
596
+ // console.log(results);
597
+ return [2 /*return*/, results];
598
+ }
599
+ });
600
+ });
354
601
  }
355
- async function getAllPositions(client, input) {
356
- let tx = new transactions_1.Transaction();
357
- tx.add((0, trading_2.getAllPositions)({
358
- arguments: {
359
- version: _1.PERP_VERSION,
360
- registry: _1.MARKET,
361
- marketIndex: BigInt(input.marketIndex),
362
- slice: BigInt(input.slice),
363
- page: BigInt(input.page),
364
- },
365
- typeArguments: [constants_1.tokenType[_1.NETWORK][input.baseToken]],
366
- }));
367
- let res = await client.devInspectTransactionBlock({
368
- sender: constants_1.SENDER,
369
- transactionBlock: tx,
602
+ function getPositionCount(config, input) {
603
+ return __awaiter(this, void 0, void 0, function () {
604
+ var provider, tx, res, raw, maxPageBytes, view, maxPage;
605
+ var _a, _b, _c, _d;
606
+ return __generator(this, function (_e) {
607
+ switch (_e.label) {
608
+ case 0:
609
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
610
+ tx = new transactions_1.Transaction();
611
+ // Rust 實作是呼叫 get_all_positions(slice = 1, page = 1) 然後取最後 8 bytes。
612
+ // 這裡直接複用相同邏輯,只需要 max_page。
613
+ (0, functions_1.getAllPositions)(tx, constants_1.tokenType[_1.NETWORK][input.baseToken], {
614
+ version: _1.PERP_VERSION,
615
+ registry: _1.MARKET,
616
+ marketIndex: BigInt(0),
617
+ slice: BigInt(1),
618
+ page: BigInt(1),
619
+ });
620
+ return [4 /*yield*/, provider.devInspectTransactionBlock({
621
+ sender: "0x0000000000000000000000000000000000000000000000000000000000000000",
622
+ transactionBlock: tx,
623
+ })];
624
+ case 1:
625
+ res = _e.sent();
626
+ // 沒有資料時,回傳 0
627
+ if (!((_d = (_c = (_b = (_a = res.results) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.returnValues) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d[0])) {
628
+ return [2 /*return*/, 0];
629
+ }
630
+ raw = new Uint8Array(res.results[0].returnValues[0][0]);
631
+ // 至少要含 8 bytes 的 max_page;不足代表無 Position
632
+ if (raw.length < 8)
633
+ return [2 /*return*/, 0];
634
+ maxPageBytes = raw.slice(raw.length - 8);
635
+ view = new DataView(maxPageBytes.buffer, maxPageBytes.byteOffset, 8);
636
+ maxPage = Number(view.getBigUint64(0, true));
637
+ return [2 /*return*/, maxPage];
638
+ }
639
+ });
370
640
  });
371
- if (!res.results?.[0]?.returnValues?.[0]?.[0]) {
372
- return { positions: [], maxPage: 0 };
373
- }
374
- // -- 解析回傳值 -------------------------------------------------
375
- const raw = new Uint8Array(res.results[0].returnValues[0][0]);
376
- // 1) 至少要有 8 bytes 的 max_page
377
- if (raw.length < 8)
378
- return { positions: [], maxPage: 0 };
379
- const reader = new bcs_1.BcsReader(raw);
380
- // 2) 第一個 u8 = user_positions_len + 1
381
- const userPositionsLen = reader.readULEB() - 1;
382
- // console.log("userPositionsLen", userPositionsLen);
383
- const positions = [];
384
- for (let i = 0; i < userPositionsLen; i++) {
385
- reader.readULEB();
386
- const pos = position_1.Position.read(reader);
387
- positions.push(pos);
388
- }
389
- reader.readULEB();
390
- const maxPage = Number(reader.read64());
391
- // console.log("maxPage", maxPage);
392
- return { positions, maxPage };
393
641
  }
394
- const SLICE = 100;
395
- async function getAllPositionsWithTradingSymbol(client, input) {
396
- var positions = [];
397
- var { positions: pos, maxPage } = await getAllPositions(client, {
398
- baseToken: input.baseToken,
399
- slice: SLICE.toString(),
400
- page: "1",
401
- marketIndex: input.marketIndex,
642
+ function getAllPositions(config, input) {
643
+ return __awaiter(this, void 0, void 0, function () {
644
+ var provider, tx, res, raw, withoutMaxPage, reader, userPositionsLen, positions, i, fields, pos;
645
+ var _a, _b, _c, _d;
646
+ return __generator(this, function (_e) {
647
+ switch (_e.label) {
648
+ case 0:
649
+ provider = new client_1.SuiClient({ url: config.rpcEndpoint });
650
+ tx = new transactions_1.Transaction();
651
+ (0, functions_1.getAllPositions)(tx, constants_1.tokenType[_1.NETWORK][input.baseToken], {
652
+ version: _1.PERP_VERSION,
653
+ registry: _1.MARKET,
654
+ marketIndex: BigInt(0),
655
+ slice: BigInt(input.slice),
656
+ page: BigInt(input.page),
657
+ });
658
+ return [4 /*yield*/, provider.devInspectTransactionBlock({
659
+ sender: "0x0000000000000000000000000000000000000000000000000000000000000000",
660
+ transactionBlock: tx,
661
+ })];
662
+ case 1:
663
+ res = _e.sent();
664
+ if (!((_d = (_c = (_b = (_a = res.results) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.returnValues) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d[0])) {
665
+ return [2 /*return*/, []];
666
+ }
667
+ raw = new Uint8Array(res.results[0].returnValues[0][0]);
668
+ // 1) 至少要有 8 bytes 的 max_page
669
+ if (raw.length < 8)
670
+ return [2 /*return*/, []];
671
+ withoutMaxPage = raw.slice(0, raw.length - 8);
672
+ reader = new bcs_1.BcsReader(withoutMaxPage);
673
+ userPositionsLen = reader.read8() - 1;
674
+ positions = [];
675
+ for (i = 0; i < userPositionsLen; i++) {
676
+ reader.read16();
677
+ fields = structs_3.Position.bcs.read(reader);
678
+ pos = structs_3.Position.fromFields(fields);
679
+ positions.push(pos);
680
+ }
681
+ return [2 /*return*/, positions];
682
+ }
683
+ });
402
684
  });
403
- // console.log(maxPage);
404
- positions = positions.concat(pos);
405
- for (let page = 2; page <= maxPage; page++) {
406
- console.log(page);
407
- var { positions: pos, maxPage } = await getAllPositions(client, {
408
- baseToken: input.baseToken,
409
- slice: SLICE.toString(),
410
- page: page.toString(),
411
- marketIndex: input.marketIndex,
685
+ }
686
+ function getAllPositionsWithTradingSymbol(config, input) {
687
+ return __awaiter(this, void 0, void 0, function () {
688
+ var total, slice, pages, pagePromises, page, results;
689
+ return __generator(this, function (_a) {
690
+ switch (_a.label) {
691
+ case 0: return [4 /*yield*/, getPositionCount(config, { baseToken: input.baseToken })];
692
+ case 1:
693
+ total = _a.sent();
694
+ // 2) 若無倉位直接回傳 []
695
+ if (total === 0) {
696
+ return [2 /*return*/, []];
697
+ }
698
+ slice = Math.min(total, 100);
699
+ pages = Math.ceil(total / slice);
700
+ pagePromises = [];
701
+ for (page = 1; page <= pages; page++) {
702
+ pagePromises.push(getAllPositions(config, {
703
+ baseToken: input.baseToken,
704
+ slice: slice.toString(),
705
+ page: page.toString(),
706
+ }));
707
+ }
708
+ return [4 /*yield*/, Promise.all(pagePromises)];
709
+ case 2:
710
+ results = _a.sent();
711
+ // 5) 扁平化後回傳
712
+ return [2 /*return*/, results.flat()];
713
+ }
412
714
  });
413
- positions = positions.concat(pos);
414
- }
415
- return positions;
715
+ });
416
716
  }