@haven-fi/solauto-sdk 1.0.176 → 1.0.177

Sign up to get free protection for your applications and to get access to all the features.
Files changed (344) hide show
  1. package/dist/constants/generalAccounts.d.ts.map +1 -1
  2. package/dist/constants/generalAccounts.js +0 -1
  3. package/dist/constants/solautoConstants.d.ts +0 -1
  4. package/dist/constants/solautoConstants.d.ts.map +1 -1
  5. package/dist/constants/solautoConstants.js +3 -3
  6. package/dist/generated/errors/solauto.d.ts +8 -26
  7. package/dist/generated/errors/solauto.d.ts.map +1 -1
  8. package/dist/generated/errors/solauto.js +26 -59
  9. package/dist/jupiter-sdk/accounts/index.d.ts +9 -0
  10. package/dist/jupiter-sdk/accounts/index.d.ts.map +1 -0
  11. package/dist/jupiter-sdk/accounts/index.js +24 -0
  12. package/dist/jupiter-sdk/accounts/tokenLedger.d.ts +32 -0
  13. package/dist/jupiter-sdk/accounts/tokenLedger.d.ts.map +1 -0
  14. package/dist/jupiter-sdk/accounts/tokenLedger.js +68 -0
  15. package/dist/jupiter-sdk/errors/index.d.ts +9 -0
  16. package/dist/jupiter-sdk/errors/index.d.ts.map +1 -0
  17. package/dist/jupiter-sdk/errors/index.js +24 -0
  18. package/dist/jupiter-sdk/errors/jupiter.d.ts +127 -0
  19. package/dist/jupiter-sdk/errors/jupiter.d.ts.map +1 -0
  20. package/dist/jupiter-sdk/errors/jupiter.js +229 -0
  21. package/dist/jupiter-sdk/index.d.ts +14 -0
  22. package/dist/jupiter-sdk/index.d.ts.map +1 -0
  23. package/dist/jupiter-sdk/index.js +29 -0
  24. package/dist/jupiter-sdk/instructions/aldrinSwap.d.ts +29 -0
  25. package/dist/jupiter-sdk/instructions/aldrinSwap.d.ts.map +1 -0
  26. package/dist/jupiter-sdk/instructions/aldrinSwap.js +95 -0
  27. package/dist/jupiter-sdk/instructions/aldrinV2Swap.d.ts +30 -0
  28. package/dist/jupiter-sdk/instructions/aldrinV2Swap.d.ts.map +1 -0
  29. package/dist/jupiter-sdk/instructions/aldrinV2Swap.js +100 -0
  30. package/dist/jupiter-sdk/instructions/balansolSwap.d.ts +34 -0
  31. package/dist/jupiter-sdk/instructions/balansolSwap.d.ts.map +1 -0
  32. package/dist/jupiter-sdk/instructions/balansolSwap.js +130 -0
  33. package/dist/jupiter-sdk/instructions/claim.d.ts +25 -0
  34. package/dist/jupiter-sdk/instructions/claim.d.ts.map +1 -0
  35. package/dist/jupiter-sdk/instructions/claim.js +64 -0
  36. package/dist/jupiter-sdk/instructions/claimToken.d.ts +31 -0
  37. package/dist/jupiter-sdk/instructions/claimToken.d.ts.map +1 -0
  38. package/dist/jupiter-sdk/instructions/claimToken.js +93 -0
  39. package/dist/jupiter-sdk/instructions/cloneSwap.d.ts +34 -0
  40. package/dist/jupiter-sdk/instructions/cloneSwap.d.ts.map +1 -0
  41. package/dist/jupiter-sdk/instructions/cloneSwap.js +120 -0
  42. package/dist/jupiter-sdk/instructions/createOpenOrders.d.ts +24 -0
  43. package/dist/jupiter-sdk/instructions/createOpenOrders.d.ts.map +1 -0
  44. package/dist/jupiter-sdk/instructions/createOpenOrders.js +76 -0
  45. package/dist/jupiter-sdk/instructions/createProgramOpenOrders.d.ts +29 -0
  46. package/dist/jupiter-sdk/instructions/createProgramOpenOrders.d.ts.map +1 -0
  47. package/dist/jupiter-sdk/instructions/createProgramOpenOrders.js +86 -0
  48. package/dist/jupiter-sdk/instructions/createTokenAccount.d.ts +27 -0
  49. package/dist/jupiter-sdk/instructions/createTokenAccount.d.ts.map +1 -0
  50. package/dist/jupiter-sdk/instructions/createTokenAccount.js +70 -0
  51. package/dist/jupiter-sdk/instructions/createTokenLedger.d.ts +21 -0
  52. package/dist/jupiter-sdk/instructions/createTokenLedger.d.ts.map +1 -0
  53. package/dist/jupiter-sdk/instructions/createTokenLedger.js +62 -0
  54. package/dist/jupiter-sdk/instructions/cremaSwap.d.ts +33 -0
  55. package/dist/jupiter-sdk/instructions/cremaSwap.d.ts.map +1 -0
  56. package/dist/jupiter-sdk/instructions/cremaSwap.js +119 -0
  57. package/dist/jupiter-sdk/instructions/cropperSwap.d.ts +30 -0
  58. package/dist/jupiter-sdk/instructions/cropperSwap.d.ts.map +1 -0
  59. package/dist/jupiter-sdk/instructions/cropperSwap.js +103 -0
  60. package/dist/jupiter-sdk/instructions/cykuraSwap.d.ts +29 -0
  61. package/dist/jupiter-sdk/instructions/cykuraSwap.d.ts.map +1 -0
  62. package/dist/jupiter-sdk/instructions/cykuraSwap.js +99 -0
  63. package/dist/jupiter-sdk/instructions/deltafiSwap.d.ts +31 -0
  64. package/dist/jupiter-sdk/instructions/deltafiSwap.d.ts.map +1 -0
  65. package/dist/jupiter-sdk/instructions/deltafiSwap.js +109 -0
  66. package/dist/jupiter-sdk/instructions/dradexSwap.d.ts +35 -0
  67. package/dist/jupiter-sdk/instructions/dradexSwap.d.ts.map +1 -0
  68. package/dist/jupiter-sdk/instructions/dradexSwap.js +121 -0
  69. package/dist/jupiter-sdk/instructions/exactOutRoute.d.ts +42 -0
  70. package/dist/jupiter-sdk/instructions/exactOutRoute.d.ts.map +1 -0
  71. package/dist/jupiter-sdk/instructions/exactOutRoute.js +109 -0
  72. package/dist/jupiter-sdk/instructions/goosefxSwap.d.ts +33 -0
  73. package/dist/jupiter-sdk/instructions/goosefxSwap.d.ts.map +1 -0
  74. package/dist/jupiter-sdk/instructions/goosefxSwap.js +115 -0
  75. package/dist/jupiter-sdk/instructions/goosefxV2Swap.d.ts +38 -0
  76. package/dist/jupiter-sdk/instructions/goosefxV2Swap.d.ts.map +1 -0
  77. package/dist/jupiter-sdk/instructions/goosefxV2Swap.js +140 -0
  78. package/dist/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.d.ts +29 -0
  79. package/dist/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.d.ts.map +1 -0
  80. package/dist/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.js +91 -0
  81. package/dist/jupiter-sdk/instructions/index.d.ts +72 -0
  82. package/dist/jupiter-sdk/instructions/index.d.ts.map +1 -0
  83. package/dist/jupiter-sdk/instructions/index.js +87 -0
  84. package/dist/jupiter-sdk/instructions/invariantSwap.d.ts +29 -0
  85. package/dist/jupiter-sdk/instructions/invariantSwap.d.ts.map +1 -0
  86. package/dist/jupiter-sdk/instructions/invariantSwap.js +95 -0
  87. package/dist/jupiter-sdk/instructions/lifinitySwap.d.ts +32 -0
  88. package/dist/jupiter-sdk/instructions/lifinitySwap.d.ts.map +1 -0
  89. package/dist/jupiter-sdk/instructions/lifinitySwap.js +113 -0
  90. package/dist/jupiter-sdk/instructions/lifinityV2Swap.d.ts +32 -0
  91. package/dist/jupiter-sdk/instructions/lifinityV2Swap.d.ts.map +1 -0
  92. package/dist/jupiter-sdk/instructions/lifinityV2Swap.js +113 -0
  93. package/dist/jupiter-sdk/instructions/marcoPoloSwap.d.ts +36 -0
  94. package/dist/jupiter-sdk/instructions/marcoPoloSwap.d.ts.map +1 -0
  95. package/dist/jupiter-sdk/instructions/marcoPoloSwap.js +137 -0
  96. package/dist/jupiter-sdk/instructions/marinadeDeposit.d.ts +36 -0
  97. package/dist/jupiter-sdk/instructions/marinadeDeposit.d.ts.map +1 -0
  98. package/dist/jupiter-sdk/instructions/marinadeDeposit.js +144 -0
  99. package/dist/jupiter-sdk/instructions/marinadeUnstake.d.ts +30 -0
  100. package/dist/jupiter-sdk/instructions/marinadeUnstake.d.ts.map +1 -0
  101. package/dist/jupiter-sdk/instructions/marinadeUnstake.js +105 -0
  102. package/dist/jupiter-sdk/instructions/mercurialSwap.d.ts +25 -0
  103. package/dist/jupiter-sdk/instructions/mercurialSwap.d.ts.map +1 -0
  104. package/dist/jupiter-sdk/instructions/mercurialSwap.js +76 -0
  105. package/dist/jupiter-sdk/instructions/meteoraDlmmSwap.d.ts +34 -0
  106. package/dist/jupiter-sdk/instructions/meteoraDlmmSwap.d.ts.map +1 -0
  107. package/dist/jupiter-sdk/instructions/meteoraDlmmSwap.js +119 -0
  108. package/dist/jupiter-sdk/instructions/meteoraSwap.d.ts +34 -0
  109. package/dist/jupiter-sdk/instructions/meteoraSwap.d.ts.map +1 -0
  110. package/dist/jupiter-sdk/instructions/meteoraSwap.js +120 -0
  111. package/dist/jupiter-sdk/instructions/moonshotWrappedBuy.d.ts +33 -0
  112. package/dist/jupiter-sdk/instructions/moonshotWrappedBuy.d.ts.map +1 -0
  113. package/dist/jupiter-sdk/instructions/moonshotWrappedBuy.js +119 -0
  114. package/dist/jupiter-sdk/instructions/moonshotWrappedSell.d.ts +31 -0
  115. package/dist/jupiter-sdk/instructions/moonshotWrappedSell.d.ts.map +1 -0
  116. package/dist/jupiter-sdk/instructions/moonshotWrappedSell.js +106 -0
  117. package/dist/jupiter-sdk/instructions/obricSwap.d.ts +31 -0
  118. package/dist/jupiter-sdk/instructions/obricSwap.d.ts.map +1 -0
  119. package/dist/jupiter-sdk/instructions/obricSwap.js +106 -0
  120. package/dist/jupiter-sdk/instructions/oneIntroSwap.d.ts +30 -0
  121. package/dist/jupiter-sdk/instructions/oneIntroSwap.d.ts.map +1 -0
  122. package/dist/jupiter-sdk/instructions/oneIntroSwap.js +100 -0
  123. package/dist/jupiter-sdk/instructions/openBookV2Swap.d.ts +35 -0
  124. package/dist/jupiter-sdk/instructions/openBookV2Swap.d.ts.map +1 -0
  125. package/dist/jupiter-sdk/instructions/openBookV2Swap.js +125 -0
  126. package/dist/jupiter-sdk/instructions/perpsAddLiquidity.d.ts +32 -0
  127. package/dist/jupiter-sdk/instructions/perpsAddLiquidity.d.ts.map +1 -0
  128. package/dist/jupiter-sdk/instructions/perpsAddLiquidity.js +110 -0
  129. package/dist/jupiter-sdk/instructions/perpsRemoveLiquidity.d.ts +32 -0
  130. package/dist/jupiter-sdk/instructions/perpsRemoveLiquidity.d.ts.map +1 -0
  131. package/dist/jupiter-sdk/instructions/perpsRemoveLiquidity.js +110 -0
  132. package/dist/jupiter-sdk/instructions/perpsSwap.d.ts +34 -0
  133. package/dist/jupiter-sdk/instructions/perpsSwap.d.ts.map +1 -0
  134. package/dist/jupiter-sdk/instructions/perpsSwap.js +120 -0
  135. package/dist/jupiter-sdk/instructions/perpsV2AddLiquidity.d.ts +33 -0
  136. package/dist/jupiter-sdk/instructions/perpsV2AddLiquidity.d.ts.map +1 -0
  137. package/dist/jupiter-sdk/instructions/perpsV2AddLiquidity.js +115 -0
  138. package/dist/jupiter-sdk/instructions/perpsV2RemoveLiquidity.d.ts +33 -0
  139. package/dist/jupiter-sdk/instructions/perpsV2RemoveLiquidity.d.ts.map +1 -0
  140. package/dist/jupiter-sdk/instructions/perpsV2RemoveLiquidity.js +112 -0
  141. package/dist/jupiter-sdk/instructions/perpsV2Swap.d.ts +36 -0
  142. package/dist/jupiter-sdk/instructions/perpsV2Swap.d.ts.map +1 -0
  143. package/dist/jupiter-sdk/instructions/perpsV2Swap.js +130 -0
  144. package/dist/jupiter-sdk/instructions/phoenixSwap.d.ts +27 -0
  145. package/dist/jupiter-sdk/instructions/phoenixSwap.d.ts.map +1 -0
  146. package/dist/jupiter-sdk/instructions/phoenixSwap.js +89 -0
  147. package/dist/jupiter-sdk/instructions/pumpdotfunWrappedBuy.d.ts +34 -0
  148. package/dist/jupiter-sdk/instructions/pumpdotfunWrappedBuy.d.ts.map +1 -0
  149. package/dist/jupiter-sdk/instructions/pumpdotfunWrappedBuy.js +123 -0
  150. package/dist/jupiter-sdk/instructions/pumpdotfunWrappedSell.d.ts +32 -0
  151. package/dist/jupiter-sdk/instructions/pumpdotfunWrappedSell.d.ts.map +1 -0
  152. package/dist/jupiter-sdk/instructions/pumpdotfunWrappedSell.js +107 -0
  153. package/dist/jupiter-sdk/instructions/raydiumClmmSwap.d.ts +29 -0
  154. package/dist/jupiter-sdk/instructions/raydiumClmmSwap.d.ts.map +1 -0
  155. package/dist/jupiter-sdk/instructions/raydiumClmmSwap.js +102 -0
  156. package/dist/jupiter-sdk/instructions/raydiumClmmSwapV2.d.ts +32 -0
  157. package/dist/jupiter-sdk/instructions/raydiumClmmSwapV2.d.ts.map +1 -0
  158. package/dist/jupiter-sdk/instructions/raydiumClmmSwapV2.js +117 -0
  159. package/dist/jupiter-sdk/instructions/raydiumCpSwap.d.ts +32 -0
  160. package/dist/jupiter-sdk/instructions/raydiumCpSwap.d.ts.map +1 -0
  161. package/dist/jupiter-sdk/instructions/raydiumCpSwap.js +116 -0
  162. package/dist/jupiter-sdk/instructions/raydiumSwap.d.ts +36 -0
  163. package/dist/jupiter-sdk/instructions/raydiumSwap.d.ts.map +1 -0
  164. package/dist/jupiter-sdk/instructions/raydiumSwap.js +134 -0
  165. package/dist/jupiter-sdk/instructions/route.d.ts +40 -0
  166. package/dist/jupiter-sdk/instructions/route.d.ts.map +1 -0
  167. package/dist/jupiter-sdk/instructions/route.js +99 -0
  168. package/dist/jupiter-sdk/instructions/routeWithTokenLedger.d.ts +39 -0
  169. package/dist/jupiter-sdk/instructions/routeWithTokenLedger.d.ts.map +1 -0
  170. package/dist/jupiter-sdk/instructions/routeWithTokenLedger.js +103 -0
  171. package/dist/jupiter-sdk/instructions/saberAddDecimals.d.ts +26 -0
  172. package/dist/jupiter-sdk/instructions/saberAddDecimals.d.ts.map +1 -0
  173. package/dist/jupiter-sdk/instructions/saberAddDecimals.js +81 -0
  174. package/dist/jupiter-sdk/instructions/saberSwap.d.ts +28 -0
  175. package/dist/jupiter-sdk/instructions/saberSwap.d.ts.map +1 -0
  176. package/dist/jupiter-sdk/instructions/saberSwap.js +87 -0
  177. package/dist/jupiter-sdk/instructions/senchaSwap.d.ts +28 -0
  178. package/dist/jupiter-sdk/instructions/senchaSwap.d.ts.map +1 -0
  179. package/dist/jupiter-sdk/instructions/senchaSwap.js +90 -0
  180. package/dist/jupiter-sdk/instructions/serumSwap.d.ts +34 -0
  181. package/dist/jupiter-sdk/instructions/serumSwap.d.ts.map +1 -0
  182. package/dist/jupiter-sdk/instructions/serumSwap.js +122 -0
  183. package/dist/jupiter-sdk/instructions/setTokenLedger.d.ts +20 -0
  184. package/dist/jupiter-sdk/instructions/setTokenLedger.d.ts.map +1 -0
  185. package/dist/jupiter-sdk/instructions/setTokenLedger.js +46 -0
  186. package/dist/jupiter-sdk/instructions/sharedAccountsExactOutRoute.d.ts +46 -0
  187. package/dist/jupiter-sdk/instructions/sharedAccountsExactOutRoute.d.ts.map +1 -0
  188. package/dist/jupiter-sdk/instructions/sharedAccountsExactOutRoute.js +120 -0
  189. package/dist/jupiter-sdk/instructions/sharedAccountsRoute.d.ts +46 -0
  190. package/dist/jupiter-sdk/instructions/sharedAccountsRoute.d.ts.map +1 -0
  191. package/dist/jupiter-sdk/instructions/sharedAccountsRoute.js +120 -0
  192. package/dist/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.d.ts +45 -0
  193. package/dist/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.d.ts.map +1 -0
  194. package/dist/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.js +126 -0
  195. package/dist/jupiter-sdk/instructions/stabbleStableSwap.d.ts +31 -0
  196. package/dist/jupiter-sdk/instructions/stabbleStableSwap.d.ts.map +1 -0
  197. package/dist/jupiter-sdk/instructions/stabbleStableSwap.js +101 -0
  198. package/dist/jupiter-sdk/instructions/stabbleWeightedSwap.d.ts +31 -0
  199. package/dist/jupiter-sdk/instructions/stabbleWeightedSwap.d.ts.map +1 -0
  200. package/dist/jupiter-sdk/instructions/stabbleWeightedSwap.js +101 -0
  201. package/dist/jupiter-sdk/instructions/stepSwap.d.ts +29 -0
  202. package/dist/jupiter-sdk/instructions/stepSwap.d.ts.map +1 -0
  203. package/dist/jupiter-sdk/instructions/stepSwap.js +98 -0
  204. package/dist/jupiter-sdk/instructions/symmetrySwap.d.ts +32 -0
  205. package/dist/jupiter-sdk/instructions/symmetrySwap.d.ts.map +1 -0
  206. package/dist/jupiter-sdk/instructions/symmetrySwap.js +114 -0
  207. package/dist/jupiter-sdk/instructions/tokenSwap.d.ts +29 -0
  208. package/dist/jupiter-sdk/instructions/tokenSwap.d.ts.map +1 -0
  209. package/dist/jupiter-sdk/instructions/tokenSwap.js +98 -0
  210. package/dist/jupiter-sdk/instructions/tokenSwapV2.d.ts +33 -0
  211. package/dist/jupiter-sdk/instructions/tokenSwapV2.d.ts.map +1 -0
  212. package/dist/jupiter-sdk/instructions/tokenSwapV2.js +114 -0
  213. package/dist/jupiter-sdk/instructions/whirlpoolSwap.d.ts +31 -0
  214. package/dist/jupiter-sdk/instructions/whirlpoolSwap.d.ts.map +1 -0
  215. package/dist/jupiter-sdk/instructions/whirlpoolSwap.js +104 -0
  216. package/dist/jupiter-sdk/instructions/whirlpoolSwapV2.d.ts +35 -0
  217. package/dist/jupiter-sdk/instructions/whirlpoolSwapV2.d.ts.map +1 -0
  218. package/dist/jupiter-sdk/instructions/whirlpoolSwapV2.js +119 -0
  219. package/dist/jupiter-sdk/programs/index.d.ts +9 -0
  220. package/dist/jupiter-sdk/programs/index.d.ts.map +1 -0
  221. package/dist/jupiter-sdk/programs/index.js +24 -0
  222. package/dist/jupiter-sdk/programs/jupiter.d.ts +13 -0
  223. package/dist/jupiter-sdk/programs/jupiter.d.ts.map +1 -0
  224. package/dist/jupiter-sdk/programs/jupiter.js +36 -0
  225. package/dist/jupiter-sdk/shared/index.d.ts +54 -0
  226. package/dist/jupiter-sdk/shared/index.d.ts.map +1 -0
  227. package/dist/jupiter-sdk/shared/index.js +69 -0
  228. package/dist/jupiter-sdk/types/accountsType.d.ts +15 -0
  229. package/dist/jupiter-sdk/types/accountsType.d.ts.map +1 -0
  230. package/dist/jupiter-sdk/types/accountsType.js +22 -0
  231. package/dist/jupiter-sdk/types/amountWithSlippage.d.ts +18 -0
  232. package/dist/jupiter-sdk/types/amountWithSlippage.d.ts.map +1 -0
  233. package/dist/jupiter-sdk/types/amountWithSlippage.js +17 -0
  234. package/dist/jupiter-sdk/types/index.d.ts +15 -0
  235. package/dist/jupiter-sdk/types/index.d.ts.map +1 -0
  236. package/dist/jupiter-sdk/types/index.js +30 -0
  237. package/dist/jupiter-sdk/types/remainingAccountsInfo.d.ts +17 -0
  238. package/dist/jupiter-sdk/types/remainingAccountsInfo.d.ts.map +1 -0
  239. package/dist/jupiter-sdk/types/remainingAccountsInfo.js +15 -0
  240. package/dist/jupiter-sdk/types/remainingAccountsSlice.d.ts +19 -0
  241. package/dist/jupiter-sdk/types/remainingAccountsSlice.d.ts.map +1 -0
  242. package/dist/jupiter-sdk/types/remainingAccountsSlice.js +18 -0
  243. package/dist/jupiter-sdk/types/routePlanStep.d.ts +23 -0
  244. package/dist/jupiter-sdk/types/routePlanStep.d.ts.map +1 -0
  245. package/dist/jupiter-sdk/types/routePlanStep.js +20 -0
  246. package/dist/jupiter-sdk/types/side.d.ts +15 -0
  247. package/dist/jupiter-sdk/types/side.d.ts.map +1 -0
  248. package/dist/jupiter-sdk/types/side.js +20 -0
  249. package/dist/jupiter-sdk/types/swap.d.ts +372 -0
  250. package/dist/jupiter-sdk/types/swap.d.ts.map +1 -0
  251. package/dist/jupiter-sdk/types/swap.js +188 -0
  252. package/dist/transactions/transactionUtils.d.ts +5 -0
  253. package/dist/transactions/transactionUtils.d.ts.map +1 -1
  254. package/dist/transactions/transactionUtils.js +46 -4
  255. package/dist/transactions/transactionsManager.d.ts +2 -1
  256. package/dist/transactions/transactionsManager.d.ts.map +1 -1
  257. package/dist/transactions/transactionsManager.js +12 -20
  258. package/package.json +1 -1
  259. package/src/constants/generalAccounts.ts +0 -3
  260. package/src/constants/solautoConstants.ts +1 -2
  261. package/src/generated/errors/solauto.ts +30 -88
  262. package/src/jupiter-sdk/accounts/index.ts +9 -0
  263. package/src/jupiter-sdk/accounts/tokenLedger.ts +146 -0
  264. package/src/jupiter-sdk/errors/index.ts +9 -0
  265. package/src/jupiter-sdk/errors/jupiter.ts +282 -0
  266. package/src/jupiter-sdk/index.ts +14 -0
  267. package/src/jupiter-sdk/instructions/aldrinSwap.ts +165 -0
  268. package/src/jupiter-sdk/instructions/aldrinV2Swap.ts +171 -0
  269. package/src/jupiter-sdk/instructions/balansolSwap.ts +211 -0
  270. package/src/jupiter-sdk/instructions/claim.ts +128 -0
  271. package/src/jupiter-sdk/instructions/claimToken.ts +171 -0
  272. package/src/jupiter-sdk/instructions/cloneSwap.ts +195 -0
  273. package/src/jupiter-sdk/instructions/createOpenOrders.ts +148 -0
  274. package/src/jupiter-sdk/instructions/createProgramOpenOrders.ts +170 -0
  275. package/src/jupiter-sdk/instructions/createTokenAccount.ts +152 -0
  276. package/src/jupiter-sdk/instructions/createTokenLedger.ts +128 -0
  277. package/src/jupiter-sdk/instructions/cremaSwap.ts +193 -0
  278. package/src/jupiter-sdk/instructions/cropperSwap.ts +174 -0
  279. package/src/jupiter-sdk/instructions/cykuraSwap.ts +169 -0
  280. package/src/jupiter-sdk/instructions/deltafiSwap.ts +181 -0
  281. package/src/jupiter-sdk/instructions/dradexSwap.ts +200 -0
  282. package/src/jupiter-sdk/instructions/exactOutRoute.ts +208 -0
  283. package/src/jupiter-sdk/instructions/goosefxSwap.ts +189 -0
  284. package/src/jupiter-sdk/instructions/goosefxV2Swap.ts +222 -0
  285. package/src/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.ts +169 -0
  286. package/src/jupiter-sdk/instructions/index.ts +72 -0
  287. package/src/jupiter-sdk/instructions/invariantSwap.ts +168 -0
  288. package/src/jupiter-sdk/instructions/lifinitySwap.ts +186 -0
  289. package/src/jupiter-sdk/instructions/lifinityV2Swap.ts +189 -0
  290. package/src/jupiter-sdk/instructions/marcoPoloSwap.ts +223 -0
  291. package/src/jupiter-sdk/instructions/marinadeDeposit.ts +230 -0
  292. package/src/jupiter-sdk/instructions/marinadeUnstake.ts +182 -0
  293. package/src/jupiter-sdk/instructions/mercurialSwap.ts +145 -0
  294. package/src/jupiter-sdk/instructions/meteoraDlmmSwap.ts +193 -0
  295. package/src/jupiter-sdk/instructions/meteoraSwap.ts +195 -0
  296. package/src/jupiter-sdk/instructions/moonshotWrappedBuy.ts +201 -0
  297. package/src/jupiter-sdk/instructions/moonshotWrappedSell.ts +186 -0
  298. package/src/jupiter-sdk/instructions/obricSwap.ts +178 -0
  299. package/src/jupiter-sdk/instructions/oneIntroSwap.ts +171 -0
  300. package/src/jupiter-sdk/instructions/openBookV2Swap.ts +207 -0
  301. package/src/jupiter-sdk/instructions/perpsAddLiquidity.ts +186 -0
  302. package/src/jupiter-sdk/instructions/perpsRemoveLiquidity.ts +188 -0
  303. package/src/jupiter-sdk/instructions/perpsSwap.ts +195 -0
  304. package/src/jupiter-sdk/instructions/perpsV2AddLiquidity.ts +194 -0
  305. package/src/jupiter-sdk/instructions/perpsV2RemoveLiquidity.ts +193 -0
  306. package/src/jupiter-sdk/instructions/perpsV2Swap.ts +207 -0
  307. package/src/jupiter-sdk/instructions/phoenixSwap.ts +157 -0
  308. package/src/jupiter-sdk/instructions/pumpdotfunWrappedBuy.ts +209 -0
  309. package/src/jupiter-sdk/instructions/pumpdotfunWrappedSell.ts +190 -0
  310. package/src/jupiter-sdk/instructions/raydiumClmmSwap.ts +175 -0
  311. package/src/jupiter-sdk/instructions/raydiumClmmSwapV2.ts +193 -0
  312. package/src/jupiter-sdk/instructions/raydiumCpSwap.ts +189 -0
  313. package/src/jupiter-sdk/instructions/raydiumSwap.ts +211 -0
  314. package/src/jupiter-sdk/instructions/route.ts +189 -0
  315. package/src/jupiter-sdk/instructions/routeWithTokenLedger.ts +201 -0
  316. package/src/jupiter-sdk/instructions/saberAddDecimals.ts +151 -0
  317. package/src/jupiter-sdk/instructions/saberSwap.ts +156 -0
  318. package/src/jupiter-sdk/instructions/senchaSwap.ts +159 -0
  319. package/src/jupiter-sdk/instructions/serumSwap.ts +200 -0
  320. package/src/jupiter-sdk/instructions/setTokenLedger.ts +106 -0
  321. package/src/jupiter-sdk/instructions/sharedAccountsExactOutRoute.ts +226 -0
  322. package/src/jupiter-sdk/instructions/sharedAccountsRoute.ts +225 -0
  323. package/src/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.ts +231 -0
  324. package/src/jupiter-sdk/instructions/stabbleStableSwap.ts +176 -0
  325. package/src/jupiter-sdk/instructions/stabbleWeightedSwap.ts +178 -0
  326. package/src/jupiter-sdk/instructions/stepSwap.ts +168 -0
  327. package/src/jupiter-sdk/instructions/symmetrySwap.ts +187 -0
  328. package/src/jupiter-sdk/instructions/tokenSwap.ts +168 -0
  329. package/src/jupiter-sdk/instructions/tokenSwapV2.ts +185 -0
  330. package/src/jupiter-sdk/instructions/whirlpoolSwap.ts +179 -0
  331. package/src/jupiter-sdk/instructions/whirlpoolSwapV2.ts +194 -0
  332. package/src/jupiter-sdk/programs/index.ts +9 -0
  333. package/src/jupiter-sdk/programs/jupiter.ts +52 -0
  334. package/src/jupiter-sdk/shared/index.ts +117 -0
  335. package/src/jupiter-sdk/types/accountsType.ts +25 -0
  336. package/src/jupiter-sdk/types/amountWithSlippage.ts +34 -0
  337. package/src/jupiter-sdk/types/index.ts +15 -0
  338. package/src/jupiter-sdk/types/remainingAccountsInfo.ts +34 -0
  339. package/src/jupiter-sdk/types/remainingAccountsSlice.ts +33 -0
  340. package/src/jupiter-sdk/types/routePlanStep.ts +39 -0
  341. package/src/jupiter-sdk/types/side.ts +23 -0
  342. package/src/jupiter-sdk/types/swap.ts +566 -0
  343. package/src/transactions/transactionUtils.ts +72 -5
  344. package/src/transactions/transactionsManager.ts +26 -29
@@ -5,6 +5,7 @@ exports.getTransactionChores = getTransactionChores;
5
5
  exports.requiresRefreshBeforeRebalance = requiresRefreshBeforeRebalance;
6
6
  exports.buildSolautoRebalanceTransaction = buildSolautoRebalanceTransaction;
7
7
  exports.convertReferralFeesToDestination = convertReferralFeesToDestination;
8
+ exports.getErrorInfo = getErrorInfo;
8
9
  const umi_1 = require("@metaplex-foundation/umi");
9
10
  const umi_web3js_adapters_1 = require("@metaplex-foundation/umi-web3js-adapters");
10
11
  const web3_js_1 = require("@solana/web3.js");
@@ -18,6 +19,7 @@ const numberUtils_1 = require("../utils/numberUtils");
18
19
  const generalUtils_2 = require("../utils/solauto/generalUtils");
19
20
  const accountUtils_1 = require("../utils/accountUtils");
20
21
  const marginfi_sdk_1 = require("../marginfi-sdk");
22
+ const jupiter_sdk_1 = require("../jupiter-sdk");
21
23
  function getWSolUsage(client, solautoActions, initiatingDcaIn, cancellingDcaIn) {
22
24
  const supplyIsWsol = client.supplyMint.equals(spl_token_1.NATIVE_MINT);
23
25
  const debtIsWsol = client.debtMint.equals(spl_token_1.NATIVE_MINT);
@@ -329,14 +331,18 @@ function requiresRefreshBeforeRebalance(client) {
329
331
  return true;
330
332
  }
331
333
  else if (client.solautoPositionData && !client.selfManaged) {
332
- if (client.livePositionUpdates.supplyAdjustment > BigInt(0) || client.livePositionUpdates.debtAdjustment > BigInt(0)) {
334
+ if (client.livePositionUpdates.supplyAdjustment > BigInt(0) ||
335
+ client.livePositionUpdates.debtAdjustment > BigInt(0)) {
333
336
  return false;
334
337
  }
335
338
  const oldSupply = client.solautoPositionData.state.supply.amountUsed.baseUnit;
336
339
  const oldDebt = client.solautoPositionData.state.debt.amountUsed.baseUnit;
337
- const supplyDiff = (client.solautoPositionState?.supply.amountUsed.baseUnit ?? BigInt(0)) - oldSupply;
338
- const debtDiff = (client.solautoPositionState?.debt.amountUsed.baseUnit ?? BigInt(0)) - oldDebt;
339
- if (Math.abs(Number(supplyDiff)) / Number(oldSupply) >= 0.01 || Math.abs(Number(debtDiff)) / Number(oldDebt) >= 0.01) {
340
+ const supplyDiff = (client.solautoPositionState?.supply.amountUsed.baseUnit ?? BigInt(0)) -
341
+ oldSupply;
342
+ const debtDiff = (client.solautoPositionState?.debt.amountUsed.baseUnit ?? BigInt(0)) -
343
+ oldDebt;
344
+ if (Math.abs(Number(supplyDiff)) / Number(oldSupply) >= 0.01 ||
345
+ Math.abs(Number(debtDiff)) / Number(oldDebt) >= 0.01) {
340
346
  return true;
341
347
  }
342
348
  }
@@ -421,3 +427,39 @@ async function convertReferralFeesToDestination(umi, referralState, tokenAccount
421
427
  .add(swapIx);
422
428
  return [tx, lookupTableAddresses];
423
429
  }
430
+ function getErrorInfo(tx, error) {
431
+ let canBeIgnored = false;
432
+ let errorName = undefined;
433
+ let errorInfo = undefined;
434
+ try {
435
+ let programError = null;
436
+ if (typeof error === "object" && error["InstructionError"]) {
437
+ const err = error["InstructionError"];
438
+ const errIx = tx.getInstructions()[Math.max(0, err[0] - 2)];
439
+ const errCode = err[1]["Custom"];
440
+ if (errIx.programId === generated_1.SOLAUTO_PROGRAM_ID) {
441
+ programError = (0, generated_1.getSolautoErrorFromCode)(errCode, (0, generated_1.createSolautoProgram)());
442
+ if (programError?.name ===
443
+ new generated_1.InvalidRebalanceConditionError((0, generated_1.createSolautoProgram)()).name) {
444
+ canBeIgnored = true;
445
+ }
446
+ }
447
+ else if (errIx.programId === marginfi_sdk_1.MARGINFI_PROGRAM_ID) {
448
+ programError = (0, marginfi_sdk_1.getMarginfiErrorFromName)(errCode, (0, marginfi_sdk_1.createMarginfiProgram)());
449
+ }
450
+ else if (errIx.programId === jupiter_sdk_1.JUPITER_PROGRAM_ID) {
451
+ programError = (0, jupiter_sdk_1.getJupiterErrorFromName)(errCode, (0, jupiter_sdk_1.createJupiterProgram)());
452
+ }
453
+ }
454
+ if (programError) {
455
+ errorName = programError?.name;
456
+ errorName = programError?.message;
457
+ }
458
+ }
459
+ catch { }
460
+ return {
461
+ errorName: errorName ?? "Unknown error",
462
+ errorInfo: errorInfo ?? "Unknown error",
463
+ canBeIgnored,
464
+ };
465
+ }
@@ -28,10 +28,11 @@ export declare enum TransactionStatus {
28
28
  }
29
29
  export type TransactionManagerStatuses = {
30
30
  name: string;
31
+ attemptNum: number;
31
32
  status: TransactionStatus;
33
+ moreInfo?: string;
32
34
  simulationSuccessful?: boolean;
33
35
  txSig?: string;
34
- attemptNum: number;
35
36
  }[];
36
37
  export declare class TransactionsManager {
37
38
  private txHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"transactionsManager.d.ts","sourceRoot":"","sources":["../../src/transactions/transactionsManager.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,kBAAkB,EAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAKzD,OAAO,EACL,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAa,MAAM,YAAY,CAAC;AA0C7D,qBAAa,eAAe;IAKjB,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CACV;QAAE,EAAE,EAAE,kBAAkB,CAAC;QAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CACxE;IACM,IAAI,CAAC,EAAE,MAAM;IATtB,oBAAoB,EAAG,MAAM,EAAE,CAAC;IAChC,EAAE,CAAC,EAAE,kBAAkB,CAAC;gBAGf,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CACV;QAAE,EAAE,EAAE,kBAAkB,CAAC;QAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CACxE,EACM,IAAI,CAAC,EAAE,MAAM,YAAA;IAGhB,UAAU;IAIV,OAAO,CAAC,UAAU,EAAE,MAAM;IAMhC,cAAc,IAAI,MAAM,EAAE;CAY3B;AAgFD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB,EAAE,CAAC;AAEJ,qBAAa,mBAAmB;IAK5B,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,cAAc,CAAC;IACvB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,YAAY,CAAC;IACrB,OAAO,CAAC,aAAa,CAAC;IACtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAVpB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,YAAY,CAAe;gBAGzB,SAAS,EAAE,aAAa,GAAG,oBAAoB,EAC/C,cAAc,CAAC,GAAE,CAAC,QAAQ,EAAE,0BAA0B,KAAK,IAAI,aAAA,EAC/D,MAAM,CAAC,EAAE,kBAAkB,YAAA,EAC3B,YAAY,CAAC,EAAE,OAAO,YAAA,EACtB,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,GAAE,MAAU,EACnB,UAAU,GAAE,MAAY;YAQpB,uBAAuB;IAwCrC,OAAO,CAAC,YAAY;YAwCN,aAAa;IAoBd,UAAU,CACrB,YAAY,EAAE,eAAe,EAAE,EAC/B,eAAe,CAAC,EAAE,kBAAkB,GACnC,OAAO,CAAC,0BAA0B,CAAC;IAyEzB,IAAI,CACf,KAAK,EAAE,eAAe,EAAE,EACxB,eAAe,CAAC,EAAE,kBAAkB,EACpC,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,0BAA0B,CAAC;YA0GxB,eAAe;CA2D9B"}
1
+ {"version":3,"file":"transactionsManager.d.ts","sourceRoot":"","sources":["../../src/transactions/transactionsManager.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,kBAAkB,EAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAKzD,OAAO,EACL,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAa,MAAM,YAAY,CAAC;AA0C7D,qBAAa,eAAe;IAKjB,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CACV;QAAE,EAAE,EAAE,kBAAkB,CAAC;QAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CACxE;IACM,IAAI,CAAC,EAAE,MAAM;IATtB,oBAAoB,EAAG,MAAM,EAAE,CAAC;IAChC,EAAE,CAAC,EAAE,kBAAkB,CAAC;gBAGf,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CACV;QAAE,EAAE,EAAE,kBAAkB,CAAC;QAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CACxE,EACM,IAAI,CAAC,EAAE,MAAM,YAAA;IAGhB,UAAU;IAIV,OAAO,CAAC,UAAU,EAAE,MAAM;IAMhC,cAAc,IAAI,MAAM,EAAE;CAY3B;AAgFD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EAAE,CAAC;AAEJ,qBAAa,mBAAmB;IAK5B,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,cAAc,CAAC;IACvB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,YAAY,CAAC;IACrB,OAAO,CAAC,aAAa,CAAC;IACtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAVpB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,YAAY,CAAe;gBAGzB,SAAS,EAAE,aAAa,GAAG,oBAAoB,EAC/C,cAAc,CAAC,GAAE,CAAC,QAAQ,EAAE,0BAA0B,KAAK,IAAI,aAAA,EAC/D,MAAM,CAAC,EAAE,kBAAkB,YAAA,EAC3B,YAAY,CAAC,EAAE,OAAO,YAAA,EACtB,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,GAAE,MAAU,EACnB,UAAU,GAAE,MAAY;YAQpB,uBAAuB;IAwCrC,OAAO,CAAC,YAAY;YA8CN,aAAa;IAoBd,UAAU,CACrB,YAAY,EAAE,eAAe,EAAE,EAC/B,eAAe,CAAC,EAAE,kBAAkB,GACnC,OAAO,CAAC,0BAA0B,CAAC;IAyEzB,IAAI,CACf,KAAK,EAAE,eAAe,EAAE,EACxB,eAAe,CAAC,EAAE,kBAAkB,EACpC,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,0BAA0B,CAAC;YA0GxB,eAAe;CAiD9B"}
@@ -9,7 +9,6 @@ const umi_1 = require("@metaplex-foundation/umi");
9
9
  const solanaUtils_1 = require("../utils/solanaUtils");
10
10
  const generalUtils_1 = require("../utils/generalUtils");
11
11
  const transactionUtils_1 = require("./transactionUtils");
12
- const generated_1 = require("../generated");
13
12
  // import { sendJitoBundledTransactions } from "../utils/jitoUtils";
14
13
  class LookupTables {
15
14
  constructor(defaultLuts, umi) {
@@ -162,7 +161,7 @@ class TransactionsManager {
162
161
  }
163
162
  return transactionSets;
164
163
  }
165
- updateStatus(name, status, attemptNum, txSig, simulationSuccessful) {
164
+ updateStatus(name, status, attemptNum, txSig, simulationSuccessful, moreInfo) {
166
165
  if (!this.statuses.filter((x) => x.name === name)) {
167
166
  this.statuses.push({
168
167
  name,
@@ -170,6 +169,7 @@ class TransactionsManager {
170
169
  txSig,
171
170
  attemptNum,
172
171
  simulationSuccessful,
172
+ moreInfo,
173
173
  });
174
174
  }
175
175
  else {
@@ -180,6 +180,9 @@ class TransactionsManager {
180
180
  if (simulationSuccessful) {
181
181
  this.statuses[idx].simulationSuccessful = simulationSuccessful;
182
182
  }
183
+ if (moreInfo) {
184
+ this.statuses[idx].moreInfo = moreInfo;
185
+ }
183
186
  }
184
187
  else {
185
188
  this.statuses.push({
@@ -188,6 +191,7 @@ class TransactionsManager {
188
191
  txSig,
189
192
  attemptNum,
190
193
  simulationSuccessful,
194
+ moreInfo,
191
195
  });
192
196
  }
193
197
  }
@@ -332,25 +336,13 @@ class TransactionsManager {
332
336
  this.updateStatus(txName, TransactionStatus.Successful, attemptNum, txSig ? bs58_1.default.encode(txSig) : undefined);
333
337
  }
334
338
  catch (e) {
335
- try {
336
- if (typeof e === "object" && e["InstructionError"]) {
337
- const err = e["InstructionError"];
338
- const errIx = err[0];
339
- const errCode = err[1]["Custom"];
340
- const solautoProgram = this.txHandler.umi.programs.get(generated_1.SOLAUTO_PROGRAM_ID);
341
- const invalidRebalanceError = new generated_1.InvalidRebalanceConditionError(solautoProgram);
342
- if (tx.getInstructions()[Math.max(0, errIx - 2)].programId ===
343
- generated_1.SOLAUTO_PROGRAM_ID &&
344
- solautoProgram.getErrorFromCode(errCode)?.name ===
345
- invalidRebalanceError.name) {
346
- this.updateStatus(txName, TransactionStatus.Skipped, attemptNum);
347
- return;
348
- }
349
- }
339
+ const errorDetails = (0, transactionUtils_1.getErrorInfo)(tx, e);
340
+ this.updateStatus(txName, errorDetails.canBeIgnored
341
+ ? TransactionStatus.Skipped
342
+ : TransactionStatus.Failed, attemptNum, undefined, undefined, errorDetails.errorInfo);
343
+ if (!errorDetails.canBeIgnored) {
344
+ throw e;
350
345
  }
351
- catch { }
352
- this.updateStatus(txName, TransactionStatus.Failed, attemptNum);
353
- throw e;
354
346
  }
355
347
  }
356
348
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haven-fi/solauto-sdk",
3
- "version": "1.0.176",
3
+ "version": "1.0.177",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "description": "Typescript SDK for the Solauto program on the Solana blockchain",
@@ -1,8 +1,5 @@
1
1
  import { PublicKey } from "@solana/web3.js";
2
2
 
3
3
  export const USD_DECIMALS = 9;
4
-
5
- // TODO
6
4
  export const SOLAUTO_FEES_WALLET = new PublicKey("AprYCPiVeKMCgjQ2ZufwChMzvQ5kFjJo2ekTLSkXsQDm");
7
-
8
5
  export const SOLAUTO_MANAGER = new PublicKey("MNGRcX4nc7quPdzBbNKJ4ScK5EE73JnwJVGxuJXhHCY");
@@ -12,6 +12,7 @@ import {
12
12
  // import { JitoRpcConnection } from "jito-ts";
13
13
  import { SOLAUTO_PROGRAM_ID } from "../generated";
14
14
  import { SOLAUTO_MANAGER } from "./generalAccounts";
15
+ import { JUPITER_PROGRAM_ID } from "../jupiter-sdk";
15
16
 
16
17
  export const BASIS_POINTS = 10000;
17
18
 
@@ -30,8 +31,6 @@ export const PRICES: { [key: string]: { price: number; time: number; } } = {};
30
31
 
31
32
  export const SOLAUTO_LUT = "9D4xwZwDf46n9ft5gQxZzq3rBbdRXsXojKQLZbBdskPY";
32
33
 
33
- export const JUPITER_PROGRAM_ID = "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4";
34
-
35
34
  export const STANDARD_LUT_ACCOUNTS = [
36
35
  PublicKey.default.toString(),
37
36
  SOLAUTO_PROGRAM_ID,
@@ -32,18 +32,14 @@ export class IncorrectAccountsError extends ProgramError {
32
32
  codeToErrorMap.set(0x0, IncorrectAccountsError);
33
33
  nameToErrorMap.set('IncorrectAccounts', IncorrectAccountsError);
34
34
 
35
- /** FailedAccountDeserialization: Failed to deserialize account data, incorrect account was likely given */
35
+ /** FailedAccountDeserialization: Failed to deserialize account data */
36
36
  export class FailedAccountDeserializationError extends ProgramError {
37
37
  override readonly name: string = 'FailedAccountDeserialization';
38
38
 
39
39
  readonly code: number = 0x1; // 1
40
40
 
41
41
  constructor(program: Program, cause?: Error) {
42
- super(
43
- 'Failed to deserialize account data, incorrect account was likely given',
44
- program,
45
- cause
46
- );
42
+ super('Failed to deserialize account data', program, cause);
47
43
  }
48
44
  }
49
45
  codeToErrorMap.set(0x1, FailedAccountDeserializationError);
@@ -52,154 +48,100 @@ nameToErrorMap.set(
52
48
  FailedAccountDeserializationError
53
49
  );
54
50
 
55
- /** InvalidPositionSettings: Invalid position settings given */
51
+ /** InvalidPositionSettings: Invalid position settings provided */
56
52
  export class InvalidPositionSettingsError extends ProgramError {
57
53
  override readonly name: string = 'InvalidPositionSettings';
58
54
 
59
55
  readonly code: number = 0x2; // 2
60
56
 
61
57
  constructor(program: Program, cause?: Error) {
62
- super('Invalid position settings given', program, cause);
58
+ super('Invalid position settings provided', program, cause);
63
59
  }
64
60
  }
65
61
  codeToErrorMap.set(0x2, InvalidPositionSettingsError);
66
62
  nameToErrorMap.set('InvalidPositionSettings', InvalidPositionSettingsError);
67
63
 
68
- /** InvalidDCASettings: Invalid DCA settings given */
64
+ /** InvalidDCASettings: Invalid DCA configuration provided */
69
65
  export class InvalidDCASettingsError extends ProgramError {
70
66
  override readonly name: string = 'InvalidDCASettings';
71
67
 
72
68
  readonly code: number = 0x3; // 3
73
69
 
74
70
  constructor(program: Program, cause?: Error) {
75
- super('Invalid DCA settings given', program, cause);
71
+ super('Invalid DCA configuration provided', program, cause);
76
72
  }
77
73
  }
78
74
  codeToErrorMap.set(0x3, InvalidDCASettingsError);
79
75
  nameToErrorMap.set('InvalidDCASettings', InvalidDCASettingsError);
80
76
 
81
- /** InvalidAutomationData: Invalid automation data given */
77
+ /** InvalidAutomationData: Invalid automation settings provided */
82
78
  export class InvalidAutomationDataError extends ProgramError {
83
79
  override readonly name: string = 'InvalidAutomationData';
84
80
 
85
81
  readonly code: number = 0x4; // 4
86
82
 
87
83
  constructor(program: Program, cause?: Error) {
88
- super('Invalid automation data given', program, cause);
84
+ super('Invalid automation settings provided', program, cause);
89
85
  }
90
86
  }
91
87
  codeToErrorMap.set(0x4, InvalidAutomationDataError);
92
88
  nameToErrorMap.set('InvalidAutomationData', InvalidAutomationDataError);
93
89
 
94
- /** StaleProtocolData: Stale protocol data. Refresh instruction must be invoked before taking a protocol action */
95
- export class StaleProtocolDataError extends ProgramError {
96
- override readonly name: string = 'StaleProtocolData';
97
-
98
- readonly code: number = 0x5; // 5
99
-
100
- constructor(program: Program, cause?: Error) {
101
- super(
102
- 'Stale protocol data. Refresh instruction must be invoked before taking a protocol action',
103
- program,
104
- cause
105
- );
106
- }
107
- }
108
- codeToErrorMap.set(0x5, StaleProtocolDataError);
109
- nameToErrorMap.set('StaleProtocolData', StaleProtocolDataError);
110
-
111
- /** UnableToRebalance: Unable to adjust position to the desired utilization rate */
112
- export class UnableToRebalanceError extends ProgramError {
113
- override readonly name: string = 'UnableToRebalance';
114
-
115
- readonly code: number = 0x6; // 6
116
-
117
- constructor(program: Program, cause?: Error) {
118
- super(
119
- 'Unable to adjust position to the desired utilization rate',
120
- program,
121
- cause
122
- );
123
- }
124
- }
125
- codeToErrorMap.set(0x6, UnableToRebalanceError);
126
- nameToErrorMap.set('UnableToRebalance', UnableToRebalanceError);
127
-
128
- /** ExceededValidUtilizationRate: Desired action brought the utilization rate to an unsafe amount */
129
- export class ExceededValidUtilizationRateError extends ProgramError {
130
- override readonly name: string = 'ExceededValidUtilizationRate';
131
-
132
- readonly code: number = 0x7; // 7
133
-
134
- constructor(program: Program, cause?: Error) {
135
- super(
136
- 'Desired action brought the utilization rate to an unsafe amount',
137
- program,
138
- cause
139
- );
140
- }
141
- }
142
- codeToErrorMap.set(0x7, ExceededValidUtilizationRateError);
143
- nameToErrorMap.set(
144
- 'ExceededValidUtilizationRate',
145
- ExceededValidUtilizationRateError
146
- );
147
-
148
90
  /** InvalidRebalanceCondition: Invalid position condition to rebalance */
149
91
  export class InvalidRebalanceConditionError extends ProgramError {
150
92
  override readonly name: string = 'InvalidRebalanceCondition';
151
93
 
152
- readonly code: number = 0x8; // 8
94
+ readonly code: number = 0x5; // 5
153
95
 
154
96
  constructor(program: Program, cause?: Error) {
155
97
  super('Invalid position condition to rebalance', program, cause);
156
98
  }
157
99
  }
158
- codeToErrorMap.set(0x8, InvalidRebalanceConditionError);
100
+ codeToErrorMap.set(0x5, InvalidRebalanceConditionError);
159
101
  nameToErrorMap.set('InvalidRebalanceCondition', InvalidRebalanceConditionError);
160
102
 
161
103
  /** InstructionIsCPI: Unable to invoke instruction through a CPI */
162
104
  export class InstructionIsCPIError extends ProgramError {
163
105
  override readonly name: string = 'InstructionIsCPI';
164
106
 
165
- readonly code: number = 0x9; // 9
107
+ readonly code: number = 0x6; // 6
166
108
 
167
109
  constructor(program: Program, cause?: Error) {
168
110
  super('Unable to invoke instruction through a CPI', program, cause);
169
111
  }
170
112
  }
171
- codeToErrorMap.set(0x9, InstructionIsCPIError);
113
+ codeToErrorMap.set(0x6, InstructionIsCPIError);
172
114
  nameToErrorMap.set('InstructionIsCPI', InstructionIsCPIError);
173
115
 
174
- /** RebalanceAbuse: Too many rebalance instruction invocations in the same transaction */
175
- export class RebalanceAbuseError extends ProgramError {
176
- override readonly name: string = 'RebalanceAbuse';
116
+ /** IncorrectInstructions: Incorrect set of instructions in the transaction */
117
+ export class IncorrectInstructionsError extends ProgramError {
118
+ override readonly name: string = 'IncorrectInstructions';
177
119
 
178
- readonly code: number = 0xa; // 10
120
+ readonly code: number = 0x7; // 7
179
121
 
180
122
  constructor(program: Program, cause?: Error) {
181
- super(
182
- 'Too many rebalance instruction invocations in the same transaction',
183
- program,
184
- cause
185
- );
123
+ super('Incorrect set of instructions in the transaction', program, cause);
186
124
  }
187
125
  }
188
- codeToErrorMap.set(0xa, RebalanceAbuseError);
189
- nameToErrorMap.set('RebalanceAbuse', RebalanceAbuseError);
126
+ codeToErrorMap.set(0x7, IncorrectInstructionsError);
127
+ nameToErrorMap.set('IncorrectInstructions', IncorrectInstructionsError);
190
128
 
191
- /** IncorrectInstructions: Incorrect set of instructions in the transaction */
192
- export class IncorrectInstructionsError extends ProgramError {
193
- override readonly name: string = 'IncorrectInstructions';
129
+ /** IncorrectDebtAdjustment: Incorrect swap amount provided. Likely due to high price volatility */
130
+ export class IncorrectDebtAdjustmentError extends ProgramError {
131
+ override readonly name: string = 'IncorrectDebtAdjustment';
194
132
 
195
- readonly code: number = 0xb; // 11
133
+ readonly code: number = 0x8; // 8
196
134
 
197
135
  constructor(program: Program, cause?: Error) {
198
- super('Incorrect set of instructions in the transaction', program, cause);
136
+ super(
137
+ 'Incorrect swap amount provided. Likely due to high price volatility',
138
+ program,
139
+ cause
140
+ );
199
141
  }
200
142
  }
201
- codeToErrorMap.set(0xb, IncorrectInstructionsError);
202
- nameToErrorMap.set('IncorrectInstructions', IncorrectInstructionsError);
143
+ codeToErrorMap.set(0x8, IncorrectDebtAdjustmentError);
144
+ nameToErrorMap.set('IncorrectDebtAdjustment', IncorrectDebtAdjustmentError);
203
145
 
204
146
  /**
205
147
  * Attempts to resolve a custom program error from the provided error code.
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ export * from './tokenLedger';
@@ -0,0 +1,146 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import {
10
+ Account,
11
+ Context,
12
+ Pda,
13
+ PublicKey,
14
+ RpcAccount,
15
+ RpcGetAccountOptions,
16
+ RpcGetAccountsOptions,
17
+ assertAccountExists,
18
+ deserializeAccount,
19
+ gpaBuilder,
20
+ publicKey as toPublicKey,
21
+ } from '@metaplex-foundation/umi';
22
+ import {
23
+ Serializer,
24
+ array,
25
+ mapSerializer,
26
+ publicKey as publicKeySerializer,
27
+ struct,
28
+ u64,
29
+ u8,
30
+ } from '@metaplex-foundation/umi/serializers';
31
+
32
+ export type TokenLedger = Account<TokenLedgerAccountData>;
33
+
34
+ export type TokenLedgerAccountData = {
35
+ discriminator: Array<number>;
36
+ tokenAccount: PublicKey;
37
+ amount: bigint;
38
+ };
39
+
40
+ export type TokenLedgerAccountDataArgs = {
41
+ tokenAccount: PublicKey;
42
+ amount: number | bigint;
43
+ };
44
+
45
+ export function getTokenLedgerAccountDataSerializer(): Serializer<
46
+ TokenLedgerAccountDataArgs,
47
+ TokenLedgerAccountData
48
+ > {
49
+ return mapSerializer<TokenLedgerAccountDataArgs, any, TokenLedgerAccountData>(
50
+ struct<TokenLedgerAccountData>(
51
+ [
52
+ ['discriminator', array(u8(), { size: 8 })],
53
+ ['tokenAccount', publicKeySerializer()],
54
+ ['amount', u64()],
55
+ ],
56
+ { description: 'TokenLedgerAccountData' }
57
+ ),
58
+ (value) => ({
59
+ ...value,
60
+ discriminator: [156, 247, 9, 188, 54, 108, 85, 77],
61
+ })
62
+ ) as Serializer<TokenLedgerAccountDataArgs, TokenLedgerAccountData>;
63
+ }
64
+
65
+ export function deserializeTokenLedger(rawAccount: RpcAccount): TokenLedger {
66
+ return deserializeAccount(rawAccount, getTokenLedgerAccountDataSerializer());
67
+ }
68
+
69
+ export async function fetchTokenLedger(
70
+ context: Pick<Context, 'rpc'>,
71
+ publicKey: PublicKey | Pda,
72
+ options?: RpcGetAccountOptions
73
+ ): Promise<TokenLedger> {
74
+ const maybeAccount = await context.rpc.getAccount(
75
+ toPublicKey(publicKey, false),
76
+ options
77
+ );
78
+ assertAccountExists(maybeAccount, 'TokenLedger');
79
+ return deserializeTokenLedger(maybeAccount);
80
+ }
81
+
82
+ export async function safeFetchTokenLedger(
83
+ context: Pick<Context, 'rpc'>,
84
+ publicKey: PublicKey | Pda,
85
+ options?: RpcGetAccountOptions
86
+ ): Promise<TokenLedger | null> {
87
+ const maybeAccount = await context.rpc.getAccount(
88
+ toPublicKey(publicKey, false),
89
+ options
90
+ );
91
+ return maybeAccount.exists ? deserializeTokenLedger(maybeAccount) : null;
92
+ }
93
+
94
+ export async function fetchAllTokenLedger(
95
+ context: Pick<Context, 'rpc'>,
96
+ publicKeys: Array<PublicKey | Pda>,
97
+ options?: RpcGetAccountsOptions
98
+ ): Promise<TokenLedger[]> {
99
+ const maybeAccounts = await context.rpc.getAccounts(
100
+ publicKeys.map((key) => toPublicKey(key, false)),
101
+ options
102
+ );
103
+ return maybeAccounts.map((maybeAccount) => {
104
+ assertAccountExists(maybeAccount, 'TokenLedger');
105
+ return deserializeTokenLedger(maybeAccount);
106
+ });
107
+ }
108
+
109
+ export async function safeFetchAllTokenLedger(
110
+ context: Pick<Context, 'rpc'>,
111
+ publicKeys: Array<PublicKey | Pda>,
112
+ options?: RpcGetAccountsOptions
113
+ ): Promise<TokenLedger[]> {
114
+ const maybeAccounts = await context.rpc.getAccounts(
115
+ publicKeys.map((key) => toPublicKey(key, false)),
116
+ options
117
+ );
118
+ return maybeAccounts
119
+ .filter((maybeAccount) => maybeAccount.exists)
120
+ .map((maybeAccount) => deserializeTokenLedger(maybeAccount as RpcAccount));
121
+ }
122
+
123
+ export function getTokenLedgerGpaBuilder(
124
+ context: Pick<Context, 'rpc' | 'programs'>
125
+ ) {
126
+ const programId = context.programs.getPublicKey(
127
+ 'jupiter',
128
+ 'JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4'
129
+ );
130
+ return gpaBuilder(context, programId)
131
+ .registerFields<{
132
+ discriminator: Array<number>;
133
+ tokenAccount: PublicKey;
134
+ amount: number | bigint;
135
+ }>({
136
+ discriminator: [0, array(u8(), { size: 8 })],
137
+ tokenAccount: [8, publicKeySerializer()],
138
+ amount: [40, u64()],
139
+ })
140
+ .deserializeUsing<TokenLedger>((account) => deserializeTokenLedger(account))
141
+ .whereField('discriminator', [156, 247, 9, 188, 54, 108, 85, 77]);
142
+ }
143
+
144
+ export function getTokenLedgerSize(): number {
145
+ return 48;
146
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ export * from './jupiter';