@gearbox-protocol/sdk 13.3.0-next.2 → 13.3.0

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 (219) hide show
  1. package/dist/cjs/common-utils/charts/credit-manager-payload.js +16 -0
  2. package/dist/cjs/common-utils/charts/credit-manager.js +134 -0
  3. package/dist/cjs/common-utils/charts/credit-session.js +257 -0
  4. package/dist/cjs/common-utils/charts/credit-sessions-payload.js +16 -0
  5. package/dist/cjs/common-utils/charts/graph-payload.js +16 -0
  6. package/dist/cjs/common-utils/charts/index.js +36 -0
  7. package/dist/cjs/common-utils/charts/pool-payload.js +16 -0
  8. package/dist/cjs/common-utils/charts/pool.js +199 -0
  9. package/dist/cjs/common-utils/charts/token-data.js +91 -0
  10. package/dist/cjs/common-utils/index.js +4 -0
  11. package/dist/cjs/common-utils/static/index.js +28 -0
  12. package/dist/cjs/common-utils/static/migration-config.js +16 -0
  13. package/dist/cjs/common-utils/static/pool-config.js +16 -0
  14. package/dist/cjs/common-utils/static/strategy.js +16 -0
  15. package/dist/cjs/common-utils/static/trading-pair.js +16 -0
  16. package/dist/cjs/common-utils/utils/{assetsMath.js → assets-math.js} +13 -13
  17. package/dist/cjs/common-utils/utils/{bigintMath.js → bigint-math.js} +3 -3
  18. package/dist/cjs/common-utils/utils/creditAccount/{calcHealthFactor.js → calc-health-factor.js} +9 -9
  19. package/dist/cjs/common-utils/utils/creditAccount/{calcOverallAPY.js → calc-overall-apy.js} +8 -8
  20. package/dist/cjs/common-utils/utils/creditAccount/{calcQuotaBorrowRate.js → calc-quota-borrow-rate.js} +3 -3
  21. package/dist/cjs/common-utils/utils/creditAccount/{calcRelativeBaseBorrowRate.js → calc-relative-base-borrow-rate.js} +3 -3
  22. package/dist/cjs/common-utils/utils/creditAccount/debt.js +4 -4
  23. package/dist/cjs/common-utils/utils/creditAccount/{getTimeToLiquidation.js → get-time-to-liquidation.js} +3 -3
  24. package/dist/cjs/common-utils/utils/creditAccount/index.js +16 -16
  25. package/dist/cjs/common-utils/utils/creditAccount/{liquidationPrice.js → liquidation-price.js} +3 -3
  26. package/dist/cjs/common-utils/utils/creditAccount/{quotaUtils.js → quota-utils.js} +8 -8
  27. package/dist/cjs/common-utils/utils/creditAccount/sort.js +3 -3
  28. package/dist/cjs/common-utils/utils/index.js +6 -8
  29. package/dist/cjs/common-utils/utils/{priceMath.js → price-math.js} +3 -3
  30. package/dist/cjs/dev/AccountOpener.js +5 -45
  31. package/dist/cjs/dev/index.js +0 -2
  32. package/dist/cjs/plugins/zappers/ZappersPlugin.js +144 -0
  33. package/dist/cjs/{sdk/market/ZapperRegister.js → plugins/zappers/extraZappers.js} +6 -110
  34. package/dist/cjs/plugins/zappers/index.js +26 -0
  35. package/dist/cjs/plugins/zappers/package.json +1 -0
  36. package/dist/cjs/rewards/apy/index.js +24 -0
  37. package/dist/cjs/rewards/apy/output-details.js +16 -0
  38. package/dist/cjs/rewards/apy/output.js +16 -0
  39. package/dist/cjs/rewards/index.js +24 -0
  40. package/dist/cjs/rewards/package.json +1 -0
  41. package/dist/cjs/rewards/rewards/api.js +226 -0
  42. package/dist/cjs/rewards/rewards/apy.js +177 -0
  43. package/dist/cjs/rewards/rewards/common.js +16 -0
  44. package/dist/cjs/rewards/rewards/extra-apy.js +132 -0
  45. package/dist/cjs/rewards/rewards/index.js +28 -0
  46. package/dist/cjs/rewards/rewards/merkl-api.js +52 -0
  47. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +104 -462
  48. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +5 -16
  49. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -1
  50. package/dist/cjs/sdk/base/TokensMeta.js +32 -255
  51. package/dist/cjs/sdk/base/index.js +0 -2
  52. package/dist/cjs/sdk/chain/chains.js +1 -2
  53. package/dist/cjs/sdk/constants/index.js +2 -0
  54. package/dist/cjs/sdk/{base/token-types.js → constants/phantom-tokens.js} +3 -9
  55. package/dist/cjs/sdk/market/MarketRegister.js +2 -2
  56. package/dist/cjs/sdk/market/MarketSuite.js +0 -6
  57. package/dist/cjs/sdk/market/index.js +1 -3
  58. package/dist/cjs/sdk/market/pool/PoolSuite.js +0 -3
  59. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +2 -17
  60. package/dist/cjs/sdk/market/pool/index.js +0 -4
  61. package/dist/cjs/sdk/pools/AbstractPoolService.js +137 -0
  62. package/dist/cjs/{abi/iStateSerializer.js → sdk/pools/PoolServiceV310.js} +8 -14
  63. package/dist/cjs/sdk/pools/createPoolService.js +35 -0
  64. package/dist/cjs/sdk/pools/index.js +4 -2
  65. package/dist/cjs/sdk/utils/AddressMap.js +1 -1
  66. package/dist/cjs/sdk/utils/viem/sendRawTx.js +0 -16
  67. package/dist/esm/common-utils/charts/credit-manager.js +115 -0
  68. package/dist/esm/common-utils/charts/credit-session.js +233 -0
  69. package/dist/esm/common-utils/charts/credit-sessions-payload.js +0 -0
  70. package/dist/esm/common-utils/charts/graph-payload.js +0 -0
  71. package/dist/esm/common-utils/charts/index.js +8 -0
  72. package/dist/esm/common-utils/charts/pool-payload.js +0 -0
  73. package/dist/esm/common-utils/charts/pool.js +179 -0
  74. package/dist/esm/common-utils/charts/token-data.js +67 -0
  75. package/dist/esm/common-utils/index.js +2 -0
  76. package/dist/esm/common-utils/static/index.js +4 -0
  77. package/dist/esm/common-utils/static/migration-config.js +0 -0
  78. package/dist/esm/common-utils/static/pool-config.js +0 -0
  79. package/dist/esm/common-utils/static/strategy.js +0 -0
  80. package/dist/esm/common-utils/static/trading-pair.js +0 -0
  81. package/dist/esm/common-utils/utils/{assetsMath.js → assets-math.js} +2 -2
  82. package/dist/esm/common-utils/utils/creditAccount/{calcHealthFactor.js → calc-health-factor.js} +2 -2
  83. package/dist/esm/common-utils/utils/creditAccount/{calcOverallAPY.js → calc-overall-apy.js} +1 -1
  84. package/dist/esm/common-utils/utils/creditAccount/debt.js +2 -2
  85. package/dist/esm/common-utils/utils/creditAccount/index.js +8 -8
  86. package/dist/esm/common-utils/utils/creditAccount/{quotaUtils.js → quota-utils.js} +1 -1
  87. package/dist/esm/common-utils/utils/creditAccount/sort.js +1 -1
  88. package/dist/esm/common-utils/utils/index.js +3 -4
  89. package/dist/esm/dev/AccountOpener.js +6 -47
  90. package/dist/esm/dev/index.js +0 -2
  91. package/dist/esm/plugins/zappers/ZappersPlugin.js +126 -0
  92. package/dist/esm/{sdk/market/ZapperRegister.js → plugins/zappers/extraZappers.js} +2 -109
  93. package/dist/esm/plugins/zappers/index.js +3 -0
  94. package/dist/esm/plugins/zappers/package.json +1 -0
  95. package/dist/esm/plugins/zappers/types.js +0 -0
  96. package/dist/esm/rewards/apy/index.js +2 -0
  97. package/dist/esm/rewards/apy/output-details.js +0 -0
  98. package/dist/esm/rewards/apy/output.js +0 -0
  99. package/dist/esm/rewards/index.js +2 -0
  100. package/dist/esm/rewards/package.json +1 -0
  101. package/dist/esm/rewards/rewards/api.js +204 -0
  102. package/dist/esm/rewards/rewards/apy.js +160 -0
  103. package/dist/esm/rewards/rewards/common.js +0 -0
  104. package/dist/esm/rewards/rewards/extra-apy.js +101 -0
  105. package/dist/esm/rewards/rewards/index.js +4 -0
  106. package/dist/esm/rewards/rewards/merkl-api.js +18 -0
  107. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +104 -462
  108. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +5 -16
  109. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -1
  110. package/dist/esm/sdk/base/TokensMeta.js +32 -261
  111. package/dist/esm/sdk/base/index.js +0 -1
  112. package/dist/esm/sdk/chain/chains.js +1 -2
  113. package/dist/esm/sdk/constants/index.js +1 -0
  114. package/dist/esm/sdk/{base/token-types.js → constants/phantom-tokens.js} +0 -4
  115. package/dist/esm/sdk/market/MarketRegister.js +2 -2
  116. package/dist/esm/sdk/market/MarketSuite.js +0 -6
  117. package/dist/esm/sdk/market/index.js +0 -1
  118. package/dist/esm/sdk/market/pool/PoolSuite.js +0 -3
  119. package/dist/esm/sdk/market/pool/PoolV310Contract.js +2 -17
  120. package/dist/esm/sdk/market/pool/index.js +0 -2
  121. package/dist/esm/sdk/pools/AbstractPoolService.js +113 -0
  122. package/dist/esm/sdk/pools/PoolServiceV310.js +6 -0
  123. package/dist/esm/sdk/pools/createPoolService.js +11 -0
  124. package/dist/esm/sdk/pools/index.js +2 -1
  125. package/dist/esm/sdk/utils/AddressMap.js +1 -1
  126. package/dist/esm/sdk/utils/viem/sendRawTx.js +1 -19
  127. package/dist/types/common-utils/charts/credit-manager-payload.d.ts +50 -0
  128. package/dist/types/common-utils/charts/credit-manager.d.ts +48 -0
  129. package/dist/types/common-utils/charts/credit-session.d.ts +111 -0
  130. package/dist/types/common-utils/charts/credit-sessions-payload.d.ts +111 -0
  131. package/dist/types/common-utils/charts/graph-payload.d.ts +10 -0
  132. package/dist/types/common-utils/charts/index.d.ts +8 -0
  133. package/dist/types/common-utils/charts/pool-payload.d.ts +111 -0
  134. package/dist/types/common-utils/charts/pool.d.ts +91 -0
  135. package/dist/types/common-utils/charts/token-data.d.ts +20 -0
  136. package/dist/types/common-utils/index.d.ts +2 -0
  137. package/dist/types/common-utils/static/index.d.ts +4 -0
  138. package/dist/types/common-utils/static/migration-config.d.ts +10 -0
  139. package/dist/types/common-utils/static/pool-config.d.ts +11 -0
  140. package/dist/types/common-utils/static/strategy.d.ts +78 -0
  141. package/dist/types/common-utils/static/trading-pair.d.ts +15 -0
  142. package/dist/types/common-utils/utils/creditAccount/index.d.ts +8 -8
  143. package/dist/types/common-utils/utils/index.d.ts +3 -4
  144. package/dist/types/dev/index.d.ts +1 -1
  145. package/dist/types/plugins/zappers/ZappersPlugin.d.ts +18 -0
  146. package/dist/types/plugins/zappers/extraZappers.d.ts +6 -0
  147. package/dist/types/plugins/zappers/index.d.ts +3 -0
  148. package/dist/types/plugins/zappers/types.d.ts +12 -0
  149. package/dist/types/rewards/apy/index.d.ts +2 -0
  150. package/dist/types/rewards/apy/output-details.d.ts +97 -0
  151. package/dist/types/rewards/apy/output.d.ts +22 -0
  152. package/dist/types/rewards/index.d.ts +2 -0
  153. package/dist/types/rewards/rewards/api.d.ts +49 -0
  154. package/dist/types/rewards/rewards/apy.d.ts +41 -0
  155. package/dist/types/rewards/rewards/common.d.ts +16 -0
  156. package/dist/types/rewards/rewards/extra-apy.d.ts +30 -0
  157. package/dist/types/rewards/rewards/index.d.ts +4 -0
  158. package/dist/types/rewards/rewards/merkl-api.d.ts +45 -0
  159. package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +27 -123
  160. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +1 -1
  161. package/dist/types/sdk/accounts/types.d.ts +8 -108
  162. package/dist/types/sdk/base/TokensMeta.d.ts +18 -34
  163. package/dist/types/sdk/base/index.d.ts +0 -1
  164. package/dist/types/sdk/base/types.d.ts +1 -0
  165. package/dist/types/sdk/chain/chains.d.ts +1 -1
  166. package/dist/types/sdk/constants/index.d.ts +1 -0
  167. package/dist/types/sdk/constants/phantom-tokens.d.ts +2 -0
  168. package/dist/types/sdk/market/MarketRegister.d.ts +2 -2
  169. package/dist/types/sdk/market/MarketSuite.d.ts +0 -3
  170. package/dist/types/sdk/market/index.d.ts +0 -1
  171. package/dist/types/sdk/market/pool/PoolSuite.d.ts +0 -2
  172. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +2 -6
  173. package/dist/types/sdk/market/pool/index.d.ts +0 -2
  174. package/dist/types/sdk/pools/AbstractPoolService.d.ts +9 -0
  175. package/dist/types/sdk/pools/PoolServiceV310.d.ts +4 -0
  176. package/dist/types/sdk/pools/createPoolService.d.ts +3 -0
  177. package/dist/types/sdk/pools/index.d.ts +2 -1
  178. package/dist/types/sdk/pools/types.d.ts +63 -84
  179. package/dist/types/sdk/utils/AddressMap.d.ts +1 -1
  180. package/dist/types/sdk/utils/viem/sendRawTx.d.ts +1 -5
  181. package/package.json +6 -1
  182. package/dist/cjs/abi/310/iSecuritizeDegenNFT.js +0 -263
  183. package/dist/cjs/abi/310/iSecuritizeKYCFactory.js +0 -278
  184. package/dist/cjs/common-utils/utils/endpoints.js +0 -65
  185. package/dist/cjs/sdk/market/pool/SecuritizeKYCFactory.js +0 -97
  186. package/dist/cjs/sdk/pools/PoolService.js +0 -391
  187. package/dist/esm/abi/310/iSecuritizeDegenNFT.js +0 -239
  188. package/dist/esm/abi/310/iSecuritizeKYCFactory.js +0 -254
  189. package/dist/esm/abi/iStateSerializer.js +0 -12
  190. package/dist/esm/common-utils/utils/endpoints.js +0 -41
  191. package/dist/esm/sdk/market/pool/SecuritizeKYCFactory.js +0 -73
  192. package/dist/esm/sdk/pools/PoolService.js +0 -371
  193. package/dist/types/abi/310/iSecuritizeDegenNFT.d.ts +0 -324
  194. package/dist/types/abi/310/iSecuritizeKYCFactory.d.ts +0 -322
  195. package/dist/types/abi/iStateSerializer.d.ts +0 -11
  196. package/dist/types/common-utils/utils/endpoints.d.ts +0 -27
  197. package/dist/types/sdk/base/token-types.d.ts +0 -33
  198. package/dist/types/sdk/market/ZapperRegister.d.ts +0 -17
  199. package/dist/types/sdk/market/pool/SecuritizeKYCFactory.d.ts +0 -345
  200. package/dist/types/sdk/market/types.d.ts +0 -10
  201. package/dist/types/sdk/pools/PoolService.d.ts +0 -14
  202. /package/dist/cjs/{sdk/market → plugins/zappers}/types.js +0 -0
  203. /package/dist/esm/{sdk/market/types.js → common-utils/charts/credit-manager-payload.js} +0 -0
  204. /package/dist/esm/common-utils/utils/{bigintMath.js → bigint-math.js} +0 -0
  205. /package/dist/esm/common-utils/utils/creditAccount/{calcQuotaBorrowRate.js → calc-quota-borrow-rate.js} +0 -0
  206. /package/dist/esm/common-utils/utils/creditAccount/{calcRelativeBaseBorrowRate.js → calc-relative-base-borrow-rate.js} +0 -0
  207. /package/dist/esm/common-utils/utils/creditAccount/{getTimeToLiquidation.js → get-time-to-liquidation.js} +0 -0
  208. /package/dist/esm/common-utils/utils/creditAccount/{liquidationPrice.js → liquidation-price.js} +0 -0
  209. /package/dist/esm/common-utils/utils/{priceMath.js → price-math.js} +0 -0
  210. /package/dist/types/common-utils/utils/{assetsMath.d.ts → assets-math.d.ts} +0 -0
  211. /package/dist/types/common-utils/utils/{bigintMath.d.ts → bigint-math.d.ts} +0 -0
  212. /package/dist/types/common-utils/utils/creditAccount/{calcHealthFactor.d.ts → calc-health-factor.d.ts} +0 -0
  213. /package/dist/types/common-utils/utils/creditAccount/{calcOverallAPY.d.ts → calc-overall-apy.d.ts} +0 -0
  214. /package/dist/types/common-utils/utils/creditAccount/{calcQuotaBorrowRate.d.ts → calc-quota-borrow-rate.d.ts} +0 -0
  215. /package/dist/types/common-utils/utils/creditAccount/{calcRelativeBaseBorrowRate.d.ts → calc-relative-base-borrow-rate.d.ts} +0 -0
  216. /package/dist/types/common-utils/utils/creditAccount/{getTimeToLiquidation.d.ts → get-time-to-liquidation.d.ts} +0 -0
  217. /package/dist/types/common-utils/utils/creditAccount/{liquidationPrice.d.ts → liquidation-price.d.ts} +0 -0
  218. /package/dist/types/common-utils/utils/creditAccount/{quotaUtils.d.ts → quota-utils.d.ts} +0 -0
  219. /package/dist/types/common-utils/utils/{priceMath.d.ts → price-math.d.ts} +0 -0
@@ -1,391 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var PoolService_exports = {};
20
- __export(PoolService_exports, {
21
- PoolService: () => PoolService
22
- });
23
- module.exports = __toCommonJS(PoolService_exports);
24
- var import_generated = require("../../abi/310/generated.js");
25
- var import_iERC20 = require("../../abi/iERC20.js");
26
- var import_iERC20ZapperDeposits = require("../../abi/iERC20ZapperDeposits.js");
27
- var import_iETHZapperDeposits = require("../../abi/iETHZapperDeposits.js");
28
- var import_iZapper = require("../../abi/iZapper.js");
29
- var import_base = require("../base/index.js");
30
- var import__ = require("../index.js");
31
- var import_utils = require("../utils/index.js");
32
- const NATIVE_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
33
- const POOL_TOKENS_TO_MIGRATE = new import_utils.AddressMap([
34
- // v2 diesels
35
- ["0x6CFaF95457d7688022FC53e7AbE052ef8DFBbdBA", "dDAI"],
36
- ["0xc411dB5f5Eb3f7d552F9B8454B2D74097ccdE6E3", "dUSDC"],
37
- ["0xe753260F1955e8678DCeA8887759e07aa57E8c54", "dWBTC"],
38
- ["0xF21fc650C1B34eb0FDE786D52d23dA99Db3D6278", "dWETH"],
39
- ["0x2158034dB06f06dcB9A786D2F1F8c38781bA779d", "dwstETH"],
40
- ["0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47", "dFRAX"]
41
- ]);
42
- class PoolService extends import_base.SDKConstruct {
43
- getDepositTokensIn(pool) {
44
- const underlying = this.#describeUnderlying(pool);
45
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
46
- switch (underlying.contractType) {
47
- case import_base.KYC_UNDERLYING_DEFAULT:
48
- return this.#depositTokensIn(pool, false);
49
- case import_base.KYC_UNDERLYING_ON_DEMAND:
50
- return [underlying.asset];
51
- }
52
- }
53
- return this.#depositTokensIn(pool, true);
54
- }
55
- getDepositTokensOut(pool, tokenIn) {
56
- const underlying = this.#describeUnderlying(pool);
57
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
58
- switch (underlying.contractType) {
59
- case import_base.KYC_UNDERLYING_DEFAULT:
60
- return this.#depositTokensOut(pool, tokenIn, false);
61
- case import_base.KYC_UNDERLYING_ON_DEMAND:
62
- return [];
63
- }
64
- }
65
- return this.#depositTokensOut(pool, tokenIn, true);
66
- }
67
- getDepositMetadata(pool, tokenIn, tokenOut) {
68
- const underlying = this.#describeUnderlying(pool);
69
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
70
- switch (underlying.contractType) {
71
- case import_base.KYC_UNDERLYING_DEFAULT: {
72
- return this.#depositMetadata(
73
- "kyc-default",
74
- pool,
75
- tokenIn,
76
- tokenOut,
77
- false
78
- );
79
- }
80
- case import_base.KYC_UNDERLYING_ON_DEMAND:
81
- return {
82
- zapper: void 0,
83
- approveTarget: underlying.liquidityProvider,
84
- permissible: false,
85
- type: "kyc-on-demand"
86
- };
87
- }
88
- }
89
- return this.#depositMetadata("classic", pool, tokenIn, tokenOut, true);
90
- }
91
- addLiquidity(props) {
92
- const { collateral, meta, permit, referralCode, pool, wallet } = props;
93
- const underlying = this.#describeUnderlying(pool);
94
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
95
- if (underlying.contractType === import_base.KYC_UNDERLYING_ON_DEMAND) {
96
- return void 0;
97
- }
98
- }
99
- const { zapper } = meta;
100
- if (zapper && (0, import__.hexEq)(zapper.tokenIn.addr, NATIVE_ADDRESS)) {
101
- return {
102
- target: zapper.baseParams.addr,
103
- abi: import_iETHZapperDeposits.iethZapperDepositsAbi,
104
- functionName: "depositWithReferral",
105
- args: [wallet, referralCode],
106
- value: collateral.balance
107
- };
108
- } else if (zapper) {
109
- return permit ? {
110
- target: zapper.baseParams.addr,
111
- abi: import_iERC20ZapperDeposits.ierc20ZapperDepositsAbi,
112
- functionName: "depositWithReferralAndPermit",
113
- args: [
114
- collateral.balance,
115
- wallet,
116
- referralCode,
117
- permit.deadline,
118
- permit.v,
119
- permit.r,
120
- permit.s
121
- ]
122
- } : {
123
- target: zapper.baseParams.addr,
124
- abi: import_iERC20ZapperDeposits.ierc20ZapperDepositsAbi,
125
- functionName: "depositWithReferral",
126
- args: [collateral.balance, wallet, referralCode]
127
- };
128
- } else {
129
- return {
130
- target: pool,
131
- abi: import_generated.iPoolV310Abi,
132
- functionName: "depositWithReferral",
133
- args: [collateral.balance, wallet, referralCode]
134
- };
135
- }
136
- }
137
- getWithdrawalTokensIn(pool) {
138
- const underlying = this.#describeUnderlying(pool);
139
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
140
- switch (underlying.contractType) {
141
- case import_base.KYC_UNDERLYING_DEFAULT:
142
- return this.#withdrawalTokensIn(pool, false);
143
- case import_base.KYC_UNDERLYING_ON_DEMAND:
144
- return [];
145
- }
146
- }
147
- return this.#withdrawalTokensIn(pool, true);
148
- }
149
- getWithdrawalTokensOut(pool, tokenIn) {
150
- const underlying = this.#describeUnderlying(pool);
151
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
152
- switch (underlying.contractType) {
153
- case import_base.KYC_UNDERLYING_DEFAULT:
154
- return this.#withdrawalTokensOut(pool, tokenIn, false);
155
- case import_base.KYC_UNDERLYING_ON_DEMAND:
156
- return [underlying.asset];
157
- }
158
- }
159
- return this.#withdrawalTokensOut(pool, tokenIn, true);
160
- }
161
- removeLiquidity(props) {
162
- const { pool, amount, meta, wallet, permit } = props;
163
- const underlying = this.#describeUnderlying(pool);
164
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
165
- if (underlying.contractType === import_base.KYC_UNDERLYING_ON_DEMAND) {
166
- return {
167
- abi: import_iERC20.ierc20Abi,
168
- functionName: "approve",
169
- args: [underlying.liquidityProvider, 0n],
170
- target: underlying.asset
171
- };
172
- }
173
- }
174
- if (meta.zapper) {
175
- return permit ? {
176
- target: meta.zapper.baseParams.addr,
177
- abi: import_iZapper.iZapperAbi,
178
- functionName: "redeemWithPermit",
179
- args: [
180
- amount,
181
- wallet,
182
- permit.deadline,
183
- permit.v,
184
- permit.r,
185
- permit.s
186
- ]
187
- } : {
188
- target: meta.zapper.baseParams.addr,
189
- abi: import_iZapper.iZapperAbi,
190
- functionName: "redeem",
191
- args: [amount, wallet]
192
- };
193
- }
194
- return {
195
- target: pool,
196
- abi: import_generated.iPoolV310Abi,
197
- functionName: "redeem",
198
- args: [amount, wallet, wallet]
199
- };
200
- }
201
- getWithdrawalMetadata(pool, tokenIn, tokenOut) {
202
- const underlying = this.#describeUnderlying(pool);
203
- if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
204
- switch (underlying.contractType) {
205
- case import_base.KYC_UNDERLYING_DEFAULT: {
206
- return this.#withdrawalMetadata(
207
- "kyc-default",
208
- pool,
209
- tokenIn,
210
- tokenOut,
211
- false
212
- );
213
- }
214
- case import_base.KYC_UNDERLYING_ON_DEMAND:
215
- return {
216
- zapper: void 0,
217
- approveTarget: void 0,
218
- permissible: false,
219
- type: "kyc-on-demand"
220
- };
221
- }
222
- }
223
- return this.#withdrawalMetadata("classic", pool, tokenIn, tokenOut, true);
224
- }
225
- /**
226
- * Filter out v2 diesel tokens (can come from migration v2 -> v3 zappers)
227
- * Also omits "migration" zappers (v3 -> v3.1) since they are treated in a different way
228
- */
229
- #getDepositZappers(poolAddr) {
230
- const zappers = this.sdk.marketRegister.poolZappers(poolAddr);
231
- return zappers.filter(
232
- (z) => z.type !== "migration" && !POOL_TOKENS_TO_MIGRATE.has(z.tokenIn.addr)
233
- );
234
- }
235
- #depositTokensIn(poolAddr, allowDirectDeposit) {
236
- const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
237
- const result = new import__.AddressSet();
238
- if (allowDirectDeposit) {
239
- result.add(pool.underlying);
240
- }
241
- const zappers = this.#getDepositZappers(poolAddr);
242
- for (const z of zappers) {
243
- if ((0, import__.hexEq)(z.tokenOut.addr, poolAddr)) {
244
- result.add(z.tokenIn.addr);
245
- }
246
- }
247
- if (result.size === 0) {
248
- throw new Error(
249
- `No tokensIn found for pool ${this.labelAddress(poolAddr)}`
250
- );
251
- }
252
- return result.asArray();
253
- }
254
- #withdrawalTokensIn(poolAddr, allowDirectDeposit) {
255
- const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
256
- const result = new import__.AddressSet();
257
- if (allowDirectDeposit && pool) {
258
- result.add(poolAddr);
259
- }
260
- const zappers = this.#getDepositZappers(poolAddr);
261
- for (const z of zappers) {
262
- result.add(z.tokenOut.addr);
263
- }
264
- if (result.size === 0) {
265
- throw new Error(
266
- `No tokensIn found for pool ${this.labelAddress(poolAddr)}`
267
- );
268
- }
269
- return result.asArray();
270
- }
271
- #depositTokensOut(poolAddr, tokenIn, allowDirectDeposit) {
272
- const result = new import__.AddressSet();
273
- const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
274
- const zappers = this.#getDepositZappers(poolAddr);
275
- for (const z of zappers) {
276
- if ((0, import__.hexEq)(z.tokenIn.addr, tokenIn)) {
277
- result.add(z.tokenOut.addr);
278
- }
279
- }
280
- if (allowDirectDeposit && (0, import__.hexEq)(tokenIn, pool.underlying)) {
281
- result.add(poolAddr);
282
- }
283
- if (result.size === 0) {
284
- throw new Error(
285
- `No tokensOut found for tokenIn ${this.labelAddress(
286
- tokenIn
287
- )} on pool ${this.labelAddress(poolAddr)}`
288
- );
289
- }
290
- const r = result.asArray();
291
- return r;
292
- }
293
- #withdrawalTokensOut(poolAddr, tokenIn, allowDirectDeposit) {
294
- const result = new import__.AddressSet();
295
- const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
296
- const zappers = this.#getDepositZappers(poolAddr);
297
- for (const z of zappers) {
298
- if ((0, import__.hexEq)(z.tokenOut.addr, tokenIn)) {
299
- result.add(z.tokenIn.addr);
300
- }
301
- }
302
- if (allowDirectDeposit && (0, import__.hexEq)(tokenIn, poolAddr)) {
303
- result.add(pool.underlying);
304
- }
305
- if (result.size === 0) {
306
- throw new Error(
307
- `No tokensOut found for tokenIn ${this.labelAddress(
308
- tokenIn
309
- )} on pool ${this.labelAddress(poolAddr)}`
310
- );
311
- }
312
- const r = result.asArray();
313
- return r;
314
- }
315
- /**
316
- * Filter out v2 diesel tokens (can come from migration v2 -> v3 zappers)
317
- * Also omits "migration" zappers (v3 -> v3.1) since they are treated in a different way
318
- */
319
- #getDepositZapper(poolAddr, tokenIn, tokenOut) {
320
- const zappers = this.sdk.marketRegister.getZapper(poolAddr, tokenIn, tokenOut)?.filter(
321
- (z) => z.type !== "migration" && !POOL_TOKENS_TO_MIGRATE.has(z.tokenIn.addr)
322
- );
323
- if (zappers && zappers.length > 1) {
324
- throw new Error(
325
- `Multiple zappers found for tokenIn ${this.labelAddress(
326
- tokenIn
327
- )} and tokenOut ${this.labelAddress(
328
- tokenOut
329
- )} on pool ${this.labelAddress(poolAddr)}`
330
- );
331
- }
332
- return zappers?.[0];
333
- }
334
- #depositMetadata(type, poolAddr, tokenIn, tokenOut, allowDirectDeposit) {
335
- if (!tokenOut) {
336
- throw new Error("tokenOut is required for classic pool deposit");
337
- }
338
- const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
339
- const zapper = this.#getDepositZapper(poolAddr, tokenIn, tokenOut);
340
- if (!zapper && !allowDirectDeposit) {
341
- throw new Error(
342
- `No zapper found for tokenIn ${this.labelAddress(
343
- tokenIn
344
- )} and tokenOut ${this.labelAddress(
345
- tokenOut
346
- )} on pool ${this.labelAddress(poolAddr)}`
347
- );
348
- }
349
- return {
350
- zapper,
351
- // zapper or pool itself
352
- approveTarget: zapper?.baseParams.addr ?? pool.pool.address,
353
- // TODO: instead of permissible, return permitType зависимости от tokenIn
354
- // "none" | "eip2612" | "dai_like";
355
- permissible: !!zapper && !(0, import__.hexEq)(tokenIn, NATIVE_ADDRESS),
356
- type
357
- };
358
- }
359
- #withdrawalMetadata(type, poolAddr, tokenIn, tokenOut, allowDirectDeposit) {
360
- if (!tokenOut) {
361
- throw new Error("tokenOut is required for classic pool deposit");
362
- }
363
- const zapper = this.#getDepositZapper(poolAddr, tokenOut, tokenIn);
364
- if (!zapper && !allowDirectDeposit) {
365
- throw new Error(
366
- `No zapper found for tokenIn ${this.labelAddress(
367
- tokenOut
368
- )} and tokenOut ${this.labelAddress(
369
- tokenIn
370
- )} on pool ${this.labelAddress(poolAddr)}`
371
- );
372
- }
373
- return {
374
- zapper,
375
- // zapper or pool itself
376
- approveTarget: zapper?.baseParams.addr,
377
- // TODO: instead of permissible, return permitType зависимости от tokenIn
378
- // "none" | "eip2612" | "dai_like";
379
- permissible: !!zapper,
380
- type
381
- };
382
- }
383
- #describeUnderlying(pool) {
384
- const market = this.sdk.marketRegister.findByPool(pool);
385
- return this.sdk.tokensMeta.mustGet(market.underlying);
386
- }
387
- }
388
- // Annotate the CommonJS export names for ESM import in node:
389
- 0 && (module.exports = {
390
- PoolService
391
- });
@@ -1,239 +0,0 @@
1
- const iSecuritizeDegenNFTAbi = [
2
- {
3
- type: "function",
4
- name: "addRegistrar",
5
- inputs: [{ name: "registrar", type: "address", internalType: "address" }],
6
- outputs: [],
7
- stateMutability: "nonpayable"
8
- },
9
- {
10
- type: "function",
11
- name: "burn",
12
- inputs: [
13
- { name: "wallet", type: "address", internalType: "address" },
14
- { name: "", type: "uint256", internalType: "uint256" }
15
- ],
16
- outputs: [],
17
- stateMutability: "nonpayable"
18
- },
19
- {
20
- type: "function",
21
- name: "contractType",
22
- inputs: [],
23
- outputs: [{ name: "", type: "bytes32", internalType: "bytes32" }],
24
- stateMutability: "view"
25
- },
26
- {
27
- type: "function",
28
- name: "getDSTokens",
29
- inputs: [],
30
- outputs: [{ name: "", type: "address[]", internalType: "address[]" }],
31
- stateMutability: "view"
32
- },
33
- {
34
- type: "function",
35
- name: "getFactory",
36
- inputs: [],
37
- outputs: [{ name: "", type: "address", internalType: "address" }],
38
- stateMutability: "view"
39
- },
40
- {
41
- type: "function",
42
- name: "getOperators",
43
- inputs: [{ name: "token", type: "address", internalType: "address" }],
44
- outputs: [{ name: "", type: "address[]", internalType: "address[]" }],
45
- stateMutability: "view"
46
- },
47
- {
48
- type: "function",
49
- name: "getRegisteredTokens",
50
- inputs: [
51
- { name: "creditAccount", type: "address", internalType: "address" }
52
- ],
53
- outputs: [{ name: "", type: "address[]", internalType: "address[]" }],
54
- stateMutability: "view"
55
- },
56
- {
57
- type: "function",
58
- name: "getRegistrar",
59
- inputs: [{ name: "token", type: "address", internalType: "address" }],
60
- outputs: [{ name: "", type: "address", internalType: "address" }],
61
- stateMutability: "view"
62
- },
63
- {
64
- type: "function",
65
- name: "isDSToken",
66
- inputs: [{ name: "token", type: "address", internalType: "address" }],
67
- outputs: [{ name: "", type: "bool", internalType: "bool" }],
68
- stateMutability: "view"
69
- },
70
- {
71
- type: "function",
72
- name: "isOperator",
73
- inputs: [
74
- { name: "token", type: "address", internalType: "address" },
75
- { name: "operator", type: "address", internalType: "address" }
76
- ],
77
- outputs: [{ name: "", type: "bool", internalType: "bool" }],
78
- stateMutability: "view"
79
- },
80
- {
81
- type: "function",
82
- name: "mint",
83
- inputs: [{ name: "wallet", type: "address", internalType: "address" }],
84
- outputs: [],
85
- stateMutability: "nonpayable"
86
- },
87
- {
88
- type: "function",
89
- name: "registerCreditAccount",
90
- inputs: [
91
- { name: "creditAccount", type: "address", internalType: "address" },
92
- { name: "tokens", type: "address[]", internalType: "address[]" }
93
- ],
94
- outputs: [],
95
- stateMutability: "nonpayable"
96
- },
97
- {
98
- type: "function",
99
- name: "registerHelperAccount",
100
- inputs: [
101
- { name: "creditAccount", type: "address", internalType: "address" },
102
- { name: "helperAccount", type: "address", internalType: "address" },
103
- { name: "token", type: "address", internalType: "address" }
104
- ],
105
- outputs: [],
106
- stateMutability: "nonpayable"
107
- },
108
- {
109
- type: "function",
110
- name: "serialize",
111
- inputs: [],
112
- outputs: [{ name: "serializedData", type: "bytes", internalType: "bytes" }],
113
- stateMutability: "view"
114
- },
115
- {
116
- type: "function",
117
- name: "setOperatorStatus",
118
- inputs: [
119
- { name: "token", type: "address", internalType: "address" },
120
- { name: "operator", type: "address", internalType: "address" },
121
- { name: "approved", type: "bool", internalType: "bool" }
122
- ],
123
- outputs: [],
124
- stateMutability: "nonpayable"
125
- },
126
- {
127
- type: "function",
128
- name: "version",
129
- inputs: [],
130
- outputs: [{ name: "", type: "uint256", internalType: "uint256" }],
131
- stateMutability: "view"
132
- },
133
- {
134
- type: "event",
135
- name: "Burn",
136
- inputs: [
137
- {
138
- name: "wallet",
139
- type: "address",
140
- indexed: true,
141
- internalType: "address"
142
- }
143
- ],
144
- anonymous: false
145
- },
146
- {
147
- type: "event",
148
- name: "Mint",
149
- inputs: [
150
- {
151
- name: "wallet",
152
- type: "address",
153
- indexed: true,
154
- internalType: "address"
155
- }
156
- ],
157
- anonymous: false
158
- },
159
- {
160
- type: "event",
161
- name: "SetOperatorStatus",
162
- inputs: [
163
- {
164
- name: "token",
165
- type: "address",
166
- indexed: true,
167
- internalType: "address"
168
- },
169
- {
170
- name: "operator",
171
- type: "address",
172
- indexed: true,
173
- internalType: "address"
174
- },
175
- { name: "approved", type: "bool", indexed: false, internalType: "bool" }
176
- ],
177
- anonymous: false
178
- },
179
- {
180
- type: "event",
181
- name: "SetRegistrar",
182
- inputs: [
183
- {
184
- name: "token",
185
- type: "address",
186
- indexed: true,
187
- internalType: "address"
188
- },
189
- {
190
- name: "registrar",
191
- type: "address",
192
- indexed: true,
193
- internalType: "address"
194
- }
195
- ],
196
- anonymous: false
197
- },
198
- {
199
- type: "error",
200
- name: "CallerIsNotCreditFacadeException",
201
- inputs: [{ name: "caller", type: "address", internalType: "address" }]
202
- },
203
- {
204
- type: "error",
205
- name: "CallerIsNotFactoryException",
206
- inputs: [{ name: "caller", type: "address", internalType: "address" }]
207
- },
208
- {
209
- type: "error",
210
- name: "CallerIsNotInstanceOwnerException",
211
- inputs: [{ name: "caller", type: "address", internalType: "address" }]
212
- },
213
- {
214
- type: "error",
215
- name: "CallerIsNotOperatorException",
216
- inputs: [
217
- { name: "token", type: "address", internalType: "address" },
218
- { name: "caller", type: "address", internalType: "address" }
219
- ]
220
- },
221
- {
222
- type: "error",
223
- name: "RegistrarNotSetForTokenException",
224
- inputs: [{ name: "token", type: "address", internalType: "address" }]
225
- },
226
- {
227
- type: "error",
228
- name: "UnknownTokenException",
229
- inputs: [{ name: "token", type: "address", internalType: "address" }]
230
- },
231
- {
232
- type: "error",
233
- name: "UnknownWalletException",
234
- inputs: [{ name: "wallet", type: "address", internalType: "address" }]
235
- }
236
- ];
237
- export {
238
- iSecuritizeDegenNFTAbi
239
- };