@moonwell-fi/moonwell-sdk 0.2.0 → 0.3.2

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 (436) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +36 -15
  3. package/_cjs/actions/core/getUserBalances.js +46 -5
  4. package/_cjs/actions/core/getUserBalances.js.map +1 -1
  5. package/_cjs/actions/core/markets/common.js +19 -16
  6. package/_cjs/actions/core/markets/common.js.map +1 -1
  7. package/_cjs/actions/core/markets/getMarketSnapshots.js +192 -0
  8. package/_cjs/actions/core/markets/getMarketSnapshots.js.map +1 -0
  9. package/_cjs/actions/core/markets/getMarkets.js +26 -0
  10. package/_cjs/actions/core/markets/getMarkets.js.map +1 -1
  11. package/_cjs/actions/core/user-positions/common.js.map +1 -1
  12. package/_cjs/actions/core/user-rewards/common.js.map +1 -1
  13. package/_cjs/actions/governance/getCirculatingSupplySnapshots.js +53 -0
  14. package/_cjs/actions/governance/getCirculatingSupplySnapshots.js.map +1 -0
  15. package/_cjs/actions/governance/getDelegates.js +31 -2
  16. package/_cjs/actions/governance/getDelegates.js.map +1 -1
  17. package/_cjs/actions/governance/getDiscussions.js +30 -1
  18. package/_cjs/actions/governance/getDiscussions.js.map +1 -1
  19. package/_cjs/actions/governance/getGovernanceTokenInfo.js +27 -0
  20. package/_cjs/actions/governance/getGovernanceTokenInfo.js.map +1 -1
  21. package/_cjs/actions/governance/getStakingSnapshots.js +4 -1
  22. package/_cjs/actions/governance/getStakingSnapshots.js.map +1 -1
  23. package/_cjs/actions/governance/getUserVoteReceipt.js +7 -6
  24. package/_cjs/actions/governance/getUserVoteReceipt.js.map +1 -1
  25. package/_cjs/actions/governance/proposals/common.js +4 -18
  26. package/_cjs/actions/governance/proposals/common.js.map +1 -1
  27. package/_cjs/actions/governance/proposals/getProposals.js +34 -2
  28. package/_cjs/actions/governance/proposals/getProposals.js.map +1 -1
  29. package/_cjs/actions/governance/snapshot/common.js +4 -1
  30. package/_cjs/actions/governance/snapshot/common.js.map +1 -1
  31. package/_cjs/actions/governance/snapshot/getSnapshotProposals.js +28 -1
  32. package/_cjs/actions/governance/snapshot/getSnapshotProposals.js.map +1 -1
  33. package/_cjs/actions/index.js +19 -15
  34. package/_cjs/actions/index.js.map +1 -1
  35. package/_cjs/actions/morpho/markets/common.js +19 -13
  36. package/_cjs/actions/morpho/markets/common.js.map +1 -1
  37. package/_cjs/actions/morpho/markets/getMorphoMarkets.js +28 -1
  38. package/_cjs/actions/morpho/markets/getMorphoMarkets.js.map +1 -1
  39. package/_cjs/actions/morpho/user-positions/common.js.map +1 -1
  40. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js +3 -1
  41. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -1
  42. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js +3 -1
  43. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -1
  44. package/_cjs/actions/morpho/user-rewards/common.js +8 -2
  45. package/_cjs/actions/morpho/user-rewards/common.js.map +1 -1
  46. package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js +3 -1
  47. package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -1
  48. package/_cjs/actions/morpho/utils/graphql.js +1 -1
  49. package/_cjs/actions/morpho/utils/graphql.js.map +1 -1
  50. package/_cjs/actions/morpho/vaults/common.js +9 -8
  51. package/_cjs/actions/morpho/vaults/common.js.map +1 -1
  52. package/_cjs/actions/morpho/vaults/getMorphoVaults.js +29 -2
  53. package/_cjs/actions/morpho/vaults/getMorphoVaults.js.map +1 -1
  54. package/_cjs/client/createActions.js +7 -3
  55. package/_cjs/client/createActions.js.map +1 -1
  56. package/_cjs/client/createMoonwellClient.js +8 -2
  57. package/_cjs/client/createMoonwellClient.js.map +1 -1
  58. package/_cjs/common/amount.js +6 -0
  59. package/_cjs/common/amount.js.map +1 -1
  60. package/_cjs/common/index.js +16 -3
  61. package/_cjs/common/index.js.map +1 -1
  62. package/_cjs/environments/abis/index.js +25 -20
  63. package/_cjs/environments/abis/index.js.map +1 -1
  64. package/_cjs/environments/abis/tokenSaleAbi.js +785 -0
  65. package/_cjs/environments/abis/tokenSaleAbi.js.map +1 -0
  66. package/_cjs/environments/definitions/arbitrum/environment.js +26 -0
  67. package/_cjs/environments/definitions/arbitrum/environment.js.map +1 -0
  68. package/_cjs/environments/definitions/arbitrum/tokens.js +21 -0
  69. package/_cjs/environments/definitions/arbitrum/tokens.js.map +1 -0
  70. package/_cjs/environments/definitions/avalanche/environment.js +26 -0
  71. package/_cjs/environments/definitions/avalanche/environment.js.map +1 -0
  72. package/_cjs/environments/definitions/avalanche/tokens.js +21 -0
  73. package/_cjs/environments/definitions/avalanche/tokens.js.map +1 -0
  74. package/_cjs/environments/definitions/base/core-markets.js +8 -0
  75. package/_cjs/environments/definitions/base/core-markets.js.map +1 -1
  76. package/_cjs/environments/definitions/base/environment.js +2 -1
  77. package/_cjs/environments/definitions/base/environment.js.map +1 -1
  78. package/_cjs/environments/definitions/base/morpho-markets.js +1 -0
  79. package/_cjs/environments/definitions/base/morpho-markets.js.map +1 -1
  80. package/_cjs/environments/definitions/base/morpho-vaults.js +4 -0
  81. package/_cjs/environments/definitions/base/morpho-vaults.js.map +1 -1
  82. package/_cjs/environments/definitions/base/tokens.js +36 -0
  83. package/_cjs/environments/definitions/base/tokens.js.map +1 -1
  84. package/_cjs/environments/definitions/ethereum/environment.js +26 -0
  85. package/_cjs/environments/definitions/ethereum/environment.js.map +1 -0
  86. package/_cjs/environments/definitions/ethereum/tokens.js +20 -0
  87. package/_cjs/environments/definitions/ethereum/tokens.js.map +1 -0
  88. package/_cjs/environments/definitions/governance.js +1 -1
  89. package/_cjs/environments/definitions/governance.js.map +1 -1
  90. package/_cjs/environments/definitions/moonbeam/contracts.js +1 -0
  91. package/_cjs/environments/definitions/moonbeam/contracts.js.map +1 -1
  92. package/_cjs/environments/definitions/moonbeam/core-markets.js +31 -15
  93. package/_cjs/environments/definitions/moonbeam/core-markets.js.map +1 -1
  94. package/_cjs/environments/definitions/moonbeam/environment.js +1 -0
  95. package/_cjs/environments/definitions/moonbeam/environment.js.map +1 -1
  96. package/_cjs/environments/definitions/moonbeam/tokens.js +61 -19
  97. package/_cjs/environments/definitions/moonbeam/tokens.js.map +1 -1
  98. package/_cjs/environments/definitions/moonriver/core-markets.js +4 -0
  99. package/_cjs/environments/definitions/moonriver/core-markets.js.map +1 -1
  100. package/_cjs/environments/definitions/moonriver/environment.js +1 -0
  101. package/_cjs/environments/definitions/moonriver/environment.js.map +1 -1
  102. package/_cjs/environments/definitions/optimism/core-markets.js +4 -0
  103. package/_cjs/environments/definitions/optimism/core-markets.js.map +1 -1
  104. package/_cjs/environments/definitions/optimism/environment.js +4 -2
  105. package/_cjs/environments/definitions/optimism/environment.js.map +1 -1
  106. package/_cjs/environments/definitions/optimism/tokens.js +12 -0
  107. package/_cjs/environments/definitions/optimism/tokens.js.map +1 -1
  108. package/_cjs/environments/definitions/polygon/environment.js +26 -0
  109. package/_cjs/environments/definitions/polygon/environment.js.map +1 -0
  110. package/_cjs/environments/definitions/polygon/tokens.js +21 -0
  111. package/_cjs/environments/definitions/polygon/tokens.js.map +1 -0
  112. package/_cjs/environments/index.js +40 -6
  113. package/_cjs/environments/index.js.map +1 -1
  114. package/_cjs/environments/types/config.js +2 -0
  115. package/_cjs/environments/types/config.js.map +1 -1
  116. package/_cjs/errors/version.js +1 -1
  117. package/_cjs/index.js +4 -1
  118. package/_cjs/index.js.map +1 -1
  119. package/_cjs/logger/console.js +37 -0
  120. package/_cjs/logger/console.js.map +1 -0
  121. package/_cjs/types/circulatingSupply.js +3 -0
  122. package/_cjs/types/circulatingSupply.js.map +1 -0
  123. package/_cjs/types/proposal.js.map +1 -1
  124. package/_esm/actions/core/getUserBalances.js +46 -5
  125. package/_esm/actions/core/getUserBalances.js.map +1 -1
  126. package/_esm/actions/core/markets/common.js +10 -7
  127. package/_esm/actions/core/markets/common.js.map +1 -1
  128. package/_esm/actions/core/markets/getMarketSnapshots.js +185 -0
  129. package/_esm/actions/core/markets/getMarketSnapshots.js.map +1 -0
  130. package/_esm/actions/core/markets/getMarkets.js +3 -0
  131. package/_esm/actions/core/markets/getMarkets.js.map +1 -1
  132. package/_esm/actions/core/user-positions/common.js.map +1 -1
  133. package/_esm/actions/core/user-rewards/common.js.map +1 -1
  134. package/_esm/actions/governance/getCirculatingSupplySnapshots.js +46 -0
  135. package/_esm/actions/governance/getCirculatingSupplySnapshots.js.map +1 -0
  136. package/_esm/actions/governance/getDelegates.js +5 -2
  137. package/_esm/actions/governance/getDelegates.js.map +1 -1
  138. package/_esm/actions/governance/getDiscussions.js +3 -0
  139. package/_esm/actions/governance/getDiscussions.js.map +1 -1
  140. package/_esm/actions/governance/getGovernanceTokenInfo.js +4 -0
  141. package/_esm/actions/governance/getGovernanceTokenInfo.js.map +1 -1
  142. package/_esm/actions/governance/getUserVoteReceipt.js +7 -6
  143. package/_esm/actions/governance/getUserVoteReceipt.js.map +1 -1
  144. package/_esm/actions/governance/proposals/common.js +14 -20
  145. package/_esm/actions/governance/proposals/common.js.map +1 -1
  146. package/_esm/actions/governance/proposals/getProposals.js +11 -2
  147. package/_esm/actions/governance/proposals/getProposals.js.map +1 -1
  148. package/_esm/actions/governance/snapshot/getSnapshotProposals.js +5 -1
  149. package/_esm/actions/governance/snapshot/getSnapshotProposals.js.map +1 -1
  150. package/_esm/actions/index.js +9 -7
  151. package/_esm/actions/index.js.map +1 -1
  152. package/_esm/actions/morpho/markets/common.js +19 -13
  153. package/_esm/actions/morpho/markets/common.js.map +1 -1
  154. package/_esm/actions/morpho/markets/getMorphoMarkets.js +5 -1
  155. package/_esm/actions/morpho/markets/getMorphoMarkets.js.map +1 -1
  156. package/_esm/actions/morpho/user-positions/common.js.map +1 -1
  157. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPositions.js +3 -1
  158. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -1
  159. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositions.js +3 -1
  160. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -1
  161. package/_esm/actions/morpho/user-rewards/common.js +8 -3
  162. package/_esm/actions/morpho/user-rewards/common.js.map +1 -1
  163. package/_esm/actions/morpho/user-rewards/getMorphoUserRewards.js +3 -1
  164. package/_esm/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -1
  165. package/_esm/actions/morpho/utils/graphql.js +1 -1
  166. package/_esm/actions/morpho/utils/graphql.js.map +1 -1
  167. package/_esm/actions/morpho/vaults/common.js +9 -8
  168. package/_esm/actions/morpho/vaults/common.js.map +1 -1
  169. package/_esm/actions/morpho/vaults/getMorphoVaults.js +6 -2
  170. package/_esm/actions/morpho/vaults/getMorphoVaults.js.map +1 -1
  171. package/_esm/client/createActions.js +5 -1
  172. package/_esm/client/createActions.js.map +1 -1
  173. package/_esm/client/createMoonwellClient.js +10 -4
  174. package/_esm/client/createMoonwellClient.js.map +1 -1
  175. package/_esm/common/amount.js +6 -0
  176. package/_esm/common/amount.js.map +1 -1
  177. package/_esm/common/index.js +11 -2
  178. package/_esm/common/index.js.map +1 -1
  179. package/_esm/environments/abis/index.js +2 -1
  180. package/_esm/environments/abis/index.js.map +1 -1
  181. package/_esm/environments/abis/tokenSaleAbi.js +783 -0
  182. package/_esm/environments/abis/tokenSaleAbi.js.map +1 -0
  183. package/_esm/environments/definitions/arbitrum/environment.js +21 -0
  184. package/_esm/environments/definitions/arbitrum/environment.js.map +1 -0
  185. package/_esm/environments/definitions/arbitrum/tokens.js +18 -0
  186. package/_esm/environments/definitions/arbitrum/tokens.js.map +1 -0
  187. package/_esm/environments/definitions/avalanche/environment.js +21 -0
  188. package/_esm/environments/definitions/avalanche/environment.js.map +1 -0
  189. package/_esm/environments/definitions/avalanche/tokens.js +18 -0
  190. package/_esm/environments/definitions/avalanche/tokens.js.map +1 -0
  191. package/_esm/environments/definitions/base/core-markets.js +8 -0
  192. package/_esm/environments/definitions/base/core-markets.js.map +1 -1
  193. package/_esm/environments/definitions/base/environment.js +2 -1
  194. package/_esm/environments/definitions/base/environment.js.map +1 -1
  195. package/_esm/environments/definitions/base/morpho-markets.js +1 -0
  196. package/_esm/environments/definitions/base/morpho-markets.js.map +1 -1
  197. package/_esm/environments/definitions/base/morpho-vaults.js +4 -0
  198. package/_esm/environments/definitions/base/morpho-vaults.js.map +1 -1
  199. package/_esm/environments/definitions/base/tokens.js +36 -0
  200. package/_esm/environments/definitions/base/tokens.js.map +1 -1
  201. package/_esm/environments/definitions/ethereum/environment.js +21 -0
  202. package/_esm/environments/definitions/ethereum/environment.js.map +1 -0
  203. package/_esm/environments/definitions/ethereum/tokens.js +17 -0
  204. package/_esm/environments/definitions/ethereum/tokens.js.map +1 -0
  205. package/_esm/environments/definitions/governance.js +2 -2
  206. package/_esm/environments/definitions/governance.js.map +1 -1
  207. package/_esm/environments/definitions/moonbeam/contracts.js +1 -0
  208. package/_esm/environments/definitions/moonbeam/contracts.js.map +1 -1
  209. package/_esm/environments/definitions/moonbeam/core-markets.js +31 -15
  210. package/_esm/environments/definitions/moonbeam/core-markets.js.map +1 -1
  211. package/_esm/environments/definitions/moonbeam/environment.js +1 -0
  212. package/_esm/environments/definitions/moonbeam/environment.js.map +1 -1
  213. package/_esm/environments/definitions/moonbeam/tokens.js +61 -19
  214. package/_esm/environments/definitions/moonbeam/tokens.js.map +1 -1
  215. package/_esm/environments/definitions/moonriver/core-markets.js +4 -0
  216. package/_esm/environments/definitions/moonriver/core-markets.js.map +1 -1
  217. package/_esm/environments/definitions/moonriver/environment.js +1 -0
  218. package/_esm/environments/definitions/moonriver/environment.js.map +1 -1
  219. package/_esm/environments/definitions/optimism/core-markets.js +4 -0
  220. package/_esm/environments/definitions/optimism/core-markets.js.map +1 -1
  221. package/_esm/environments/definitions/optimism/environment.js +4 -2
  222. package/_esm/environments/definitions/optimism/environment.js.map +1 -1
  223. package/_esm/environments/definitions/optimism/tokens.js +12 -0
  224. package/_esm/environments/definitions/optimism/tokens.js.map +1 -1
  225. package/_esm/environments/definitions/polygon/environment.js +21 -0
  226. package/_esm/environments/definitions/polygon/environment.js.map +1 -0
  227. package/_esm/environments/definitions/polygon/tokens.js +18 -0
  228. package/_esm/environments/definitions/polygon/tokens.js.map +1 -0
  229. package/_esm/environments/index.js +35 -6
  230. package/_esm/environments/index.js.map +1 -1
  231. package/_esm/environments/types/config.js +2 -0
  232. package/_esm/environments/types/config.js.map +1 -1
  233. package/_esm/errors/version.js +1 -1
  234. package/_esm/index.js +1 -0
  235. package/_esm/index.js.map +1 -1
  236. package/_esm/logger/console.js +32 -0
  237. package/_esm/logger/console.js.map +1 -0
  238. package/_esm/types/circulatingSupply.js +2 -0
  239. package/_esm/types/circulatingSupply.js.map +1 -0
  240. package/_esm/types/proposal.js.map +1 -1
  241. package/_types/actions/core/getUserBalances.d.ts +3 -3
  242. package/_types/actions/core/getUserBalances.d.ts.map +1 -1
  243. package/_types/actions/core/markets/common.d.ts.map +1 -1
  244. package/_types/actions/core/markets/getMarketSnapshots.d.ts +11 -0
  245. package/_types/actions/core/markets/getMarketSnapshots.d.ts.map +1 -0
  246. package/_types/actions/core/markets/getMarkets.d.ts.map +1 -1
  247. package/_types/actions/core/user-positions/common.d.ts.map +1 -1
  248. package/_types/actions/core/user-positions/getUserPositions.d.ts +2 -2
  249. package/_types/actions/core/user-positions/getUserPositions.d.ts.map +1 -1
  250. package/_types/actions/core/user-rewards/common.d.ts.map +1 -1
  251. package/_types/actions/core/user-rewards/getUserRewards.d.ts +2 -2
  252. package/_types/actions/core/user-rewards/getUserRewards.d.ts.map +1 -1
  253. package/_types/actions/governance/getCirculatingSupplySnapshots.d.ts +8 -0
  254. package/_types/actions/governance/getCirculatingSupplySnapshots.d.ts.map +1 -0
  255. package/_types/actions/governance/getDelegates.d.ts.map +1 -1
  256. package/_types/actions/governance/getDiscussions.d.ts.map +1 -1
  257. package/_types/actions/governance/getGovernanceTokenInfo.d.ts.map +1 -1
  258. package/_types/actions/governance/getUserStakingInfo.d.ts +2 -2
  259. package/_types/actions/governance/getUserStakingInfo.d.ts.map +1 -1
  260. package/_types/actions/governance/getUserVoteReceipt.d.ts.map +1 -1
  261. package/_types/actions/governance/getUserVotingPowers.d.ts +2 -2
  262. package/_types/actions/governance/getUserVotingPowers.d.ts.map +1 -1
  263. package/_types/actions/governance/proposals/common.d.ts.map +1 -1
  264. package/_types/actions/governance/proposals/getProposals.d.ts +3 -3
  265. package/_types/actions/governance/proposals/getProposals.d.ts.map +1 -1
  266. package/_types/actions/governance/snapshot/getSnapshotProposals.d.ts +2 -2
  267. package/_types/actions/governance/snapshot/getSnapshotProposals.d.ts.map +1 -1
  268. package/_types/actions/index.d.ts +31 -29
  269. package/_types/actions/index.d.ts.map +1 -1
  270. package/_types/actions/morpho/getMorphoUserBalances.d.ts +2 -2
  271. package/_types/actions/morpho/getMorphoUserBalances.d.ts.map +1 -1
  272. package/_types/actions/morpho/markets/common.d.ts.map +1 -1
  273. package/_types/actions/morpho/markets/getMorphoMarkets.d.ts +2 -2
  274. package/_types/actions/morpho/markets/getMorphoMarkets.d.ts.map +1 -1
  275. package/_types/actions/morpho/user-positions/common.d.ts.map +1 -1
  276. package/_types/actions/morpho/user-positions/getMorphoMarketUserPositions.d.ts +2 -2
  277. package/_types/actions/morpho/user-positions/getMorphoMarketUserPositions.d.ts.map +1 -1
  278. package/_types/actions/morpho/user-positions/getMorphoVaultUserPositions.d.ts +2 -2
  279. package/_types/actions/morpho/user-positions/getMorphoVaultUserPositions.d.ts.map +1 -1
  280. package/_types/actions/morpho/user-rewards/common.d.ts.map +1 -1
  281. package/_types/actions/morpho/user-rewards/getMorphoUserRewards.d.ts +2 -2
  282. package/_types/actions/morpho/user-rewards/getMorphoUserRewards.d.ts.map +1 -1
  283. package/_types/actions/morpho/vaults/common.d.ts.map +1 -1
  284. package/_types/actions/morpho/vaults/getMorphoVaults.d.ts +3 -3
  285. package/_types/actions/morpho/vaults/getMorphoVaults.d.ts.map +1 -1
  286. package/_types/client/createActions.d.ts +44 -27
  287. package/_types/client/createActions.d.ts.map +1 -1
  288. package/_types/client/createMoonwellClient.d.ts +2353 -41209
  289. package/_types/client/createMoonwellClient.d.ts.map +1 -1
  290. package/_types/common/amount.d.ts +2 -0
  291. package/_types/common/amount.d.ts.map +1 -1
  292. package/_types/common/index.d.ts +3 -2
  293. package/_types/common/index.d.ts.map +1 -1
  294. package/_types/common/types.d.ts +7 -0
  295. package/_types/common/types.d.ts.map +1 -1
  296. package/_types/environments/abis/index.d.ts +2 -1
  297. package/_types/environments/abis/index.d.ts.map +1 -1
  298. package/_types/environments/abis/tokenSaleAbi.d.ts +602 -0
  299. package/_types/environments/abis/tokenSaleAbi.d.ts.map +1 -0
  300. package/_types/environments/definitions/arbitrum/environment.d.ts +6 -0
  301. package/_types/environments/definitions/arbitrum/environment.d.ts.map +1 -0
  302. package/_types/environments/definitions/arbitrum/tokens.d.ts +15 -0
  303. package/_types/environments/definitions/arbitrum/tokens.d.ts.map +1 -0
  304. package/_types/environments/definitions/avalanche/environment.d.ts +6 -0
  305. package/_types/environments/definitions/avalanche/environment.d.ts.map +1 -0
  306. package/_types/environments/definitions/avalanche/tokens.d.ts +15 -0
  307. package/_types/environments/definitions/avalanche/tokens.d.ts.map +1 -0
  308. package/_types/environments/definitions/base/core-markets.d.ts +8 -0
  309. package/_types/environments/definitions/base/core-markets.d.ts.map +1 -1
  310. package/_types/environments/definitions/base/environment.d.ts +1 -1
  311. package/_types/environments/definitions/base/environment.d.ts.map +1 -1
  312. package/_types/environments/definitions/base/morpho-markets.d.ts +1 -0
  313. package/_types/environments/definitions/base/morpho-markets.d.ts.map +1 -1
  314. package/_types/environments/definitions/base/morpho-vaults.d.ts +4 -0
  315. package/_types/environments/definitions/base/morpho-vaults.d.ts.map +1 -1
  316. package/_types/environments/definitions/base/tokens.d.ts +36 -0
  317. package/_types/environments/definitions/base/tokens.d.ts.map +1 -1
  318. package/_types/environments/definitions/ethereum/environment.d.ts +6 -0
  319. package/_types/environments/definitions/ethereum/environment.d.ts.map +1 -0
  320. package/_types/environments/definitions/ethereum/tokens.d.ts +15 -0
  321. package/_types/environments/definitions/ethereum/tokens.d.ts.map +1 -0
  322. package/_types/environments/definitions/moonbeam/contracts.d.ts +1 -0
  323. package/_types/environments/definitions/moonbeam/contracts.d.ts.map +1 -1
  324. package/_types/environments/definitions/moonbeam/core-markets.d.ts +31 -15
  325. package/_types/environments/definitions/moonbeam/core-markets.d.ts.map +1 -1
  326. package/_types/environments/definitions/moonbeam/environment.d.ts +90 -31
  327. package/_types/environments/definitions/moonbeam/environment.d.ts.map +1 -1
  328. package/_types/environments/definitions/moonbeam/tokens.d.ts +61 -19
  329. package/_types/environments/definitions/moonbeam/tokens.d.ts.map +1 -1
  330. package/_types/environments/definitions/moonriver/core-markets.d.ts +4 -0
  331. package/_types/environments/definitions/moonriver/core-markets.d.ts.map +1 -1
  332. package/_types/environments/definitions/moonriver/environment.d.ts +4 -0
  333. package/_types/environments/definitions/moonriver/environment.d.ts.map +1 -1
  334. package/_types/environments/definitions/optimism/core-markets.d.ts +4 -0
  335. package/_types/environments/definitions/optimism/core-markets.d.ts.map +1 -1
  336. package/_types/environments/definitions/optimism/environment.d.ts +16 -0
  337. package/_types/environments/definitions/optimism/environment.d.ts.map +1 -1
  338. package/_types/environments/definitions/optimism/tokens.d.ts +12 -0
  339. package/_types/environments/definitions/optimism/tokens.d.ts.map +1 -1
  340. package/_types/environments/definitions/polygon/environment.d.ts +6 -0
  341. package/_types/environments/definitions/polygon/environment.d.ts.map +1 -0
  342. package/_types/environments/definitions/polygon/tokens.d.ts +15 -0
  343. package/_types/environments/definitions/polygon/tokens.d.ts.map +1 -0
  344. package/_types/environments/index.d.ts +321 -661
  345. package/_types/environments/index.d.ts.map +1 -1
  346. package/_types/environments/types/config.d.ts +14 -7
  347. package/_types/environments/types/config.d.ts.map +1 -1
  348. package/_types/environments/types/contracts.d.ts +2 -1
  349. package/_types/environments/types/contracts.d.ts.map +1 -1
  350. package/_types/errors/version.d.ts +1 -1
  351. package/_types/index.d.ts +7 -5
  352. package/_types/index.d.ts.map +1 -1
  353. package/_types/logger/console.d.ts +3 -0
  354. package/_types/logger/console.d.ts.map +1 -0
  355. package/_types/types/circulatingSupply.d.ts +8 -0
  356. package/_types/types/circulatingSupply.d.ts.map +1 -0
  357. package/_types/types/market.d.ts +14 -0
  358. package/_types/types/market.d.ts.map +1 -1
  359. package/_types/types/morphoMarket.d.ts +3 -0
  360. package/_types/types/morphoMarket.d.ts.map +1 -1
  361. package/_types/types/morphoVault.d.ts +4 -2
  362. package/_types/types/morphoVault.d.ts.map +1 -1
  363. package/_types/types/proposal.d.ts +0 -8
  364. package/_types/types/proposal.d.ts.map +1 -1
  365. package/actions/core/getUserBalances.ts +72 -9
  366. package/actions/core/markets/common.ts +19 -7
  367. package/actions/core/markets/getMarketSnapshots.ts +293 -0
  368. package/actions/core/markets/getMarkets.ts +5 -0
  369. package/actions/core/user-positions/common.ts +1 -0
  370. package/actions/core/user-positions/getUserPositions.ts +2 -2
  371. package/actions/core/user-rewards/common.ts +1 -0
  372. package/actions/core/user-rewards/getUserRewards.ts +2 -2
  373. package/actions/governance/getCirculatingSupplySnapshots.ts +84 -0
  374. package/actions/governance/getDelegates.ts +12 -2
  375. package/actions/governance/getDiscussions.ts +8 -0
  376. package/actions/governance/getGovernanceTokenInfo.ts +9 -0
  377. package/actions/governance/getUserStakingInfo.ts +2 -2
  378. package/actions/governance/getUserVoteReceipt.ts +7 -6
  379. package/actions/governance/getUserVotingPowers.ts +2 -2
  380. package/actions/governance/proposals/common.ts +15 -28
  381. package/actions/governance/proposals/getProposals.ts +32 -11
  382. package/actions/governance/snapshot/getSnapshotProposals.ts +13 -3
  383. package/actions/index.ts +66 -55
  384. package/actions/morpho/getMorphoUserBalances.ts +2 -2
  385. package/actions/morpho/markets/common.ts +34 -13
  386. package/actions/morpho/markets/getMorphoMarkets.ts +13 -3
  387. package/actions/morpho/user-positions/common.ts +3 -0
  388. package/actions/morpho/user-positions/getMorphoMarketUserPositions.ts +10 -8
  389. package/actions/morpho/user-positions/getMorphoVaultUserPositions.ts +10 -8
  390. package/actions/morpho/user-rewards/common.ts +12 -5
  391. package/actions/morpho/user-rewards/getMorphoUserRewards.ts +10 -8
  392. package/actions/morpho/utils/graphql.ts +1 -1
  393. package/actions/morpho/vaults/common.ts +18 -10
  394. package/actions/morpho/vaults/getMorphoVaults.ts +12 -5
  395. package/client/createActions.ts +185 -136
  396. package/client/createMoonwellClient.ts +54 -6
  397. package/common/amount.ts +8 -0
  398. package/common/index.ts +16 -4
  399. package/common/types.ts +11 -0
  400. package/environments/abis/index.ts +15 -13
  401. package/environments/abis/tokenSaleAbi.ts +782 -0
  402. package/environments/definitions/arbitrum/environment.ts +29 -0
  403. package/environments/definitions/arbitrum/tokens.ts +18 -0
  404. package/environments/definitions/avalanche/environment.ts +29 -0
  405. package/environments/definitions/avalanche/tokens.ts +18 -0
  406. package/environments/definitions/base/core-markets.ts +8 -0
  407. package/environments/definitions/base/environment.ts +2 -1
  408. package/environments/definitions/base/morpho-markets.ts +1 -0
  409. package/environments/definitions/base/morpho-vaults.ts +4 -0
  410. package/environments/definitions/base/tokens.ts +36 -0
  411. package/environments/definitions/ethereum/environment.ts +29 -0
  412. package/environments/definitions/ethereum/tokens.ts +17 -0
  413. package/environments/definitions/governance.ts +2 -2
  414. package/environments/definitions/moonbeam/contracts.ts +1 -0
  415. package/environments/definitions/moonbeam/core-markets.ts +31 -15
  416. package/environments/definitions/moonbeam/environment.ts +1 -0
  417. package/environments/definitions/moonbeam/tokens.ts +61 -19
  418. package/environments/definitions/moonriver/core-markets.ts +4 -0
  419. package/environments/definitions/moonriver/environment.ts +1 -0
  420. package/environments/definitions/optimism/core-markets.ts +4 -0
  421. package/environments/definitions/optimism/environment.ts +5 -2
  422. package/environments/definitions/optimism/tokens.ts +12 -0
  423. package/environments/definitions/polygon/environment.ts +29 -0
  424. package/environments/definitions/polygon/tokens.ts +18 -0
  425. package/environments/index.ts +107 -18
  426. package/environments/types/config.ts +24 -5
  427. package/environments/types/contracts.ts +6 -0
  428. package/errors/version.ts +1 -1
  429. package/index.ts +14 -7
  430. package/logger/console.ts +51 -0
  431. package/package.json +1 -1
  432. package/types/circulatingSupply.ts +7 -0
  433. package/types/market.ts +15 -0
  434. package/types/morphoMarket.ts +3 -0
  435. package/types/morphoVault.ts +4 -2
  436. package/types/proposal.ts +0 -8
@@ -1,3 +1,4 @@
1
+ import { uniq } from "lodash";
1
2
  import type { Address } from "viem";
2
3
  import { Amount } from "../../../common/amount.js";
3
4
  import type { Environment, TokenConfig } from "../../../environments/index.js";
@@ -12,16 +13,20 @@ export async function getUserMorphoRewardsData(params: {
12
13
  params.environment.chainId,
13
14
  params.account,
14
15
  );
16
+
15
17
  const assets = await getMorphoAssetsData(
16
18
  params.environment.chainId,
17
19
  rewards.map((r) => r.asset.address),
18
20
  );
19
21
 
20
- const result: MorphoUserReward[] = rewards.map((r) => {
22
+ const result: (MorphoUserReward | undefined)[] = rewards.map((r) => {
21
23
  const asset = assets.find(
22
24
  (a) => a.address.toLowerCase() === r.asset.address.toLowerCase(),
23
- )!;
24
- // TODO: handle undefined
25
+ );
26
+
27
+ if (!asset) {
28
+ return undefined;
29
+ }
25
30
 
26
31
  const rewardToken: TokenConfig = {
27
32
  address: asset.address,
@@ -135,7 +140,7 @@ export async function getUserMorphoRewardsData(params: {
135
140
  }
136
141
  });
137
142
 
138
- return result;
143
+ return result.filter((r) => r !== undefined) as MorphoUserReward[];
139
144
  }
140
145
 
141
146
  type MorphoRewardsResponse = {
@@ -199,7 +204,9 @@ async function getMorphoAssetsData(
199
204
  };
200
205
  }>(`
201
206
  query {
202
- assets(where: {address_in: [${addresses.map((a: string) => `"${a}"`).join(",")}], chain_id: ${chainId}}) {
207
+ assets(where: {address_in: [${uniq(addresses)
208
+ .map((a: string) => `"${a}"`)
209
+ .join(",")}], chainId_in: ${chainId}}) {
203
210
  items {
204
211
  address
205
212
  symbol
@@ -1,7 +1,7 @@
1
1
  import type { Address } from "viem";
2
2
  import type { MoonwellClient } from "../../../client/createMoonwellClient.js";
3
3
  import { getEnvironmentsFromArgs } from "../../../common/index.js";
4
- import type { NetworkParameterType } from "../../../common/types.js";
4
+ import type { OptionalNetworkParameterType } from "../../../common/types.js";
5
5
  import type { Chain } from "../../../environments/index.js";
6
6
  import type { MorphoUserReward } from "../../../types/morphoUserReward.js";
7
7
  import { getUserMorphoRewardsData } from "./common.js";
@@ -9,7 +9,7 @@ import { getUserMorphoRewardsData } from "./common.js";
9
9
  export type GetMorphoUserRewardsParameters<
10
10
  environments,
11
11
  network extends Chain | undefined,
12
- > = NetworkParameterType<environments, network> & {
12
+ > = OptionalNetworkParameterType<environments, network> & {
13
13
  userAddress: Address;
14
14
  };
15
15
 
@@ -25,12 +25,14 @@ export async function getMorphoUserRewards<
25
25
  const environments = getEnvironmentsFromArgs(client, args);
26
26
 
27
27
  const environmentsUserRewards = await Promise.all(
28
- environments.map((environment) => {
29
- return getUserMorphoRewardsData({
30
- environment,
31
- account: args.userAddress,
32
- });
33
- }),
28
+ environments
29
+ .filter((environment) => environment.contracts.morphoViews !== undefined)
30
+ .map((environment) => {
31
+ return getUserMorphoRewardsData({
32
+ environment,
33
+ account: args.userAddress,
34
+ });
35
+ }),
34
36
  );
35
37
 
36
38
  return environmentsUserRewards.flat();
@@ -8,7 +8,7 @@ export async function getGraphQL<T>(
8
8
  method: "POST",
9
9
  headers: { "Content-Type": "application/json" },
10
10
  body: JSON.stringify({ query: query, operationName, variables }),
11
- signal: AbortSignal.timeout(5000),
11
+ signal: AbortSignal.timeout(10000),
12
12
  });
13
13
 
14
14
  const json = await response.json();
@@ -5,7 +5,7 @@ import type { Environment, TokenConfig } from "../../../environments/index.js";
5
5
  import type { MorphoReward } from "../../../types/morphoReward.js";
6
6
  import type {
7
7
  MorphoVault,
8
- MorphoVaultMarkets,
8
+ MorphoVaultMarket,
9
9
  } from "../../../types/morphoVault.js";
10
10
  import { getGraphQL } from "../utils/graphql.js";
11
11
  import { WAD, mulDivDown, wMulDown } from "../utils/math.js";
@@ -97,7 +97,7 @@ export async function getMorphoVaultsData(params: {
97
97
  marketLiquidityUsd = totalSuppliedUsd;
98
98
  }
99
99
 
100
- const mapping: MorphoVaultMarkets = {
100
+ const mapping: MorphoVaultMarket = {
101
101
  marketId: vaultMarket.marketId,
102
102
  allocation,
103
103
  marketApy,
@@ -144,11 +144,13 @@ export async function getMorphoVaultsData(params: {
144
144
 
145
145
  const mapping: MorphoVault = {
146
146
  chainId: environment.chainId,
147
+ vaultKey: vaultKey!,
147
148
  vaultToken,
148
149
  underlyingToken,
149
150
  underlyingPrice: underlyingPrice.value,
150
151
  baseApy,
151
152
  totalApy: baseApy,
153
+ rewardsApy: 0,
152
154
  curators: [],
153
155
  performanceFee,
154
156
  timelock,
@@ -176,6 +178,7 @@ export async function getMorphoVaultsData(params: {
176
178
  if (params.includeRewards === true) {
177
179
  const vaults = Object.values(result).flat();
178
180
  const rewards = await getMorphoVaultsRewards(vaults);
181
+
179
182
  vaults.forEach((vault) => {
180
183
  const vaultRewards = rewards.find(
181
184
  (reward) =>
@@ -208,8 +211,8 @@ export async function getMorphoVaultsData(params: {
208
211
 
209
212
  market.rewards = marketRewards;
210
213
  market.rewards.forEach((reward) => {
211
- const supplyApr = reward.supplyApr * (market.allocation / 100);
212
- const supplyAmount = reward.supplyAmount * (market.allocation / 100);
214
+ const supplyApr = reward.supplyApr * market.allocation;
215
+ const supplyAmount = reward.supplyAmount * market.allocation;
213
216
 
214
217
  const vaultReward = vault.rewards.find(
215
218
  (r) => r.asset.address === reward.asset.address,
@@ -229,9 +232,12 @@ export async function getMorphoVaultsData(params: {
229
232
  });
230
233
  });
231
234
 
232
- vault.totalApy =
233
- vault.rewards.reduce((acc, curr) => acc + curr.supplyApr, 0) +
234
- vault.baseApy;
235
+ vault.rewardsApy = vault.rewards.reduce(
236
+ (acc, curr) => acc + curr.supplyApr,
237
+ 0,
238
+ );
239
+
240
+ vault.totalApy = vault.rewardsApy + vault.baseApy;
235
241
  });
236
242
  }
237
243
 
@@ -375,15 +381,16 @@ export async function getMorphoVaultsRewards(
375
381
  const tokenAmountPer1000 =
376
382
  (Number.parseFloat(reward.amountPerSuppliedToken) /
377
383
  item.market.loanAsset.priceUsd) *
378
- 1000 || "0";
384
+ 1000;
379
385
  const tokenDecimals = 10 ** reward.asset.decimals;
380
386
  const amount = Number(tokenAmountPer1000) / tokenDecimals;
387
+
381
388
  return {
382
389
  chainId: item.market.morphoBlue.chain.id,
383
390
  vaultId: item.user.address,
384
391
  marketId: item.market.uniqueKey,
385
392
  asset: reward.asset,
386
- supplyApr: reward.supplyApr || 0 * 100,
393
+ supplyApr: (reward.supplyApr || 0) * 100,
387
394
  supplyAmount: amount,
388
395
  borrowApr: 0,
389
396
  borrowAmount: 0,
@@ -397,9 +404,10 @@ export async function getMorphoVaultsRewards(
397
404
  const tokenAmountPer1000 =
398
405
  (Number.parseFloat(reward.amountPerSuppliedToken) /
399
406
  item.asset.priceUsd) *
400
- 1000 || "0";
407
+ 1000;
401
408
  const tokenDecimals = 10 ** reward.asset.decimals;
402
409
  const amount = Number(tokenAmountPer1000) / tokenDecimals;
410
+
403
411
  return {
404
412
  chainId: item.chain.id,
405
413
  vaultId: item.address,
@@ -1,14 +1,15 @@
1
1
  import type { MoonwellClient } from "../../../client/createMoonwellClient.js";
2
2
  import { getEnvironmentsFromArgs } from "../../../common/index.js";
3
- import type { NetworkParameterType } from "../../../common/types.js";
3
+ import type { OptionalNetworkParameterType } from "../../../common/types.js";
4
4
  import type { Chain } from "../../../environments/index.js";
5
+ import * as logger from "../../../logger/console.js";
5
6
  import type { MorphoVault } from "../../../types/morphoVault.js";
6
7
  import { getMorphoVaultsData } from "./common.js";
7
8
 
8
9
  export type GetMorphoVaultsParameters<
9
10
  environments,
10
11
  network extends Chain | undefined,
11
- > = NetworkParameterType<environments, network> & {
12
+ > = OptionalNetworkParameterType<environments, network> & {
12
13
  includeRewards?: boolean | undefined;
13
14
  };
14
15
 
@@ -19,12 +20,18 @@ export async function getMorphoVaults<
19
20
  Network extends Chain | undefined,
20
21
  >(
21
22
  client: MoonwellClient,
22
- args: GetMorphoVaultsParameters<environments, Network>,
23
+ args?: GetMorphoVaultsParameters<environments, Network>,
23
24
  ): GetMorphoVaultsReturnType {
24
25
  const environments = getEnvironmentsFromArgs(client, args);
25
26
 
26
- return getMorphoVaultsData({
27
+ const logId = logger.start("getMorphoVaults", "Starting to get vaults...");
28
+
29
+ const result = await getMorphoVaultsData({
27
30
  environments: environments,
28
- includeRewards: args.includeRewards ?? false,
31
+ includeRewards: args?.includeRewards ?? false,
29
32
  });
33
+
34
+ logger.end(logId);
35
+
36
+ return result;
30
37
  }
@@ -36,6 +36,11 @@ import {
36
36
  type GetUserRewardsReturnType,
37
37
  getUserRewards,
38
38
  } from "../actions/core/user-rewards/getUserRewards.js";
39
+ import {
40
+ type GetCirculatingSupplySnapshotsParameters,
41
+ type GetCirculatingSupplySnapshotsReturnType,
42
+ getCirculatingSupplySnapshots,
43
+ } from "../actions/governance/getCirculatingSupplySnapshots.js";
39
44
  import {
40
45
  type GetDelegatesReturnType,
41
46
  getDelegates,
@@ -94,6 +99,11 @@ import {
94
99
  type GetSnapshotProposalsReturnType,
95
100
  getSnapshotProposals,
96
101
  } from "../actions/governance/snapshot/getSnapshotProposals.js";
102
+ import {
103
+ type GetMarketSnapshotsParameters,
104
+ type GetMarketSnapshotsReturnType,
105
+ getMarketSnapshots,
106
+ } from "../actions/index.js";
97
107
  import {
98
108
  type GetMorphoUserBalancesParameters,
99
109
  type GetMorphoUserBalancesReturnType,
@@ -144,144 +154,183 @@ import {
144
154
  type GetMorphoVaultsReturnType,
145
155
  getMorphoVaults,
146
156
  } from "../actions/morpho/vaults/getMorphoVaults.js";
157
+ import type { Environment, SupportedChains } from "../environments/index.js";
158
+
159
+ export type Actions<
160
+ environments extends { [name in SupportedChains]?: Environment },
161
+ > = {
162
+ getMarket: <chain extends Chain | undefined = Chain | undefined>(
163
+ args: GetMarketParameters<environments, chain>,
164
+ ) => GetMarketReturnType;
165
+
166
+ getMarkets: <chain extends Chain | undefined = Chain | undefined>(
167
+ args?: GetMarketsParameters<environments, chain>,
168
+ ) => GetMarketsReturnType;
169
+
170
+ getUserPosition: <chain extends Chain | undefined = Chain | undefined>(
171
+ args: GetUserPositionParameters<environments, chain>,
172
+ ) => GetUserPositionReturnType;
173
+
174
+ getUserPositions: <chain extends Chain | undefined = Chain | undefined>(
175
+ args: GetUserPositionsParameters<environments, chain>,
176
+ ) => GetUserPositionsReturnType;
177
+
178
+ getUserReward: <chain extends Chain | undefined = Chain | undefined>(
179
+ args: GetUserRewardParameters<environments, chain>,
180
+ ) => GetUserRewardReturnType;
181
+
182
+ getUserRewards: <chain extends Chain | undefined = Chain | undefined>(
183
+ args: GetUserRewardsParameters<environments, chain>,
184
+ ) => GetUserRewardsReturnType;
185
+
186
+ getUserBalances: <chain extends Chain | undefined = Chain | undefined>(
187
+ args: GetUserBalancesParameters<environments, chain>,
188
+ ) => GetUserBalancesReturnType;
189
+
190
+ getProposal: <chain extends Chain | undefined = Chain | undefined>(
191
+ args: GetProposalParameters<environments, chain>,
192
+ ) => GetProposalReturnType;
193
+
194
+ getProposals: <chain extends Chain | undefined = Chain | undefined>(
195
+ args?: GetProposalsParameters<environments, chain>,
196
+ ) => GetProposalsReturnType;
197
+
198
+ getSnapshotProposal: <chain extends Chain | undefined = Chain | undefined>(
199
+ args: GetSnapshotProposalParameters<environments, chain>,
200
+ ) => GetSnapshotProposalReturnType;
201
+
202
+ getSnapshotProposals: <chain extends Chain | undefined = Chain | undefined>(
203
+ args?: GetSnapshotProposalsParameters<environments, chain>,
204
+ ) => GetSnapshotProposalsReturnType;
205
+
206
+ getDelegates: () => GetDelegatesReturnType;
207
+
208
+ getDiscussions: () => GetDiscussionsReturnType;
209
+
210
+ getGovernanceTokenInfo: (
211
+ args: GetGovernanceTokenInfoParameters,
212
+ ) => GetGovernanceTokenInfoReturnType;
213
+
214
+ getStakingInfo: <chain extends Chain | undefined = Chain | undefined>(
215
+ args?: GetStakingInfoParameters<environments, chain>,
216
+ ) => GetStakingInfoReturnType;
217
+
218
+ getStakingSnapshots: <chain extends Chain | undefined = Chain | undefined>(
219
+ args?: GetStakingSnapshotsParameters<environments, chain>,
220
+ ) => GetStakingSnapshotsReturnType;
221
+
222
+ getUserStakingInfo: <chain extends Chain | undefined = Chain | undefined>(
223
+ args: GetUserStakingInfoParameters<environments, chain>,
224
+ ) => GetUserStakingInfoReturnType;
225
+
226
+ getUserVoteReceipt: <chain extends Chain | undefined = Chain | undefined>(
227
+ args: GetUserVoteReceiptParameters<environments, chain>,
228
+ ) => GetUserVoteReceiptReturnType;
229
+
230
+ getUserVotingPowers: <chain extends Chain | undefined = Chain | undefined>(
231
+ args: GetUserVotingPowersParameters<environments, chain>,
232
+ ) => GetUserVotingPowersReturnType;
233
+
234
+ getMorphoMarket: <chain extends Chain | undefined = Chain | undefined>(
235
+ args: GetMorphoMarketParameters<environments, chain>,
236
+ ) => GetMorphoMarketReturnType;
237
+
238
+ getMorphoMarkets: <chain extends Chain | undefined = Chain | undefined>(
239
+ args?: GetMorphoMarketsParameters<environments, chain>,
240
+ ) => GetMorphoMarketsReturnType;
241
+
242
+ getMorphoMarketUserPosition: <
243
+ chain extends Chain | undefined = Chain | undefined,
244
+ >(
245
+ args: GetMorphoMarketUserPositionParameters<environments, chain>,
246
+ ) => GetMorphoMarketUserPositionReturnType;
247
+
248
+ getMorphoMarketUserPositions: <
249
+ chain extends Chain | undefined = Chain | undefined,
250
+ >(
251
+ args: GetMorphoMarketUserPositionsParameters<environments, chain>,
252
+ ) => GetMorphoMarketUserPositionsReturnType;
253
+
254
+ getMorphoVaultUserPosition: <
255
+ chain extends Chain | undefined = Chain | undefined,
256
+ >(
257
+ args: GetMorphoVaultUserPositionParameters<environments, chain>,
258
+ ) => GetMorphoVaultUserPositionReturnType;
259
+
260
+ getMorphoVaultUserPositions: <
261
+ chain extends Chain | undefined = Chain | undefined,
262
+ >(
263
+ args: GetMorphoVaultUserPositionsParameters<environments, chain>,
264
+ ) => GetMorphoVaultUserPositionsReturnType;
265
+
266
+ getMorphoUserRewards: <chain extends Chain | undefined = Chain | undefined>(
267
+ args: GetMorphoUserRewardsParameters<environments, chain>,
268
+ ) => GetMorphoUserRewardsReturnType;
269
+
270
+ getMorphoVault: <chain extends Chain | undefined = Chain | undefined>(
271
+ args: GetMorphoVaultParameters<environments, chain>,
272
+ ) => GetMorphoVaultReturnType;
273
+
274
+ getMorphoVaults: <chain extends Chain | undefined = Chain | undefined>(
275
+ args?: GetMorphoVaultsParameters<environments, chain>,
276
+ ) => GetMorphoVaultsReturnType;
277
+
278
+ getMorphoUserBalances: <chain extends Chain | undefined = Chain | undefined>(
279
+ args: GetMorphoUserBalancesParameters<environments, chain>,
280
+ ) => GetMorphoUserBalancesReturnType;
281
+
282
+ getCirculatingSupplySnapshots: <
283
+ chain extends Chain | undefined = Chain | undefined,
284
+ >(
285
+ args: GetCirculatingSupplySnapshotsParameters<environments, chain>,
286
+ ) => GetCirculatingSupplySnapshotsReturnType;
287
+
288
+ getMarketSnapshots: <chain extends Chain | undefined = Chain | undefined>(
289
+ args: GetMarketSnapshotsParameters<environments, chain>,
290
+ ) => GetMarketSnapshotsReturnType;
291
+ };
147
292
 
148
- export const createActions = <environments>(
293
+ export const actions = <
294
+ environments extends { [name in SupportedChains]?: Environment },
295
+ >(
149
296
  client: MoonwellClient<environments>,
150
- ) => {
297
+ ): Actions<environments> => {
151
298
  return {
152
- getMarket: <chain extends Chain | undefined>(
153
- args: GetMarketParameters<environments, chain>,
154
- ): GetMarketReturnType => getMarket<environments, chain>(client, args),
155
-
156
- getMarkets: <chain extends Chain | undefined>(
157
- args?: GetMarketsParameters<environments, chain>,
158
- ): GetMarketsReturnType => getMarkets<environments, chain>(client, args),
159
-
160
- getUserPosition: <chain extends Chain | undefined>(
161
- args: GetUserPositionParameters<environments, chain>,
162
- ): GetUserPositionReturnType =>
163
- getUserPosition<environments, chain>(client, args),
164
-
165
- getUserPositions: <chain extends Chain | undefined>(
166
- args: GetUserPositionsParameters<environments, chain>,
167
- ): GetUserPositionsReturnType =>
168
- getUserPositions<environments, chain>(client, args),
169
-
170
- getUserReward: <chain extends Chain | undefined>(
171
- args: GetUserRewardParameters<environments, chain>,
172
- ): GetUserRewardReturnType =>
173
- getUserReward<environments, chain>(client, args),
174
-
175
- getUserRewards: <chain extends Chain | undefined>(
176
- args: GetUserRewardsParameters<environments, chain>,
177
- ): GetUserRewardsReturnType =>
178
- getUserRewards<environments, chain>(client, args),
179
-
180
- getUserBalances: <chain extends Chain | undefined>(
181
- args: GetUserBalancesParameters<environments, chain>,
182
- ): GetUserBalancesReturnType =>
183
- getUserBalances<environments, chain>(client, args),
184
-
185
- getProposal: <chain extends Chain | undefined>(
186
- args: GetProposalParameters<environments, chain>,
187
- ): GetProposalReturnType => getProposal<environments, chain>(client, args),
188
-
189
- getProposals: <chain extends Chain | undefined>(
190
- args?: GetProposalsParameters<environments, chain>,
191
- ): GetProposalsReturnType =>
192
- getProposals<environments, chain>(client, args),
193
-
194
- getSnapshotProposal: <chain extends Chain | undefined>(
195
- args: GetSnapshotProposalParameters<environments, chain>,
196
- ): GetSnapshotProposalReturnType =>
197
- getSnapshotProposal<environments, chain>(client, args),
198
-
199
- getSnapshotProposals: <chain extends Chain | undefined>(
200
- args?: GetSnapshotProposalsParameters<environments, chain>,
201
- ): GetSnapshotProposalsReturnType =>
202
- getSnapshotProposals<environments, chain>(client, args),
203
-
204
- getDelegates: (): GetDelegatesReturnType => getDelegates(client),
205
-
206
- getDiscussions: (): GetDiscussionsReturnType => getDiscussions(client),
207
-
208
- getGovernanceTokenInfo: (
209
- args: GetGovernanceTokenInfoParameters,
210
- ): GetGovernanceTokenInfoReturnType => getGovernanceTokenInfo(client, args),
211
-
212
- getStakingInfo: <chain extends Chain | undefined>(
213
- args?: GetStakingInfoParameters<environments, chain>,
214
- ): GetStakingInfoReturnType =>
215
- getStakingInfo<environments, chain>(client, args),
216
-
217
- getStakingSnapshots: <chain extends Chain | undefined>(
218
- args?: GetStakingSnapshotsParameters<environments, chain>,
219
- ): GetStakingSnapshotsReturnType =>
220
- getStakingSnapshots<environments, chain>(client, args),
221
-
222
- getUserStakingInfo: <chain extends Chain | undefined>(
223
- args: GetUserStakingInfoParameters<environments, chain>,
224
- ): GetUserStakingInfoReturnType =>
225
- getUserStakingInfo<environments, chain>(client, args),
226
-
227
- getUserVoteReceipt: <chain extends Chain | undefined>(
228
- args: GetUserVoteReceiptParameters<environments, chain>,
229
- ): GetUserVoteReceiptReturnType =>
230
- getUserVoteReceipt<environments, chain>(client, args),
231
-
232
- getUserVotingPowers: <chain extends Chain | undefined>(
233
- args: GetUserVotingPowersParameters<environments, chain>,
234
- ): GetUserVotingPowersReturnType =>
235
- getUserVotingPowers<environments, chain>(client, args),
236
-
237
- getMorphoMarket: <chain extends Chain | undefined>(
238
- args: GetMorphoMarketParameters<environments, chain>,
239
- ): GetMorphoMarketReturnType =>
240
- getMorphoMarket<environments, chain>(client, args),
241
-
242
- getMorphoMarkets: <chain extends Chain | undefined>(
243
- args?: GetMorphoMarketsParameters<environments, chain>,
244
- ): GetMorphoMarketsReturnType =>
245
- getMorphoMarkets<environments, chain>(client, args),
246
-
247
- getMorphoMarketUserPosition: <chain extends Chain | undefined>(
248
- args: GetMorphoMarketUserPositionParameters<environments, chain>,
249
- ): GetMorphoMarketUserPositionReturnType =>
250
- getMorphoMarketUserPosition<environments, chain>(client, args),
251
-
252
- getMorphoMarketUserPositions: <chain extends Chain | undefined>(
253
- args: GetMorphoMarketUserPositionsParameters<environments, chain>,
254
- ): GetMorphoMarketUserPositionsReturnType =>
255
- getMorphoMarketUserPositions<environments, chain>(client, args),
256
-
257
- getMorphoVaultUserPosition: <chain extends Chain | undefined>(
258
- args: GetMorphoVaultUserPositionParameters<environments, chain>,
259
- ): GetMorphoVaultUserPositionReturnType =>
260
- getMorphoVaultUserPosition<environments, chain>(client, args),
261
-
262
- getMorphoVaultUserPositions: <chain extends Chain | undefined>(
263
- args: GetMorphoVaultUserPositionsParameters<environments, chain>,
264
- ): GetMorphoVaultUserPositionsReturnType =>
265
- getMorphoVaultUserPositions<environments, chain>(client, args),
266
-
267
- getMorphoUserRewards: <chain extends Chain | undefined>(
268
- args: GetMorphoUserRewardsParameters<environments, chain>,
269
- ): GetMorphoUserRewardsReturnType =>
270
- getMorphoUserRewards<environments, chain>(client, args),
271
-
272
- getMorphoVault: <chain extends Chain | undefined>(
273
- args: GetMorphoVaultParameters<environments, chain>,
274
- ): GetMorphoVaultReturnType =>
275
- getMorphoVault<environments, chain>(client, args),
276
-
277
- getMorphoVaults: <chain extends Chain | undefined>(
278
- args: GetMorphoVaultsParameters<environments, chain>,
279
- ): GetMorphoVaultsReturnType =>
280
- getMorphoVaults<environments, chain>(client, args),
281
-
282
- getMorphoUserBalances: <chain extends Chain | undefined>(
283
- args: GetMorphoUserBalancesParameters<environments, chain>,
284
- ): GetMorphoUserBalancesReturnType =>
285
- getMorphoUserBalances<environments, chain>(client, args),
299
+ getMarket: (args) => getMarket(client, args),
300
+ getMarkets: (args) => getMarkets(client, args),
301
+ getUserPosition: (args) => getUserPosition(client, args),
302
+ getUserPositions: (args) => getUserPositions(client, args),
303
+ getUserReward: (args) => getUserReward(client, args),
304
+ getUserRewards: (args) => getUserRewards(client, args),
305
+ getUserBalances: (args) => getUserBalances(client, args),
306
+ getProposal: (args) => getProposal(client, args),
307
+ getProposals: (args) => getProposals(client, args),
308
+ getSnapshotProposal: (args) => getSnapshotProposal(client, args),
309
+ getSnapshotProposals: (args) => getSnapshotProposals(client, args),
310
+ getDelegates: () => getDelegates(client),
311
+ getDiscussions: () => getDiscussions(client),
312
+ getGovernanceTokenInfo: (args) => getGovernanceTokenInfo(client, args),
313
+ getStakingInfo: (args) => getStakingInfo(client, args),
314
+ getStakingSnapshots: (args) => getStakingSnapshots(client, args),
315
+ getUserStakingInfo: (args) => getUserStakingInfo(client, args),
316
+ getUserVoteReceipt: (args) => getUserVoteReceipt(client, args),
317
+ getUserVotingPowers: (args) => getUserVotingPowers(client, args),
318
+ getMorphoMarket: (args) => getMorphoMarket(client, args),
319
+ getMorphoMarkets: (args) => getMorphoMarkets(client, args),
320
+ getMorphoMarketUserPosition: (args) =>
321
+ getMorphoMarketUserPosition(client, args),
322
+ getMorphoMarketUserPositions: (args) =>
323
+ getMorphoMarketUserPositions(client, args),
324
+ getMorphoVaultUserPosition: (args) =>
325
+ getMorphoVaultUserPosition(client, args),
326
+ getMorphoVaultUserPositions: (args) =>
327
+ getMorphoVaultUserPositions(client, args),
328
+ getMorphoUserRewards: (args) => getMorphoUserRewards(client, args),
329
+ getMorphoVault: (args) => getMorphoVault(client, args),
330
+ getMorphoVaults: (args) => getMorphoVaults(client, args),
331
+ getMorphoUserBalances: (args) => getMorphoUserBalances(client, args),
332
+ getCirculatingSupplySnapshots: (args) =>
333
+ getCirculatingSupplySnapshots(client, args),
334
+ getMarketSnapshots: (args) => getMarketSnapshots(client, args),
286
335
  };
287
336
  };
@@ -1,18 +1,26 @@
1
1
  import type { Narrow, Prettify } from "viem";
2
2
  import {
3
+ type ArbitrumEnvironment,
4
+ type AvalancheEnvironment,
3
5
  type BaseEnvironment,
4
6
  type Environment,
7
+ type EthereumEnvironment,
5
8
  type MoonbeamEnvironment,
6
9
  type MoonriverEnvironment,
7
10
  type OptimismEnvironment,
11
+ type PolygonEnvironment,
8
12
  type SupportedChains,
13
+ arbitrum,
14
+ avalanche,
9
15
  base,
10
16
  createEnvironment,
17
+ ethereum,
11
18
  moonbeam,
12
19
  moonriver,
13
20
  optimism,
21
+ polygon,
14
22
  } from "../environments/index.js";
15
- import { createActions } from "./createActions.js";
23
+ import { actions } from "./createActions.js";
16
24
 
17
25
  export type MoonwellClient<
18
26
  environments = { [name in SupportedChains]?: Environment },
@@ -35,6 +43,26 @@ export type MoonwellClient<
35
43
  name,
36
44
  "moonriver"
37
45
  >]: MoonriverEnvironment;
46
+ } & {
47
+ [name in keyof environments as Extract<
48
+ name,
49
+ "ethereum"
50
+ >]: EthereumEnvironment;
51
+ } & {
52
+ [name in keyof environments as Extract<
53
+ name,
54
+ "avalanche"
55
+ >]: AvalancheEnvironment;
56
+ } & {
57
+ [name in keyof environments as Extract<
58
+ name,
59
+ "arbitrum"
60
+ >]: ArbitrumEnvironment;
61
+ } & {
62
+ [name in keyof environments as Extract<
63
+ name,
64
+ "polygon"
65
+ >]: PolygonEnvironment;
38
66
  }
39
67
  >;
40
68
  };
@@ -67,7 +95,13 @@ export const createMoonwellClient = <const networks>(config: {
67
95
  ? moonbeam
68
96
  : curr === "moonriver"
69
97
  ? moonriver
70
- : base,
98
+ : curr === "ethereum"
99
+ ? ethereum
100
+ : curr === "avalanche"
101
+ ? avalanche
102
+ : curr === "arbitrum"
103
+ ? arbitrum
104
+ : polygon,
71
105
  rpcUrls: networkConfig.rpcUrls,
72
106
  }),
73
107
  };
@@ -89,6 +123,23 @@ export const createMoonwellClient = <const networks>(config: {
89
123
  name,
90
124
  "moonriver"
91
125
  >]: MoonriverEnvironment;
126
+ } & {
127
+ [name in keyof networks as Extract<
128
+ name,
129
+ "ethereum"
130
+ >]: EthereumEnvironment;
131
+ } & {
132
+ [name in keyof networks as Extract<
133
+ name,
134
+ "avalanche"
135
+ >]: AvalancheEnvironment;
136
+ } & {
137
+ [name in keyof networks as Extract<
138
+ name,
139
+ "arbitrum"
140
+ >]: ArbitrumEnvironment;
141
+ } & {
142
+ [name in keyof networks as Extract<name, "polygon">]: PolygonEnvironment;
92
143
  }
93
144
  >;
94
145
 
@@ -96,8 +147,5 @@ export const createMoonwellClient = <const networks>(config: {
96
147
  environments,
97
148
  };
98
149
 
99
- return Object.assign(
100
- client,
101
- createActions<typeof environments>(client as any),
102
- );
150
+ return Object.assign(client, actions<typeof environments>(client as any));
103
151
  };