@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,6 +1,6 @@
1
1
  import axios from "axios";
2
2
 
3
- import { first, last } from "lodash";
3
+ import { last } from "lodash";
4
4
  import { moonriver } from "viem/chains";
5
5
  import { Amount } from "../../../common/index.js";
6
6
  import {
@@ -11,7 +11,7 @@ import {
11
11
  type ExtendedProposalData,
12
12
  MultichainProposalStateMapping,
13
13
  type Proposal,
14
- ProposalState,
14
+ type ProposalState,
15
15
  } from "../../../types/proposal.js";
16
16
 
17
17
  axios.defaults.timeout = 5_000;
@@ -24,19 +24,19 @@ export const appendProposalExtendedData = (
24
24
  const extendedData = extendedDatas.find((item) => item.id === proposal.id);
25
25
 
26
26
  if (extendedData) {
27
- const lastProposalUpdate = first(
28
- last(extendedData.stateChanges)?.messages,
29
- );
30
-
31
- // If the xChain timestamp is in the future, but less than 24 hours from now, it is queued
32
- if (lastProposalUpdate && lastProposalUpdate.timestamp > 0) {
33
- const now = Math.floor(Date.now() / 1000);
34
- if (lastProposalUpdate.timestamp + 60 * 60 * 24 > now) {
35
- proposal.state = ProposalState.MultichainQueued;
36
- } else {
37
- proposal.state = ProposalState.MultichainExecuted;
38
- }
39
- }
27
+ // const lastProposalUpdate = first(
28
+ // last(extendedData.stateChanges)?.messages,
29
+ // );
30
+
31
+ // // If the xChain timestamp is in the future, but less than 24 hours from now, it is queued
32
+ // if (lastProposalUpdate && lastProposalUpdate.timestamp > 0) {
33
+ // const now = Math.floor(Date.now() / 1000);
34
+ // if (lastProposalUpdate.timestamp + 60 * 60 * 24 > now) {
35
+ // proposal.state = ProposalState.MultichainQueued;
36
+ // } else {
37
+ // proposal.state = ProposalState.MultichainExecuted;
38
+ // }
39
+ // }
40
40
 
41
41
  proposal.title = extendedData.title;
42
42
  proposal.calldatas = extendedData.calldatas;
@@ -407,12 +407,6 @@ export const getExtendedProposalData = async (params: {
407
407
  txnHash: string;
408
408
  blockNumber: number;
409
409
  newState: string;
410
- messages: {
411
- items: {
412
- timestamp: number;
413
- sequence: number;
414
- }[];
415
- };
416
410
  }[];
417
411
  };
418
412
  }[];
@@ -442,12 +436,6 @@ export const getExtendedProposalData = async (params: {
442
436
  txnHash
443
437
  blockNumber
444
438
  newState
445
- messages {
446
- items {
447
- timestamp
448
- sequence
449
- }
450
- }
451
439
  }
452
440
  }
453
441
  }
@@ -468,7 +456,6 @@ export const getExtendedProposalData = async (params: {
468
456
  stateChanges: item.stateChanges.items.map((change) => {
469
457
  return {
470
458
  blockNumber: change.blockNumber,
471
- messages: change.messages.items.map((message) => message),
472
459
  state: change.newState,
473
460
  transactionHash: change.txnHash,
474
461
  };
@@ -1,7 +1,12 @@
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";
4
- import type { Chain } from "../../../environments/index.js";
3
+ import type { OptionalNetworkParameterType } from "../../../common/types.js";
4
+ import {
5
+ type Chain,
6
+ moonbeam,
7
+ moonriver,
8
+ } from "../../../environments/index.js";
9
+ import * as logger from "../../../logger/console.js";
5
10
  import type { Proposal } from "../../../types/proposal.js";
6
11
  import {
7
12
  appendProposalExtendedData,
@@ -13,7 +18,7 @@ import {
13
18
  export type GetProposalsParameters<
14
19
  environments,
15
20
  network extends Chain | undefined,
16
- > = NetworkParameterType<environments, network>;
21
+ > = OptionalNetworkParameterType<environments, network>;
17
22
 
18
23
  export type GetProposalsReturnType = Promise<Proposal[]>;
19
24
 
@@ -26,17 +31,33 @@ export async function getProposals<
26
31
  ): GetProposalsReturnType {
27
32
  const environments = getEnvironmentsFromArgs(client, args);
28
33
 
34
+ const governanceEnvironments = environments.filter(
35
+ (environment) =>
36
+ environment.chainId === moonriver.id ||
37
+ environment.chainId === moonbeam.id,
38
+ );
39
+
40
+ const logId = logger.start("getProposals", "Starting to get proposals...");
41
+
29
42
  const environmentProposals = await Promise.all(
30
- environments.map((environment) =>
31
- Promise.all([
32
- getProposalData({ environment }),
33
- getCrossChainProposalData({ environment }),
34
- getExtendedProposalData({ environment }),
35
- ]),
36
- ),
43
+ governanceEnvironments
44
+ .filter(
45
+ (environment) =>
46
+ environment.chainId === moonriver.id ||
47
+ environment.chainId === moonbeam.id,
48
+ )
49
+ .map((environment) =>
50
+ Promise.all([
51
+ getProposalData({ environment }),
52
+ getCrossChainProposalData({ environment }),
53
+ getExtendedProposalData({ environment }),
54
+ ]),
55
+ ),
37
56
  );
38
57
 
39
- const proposals = environments.flatMap((_item, index: number) => {
58
+ logger.end(logId);
59
+
60
+ const proposals = governanceEnvironments.flatMap((_item, index: number) => {
40
61
  const [_proposals, _xcProposals, _extendedDatas] =
41
62
  environmentProposals[index]!;
42
63
 
@@ -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 { SnapshotProposal } from "../../../types/snapshotProposal.js";
6
7
  import { getSnapshotProposalData } from "./common.js";
7
8
 
8
9
  export type GetSnapshotProposalsParameters<
9
10
  environments,
10
11
  network extends Chain | undefined,
11
- > = NetworkParameterType<environments, network> & {
12
+ > = OptionalNetworkParameterType<environments, network> & {
12
13
  pagination?: {
13
14
  size?: number;
14
15
  page?: number;
@@ -35,9 +36,18 @@ export async function getSnapshotProposals<
35
36
 
36
37
  const environments = getEnvironmentsFromArgs(client, args);
37
38
 
38
- return getSnapshotProposalData({
39
+ const logId = logger.start(
40
+ "getSnapshotProposals",
41
+ "Starting to get snapshot proposals...",
42
+ );
43
+
44
+ const proposals = await getSnapshotProposalData({
39
45
  environments,
40
46
  filters,
41
47
  pagination,
42
48
  });
49
+
50
+ logger.end(logId);
51
+
52
+ return proposals;
43
53
  }
package/actions/index.ts CHANGED
@@ -1,148 +1,159 @@
1
1
  /* Core */
2
2
  export {
3
+ getUserBalances,
4
+ type GetUserBalancesParameters,
5
+ type GetUserBalancesReturnType,
6
+ } from "./core/getUserBalances.js";
7
+ export {
8
+ getMarket,
3
9
  type GetMarketParameters,
4
10
  type GetMarketReturnType,
5
- getMarket,
6
11
  } from "./core/markets/getMarket.js";
7
12
  export {
13
+ getMarkets,
8
14
  type GetMarketsParameters,
9
15
  type GetMarketsReturnType,
10
- getMarkets,
11
16
  } from "./core/markets/getMarkets.js";
12
17
  export {
18
+ getUserPosition,
13
19
  type GetUserPositionParameters,
14
20
  type GetUserPositionReturnType,
15
- getUserPosition,
16
21
  } from "./core/user-positions/getUserPosition.js";
17
22
  export {
23
+ getUserPositions,
18
24
  type GetUserPositionsParameters,
19
25
  type GetUserPositionsReturnType,
20
- getUserPositions,
21
26
  } from "./core/user-positions/getUserPositions.js";
22
27
  export {
28
+ getUserReward,
23
29
  type GetUserRewardParameters,
24
30
  type GetUserRewardReturnType,
25
- getUserReward,
26
31
  } from "./core/user-rewards/getUserReward.js";
27
32
  export {
33
+ getUserRewards,
28
34
  type GetUserRewardsParameters,
29
35
  type GetUserRewardsReturnType,
30
- getUserRewards,
31
36
  } from "./core/user-rewards/getUserRewards.js";
32
- export {
33
- type GetUserBalancesParameters,
34
- type GetUserBalancesReturnType,
35
- getUserBalances,
36
- } from "./core/getUserBalances.js";
37
37
 
38
38
  /* Governance */
39
39
  export {
40
- type GetProposalParameters,
41
- type GetProposalReturnType,
42
- getProposal,
43
- } from "./governance/proposals/getProposal.js";
40
+ getCirculatingSupplySnapshots,
41
+ type GetCirculatingSupplySnapshotsParameters,
42
+ type GetCirculatingSupplySnapshotsReturnType,
43
+ } from "./governance/getCirculatingSupplySnapshots.js";
44
44
  export {
45
- type GetProposalsParameters,
46
- type GetProposalsReturnType,
47
- getProposals,
48
- } from "./governance/proposals/getProposals.js";
49
- export {
50
- type GetSnapshotProposalParameters,
51
- type GetSnapshotProposalReturnType,
52
- getSnapshotProposal,
53
- } from "./governance/snapshot/getSnapshotProposal.js";
54
- export {
55
- type GetSnapshotProposalsParameters,
56
- type GetSnapshotProposalsReturnType,
57
- getSnapshotProposals,
58
- } from "./governance/snapshot/getSnapshotProposals.js";
59
- export {
60
- type GetDelegatesReturnType,
61
45
  getDelegates,
46
+ type GetDelegatesReturnType,
62
47
  } from "./governance/getDelegates.js";
63
48
  export {
64
- type GetDiscussionsReturnType,
65
49
  getDiscussions,
50
+ type GetDiscussionsReturnType,
66
51
  } from "./governance/getDiscussions.js";
67
52
  export {
53
+ getGovernanceTokenInfo,
68
54
  type GetGovernanceTokenInfoParameters,
69
55
  type GetGovernanceTokenInfoReturnType,
70
- getGovernanceTokenInfo,
71
56
  } from "./governance/getGovernanceTokenInfo.js";
72
57
  export {
58
+ getStakingInfo,
73
59
  type GetStakingInfoParameters,
74
60
  type GetStakingInfoReturnType,
75
- getStakingInfo,
76
61
  } from "./governance/getStakingInfo.js";
77
62
  export {
63
+ getStakingSnapshots,
78
64
  type GetStakingSnapshotsParameters,
79
65
  type GetStakingSnapshotsReturnType,
80
- getStakingSnapshots,
81
66
  } from "./governance/getStakingSnapshots.js";
82
67
  export {
68
+ getUserStakingInfo,
83
69
  type GetUserStakingInfoParameters,
84
70
  type GetUserStakingInfoReturnType,
85
- getUserStakingInfo,
86
71
  } from "./governance/getUserStakingInfo.js";
87
72
  export {
73
+ getUserVoteReceipt,
88
74
  type GetUserVoteReceiptParameters,
89
75
  type GetUserVoteReceiptReturnType,
90
- getUserVoteReceipt,
91
76
  } from "./governance/getUserVoteReceipt.js";
92
77
  export {
78
+ getUserVotingPowers,
93
79
  type GetUserVotingPowersParameters,
94
80
  type GetUserVotingPowersReturnType,
95
- getUserVotingPowers,
96
81
  } from "./governance/getUserVotingPowers.js";
82
+ export {
83
+ getProposal,
84
+ type GetProposalParameters,
85
+ type GetProposalReturnType,
86
+ } from "./governance/proposals/getProposal.js";
87
+ export {
88
+ getProposals,
89
+ type GetProposalsParameters,
90
+ type GetProposalsReturnType,
91
+ } from "./governance/proposals/getProposals.js";
92
+ export {
93
+ getSnapshotProposal,
94
+ type GetSnapshotProposalParameters,
95
+ type GetSnapshotProposalReturnType,
96
+ } from "./governance/snapshot/getSnapshotProposal.js";
97
+ export {
98
+ getSnapshotProposals,
99
+ type GetSnapshotProposalsParameters,
100
+ type GetSnapshotProposalsReturnType,
101
+ } from "./governance/snapshot/getSnapshotProposals.js";
97
102
 
98
103
  /* Morpho */
99
104
  export {
105
+ getMorphoUserBalances,
106
+ type GetMorphoUserBalancesParameters,
107
+ type GetMorphoUserBalancesReturnType,
108
+ } from "./morpho/getMorphoUserBalances.js";
109
+ export {
110
+ getMorphoMarket,
100
111
  type GetMorphoMarketParameters,
101
112
  type GetMorphoMarketReturnType,
102
- getMorphoMarket,
103
113
  } from "./morpho/markets/getMorphoMarket.js";
104
114
  export {
115
+ getMorphoMarkets,
105
116
  type GetMorphoMarketsParameters,
106
117
  type GetMorphoMarketsReturnType,
107
- getMorphoMarkets,
108
118
  } from "./morpho/markets/getMorphoMarkets.js";
109
119
  export {
110
- type GetMorphoMarketUserPositionsParameters,
111
- type GetMorphoMarketUserPositionsReturnType,
112
- getMorphoMarketUserPositions,
113
- } from "./morpho/user-positions/getMorphoMarketUserPositions.js";
114
- export {
120
+ getMorphoMarketUserPosition,
115
121
  type GetMorphoMarketUserPositionParameters,
116
122
  type GetMorphoMarketUserPositionReturnType,
117
- getMorphoMarketUserPosition,
118
123
  } from "./morpho/user-positions/getMorphoMarketUserPosition.js";
119
124
  export {
125
+ getMorphoMarketUserPositions,
126
+ type GetMorphoMarketUserPositionsParameters,
127
+ type GetMorphoMarketUserPositionsReturnType,
128
+ } from "./morpho/user-positions/getMorphoMarketUserPositions.js";
129
+ export {
130
+ getMorphoVaultUserPosition,
120
131
  type GetMorphoVaultUserPositionParameters,
121
132
  type GetMorphoVaultUserPositionReturnType,
122
- getMorphoVaultUserPosition,
123
133
  } from "./morpho/user-positions/getMorphoVaultUserPosition.js";
124
134
  export {
135
+ getMorphoVaultUserPositions,
125
136
  type GetMorphoVaultUserPositionsParameters,
126
137
  type GetMorphoVaultUserPositionsReturnType,
127
- getMorphoVaultUserPositions,
128
138
  } from "./morpho/user-positions/getMorphoVaultUserPositions.js";
129
139
  export {
140
+ getMorphoUserRewards,
130
141
  type GetMorphoUserRewardsParameters,
131
142
  type GetMorphoUserRewardsReturnType,
132
- getMorphoUserRewards,
133
143
  } from "./morpho/user-rewards/getMorphoUserRewards.js";
134
144
  export {
145
+ getMorphoVault,
135
146
  type GetMorphoVaultParameters,
136
147
  type GetMorphoVaultReturnType,
137
- getMorphoVault,
138
148
  } from "./morpho/vaults/getMorphoVault.js";
139
149
  export {
150
+ getMorphoVaults,
140
151
  type GetMorphoVaultsParameters,
141
152
  type GetMorphoVaultsReturnType,
142
- getMorphoVaults,
143
153
  } from "./morpho/vaults/getMorphoVaults.js";
154
+
144
155
  export {
145
- type GetMorphoUserBalancesParameters,
146
- type GetMorphoUserBalancesReturnType,
147
- getMorphoUserBalances,
148
- } from "./morpho/getMorphoUserBalances.js";
156
+ getMarketSnapshots,
157
+ type GetMarketSnapshotsParameters,
158
+ type GetMarketSnapshotsReturnType,
159
+ } from "./core/markets/getMarketSnapshots.js";
@@ -1,7 +1,7 @@
1
1
  import type { Address } from "viem";
2
2
  import type { MoonwellClient } from "../../client/createMoonwellClient.js";
3
3
  import { Amount, 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 { findTokenByAddress } from "../../environments/utils/index.js";
7
7
  import type { UserBalance } from "../../types/userBalance.js";
@@ -9,7 +9,7 @@ import type { UserBalance } from "../../types/userBalance.js";
9
9
  export type GetMorphoUserBalancesParameters<
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
 
@@ -45,6 +45,12 @@ export async function getMorphoMarketsData(params: {
45
45
  const environmentMarketsInfo = environmentsMarketsInfo[environmentIndex]!;
46
46
 
47
47
  const markets = environmentMarketsInfo.map((marketInfo) => {
48
+ const marketKey = Object.keys(environment.config.morphoMarkets).find(
49
+ (item) =>
50
+ environment.config.morphoMarkets[item].id.toLowerCase() ===
51
+ marketInfo.marketId.toLowerCase(),
52
+ )!;
53
+
48
54
  const marketConfig = Object.values(
49
55
  environment.config.morphoMarkets,
50
56
  ).find(
@@ -55,7 +61,7 @@ export async function getMorphoMarketsData(params: {
55
61
  environment.config.tokens[marketConfig.collateralToken];
56
62
 
57
63
  const oraclePrice = new Amount(
58
- marketInfo.oraclePrice,
64
+ BigInt(marketInfo.oraclePrice),
59
65
  36 + loanToken.decimals - collateralToken.decimals,
60
66
  ).value;
61
67
 
@@ -67,12 +73,12 @@ export async function getMorphoMarketsData(params: {
67
73
  const loanToValue = new Amount(marketInfo.lltv, 18).value;
68
74
 
69
75
  const totalSupplyInLoanToken = new Amount(
70
- marketInfo.totalSupplyAssets,
76
+ BigInt(marketInfo.totalSupplyAssets),
71
77
  loanToken.decimals,
72
78
  );
73
79
 
74
80
  const totalSupply = new Amount(
75
- totalSupplyInLoanToken.value / oraclePrice,
81
+ Number(totalSupplyInLoanToken.value / oraclePrice),
76
82
  collateralToken.decimals,
77
83
  );
78
84
  const totalBorrows = new Amount(
@@ -87,6 +93,7 @@ export async function getMorphoMarketsData(params: {
87
93
  const mapping: MorphoMarket = {
88
94
  chainId: environment.chainId,
89
95
  marketId: marketInfo.marketId,
96
+ marketKey,
90
97
  deprecated: marketConfig.deprecated === true,
91
98
  loanToValue,
92
99
  performanceFee,
@@ -103,11 +110,13 @@ export async function getMorphoMarketsData(params: {
103
110
  totalBorrowApr: borrowApy,
104
111
  baseSupplyApy: 0, //supplyApy,
105
112
  totalSupplyApr: 0, //supplyApy,
113
+ rewardsSupplyApy: 0,
114
+ rewardsBorrowApy: 0,
106
115
  availableLiquidity: new Amount(0, collateralToken.decimals),
107
116
  availableLiquidityUsd: 0,
108
117
  marketParams: {
109
- loanToken: loanToken.address,
110
- collateralToken: collateralToken.address,
118
+ loanToken: marketInfo.loanToken,
119
+ collateralToken: marketInfo.collateralToken,
111
120
  irm: marketInfo.irm,
112
121
  lltv: marketInfo.lltv,
113
122
  oracle: marketInfo.oracle,
@@ -147,12 +156,19 @@ export async function getMorphoMarketsData(params: {
147
156
  market.loanTokenPrice;
148
157
  }
149
158
 
150
- market.totalSupplyApr =
151
- market.rewards.reduce((acc, curr) => acc + curr.supplyApr, 0) +
152
- market.baseSupplyApy;
153
- market.totalBorrowApr =
154
- market.rewards.reduce((acc, curr) => acc + curr.borrowApr, 0) +
155
- market.baseBorrowApy;
159
+ market.rewardsSupplyApy = market.rewards.reduce(
160
+ (acc, curr) => acc + curr.supplyApr,
161
+ 0,
162
+ );
163
+
164
+ market.rewardsBorrowApy = market.rewards.reduce(
165
+ (acc, curr) => acc + curr.borrowApr,
166
+ 0,
167
+ );
168
+
169
+ market.totalSupplyApr = market.rewardsSupplyApy + market.baseSupplyApy;
170
+
171
+ market.totalBorrowApr = market.rewardsBorrowApy + market.baseBorrowApy;
156
172
  });
157
173
  }
158
174
 
@@ -173,6 +189,10 @@ type GetMorphoMarketsRewardsReturnType = {
173
189
  async function getMorphoMarketRewards(
174
190
  markets: MorphoMarket[],
175
191
  ): Promise<GetMorphoMarketsRewardsReturnType[]> {
192
+ if (markets.length === 0) {
193
+ return [];
194
+ }
195
+
176
196
  const query = `
177
197
  {
178
198
  markets(where: { uniqueKey_in: [${markets.map((market) => `"${market.marketId.toLowerCase()}"`).join(",")}], chainId_in: [${markets.map((market) => market.chainId).join(",")}] })
@@ -329,14 +349,15 @@ async function getMorphoMarketRewards(
329
349
  const borrowTokenAmountPer1000 =
330
350
  (Number.parseFloat(reward.amountPerBorrowedToken) /
331
351
  item.loanAsset.priceUsd) *
332
- 1000 || 0;
352
+ 1000;
353
+
333
354
  const borrowAmount = borrowTokenAmountPer1000 / tokenDecimals;
334
355
  return {
335
356
  marketId: item.uniqueKey,
336
357
  asset: reward.asset,
337
358
  supplyApr: 0, //(reward.supplyApr || 0) * 100,
338
359
  supplyAmount: 0, //amount,
339
- borrowApr: (reward.borrowApr || 0) * 100,
360
+ borrowApr: (reward.borrowApr || 0) * 100 * -1,
340
361
  borrowAmount: borrowAmount,
341
362
  };
342
363
  }),
@@ -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 { MorphoMarket } from "../../../types/morphoMarket.js";
6
7
  import { getMorphoMarketsData } from "./common.js";
7
8
 
8
9
  export type GetMorphoMarketsParameters<
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
 
@@ -23,8 +24,17 @@ export async function getMorphoMarkets<
23
24
  ): GetMorphoMarketsReturnType {
24
25
  const environments = getEnvironmentsFromArgs(client, args);
25
26
 
26
- return getMorphoMarketsData({
27
+ const logId = logger.start(
28
+ "getMorphoMarkets",
29
+ "Starting to get morpho markets...",
30
+ );
31
+
32
+ const result = await getMorphoMarketsData({
27
33
  environments: environments,
28
34
  includeRewards: args?.includeRewards,
29
35
  });
36
+
37
+ logger.end(logId);
38
+
39
+ return result;
30
40
  }
@@ -72,6 +72,7 @@ export async function getMorphoMarketUserPositionsData(params: {
72
72
  const position = userMarketPositions[index];
73
73
 
74
74
  const loanToken = params.environment.config.tokens[market.loanToken];
75
+
75
76
  const collateralToken =
76
77
  params.environment.config.tokens[market.collateralToken];
77
78
 
@@ -79,7 +80,9 @@ export async function getMorphoMarketUserPositionsData(params: {
79
80
  position.collateralAssets,
80
81
  collateralToken.decimals,
81
82
  );
83
+
82
84
  const borrowed = new Amount(position.loanAssets, loanToken.decimals);
85
+
83
86
  const borrowedShares = new Amount(
84
87
  position.loanShares,
85
88
  loanToken.decimals + 6,
@@ -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 { MorphoMarketUserPosition } from "../../../types/morphoUserPosition.js";
7
7
  import { getMorphoMarketUserPositionsData } from "./common.js";
@@ -9,7 +9,7 @@ import { getMorphoMarketUserPositionsData } from "./common.js";
9
9
  export type GetMorphoMarketUserPositionsParameters<
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
 
@@ -27,12 +27,14 @@ export async function getMorphoMarketUserPositions<
27
27
  const environments = getEnvironmentsFromArgs(client, args);
28
28
 
29
29
  const environmentsUserPositions = await Promise.all(
30
- environments.map((environment) => {
31
- return getMorphoMarketUserPositionsData({
32
- environment,
33
- account: args.userAddress,
34
- });
35
- }),
30
+ environments
31
+ .filter((environment) => environment.contracts.morphoViews !== undefined)
32
+ .map((environment) => {
33
+ return getMorphoMarketUserPositionsData({
34
+ environment,
35
+ account: args.userAddress,
36
+ });
37
+ }),
36
38
  );
37
39
 
38
40
  return environmentsUserPositions.flat();
@@ -1,14 +1,14 @@
1
1
  import type { Address, Chain } 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 { MorphoVaultUserPosition } from "../../../types/morphoUserPosition.js";
6
6
  import { getMorphoVaultUserPositionsData } from "./common.js";
7
7
 
8
8
  export type GetMorphoVaultUserPositionsParameters<
9
9
  environments,
10
10
  network extends Chain | undefined,
11
- > = NetworkParameterType<environments, network> & {
11
+ > = OptionalNetworkParameterType<environments, network> & {
12
12
  userAddress: Address;
13
13
  };
14
14
 
@@ -26,12 +26,14 @@ export async function getMorphoVaultUserPositions<
26
26
  const environments = getEnvironmentsFromArgs(client, args);
27
27
 
28
28
  const environmentsUserPositions = await Promise.all(
29
- environments.map((environment) => {
30
- return getMorphoVaultUserPositionsData({
31
- environment,
32
- account: args.userAddress,
33
- });
34
- }),
29
+ environments
30
+ .filter((environment) => environment.contracts.morphoViews !== undefined)
31
+ .map((environment) => {
32
+ return getMorphoVaultUserPositionsData({
33
+ environment,
34
+ account: args.userAddress,
35
+ });
36
+ }),
35
37
  );
36
38
 
37
39
  return environmentsUserPositions.flat();