@haven-fi/solauto-sdk 1.0.175 → 1.0.177
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/constants/generalAccounts.d.ts.map +1 -1
- package/dist/constants/generalAccounts.js +0 -1
- package/dist/constants/solautoConstants.d.ts +0 -1
- package/dist/constants/solautoConstants.d.ts.map +1 -1
- package/dist/constants/solautoConstants.js +3 -3
- package/dist/generated/errors/solauto.d.ts +8 -26
- package/dist/generated/errors/solauto.d.ts.map +1 -1
- package/dist/generated/errors/solauto.js +26 -59
- package/dist/jupiter-sdk/accounts/index.d.ts +9 -0
- package/dist/jupiter-sdk/accounts/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/accounts/index.js +24 -0
- package/dist/jupiter-sdk/accounts/tokenLedger.d.ts +32 -0
- package/dist/jupiter-sdk/accounts/tokenLedger.d.ts.map +1 -0
- package/dist/jupiter-sdk/accounts/tokenLedger.js +68 -0
- package/dist/jupiter-sdk/errors/index.d.ts +9 -0
- package/dist/jupiter-sdk/errors/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/errors/index.js +24 -0
- package/dist/jupiter-sdk/errors/jupiter.d.ts +127 -0
- package/dist/jupiter-sdk/errors/jupiter.d.ts.map +1 -0
- package/dist/jupiter-sdk/errors/jupiter.js +229 -0
- package/dist/jupiter-sdk/index.d.ts +14 -0
- package/dist/jupiter-sdk/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/index.js +29 -0
- package/dist/jupiter-sdk/instructions/aldrinSwap.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/aldrinSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/aldrinSwap.js +95 -0
- package/dist/jupiter-sdk/instructions/aldrinV2Swap.d.ts +30 -0
- package/dist/jupiter-sdk/instructions/aldrinV2Swap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/aldrinV2Swap.js +100 -0
- package/dist/jupiter-sdk/instructions/balansolSwap.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/balansolSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/balansolSwap.js +130 -0
- package/dist/jupiter-sdk/instructions/claim.d.ts +25 -0
- package/dist/jupiter-sdk/instructions/claim.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/claim.js +64 -0
- package/dist/jupiter-sdk/instructions/claimToken.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/claimToken.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/claimToken.js +93 -0
- package/dist/jupiter-sdk/instructions/cloneSwap.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/cloneSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/cloneSwap.js +120 -0
- package/dist/jupiter-sdk/instructions/createOpenOrders.d.ts +24 -0
- package/dist/jupiter-sdk/instructions/createOpenOrders.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/createOpenOrders.js +76 -0
- package/dist/jupiter-sdk/instructions/createProgramOpenOrders.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/createProgramOpenOrders.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/createProgramOpenOrders.js +86 -0
- package/dist/jupiter-sdk/instructions/createTokenAccount.d.ts +27 -0
- package/dist/jupiter-sdk/instructions/createTokenAccount.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/createTokenAccount.js +70 -0
- package/dist/jupiter-sdk/instructions/createTokenLedger.d.ts +21 -0
- package/dist/jupiter-sdk/instructions/createTokenLedger.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/createTokenLedger.js +62 -0
- package/dist/jupiter-sdk/instructions/cremaSwap.d.ts +33 -0
- package/dist/jupiter-sdk/instructions/cremaSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/cremaSwap.js +119 -0
- package/dist/jupiter-sdk/instructions/cropperSwap.d.ts +30 -0
- package/dist/jupiter-sdk/instructions/cropperSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/cropperSwap.js +103 -0
- package/dist/jupiter-sdk/instructions/cykuraSwap.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/cykuraSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/cykuraSwap.js +99 -0
- package/dist/jupiter-sdk/instructions/deltafiSwap.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/deltafiSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/deltafiSwap.js +109 -0
- package/dist/jupiter-sdk/instructions/dradexSwap.d.ts +35 -0
- package/dist/jupiter-sdk/instructions/dradexSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/dradexSwap.js +121 -0
- package/dist/jupiter-sdk/instructions/exactOutRoute.d.ts +42 -0
- package/dist/jupiter-sdk/instructions/exactOutRoute.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/exactOutRoute.js +109 -0
- package/dist/jupiter-sdk/instructions/goosefxSwap.d.ts +33 -0
- package/dist/jupiter-sdk/instructions/goosefxSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/goosefxSwap.js +115 -0
- package/dist/jupiter-sdk/instructions/goosefxV2Swap.d.ts +38 -0
- package/dist/jupiter-sdk/instructions/goosefxV2Swap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/goosefxV2Swap.js +140 -0
- package/dist/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.js +91 -0
- package/dist/jupiter-sdk/instructions/index.d.ts +72 -0
- package/dist/jupiter-sdk/instructions/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/index.js +87 -0
- package/dist/jupiter-sdk/instructions/invariantSwap.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/invariantSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/invariantSwap.js +95 -0
- package/dist/jupiter-sdk/instructions/lifinitySwap.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/lifinitySwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/lifinitySwap.js +113 -0
- package/dist/jupiter-sdk/instructions/lifinityV2Swap.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/lifinityV2Swap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/lifinityV2Swap.js +113 -0
- package/dist/jupiter-sdk/instructions/marcoPoloSwap.d.ts +36 -0
- package/dist/jupiter-sdk/instructions/marcoPoloSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/marcoPoloSwap.js +137 -0
- package/dist/jupiter-sdk/instructions/marinadeDeposit.d.ts +36 -0
- package/dist/jupiter-sdk/instructions/marinadeDeposit.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/marinadeDeposit.js +144 -0
- package/dist/jupiter-sdk/instructions/marinadeUnstake.d.ts +30 -0
- package/dist/jupiter-sdk/instructions/marinadeUnstake.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/marinadeUnstake.js +105 -0
- package/dist/jupiter-sdk/instructions/mercurialSwap.d.ts +25 -0
- package/dist/jupiter-sdk/instructions/mercurialSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/mercurialSwap.js +76 -0
- package/dist/jupiter-sdk/instructions/meteoraDlmmSwap.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/meteoraDlmmSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/meteoraDlmmSwap.js +119 -0
- package/dist/jupiter-sdk/instructions/meteoraSwap.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/meteoraSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/meteoraSwap.js +120 -0
- package/dist/jupiter-sdk/instructions/moonshotWrappedBuy.d.ts +33 -0
- package/dist/jupiter-sdk/instructions/moonshotWrappedBuy.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/moonshotWrappedBuy.js +119 -0
- package/dist/jupiter-sdk/instructions/moonshotWrappedSell.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/moonshotWrappedSell.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/moonshotWrappedSell.js +106 -0
- package/dist/jupiter-sdk/instructions/obricSwap.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/obricSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/obricSwap.js +106 -0
- package/dist/jupiter-sdk/instructions/oneIntroSwap.d.ts +30 -0
- package/dist/jupiter-sdk/instructions/oneIntroSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/oneIntroSwap.js +100 -0
- package/dist/jupiter-sdk/instructions/openBookV2Swap.d.ts +35 -0
- package/dist/jupiter-sdk/instructions/openBookV2Swap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/openBookV2Swap.js +125 -0
- package/dist/jupiter-sdk/instructions/perpsAddLiquidity.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/perpsAddLiquidity.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/perpsAddLiquidity.js +110 -0
- package/dist/jupiter-sdk/instructions/perpsRemoveLiquidity.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/perpsRemoveLiquidity.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/perpsRemoveLiquidity.js +110 -0
- package/dist/jupiter-sdk/instructions/perpsSwap.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/perpsSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/perpsSwap.js +120 -0
- package/dist/jupiter-sdk/instructions/perpsV2AddLiquidity.d.ts +33 -0
- package/dist/jupiter-sdk/instructions/perpsV2AddLiquidity.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/perpsV2AddLiquidity.js +115 -0
- package/dist/jupiter-sdk/instructions/perpsV2RemoveLiquidity.d.ts +33 -0
- package/dist/jupiter-sdk/instructions/perpsV2RemoveLiquidity.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/perpsV2RemoveLiquidity.js +112 -0
- package/dist/jupiter-sdk/instructions/perpsV2Swap.d.ts +36 -0
- package/dist/jupiter-sdk/instructions/perpsV2Swap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/perpsV2Swap.js +130 -0
- package/dist/jupiter-sdk/instructions/phoenixSwap.d.ts +27 -0
- package/dist/jupiter-sdk/instructions/phoenixSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/phoenixSwap.js +89 -0
- package/dist/jupiter-sdk/instructions/pumpdotfunWrappedBuy.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/pumpdotfunWrappedBuy.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/pumpdotfunWrappedBuy.js +123 -0
- package/dist/jupiter-sdk/instructions/pumpdotfunWrappedSell.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/pumpdotfunWrappedSell.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/pumpdotfunWrappedSell.js +107 -0
- package/dist/jupiter-sdk/instructions/raydiumClmmSwap.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/raydiumClmmSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/raydiumClmmSwap.js +102 -0
- package/dist/jupiter-sdk/instructions/raydiumClmmSwapV2.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/raydiumClmmSwapV2.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/raydiumClmmSwapV2.js +117 -0
- package/dist/jupiter-sdk/instructions/raydiumCpSwap.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/raydiumCpSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/raydiumCpSwap.js +116 -0
- package/dist/jupiter-sdk/instructions/raydiumSwap.d.ts +36 -0
- package/dist/jupiter-sdk/instructions/raydiumSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/raydiumSwap.js +134 -0
- package/dist/jupiter-sdk/instructions/route.d.ts +40 -0
- package/dist/jupiter-sdk/instructions/route.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/route.js +99 -0
- package/dist/jupiter-sdk/instructions/routeWithTokenLedger.d.ts +39 -0
- package/dist/jupiter-sdk/instructions/routeWithTokenLedger.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/routeWithTokenLedger.js +103 -0
- package/dist/jupiter-sdk/instructions/saberAddDecimals.d.ts +26 -0
- package/dist/jupiter-sdk/instructions/saberAddDecimals.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/saberAddDecimals.js +81 -0
- package/dist/jupiter-sdk/instructions/saberSwap.d.ts +28 -0
- package/dist/jupiter-sdk/instructions/saberSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/saberSwap.js +87 -0
- package/dist/jupiter-sdk/instructions/senchaSwap.d.ts +28 -0
- package/dist/jupiter-sdk/instructions/senchaSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/senchaSwap.js +90 -0
- package/dist/jupiter-sdk/instructions/serumSwap.d.ts +34 -0
- package/dist/jupiter-sdk/instructions/serumSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/serumSwap.js +122 -0
- package/dist/jupiter-sdk/instructions/setTokenLedger.d.ts +20 -0
- package/dist/jupiter-sdk/instructions/setTokenLedger.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/setTokenLedger.js +46 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsExactOutRoute.d.ts +46 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsExactOutRoute.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsExactOutRoute.js +120 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsRoute.d.ts +46 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsRoute.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsRoute.js +120 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.d.ts +45 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.js +126 -0
- package/dist/jupiter-sdk/instructions/stabbleStableSwap.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/stabbleStableSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/stabbleStableSwap.js +101 -0
- package/dist/jupiter-sdk/instructions/stabbleWeightedSwap.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/stabbleWeightedSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/stabbleWeightedSwap.js +101 -0
- package/dist/jupiter-sdk/instructions/stepSwap.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/stepSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/stepSwap.js +98 -0
- package/dist/jupiter-sdk/instructions/symmetrySwap.d.ts +32 -0
- package/dist/jupiter-sdk/instructions/symmetrySwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/symmetrySwap.js +114 -0
- package/dist/jupiter-sdk/instructions/tokenSwap.d.ts +29 -0
- package/dist/jupiter-sdk/instructions/tokenSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/tokenSwap.js +98 -0
- package/dist/jupiter-sdk/instructions/tokenSwapV2.d.ts +33 -0
- package/dist/jupiter-sdk/instructions/tokenSwapV2.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/tokenSwapV2.js +114 -0
- package/dist/jupiter-sdk/instructions/whirlpoolSwap.d.ts +31 -0
- package/dist/jupiter-sdk/instructions/whirlpoolSwap.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/whirlpoolSwap.js +104 -0
- package/dist/jupiter-sdk/instructions/whirlpoolSwapV2.d.ts +35 -0
- package/dist/jupiter-sdk/instructions/whirlpoolSwapV2.d.ts.map +1 -0
- package/dist/jupiter-sdk/instructions/whirlpoolSwapV2.js +119 -0
- package/dist/jupiter-sdk/programs/index.d.ts +9 -0
- package/dist/jupiter-sdk/programs/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/programs/index.js +24 -0
- package/dist/jupiter-sdk/programs/jupiter.d.ts +13 -0
- package/dist/jupiter-sdk/programs/jupiter.d.ts.map +1 -0
- package/dist/jupiter-sdk/programs/jupiter.js +36 -0
- package/dist/jupiter-sdk/shared/index.d.ts +54 -0
- package/dist/jupiter-sdk/shared/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/shared/index.js +69 -0
- package/dist/jupiter-sdk/types/accountsType.d.ts +15 -0
- package/dist/jupiter-sdk/types/accountsType.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/accountsType.js +22 -0
- package/dist/jupiter-sdk/types/amountWithSlippage.d.ts +18 -0
- package/dist/jupiter-sdk/types/amountWithSlippage.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/amountWithSlippage.js +17 -0
- package/dist/jupiter-sdk/types/index.d.ts +15 -0
- package/dist/jupiter-sdk/types/index.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/index.js +30 -0
- package/dist/jupiter-sdk/types/remainingAccountsInfo.d.ts +17 -0
- package/dist/jupiter-sdk/types/remainingAccountsInfo.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/remainingAccountsInfo.js +15 -0
- package/dist/jupiter-sdk/types/remainingAccountsSlice.d.ts +19 -0
- package/dist/jupiter-sdk/types/remainingAccountsSlice.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/remainingAccountsSlice.js +18 -0
- package/dist/jupiter-sdk/types/routePlanStep.d.ts +23 -0
- package/dist/jupiter-sdk/types/routePlanStep.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/routePlanStep.js +20 -0
- package/dist/jupiter-sdk/types/side.d.ts +15 -0
- package/dist/jupiter-sdk/types/side.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/side.js +20 -0
- package/dist/jupiter-sdk/types/swap.d.ts +372 -0
- package/dist/jupiter-sdk/types/swap.d.ts.map +1 -0
- package/dist/jupiter-sdk/types/swap.js +188 -0
- package/dist/transactions/transactionUtils.d.ts +5 -0
- package/dist/transactions/transactionUtils.d.ts.map +1 -1
- package/dist/transactions/transactionUtils.js +48 -3
- package/dist/transactions/transactionsManager.d.ts +2 -1
- package/dist/transactions/transactionsManager.d.ts.map +1 -1
- package/dist/transactions/transactionsManager.js +13 -3
- package/package.json +1 -1
- package/src/constants/generalAccounts.ts +0 -3
- package/src/constants/solautoConstants.ts +1 -2
- package/src/generated/errors/solauto.ts +30 -88
- package/src/jupiter-sdk/accounts/index.ts +9 -0
- package/src/jupiter-sdk/accounts/tokenLedger.ts +146 -0
- package/src/jupiter-sdk/errors/index.ts +9 -0
- package/src/jupiter-sdk/errors/jupiter.ts +282 -0
- package/src/jupiter-sdk/index.ts +14 -0
- package/src/jupiter-sdk/instructions/aldrinSwap.ts +165 -0
- package/src/jupiter-sdk/instructions/aldrinV2Swap.ts +171 -0
- package/src/jupiter-sdk/instructions/balansolSwap.ts +211 -0
- package/src/jupiter-sdk/instructions/claim.ts +128 -0
- package/src/jupiter-sdk/instructions/claimToken.ts +171 -0
- package/src/jupiter-sdk/instructions/cloneSwap.ts +195 -0
- package/src/jupiter-sdk/instructions/createOpenOrders.ts +148 -0
- package/src/jupiter-sdk/instructions/createProgramOpenOrders.ts +170 -0
- package/src/jupiter-sdk/instructions/createTokenAccount.ts +152 -0
- package/src/jupiter-sdk/instructions/createTokenLedger.ts +128 -0
- package/src/jupiter-sdk/instructions/cremaSwap.ts +193 -0
- package/src/jupiter-sdk/instructions/cropperSwap.ts +174 -0
- package/src/jupiter-sdk/instructions/cykuraSwap.ts +169 -0
- package/src/jupiter-sdk/instructions/deltafiSwap.ts +181 -0
- package/src/jupiter-sdk/instructions/dradexSwap.ts +200 -0
- package/src/jupiter-sdk/instructions/exactOutRoute.ts +208 -0
- package/src/jupiter-sdk/instructions/goosefxSwap.ts +189 -0
- package/src/jupiter-sdk/instructions/goosefxV2Swap.ts +222 -0
- package/src/jupiter-sdk/instructions/heliumTreasuryManagementRedeemV0.ts +169 -0
- package/src/jupiter-sdk/instructions/index.ts +72 -0
- package/src/jupiter-sdk/instructions/invariantSwap.ts +168 -0
- package/src/jupiter-sdk/instructions/lifinitySwap.ts +186 -0
- package/src/jupiter-sdk/instructions/lifinityV2Swap.ts +189 -0
- package/src/jupiter-sdk/instructions/marcoPoloSwap.ts +223 -0
- package/src/jupiter-sdk/instructions/marinadeDeposit.ts +230 -0
- package/src/jupiter-sdk/instructions/marinadeUnstake.ts +182 -0
- package/src/jupiter-sdk/instructions/mercurialSwap.ts +145 -0
- package/src/jupiter-sdk/instructions/meteoraDlmmSwap.ts +193 -0
- package/src/jupiter-sdk/instructions/meteoraSwap.ts +195 -0
- package/src/jupiter-sdk/instructions/moonshotWrappedBuy.ts +201 -0
- package/src/jupiter-sdk/instructions/moonshotWrappedSell.ts +186 -0
- package/src/jupiter-sdk/instructions/obricSwap.ts +178 -0
- package/src/jupiter-sdk/instructions/oneIntroSwap.ts +171 -0
- package/src/jupiter-sdk/instructions/openBookV2Swap.ts +207 -0
- package/src/jupiter-sdk/instructions/perpsAddLiquidity.ts +186 -0
- package/src/jupiter-sdk/instructions/perpsRemoveLiquidity.ts +188 -0
- package/src/jupiter-sdk/instructions/perpsSwap.ts +195 -0
- package/src/jupiter-sdk/instructions/perpsV2AddLiquidity.ts +194 -0
- package/src/jupiter-sdk/instructions/perpsV2RemoveLiquidity.ts +193 -0
- package/src/jupiter-sdk/instructions/perpsV2Swap.ts +207 -0
- package/src/jupiter-sdk/instructions/phoenixSwap.ts +157 -0
- package/src/jupiter-sdk/instructions/pumpdotfunWrappedBuy.ts +209 -0
- package/src/jupiter-sdk/instructions/pumpdotfunWrappedSell.ts +190 -0
- package/src/jupiter-sdk/instructions/raydiumClmmSwap.ts +175 -0
- package/src/jupiter-sdk/instructions/raydiumClmmSwapV2.ts +193 -0
- package/src/jupiter-sdk/instructions/raydiumCpSwap.ts +189 -0
- package/src/jupiter-sdk/instructions/raydiumSwap.ts +211 -0
- package/src/jupiter-sdk/instructions/route.ts +189 -0
- package/src/jupiter-sdk/instructions/routeWithTokenLedger.ts +201 -0
- package/src/jupiter-sdk/instructions/saberAddDecimals.ts +151 -0
- package/src/jupiter-sdk/instructions/saberSwap.ts +156 -0
- package/src/jupiter-sdk/instructions/senchaSwap.ts +159 -0
- package/src/jupiter-sdk/instructions/serumSwap.ts +200 -0
- package/src/jupiter-sdk/instructions/setTokenLedger.ts +106 -0
- package/src/jupiter-sdk/instructions/sharedAccountsExactOutRoute.ts +226 -0
- package/src/jupiter-sdk/instructions/sharedAccountsRoute.ts +225 -0
- package/src/jupiter-sdk/instructions/sharedAccountsRouteWithTokenLedger.ts +231 -0
- package/src/jupiter-sdk/instructions/stabbleStableSwap.ts +176 -0
- package/src/jupiter-sdk/instructions/stabbleWeightedSwap.ts +178 -0
- package/src/jupiter-sdk/instructions/stepSwap.ts +168 -0
- package/src/jupiter-sdk/instructions/symmetrySwap.ts +187 -0
- package/src/jupiter-sdk/instructions/tokenSwap.ts +168 -0
- package/src/jupiter-sdk/instructions/tokenSwapV2.ts +185 -0
- package/src/jupiter-sdk/instructions/whirlpoolSwap.ts +179 -0
- package/src/jupiter-sdk/instructions/whirlpoolSwapV2.ts +194 -0
- package/src/jupiter-sdk/programs/index.ts +9 -0
- package/src/jupiter-sdk/programs/jupiter.ts +52 -0
- package/src/jupiter-sdk/shared/index.ts +117 -0
- package/src/jupiter-sdk/types/accountsType.ts +25 -0
- package/src/jupiter-sdk/types/amountWithSlippage.ts +34 -0
- package/src/jupiter-sdk/types/index.ts +15 -0
- package/src/jupiter-sdk/types/remainingAccountsInfo.ts +34 -0
- package/src/jupiter-sdk/types/remainingAccountsSlice.ts +33 -0
- package/src/jupiter-sdk/types/routePlanStep.ts +39 -0
- package/src/jupiter-sdk/types/side.ts +23 -0
- package/src/jupiter-sdk/types/swap.ts +566 -0
- package/src/transactions/transactionUtils.ts +75 -4
- package/src/transactions/transactionsManager.ts +31 -6
- package/tests/transactions/solautoMarginfi.ts +2 -2
@@ -0,0 +1,566 @@
|
|
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 { Option, OptionOrNullable } from '@metaplex-foundation/umi';
|
10
|
+
import {
|
11
|
+
GetDataEnumKind,
|
12
|
+
GetDataEnumKindContent,
|
13
|
+
Serializer,
|
14
|
+
bool,
|
15
|
+
dataEnum,
|
16
|
+
option,
|
17
|
+
struct,
|
18
|
+
u32,
|
19
|
+
u64,
|
20
|
+
u8,
|
21
|
+
unit,
|
22
|
+
} from '@metaplex-foundation/umi/serializers';
|
23
|
+
import {
|
24
|
+
RemainingAccountsInfo,
|
25
|
+
RemainingAccountsInfoArgs,
|
26
|
+
Side,
|
27
|
+
SideArgs,
|
28
|
+
getRemainingAccountsInfoSerializer,
|
29
|
+
getSideSerializer,
|
30
|
+
} from '.';
|
31
|
+
|
32
|
+
export type Swap =
|
33
|
+
| { __kind: 'Saber' }
|
34
|
+
| { __kind: 'SaberAddDecimalsDeposit' }
|
35
|
+
| { __kind: 'SaberAddDecimalsWithdraw' }
|
36
|
+
| { __kind: 'TokenSwap' }
|
37
|
+
| { __kind: 'Sencha' }
|
38
|
+
| { __kind: 'Step' }
|
39
|
+
| { __kind: 'Cropper' }
|
40
|
+
| { __kind: 'Raydium' }
|
41
|
+
| { __kind: 'Crema'; aToB: boolean }
|
42
|
+
| { __kind: 'Lifinity' }
|
43
|
+
| { __kind: 'Mercurial' }
|
44
|
+
| { __kind: 'Cykura' }
|
45
|
+
| { __kind: 'Serum'; side: Side }
|
46
|
+
| { __kind: 'MarinadeDeposit' }
|
47
|
+
| { __kind: 'MarinadeUnstake' }
|
48
|
+
| { __kind: 'Aldrin'; side: Side }
|
49
|
+
| { __kind: 'AldrinV2'; side: Side }
|
50
|
+
| { __kind: 'Whirlpool'; aToB: boolean }
|
51
|
+
| { __kind: 'Invariant'; xToY: boolean }
|
52
|
+
| { __kind: 'Meteora' }
|
53
|
+
| { __kind: 'GooseFX' }
|
54
|
+
| { __kind: 'DeltaFi'; stable: boolean }
|
55
|
+
| { __kind: 'Balansol' }
|
56
|
+
| { __kind: 'MarcoPolo'; xToY: boolean }
|
57
|
+
| { __kind: 'Dradex'; side: Side }
|
58
|
+
| { __kind: 'LifinityV2' }
|
59
|
+
| { __kind: 'RaydiumClmm' }
|
60
|
+
| { __kind: 'Openbook'; side: Side }
|
61
|
+
| { __kind: 'Phoenix'; side: Side }
|
62
|
+
| { __kind: 'Symmetry'; fromTokenId: bigint; toTokenId: bigint }
|
63
|
+
| { __kind: 'TokenSwapV2' }
|
64
|
+
| { __kind: 'HeliumTreasuryManagementRedeemV0' }
|
65
|
+
| { __kind: 'StakeDexStakeWrappedSol' }
|
66
|
+
| { __kind: 'StakeDexSwapViaStake'; bridgeStakeSeed: number }
|
67
|
+
| { __kind: 'GooseFXV2' }
|
68
|
+
| { __kind: 'Perps' }
|
69
|
+
| { __kind: 'PerpsAddLiquidity' }
|
70
|
+
| { __kind: 'PerpsRemoveLiquidity' }
|
71
|
+
| { __kind: 'MeteoraDlmm' }
|
72
|
+
| { __kind: 'OpenBookV2'; side: Side }
|
73
|
+
| { __kind: 'RaydiumClmmV2' }
|
74
|
+
| {
|
75
|
+
__kind: 'StakeDexPrefundWithdrawStakeAndDepositStake';
|
76
|
+
bridgeStakeSeed: number;
|
77
|
+
}
|
78
|
+
| {
|
79
|
+
__kind: 'Clone';
|
80
|
+
poolIndex: number;
|
81
|
+
quantityIsInput: boolean;
|
82
|
+
quantityIsCollateral: boolean;
|
83
|
+
}
|
84
|
+
| {
|
85
|
+
__kind: 'SanctumS';
|
86
|
+
srcLstValueCalcAccs: number;
|
87
|
+
dstLstValueCalcAccs: number;
|
88
|
+
srcLstIndex: number;
|
89
|
+
dstLstIndex: number;
|
90
|
+
}
|
91
|
+
| {
|
92
|
+
__kind: 'SanctumSAddLiquidity';
|
93
|
+
lstValueCalcAccs: number;
|
94
|
+
lstIndex: number;
|
95
|
+
}
|
96
|
+
| {
|
97
|
+
__kind: 'SanctumSRemoveLiquidity';
|
98
|
+
lstValueCalcAccs: number;
|
99
|
+
lstIndex: number;
|
100
|
+
}
|
101
|
+
| { __kind: 'RaydiumCP' }
|
102
|
+
| {
|
103
|
+
__kind: 'WhirlpoolSwapV2';
|
104
|
+
aToB: boolean;
|
105
|
+
remainingAccountsInfo: Option<RemainingAccountsInfo>;
|
106
|
+
}
|
107
|
+
| { __kind: 'OneIntro' }
|
108
|
+
| { __kind: 'PumpdotfunWrappedBuy' }
|
109
|
+
| { __kind: 'PumpdotfunWrappedSell' }
|
110
|
+
| { __kind: 'PerpsV2' }
|
111
|
+
| { __kind: 'PerpsV2AddLiquidity' }
|
112
|
+
| { __kind: 'PerpsV2RemoveLiquidity' }
|
113
|
+
| { __kind: 'MoonshotWrappedBuy' }
|
114
|
+
| { __kind: 'MoonshotWrappedSell' }
|
115
|
+
| { __kind: 'StabbleStableSwap' }
|
116
|
+
| { __kind: 'StabbleWeightedSwap' }
|
117
|
+
| { __kind: 'Obric'; xToY: boolean };
|
118
|
+
|
119
|
+
export type SwapArgs =
|
120
|
+
| { __kind: 'Saber' }
|
121
|
+
| { __kind: 'SaberAddDecimalsDeposit' }
|
122
|
+
| { __kind: 'SaberAddDecimalsWithdraw' }
|
123
|
+
| { __kind: 'TokenSwap' }
|
124
|
+
| { __kind: 'Sencha' }
|
125
|
+
| { __kind: 'Step' }
|
126
|
+
| { __kind: 'Cropper' }
|
127
|
+
| { __kind: 'Raydium' }
|
128
|
+
| { __kind: 'Crema'; aToB: boolean }
|
129
|
+
| { __kind: 'Lifinity' }
|
130
|
+
| { __kind: 'Mercurial' }
|
131
|
+
| { __kind: 'Cykura' }
|
132
|
+
| { __kind: 'Serum'; side: SideArgs }
|
133
|
+
| { __kind: 'MarinadeDeposit' }
|
134
|
+
| { __kind: 'MarinadeUnstake' }
|
135
|
+
| { __kind: 'Aldrin'; side: SideArgs }
|
136
|
+
| { __kind: 'AldrinV2'; side: SideArgs }
|
137
|
+
| { __kind: 'Whirlpool'; aToB: boolean }
|
138
|
+
| { __kind: 'Invariant'; xToY: boolean }
|
139
|
+
| { __kind: 'Meteora' }
|
140
|
+
| { __kind: 'GooseFX' }
|
141
|
+
| { __kind: 'DeltaFi'; stable: boolean }
|
142
|
+
| { __kind: 'Balansol' }
|
143
|
+
| { __kind: 'MarcoPolo'; xToY: boolean }
|
144
|
+
| { __kind: 'Dradex'; side: SideArgs }
|
145
|
+
| { __kind: 'LifinityV2' }
|
146
|
+
| { __kind: 'RaydiumClmm' }
|
147
|
+
| { __kind: 'Openbook'; side: SideArgs }
|
148
|
+
| { __kind: 'Phoenix'; side: SideArgs }
|
149
|
+
| {
|
150
|
+
__kind: 'Symmetry';
|
151
|
+
fromTokenId: number | bigint;
|
152
|
+
toTokenId: number | bigint;
|
153
|
+
}
|
154
|
+
| { __kind: 'TokenSwapV2' }
|
155
|
+
| { __kind: 'HeliumTreasuryManagementRedeemV0' }
|
156
|
+
| { __kind: 'StakeDexStakeWrappedSol' }
|
157
|
+
| { __kind: 'StakeDexSwapViaStake'; bridgeStakeSeed: number }
|
158
|
+
| { __kind: 'GooseFXV2' }
|
159
|
+
| { __kind: 'Perps' }
|
160
|
+
| { __kind: 'PerpsAddLiquidity' }
|
161
|
+
| { __kind: 'PerpsRemoveLiquidity' }
|
162
|
+
| { __kind: 'MeteoraDlmm' }
|
163
|
+
| { __kind: 'OpenBookV2'; side: SideArgs }
|
164
|
+
| { __kind: 'RaydiumClmmV2' }
|
165
|
+
| {
|
166
|
+
__kind: 'StakeDexPrefundWithdrawStakeAndDepositStake';
|
167
|
+
bridgeStakeSeed: number;
|
168
|
+
}
|
169
|
+
| {
|
170
|
+
__kind: 'Clone';
|
171
|
+
poolIndex: number;
|
172
|
+
quantityIsInput: boolean;
|
173
|
+
quantityIsCollateral: boolean;
|
174
|
+
}
|
175
|
+
| {
|
176
|
+
__kind: 'SanctumS';
|
177
|
+
srcLstValueCalcAccs: number;
|
178
|
+
dstLstValueCalcAccs: number;
|
179
|
+
srcLstIndex: number;
|
180
|
+
dstLstIndex: number;
|
181
|
+
}
|
182
|
+
| {
|
183
|
+
__kind: 'SanctumSAddLiquidity';
|
184
|
+
lstValueCalcAccs: number;
|
185
|
+
lstIndex: number;
|
186
|
+
}
|
187
|
+
| {
|
188
|
+
__kind: 'SanctumSRemoveLiquidity';
|
189
|
+
lstValueCalcAccs: number;
|
190
|
+
lstIndex: number;
|
191
|
+
}
|
192
|
+
| { __kind: 'RaydiumCP' }
|
193
|
+
| {
|
194
|
+
__kind: 'WhirlpoolSwapV2';
|
195
|
+
aToB: boolean;
|
196
|
+
remainingAccountsInfo: OptionOrNullable<RemainingAccountsInfoArgs>;
|
197
|
+
}
|
198
|
+
| { __kind: 'OneIntro' }
|
199
|
+
| { __kind: 'PumpdotfunWrappedBuy' }
|
200
|
+
| { __kind: 'PumpdotfunWrappedSell' }
|
201
|
+
| { __kind: 'PerpsV2' }
|
202
|
+
| { __kind: 'PerpsV2AddLiquidity' }
|
203
|
+
| { __kind: 'PerpsV2RemoveLiquidity' }
|
204
|
+
| { __kind: 'MoonshotWrappedBuy' }
|
205
|
+
| { __kind: 'MoonshotWrappedSell' }
|
206
|
+
| { __kind: 'StabbleStableSwap' }
|
207
|
+
| { __kind: 'StabbleWeightedSwap' }
|
208
|
+
| { __kind: 'Obric'; xToY: boolean };
|
209
|
+
|
210
|
+
export function getSwapSerializer(): Serializer<SwapArgs, Swap> {
|
211
|
+
return dataEnum<Swap>(
|
212
|
+
[
|
213
|
+
['Saber', unit()],
|
214
|
+
['SaberAddDecimalsDeposit', unit()],
|
215
|
+
['SaberAddDecimalsWithdraw', unit()],
|
216
|
+
['TokenSwap', unit()],
|
217
|
+
['Sencha', unit()],
|
218
|
+
['Step', unit()],
|
219
|
+
['Cropper', unit()],
|
220
|
+
['Raydium', unit()],
|
221
|
+
[
|
222
|
+
'Crema',
|
223
|
+
struct<GetDataEnumKindContent<Swap, 'Crema'>>([['aToB', bool()]]),
|
224
|
+
],
|
225
|
+
['Lifinity', unit()],
|
226
|
+
['Mercurial', unit()],
|
227
|
+
['Cykura', unit()],
|
228
|
+
[
|
229
|
+
'Serum',
|
230
|
+
struct<GetDataEnumKindContent<Swap, 'Serum'>>([
|
231
|
+
['side', getSideSerializer()],
|
232
|
+
]),
|
233
|
+
],
|
234
|
+
['MarinadeDeposit', unit()],
|
235
|
+
['MarinadeUnstake', unit()],
|
236
|
+
[
|
237
|
+
'Aldrin',
|
238
|
+
struct<GetDataEnumKindContent<Swap, 'Aldrin'>>([
|
239
|
+
['side', getSideSerializer()],
|
240
|
+
]),
|
241
|
+
],
|
242
|
+
[
|
243
|
+
'AldrinV2',
|
244
|
+
struct<GetDataEnumKindContent<Swap, 'AldrinV2'>>([
|
245
|
+
['side', getSideSerializer()],
|
246
|
+
]),
|
247
|
+
],
|
248
|
+
[
|
249
|
+
'Whirlpool',
|
250
|
+
struct<GetDataEnumKindContent<Swap, 'Whirlpool'>>([['aToB', bool()]]),
|
251
|
+
],
|
252
|
+
[
|
253
|
+
'Invariant',
|
254
|
+
struct<GetDataEnumKindContent<Swap, 'Invariant'>>([['xToY', bool()]]),
|
255
|
+
],
|
256
|
+
['Meteora', unit()],
|
257
|
+
['GooseFX', unit()],
|
258
|
+
[
|
259
|
+
'DeltaFi',
|
260
|
+
struct<GetDataEnumKindContent<Swap, 'DeltaFi'>>([['stable', bool()]]),
|
261
|
+
],
|
262
|
+
['Balansol', unit()],
|
263
|
+
[
|
264
|
+
'MarcoPolo',
|
265
|
+
struct<GetDataEnumKindContent<Swap, 'MarcoPolo'>>([['xToY', bool()]]),
|
266
|
+
],
|
267
|
+
[
|
268
|
+
'Dradex',
|
269
|
+
struct<GetDataEnumKindContent<Swap, 'Dradex'>>([
|
270
|
+
['side', getSideSerializer()],
|
271
|
+
]),
|
272
|
+
],
|
273
|
+
['LifinityV2', unit()],
|
274
|
+
['RaydiumClmm', unit()],
|
275
|
+
[
|
276
|
+
'Openbook',
|
277
|
+
struct<GetDataEnumKindContent<Swap, 'Openbook'>>([
|
278
|
+
['side', getSideSerializer()],
|
279
|
+
]),
|
280
|
+
],
|
281
|
+
[
|
282
|
+
'Phoenix',
|
283
|
+
struct<GetDataEnumKindContent<Swap, 'Phoenix'>>([
|
284
|
+
['side', getSideSerializer()],
|
285
|
+
]),
|
286
|
+
],
|
287
|
+
[
|
288
|
+
'Symmetry',
|
289
|
+
struct<GetDataEnumKindContent<Swap, 'Symmetry'>>([
|
290
|
+
['fromTokenId', u64()],
|
291
|
+
['toTokenId', u64()],
|
292
|
+
]),
|
293
|
+
],
|
294
|
+
['TokenSwapV2', unit()],
|
295
|
+
['HeliumTreasuryManagementRedeemV0', unit()],
|
296
|
+
['StakeDexStakeWrappedSol', unit()],
|
297
|
+
[
|
298
|
+
'StakeDexSwapViaStake',
|
299
|
+
struct<GetDataEnumKindContent<Swap, 'StakeDexSwapViaStake'>>([
|
300
|
+
['bridgeStakeSeed', u32()],
|
301
|
+
]),
|
302
|
+
],
|
303
|
+
['GooseFXV2', unit()],
|
304
|
+
['Perps', unit()],
|
305
|
+
['PerpsAddLiquidity', unit()],
|
306
|
+
['PerpsRemoveLiquidity', unit()],
|
307
|
+
['MeteoraDlmm', unit()],
|
308
|
+
[
|
309
|
+
'OpenBookV2',
|
310
|
+
struct<GetDataEnumKindContent<Swap, 'OpenBookV2'>>([
|
311
|
+
['side', getSideSerializer()],
|
312
|
+
]),
|
313
|
+
],
|
314
|
+
['RaydiumClmmV2', unit()],
|
315
|
+
[
|
316
|
+
'StakeDexPrefundWithdrawStakeAndDepositStake',
|
317
|
+
struct<
|
318
|
+
GetDataEnumKindContent<
|
319
|
+
Swap,
|
320
|
+
'StakeDexPrefundWithdrawStakeAndDepositStake'
|
321
|
+
>
|
322
|
+
>([['bridgeStakeSeed', u32()]]),
|
323
|
+
],
|
324
|
+
[
|
325
|
+
'Clone',
|
326
|
+
struct<GetDataEnumKindContent<Swap, 'Clone'>>([
|
327
|
+
['poolIndex', u8()],
|
328
|
+
['quantityIsInput', bool()],
|
329
|
+
['quantityIsCollateral', bool()],
|
330
|
+
]),
|
331
|
+
],
|
332
|
+
[
|
333
|
+
'SanctumS',
|
334
|
+
struct<GetDataEnumKindContent<Swap, 'SanctumS'>>([
|
335
|
+
['srcLstValueCalcAccs', u8()],
|
336
|
+
['dstLstValueCalcAccs', u8()],
|
337
|
+
['srcLstIndex', u32()],
|
338
|
+
['dstLstIndex', u32()],
|
339
|
+
]),
|
340
|
+
],
|
341
|
+
[
|
342
|
+
'SanctumSAddLiquidity',
|
343
|
+
struct<GetDataEnumKindContent<Swap, 'SanctumSAddLiquidity'>>([
|
344
|
+
['lstValueCalcAccs', u8()],
|
345
|
+
['lstIndex', u32()],
|
346
|
+
]),
|
347
|
+
],
|
348
|
+
[
|
349
|
+
'SanctumSRemoveLiquidity',
|
350
|
+
struct<GetDataEnumKindContent<Swap, 'SanctumSRemoveLiquidity'>>([
|
351
|
+
['lstValueCalcAccs', u8()],
|
352
|
+
['lstIndex', u32()],
|
353
|
+
]),
|
354
|
+
],
|
355
|
+
['RaydiumCP', unit()],
|
356
|
+
[
|
357
|
+
'WhirlpoolSwapV2',
|
358
|
+
struct<GetDataEnumKindContent<Swap, 'WhirlpoolSwapV2'>>([
|
359
|
+
['aToB', bool()],
|
360
|
+
[
|
361
|
+
'remainingAccountsInfo',
|
362
|
+
option(getRemainingAccountsInfoSerializer()),
|
363
|
+
],
|
364
|
+
]),
|
365
|
+
],
|
366
|
+
['OneIntro', unit()],
|
367
|
+
['PumpdotfunWrappedBuy', unit()],
|
368
|
+
['PumpdotfunWrappedSell', unit()],
|
369
|
+
['PerpsV2', unit()],
|
370
|
+
['PerpsV2AddLiquidity', unit()],
|
371
|
+
['PerpsV2RemoveLiquidity', unit()],
|
372
|
+
['MoonshotWrappedBuy', unit()],
|
373
|
+
['MoonshotWrappedSell', unit()],
|
374
|
+
['StabbleStableSwap', unit()],
|
375
|
+
['StabbleWeightedSwap', unit()],
|
376
|
+
[
|
377
|
+
'Obric',
|
378
|
+
struct<GetDataEnumKindContent<Swap, 'Obric'>>([['xToY', bool()]]),
|
379
|
+
],
|
380
|
+
],
|
381
|
+
{ description: 'Swap' }
|
382
|
+
) as Serializer<SwapArgs, Swap>;
|
383
|
+
}
|
384
|
+
|
385
|
+
// Data Enum Helpers.
|
386
|
+
export function swap(kind: 'Saber'): GetDataEnumKind<SwapArgs, 'Saber'>;
|
387
|
+
export function swap(
|
388
|
+
kind: 'SaberAddDecimalsDeposit'
|
389
|
+
): GetDataEnumKind<SwapArgs, 'SaberAddDecimalsDeposit'>;
|
390
|
+
export function swap(
|
391
|
+
kind: 'SaberAddDecimalsWithdraw'
|
392
|
+
): GetDataEnumKind<SwapArgs, 'SaberAddDecimalsWithdraw'>;
|
393
|
+
export function swap(kind: 'TokenSwap'): GetDataEnumKind<SwapArgs, 'TokenSwap'>;
|
394
|
+
export function swap(kind: 'Sencha'): GetDataEnumKind<SwapArgs, 'Sencha'>;
|
395
|
+
export function swap(kind: 'Step'): GetDataEnumKind<SwapArgs, 'Step'>;
|
396
|
+
export function swap(kind: 'Cropper'): GetDataEnumKind<SwapArgs, 'Cropper'>;
|
397
|
+
export function swap(kind: 'Raydium'): GetDataEnumKind<SwapArgs, 'Raydium'>;
|
398
|
+
export function swap(
|
399
|
+
kind: 'Crema',
|
400
|
+
data: GetDataEnumKindContent<SwapArgs, 'Crema'>
|
401
|
+
): GetDataEnumKind<SwapArgs, 'Crema'>;
|
402
|
+
export function swap(kind: 'Lifinity'): GetDataEnumKind<SwapArgs, 'Lifinity'>;
|
403
|
+
export function swap(kind: 'Mercurial'): GetDataEnumKind<SwapArgs, 'Mercurial'>;
|
404
|
+
export function swap(kind: 'Cykura'): GetDataEnumKind<SwapArgs, 'Cykura'>;
|
405
|
+
export function swap(
|
406
|
+
kind: 'Serum',
|
407
|
+
data: GetDataEnumKindContent<SwapArgs, 'Serum'>
|
408
|
+
): GetDataEnumKind<SwapArgs, 'Serum'>;
|
409
|
+
export function swap(
|
410
|
+
kind: 'MarinadeDeposit'
|
411
|
+
): GetDataEnumKind<SwapArgs, 'MarinadeDeposit'>;
|
412
|
+
export function swap(
|
413
|
+
kind: 'MarinadeUnstake'
|
414
|
+
): GetDataEnumKind<SwapArgs, 'MarinadeUnstake'>;
|
415
|
+
export function swap(
|
416
|
+
kind: 'Aldrin',
|
417
|
+
data: GetDataEnumKindContent<SwapArgs, 'Aldrin'>
|
418
|
+
): GetDataEnumKind<SwapArgs, 'Aldrin'>;
|
419
|
+
export function swap(
|
420
|
+
kind: 'AldrinV2',
|
421
|
+
data: GetDataEnumKindContent<SwapArgs, 'AldrinV2'>
|
422
|
+
): GetDataEnumKind<SwapArgs, 'AldrinV2'>;
|
423
|
+
export function swap(
|
424
|
+
kind: 'Whirlpool',
|
425
|
+
data: GetDataEnumKindContent<SwapArgs, 'Whirlpool'>
|
426
|
+
): GetDataEnumKind<SwapArgs, 'Whirlpool'>;
|
427
|
+
export function swap(
|
428
|
+
kind: 'Invariant',
|
429
|
+
data: GetDataEnumKindContent<SwapArgs, 'Invariant'>
|
430
|
+
): GetDataEnumKind<SwapArgs, 'Invariant'>;
|
431
|
+
export function swap(kind: 'Meteora'): GetDataEnumKind<SwapArgs, 'Meteora'>;
|
432
|
+
export function swap(kind: 'GooseFX'): GetDataEnumKind<SwapArgs, 'GooseFX'>;
|
433
|
+
export function swap(
|
434
|
+
kind: 'DeltaFi',
|
435
|
+
data: GetDataEnumKindContent<SwapArgs, 'DeltaFi'>
|
436
|
+
): GetDataEnumKind<SwapArgs, 'DeltaFi'>;
|
437
|
+
export function swap(kind: 'Balansol'): GetDataEnumKind<SwapArgs, 'Balansol'>;
|
438
|
+
export function swap(
|
439
|
+
kind: 'MarcoPolo',
|
440
|
+
data: GetDataEnumKindContent<SwapArgs, 'MarcoPolo'>
|
441
|
+
): GetDataEnumKind<SwapArgs, 'MarcoPolo'>;
|
442
|
+
export function swap(
|
443
|
+
kind: 'Dradex',
|
444
|
+
data: GetDataEnumKindContent<SwapArgs, 'Dradex'>
|
445
|
+
): GetDataEnumKind<SwapArgs, 'Dradex'>;
|
446
|
+
export function swap(
|
447
|
+
kind: 'LifinityV2'
|
448
|
+
): GetDataEnumKind<SwapArgs, 'LifinityV2'>;
|
449
|
+
export function swap(
|
450
|
+
kind: 'RaydiumClmm'
|
451
|
+
): GetDataEnumKind<SwapArgs, 'RaydiumClmm'>;
|
452
|
+
export function swap(
|
453
|
+
kind: 'Openbook',
|
454
|
+
data: GetDataEnumKindContent<SwapArgs, 'Openbook'>
|
455
|
+
): GetDataEnumKind<SwapArgs, 'Openbook'>;
|
456
|
+
export function swap(
|
457
|
+
kind: 'Phoenix',
|
458
|
+
data: GetDataEnumKindContent<SwapArgs, 'Phoenix'>
|
459
|
+
): GetDataEnumKind<SwapArgs, 'Phoenix'>;
|
460
|
+
export function swap(
|
461
|
+
kind: 'Symmetry',
|
462
|
+
data: GetDataEnumKindContent<SwapArgs, 'Symmetry'>
|
463
|
+
): GetDataEnumKind<SwapArgs, 'Symmetry'>;
|
464
|
+
export function swap(
|
465
|
+
kind: 'TokenSwapV2'
|
466
|
+
): GetDataEnumKind<SwapArgs, 'TokenSwapV2'>;
|
467
|
+
export function swap(
|
468
|
+
kind: 'HeliumTreasuryManagementRedeemV0'
|
469
|
+
): GetDataEnumKind<SwapArgs, 'HeliumTreasuryManagementRedeemV0'>;
|
470
|
+
export function swap(
|
471
|
+
kind: 'StakeDexStakeWrappedSol'
|
472
|
+
): GetDataEnumKind<SwapArgs, 'StakeDexStakeWrappedSol'>;
|
473
|
+
export function swap(
|
474
|
+
kind: 'StakeDexSwapViaStake',
|
475
|
+
data: GetDataEnumKindContent<SwapArgs, 'StakeDexSwapViaStake'>
|
476
|
+
): GetDataEnumKind<SwapArgs, 'StakeDexSwapViaStake'>;
|
477
|
+
export function swap(kind: 'GooseFXV2'): GetDataEnumKind<SwapArgs, 'GooseFXV2'>;
|
478
|
+
export function swap(kind: 'Perps'): GetDataEnumKind<SwapArgs, 'Perps'>;
|
479
|
+
export function swap(
|
480
|
+
kind: 'PerpsAddLiquidity'
|
481
|
+
): GetDataEnumKind<SwapArgs, 'PerpsAddLiquidity'>;
|
482
|
+
export function swap(
|
483
|
+
kind: 'PerpsRemoveLiquidity'
|
484
|
+
): GetDataEnumKind<SwapArgs, 'PerpsRemoveLiquidity'>;
|
485
|
+
export function swap(
|
486
|
+
kind: 'MeteoraDlmm'
|
487
|
+
): GetDataEnumKind<SwapArgs, 'MeteoraDlmm'>;
|
488
|
+
export function swap(
|
489
|
+
kind: 'OpenBookV2',
|
490
|
+
data: GetDataEnumKindContent<SwapArgs, 'OpenBookV2'>
|
491
|
+
): GetDataEnumKind<SwapArgs, 'OpenBookV2'>;
|
492
|
+
export function swap(
|
493
|
+
kind: 'RaydiumClmmV2'
|
494
|
+
): GetDataEnumKind<SwapArgs, 'RaydiumClmmV2'>;
|
495
|
+
export function swap(
|
496
|
+
kind: 'StakeDexPrefundWithdrawStakeAndDepositStake',
|
497
|
+
data: GetDataEnumKindContent<
|
498
|
+
SwapArgs,
|
499
|
+
'StakeDexPrefundWithdrawStakeAndDepositStake'
|
500
|
+
>
|
501
|
+
): GetDataEnumKind<SwapArgs, 'StakeDexPrefundWithdrawStakeAndDepositStake'>;
|
502
|
+
export function swap(
|
503
|
+
kind: 'Clone',
|
504
|
+
data: GetDataEnumKindContent<SwapArgs, 'Clone'>
|
505
|
+
): GetDataEnumKind<SwapArgs, 'Clone'>;
|
506
|
+
export function swap(
|
507
|
+
kind: 'SanctumS',
|
508
|
+
data: GetDataEnumKindContent<SwapArgs, 'SanctumS'>
|
509
|
+
): GetDataEnumKind<SwapArgs, 'SanctumS'>;
|
510
|
+
export function swap(
|
511
|
+
kind: 'SanctumSAddLiquidity',
|
512
|
+
data: GetDataEnumKindContent<SwapArgs, 'SanctumSAddLiquidity'>
|
513
|
+
): GetDataEnumKind<SwapArgs, 'SanctumSAddLiquidity'>;
|
514
|
+
export function swap(
|
515
|
+
kind: 'SanctumSRemoveLiquidity',
|
516
|
+
data: GetDataEnumKindContent<SwapArgs, 'SanctumSRemoveLiquidity'>
|
517
|
+
): GetDataEnumKind<SwapArgs, 'SanctumSRemoveLiquidity'>;
|
518
|
+
export function swap(kind: 'RaydiumCP'): GetDataEnumKind<SwapArgs, 'RaydiumCP'>;
|
519
|
+
export function swap(
|
520
|
+
kind: 'WhirlpoolSwapV2',
|
521
|
+
data: GetDataEnumKindContent<SwapArgs, 'WhirlpoolSwapV2'>
|
522
|
+
): GetDataEnumKind<SwapArgs, 'WhirlpoolSwapV2'>;
|
523
|
+
export function swap(kind: 'OneIntro'): GetDataEnumKind<SwapArgs, 'OneIntro'>;
|
524
|
+
export function swap(
|
525
|
+
kind: 'PumpdotfunWrappedBuy'
|
526
|
+
): GetDataEnumKind<SwapArgs, 'PumpdotfunWrappedBuy'>;
|
527
|
+
export function swap(
|
528
|
+
kind: 'PumpdotfunWrappedSell'
|
529
|
+
): GetDataEnumKind<SwapArgs, 'PumpdotfunWrappedSell'>;
|
530
|
+
export function swap(kind: 'PerpsV2'): GetDataEnumKind<SwapArgs, 'PerpsV2'>;
|
531
|
+
export function swap(
|
532
|
+
kind: 'PerpsV2AddLiquidity'
|
533
|
+
): GetDataEnumKind<SwapArgs, 'PerpsV2AddLiquidity'>;
|
534
|
+
export function swap(
|
535
|
+
kind: 'PerpsV2RemoveLiquidity'
|
536
|
+
): GetDataEnumKind<SwapArgs, 'PerpsV2RemoveLiquidity'>;
|
537
|
+
export function swap(
|
538
|
+
kind: 'MoonshotWrappedBuy'
|
539
|
+
): GetDataEnumKind<SwapArgs, 'MoonshotWrappedBuy'>;
|
540
|
+
export function swap(
|
541
|
+
kind: 'MoonshotWrappedSell'
|
542
|
+
): GetDataEnumKind<SwapArgs, 'MoonshotWrappedSell'>;
|
543
|
+
export function swap(
|
544
|
+
kind: 'StabbleStableSwap'
|
545
|
+
): GetDataEnumKind<SwapArgs, 'StabbleStableSwap'>;
|
546
|
+
export function swap(
|
547
|
+
kind: 'StabbleWeightedSwap'
|
548
|
+
): GetDataEnumKind<SwapArgs, 'StabbleWeightedSwap'>;
|
549
|
+
export function swap(
|
550
|
+
kind: 'Obric',
|
551
|
+
data: GetDataEnumKindContent<SwapArgs, 'Obric'>
|
552
|
+
): GetDataEnumKind<SwapArgs, 'Obric'>;
|
553
|
+
export function swap<K extends SwapArgs['__kind']>(
|
554
|
+
kind: K,
|
555
|
+
data?: any
|
556
|
+
): Extract<SwapArgs, { __kind: K }> {
|
557
|
+
return Array.isArray(data)
|
558
|
+
? { __kind: kind, fields: data }
|
559
|
+
: { __kind: kind, ...(data ?? {}) };
|
560
|
+
}
|
561
|
+
export function isSwap<K extends Swap['__kind']>(
|
562
|
+
kind: K,
|
563
|
+
value: Swap
|
564
|
+
): value is Swap & { __kind: K } {
|
565
|
+
return value.__kind === kind;
|
566
|
+
}
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import {
|
2
2
|
Instruction,
|
3
|
+
ProgramError,
|
3
4
|
TransactionBuilder,
|
4
5
|
Umi,
|
5
6
|
publicKey,
|
@@ -12,6 +13,7 @@ import {
|
|
12
13
|
NATIVE_MINT,
|
13
14
|
} from "@solana/spl-token";
|
14
15
|
import {
|
16
|
+
InvalidRebalanceConditionError,
|
15
17
|
LendingPlatform,
|
16
18
|
ReferralState,
|
17
19
|
SOLAUTO_PROGRAM_ID,
|
@@ -19,8 +21,10 @@ import {
|
|
19
21
|
SolautoRebalanceType,
|
20
22
|
TokenType,
|
21
23
|
convertReferralFees,
|
24
|
+
createSolautoProgram,
|
22
25
|
getMarginfiProtocolInteractionInstructionDataSerializer,
|
23
26
|
getMarginfiRebalanceInstructionDataSerializer,
|
27
|
+
getSolautoErrorFromCode,
|
24
28
|
isSolautoAction,
|
25
29
|
solautoAction,
|
26
30
|
} from "../generated";
|
@@ -50,12 +54,20 @@ import {
|
|
50
54
|
import { eligibleForRebalance } from "../utils/solauto/generalUtils";
|
51
55
|
import { getTokenAccount, getTokenAccountData } from "../utils/accountUtils";
|
52
56
|
import {
|
57
|
+
createMarginfiProgram,
|
53
58
|
getLendingAccountBorrowInstructionDataSerializer,
|
54
59
|
getLendingAccountDepositInstructionDataSerializer,
|
55
60
|
getLendingAccountRepayInstructionDataSerializer,
|
56
61
|
getLendingAccountWithdrawInstructionDataSerializer,
|
62
|
+
getMarginfiErrorFromName,
|
57
63
|
MARGINFI_PROGRAM_ID,
|
58
64
|
} from "../marginfi-sdk";
|
65
|
+
import { TxHandler } from "../clients";
|
66
|
+
import {
|
67
|
+
createJupiterProgram,
|
68
|
+
getJupiterErrorFromName,
|
69
|
+
JUPITER_PROGRAM_ID,
|
70
|
+
} from "../jupiter-sdk";
|
59
71
|
|
60
72
|
interface wSolTokenUsage {
|
61
73
|
wSolTokenAccount: PublicKey;
|
@@ -577,13 +589,28 @@ export function requiresRefreshBeforeRebalance(client: SolautoClient) {
|
|
577
589
|
) {
|
578
590
|
return true;
|
579
591
|
} else if (client.solautoPositionData && !client.selfManaged) {
|
580
|
-
|
592
|
+
if (
|
593
|
+
client.livePositionUpdates.supplyAdjustment > BigInt(0) ||
|
594
|
+
client.livePositionUpdates.debtAdjustment > BigInt(0)
|
595
|
+
) {
|
596
|
+
return false;
|
597
|
+
}
|
598
|
+
|
599
|
+
const oldSupply =
|
600
|
+
client.solautoPositionData.state.supply.amountUsed.baseUnit;
|
581
601
|
const oldDebt = client.solautoPositionData.state.debt.amountUsed.baseUnit;
|
582
602
|
|
583
|
-
const supplyDiff =
|
584
|
-
|
603
|
+
const supplyDiff =
|
604
|
+
(client.solautoPositionState?.supply.amountUsed.baseUnit ?? BigInt(0)) -
|
605
|
+
oldSupply;
|
606
|
+
const debtDiff =
|
607
|
+
(client.solautoPositionState?.debt.amountUsed.baseUnit ?? BigInt(0)) -
|
608
|
+
oldDebt;
|
585
609
|
|
586
|
-
if (
|
610
|
+
if (
|
611
|
+
Math.abs(Number(supplyDiff)) / Number(oldSupply) >= 0.01 ||
|
612
|
+
Math.abs(Number(debtDiff)) / Number(oldDebt) >= 0.01
|
613
|
+
) {
|
587
614
|
return true;
|
588
615
|
}
|
589
616
|
}
|
@@ -765,3 +792,47 @@ export async function convertReferralFeesToDestination(
|
|
765
792
|
|
766
793
|
return [tx, lookupTableAddresses];
|
767
794
|
}
|
795
|
+
|
796
|
+
export function getErrorInfo(tx: TransactionBuilder, error: any) {
|
797
|
+
let canBeIgnored = false;
|
798
|
+
let errorName: string | undefined = undefined;
|
799
|
+
let errorInfo: string | undefined = undefined;
|
800
|
+
|
801
|
+
try {
|
802
|
+
let programError: ProgramError | null = null;
|
803
|
+
|
804
|
+
if (typeof error === "object" && (error as any)["InstructionError"]) {
|
805
|
+
const err = (error as any)["InstructionError"];
|
806
|
+
const errIx = tx.getInstructions()[Math.max(0, err[0] - 2)];
|
807
|
+
const errCode = err[1]["Custom"];
|
808
|
+
|
809
|
+
if (errIx.programId === SOLAUTO_PROGRAM_ID) {
|
810
|
+
programError = getSolautoErrorFromCode(errCode, createSolautoProgram());
|
811
|
+
if (
|
812
|
+
programError?.name ===
|
813
|
+
new InvalidRebalanceConditionError(createSolautoProgram()).name
|
814
|
+
) {
|
815
|
+
canBeIgnored = true;
|
816
|
+
}
|
817
|
+
} else if (errIx.programId === MARGINFI_PROGRAM_ID) {
|
818
|
+
programError = getMarginfiErrorFromName(
|
819
|
+
errCode,
|
820
|
+
createMarginfiProgram()
|
821
|
+
);
|
822
|
+
} else if (errIx.programId === JUPITER_PROGRAM_ID) {
|
823
|
+
programError = getJupiterErrorFromName(errCode, createJupiterProgram());
|
824
|
+
}
|
825
|
+
}
|
826
|
+
|
827
|
+
if (programError) {
|
828
|
+
errorName = programError?.name;
|
829
|
+
errorName = programError?.message;
|
830
|
+
}
|
831
|
+
} catch {}
|
832
|
+
|
833
|
+
return {
|
834
|
+
errorName: errorName ?? "Unknown error",
|
835
|
+
errorInfo: errorInfo ?? "Unknown error",
|
836
|
+
canBeIgnored,
|
837
|
+
};
|
838
|
+
}
|