@alphafi/alphafi-sdk 0.0.37 → 0.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +115 -12
  2. package/dist/cjs/adminFunctions.d.ts +6 -0
  3. package/dist/cjs/adminFunctions.d.ts.map +1 -0
  4. package/dist/cjs/adminFunctions.js +52 -0
  5. package/dist/cjs/adminFunctions.js.map +1 -0
  6. package/dist/cjs/common/coins.d.ts.map +1 -1
  7. package/dist/cjs/common/coins.js +1 -2
  8. package/dist/cjs/common/coins.js.map +1 -1
  9. package/dist/cjs/common/constants.d.ts +138 -0
  10. package/dist/cjs/common/constants.d.ts.map +1 -1
  11. package/dist/cjs/common/constants.js +106 -9
  12. package/dist/cjs/common/constants.js.map +1 -1
  13. package/dist/cjs/common/maps.d.ts +3 -1
  14. package/dist/cjs/common/maps.d.ts.map +1 -1
  15. package/dist/cjs/common/maps.js +233 -1
  16. package/dist/cjs/common/maps.js.map +1 -1
  17. package/dist/cjs/common/types.d.ts +112 -3
  18. package/dist/cjs/common/types.d.ts.map +1 -1
  19. package/dist/cjs/common/types.js.map +1 -1
  20. package/dist/cjs/getTVL.d.ts +5 -0
  21. package/dist/cjs/getTVL.d.ts.map +1 -0
  22. package/dist/cjs/getTVL.js +109 -0
  23. package/dist/cjs/getTVL.js.map +1 -0
  24. package/dist/cjs/graphql/getMultiReceipts.d.ts.map +1 -1
  25. package/dist/cjs/graphql/getMultiReceipts.js +16 -57
  26. package/dist/cjs/graphql/getMultiReceipts.js.map +1 -1
  27. package/dist/cjs/index.d.ts +12 -2
  28. package/dist/cjs/index.d.ts.map +1 -1
  29. package/dist/cjs/index.js +22 -4
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.d.ts +3 -0
  32. package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.d.ts.map +1 -0
  33. package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.js +44 -0
  34. package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.js.map +1 -0
  35. package/dist/cjs/sui-sdk/events/fetchEvents.d.ts.map +1 -1
  36. package/dist/cjs/sui-sdk/events/fetchEvents.js +41 -0
  37. package/dist/cjs/sui-sdk/events/fetchEvents.js.map +1 -1
  38. package/dist/cjs/sui-sdk/events/types.d.ts +9 -1
  39. package/dist/cjs/sui-sdk/events/types.d.ts.map +1 -1
  40. package/dist/cjs/sui-sdk/events/types.js.map +1 -1
  41. package/dist/cjs/sui-sdk/functions/fetchUserVaults.js.map +1 -1
  42. package/dist/cjs/sui-sdk/functions/getReceipts.d.ts +8 -6
  43. package/dist/cjs/sui-sdk/functions/getReceipts.d.ts.map +1 -1
  44. package/dist/cjs/sui-sdk/functions/getReceipts.js +75 -30
  45. package/dist/cjs/sui-sdk/functions/getReceipts.js.map +1 -1
  46. package/dist/cjs/transactions/alpha.d.ts +2 -2
  47. package/dist/cjs/transactions/alpha.d.ts.map +1 -1
  48. package/dist/cjs/transactions/alpha.js +2 -2
  49. package/dist/cjs/transactions/alpha.js.map +1 -1
  50. package/dist/cjs/transactions/bluefin.d.ts +8 -2
  51. package/dist/cjs/transactions/bluefin.d.ts.map +1 -1
  52. package/dist/cjs/transactions/bluefin.js +355 -7
  53. package/dist/cjs/transactions/bluefin.js.map +1 -1
  54. package/dist/cjs/transactions/bucket.d.ts +2 -2
  55. package/dist/cjs/transactions/bucket.js +2 -2
  56. package/dist/cjs/transactions/bucket.js.map +1 -1
  57. package/dist/cjs/transactions/cetus.d.ts +4 -4
  58. package/dist/cjs/transactions/cetus.d.ts.map +1 -1
  59. package/dist/cjs/transactions/cetus.js +27 -29
  60. package/dist/cjs/transactions/cetus.js.map +1 -1
  61. package/dist/cjs/transactions/collect_rewards.d.ts.map +1 -1
  62. package/dist/cjs/transactions/collect_rewards.js +23 -2
  63. package/dist/cjs/transactions/collect_rewards.js.map +1 -1
  64. package/dist/cjs/transactions/deposit.d.ts +2 -2
  65. package/dist/cjs/transactions/deposit.d.ts.map +1 -1
  66. package/dist/cjs/transactions/deposit.js +19 -9
  67. package/dist/cjs/transactions/deposit.js.map +1 -1
  68. package/dist/cjs/transactions/navi-looping.d.ts +33 -0
  69. package/dist/cjs/transactions/navi-looping.d.ts.map +1 -0
  70. package/dist/cjs/transactions/navi-looping.js +597 -0
  71. package/dist/cjs/transactions/navi-looping.js.map +1 -0
  72. package/dist/cjs/transactions/navi.d.ts +2 -2
  73. package/dist/cjs/transactions/navi.d.ts.map +1 -1
  74. package/dist/cjs/transactions/navi.js +137 -9
  75. package/dist/cjs/transactions/navi.js.map +1 -1
  76. package/dist/cjs/transactions/withdraw.d.ts +3 -2
  77. package/dist/cjs/transactions/withdraw.d.ts.map +1 -1
  78. package/dist/cjs/transactions/withdraw.js +39 -15
  79. package/dist/cjs/transactions/withdraw.js.map +1 -1
  80. package/dist/esm/adminFunctions.d.ts +6 -0
  81. package/dist/esm/adminFunctions.d.ts.map +1 -0
  82. package/dist/esm/adminFunctions.js +45 -0
  83. package/dist/esm/adminFunctions.js.map +1 -0
  84. package/dist/esm/common/coins.d.ts.map +1 -1
  85. package/dist/esm/common/coins.js +1 -2
  86. package/dist/esm/common/coins.js.map +1 -1
  87. package/dist/esm/common/constants.d.ts +138 -0
  88. package/dist/esm/common/constants.d.ts.map +1 -1
  89. package/dist/esm/common/constants.js +106 -9
  90. package/dist/esm/common/constants.js.map +1 -1
  91. package/dist/esm/common/maps.d.ts +3 -1
  92. package/dist/esm/common/maps.d.ts.map +1 -1
  93. package/dist/esm/common/maps.js +233 -1
  94. package/dist/esm/common/maps.js.map +1 -1
  95. package/dist/esm/common/types.d.ts +112 -3
  96. package/dist/esm/common/types.d.ts.map +1 -1
  97. package/dist/esm/common/types.js.map +1 -1
  98. package/dist/esm/getTVL.d.ts +5 -0
  99. package/dist/esm/getTVL.d.ts.map +1 -0
  100. package/dist/esm/getTVL.js +103 -0
  101. package/dist/esm/getTVL.js.map +1 -0
  102. package/dist/esm/graphql/getMultiReceipts.d.ts.map +1 -1
  103. package/dist/esm/graphql/getMultiReceipts.js +16 -57
  104. package/dist/esm/graphql/getMultiReceipts.js.map +1 -1
  105. package/dist/esm/index.d.ts +12 -2
  106. package/dist/esm/index.d.ts.map +1 -1
  107. package/dist/esm/index.js +14 -2
  108. package/dist/esm/index.js.map +1 -1
  109. package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.d.ts +3 -0
  110. package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.d.ts.map +1 -0
  111. package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.js +41 -0
  112. package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.js.map +1 -0
  113. package/dist/esm/sui-sdk/events/fetchEvents.d.ts.map +1 -1
  114. package/dist/esm/sui-sdk/events/fetchEvents.js +41 -0
  115. package/dist/esm/sui-sdk/events/fetchEvents.js.map +1 -1
  116. package/dist/esm/sui-sdk/events/types.d.ts +9 -1
  117. package/dist/esm/sui-sdk/events/types.d.ts.map +1 -1
  118. package/dist/esm/sui-sdk/events/types.js.map +1 -1
  119. package/dist/esm/sui-sdk/functions/fetchUserVaults.js.map +1 -1
  120. package/dist/esm/sui-sdk/functions/getReceipts.d.ts +8 -6
  121. package/dist/esm/sui-sdk/functions/getReceipts.d.ts.map +1 -1
  122. package/dist/esm/sui-sdk/functions/getReceipts.js +75 -31
  123. package/dist/esm/sui-sdk/functions/getReceipts.js.map +1 -1
  124. package/dist/esm/transactions/alpha.d.ts +2 -2
  125. package/dist/esm/transactions/alpha.d.ts.map +1 -1
  126. package/dist/esm/transactions/alpha.js +2 -2
  127. package/dist/esm/transactions/alpha.js.map +1 -1
  128. package/dist/esm/transactions/bluefin.d.ts +8 -2
  129. package/dist/esm/transactions/bluefin.d.ts.map +1 -1
  130. package/dist/esm/transactions/bluefin.js +352 -6
  131. package/dist/esm/transactions/bluefin.js.map +1 -1
  132. package/dist/esm/transactions/bucket.d.ts +2 -2
  133. package/dist/esm/transactions/bucket.js +2 -2
  134. package/dist/esm/transactions/bucket.js.map +1 -1
  135. package/dist/esm/transactions/cetus.d.ts +4 -4
  136. package/dist/esm/transactions/cetus.d.ts.map +1 -1
  137. package/dist/esm/transactions/cetus.js +27 -29
  138. package/dist/esm/transactions/cetus.js.map +1 -1
  139. package/dist/esm/transactions/collect_rewards.d.ts.map +1 -1
  140. package/dist/esm/transactions/collect_rewards.js +23 -2
  141. package/dist/esm/transactions/collect_rewards.js.map +1 -1
  142. package/dist/esm/transactions/deposit.d.ts +2 -2
  143. package/dist/esm/transactions/deposit.d.ts.map +1 -1
  144. package/dist/esm/transactions/deposit.js +18 -8
  145. package/dist/esm/transactions/deposit.js.map +1 -1
  146. package/dist/esm/transactions/navi-looping.d.ts +33 -0
  147. package/dist/esm/transactions/navi-looping.d.ts.map +1 -0
  148. package/dist/esm/transactions/navi-looping.js +585 -0
  149. package/dist/esm/transactions/navi-looping.js.map +1 -0
  150. package/dist/esm/transactions/navi.d.ts +2 -2
  151. package/dist/esm/transactions/navi.d.ts.map +1 -1
  152. package/dist/esm/transactions/navi.js +137 -9
  153. package/dist/esm/transactions/navi.js.map +1 -1
  154. package/dist/esm/transactions/withdraw.d.ts +3 -2
  155. package/dist/esm/transactions/withdraw.d.ts.map +1 -1
  156. package/dist/esm/transactions/withdraw.js +39 -17
  157. package/dist/esm/transactions/withdraw.js.map +1 -1
  158. package/package.json +4 -2
@@ -1,5 +1,6 @@
1
1
  import { Transaction } from "@mysten/sui/transactions";
2
2
  import { PoolName } from "../common/types.js";
3
- export declare function withdrawTxb(amount: string, // liquidity for doube-asset and xTokens for single-asset
4
- poolName: PoolName, address: string, withdrawFromLocked?: boolean): Promise<Transaction>;
3
+ export declare function withdrawTxb(xTokensAmount: string, poolName: PoolName, address: string): Promise<Transaction>;
4
+ export declare function coinAmountToXTokensSingleAsset(amount: string, poolName: PoolName): Promise<string>;
5
+ export declare function coinAmountToXTokensDoubleAsset(amount: string, poolName: PoolName, isAmountA: boolean): Promise<string>;
5
6
  //# sourceMappingURL=withdraw.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../../../src/transactions/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAc9C,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EAAE,yDAAyD;AACzE,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,kBAAkB,CAAC,EAAE,OAAO,wBAmC7B"}
1
+ {"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../../../src/transactions/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAiB9C,wBAAsB,WAAW,CAC/B,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,wBA0ChB;AAED,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,MAAM,CAAC,CAOjB"}
@@ -1,49 +1,71 @@
1
1
  import { Transaction } from "@mysten/sui/transactions";
2
2
  import { doubleAssetPoolCoinMap, poolInfo } from "../common/maps.js";
3
- import { withdrawCetusAlphaSuiTxb, withdrawCetusSuiTxb, withdrawCetusTxb, } from "./cetus.js";
4
- import { withdrawBluefinSuiFirstTxb, withdrawBluefinType1Txb, } from "./bluefin.js";
3
+ import { getLiquidity, withdrawCetusAlphaSuiTxb, withdrawCetusSuiTxb, withdrawCetusTxb, } from "./cetus.js";
4
+ import { withdrawBluefinSuiFirstTxb, withdrawBluefinType1Txb, withdrawBluefinType2Txb, } from "./bluefin.js";
5
5
  import { naviWithdrawTx } from "./navi.js";
6
6
  import { bucketWithdrawTx } from "./bucket.js";
7
- import { withdrawAlphaTxb } from "./alpha.js";
8
- export async function withdrawTxb(amount, // liquidity for doube-asset and xTokens for single-asset
9
- poolName, address, withdrawFromLocked) {
7
+ import { getPoolExchangeRate } from "../sui-sdk/functions/getReceipts.js";
8
+ import { loopingWithdraw } from "./navi-looping.js";
9
+ export async function withdrawTxb(xTokensAmount, poolName, address) {
10
10
  let txb = new Transaction();
11
11
  if (poolInfo[poolName].parentProtocolName === "CETUS") {
12
12
  const coin1 = doubleAssetPoolCoinMap[poolName].coin1;
13
13
  const coin2 = doubleAssetPoolCoinMap[poolName].coin2;
14
14
  if (coin1 === "CETUS" && coin2 === "SUI") {
15
- txb = await withdrawCetusSuiTxb(amount, poolName, { address });
15
+ txb = await withdrawCetusSuiTxb(xTokensAmount, poolName, {
16
+ address,
17
+ });
16
18
  }
17
19
  else if (coin2 === "SUI") {
18
- txb = await withdrawCetusAlphaSuiTxb(amount, poolName, { address });
20
+ txb = await withdrawCetusAlphaSuiTxb(xTokensAmount, poolName, {
21
+ address,
22
+ });
19
23
  }
20
24
  else {
21
- txb = await withdrawCetusTxb(amount, poolName, { address });
25
+ txb = await withdrawCetusTxb(xTokensAmount, poolName, {
26
+ address,
27
+ });
22
28
  }
23
29
  }
24
30
  else if (poolInfo[poolName].parentProtocolName === "BLUEFIN") {
25
31
  const coin1 = doubleAssetPoolCoinMap[poolName].coin1;
26
- if (coin1 === "SUI") {
27
- txb = await withdrawBluefinSuiFirstTxb(amount, poolName, {
32
+ if (poolName === "BLUEFIN-NAVX-VSUI" || poolName === "BLUEFIN-ALPHA-USDC") {
33
+ txb = await withdrawBluefinType2Txb(xTokensAmount, poolName, {
34
+ address,
35
+ });
36
+ }
37
+ else if (coin1 === "SUI") {
38
+ txb = await withdrawBluefinSuiFirstTxb(xTokensAmount, poolName, {
28
39
  address,
29
40
  });
30
41
  }
31
42
  else {
32
- txb = await withdrawBluefinType1Txb(amount, poolName, {
43
+ txb = await withdrawBluefinType1Txb(xTokensAmount, poolName, {
33
44
  address,
34
45
  });
35
46
  }
36
47
  }
37
48
  else if (poolInfo[poolName].parentProtocolName === "NAVI") {
38
- txb = await naviWithdrawTx(Number(amount), poolName, { address });
49
+ if (poolInfo[poolName].strategyType === "LOOPING") {
50
+ txb = await loopingWithdraw(poolName, xTokensAmount, { address });
51
+ }
52
+ else
53
+ txb = await naviWithdrawTx(xTokensAmount, poolName, { address });
39
54
  }
40
55
  else if (poolInfo[poolName].parentProtocolName === "BUCKET") {
41
- txb = await bucketWithdrawTx(Number(amount), { address });
42
- }
43
- else if (poolInfo[poolName].parentProtocolName === "ALPHAFI" &&
44
- withdrawFromLocked) {
45
- txb = await withdrawAlphaTxb(amount, withdrawFromLocked, address);
56
+ txb = await bucketWithdrawTx(xTokensAmount, { address });
46
57
  }
47
58
  return txb;
48
59
  }
60
+ export async function coinAmountToXTokensSingleAsset(amount, poolName) {
61
+ const exchangeRate = await getPoolExchangeRate(poolName, true);
62
+ const xTokens = Math.floor(parseFloat(amount) / exchangeRate.toNumber());
63
+ return xTokens.toString();
64
+ }
65
+ export async function coinAmountToXTokensDoubleAsset(amount, poolName, isAmountA) {
66
+ const liquidity = await getLiquidity(poolName, isAmountA, amount);
67
+ const exchangeRate = await getPoolExchangeRate(poolName, true);
68
+ const xTokens = Math.floor(parseFloat(liquidity.liquidityAmount.toString()) / exchangeRate.toNumber());
69
+ return xTokens.toString();
70
+ }
49
71
  //# sourceMappingURL=withdraw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../../src/transactions/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAc,EAAE,yDAAyD;AACzE,QAAkB,EAClB,OAAe,EACf,kBAA4B;IAE5B,IAAI,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;IAC5B,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,KAAK,OAAO,EAAE,CAAC;QACtD,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;QACrD,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;QACrD,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACzC,GAAG,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC;aAAM,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YAC3B,GAAG,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QAC/D,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;QACrD,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,GAAG,GAAG,MAAM,0BAA0B,CAAC,MAAM,EAAE,QAAQ,EAAE;gBACvD,OAAO;aACR,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,MAAM,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE;gBACpD,OAAO;aACR,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,KAAK,MAAM,EAAE,CAAC;QAC5D,GAAG,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACpE,CAAC;SAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QAC9D,GAAG,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;SAAM,IACL,QAAQ,CAAC,QAAQ,CAAC,CAAC,kBAAkB,KAAK,SAAS;QACnD,kBAAkB,EAClB,CAAC;QACD,GAAG,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import { Transaction } from \"@mysten/sui/transactions\";\nimport { doubleAssetPoolCoinMap, poolInfo } from \"../common/maps.js\";\nimport { PoolName } from \"../common/types.js\";\nimport {\n withdrawCetusAlphaSuiTxb,\n withdrawCetusSuiTxb,\n withdrawCetusTxb,\n} from \"./cetus.js\";\nimport {\n withdrawBluefinSuiFirstTxb,\n withdrawBluefinType1Txb,\n} from \"./bluefin.js\";\nimport { naviWithdrawTx } from \"./navi.js\";\nimport { bucketWithdrawTx } from \"./bucket.js\";\nimport { withdrawAlphaTxb } from \"./alpha.js\";\n\nexport async function withdrawTxb(\n amount: string, // liquidity for doube-asset and xTokens for single-asset\n poolName: PoolName,\n address: string,\n withdrawFromLocked?: boolean, // needed for withdraw from alpha-vault\n) {\n let txb = new Transaction();\n if (poolInfo[poolName].parentProtocolName === \"CETUS\") {\n const coin1 = doubleAssetPoolCoinMap[poolName].coin1;\n const coin2 = doubleAssetPoolCoinMap[poolName].coin2;\n if (coin1 === \"CETUS\" && coin2 === \"SUI\") {\n txb = await withdrawCetusSuiTxb(amount, poolName, { address });\n } else if (coin2 === \"SUI\") {\n txb = await withdrawCetusAlphaSuiTxb(amount, poolName, { address });\n } else {\n txb = await withdrawCetusTxb(amount, poolName, { address });\n }\n } else if (poolInfo[poolName].parentProtocolName === \"BLUEFIN\") {\n const coin1 = doubleAssetPoolCoinMap[poolName].coin1;\n if (coin1 === \"SUI\") {\n txb = await withdrawBluefinSuiFirstTxb(amount, poolName, {\n address,\n });\n } else {\n txb = await withdrawBluefinType1Txb(amount, poolName, {\n address,\n });\n }\n } else if (poolInfo[poolName].parentProtocolName === \"NAVI\") {\n txb = await naviWithdrawTx(Number(amount), poolName, { address });\n } else if (poolInfo[poolName].parentProtocolName === \"BUCKET\") {\n txb = await bucketWithdrawTx(Number(amount), { address });\n } else if (\n poolInfo[poolName].parentProtocolName === \"ALPHAFI\" &&\n withdrawFromLocked\n ) {\n txb = await withdrawAlphaTxb(amount, withdrawFromLocked, address);\n }\n return txb;\n}\n"]}
1
+ {"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../../src/transactions/withdraw.ts"],"names":[],"mappings":"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","sourcesContent":["import { Transaction } from \"@mysten/sui/transactions\";\nimport { doubleAssetPoolCoinMap, poolInfo } from \"../common/maps.js\";\nimport { PoolName } from \"../common/types.js\";\nimport {\n getLiquidity,\n withdrawCetusAlphaSuiTxb,\n withdrawCetusSuiTxb,\n withdrawCetusTxb,\n} from \"./cetus.js\";\nimport {\n withdrawBluefinSuiFirstTxb,\n withdrawBluefinType1Txb,\n withdrawBluefinType2Txb,\n} from \"./bluefin.js\";\nimport { naviWithdrawTx } from \"./navi.js\";\nimport { bucketWithdrawTx } from \"./bucket.js\";\nimport { getPoolExchangeRate } from \"../sui-sdk/functions/getReceipts.js\";\nimport { loopingWithdraw } from \"./navi-looping.js\";\n\nexport async function withdrawTxb(\n xTokensAmount: string,\n poolName: PoolName,\n address: string,\n) {\n let txb = new Transaction();\n if (poolInfo[poolName].parentProtocolName === \"CETUS\") {\n const coin1 = doubleAssetPoolCoinMap[poolName].coin1;\n const coin2 = doubleAssetPoolCoinMap[poolName].coin2;\n if (coin1 === \"CETUS\" && coin2 === \"SUI\") {\n txb = await withdrawCetusSuiTxb(xTokensAmount, poolName, {\n address,\n });\n } else if (coin2 === \"SUI\") {\n txb = await withdrawCetusAlphaSuiTxb(xTokensAmount, poolName, {\n address,\n });\n } else {\n txb = await withdrawCetusTxb(xTokensAmount, poolName, {\n address,\n });\n }\n } else if (poolInfo[poolName].parentProtocolName === \"BLUEFIN\") {\n const coin1 = doubleAssetPoolCoinMap[poolName].coin1;\n if (poolName === \"BLUEFIN-NAVX-VSUI\" || poolName === \"BLUEFIN-ALPHA-USDC\") {\n txb = await withdrawBluefinType2Txb(xTokensAmount, poolName, {\n address,\n });\n } else if (coin1 === \"SUI\") {\n txb = await withdrawBluefinSuiFirstTxb(xTokensAmount, poolName, {\n address,\n });\n } else {\n txb = await withdrawBluefinType1Txb(xTokensAmount, poolName, {\n address,\n });\n }\n } else if (poolInfo[poolName].parentProtocolName === \"NAVI\") {\n if (poolInfo[poolName].strategyType === \"LOOPING\") {\n txb = await loopingWithdraw(poolName, xTokensAmount, { address });\n } else txb = await naviWithdrawTx(xTokensAmount, poolName, { address });\n } else if (poolInfo[poolName].parentProtocolName === \"BUCKET\") {\n txb = await bucketWithdrawTx(xTokensAmount, { address });\n }\n return txb;\n}\n\nexport async function coinAmountToXTokensSingleAsset(\n amount: string,\n poolName: PoolName,\n): Promise<string> {\n const exchangeRate = await getPoolExchangeRate(poolName, true);\n const xTokens = Math.floor(parseFloat(amount) / exchangeRate.toNumber());\n return xTokens.toString();\n}\n\nexport async function coinAmountToXTokensDoubleAsset(\n amount: string,\n poolName: PoolName,\n isAmountA: boolean,\n): Promise<string> {\n const liquidity = await getLiquidity(poolName, isAmountA, amount);\n const exchangeRate = await getPoolExchangeRate(poolName, true);\n const xTokens = Math.floor(\n parseFloat(liquidity.liquidityAmount.toString()) / exchangeRate.toNumber(),\n );\n return xTokens.toString();\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alphafi/alphafi-sdk",
3
- "version": "0.0.37",
3
+ "version": "0.0.39",
4
4
  "description": "Official AlphaFi SDK to access AlphaFi data",
5
5
  "type": "module",
6
6
  "main": "dist/cjs/index.js",
@@ -65,11 +65,13 @@
65
65
  "@apollo/client": "^3.11.4",
66
66
  "@cetusprotocol/cetus-sui-clmm-sdk": "5.1.6",
67
67
  "@hop.ag/sdk": "^3.3.0",
68
- "@mysten/sui": "1.15.0",
69
68
  "bignumber.js": "^9.1.2",
70
69
  "bn.js": "^5.2.1",
71
70
  "decimal.js": "^10.4.3",
72
71
  "graphql": "^16.9.0",
73
72
  "react": "^18.3.1"
73
+ },
74
+ "peerDependencies": {
75
+ "@mysten/sui": "1.15.0"
74
76
  }
75
77
  }