@eth-optimism/actions-sdk 0.0.4 → 0.1.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 (201) hide show
  1. package/dist/actions.d.ts +19 -7
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +49 -19
  4. package/dist/actions.js.map +1 -1
  5. package/dist/actions.test.js +30 -80
  6. package/dist/actions.test.js.map +1 -1
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/lend/core/LendProvider.d.ts +3 -2
  11. package/dist/lend/core/LendProvider.d.ts.map +1 -1
  12. package/dist/lend/core/LendProvider.js.map +1 -1
  13. package/dist/lend/core/__tests__/LendProvider.test.js +18 -48
  14. package/dist/lend/core/__tests__/LendProvider.test.js.map +1 -1
  15. package/dist/lend/index.d.ts +1 -0
  16. package/dist/lend/index.d.ts.map +1 -1
  17. package/dist/lend/index.js +1 -0
  18. package/dist/lend/index.js.map +1 -1
  19. package/dist/lend/namespaces/ActionsLendNamespace.d.ts +35 -8
  20. package/dist/lend/namespaces/ActionsLendNamespace.d.ts.map +1 -1
  21. package/dist/lend/namespaces/ActionsLendNamespace.js +45 -8
  22. package/dist/lend/namespaces/ActionsLendNamespace.js.map +1 -1
  23. package/dist/lend/namespaces/WalletLendNamespace.d.ts +35 -8
  24. package/dist/lend/namespaces/WalletLendNamespace.d.ts.map +1 -1
  25. package/dist/lend/namespaces/WalletLendNamespace.js +59 -11
  26. package/dist/lend/namespaces/WalletLendNamespace.js.map +1 -1
  27. package/dist/lend/namespaces/__tests__/ActionsLendNamespace.spec.js +23 -15
  28. package/dist/lend/namespaces/__tests__/ActionsLendNamespace.spec.js.map +1 -1
  29. package/dist/lend/namespaces/__tests__/WalletLendNamespace.spec.js +29 -11
  30. package/dist/lend/namespaces/__tests__/WalletLendNamespace.spec.js.map +1 -1
  31. package/dist/lend/providers/aave/AaveLendProvider.d.ts +82 -0
  32. package/dist/lend/providers/aave/AaveLendProvider.d.ts.map +1 -0
  33. package/dist/lend/providers/aave/AaveLendProvider.js +346 -0
  34. package/dist/lend/providers/aave/AaveLendProvider.js.map +1 -0
  35. package/dist/lend/providers/aave/addresses.d.ts +57 -0
  36. package/dist/lend/providers/aave/addresses.d.ts.map +1 -0
  37. package/dist/lend/providers/aave/addresses.js +83 -0
  38. package/dist/lend/providers/aave/addresses.js.map +1 -0
  39. package/dist/lend/providers/aave/sdk.d.ts +57 -0
  40. package/dist/lend/providers/aave/sdk.d.ts.map +1 -0
  41. package/dist/lend/providers/aave/sdk.js +260 -0
  42. package/dist/lend/providers/aave/sdk.js.map +1 -0
  43. package/dist/lend/providers/morpho/MorphoLendProvider.d.ts +4 -3
  44. package/dist/lend/providers/morpho/MorphoLendProvider.d.ts.map +1 -1
  45. package/dist/lend/providers/morpho/MorphoLendProvider.js +2 -2
  46. package/dist/lend/providers/morpho/MorphoLendProvider.js.map +1 -1
  47. package/dist/lend/providers/morpho/__tests__/MorphoLendProvider.test.js +1 -33
  48. package/dist/lend/providers/morpho/__tests__/MorphoLendProvider.test.js.map +1 -1
  49. package/dist/lend/providers/morpho/__tests__/sdk.test.js +1 -0
  50. package/dist/lend/providers/morpho/__tests__/sdk.test.js.map +1 -1
  51. package/dist/lend/providers/morpho/sdk.d.ts +4 -3
  52. package/dist/lend/providers/morpho/sdk.d.ts.map +1 -1
  53. package/dist/supported/tokens.d.ts.map +1 -1
  54. package/dist/supported/tokens.js +18 -2
  55. package/dist/supported/tokens.js.map +1 -1
  56. package/dist/test/MockLendProvider.d.ts +5 -4
  57. package/dist/test/MockLendProvider.d.ts.map +1 -1
  58. package/dist/test/MockLendProvider.js +5 -5
  59. package/dist/test/MockLendProvider.js.map +1 -1
  60. package/dist/types/actions.d.ts +26 -2
  61. package/dist/types/actions.d.ts.map +1 -1
  62. package/dist/types/lend/base.d.ts +6 -19
  63. package/dist/types/lend/base.d.ts.map +1 -1
  64. package/dist/wallet/core/namespace/__tests__/WalletNamespace.spec.js +9 -9
  65. package/dist/wallet/core/namespace/__tests__/WalletNamespace.spec.js.map +1 -1
  66. package/dist/wallet/core/providers/__tests__/WalletProvider.spec.js +8 -8
  67. package/dist/wallet/core/providers/__tests__/WalletProvider.spec.js.map +1 -1
  68. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.d.ts +12 -3
  69. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.d.ts.map +1 -1
  70. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.js +3 -2
  71. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.js.map +1 -1
  72. package/dist/wallet/core/providers/hosted/types/index.d.ts +8 -2
  73. package/dist/wallet/core/providers/hosted/types/index.d.ts.map +1 -1
  74. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.d.ts +14 -6
  75. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.d.ts.map +1 -1
  76. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.js +10 -6
  77. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.js.map +1 -1
  78. package/dist/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.js +36 -13
  79. package/dist/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.js.map +1 -1
  80. package/dist/wallet/core/wallets/abstract/Wallet.d.ts +19 -7
  81. package/dist/wallet/core/wallets/abstract/Wallet.d.ts.map +1 -1
  82. package/dist/wallet/core/wallets/abstract/Wallet.js +9 -7
  83. package/dist/wallet/core/wallets/abstract/Wallet.js.map +1 -1
  84. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.d.ts +9 -3
  85. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.d.ts.map +1 -1
  86. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.js +4 -4
  87. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.js.map +1 -1
  88. package/dist/wallet/core/wallets/smart/default/__tests__/DefaultSmartWallet.spec.js +1 -1
  89. package/dist/wallet/core/wallets/smart/default/__tests__/DefaultSmartWallet.spec.js.map +1 -1
  90. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.d.ts +10 -3
  91. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.d.ts.map +1 -1
  92. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.js +5 -3
  93. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.js.map +1 -1
  94. package/dist/wallet/node/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js +4 -3
  95. package/dist/wallet/node/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js.map +1 -1
  96. package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.d.ts.map +1 -1
  97. package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.js +5 -4
  98. package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.js.map +1 -1
  99. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts +9 -2
  100. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts.map +1 -1
  101. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js +6 -3
  102. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js.map +1 -1
  103. package/dist/wallet/node/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js +4 -3
  104. package/dist/wallet/node/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js.map +1 -1
  105. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.d.ts +10 -3
  106. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.d.ts.map +1 -1
  107. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.js +5 -4
  108. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.js.map +1 -1
  109. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.d.ts +8 -2
  110. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.d.ts.map +1 -1
  111. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.js +2 -2
  112. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.js.map +1 -1
  113. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.d.ts +6 -2
  114. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.d.ts.map +1 -1
  115. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.js +3 -3
  116. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.js.map +1 -1
  117. package/dist/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.js +19 -7
  118. package/dist/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.js.map +1 -1
  119. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.d.ts +6 -2
  120. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.d.ts.map +1 -1
  121. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.js +3 -3
  122. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.js.map +1 -1
  123. package/dist/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js +7 -3
  124. package/dist/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js.map +1 -1
  125. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts +6 -2
  126. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts.map +1 -1
  127. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js +3 -3
  128. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js.map +1 -1
  129. package/dist/wallet/react/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js +6 -3
  130. package/dist/wallet/react/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js.map +1 -1
  131. package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.js +6 -6
  132. package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.js.map +1 -1
  133. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.d.ts +6 -2
  134. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.d.ts.map +1 -1
  135. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.js +3 -3
  136. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.js.map +1 -1
  137. package/dist/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.d.ts +6 -0
  138. package/dist/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.d.ts.map +1 -1
  139. package/dist/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.js.map +1 -1
  140. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.d.ts +6 -2
  141. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.d.ts.map +1 -1
  142. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.js +3 -3
  143. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.js.map +1 -1
  144. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.d.ts +6 -2
  145. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.d.ts.map +1 -1
  146. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js +2 -2
  147. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js.map +1 -1
  148. package/package.json +4 -1
  149. package/src/actions.test.ts +32 -93
  150. package/src/actions.ts +82 -26
  151. package/src/index.ts +1 -2
  152. package/src/lend/core/LendProvider.ts +6 -5
  153. package/src/lend/core/__tests__/LendProvider.test.ts +19 -61
  154. package/src/lend/index.ts +1 -0
  155. package/src/lend/namespaces/ActionsLendNamespace.ts +77 -13
  156. package/src/lend/namespaces/WalletLendNamespace.ts +98 -18
  157. package/src/lend/namespaces/__tests__/ActionsLendNamespace.spec.ts +24 -18
  158. package/src/lend/namespaces/__tests__/WalletLendNamespace.spec.ts +49 -11
  159. package/src/lend/providers/aave/AaveLendProvider.ts +463 -0
  160. package/src/lend/providers/aave/addresses.ts +95 -0
  161. package/src/lend/providers/aave/sdk.ts +369 -0
  162. package/src/lend/providers/morpho/MorphoLendProvider.ts +5 -5
  163. package/src/lend/providers/morpho/__tests__/MorphoLendProvider.test.ts +5 -53
  164. package/src/lend/providers/morpho/__tests__/sdk.test.ts +1 -0
  165. package/src/lend/providers/morpho/sdk.ts +3 -3
  166. package/src/supported/tokens.ts +24 -2
  167. package/src/test/MockLendProvider.ts +9 -9
  168. package/src/types/actions.ts +30 -2
  169. package/src/types/lend/base.ts +6 -22
  170. package/src/wallet/core/namespace/__tests__/WalletNamespace.spec.ts +9 -9
  171. package/src/wallet/core/providers/__tests__/WalletProvider.spec.ts +8 -8
  172. package/src/wallet/core/providers/hosted/abstract/HostedWalletProvider.ts +15 -4
  173. package/src/wallet/core/providers/hosted/types/index.ts +8 -2
  174. package/src/wallet/core/providers/smart/default/DefaultSmartWalletProvider.ts +24 -9
  175. package/src/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.ts +38 -46
  176. package/src/wallet/core/wallets/abstract/Wallet.ts +25 -17
  177. package/src/wallet/core/wallets/smart/default/DefaultSmartWallet.ts +17 -10
  178. package/src/wallet/core/wallets/smart/default/__tests__/DefaultSmartWallet.spec.ts +4 -7
  179. package/src/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.ts +13 -5
  180. package/src/wallet/node/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.ts +4 -4
  181. package/src/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.ts +6 -4
  182. package/src/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.ts +13 -4
  183. package/src/wallet/node/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.ts +4 -4
  184. package/src/wallet/node/wallets/hosted/privy/PrivyWallet.ts +18 -6
  185. package/src/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.ts +16 -5
  186. package/src/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.ts +8 -4
  187. package/src/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.ts +25 -14
  188. package/src/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.ts +8 -4
  189. package/src/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.ts +7 -7
  190. package/src/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.ts +8 -4
  191. package/src/wallet/react/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.ts +6 -7
  192. package/src/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.ts +6 -6
  193. package/src/wallet/react/wallets/hosted/dynamic/DynamicWallet.ts +12 -5
  194. package/src/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.ts +6 -0
  195. package/src/wallet/react/wallets/hosted/privy/PrivyWallet.ts +12 -5
  196. package/src/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.ts +12 -5
  197. package/dist/constants/config.d.ts +0 -10
  198. package/dist/constants/config.d.ts.map +0 -1
  199. package/dist/constants/config.js +0 -10
  200. package/dist/constants/config.js.map +0 -1
  201. package/src/constants/config.ts +0 -9
@@ -0,0 +1,83 @@
1
+ import { base, baseSepolia, optimism, optimismSepolia } from 'viem/chains';
2
+ /**
3
+ * Aave V3 Pool addresses for Optimism Superchain networks
4
+ * @description Hardcoded Pool contract addresses for each supported chain
5
+ */
6
+ /**
7
+ * Mainnet Pool addresses
8
+ */
9
+ export const POOL_ADDRESSES_MAINNET = {
10
+ [optimism.id]: '0x794a61358D6845594F94dc1DB02A252b5b4814aD',
11
+ [base.id]: '0xA238Dd80C259a72e81d7e4664a9801593F98d1c5',
12
+ };
13
+ /**
14
+ * Testnet Pool addresses
15
+ */
16
+ export const POOL_ADDRESSES_TESTNET = {
17
+ [optimismSepolia.id]: '0xb50201558b00496a145fe76f7424749556e326d8',
18
+ [baseSepolia.id]: '0x8bAB6d1b75f19e9eD9fCe8b9BD338844fF79aE27',
19
+ };
20
+ /**
21
+ * All Pool addresses (mainnet + testnet)
22
+ */
23
+ export const POOL_ADDRESSES = {
24
+ ...POOL_ADDRESSES_MAINNET,
25
+ ...POOL_ADDRESSES_TESTNET,
26
+ };
27
+ /**
28
+ * Get Pool address for a given chain ID
29
+ * @param chainId - Chain ID
30
+ * @returns Pool address if supported, undefined otherwise
31
+ */
32
+ export function getPoolAddress(chainId) {
33
+ return POOL_ADDRESSES[chainId];
34
+ }
35
+ /**
36
+ * Check if a chain ID has Aave V3 deployed
37
+ * @param chainId - Chain ID to check
38
+ * @returns true if Aave V3 is deployed on this chain
39
+ */
40
+ export function isAaveChainSupported(chainId) {
41
+ return chainId in POOL_ADDRESSES;
42
+ }
43
+ /**
44
+ * Get all supported chain IDs
45
+ * @returns Array of chain IDs with Aave V3 deployed
46
+ */
47
+ export function getSupportedChainIds() {
48
+ return Object.keys(POOL_ADDRESSES).map(Number);
49
+ }
50
+ /**
51
+ * Aave V3 WETHGateway addresses for Optimism Superchain networks
52
+ * @description Gateway contracts that handle native ETH wrapping and depositing
53
+ */
54
+ /**
55
+ * Mainnet WETHGateway addresses
56
+ */
57
+ export const WETH_GATEWAY_ADDRESSES_MAINNET = {
58
+ [optimism.id]: '0x5f2508cAE9923b02316254026CD43d7902866725',
59
+ [base.id]: '0xa0d9C1E9E48Ca30c8d8C3B5D69FF5dc1f6DFfC24',
60
+ };
61
+ /**
62
+ * Testnet WETHGateway addresses
63
+ */
64
+ export const WETH_GATEWAY_ADDRESSES_TESTNET = {
65
+ [optimismSepolia.id]: '0x589750BA8aF186cE5B55391B0b7148cAD43a1619',
66
+ [baseSepolia.id]: '0x0568130e794429D2eEBC4dafE18f25Ff1a1ed8b6',
67
+ };
68
+ /**
69
+ * All WETHGateway addresses (mainnet + testnet)
70
+ */
71
+ export const WETH_GATEWAY_ADDRESSES = {
72
+ ...WETH_GATEWAY_ADDRESSES_MAINNET,
73
+ ...WETH_GATEWAY_ADDRESSES_TESTNET,
74
+ };
75
+ /**
76
+ * Get WETHGateway address for a given chain ID
77
+ * @param chainId - Chain ID
78
+ * @returns WETHGateway address if supported, undefined otherwise
79
+ */
80
+ export function getWETHGatewayAddress(chainId) {
81
+ return WETH_GATEWAY_ADDRESSES[chainId];
82
+ }
83
+ //# sourceMappingURL=addresses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../../src/lend/providers/aave/addresses.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE1E;;;GAGG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,4CAA4C;IAC3D,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,4CAA4C;CAC/C,CAAA;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,4CAA4C;IAClE,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,4CAA4C;CACtD,CAAA;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA4B;IACrD,GAAG,sBAAsB;IACzB,GAAG,sBAAsB;CACjB,CAAA;AAEV;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,cAAc,CAAC,OAAO,CAAC,CAAA;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,OAAO,OAAO,IAAI,cAAc,CAAA;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAChD,CAAC;AAED;;;GAGG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAA4B;IACrE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,4CAA4C;IAC3D,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,4CAA4C;CAC/C,CAAA;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAA4B;IACrE,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,4CAA4C;IAClE,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,4CAA4C;CACtD,CAAA;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,GAAG,8BAA8B;IACjC,GAAG,8BAA8B;CACzB,CAAA;AAEV;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,sBAAsB,CAAC,OAAO,CAAC,CAAA;AACxC,CAAC"}
@@ -0,0 +1,57 @@
1
+ import type { Address } from 'viem';
2
+ import type { SUPPORTED_CHAIN_IDS } from '../../../constants/supportedChains.js';
3
+ import type { ChainManager } from '../../../services/ChainManager.js';
4
+ import type { LendProviderConfig } from '../../../types/actions.js';
5
+ import type { ApyBreakdown, LendMarket, LendMarketConfig, LendMarketId } from '../../../types/lend/index.js';
6
+ /**
7
+ * Parameters for getReserve function
8
+ */
9
+ interface GetReserveParams {
10
+ /** Market identifier (asset address and chainId) */
11
+ marketId: LendMarketId;
12
+ /** Chain manager instance */
13
+ chainManager: ChainManager;
14
+ /** Lend configuration containing market allowlist */
15
+ lendConfig?: LendProviderConfig;
16
+ }
17
+ /**
18
+ * Parameters for getReserves function
19
+ */
20
+ interface GetReservesParams {
21
+ chainManager: ChainManager;
22
+ lendConfig: LendProviderConfig;
23
+ markets: LendMarketConfig[];
24
+ }
25
+ /**
26
+ * Calculate APY breakdown from reserve data
27
+ * @param reserve - Formatted reserve data from Aave
28
+ * @returns APY breakdown with native APY and rewards
29
+ */
30
+ export declare function calculateApyBreakdown(reserve: {
31
+ formattedReserve?: any;
32
+ }): ApyBreakdown;
33
+ /**
34
+ * Get detailed reserve (market) information from Aave
35
+ * @param params - Named parameters object
36
+ * @returns Promise resolving to detailed market information
37
+ */
38
+ export declare function getReserve(params: GetReserveParams): Promise<LendMarket>;
39
+ /**
40
+ * Get multiple reserves (markets)
41
+ * @param params - Parameters including markets to fetch
42
+ * @returns Promise resolving to array of market information
43
+ */
44
+ export declare function getReserves(params: GetReservesParams): Promise<LendMarket[]>;
45
+ /**
46
+ * Get aToken address for a given underlying asset
47
+ * @param params - Parameters including asset address, chain ID, and chain manager
48
+ * @returns Promise resolving to aToken address
49
+ * @description Queries the Aave Pool to get the aToken address for the underlying asset
50
+ */
51
+ export declare function getATokenAddress(params: {
52
+ underlyingAsset: Address;
53
+ chainId: (typeof SUPPORTED_CHAIN_IDS)[number];
54
+ chainManager: ChainManager;
55
+ }): Promise<Address>;
56
+ export {};
57
+ //# sourceMappingURL=sdk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../../src/lend/providers/aave/sdk.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAGnC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,uBAAuB,CAAA;AAwB9B;;GAEG;AACH,UAAU,gBAAgB;IACxB,oDAAoD;IACpD,QAAQ,EAAE,YAAY,CAAA;IACtB,6BAA6B;IAC7B,YAAY,EAAE,YAAY,CAAA;IAC1B,qDAAqD;IACrD,UAAU,CAAC,EAAE,kBAAkB,CAAA;CAChC;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,YAAY,EAAE,YAAY,CAAA;IAC1B,UAAU,EAAE,kBAAkB,CAAA;IAC9B,OAAO,EAAE,gBAAgB,EAAE,CAAA;CAC5B;AAmBD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAC7C,gBAAgB,CAAC,EAAE,GAAG,CAAA;CACvB,GAAG,YAAY,CAcf;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,UAAU,CAAC,CAoHrB;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,UAAU,EAAE,CAAC,CAqBvB;AAmED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,eAAe,EAAE,OAAO,CAAA;IACxB,OAAO,EAAE,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAA;IAC7C,YAAY,EAAE,YAAY,CAAA;CAC3B,GAAG,OAAO,CAAC,OAAO,CAAC,CAsCnB"}
@@ -0,0 +1,260 @@
1
+ import { UiPoolDataProvider } from '@aave/contract-helpers';
2
+ import { formatReserves } from '@aave/math-utils';
3
+ import { providers } from 'ethers';
4
+ import { base, baseSepolia, optimism, optimismSepolia } from 'viem/chains';
5
+ import { getPoolAddress } from './addresses.js';
6
+ import { getAssetAddress } from '../../../utils/assets.js';
7
+ /**
8
+ * UI Pool Data Provider addresses for each chain
9
+ * @description Contract addresses for UiPoolDataProvider on each supported chain
10
+ */
11
+ const UI_POOL_DATA_PROVIDER_ADDRESSES = {
12
+ [optimism.id]: '0x69FA688f1Dc47d4B5d8029D5a35FB7a548310654',
13
+ [base.id]: '0xd82a47fdebB5bf5329b09441C3DaB4b5df2153Ad',
14
+ [optimismSepolia.id]: '0x86E2938daE289763D4e09a7e42c5cCcA62Cf9809',
15
+ [baseSepolia.id]: '0xBc9f5b7E248451CdD7cA54e717a2BFe1F32b566b',
16
+ };
17
+ /**
18
+ * Pool Addresses Provider addresses for each chain
19
+ */
20
+ const POOL_ADDRESSES_PROVIDER = {
21
+ [optimism.id]: '0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb',
22
+ [base.id]: '0xe20fCBdBfFC4Dd138cE8b2E6FBb6CB49777ad64D',
23
+ [optimismSepolia.id]: '0x36616cf17557639614c1cdDb356b1B83fc0B2132',
24
+ [baseSepolia.id]: '0xE4C23309117Aa30342BFaae6c95c6478e0A4Ad00',
25
+ };
26
+ /**
27
+ * Find market configuration in allowlist
28
+ * @param marketAllowlist - Array of allowed market configurations
29
+ * @param marketId - Market identifier to find
30
+ * @returns Market configuration if found, undefined otherwise
31
+ */
32
+ function findMarketInAllowlist(marketAllowlist, marketId) {
33
+ return marketAllowlist.find((config) => config.address.toLowerCase() === marketId.address.toLowerCase() &&
34
+ config.chainId === marketId.chainId);
35
+ }
36
+ /**
37
+ * Calculate APY breakdown from reserve data
38
+ * @param reserve - Formatted reserve data from Aave
39
+ * @returns APY breakdown with native APY and rewards
40
+ */
41
+ export function calculateApyBreakdown(reserve) {
42
+ // Get supply APY from formatted reserve data
43
+ const supplyApy = reserve.formattedReserve?.supplyAPY
44
+ ? parseFloat(reserve.formattedReserve.supplyAPY)
45
+ : 0;
46
+ // Aave doesn't have vault-style performance fees
47
+ // Total APY = Supply APY + any rewards (to be added later)
48
+ return {
49
+ total: supplyApy,
50
+ native: supplyApy,
51
+ totalRewards: 0, // TODO: Fetch from incentives data provider if needed
52
+ performanceFee: 0, // Aave doesn't have performance fees
53
+ };
54
+ }
55
+ /**
56
+ * Get detailed reserve (market) information from Aave
57
+ * @param params - Named parameters object
58
+ * @returns Promise resolving to detailed market information
59
+ */
60
+ export async function getReserve(params) {
61
+ // Find market configuration in allowlist for metadata
62
+ const marketConfig = params.lendConfig?.marketAllowlist
63
+ ? findMarketInAllowlist(params.lendConfig.marketAllowlist, params.marketId)
64
+ : undefined;
65
+ if (!marketConfig) {
66
+ throw new Error(`Market ${params.marketId.address} on chain ${params.marketId.chainId} not found in allowlist`);
67
+ }
68
+ const poolAddress = getPoolAddress(params.marketId.chainId);
69
+ if (!poolAddress) {
70
+ throw new Error(`Aave V3 not deployed on chain ${params.marketId.chainId}`);
71
+ }
72
+ const uiPoolDataProviderAddress = UI_POOL_DATA_PROVIDER_ADDRESSES[params.marketId.chainId];
73
+ const poolAddressesProvider = POOL_ADDRESSES_PROVIDER[params.marketId.chainId];
74
+ if (!uiPoolDataProviderAddress || !poolAddressesProvider) {
75
+ throw new Error(`UiPoolDataProvider not configured for chain ${params.marketId.chainId}`);
76
+ }
77
+ try {
78
+ // Get viem public client for this chain
79
+ const publicClient = params.chainManager.getPublicClient(params.marketId.chainId);
80
+ // Create ethers provider from viem's RPC URL
81
+ // Aave SDK requires ethers provider, not viem
82
+ const rpcUrl = publicClient.chain?.rpcUrls.default.http[0] ||
83
+ publicClient.chain?.rpcUrls.public?.http[0];
84
+ if (!rpcUrl) {
85
+ throw new Error(`No RPC URL available for chain ${params.marketId.chainId}`);
86
+ }
87
+ const ethersProvider = new providers.JsonRpcProvider(rpcUrl);
88
+ // Create UiPoolDataProvider instance
89
+ const uiPoolDataProvider = new UiPoolDataProvider({
90
+ uiPoolDataProviderAddress,
91
+ provider: ethersProvider,
92
+ chainId: params.marketId.chainId,
93
+ });
94
+ // Fetch reserve data
95
+ const reservesData = await uiPoolDataProvider.getReservesHumanized({
96
+ lendingPoolAddressProvider: poolAddressesProvider,
97
+ });
98
+ // Find the specific reserve for this asset
99
+ const assetAddress = getAssetAddress(marketConfig.asset, params.marketId.chainId);
100
+ const reserve = reservesData.reservesData.find((r) => r.underlyingAsset.toLowerCase() === assetAddress.toLowerCase());
101
+ if (!reserve) {
102
+ throw new Error(`Reserve not found for asset ${assetAddress} on chain ${params.marketId.chainId}`);
103
+ }
104
+ // Format reserves using Aave math-utils
105
+ const currentTimestamp = Math.floor(Date.now() / 1000);
106
+ const formattedReserves = formatReserves({
107
+ reserves: [reserve],
108
+ currentTimestamp,
109
+ marketReferenceCurrencyDecimals: reservesData.baseCurrencyData.marketReferenceCurrencyDecimals,
110
+ marketReferencePriceInUsd: reservesData.baseCurrencyData.marketReferenceCurrencyPriceInUsd,
111
+ });
112
+ const formattedReserve = formattedReserves[0];
113
+ // Calculate APY breakdown
114
+ const apy = calculateApyBreakdown({
115
+ ...reserve,
116
+ formattedReserve,
117
+ });
118
+ // Return market information in our standard format
119
+ return {
120
+ marketId: params.marketId,
121
+ name: marketConfig.name,
122
+ asset: marketConfig.asset,
123
+ supply: {
124
+ totalAssets: BigInt(reserve.availableLiquidity),
125
+ totalShares: BigInt(reserve.totalScaledVariableDebt || '0'),
126
+ },
127
+ apy,
128
+ metadata: {
129
+ owner: poolAddress, // Use Pool as owner
130
+ curator: poolAddress, // No curator in Aave
131
+ fee: 0, // No performance fee in Aave
132
+ lastUpdate: currentTimestamp,
133
+ },
134
+ };
135
+ }
136
+ catch (error) {
137
+ throw new Error(`Failed to get reserve info for ${params.marketId.address}: ${error instanceof Error ? error.message : 'Unknown error'}`);
138
+ }
139
+ }
140
+ /**
141
+ * Get multiple reserves (markets)
142
+ * @param params - Parameters including markets to fetch
143
+ * @returns Promise resolving to array of market information
144
+ */
145
+ export async function getReserves(params) {
146
+ try {
147
+ const reservePromises = params.markets.map((marketConfig) => {
148
+ return getReserve({
149
+ marketId: {
150
+ address: marketConfig.address,
151
+ chainId: marketConfig.chainId,
152
+ },
153
+ chainManager: params.chainManager,
154
+ lendConfig: params.lendConfig,
155
+ });
156
+ });
157
+ return await Promise.all(reservePromises);
158
+ }
159
+ catch (error) {
160
+ throw new Error(`Failed to get reserves: ${error instanceof Error ? error.message : 'Unknown error'}`);
161
+ }
162
+ }
163
+ /**
164
+ * Aave V3 Pool ABI for getReserveData
165
+ * @description Minimal ABI for querying reserve data from Aave V3 Pool
166
+ */
167
+ const POOL_GET_RESERVE_DATA_ABI = [
168
+ {
169
+ inputs: [{ name: 'asset', type: 'address', internalType: 'address' }],
170
+ name: 'getReserveData',
171
+ outputs: [
172
+ {
173
+ components: [
174
+ { name: 'data', type: 'uint256', internalType: 'uint256' },
175
+ ],
176
+ name: 'configuration',
177
+ type: 'tuple',
178
+ internalType: 'struct DataTypes.ReserveConfigurationMap',
179
+ },
180
+ { name: 'liquidityIndex', type: 'uint128', internalType: 'uint128' },
181
+ {
182
+ name: 'currentLiquidityRate',
183
+ type: 'uint128',
184
+ internalType: 'uint128',
185
+ },
186
+ { name: 'variableBorrowIndex', type: 'uint128', internalType: 'uint128' },
187
+ {
188
+ name: 'currentVariableBorrowRate',
189
+ type: 'uint128',
190
+ internalType: 'uint128',
191
+ },
192
+ {
193
+ name: 'currentStableBorrowRate',
194
+ type: 'uint128',
195
+ internalType: 'uint128',
196
+ },
197
+ { name: 'lastUpdateTimestamp', type: 'uint40', internalType: 'uint40' },
198
+ { name: 'id', type: 'uint16', internalType: 'uint16' },
199
+ { name: 'aTokenAddress', type: 'address', internalType: 'address' },
200
+ {
201
+ name: 'stableDebtTokenAddress',
202
+ type: 'address',
203
+ internalType: 'address',
204
+ },
205
+ {
206
+ name: 'variableDebtTokenAddress',
207
+ type: 'address',
208
+ internalType: 'address',
209
+ },
210
+ {
211
+ name: 'interestRateStrategyAddress',
212
+ type: 'address',
213
+ internalType: 'address',
214
+ },
215
+ { name: 'accruedToTreasury', type: 'uint128', internalType: 'uint128' },
216
+ { name: 'unbacked', type: 'uint128', internalType: 'uint128' },
217
+ {
218
+ name: 'isolationModeTotalDebt',
219
+ type: 'uint128',
220
+ internalType: 'uint128',
221
+ },
222
+ ],
223
+ stateMutability: 'view',
224
+ type: 'function',
225
+ },
226
+ ];
227
+ /**
228
+ * Get aToken address for a given underlying asset
229
+ * @param params - Parameters including asset address, chain ID, and chain manager
230
+ * @returns Promise resolving to aToken address
231
+ * @description Queries the Aave Pool to get the aToken address for the underlying asset
232
+ */
233
+ export async function getATokenAddress(params) {
234
+ const poolAddress = getPoolAddress(params.chainId);
235
+ if (!poolAddress) {
236
+ throw new Error(`Aave V3 not deployed on chain ${params.chainId}`);
237
+ }
238
+ try {
239
+ // Get viem public client for this chain
240
+ const publicClient = params.chainManager.getPublicClient(params.chainId);
241
+ // Query the Pool contract directly for reserve data
242
+ const reserveData = await publicClient.readContract({
243
+ address: poolAddress,
244
+ abi: POOL_GET_RESERVE_DATA_ABI,
245
+ functionName: 'getReserveData',
246
+ args: [params.underlyingAsset],
247
+ });
248
+ // The return is a tuple where index 8 is aTokenAddress
249
+ const aTokenAddress = reserveData[8];
250
+ if (!aTokenAddress ||
251
+ aTokenAddress === '0x0000000000000000000000000000000000000000') {
252
+ throw new Error(`No aToken found for asset ${params.underlyingAsset} on chain ${params.chainId}`);
253
+ }
254
+ return aTokenAddress;
255
+ }
256
+ catch (error) {
257
+ throw new Error(`Failed to get aToken address for ${params.underlyingAsset}: ${error instanceof Error ? error.message : 'Unknown error'}`);
258
+ }
259
+ }
260
+ //# sourceMappingURL=sdk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../../src/lend/providers/aave/sdk.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { LendProvider } from '../../core/LendProvider.js';
2
2
  import type { ChainManager } from '../../../services/ChainManager.js';
3
- import type { GetLendMarketsParams, GetMarketBalanceParams, LendClosePositionParams, LendMarket, LendMarketId, LendMarketPosition, LendOpenPositionInternalParams, LendTransaction, MorphoLendConfig } from '../../../types/lend/index.js';
3
+ import type { LendProviderConfig } from '../../../types/actions.js';
4
+ import type { GetLendMarketsParams, GetMarketBalanceParams, LendClosePositionParams, LendMarket, LendMarketId, LendMarketPosition, LendOpenPositionInternalParams, LendTransaction } from '../../../types/lend/index.js';
4
5
  /**
5
6
  * Supported chain IDs for Morpho lending
6
7
  * @description Array of chain IDs where Morpho is available
@@ -10,7 +11,7 @@ export declare const SUPPORTED_CHAIN_IDS: readonly number[];
10
11
  * Morpho lending provider implementation
11
12
  * @description Lending provider implementation using Morpho protocol
12
13
  */
13
- export declare class MorphoLendProvider extends LendProvider<MorphoLendConfig> {
14
+ export declare class MorphoLendProvider extends LendProvider<LendProviderConfig> {
14
15
  protected readonly SUPPORTED_CHAIN_IDS: readonly number[];
15
16
  private chainManager;
16
17
  /**
@@ -18,7 +19,7 @@ export declare class MorphoLendProvider extends LendProvider<MorphoLendConfig> {
18
19
  * @param config - Morpho lending configuration
19
20
  * @param chainManager - Chain manager for blockchain interactions
20
21
  */
21
- constructor(config: MorphoLendConfig, chainManager: ChainManager);
22
+ constructor(config: LendProviderConfig, chainManager: ChainManager);
22
23
  /**
23
24
  * Open a lending position in a Morpho market
24
25
  * @description Opens a lending position by supplying assets to a Morpho market
@@ -1 +1 @@
1
- {"version":3,"file":"MorphoLendProvider.d.ts","sourceRoot":"","sources":["../../../../src/lend/providers/morpho/MorphoLendProvider.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,8BAA8B,EAC9B,eAAe,EACf,gBAAgB,EACjB,MAAM,uBAAuB,CAAA;AAG9B;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAO3B,SAAS,MAAM,EAAE,CAAA;AAEtB;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;IACpE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,oBAAsB;IAE5D,OAAO,CAAC,YAAY,CAAc;IAElC;;;;OAIG;gBACS,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY;IAKhE;;;;;OAKG;cACa,aAAa,CAC3B,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,eAAe,CAAC;IAsD3B;;;;;OAKG;cACa,cAAc,CAC5B,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,eAAe,CAAC;IA6C3B;;;;OAIG;cACa,UAAU,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAQvE;;;;OAIG;cACa,WAAW,CACzB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB;;;;OAIG;cACa,YAAY,CAC1B,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,kBAAkB,CAAC;CAiD/B"}
1
+ {"version":3,"file":"MorphoLendProvider.d.ts","sourceRoot":"","sources":["../../../../src/lend/providers/morpho/MorphoLendProvider.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,8BAA8B,EAC9B,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAG9B;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAO3B,SAAS,MAAM,EAAE,CAAA;AAEtB;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY,CAAC,kBAAkB,CAAC;IACtE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,oBAAsB;IAE5D,OAAO,CAAC,YAAY,CAAc;IAElC;;;;OAIG;gBACS,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY;IAKlE;;;;;OAKG;cACa,aAAa,CAC3B,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,eAAe,CAAC;IAsD3B;;;;;OAKG;cACa,cAAc,CAC5B,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,eAAe,CAAC;IA6C3B;;;;OAIG;cACa,UAAU,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAQvE;;;;OAIG;cACa,WAAW,CACzB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB;;;;OAIG;cACa,YAAY,CAC1B,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,kBAAkB,CAAC;CAiD/B"}
@@ -73,7 +73,7 @@ export class MorphoLendProvider extends LendProvider {
73
73
  value: 0n,
74
74
  },
75
75
  },
76
- slippage: params.options?.slippage || this._config.defaultSlippage,
76
+ slippage: params.options?.slippage ?? 50,
77
77
  };
78
78
  }
79
79
  catch (error) {
@@ -110,7 +110,7 @@ export class MorphoLendProvider extends LendProvider {
110
110
  value: 0n,
111
111
  },
112
112
  },
113
- slippage: params.options?.slippage || this._config.defaultSlippage,
113
+ slippage: params.options?.slippage ?? 50,
114
114
  };
115
115
  }
116
116
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"MorphoLendProvider.js","sourceRoot":"","sources":["../../../../src/lend/providers/morpho/MorphoLendProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MorphoLendProvider.js","sourceRoot":"","sources":["../../../../src/lend/providers/morpho/MorphoLendProvider.ts"],"names":[],"mappings":"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"}
@@ -29,8 +29,6 @@ describe('MorphoLendProvider', () => {
29
29
  let mockChainManager;
30
30
  beforeEach(() => {
31
31
  mockConfig = {
32
- provider: 'morpho',
33
- defaultSlippage: 50,
34
32
  marketAllowlist: [MockGauntletUSDCMarket, MockWETHMarket],
35
33
  };
36
34
  mockChainManager = new MockChainManager();
@@ -40,14 +38,6 @@ describe('MorphoLendProvider', () => {
40
38
  it('should initialize with provided config', () => {
41
39
  expect(provider).toBeInstanceOf(MorphoLendProvider);
42
40
  });
43
- it('should use default slippage when not provided', () => {
44
- const configWithoutSlippage = {
45
- ...mockConfig,
46
- defaultSlippage: undefined,
47
- };
48
- const providerWithDefaults = new MorphoLendProvider(configWithoutSlippage, mockChainManager);
49
- expect(providerWithDefaults).toBeInstanceOf(MorphoLendProvider);
50
- });
51
41
  });
52
42
  describe('closePosition', () => {
53
43
  beforeEach(() => {
@@ -206,17 +196,12 @@ describe('MorphoLendProvider', () => {
206
196
  });
207
197
  describe('market allowlist configuration', () => {
208
198
  it('should work without market allowlist', () => {
209
- const configWithoutAllowlist = {
210
- provider: 'morpho',
211
- defaultSlippage: 50,
212
- };
199
+ const configWithoutAllowlist = {};
213
200
  const providerWithoutAllowlist = new MorphoLendProvider(configWithoutAllowlist, mockChainManager);
214
201
  expect(providerWithoutAllowlist.config.marketAllowlist).toBeUndefined();
215
202
  });
216
203
  it('should store market allowlist when provided', () => {
217
204
  const configWithAllowlist = {
218
- provider: 'morpho',
219
- defaultSlippage: 50,
220
205
  marketAllowlist: [MockGauntletUSDCMarket],
221
206
  };
222
207
  const providerWithAllowlist = new MorphoLendProvider(configWithAllowlist, mockChainManager);
@@ -226,25 +211,8 @@ describe('MorphoLendProvider', () => {
226
211
  expect(allowlist[0].address).toBe(MockGauntletUSDCMarket.address);
227
212
  expect(allowlist[0].name).toBe(MockGauntletUSDCMarket.name);
228
213
  });
229
- it('should use default slippage from config', () => {
230
- const customSlippage = 150;
231
- const configWithSlippage = {
232
- provider: 'morpho',
233
- defaultSlippage: customSlippage,
234
- };
235
- const providerWithSlippage = new MorphoLendProvider(configWithSlippage, mockChainManager);
236
- expect(providerWithSlippage.config.defaultSlippage).toBe(customSlippage);
237
- });
238
- it('should use fallback default slippage when not provided', () => {
239
- const configWithoutSlippage = {
240
- provider: 'morpho',
241
- };
242
- const providerWithoutSlippage = new MorphoLendProvider(configWithoutSlippage, mockChainManager);
243
- expect(providerWithoutSlippage.config.defaultSlippage || 50).toBe(50); // Default fallback
244
- });
245
214
  it('should handle multiple markets in allowlist', () => {
246
215
  const configWithMultipleMarkets = {
247
- provider: 'morpho',
248
216
  marketAllowlist: [MockGauntletUSDCMarket, MockWETHMarket],
249
217
  };
250
218
  const provider = new MorphoLendProvider(configWithMultipleMarkets, mockChainManager);
@@ -1 +1 @@
1
- {"version":3,"file":"MorphoLendProvider.test.js","sourceRoot":"","sources":["../../../../../src/lend/providers/morpho/__tests__/MorphoLendProvider.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MorphoLendProvider.test.js","sourceRoot":"","sources":["../../../../../src/lend/providers/morpho/__tests__/MorphoLendProvider.test.ts"],"names":[],"mappings":"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"}
@@ -144,6 +144,7 @@ describe('Vault Utilities', () => {
144
144
  usdc_demo: 0,
145
145
  morpho: 0,
146
146
  eth: 0,
147
+ weth: 0,
147
148
  other: 0,
148
149
  totalRewards: 0,
149
150
  });