@moonwell-fi/moonwell-sdk 0.0.1

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 (778) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +99 -0
  3. package/_cjs/actions/core/getUserBalances.js +41 -0
  4. package/_cjs/actions/core/getUserBalances.js.map +1 -0
  5. package/_cjs/actions/core/markets/common.js +133 -0
  6. package/_cjs/actions/core/markets/common.js.map +1 -0
  7. package/_cjs/actions/core/markets/getMarket.js +19 -0
  8. package/_cjs/actions/core/markets/getMarket.js.map +1 -0
  9. package/_cjs/actions/core/markets/getMarkets.js +12 -0
  10. package/_cjs/actions/core/markets/getMarkets.js.map +1 -0
  11. package/_cjs/actions/core/user-positions/common.js +60 -0
  12. package/_cjs/actions/core/user-positions/common.js.map +1 -0
  13. package/_cjs/actions/core/user-positions/getUserPosition.js +24 -0
  14. package/_cjs/actions/core/user-positions/getUserPosition.js.map +1 -0
  15. package/_cjs/actions/core/user-positions/getUserPositions.js +16 -0
  16. package/_cjs/actions/core/user-positions/getUserPositions.js.map +1 -0
  17. package/_cjs/actions/core/user-rewards/common.js +93 -0
  18. package/_cjs/actions/core/user-rewards/common.js.map +1 -0
  19. package/_cjs/actions/core/user-rewards/getUserReward.js +24 -0
  20. package/_cjs/actions/core/user-rewards/getUserReward.js.map +1 -0
  21. package/_cjs/actions/core/user-rewards/getUserRewards.js +16 -0
  22. package/_cjs/actions/core/user-rewards/getUserRewards.js.map +1 -0
  23. package/_cjs/actions/governance/getDelegates.js +151 -0
  24. package/_cjs/actions/governance/getDelegates.js.map +1 -0
  25. package/_cjs/actions/governance/getDiscussions.js +37 -0
  26. package/_cjs/actions/governance/getDiscussions.js.map +1 -0
  27. package/_cjs/actions/governance/getGovernanceTokenInfo.js +21 -0
  28. package/_cjs/actions/governance/getGovernanceTokenInfo.js.map +1 -0
  29. package/_cjs/actions/governance/getStakingInfo.js +43 -0
  30. package/_cjs/actions/governance/getStakingInfo.js.map +1 -0
  31. package/_cjs/actions/governance/getStakingSnapshots.js +44 -0
  32. package/_cjs/actions/governance/getStakingSnapshots.js.map +1 -0
  33. package/_cjs/actions/governance/getUserStakingInfo.js +48 -0
  34. package/_cjs/actions/governance/getUserStakingInfo.js.map +1 -0
  35. package/_cjs/actions/governance/getUserVoteReceipt.js +74 -0
  36. package/_cjs/actions/governance/getUserVoteReceipt.js.map +1 -0
  37. package/_cjs/actions/governance/getUserVotingPowers.js +64 -0
  38. package/_cjs/actions/governance/getUserVotingPowers.js.map +1 -0
  39. package/_cjs/actions/governance/proposals/common.js +341 -0
  40. package/_cjs/actions/governance/proposals/common.js.map +1 -0
  41. package/_cjs/actions/governance/proposals/getProposal.js +23 -0
  42. package/_cjs/actions/governance/proposals/getProposal.js.map +1 -0
  43. package/_cjs/actions/governance/proposals/getProposals.js +22 -0
  44. package/_cjs/actions/governance/proposals/getProposals.js.map +1 -0
  45. package/_cjs/actions/governance/snapshot/common.js +100 -0
  46. package/_cjs/actions/governance/snapshot/common.js.map +1 -0
  47. package/_cjs/actions/governance/snapshot/getSnapshotProposal.js +22 -0
  48. package/_cjs/actions/governance/snapshot/getSnapshotProposal.js.map +1 -0
  49. package/_cjs/actions/governance/snapshot/getSnapshotProposals.js +16 -0
  50. package/_cjs/actions/governance/snapshot/getSnapshotProposals.js.map +1 -0
  51. package/_cjs/actions/morpho/getMorphoUserBalances.js +45 -0
  52. package/_cjs/actions/morpho/getMorphoUserBalances.js.map +1 -0
  53. package/_cjs/actions/morpho/markets/common.js +204 -0
  54. package/_cjs/actions/morpho/markets/common.js.map +1 -0
  55. package/_cjs/actions/morpho/markets/getMorphoMarket.js +24 -0
  56. package/_cjs/actions/morpho/markets/getMorphoMarket.js.map +1 -0
  57. package/_cjs/actions/morpho/markets/getMorphoMarkets.js +14 -0
  58. package/_cjs/actions/morpho/markets/getMorphoMarkets.js.map +1 -0
  59. package/_cjs/actions/morpho/user-positions/common.js +52 -0
  60. package/_cjs/actions/morpho/user-positions/common.js.map +1 -0
  61. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPosition.js +24 -0
  62. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPosition.js.map +1 -0
  63. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js +17 -0
  64. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -0
  65. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPosition.js +24 -0
  66. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPosition.js.map +1 -0
  67. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js +17 -0
  68. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -0
  69. package/_cjs/actions/morpho/user-rewards/common.js +112 -0
  70. package/_cjs/actions/morpho/user-rewards/common.js.map +1 -0
  71. package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js +14 -0
  72. package/_cjs/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -0
  73. package/_cjs/actions/morpho/utils/accrueInterests.js +27 -0
  74. package/_cjs/actions/morpho/utils/accrueInterests.js.map +1 -0
  75. package/_cjs/actions/morpho/utils/graphql.js +25 -0
  76. package/_cjs/actions/morpho/utils/graphql.js.map +1 -0
  77. package/_cjs/actions/morpho/utils/math.js +40 -0
  78. package/_cjs/actions/morpho/utils/math.js.map +1 -0
  79. package/_cjs/actions/morpho/vaults/common.js +309 -0
  80. package/_cjs/actions/morpho/vaults/common.js.map +1 -0
  81. package/_cjs/actions/morpho/vaults/getMorphoVault.js +24 -0
  82. package/_cjs/actions/morpho/vaults/getMorphoVault.js.map +1 -0
  83. package/_cjs/actions/morpho/vaults/getMorphoVaults.js +14 -0
  84. package/_cjs/actions/morpho/vaults/getMorphoVaults.js.map +1 -0
  85. package/_cjs/client/createActions.js +67 -0
  86. package/_cjs/client/createActions.js.map +1 -0
  87. package/_cjs/client/createMoonwellClient.js +24 -0
  88. package/_cjs/client/createMoonwellClient.js.map +1 -0
  89. package/_cjs/common/amount.js +42 -0
  90. package/_cjs/common/amount.js.map +1 -0
  91. package/_cjs/common/error.js +48 -0
  92. package/_cjs/common/error.js.map +1 -0
  93. package/_cjs/common/index.js +43 -0
  94. package/_cjs/common/index.js.map +1 -0
  95. package/_cjs/common/types.js +3 -0
  96. package/_cjs/common/types.js.map +1 -0
  97. package/_cjs/environments/abis/chainLinkOracleAbi.js +248 -0
  98. package/_cjs/environments/abis/chainLinkOracleAbi.js.map +1 -0
  99. package/_cjs/environments/abis/comptrollerAbi.js +1427 -0
  100. package/_cjs/environments/abis/comptrollerAbi.js.map +1 -0
  101. package/_cjs/environments/abis/coreRouterAbi.js +82 -0
  102. package/_cjs/environments/abis/coreRouterAbi.js.map +1 -0
  103. package/_cjs/environments/abis/coreViewsAbi.js +1338 -0
  104. package/_cjs/environments/abis/coreViewsAbi.js.map +1 -0
  105. package/_cjs/environments/abis/governanceTokenAbi.js +327 -0
  106. package/_cjs/environments/abis/governanceTokenAbi.js.map +1 -0
  107. package/_cjs/environments/abis/governorAbi.js +1156 -0
  108. package/_cjs/environments/abis/governorAbi.js.map +1 -0
  109. package/_cjs/environments/abis/index.js +42 -0
  110. package/_cjs/environments/abis/index.js.map +1 -0
  111. package/_cjs/environments/abis/marketTokenAbi.js +1626 -0
  112. package/_cjs/environments/abis/marketTokenAbi.js.map +1 -0
  113. package/_cjs/environments/abis/morphoBlueAbi.js +1529 -0
  114. package/_cjs/environments/abis/morphoBlueAbi.js.map +1 -0
  115. package/_cjs/environments/abis/morphoBundlerAbi.js +1107 -0
  116. package/_cjs/environments/abis/morphoBundlerAbi.js.map +1 -0
  117. package/_cjs/environments/abis/morphoPublicAllocatorAbi.js +358 -0
  118. package/_cjs/environments/abis/morphoPublicAllocatorAbi.js.map +1 -0
  119. package/_cjs/environments/abis/morphoVaultAbi.js +2509 -0
  120. package/_cjs/environments/abis/morphoVaultAbi.js.map +1 -0
  121. package/_cjs/environments/abis/morphoViewsAbi.js +879 -0
  122. package/_cjs/environments/abis/morphoViewsAbi.js.map +1 -0
  123. package/_cjs/environments/abis/multiRewardDistributorAbi.js +1215 -0
  124. package/_cjs/environments/abis/multiRewardDistributorAbi.js.map +1 -0
  125. package/_cjs/environments/abis/multichainGovernorAbi.js +1915 -0
  126. package/_cjs/environments/abis/multichainGovernorAbi.js.map +1 -0
  127. package/_cjs/environments/abis/stakingTokenAbi.js +585 -0
  128. package/_cjs/environments/abis/stakingTokenAbi.js.map +1 -0
  129. package/_cjs/environments/abis/temporalGovernorAbi.js +546 -0
  130. package/_cjs/environments/abis/temporalGovernorAbi.js.map +1 -0
  131. package/_cjs/environments/abis/tokenAbi.js +397 -0
  132. package/_cjs/environments/abis/tokenAbi.js.map +1 -0
  133. package/_cjs/environments/abis/voteCollectorAbi.js +864 -0
  134. package/_cjs/environments/abis/voteCollectorAbi.js.map +1 -0
  135. package/_cjs/environments/abis/wrappedNativeTokenAbi.js +156 -0
  136. package/_cjs/environments/abis/wrappedNativeTokenAbi.js.map +1 -0
  137. package/_cjs/environments/definitions/base/contracts.js +25 -0
  138. package/_cjs/environments/definitions/base/contracts.js.map +1 -0
  139. package/_cjs/environments/definitions/base/core-markets.js +51 -0
  140. package/_cjs/environments/definitions/base/core-markets.js.map +1 -0
  141. package/_cjs/environments/definitions/base/custom.js +21 -0
  142. package/_cjs/environments/definitions/base/custom.js.map +1 -0
  143. package/_cjs/environments/definitions/base/environment.js +34 -0
  144. package/_cjs/environments/definitions/base/environment.js.map +1 -0
  145. package/_cjs/environments/definitions/base/morpho-markets.js +56 -0
  146. package/_cjs/environments/definitions/base/morpho-markets.js.map +1 -0
  147. package/_cjs/environments/definitions/base/morpho-vaults.js +19 -0
  148. package/_cjs/environments/definitions/base/morpho-vaults.js.map +1 -0
  149. package/_cjs/environments/definitions/base/tokens.js +158 -0
  150. package/_cjs/environments/definitions/base/tokens.js.map +1 -0
  151. package/_cjs/environments/definitions/governance.js +31 -0
  152. package/_cjs/environments/definitions/governance.js.map +1 -0
  153. package/_cjs/environments/definitions/moonbeam/contracts.js +19 -0
  154. package/_cjs/environments/definitions/moonbeam/contracts.js.map +1 -0
  155. package/_cjs/environments/definitions/moonbeam/core-markets.js +47 -0
  156. package/_cjs/environments/definitions/moonbeam/core-markets.js.map +1 -0
  157. package/_cjs/environments/definitions/moonbeam/custom.js +24 -0
  158. package/_cjs/environments/definitions/moonbeam/custom.js.map +1 -0
  159. package/_cjs/environments/definitions/moonbeam/environment.js +29 -0
  160. package/_cjs/environments/definitions/moonbeam/environment.js.map +1 -0
  161. package/_cjs/environments/definitions/moonbeam/tokens.js +134 -0
  162. package/_cjs/environments/definitions/moonbeam/tokens.js.map +1 -0
  163. package/_cjs/environments/definitions/moonriver/contracts.js +18 -0
  164. package/_cjs/environments/definitions/moonriver/contracts.js.map +1 -0
  165. package/_cjs/environments/definitions/moonriver/core-markets.js +39 -0
  166. package/_cjs/environments/definitions/moonriver/core-markets.js.map +1 -0
  167. package/_cjs/environments/definitions/moonriver/custom.js +12 -0
  168. package/_cjs/environments/definitions/moonriver/custom.js.map +1 -0
  169. package/_cjs/environments/definitions/moonriver/environment.js +28 -0
  170. package/_cjs/environments/definitions/moonriver/environment.js.map +1 -0
  171. package/_cjs/environments/definitions/moonriver/tokens.js +110 -0
  172. package/_cjs/environments/definitions/moonriver/tokens.js.map +1 -0
  173. package/_cjs/environments/definitions/optimism/contracts.js +21 -0
  174. package/_cjs/environments/definitions/optimism/contracts.js.map +1 -0
  175. package/_cjs/environments/definitions/optimism/core-markets.js +55 -0
  176. package/_cjs/environments/definitions/optimism/core-markets.js.map +1 -0
  177. package/_cjs/environments/definitions/optimism/custom.js +11 -0
  178. package/_cjs/environments/definitions/optimism/custom.js.map +1 -0
  179. package/_cjs/environments/definitions/optimism/environment.js +28 -0
  180. package/_cjs/environments/definitions/optimism/environment.js.map +1 -0
  181. package/_cjs/environments/definitions/optimism/tokens.js +158 -0
  182. package/_cjs/environments/definitions/optimism/tokens.js.map +1 -0
  183. package/_cjs/environments/index.js +44 -0
  184. package/_cjs/environments/index.js.map +1 -0
  185. package/_cjs/environments/types/config.js +154 -0
  186. package/_cjs/environments/types/config.js.map +1 -0
  187. package/_cjs/environments/types/contracts.js +3 -0
  188. package/_cjs/environments/types/contracts.js.map +1 -0
  189. package/_cjs/environments/utils/index.js +26 -0
  190. package/_cjs/environments/utils/index.js.map +1 -0
  191. package/_cjs/package.json +1 -0
  192. package/_cjs/types/delegate.js +3 -0
  193. package/_cjs/types/delegate.js.map +1 -0
  194. package/_cjs/types/discussion.js +3 -0
  195. package/_cjs/types/discussion.js.map +1 -0
  196. package/_cjs/types/market.js +3 -0
  197. package/_cjs/types/market.js.map +1 -0
  198. package/_cjs/types/morphoMarket.js +3 -0
  199. package/_cjs/types/morphoMarket.js.map +1 -0
  200. package/_cjs/types/morphoReward.js +3 -0
  201. package/_cjs/types/morphoReward.js.map +1 -0
  202. package/_cjs/types/morphoUserPosition.js +3 -0
  203. package/_cjs/types/morphoUserPosition.js.map +1 -0
  204. package/_cjs/types/morphoUserReward.js +3 -0
  205. package/_cjs/types/morphoUserReward.js.map +1 -0
  206. package/_cjs/types/morphoVault.js +3 -0
  207. package/_cjs/types/morphoVault.js.map +1 -0
  208. package/_cjs/types/proposal.js +34 -0
  209. package/_cjs/types/proposal.js.map +1 -0
  210. package/_cjs/types/snapshotProposal.js +3 -0
  211. package/_cjs/types/snapshotProposal.js.map +1 -0
  212. package/_cjs/types/staking.js +3 -0
  213. package/_cjs/types/staking.js.map +1 -0
  214. package/_cjs/types/userBalance.js +3 -0
  215. package/_cjs/types/userBalance.js.map +1 -0
  216. package/_cjs/types/userPosition.js +3 -0
  217. package/_cjs/types/userPosition.js.map +1 -0
  218. package/_cjs/types/userReward.js +3 -0
  219. package/_cjs/types/userReward.js.map +1 -0
  220. package/_cjs/types/userVotingPowers.js +3 -0
  221. package/_cjs/types/userVotingPowers.js.map +1 -0
  222. package/_cjs/types/voteReceipt.js +3 -0
  223. package/_cjs/types/voteReceipt.js.map +1 -0
  224. package/_esm/actions/core/getUserBalances.js +37 -0
  225. package/_esm/actions/core/getUserBalances.js.map +1 -0
  226. package/_esm/actions/core/markets/common.js +129 -0
  227. package/_esm/actions/core/markets/common.js.map +1 -0
  228. package/_esm/actions/core/markets/getMarket.js +15 -0
  229. package/_esm/actions/core/markets/getMarket.js.map +1 -0
  230. package/_esm/actions/core/markets/getMarkets.js +8 -0
  231. package/_esm/actions/core/markets/getMarkets.js.map +1 -0
  232. package/_esm/actions/core/user-positions/common.js +56 -0
  233. package/_esm/actions/core/user-positions/common.js.map +1 -0
  234. package/_esm/actions/core/user-positions/getUserPosition.js +20 -0
  235. package/_esm/actions/core/user-positions/getUserPosition.js.map +1 -0
  236. package/_esm/actions/core/user-positions/getUserPositions.js +12 -0
  237. package/_esm/actions/core/user-positions/getUserPositions.js.map +1 -0
  238. package/_esm/actions/core/user-rewards/common.js +91 -0
  239. package/_esm/actions/core/user-rewards/common.js.map +1 -0
  240. package/_esm/actions/core/user-rewards/getUserReward.js +20 -0
  241. package/_esm/actions/core/user-rewards/getUserReward.js.map +1 -0
  242. package/_esm/actions/core/user-rewards/getUserRewards.js +12 -0
  243. package/_esm/actions/core/user-rewards/getUserRewards.js.map +1 -0
  244. package/_esm/actions/governance/getDelegates.js +157 -0
  245. package/_esm/actions/governance/getDelegates.js.map +1 -0
  246. package/_esm/actions/governance/getDiscussions.js +42 -0
  247. package/_esm/actions/governance/getDiscussions.js.map +1 -0
  248. package/_esm/actions/governance/getGovernanceTokenInfo.js +17 -0
  249. package/_esm/actions/governance/getGovernanceTokenInfo.js.map +1 -0
  250. package/_esm/actions/governance/getStakingInfo.js +40 -0
  251. package/_esm/actions/governance/getStakingInfo.js.map +1 -0
  252. package/_esm/actions/governance/getStakingSnapshots.js +40 -0
  253. package/_esm/actions/governance/getStakingSnapshots.js.map +1 -0
  254. package/_esm/actions/governance/getUserStakingInfo.js +44 -0
  255. package/_esm/actions/governance/getUserStakingInfo.js.map +1 -0
  256. package/_esm/actions/governance/getUserVoteReceipt.js +70 -0
  257. package/_esm/actions/governance/getUserVoteReceipt.js.map +1 -0
  258. package/_esm/actions/governance/getUserVotingPowers.js +62 -0
  259. package/_esm/actions/governance/getUserVotingPowers.js.map +1 -0
  260. package/_esm/actions/governance/proposals/common.js +344 -0
  261. package/_esm/actions/governance/proposals/common.js.map +1 -0
  262. package/_esm/actions/governance/proposals/getProposal.js +19 -0
  263. package/_esm/actions/governance/proposals/getProposal.js.map +1 -0
  264. package/_esm/actions/governance/proposals/getProposals.js +18 -0
  265. package/_esm/actions/governance/proposals/getProposals.js.map +1 -0
  266. package/_esm/actions/governance/snapshot/common.js +96 -0
  267. package/_esm/actions/governance/snapshot/common.js.map +1 -0
  268. package/_esm/actions/governance/snapshot/getSnapshotProposal.js +18 -0
  269. package/_esm/actions/governance/snapshot/getSnapshotProposal.js.map +1 -0
  270. package/_esm/actions/governance/snapshot/getSnapshotProposals.js +12 -0
  271. package/_esm/actions/governance/snapshot/getSnapshotProposals.js.map +1 -0
  272. package/_esm/actions/morpho/getMorphoUserBalances.js +42 -0
  273. package/_esm/actions/morpho/getMorphoUserBalances.js.map +1 -0
  274. package/_esm/actions/morpho/markets/common.js +205 -0
  275. package/_esm/actions/morpho/markets/common.js.map +1 -0
  276. package/_esm/actions/morpho/markets/getMorphoMarket.js +20 -0
  277. package/_esm/actions/morpho/markets/getMorphoMarket.js.map +1 -0
  278. package/_esm/actions/morpho/markets/getMorphoMarkets.js +10 -0
  279. package/_esm/actions/morpho/markets/getMorphoMarkets.js.map +1 -0
  280. package/_esm/actions/morpho/user-positions/common.js +47 -0
  281. package/_esm/actions/morpho/user-positions/common.js.map +1 -0
  282. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPosition.js +20 -0
  283. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPosition.js.map +1 -0
  284. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPositions.js +13 -0
  285. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -0
  286. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPosition.js +20 -0
  287. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPosition.js.map +1 -0
  288. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositions.js +13 -0
  289. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -0
  290. package/_esm/actions/morpho/user-rewards/common.js +109 -0
  291. package/_esm/actions/morpho/user-rewards/common.js.map +1 -0
  292. package/_esm/actions/morpho/user-rewards/getMorphoUserRewards.js +10 -0
  293. package/_esm/actions/morpho/user-rewards/getMorphoUserRewards.js.map +1 -0
  294. package/_esm/actions/morpho/utils/accrueInterests.js +29 -0
  295. package/_esm/actions/morpho/utils/accrueInterests.js.map +1 -0
  296. package/_esm/actions/morpho/utils/graphql.js +21 -0
  297. package/_esm/actions/morpho/utils/graphql.js.map +1 -0
  298. package/_esm/actions/morpho/utils/math.js +33 -0
  299. package/_esm/actions/morpho/utils/math.js.map +1 -0
  300. package/_esm/actions/morpho/vaults/common.js +305 -0
  301. package/_esm/actions/morpho/vaults/common.js.map +1 -0
  302. package/_esm/actions/morpho/vaults/getMorphoVault.js +20 -0
  303. package/_esm/actions/morpho/vaults/getMorphoVault.js.map +1 -0
  304. package/_esm/actions/morpho/vaults/getMorphoVaults.js +10 -0
  305. package/_esm/actions/morpho/vaults/getMorphoVaults.js.map +1 -0
  306. package/_esm/client/createActions.js +63 -0
  307. package/_esm/client/createActions.js.map +1 -0
  308. package/_esm/client/createMoonwellClient.js +20 -0
  309. package/_esm/client/createMoonwellClient.js.map +1 -0
  310. package/_esm/common/amount.js +46 -0
  311. package/_esm/common/amount.js.map +1 -0
  312. package/_esm/common/error.js +42 -0
  313. package/_esm/common/error.js.map +1 -0
  314. package/_esm/common/index.js +33 -0
  315. package/_esm/common/index.js.map +1 -0
  316. package/_esm/common/types.js +2 -0
  317. package/_esm/common/types.js.map +1 -0
  318. package/_esm/environments/abis/chainLinkOracleAbi.js +246 -0
  319. package/_esm/environments/abis/chainLinkOracleAbi.js.map +1 -0
  320. package/_esm/environments/abis/comptrollerAbi.js +1425 -0
  321. package/_esm/environments/abis/comptrollerAbi.js.map +1 -0
  322. package/_esm/environments/abis/coreRouterAbi.js +80 -0
  323. package/_esm/environments/abis/coreRouterAbi.js.map +1 -0
  324. package/_esm/environments/abis/coreViewsAbi.js +1336 -0
  325. package/_esm/environments/abis/coreViewsAbi.js.map +1 -0
  326. package/_esm/environments/abis/governanceTokenAbi.js +325 -0
  327. package/_esm/environments/abis/governanceTokenAbi.js.map +1 -0
  328. package/_esm/environments/abis/governorAbi.js +1154 -0
  329. package/_esm/environments/abis/governorAbi.js.map +1 -0
  330. package/_esm/environments/abis/index.js +21 -0
  331. package/_esm/environments/abis/index.js.map +1 -0
  332. package/_esm/environments/abis/marketTokenAbi.js +1624 -0
  333. package/_esm/environments/abis/marketTokenAbi.js.map +1 -0
  334. package/_esm/environments/abis/morphoBlueAbi.js +1527 -0
  335. package/_esm/environments/abis/morphoBlueAbi.js.map +1 -0
  336. package/_esm/environments/abis/morphoBundlerAbi.js +1105 -0
  337. package/_esm/environments/abis/morphoBundlerAbi.js.map +1 -0
  338. package/_esm/environments/abis/morphoPublicAllocatorAbi.js +356 -0
  339. package/_esm/environments/abis/morphoPublicAllocatorAbi.js.map +1 -0
  340. package/_esm/environments/abis/morphoVaultAbi.js +2507 -0
  341. package/_esm/environments/abis/morphoVaultAbi.js.map +1 -0
  342. package/_esm/environments/abis/morphoViewsAbi.js +877 -0
  343. package/_esm/environments/abis/morphoViewsAbi.js.map +1 -0
  344. package/_esm/environments/abis/multiRewardDistributorAbi.js +1213 -0
  345. package/_esm/environments/abis/multiRewardDistributorAbi.js.map +1 -0
  346. package/_esm/environments/abis/multichainGovernorAbi.js +1913 -0
  347. package/_esm/environments/abis/multichainGovernorAbi.js.map +1 -0
  348. package/_esm/environments/abis/stakingTokenAbi.js +583 -0
  349. package/_esm/environments/abis/stakingTokenAbi.js.map +1 -0
  350. package/_esm/environments/abis/temporalGovernorAbi.js +544 -0
  351. package/_esm/environments/abis/temporalGovernorAbi.js.map +1 -0
  352. package/_esm/environments/abis/tokenAbi.js +395 -0
  353. package/_esm/environments/abis/tokenAbi.js.map +1 -0
  354. package/_esm/environments/abis/voteCollectorAbi.js +862 -0
  355. package/_esm/environments/abis/voteCollectorAbi.js.map +1 -0
  356. package/_esm/environments/abis/wrappedNativeTokenAbi.js +154 -0
  357. package/_esm/environments/abis/wrappedNativeTokenAbi.js.map +1 -0
  358. package/_esm/environments/definitions/base/contracts.js +22 -0
  359. package/_esm/environments/definitions/base/contracts.js.map +1 -0
  360. package/_esm/environments/definitions/base/core-markets.js +48 -0
  361. package/_esm/environments/definitions/base/core-markets.js.map +1 -0
  362. package/_esm/environments/definitions/base/custom.js +18 -0
  363. package/_esm/environments/definitions/base/custom.js.map +1 -0
  364. package/_esm/environments/definitions/base/environment.js +26 -0
  365. package/_esm/environments/definitions/base/environment.js.map +1 -0
  366. package/_esm/environments/definitions/base/morpho-markets.js +53 -0
  367. package/_esm/environments/definitions/base/morpho-markets.js.map +1 -0
  368. package/_esm/environments/definitions/base/morpho-vaults.js +16 -0
  369. package/_esm/environments/definitions/base/morpho-vaults.js.map +1 -0
  370. package/_esm/environments/definitions/base/tokens.js +155 -0
  371. package/_esm/environments/definitions/base/tokens.js.map +1 -0
  372. package/_esm/environments/definitions/governance.js +28 -0
  373. package/_esm/environments/definitions/governance.js.map +1 -0
  374. package/_esm/environments/definitions/moonbeam/contracts.js +16 -0
  375. package/_esm/environments/definitions/moonbeam/contracts.js.map +1 -0
  376. package/_esm/environments/definitions/moonbeam/core-markets.js +44 -0
  377. package/_esm/environments/definitions/moonbeam/core-markets.js.map +1 -0
  378. package/_esm/environments/definitions/moonbeam/custom.js +21 -0
  379. package/_esm/environments/definitions/moonbeam/custom.js.map +1 -0
  380. package/_esm/environments/definitions/moonbeam/environment.js +23 -0
  381. package/_esm/environments/definitions/moonbeam/environment.js.map +1 -0
  382. package/_esm/environments/definitions/moonbeam/tokens.js +131 -0
  383. package/_esm/environments/definitions/moonbeam/tokens.js.map +1 -0
  384. package/_esm/environments/definitions/moonriver/contracts.js +15 -0
  385. package/_esm/environments/definitions/moonriver/contracts.js.map +1 -0
  386. package/_esm/environments/definitions/moonriver/core-markets.js +36 -0
  387. package/_esm/environments/definitions/moonriver/core-markets.js.map +1 -0
  388. package/_esm/environments/definitions/moonriver/custom.js +9 -0
  389. package/_esm/environments/definitions/moonriver/custom.js.map +1 -0
  390. package/_esm/environments/definitions/moonriver/environment.js +23 -0
  391. package/_esm/environments/definitions/moonriver/environment.js.map +1 -0
  392. package/_esm/environments/definitions/moonriver/tokens.js +107 -0
  393. package/_esm/environments/definitions/moonriver/tokens.js.map +1 -0
  394. package/_esm/environments/definitions/optimism/contracts.js +18 -0
  395. package/_esm/environments/definitions/optimism/contracts.js.map +1 -0
  396. package/_esm/environments/definitions/optimism/core-markets.js +52 -0
  397. package/_esm/environments/definitions/optimism/core-markets.js.map +1 -0
  398. package/_esm/environments/definitions/optimism/custom.js +8 -0
  399. package/_esm/environments/definitions/optimism/custom.js.map +1 -0
  400. package/_esm/environments/definitions/optimism/environment.js +23 -0
  401. package/_esm/environments/definitions/optimism/environment.js.map +1 -0
  402. package/_esm/environments/definitions/optimism/tokens.js +155 -0
  403. package/_esm/environments/definitions/optimism/tokens.js.map +1 -0
  404. package/_esm/environments/index.js +35 -0
  405. package/_esm/environments/index.js.map +1 -0
  406. package/_esm/environments/types/config.js +144 -0
  407. package/_esm/environments/types/config.js.map +1 -0
  408. package/_esm/environments/types/contracts.js +2 -0
  409. package/_esm/environments/types/contracts.js.map +1 -0
  410. package/_esm/environments/utils/index.js +21 -0
  411. package/_esm/environments/utils/index.js.map +1 -0
  412. package/_esm/package.json +1 -0
  413. package/_esm/types/delegate.js +2 -0
  414. package/_esm/types/delegate.js.map +1 -0
  415. package/_esm/types/discussion.js +2 -0
  416. package/_esm/types/discussion.js.map +1 -0
  417. package/_esm/types/market.js +2 -0
  418. package/_esm/types/market.js.map +1 -0
  419. package/_esm/types/morphoMarket.js +2 -0
  420. package/_esm/types/morphoMarket.js.map +1 -0
  421. package/_esm/types/morphoReward.js +2 -0
  422. package/_esm/types/morphoReward.js.map +1 -0
  423. package/_esm/types/morphoUserPosition.js +2 -0
  424. package/_esm/types/morphoUserPosition.js.map +1 -0
  425. package/_esm/types/morphoUserReward.js +2 -0
  426. package/_esm/types/morphoUserReward.js.map +1 -0
  427. package/_esm/types/morphoVault.js +2 -0
  428. package/_esm/types/morphoVault.js.map +1 -0
  429. package/_esm/types/proposal.js +33 -0
  430. package/_esm/types/proposal.js.map +1 -0
  431. package/_esm/types/snapshotProposal.js +2 -0
  432. package/_esm/types/snapshotProposal.js.map +1 -0
  433. package/_esm/types/staking.js +2 -0
  434. package/_esm/types/staking.js.map +1 -0
  435. package/_esm/types/userBalance.js +2 -0
  436. package/_esm/types/userBalance.js.map +1 -0
  437. package/_esm/types/userPosition.js +2 -0
  438. package/_esm/types/userPosition.js.map +1 -0
  439. package/_esm/types/userReward.js +2 -0
  440. package/_esm/types/userReward.js.map +1 -0
  441. package/_esm/types/userVotingPowers.js +2 -0
  442. package/_esm/types/userVotingPowers.js.map +1 -0
  443. package/_esm/types/voteReceipt.js +2 -0
  444. package/_esm/types/voteReceipt.js.map +1 -0
  445. package/_types/actions/core/getUserBalances.d.ts +11 -0
  446. package/_types/actions/core/getUserBalances.d.ts.map +1 -0
  447. package/_types/actions/core/markets/common.d.ts +4 -0
  448. package/_types/actions/core/markets/common.d.ts.map +1 -0
  449. package/_types/actions/core/markets/getMarket.d.ts +8 -0
  450. package/_types/actions/core/markets/getMarket.d.ts.map +1 -0
  451. package/_types/actions/core/markets/getMarkets.d.ts +8 -0
  452. package/_types/actions/core/markets/getMarkets.d.ts.map +1 -0
  453. package/_types/actions/core/user-positions/common.d.ts +9 -0
  454. package/_types/actions/core/user-positions/common.d.ts.map +1 -0
  455. package/_types/actions/core/user-positions/getUserPosition.d.ts +12 -0
  456. package/_types/actions/core/user-positions/getUserPosition.d.ts.map +1 -0
  457. package/_types/actions/core/user-positions/getUserPositions.d.ts +11 -0
  458. package/_types/actions/core/user-positions/getUserPositions.d.ts.map +1 -0
  459. package/_types/actions/core/user-rewards/common.d.ts +9 -0
  460. package/_types/actions/core/user-rewards/common.d.ts.map +1 -0
  461. package/_types/actions/core/user-rewards/getUserReward.d.ts +12 -0
  462. package/_types/actions/core/user-rewards/getUserReward.d.ts.map +1 -0
  463. package/_types/actions/core/user-rewards/getUserRewards.d.ts +12 -0
  464. package/_types/actions/core/user-rewards/getUserRewards.d.ts.map +1 -0
  465. package/_types/actions/governance/getDelegates.d.ts +12 -0
  466. package/_types/actions/governance/getDelegates.d.ts.map +1 -0
  467. package/_types/actions/governance/getDiscussions.d.ts +16 -0
  468. package/_types/actions/governance/getDiscussions.d.ts.map +1 -0
  469. package/_types/actions/governance/getGovernanceTokenInfo.d.ts +11 -0
  470. package/_types/actions/governance/getGovernanceTokenInfo.d.ts.map +1 -0
  471. package/_types/actions/governance/getStakingInfo.d.ts +8 -0
  472. package/_types/actions/governance/getStakingInfo.d.ts.map +1 -0
  473. package/_types/actions/governance/getStakingSnapshots.d.ts +8 -0
  474. package/_types/actions/governance/getStakingSnapshots.d.ts.map +1 -0
  475. package/_types/actions/governance/getUserStakingInfo.d.ts +11 -0
  476. package/_types/actions/governance/getUserStakingInfo.d.ts.map +1 -0
  477. package/_types/actions/governance/getUserVoteReceipt.d.ts +13 -0
  478. package/_types/actions/governance/getUserVoteReceipt.d.ts.map +1 -0
  479. package/_types/actions/governance/getUserVotingPowers.d.ts +14 -0
  480. package/_types/actions/governance/getUserVotingPowers.d.ts.map +1 -0
  481. package/_types/actions/governance/proposals/common.d.ts +16 -0
  482. package/_types/actions/governance/proposals/common.d.ts.map +1 -0
  483. package/_types/actions/governance/proposals/getProposal.d.ts +11 -0
  484. package/_types/actions/governance/proposals/getProposal.d.ts.map +1 -0
  485. package/_types/actions/governance/proposals/getProposals.d.ts +8 -0
  486. package/_types/actions/governance/proposals/getProposals.d.ts.map +1 -0
  487. package/_types/actions/governance/snapshot/common.d.ts +14 -0
  488. package/_types/actions/governance/snapshot/common.d.ts.map +1 -0
  489. package/_types/actions/governance/snapshot/getSnapshotProposal.d.ts +11 -0
  490. package/_types/actions/governance/snapshot/getSnapshotProposal.d.ts.map +1 -0
  491. package/_types/actions/governance/snapshot/getSnapshotProposals.d.ts +20 -0
  492. package/_types/actions/governance/snapshot/getSnapshotProposals.d.ts.map +1 -0
  493. package/_types/actions/morpho/getMorphoUserBalances.d.ts +11 -0
  494. package/_types/actions/morpho/getMorphoUserBalances.d.ts.map +1 -0
  495. package/_types/actions/morpho/markets/common.d.ts +8 -0
  496. package/_types/actions/morpho/markets/common.d.ts.map +1 -0
  497. package/_types/actions/morpho/markets/getMorphoMarket.d.ts +10 -0
  498. package/_types/actions/morpho/markets/getMorphoMarket.d.ts.map +1 -0
  499. package/_types/actions/morpho/markets/getMorphoMarkets.d.ts +10 -0
  500. package/_types/actions/morpho/markets/getMorphoMarkets.d.ts.map +1 -0
  501. package/_types/actions/morpho/user-positions/common.d.ts +14 -0
  502. package/_types/actions/morpho/user-positions/common.d.ts.map +1 -0
  503. package/_types/actions/morpho/user-positions/getMorphoMarketUserPosition.d.ts +11 -0
  504. package/_types/actions/morpho/user-positions/getMorphoMarketUserPosition.d.ts.map +1 -0
  505. package/_types/actions/morpho/user-positions/getMorphoMarketUserPositions.d.ts +11 -0
  506. package/_types/actions/morpho/user-positions/getMorphoMarketUserPositions.d.ts.map +1 -0
  507. package/_types/actions/morpho/user-positions/getMorphoVaultUserPosition.d.ts +11 -0
  508. package/_types/actions/morpho/user-positions/getMorphoVaultUserPosition.d.ts.map +1 -0
  509. package/_types/actions/morpho/user-positions/getMorphoVaultUserPositions.d.ts +10 -0
  510. package/_types/actions/morpho/user-positions/getMorphoVaultUserPositions.d.ts.map +1 -0
  511. package/_types/actions/morpho/user-rewards/common.d.ts +7 -0
  512. package/_types/actions/morpho/user-rewards/common.d.ts.map +1 -0
  513. package/_types/actions/morpho/user-rewards/getMorphoUserRewards.d.ts +11 -0
  514. package/_types/actions/morpho/user-rewards/getMorphoUserRewards.d.ts.map +1 -0
  515. package/_types/actions/morpho/utils/accrueInterests.d.ts +16 -0
  516. package/_types/actions/morpho/utils/accrueInterests.d.ts.map +1 -0
  517. package/_types/actions/morpho/utils/graphql.d.ts +2 -0
  518. package/_types/actions/morpho/utils/graphql.d.ts.map +1 -0
  519. package/_types/actions/morpho/utils/math.d.ts +16 -0
  520. package/_types/actions/morpho/utils/math.d.ts.map +1 -0
  521. package/_types/actions/morpho/vaults/common.d.ts +16 -0
  522. package/_types/actions/morpho/vaults/common.d.ts.map +1 -0
  523. package/_types/actions/morpho/vaults/getMorphoVault.d.ts +10 -0
  524. package/_types/actions/morpho/vaults/getMorphoVault.d.ts.map +1 -0
  525. package/_types/actions/morpho/vaults/getMorphoVaults.d.ts +10 -0
  526. package/_types/actions/morpho/vaults/getMorphoVaults.d.ts.map +1 -0
  527. package/_types/client/createActions.d.ts +63 -0
  528. package/_types/client/createActions.d.ts.map +1 -0
  529. package/_types/client/createMoonwellClient.d.ts +42772 -0
  530. package/_types/client/createMoonwellClient.d.ts.map +1 -0
  531. package/_types/common/amount.d.ts +15 -0
  532. package/_types/common/amount.d.ts.map +1 -0
  533. package/_types/common/error.d.ts +14 -0
  534. package/_types/common/error.d.ts.map +1 -0
  535. package/_types/common/index.d.ts +19 -0
  536. package/_types/common/index.d.ts.map +1 -0
  537. package/_types/common/types.d.ts +34 -0
  538. package/_types/common/types.d.ts.map +1 -0
  539. package/_types/environments/abis/chainLinkOracleAbi.d.ts +190 -0
  540. package/_types/environments/abis/chainLinkOracleAbi.d.ts.map +1 -0
  541. package/_types/environments/abis/comptrollerAbi.d.ts +1719 -0
  542. package/_types/environments/abis/comptrollerAbi.d.ts.map +1 -0
  543. package/_types/environments/abis/coreRouterAbi.d.ts +62 -0
  544. package/_types/environments/abis/coreRouterAbi.d.ts.map +1 -0
  545. package/_types/environments/abis/coreViewsAbi.d.ts +1028 -0
  546. package/_types/environments/abis/coreViewsAbi.d.ts.map +1 -0
  547. package/_types/environments/abis/governanceTokenAbi.d.ts +464 -0
  548. package/_types/environments/abis/governanceTokenAbi.d.ts.map +1 -0
  549. package/_types/environments/abis/governorAbi.d.ts +898 -0
  550. package/_types/environments/abis/governorAbi.d.ts.map +1 -0
  551. package/_types/environments/abis/index.d.ts +21 -0
  552. package/_types/environments/abis/index.d.ts.map +1 -0
  553. package/_types/environments/abis/marketTokenAbi.d.ts +1282 -0
  554. package/_types/environments/abis/marketTokenAbi.d.ts.map +1 -0
  555. package/_types/environments/abis/morphoBlueAbi.d.ts +1194 -0
  556. package/_types/environments/abis/morphoBlueAbi.d.ts.map +1 -0
  557. package/_types/environments/abis/morphoBundlerAbi.d.ts +863 -0
  558. package/_types/environments/abis/morphoBundlerAbi.d.ts.map +1 -0
  559. package/_types/environments/abis/morphoPublicAllocatorAbi.d.ts +449 -0
  560. package/_types/environments/abis/morphoPublicAllocatorAbi.d.ts.map +1 -0
  561. package/_types/environments/abis/morphoVaultAbi.d.ts +1928 -0
  562. package/_types/environments/abis/morphoVaultAbi.d.ts.map +1 -0
  563. package/_types/environments/abis/morphoViewsAbi.d.ts +682 -0
  564. package/_types/environments/abis/morphoViewsAbi.d.ts.map +1 -0
  565. package/_types/environments/abis/multiRewardDistributorAbi.d.ts +951 -0
  566. package/_types/environments/abis/multiRewardDistributorAbi.d.ts.map +1 -0
  567. package/_types/environments/abis/multichainGovernorAbi.d.ts +1484 -0
  568. package/_types/environments/abis/multichainGovernorAbi.d.ts.map +1 -0
  569. package/_types/environments/abis/stakingTokenAbi.d.ts +776 -0
  570. package/_types/environments/abis/stakingTokenAbi.d.ts.map +1 -0
  571. package/_types/environments/abis/temporalGovernorAbi.d.ts +422 -0
  572. package/_types/environments/abis/temporalGovernorAbi.d.ts.map +1 -0
  573. package/_types/environments/abis/tokenAbi.d.ts +605 -0
  574. package/_types/environments/abis/tokenAbi.d.ts.map +1 -0
  575. package/_types/environments/abis/voteCollectorAbi.d.ts +670 -0
  576. package/_types/environments/abis/voteCollectorAbi.d.ts.map +1 -0
  577. package/_types/environments/abis/wrappedNativeTokenAbi.d.ts +215 -0
  578. package/_types/environments/abis/wrappedNativeTokenAbi.d.ts.map +1 -0
  579. package/_types/environments/definitions/base/contracts.d.ts +17 -0
  580. package/_types/environments/definitions/base/contracts.d.ts.map +1 -0
  581. package/_types/environments/definitions/base/core-markets.d.ts +43 -0
  582. package/_types/environments/definitions/base/core-markets.d.ts.map +1 -0
  583. package/_types/environments/definitions/base/custom.d.ts +23 -0
  584. package/_types/environments/definitions/base/custom.d.ts.map +1 -0
  585. package/_types/environments/definitions/base/environment.d.ts +310 -0
  586. package/_types/environments/definitions/base/environment.d.ts.map +1 -0
  587. package/_types/environments/definitions/base/morpho-markets.d.ts +48 -0
  588. package/_types/environments/definitions/base/morpho-markets.d.ts.map +1 -0
  589. package/_types/environments/definitions/base/morpho-vaults.d.ts +11 -0
  590. package/_types/environments/definitions/base/morpho-vaults.d.ts.map +1 -0
  591. package/_types/environments/definitions/base/tokens.d.ts +153 -0
  592. package/_types/environments/definitions/base/tokens.d.ts.map +1 -0
  593. package/_types/environments/definitions/governance.d.ts +35 -0
  594. package/_types/environments/definitions/governance.d.ts.map +1 -0
  595. package/_types/environments/definitions/moonbeam/contracts.d.ts +11 -0
  596. package/_types/environments/definitions/moonbeam/contracts.d.ts.map +1 -0
  597. package/_types/environments/definitions/moonbeam/core-markets.d.ts +39 -0
  598. package/_types/environments/definitions/moonbeam/core-markets.d.ts.map +1 -0
  599. package/_types/environments/definitions/moonbeam/custom.d.ts +25 -0
  600. package/_types/environments/definitions/moonbeam/custom.d.ts.map +1 -0
  601. package/_types/environments/definitions/moonbeam/environment.d.ts +202 -0
  602. package/_types/environments/definitions/moonbeam/environment.d.ts.map +1 -0
  603. package/_types/environments/definitions/moonbeam/tokens.d.ts +129 -0
  604. package/_types/environments/definitions/moonbeam/tokens.d.ts.map +1 -0
  605. package/_types/environments/definitions/moonriver/contracts.d.ts +10 -0
  606. package/_types/environments/definitions/moonriver/contracts.d.ts.map +1 -0
  607. package/_types/environments/definitions/moonriver/core-markets.d.ts +31 -0
  608. package/_types/environments/definitions/moonriver/core-markets.d.ts.map +1 -0
  609. package/_types/environments/definitions/moonriver/custom.d.ts +8 -0
  610. package/_types/environments/definitions/moonriver/custom.d.ts.map +1 -0
  611. package/_types/environments/definitions/moonriver/environment.d.ts +151 -0
  612. package/_types/environments/definitions/moonriver/environment.d.ts.map +1 -0
  613. package/_types/environments/definitions/moonriver/tokens.d.ts +105 -0
  614. package/_types/environments/definitions/moonriver/tokens.d.ts.map +1 -0
  615. package/_types/environments/definitions/optimism/contracts.d.ts +13 -0
  616. package/_types/environments/definitions/optimism/contracts.d.ts.map +1 -0
  617. package/_types/environments/definitions/optimism/core-markets.d.ts +47 -0
  618. package/_types/environments/definitions/optimism/core-markets.d.ts.map +1 -0
  619. package/_types/environments/definitions/optimism/custom.d.ts +7 -0
  620. package/_types/environments/definitions/optimism/custom.d.ts.map +1 -0
  621. package/_types/environments/definitions/optimism/environment.d.ts +217 -0
  622. package/_types/environments/definitions/optimism/environment.d.ts.map +1 -0
  623. package/_types/environments/definitions/optimism/tokens.d.ts +153 -0
  624. package/_types/environments/definitions/optimism/tokens.d.ts.map +1 -0
  625. package/_types/environments/index.d.ts +2170 -0
  626. package/_types/environments/index.d.ts.map +1 -0
  627. package/_types/environments/types/config.d.ts +192 -0
  628. package/_types/environments/types/config.d.ts.map +1 -0
  629. package/_types/environments/types/contracts.d.ts +22 -0
  630. package/_types/environments/types/contracts.d.ts.map +1 -0
  631. package/_types/environments/utils/index.d.ts +9 -0
  632. package/_types/environments/utils/index.d.ts.map +1 -0
  633. package/_types/types/delegate.d.ts +19 -0
  634. package/_types/types/delegate.d.ts.map +1 -0
  635. package/_types/types/discussion.d.ts +9 -0
  636. package/_types/types/discussion.d.ts.map +1 -0
  637. package/_types/types/market.d.ts +36 -0
  638. package/_types/types/market.d.ts.map +1 -0
  639. package/_types/types/morphoMarket.d.ts +66 -0
  640. package/_types/types/morphoMarket.d.ts.map +1 -0
  641. package/_types/types/morphoReward.d.ts +10 -0
  642. package/_types/types/morphoReward.d.ts.map +1 -0
  643. package/_types/types/morphoUserPosition.d.ts +22 -0
  644. package/_types/types/morphoUserPosition.d.ts.map +1 -0
  645. package/_types/types/morphoUserReward.d.ts +42 -0
  646. package/_types/types/morphoUserReward.d.ts.map +1 -0
  647. package/_types/types/morphoVault.d.ts +34 -0
  648. package/_types/types/morphoVault.d.ts.map +1 -0
  649. package/_types/types/proposal.d.ts +86 -0
  650. package/_types/types/proposal.d.ts.map +1 -0
  651. package/_types/types/snapshotProposal.d.ts +19 -0
  652. package/_types/types/snapshotProposal.d.ts.map +1 -0
  653. package/_types/types/staking.d.ts +35 -0
  654. package/_types/types/staking.d.ts.map +1 -0
  655. package/_types/types/userBalance.d.ts +10 -0
  656. package/_types/types/userBalance.d.ts.map +1 -0
  657. package/_types/types/userPosition.d.ts +16 -0
  658. package/_types/types/userPosition.d.ts.map +1 -0
  659. package/_types/types/userReward.d.ts +14 -0
  660. package/_types/types/userReward.d.ts.map +1 -0
  661. package/_types/types/userVotingPowers.d.ts +21 -0
  662. package/_types/types/userVotingPowers.d.ts.map +1 -0
  663. package/_types/types/voteReceipt.d.ts +11 -0
  664. package/_types/types/voteReceipt.d.ts.map +1 -0
  665. package/actions/core/getUserBalances.ts +66 -0
  666. package/actions/core/markets/common.ts +201 -0
  667. package/actions/core/markets/getMarket.ts +46 -0
  668. package/actions/core/markets/getMarkets.ts +29 -0
  669. package/actions/core/user-positions/common.ts +96 -0
  670. package/actions/core/user-positions/getUserPosition.ts +53 -0
  671. package/actions/core/user-positions/getUserPositions.ts +39 -0
  672. package/actions/core/user-rewards/common.ts +154 -0
  673. package/actions/core/user-rewards/getUserReward.ts +52 -0
  674. package/actions/core/user-rewards/getUserRewards.ts +40 -0
  675. package/actions/governance/getDelegates.ts +281 -0
  676. package/actions/governance/getDiscussions.ts +77 -0
  677. package/actions/governance/getGovernanceTokenInfo.ts +38 -0
  678. package/actions/governance/getStakingInfo.ts +99 -0
  679. package/actions/governance/getStakingSnapshots.ts +64 -0
  680. package/actions/governance/getUserStakingInfo.ts +98 -0
  681. package/actions/governance/getUserVoteReceipt.ts +113 -0
  682. package/actions/governance/getUserVotingPowers.ts +139 -0
  683. package/actions/governance/proposals/common.ts +562 -0
  684. package/actions/governance/proposals/getProposal.ts +50 -0
  685. package/actions/governance/proposals/getProposals.ts +51 -0
  686. package/actions/governance/snapshot/common.ts +153 -0
  687. package/actions/governance/snapshot/getSnapshotProposal.ts +44 -0
  688. package/actions/governance/snapshot/getSnapshotProposals.ts +43 -0
  689. package/actions/morpho/getMorphoUserBalances.ts +78 -0
  690. package/actions/morpho/markets/common.ts +351 -0
  691. package/actions/morpho/markets/getMorphoMarket.ts +52 -0
  692. package/actions/morpho/markets/getMorphoMarkets.ts +30 -0
  693. package/actions/morpho/user-positions/common.ts +101 -0
  694. package/actions/morpho/user-positions/getMorphoMarketUserPosition.ts +54 -0
  695. package/actions/morpho/user-positions/getMorphoMarketUserPositions.ts +39 -0
  696. package/actions/morpho/user-positions/getMorphoVaultUserPosition.ts +54 -0
  697. package/actions/morpho/user-positions/getMorphoVaultUserPositions.ts +38 -0
  698. package/actions/morpho/user-rewards/common.ts +217 -0
  699. package/actions/morpho/user-rewards/getMorphoUserRewards.ts +37 -0
  700. package/actions/morpho/utils/accrueInterests.ts +53 -0
  701. package/actions/morpho/utils/graphql.ts +27 -0
  702. package/actions/morpho/utils/math.ts +66 -0
  703. package/actions/morpho/vaults/common.ts +458 -0
  704. package/actions/morpho/vaults/getMorphoVault.ts +52 -0
  705. package/actions/morpho/vaults/getMorphoVaults.ts +30 -0
  706. package/actions/package.json +6 -0
  707. package/client/createActions.ts +287 -0
  708. package/client/createMoonwellClient.ts +91 -0
  709. package/common/amount.ts +25 -0
  710. package/common/error.ts +30 -0
  711. package/common/index.ts +65 -0
  712. package/common/package.json +6 -0
  713. package/common/types.ts +50 -0
  714. package/environments/abis/chainLinkOracleAbi.ts +245 -0
  715. package/environments/abis/comptrollerAbi.ts +1424 -0
  716. package/environments/abis/coreRouterAbi.ts +79 -0
  717. package/environments/abis/coreViewsAbi.ts +1335 -0
  718. package/environments/abis/governanceTokenAbi.ts +324 -0
  719. package/environments/abis/governorAbi.ts +1153 -0
  720. package/environments/abis/index.ts +41 -0
  721. package/environments/abis/marketTokenAbi.ts +1623 -0
  722. package/environments/abis/morphoBlueAbi.ts +1526 -0
  723. package/environments/abis/morphoBundlerAbi.ts +1104 -0
  724. package/environments/abis/morphoPublicAllocatorAbi.ts +355 -0
  725. package/environments/abis/morphoVaultAbi.ts +2506 -0
  726. package/environments/abis/morphoViewsAbi.ts +876 -0
  727. package/environments/abis/multiRewardDistributorAbi.ts +1212 -0
  728. package/environments/abis/multichainGovernorAbi.ts +1912 -0
  729. package/environments/abis/stakingTokenAbi.ts +582 -0
  730. package/environments/abis/temporalGovernorAbi.ts +543 -0
  731. package/environments/abis/tokenAbi.ts +394 -0
  732. package/environments/abis/voteCollectorAbi.ts +861 -0
  733. package/environments/abis/wrappedNativeTokenAbi.ts +153 -0
  734. package/environments/definitions/base/contracts.ts +22 -0
  735. package/environments/definitions/base/core-markets.ts +48 -0
  736. package/environments/definitions/base/custom.ts +18 -0
  737. package/environments/definitions/base/environment.ts +47 -0
  738. package/environments/definitions/base/morpho-markets.ts +53 -0
  739. package/environments/definitions/base/morpho-vaults.ts +16 -0
  740. package/environments/definitions/base/tokens.ts +155 -0
  741. package/environments/definitions/governance.ts +45 -0
  742. package/environments/definitions/moonbeam/contracts.ts +16 -0
  743. package/environments/definitions/moonbeam/core-markets.ts +44 -0
  744. package/environments/definitions/moonbeam/custom.ts +21 -0
  745. package/environments/definitions/moonbeam/environment.ts +25 -0
  746. package/environments/definitions/moonbeam/tokens.ts +131 -0
  747. package/environments/definitions/moonriver/contracts.ts +15 -0
  748. package/environments/definitions/moonriver/core-markets.ts +36 -0
  749. package/environments/definitions/moonriver/custom.ts +9 -0
  750. package/environments/definitions/moonriver/environment.ts +25 -0
  751. package/environments/definitions/moonriver/tokens.ts +107 -0
  752. package/environments/definitions/optimism/contracts.ts +18 -0
  753. package/environments/definitions/optimism/core-markets.ts +52 -0
  754. package/environments/definitions/optimism/custom.ts +8 -0
  755. package/environments/definitions/optimism/environment.ts +25 -0
  756. package/environments/definitions/optimism/tokens.ts +155 -0
  757. package/environments/index.ts +152 -0
  758. package/environments/package.json +6 -0
  759. package/environments/types/config.ts +581 -0
  760. package/environments/types/contracts.ts +136 -0
  761. package/environments/utils/index.ts +37 -0
  762. package/package.json +85 -0
  763. package/types/delegate.ts +18 -0
  764. package/types/discussion.ts +8 -0
  765. package/types/market.ts +37 -0
  766. package/types/morphoMarket.ts +68 -0
  767. package/types/morphoReward.ts +10 -0
  768. package/types/morphoUserPosition.ts +23 -0
  769. package/types/morphoUserReward.ts +45 -0
  770. package/types/morphoVault.ts +35 -0
  771. package/types/proposal.ts +94 -0
  772. package/types/snapshotProposal.ts +18 -0
  773. package/types/staking.ts +37 -0
  774. package/types/userBalance.ts +10 -0
  775. package/types/userPosition.ts +16 -0
  776. package/types/userReward.ts +14 -0
  777. package/types/userVotingPowers.ts +21 -0
  778. package/types/voteReceipt.ts +11 -0
@@ -0,0 +1,129 @@
1
+ import { zeroAddress } from "viem";
2
+ import { Amount, DAYS_PER_YEAR } from "../../../common/index.js";
3
+ import { calculateApy, perDay } from "../../../common/index.js";
4
+ import { publicEnvironments, } from "../../../environments/index.js";
5
+ import { findMarketByAddress, findTokenByAddress, } from "../../../environments/utils/index.js";
6
+ export const getMarketsData = async (environment) => {
7
+ const homeEnvironment = Object.values(publicEnvironments).find((e) => e.custom?.governance?.chainIds?.includes(environment.chainId)) || environment;
8
+ const viewsContract = environment.contracts.views;
9
+ const homeViewsContract = homeEnvironment.contracts.views;
10
+ const marketData = await Promise.all([
11
+ viewsContract?.read.getProtocolInfo(),
12
+ viewsContract?.read.getAllMarketsInfo(),
13
+ homeViewsContract?.read.getNativeTokenPrice(),
14
+ homeViewsContract?.read.getGovernanceTokenPrice(),
15
+ ]);
16
+ const { seizePaused, transferPaused } = marketData[0];
17
+ const allMarketsInfo = marketData[1];
18
+ const nativeTokenPriceRaw = marketData[2];
19
+ const governanceTokenPriceRaw = marketData[3];
20
+ const governanceTokenPrice = new Amount(governanceTokenPriceRaw, 18);
21
+ const nativeTokenPrice = new Amount(nativeTokenPriceRaw, 18);
22
+ const markets = [];
23
+ const tokenPrices = allMarketsInfo
24
+ .map((marketInfo) => {
25
+ const marketFound = findMarketByAddress(environment, marketInfo.market);
26
+ if (marketFound) {
27
+ return {
28
+ token: marketFound.underlyingToken,
29
+ tokenPrice: new Amount(marketInfo.underlyingPrice, 36 - marketFound.underlyingToken.decimals),
30
+ };
31
+ }
32
+ else {
33
+ return;
34
+ }
35
+ })
36
+ .filter((token) => !!token);
37
+ for (const marketInfo of allMarketsInfo) {
38
+ const marketFound = findMarketByAddress(environment, marketInfo.market);
39
+ if (marketFound) {
40
+ const { marketConfig, marketToken, underlyingToken } = marketFound;
41
+ const supplyCaps = new Amount(marketInfo.supplyCap, underlyingToken.decimals);
42
+ const borrowCaps = new Amount(marketInfo.borrowCap, underlyingToken.decimals);
43
+ const collateralFactor = new Amount(marketInfo.collateralFactor, 18)
44
+ .value;
45
+ const underlyingPrice = new Amount(marketInfo.underlyingPrice, 36 - underlyingToken.decimals).value;
46
+ const marketTotalSupply = new Amount(marketInfo.totalSupply, marketToken.decimals);
47
+ const totalBorrows = new Amount(marketInfo.totalBorrows, underlyingToken.decimals);
48
+ const totalReserves = new Amount(marketInfo.totalReserves, underlyingToken.decimals);
49
+ const cash = new Amount(marketInfo.cash, underlyingToken.decimals);
50
+ const exchangeRate = new Amount(marketInfo.exchangeRate, 10 + underlyingToken.decimals).value;
51
+ const reserveFactor = new Amount(marketInfo.reserveFactor, 18).value;
52
+ const borrowRate = new Amount(marketInfo.borrowRate, 18);
53
+ const supplyRate = new Amount(marketInfo.supplyRate, 18);
54
+ const totalSupply = new Amount(marketTotalSupply.value * exchangeRate, underlyingToken.decimals);
55
+ const totalSupplyUsd = totalSupply.value * underlyingPrice;
56
+ const totalBorrowsUsd = totalBorrows.value * underlyingPrice;
57
+ const totalReservesUsd = totalReserves.value * underlyingPrice;
58
+ const supplyCapsUsd = supplyCaps.value * underlyingPrice;
59
+ const borrowCapsUsd = borrowCaps.value * underlyingPrice;
60
+ const baseSupplyApy = calculateApy(supplyRate.value);
61
+ const baseBorrowApy = calculateApy(borrowRate.value);
62
+ const market = {
63
+ chainId: environment.chainId,
64
+ seizePaused,
65
+ transferPaused,
66
+ deprecated: marketConfig.deprecated === true,
67
+ borrowCaps,
68
+ borrowCapsUsd,
69
+ cash,
70
+ collateralFactor,
71
+ exchangeRate,
72
+ marketToken,
73
+ reserveFactor,
74
+ supplyCaps,
75
+ supplyCapsUsd,
76
+ totalBorrows,
77
+ totalBorrowsUsd,
78
+ totalReserves,
79
+ totalReservesUsd,
80
+ totalSupply,
81
+ totalSupplyUsd,
82
+ underlyingPrice,
83
+ underlyingToken,
84
+ baseBorrowApy,
85
+ baseSupplyApy,
86
+ totalBorrowApr: 0,
87
+ totalSupplyApr: 0,
88
+ rewards: [],
89
+ };
90
+ for (const incentive of marketInfo.incentives) {
91
+ let { borrowIncentivesPerSec, supplyIncentivesPerSec, token: tokenAddress, } = incentive;
92
+ const token = findTokenByAddress(environment, tokenAddress);
93
+ if (token) {
94
+ const isGovernanceToken = token.symbol === environment.custom?.governance?.token;
95
+ const isNativeToken = token.address === zeroAddress;
96
+ const tokenPrice = tokenPrices.find((r) => r?.token.address === incentive.token)?.tokenPrice.value;
97
+ const price = isNativeToken
98
+ ? nativeTokenPrice.value
99
+ : isGovernanceToken
100
+ ? governanceTokenPrice.value
101
+ : tokenPrice;
102
+ if (price) {
103
+ if (token.symbol === "USDC" && borrowIncentivesPerSec === 1n) {
104
+ borrowIncentivesPerSec = 0n;
105
+ }
106
+ const supplyRewardsPerDayUsd = perDay(new Amount(supplyIncentivesPerSec, token.decimals).value) *
107
+ price;
108
+ const borrowRewardsPerDayUsd = perDay(new Amount(borrowIncentivesPerSec, token.decimals).value) *
109
+ price;
110
+ const supplyApr = (supplyRewardsPerDayUsd / totalSupplyUsd) * DAYS_PER_YEAR * 100;
111
+ const borrowApr = (borrowRewardsPerDayUsd / totalBorrowsUsd) * DAYS_PER_YEAR * 100;
112
+ market.rewards.push({
113
+ borrowApr,
114
+ supplyApr,
115
+ token,
116
+ });
117
+ }
118
+ }
119
+ }
120
+ market.totalSupplyApr = market.rewards.reduce((prev, curr) => prev + curr.supplyApr, market.baseSupplyApy);
121
+ market.totalBorrowApr =
122
+ market.baseBorrowApy -
123
+ market.rewards.reduce((prev, curr) => prev + curr.borrowApr, 0);
124
+ markets.push(market);
125
+ }
126
+ }
127
+ return markets;
128
+ };
129
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/core/markets/common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { getEnvironmentFromArgs } from "../../../common/index.js";
2
+ import { getMarketsData } from "./common.js";
3
+ export async function getMarket(client, args) {
4
+ let { marketAddress, market } = args;
5
+ const environment = getEnvironmentFromArgs(client, args);
6
+ if (!environment) {
7
+ return undefined;
8
+ }
9
+ if (!marketAddress) {
10
+ marketAddress = environment.markets[market].address;
11
+ }
12
+ const markets = await getMarketsData(environment);
13
+ return markets.find((m) => m.marketToken.address === marketAddress);
14
+ }
15
+ //# sourceMappingURL=getMarket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMarket.js","sourceRoot":"","sources":["../../../../actions/core/markets/getMarket.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAUlE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAS7C,MAAM,CAAC,KAAK,UAAU,SAAS,CAI7B,MAAsB,EACtB,IAAgD;IAEhD,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAG/B,CAAC;IAEF,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEzD,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;KACrD;IAED,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IAClD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC;AACtE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { getEnvironmentsFromArgs } from "../../../common/index.js";
2
+ import { getMarketsData } from "./common.js";
3
+ export async function getMarkets(client, args) {
4
+ const environments = getEnvironmentsFromArgs(client, args);
5
+ const result = await Promise.all(environments.map((environment) => getMarketsData(environment)));
6
+ return result.flat();
7
+ }
8
+ //# sourceMappingURL=getMarkets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMarkets.js","sourceRoot":"","sources":["../../../../actions/core/markets/getMarkets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAS7C,MAAM,CAAC,KAAK,UAAU,UAAU,CAI9B,MAAsB,EACtB,IAAkD;IAElD,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAC/D,CAAC;IAEF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { Amount } from "../../../common/index.js";
2
+ import { findMarketByAddress } from "../../../environments/utils/index.js";
3
+ export const getUserPositionData = async (params) => {
4
+ const viewsContract = params.environment.contracts.views;
5
+ const userData = await Promise.all([
6
+ viewsContract?.read.getAllMarketsInfo(),
7
+ viewsContract?.read.getUserBalances([params.account]),
8
+ viewsContract?.read.getUserBorrowsBalances([params.account]),
9
+ viewsContract?.read.getUserMarketsMemberships([params.account]),
10
+ ]);
11
+ const [allMarkets, balances, borrows, memberships] = userData;
12
+ const markets = allMarkets
13
+ ?.map((marketInfo) => {
14
+ const market = findMarketByAddress(params.environment, marketInfo.market);
15
+ if (market) {
16
+ const { marketToken, underlyingToken } = market;
17
+ const underlyingPrice = new Amount(marketInfo.underlyingPrice, 36 - underlyingToken.decimals).value;
18
+ const collateralFactor = new Amount(marketInfo.collateralFactor, 18)
19
+ .value;
20
+ const exchangeRate = new Amount(marketInfo.exchangeRate, 10 + underlyingToken.decimals).value;
21
+ const marketCollateralEnabled = memberships?.find((r) => r.token === marketInfo.market)
22
+ ?.membership === true;
23
+ const marketBorrowedRaw = borrows?.find((r) => r.token === marketInfo.market)?.amount || 0n;
24
+ const marketSuppliedRaw = balances?.find((r) => r.token === marketInfo.market)?.amount || 0n;
25
+ const borrowed = new Amount(marketBorrowedRaw, market.underlyingToken.decimals);
26
+ const borrowedUsd = borrowed.value * underlyingPrice;
27
+ const marketSupplied = new Amount(marketSuppliedRaw, marketToken.decimals);
28
+ const supplied = new Amount(marketSupplied.value * exchangeRate, underlyingToken.decimals);
29
+ const suppliedUsd = supplied.value * underlyingPrice;
30
+ const collateral = marketCollateralEnabled
31
+ ? new Amount(supplied.value * collateralFactor, underlyingToken.decimals)
32
+ : new Amount(0n, underlyingToken.decimals);
33
+ const collateralUsd = collateral.value * underlyingPrice;
34
+ const result = {
35
+ chainId: params.environment.chainId,
36
+ account: params.account,
37
+ market: market.marketToken,
38
+ collateralEnabled: marketCollateralEnabled,
39
+ borrowed,
40
+ borrowedUsd,
41
+ collateral,
42
+ collateralUsd,
43
+ supplied,
44
+ suppliedUsd,
45
+ };
46
+ return result;
47
+ }
48
+ else {
49
+ return;
50
+ }
51
+ })
52
+ .filter((r) => r !== undefined)
53
+ .filter((r) => params.markets ? params.markets.includes(r.market.address) : true);
54
+ return markets;
55
+ };
56
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/core/user-positions/common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { getEnvironmentFromArgs } from "../../../common/index.js";
2
+ import { getUserPositionData } from "./common.js";
3
+ export async function getUserPosition(client, args) {
4
+ let { marketAddress, userAddress } = args;
5
+ const environment = getEnvironmentFromArgs(client, args);
6
+ if (!environment) {
7
+ return undefined;
8
+ }
9
+ if (!marketAddress) {
10
+ const { market } = args;
11
+ marketAddress = environment.markets[market].address;
12
+ }
13
+ const userPosition = await getUserPositionData({
14
+ environment,
15
+ account: userAddress,
16
+ markets: [marketAddress],
17
+ });
18
+ return userPosition?.length > 0 ? userPosition[0] : undefined;
19
+ }
20
+ //# sourceMappingURL=getUserPosition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserPosition.js","sourceRoot":"","sources":["../../../../actions/core/user-positions/getUserPosition.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAalD,MAAM,CAAC,KAAK,UAAU,eAAe,CAInC,MAAsB,EACtB,IAAsD;IAEtD,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,IAGpC,CAAC;IAEF,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEzD,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAqC,CAAC;QACzD,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;KACrD;IAED,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC;QAC7C,WAAW;QACX,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,CAAC,aAAa,CAAC;KACzB,CAAC,CAAC;IAEH,OAAO,YAAY,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAChE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { getEnvironmentsFromArgs } from "../../../common/index.js";
2
+ import { getUserPositionData } from "./common.js";
3
+ export async function getUserPositions(client, args) {
4
+ const { userAddress } = args;
5
+ const environments = getEnvironmentsFromArgs(client, args);
6
+ const result = await Promise.all(environments.map((environment) => getUserPositionData({
7
+ environment,
8
+ account: userAddress,
9
+ })));
10
+ return result.flat();
11
+ }
12
+ //# sourceMappingURL=getUserPositions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserPositions.js","sourceRoot":"","sources":["../../../../actions/core/user-positions/getUserPositions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAYlD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAIpC,MAAsB,EACtB,IAAuD;IAEvD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAE7B,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAC/B,mBAAmB,CAAC;QAClB,WAAW;QACX,OAAO,EAAE,WAAW;KACrB,CAAC,CACH,CACF,CAAC;IAEF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC"}
@@ -0,0 +1,91 @@
1
+ import { zeroAddress } from "viem";
2
+ import { Amount } from "../../../common/index.js";
3
+ import { publicEnvironments, } from "../../../environments/index.js";
4
+ import { findMarketByAddress, findTokenByAddress, } from "../../../environments/utils/index.js";
5
+ export const getUserRewardsData = async (params) => {
6
+ const homeEnvironment = Object.values(publicEnvironments).find((e) => e.custom?.governance?.chainIds?.includes(params.environment.chainId)) || params.environment;
7
+ const viewsContract = params.environment.contracts.views;
8
+ const homeViewsContract = homeEnvironment.contracts.views;
9
+ const userData = await Promise.all([
10
+ viewsContract?.read.getAllMarketsInfo(),
11
+ viewsContract?.read.getUserRewards([params.account]),
12
+ homeViewsContract?.read.getNativeTokenPrice(),
13
+ homeViewsContract?.read.getGovernanceTokenPrice(),
14
+ ]);
15
+ const [allMarkets, userRewards, nativeTokenPriceRaw, governanceTokenPriceRaw,] = userData;
16
+ const governanceTokenPrice = new Amount(governanceTokenPriceRaw || 0n, 18);
17
+ const nativeTokenPrice = new Amount(nativeTokenPriceRaw || 0n, 18);
18
+ let tokenPrices = allMarkets
19
+ ?.map((marketInfo) => {
20
+ const marketFound = findMarketByAddress(params.environment, marketInfo.market);
21
+ if (marketFound) {
22
+ return {
23
+ token: marketFound.underlyingToken,
24
+ tokenPrice: new Amount(marketInfo.underlyingPrice, 36 - marketFound.underlyingToken.decimals),
25
+ };
26
+ }
27
+ else {
28
+ return;
29
+ }
30
+ })
31
+ .filter((token) => !!token) || [];
32
+ // Add governance token to token prices
33
+ if (params.environment.custom?.governance?.token) {
34
+ tokenPrices = [
35
+ ...tokenPrices,
36
+ {
37
+ token: params.environment.config.tokens[params.environment.custom.governance.token],
38
+ tokenPrice: governanceTokenPrice,
39
+ },
40
+ ];
41
+ }
42
+ // Add native token to token prices
43
+ tokenPrices = [
44
+ ...tokenPrices,
45
+ {
46
+ token: findTokenByAddress(params.environment, zeroAddress),
47
+ tokenPrice: nativeTokenPrice,
48
+ },
49
+ ];
50
+ const markets = (allMarkets || []).filter((r) => params.markets ? params.markets.includes(r.market) : true);
51
+ const rewards = markets.flatMap((marketInfo) => {
52
+ const market = findMarketByAddress(params.environment, marketInfo.market);
53
+ if (market) {
54
+ const marketRewards = userRewards?.filter((r) => r.market === marketInfo.market) || [];
55
+ return marketRewards
56
+ .filter((reward) => {
57
+ const token = findTokenByAddress(params.environment, reward.rewardToken);
58
+ return token !== undefined;
59
+ })
60
+ .map((reward) => {
61
+ const token = findTokenByAddress(params.environment, reward.rewardToken);
62
+ const isGovernanceToken = token.symbol === params.environment.custom?.governance?.token;
63
+ const isNativeToken = token.address === zeroAddress;
64
+ const tokenPrice = tokenPrices?.find((r) => r?.token.address === reward.rewardToken)?.tokenPrice.value;
65
+ const price = (isNativeToken
66
+ ? nativeTokenPrice.value
67
+ : isGovernanceToken
68
+ ? governanceTokenPrice.value
69
+ : tokenPrice) || 0;
70
+ const supplyRewards = new Amount(reward.supplyRewardsAmount, token.decimals);
71
+ const borrowRewards = new Amount(reward.borrowRewardsAmount, token.decimals);
72
+ const result = {
73
+ chainId: params.environment.chainId,
74
+ account: params.account,
75
+ market: market.marketToken,
76
+ rewardToken: token,
77
+ supplyRewards,
78
+ supplyRewardsUsd: supplyRewards.value * price,
79
+ borrowRewards,
80
+ borrowRewardsUsd: borrowRewards.value * price,
81
+ };
82
+ return result;
83
+ });
84
+ }
85
+ else {
86
+ return [];
87
+ }
88
+ });
89
+ return rewards;
90
+ };
91
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/core/user-rewards/common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { getEnvironmentFromArgs } from "../../../common/index.js";
2
+ import { getUserRewardsData } from "./common.js";
3
+ export async function getUserReward(client, args) {
4
+ let { marketAddress, userAddress } = args;
5
+ const environment = getEnvironmentFromArgs(client, args);
6
+ if (!environment) {
7
+ return undefined;
8
+ }
9
+ if (!marketAddress) {
10
+ const { market } = args;
11
+ marketAddress = environment.markets[market].address;
12
+ }
13
+ const userRewards = await getUserRewardsData({
14
+ environment: environment,
15
+ account: userAddress,
16
+ markets: [marketAddress],
17
+ });
18
+ return userRewards?.length > 0 ? userRewards[0] : undefined;
19
+ }
20
+ //# sourceMappingURL=getUserReward.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserReward.js","sourceRoot":"","sources":["../../../../actions/core/user-rewards/getUserReward.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAYjD,MAAM,CAAC,KAAK,UAAU,aAAa,CAIjC,MAAsB,EACtB,IAAoD;IAEpD,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,IAGpC,CAAC;IAEF,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEzD,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAqC,CAAC;QACzD,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;KACrD;IAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC;QAC3C,WAAW,EAAE,WAAW;QACxB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,CAAC,aAAa,CAAC;KACzB,CAAC,CAAC;IAEH,OAAO,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { getEnvironmentsFromArgs } from "../../../common/index.js";
2
+ import { getUserRewardsData } from "./common.js";
3
+ export async function getUserRewards(client, args) {
4
+ const { userAddress } = args;
5
+ const environments = getEnvironmentsFromArgs(client, args);
6
+ const result = await Promise.all(environments.map((environment) => getUserRewardsData({
7
+ environment,
8
+ account: userAddress,
9
+ })));
10
+ return result.flat();
11
+ }
12
+ //# sourceMappingURL=getUserRewards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserRewards.js","sourceRoot":"","sources":["../../../../actions/core/user-rewards/getUserRewards.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAInE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAYjD,MAAM,CAAC,KAAK,UAAU,cAAc,CAIlC,MAAsB,EACtB,IAAqD;IAErD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAE7B,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAC/B,kBAAkB,CAAC;QACjB,WAAW;QACX,OAAO,EAAE,WAAW;KACrB,CAAC,CACH,CACF,CAAC;IAEF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC"}
@@ -0,0 +1,157 @@
1
+ import axios from "axios";
2
+ import { isAddress } from "viem";
3
+ import { HttpRequestError } from "../../common/index.js";
4
+ import { publicEnvironments } from "../../environments/index.js";
5
+ /**
6
+ * Returns a list of the delegates from the Moonwell Governance Forum
7
+ *
8
+ * https://forum.moonwell.fi/c/delegation-pitch/17
9
+ */
10
+ export async function getDelegates(client) {
11
+ let users = [];
12
+ const getUsersPaginated = async (page = 0) => {
13
+ const response = await axios.get(`https://forum.moonwell.fi/directory_items.json?period=all&order=Delegate+Wallet+Address&user_field_ids=2%7C1%7C3&plugin_column_ids=8&page=${page}`);
14
+ if (response.status !== 200 || !response.data) {
15
+ throw new HttpRequestError(response.statusText);
16
+ }
17
+ const results = response.data.directory_items
18
+ .filter((item) => item.user.user_fields[1] !== undefined &&
19
+ isAddress(item.user.user_fields[1]) &&
20
+ item.user.user_fields[2] !== null)
21
+ .map((item) => {
22
+ const avatar = item.user.avatar_template.replace("{size}", "160");
23
+ const result = {
24
+ avatar: avatar.startsWith("/user_avatar")
25
+ ? `https://dub1.discourse-cdn.com/flex017${avatar}`
26
+ : avatar,
27
+ name: item.user.username,
28
+ wallet: item.user.user_fields[1],
29
+ pitch: {
30
+ intro: item.user.user_fields[2],
31
+ url: item.user.user_fields[3],
32
+ },
33
+ };
34
+ return result;
35
+ });
36
+ users = users.concat(results);
37
+ if (response.data.directory_items.filter((r) => r.user.user_fields[1] === undefined).length > 0) {
38
+ await getUsersPaginated(page + 1);
39
+ }
40
+ };
41
+ await getUsersPaginated();
42
+ //Get how many proposals the delegate have voted for
43
+ const proposals = await getDelegatesExtendedData({
44
+ users: users.map((r) => r.wallet),
45
+ });
46
+ //Get delegate voting powers
47
+ const envs = Object.values(client.environments);
48
+ const votingPowers = await Promise.all(users.map(async (user) => Promise.all(envs.map((environment) => environment.contracts.views?.read.getUserVotingPower([
49
+ user.wallet,
50
+ ])))));
51
+ users = users.map((user, index) => {
52
+ let votingPower = {};
53
+ const userVotingPowers = votingPowers[index];
54
+ if (userVotingPowers) {
55
+ votingPower = envs.reduce((prev, curr, reduceIndex) => {
56
+ const { claimsVotes, stakingVotes, tokenVotes } = userVotingPowers[reduceIndex];
57
+ const totalVotes = claimsVotes.delegatedVotingPower +
58
+ stakingVotes.delegatedVotingPower +
59
+ tokenVotes.delegatedVotingPower;
60
+ return {
61
+ ...prev,
62
+ [curr.chainId]: Number(totalVotes / BigInt(10 ** 18)),
63
+ };
64
+ }, {});
65
+ }
66
+ const extended = {
67
+ ...user,
68
+ proposals: proposals[user.wallet.toLowerCase()],
69
+ votingPower,
70
+ };
71
+ return extended;
72
+ });
73
+ return users;
74
+ }
75
+ /**
76
+ * Helper function to get how many proposals the delegates have created and voted
77
+ */
78
+ const getDelegatesExtendedData = async (params) => {
79
+ const response = await axios.post(publicEnvironments.moonbeam.indexerUrl, {
80
+ query: `
81
+ query {
82
+ proposers(where: {id_in: [${params.users.map((r) => `"${r.toLowerCase()}"`).join(",")}]}) {
83
+ items {
84
+ id
85
+ proposals(limit: 1000) {
86
+ items {
87
+ chainId
88
+ proposalId
89
+ }
90
+ }
91
+ }
92
+ }
93
+ voters(where: {id_in: [${params.users.map((r) => `"${r.toLowerCase()}"`).join(",")}]}) {
94
+ items {
95
+ id
96
+ votes(limit: 1000) {
97
+ items {
98
+ voter
99
+ proposal {
100
+ chainId
101
+ }
102
+ }
103
+ }
104
+ }
105
+ }
106
+ }
107
+ `,
108
+ });
109
+ if (response.status === 200 && response.data?.data?.voters) {
110
+ const voters = response?.data?.data?.voters?.items.reduce((prev, curr) => {
111
+ return {
112
+ ...prev,
113
+ [curr.id.toLowerCase()]: curr.votes.items.reduce((prevVotes, currVotes) => {
114
+ const previousVotes = prevVotes[currVotes.proposal.chainId] || 0;
115
+ return {
116
+ ...prevVotes,
117
+ [currVotes.proposal.chainId]: previousVotes + 1,
118
+ };
119
+ }, {}),
120
+ };
121
+ }, {});
122
+ const proposers = response?.data?.data?.proposers?.items.reduce((prev, curr) => {
123
+ return {
124
+ ...prev,
125
+ [curr.id.toLowerCase()]: curr.proposals.items.reduce((prevVotes, currVotes) => {
126
+ const previousProposed = prevVotes[currVotes.chainId] || 0;
127
+ return {
128
+ ...prevVotes,
129
+ [currVotes.chainId]: previousProposed + 1,
130
+ };
131
+ }, {}),
132
+ };
133
+ }, {});
134
+ return params.users.reduce((prev, curr) => {
135
+ const proposalsCreated = proposers[curr.toLowerCase()];
136
+ const proposalsVoted = voters[curr.toLowerCase()];
137
+ const chains = [
138
+ ...Object.keys(proposalsCreated || {}),
139
+ ...Object.keys(proposalsVoted || {}),
140
+ ];
141
+ return {
142
+ ...prev,
143
+ [curr.toLowerCase()]: chains.reduce((prevChain, currChain) => {
144
+ return {
145
+ ...prevChain,
146
+ [currChain]: {
147
+ created: proposalsCreated?.[currChain] || 0,
148
+ voted: proposalsVoted?.[currChain] || 0,
149
+ },
150
+ };
151
+ }, {}),
152
+ };
153
+ }, {});
154
+ }
155
+ return {};
156
+ };
157
+ //# sourceMappingURL=getDelegates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDelegates.js","sourceRoot":"","sources":["../../../actions/governance/getDelegates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import axios from "axios";
2
+ import { isEqual, uniqWith } from "lodash";
3
+ import { HttpRequestError } from "../../common/index.js";
4
+ /**
5
+ * Returns a list of discussions from the Moonwell Governance Forum
6
+ *
7
+ * Community Proposals
8
+ * https://forum.moonwell.fi/c/proposals/community-proposal/19
9
+ *
10
+ * Moonwell Improvement Proposals
11
+ * https://forum.moonwell.fi/c/proposals/moonwell-improvement-proposals/20
12
+ */
13
+ export async function getDiscussions(_client) {
14
+ const moonwellProposalsResult = await axios.get("https://forum.moonwell.fi/c/proposals/moonwell-improvement-proposals/9/l/latest.json");
15
+ if (moonwellProposalsResult.status !== 200 || !moonwellProposalsResult.data) {
16
+ throw new HttpRequestError(moonwellProposalsResult.statusText);
17
+ }
18
+ const communityProposalsResult = await axios.get("https://forum.moonwell.fi/c/proposals/community-proposal/19/l/latest.json");
19
+ if (communityProposalsResult.status !== 200 ||
20
+ !communityProposalsResult.data) {
21
+ throw new HttpRequestError(communityProposalsResult.statusText);
22
+ }
23
+ const toType = (item) => {
24
+ return item.topic_list.topics.map((topic) => {
25
+ const result = {
26
+ title: topic.title,
27
+ views: topic.views,
28
+ replies: topic.posts_count - 1,
29
+ createdAt: new Date(topic.created_at).getTime(),
30
+ tags: topic.tags,
31
+ link: `https://forum.moonwell.fi/t/${topic.id}`,
32
+ };
33
+ return result;
34
+ });
35
+ };
36
+ const topics = [
37
+ ...toType(moonwellProposalsResult.data),
38
+ ...toType(communityProposalsResult.data),
39
+ ];
40
+ return uniqWith(topics, isEqual).sort((a, b) => b.createdAt - a.createdAt);
41
+ }
42
+ //# sourceMappingURL=getDiscussions.js.map