@eulerxyz/euler-v2-sdk 0.1.0-beta

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 (399) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +115 -0
  3. package/dist/src/entities/Account.d.ts +242 -0
  4. package/dist/src/entities/Account.js +509 -0
  5. package/dist/src/entities/Account.js.map +1 -0
  6. package/dist/src/entities/ERC4626Vault.d.ts +56 -0
  7. package/dist/src/entities/ERC4626Vault.js +94 -0
  8. package/dist/src/entities/ERC4626Vault.js.map +1 -0
  9. package/dist/src/entities/EVault.d.ts +159 -0
  10. package/dist/src/entities/EVault.js +224 -0
  11. package/dist/src/entities/EVault.js.map +1 -0
  12. package/dist/src/entities/EulerEarn.d.ts +69 -0
  13. package/dist/src/entities/EulerEarn.js +89 -0
  14. package/dist/src/entities/EulerEarn.js.map +1 -0
  15. package/dist/src/entities/EulerLabels.d.ts +53 -0
  16. package/dist/src/entities/EulerLabels.js +2 -0
  17. package/dist/src/entities/EulerLabels.js.map +1 -0
  18. package/dist/src/entities/SecuritizeCollateralVault.d.ts +16 -0
  19. package/dist/src/entities/SecuritizeCollateralVault.js +22 -0
  20. package/dist/src/entities/SecuritizeCollateralVault.js.map +1 -0
  21. package/dist/src/entities/Wallet.d.ts +27 -0
  22. package/dist/src/entities/Wallet.js +21 -0
  23. package/dist/src/entities/Wallet.js.map +1 -0
  24. package/dist/src/index.d.ts +43 -0
  25. package/dist/src/index.js +46 -0
  26. package/dist/src/index.js.map +1 -0
  27. package/dist/src/plugins/batchSimulation.d.ts +34 -0
  28. package/dist/src/plugins/batchSimulation.js +83 -0
  29. package/dist/src/plugins/batchSimulation.js.map +1 -0
  30. package/dist/src/plugins/index.d.ts +4 -0
  31. package/dist/src/plugins/index.js +5 -0
  32. package/dist/src/plugins/index.js.map +1 -0
  33. package/dist/src/plugins/keyring/index.d.ts +1 -0
  34. package/dist/src/plugins/keyring/index.js +2 -0
  35. package/dist/src/plugins/keyring/index.js.map +1 -0
  36. package/dist/src/plugins/keyring/keyringPlugin.d.ts +41 -0
  37. package/dist/src/plugins/keyring/keyringPlugin.js +182 -0
  38. package/dist/src/plugins/keyring/keyringPlugin.js.map +1 -0
  39. package/dist/src/plugins/pyth/index.d.ts +1 -0
  40. package/dist/src/plugins/pyth/index.js +2 -0
  41. package/dist/src/plugins/pyth/index.js.map +1 -0
  42. package/dist/src/plugins/pyth/pythPlugin.d.ts +29 -0
  43. package/dist/src/plugins/pyth/pythPlugin.js +190 -0
  44. package/dist/src/plugins/pyth/pythPlugin.js.map +1 -0
  45. package/dist/src/plugins/types.d.ts +39 -0
  46. package/dist/src/plugins/types.js +16 -0
  47. package/dist/src/plugins/types.js.map +1 -0
  48. package/dist/src/sdk/buildSDK.d.ts +77 -0
  49. package/dist/src/sdk/buildSDK.js +366 -0
  50. package/dist/src/sdk/buildSDK.js.map +1 -0
  51. package/dist/src/sdk/defaultConfig.d.ts +26 -0
  52. package/dist/src/sdk/defaultConfig.js +68 -0
  53. package/dist/src/sdk/defaultConfig.js.map +1 -0
  54. package/dist/src/sdk/sdk.d.ts +73 -0
  55. package/dist/src/sdk/sdk.js +67 -0
  56. package/dist/src/sdk/sdk.js.map +1 -0
  57. package/dist/src/services/abiService/abiService.d.ts +13 -0
  58. package/dist/src/services/abiService/abiService.js +25 -0
  59. package/dist/src/services/abiService/abiService.js.map +1 -0
  60. package/dist/src/services/abiService/index.d.ts +2 -0
  61. package/dist/src/services/abiService/index.js +2 -0
  62. package/dist/src/services/abiService/index.js.map +1 -0
  63. package/dist/src/services/accountService/accountService.d.ts +44 -0
  64. package/dist/src/services/accountService/accountService.js +193 -0
  65. package/dist/src/services/accountService/accountService.js.map +1 -0
  66. package/dist/src/services/accountService/accountServiceConfig.d.ts +15 -0
  67. package/dist/src/services/accountService/accountServiceConfig.js +2 -0
  68. package/dist/src/services/accountService/accountServiceConfig.js.map +1 -0
  69. package/dist/src/services/accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.d.ts +960 -0
  70. package/dist/src/services/accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.js +1230 -0
  71. package/dist/src/services/accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.js.map +1 -0
  72. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.d.ts +17 -0
  73. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js +158 -0
  74. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js.map +1 -0
  75. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.d.ts +48 -0
  76. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.js +2 -0
  77. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.js.map +1 -0
  78. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.d.ts +210 -0
  79. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js +287 -0
  80. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js.map +1 -0
  81. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountVaultsSubgraphAdapter.d.ts +22 -0
  82. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountVaultsSubgraphAdapter.js +80 -0
  83. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountVaultsSubgraphAdapter.js.map +1 -0
  84. package/dist/src/services/accountService/adapters/accountOutputNormalization.d.ts +8 -0
  85. package/dist/src/services/accountService/adapters/accountOutputNormalization.js +50 -0
  86. package/dist/src/services/accountService/adapters/accountOutputNormalization.js.map +1 -0
  87. package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.d.ts +62 -0
  88. package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.js +287 -0
  89. package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.js.map +1 -0
  90. package/dist/src/services/accountService/adapters/accountVaultsSubgraphAdapter/accountVaultsSubgraphAdapter.d.ts +1 -0
  91. package/dist/src/services/accountService/adapters/accountVaultsSubgraphAdapter/accountVaultsSubgraphAdapter.js +2 -0
  92. package/dist/src/services/accountService/adapters/accountVaultsSubgraphAdapter/accountVaultsSubgraphAdapter.js.map +1 -0
  93. package/dist/src/services/accountService/index.d.ts +5 -0
  94. package/dist/src/services/accountService/index.js +4 -0
  95. package/dist/src/services/accountService/index.js.map +1 -0
  96. package/dist/src/services/deploymentService/deploymentService.d.ts +116 -0
  97. package/dist/src/services/deploymentService/deploymentService.js +44 -0
  98. package/dist/src/services/deploymentService/deploymentService.js.map +1 -0
  99. package/dist/src/services/deploymentService/index.d.ts +2 -0
  100. package/dist/src/services/deploymentService/index.js +2 -0
  101. package/dist/src/services/deploymentService/index.js.map +1 -0
  102. package/dist/src/services/eulerLabelsService/eulerLabelsService.d.ts +54 -0
  103. package/dist/src/services/eulerLabelsService/eulerLabelsService.js +178 -0
  104. package/dist/src/services/eulerLabelsService/eulerLabelsService.js.map +1 -0
  105. package/dist/src/services/eulerLabelsService/index.d.ts +2 -0
  106. package/dist/src/services/eulerLabelsService/index.js +2 -0
  107. package/dist/src/services/eulerLabelsService/index.js.map +1 -0
  108. package/dist/src/services/executionService/abis/eVaultAbi.d.ts +1948 -0
  109. package/dist/src/services/executionService/abis/eVaultAbi.js +2517 -0
  110. package/dist/src/services/executionService/abis/eVaultAbi.js.map +1 -0
  111. package/dist/src/services/executionService/abis/ethereumVaultConnectorAbi.d.ts +1070 -0
  112. package/dist/src/services/executionService/abis/ethereumVaultConnectorAbi.js +1387 -0
  113. package/dist/src/services/executionService/abis/ethereumVaultConnectorAbi.js.map +1 -0
  114. package/dist/src/services/executionService/abis/permit2PermitAbi.d.ts +52 -0
  115. package/dist/src/services/executionService/abis/permit2PermitAbi.js +36 -0
  116. package/dist/src/services/executionService/abis/permit2PermitAbi.js.map +1 -0
  117. package/dist/src/services/executionService/abis/swapVerifierAbi.d.ts +139 -0
  118. package/dist/src/services/executionService/abis/swapVerifierAbi.js +70 -0
  119. package/dist/src/services/executionService/abis/swapVerifierAbi.js.map +1 -0
  120. package/dist/src/services/executionService/abis/swapperAbi.d.ts +270 -0
  121. package/dist/src/services/executionService/abis/swapperAbi.js +152 -0
  122. package/dist/src/services/executionService/abis/swapperAbi.js.map +1 -0
  123. package/dist/src/services/executionService/executionService.d.ts +619 -0
  124. package/dist/src/services/executionService/executionService.js +2037 -0
  125. package/dist/src/services/executionService/executionService.js.map +1 -0
  126. package/dist/src/services/executionService/executionServiceTypes.d.ts +423 -0
  127. package/dist/src/services/executionService/executionServiceTypes.js +14 -0
  128. package/dist/src/services/executionService/executionServiceTypes.js.map +1 -0
  129. package/dist/src/services/executionService/index.d.ts +7 -0
  130. package/dist/src/services/executionService/index.js +7 -0
  131. package/dist/src/services/executionService/index.js.map +1 -0
  132. package/dist/src/services/feeFlowService/feeFlowService.d.ts +22 -0
  133. package/dist/src/services/feeFlowService/feeFlowService.js +239 -0
  134. package/dist/src/services/feeFlowService/feeFlowService.js.map +1 -0
  135. package/dist/src/services/feeFlowService/feeFlowServiceTypes.d.ts +42 -0
  136. package/dist/src/services/feeFlowService/feeFlowServiceTypes.js +2 -0
  137. package/dist/src/services/feeFlowService/feeFlowServiceTypes.js.map +1 -0
  138. package/dist/src/services/feeFlowService/index.d.ts +2 -0
  139. package/dist/src/services/feeFlowService/index.js +2 -0
  140. package/dist/src/services/feeFlowService/index.js.map +1 -0
  141. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.d.ts +2 -0
  142. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.js +2 -0
  143. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.js.map +1 -0
  144. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.d.ts +21 -0
  145. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.js +125 -0
  146. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.js.map +1 -0
  147. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.d.ts +30 -0
  148. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.js +2 -0
  149. package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.js.map +1 -0
  150. package/dist/src/services/intrinsicApyService/index.d.ts +4 -0
  151. package/dist/src/services/intrinsicApyService/index.js +3 -0
  152. package/dist/src/services/intrinsicApyService/index.js.map +1 -0
  153. package/dist/src/services/intrinsicApyService/intrinsicApyService.d.ts +28 -0
  154. package/dist/src/services/intrinsicApyService/intrinsicApyService.js +42 -0
  155. package/dist/src/services/intrinsicApyService/intrinsicApyService.js.map +1 -0
  156. package/dist/src/services/oracleAdapterService/index.d.ts +1 -0
  157. package/dist/src/services/oracleAdapterService/index.js +2 -0
  158. package/dist/src/services/oracleAdapterService/index.js.map +1 -0
  159. package/dist/src/services/oracleAdapterService/oracleAdapterService.d.ts +40 -0
  160. package/dist/src/services/oracleAdapterService/oracleAdapterService.js +65 -0
  161. package/dist/src/services/oracleAdapterService/oracleAdapterService.js.map +1 -0
  162. package/dist/src/services/priceService/backendClient.d.ts +70 -0
  163. package/dist/src/services/priceService/backendClient.js +108 -0
  164. package/dist/src/services/priceService/backendClient.js.map +1 -0
  165. package/dist/src/services/priceService/index.d.ts +2 -0
  166. package/dist/src/services/priceService/index.js +3 -0
  167. package/dist/src/services/priceService/index.js.map +1 -0
  168. package/dist/src/services/priceService/priceService.d.ts +133 -0
  169. package/dist/src/services/priceService/priceService.js +499 -0
  170. package/dist/src/services/priceService/priceService.js.map +1 -0
  171. package/dist/src/services/priceService/utilsLensPriceAbi.d.ts +60 -0
  172. package/dist/src/services/priceService/utilsLensPriceAbi.js +31 -0
  173. package/dist/src/services/priceService/utilsLensPriceAbi.js.map +1 -0
  174. package/dist/src/services/providerService/index.d.ts +2 -0
  175. package/dist/src/services/providerService/index.js +2 -0
  176. package/dist/src/services/providerService/index.js.map +1 -0
  177. package/dist/src/services/providerService/providerService.d.ts +11 -0
  178. package/dist/src/services/providerService/providerService.js +61 -0
  179. package/dist/src/services/providerService/providerService.js.map +1 -0
  180. package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/index.d.ts +2 -0
  181. package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/index.js +2 -0
  182. package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/index.js.map +1 -0
  183. package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.d.ts +48 -0
  184. package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js +391 -0
  185. package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js.map +1 -0
  186. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/index.d.ts +2 -0
  187. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/index.js +2 -0
  188. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/index.js.map +1 -0
  189. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.d.ts +23 -0
  190. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js +296 -0
  191. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js.map +1 -0
  192. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.d.ts +110 -0
  193. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.js +2 -0
  194. package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.js.map +1 -0
  195. package/dist/src/services/rewardsService/index.d.ts +5 -0
  196. package/dist/src/services/rewardsService/index.js +4 -0
  197. package/dist/src/services/rewardsService/index.js.map +1 -0
  198. package/dist/src/services/rewardsService/rewardsService.d.ts +34 -0
  199. package/dist/src/services/rewardsService/rewardsService.js +298 -0
  200. package/dist/src/services/rewardsService/rewardsService.js.map +1 -0
  201. package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts +270 -0
  202. package/dist/src/services/rewardsService/rewardsServiceTypes.js +2 -0
  203. package/dist/src/services/rewardsService/rewardsServiceTypes.js.map +1 -0
  204. package/dist/src/services/simulationService/index.d.ts +2 -0
  205. package/dist/src/services/simulationService/index.js +2 -0
  206. package/dist/src/services/simulationService/index.js.map +1 -0
  207. package/dist/src/services/simulationService/simulationService.d.ts +88 -0
  208. package/dist/src/services/simulationService/simulationService.js +497 -0
  209. package/dist/src/services/simulationService/simulationService.js.map +1 -0
  210. package/dist/src/services/swapService/index.d.ts +3 -0
  211. package/dist/src/services/swapService/index.js +3 -0
  212. package/dist/src/services/swapService/index.js.map +1 -0
  213. package/dist/src/services/swapService/swapService.d.ts +121 -0
  214. package/dist/src/services/swapService/swapService.js +329 -0
  215. package/dist/src/services/swapService/swapService.js.map +1 -0
  216. package/dist/src/services/swapService/swapServiceTypes.d.ts +130 -0
  217. package/dist/src/services/swapService/swapServiceTypes.js +16 -0
  218. package/dist/src/services/swapService/swapServiceTypes.js.map +1 -0
  219. package/dist/src/services/swapService/swapVerifierAbi.d.ts +139 -0
  220. package/dist/src/services/swapService/swapVerifierAbi.js +178 -0
  221. package/dist/src/services/swapService/swapVerifierAbi.js.map +1 -0
  222. package/dist/src/services/tokenlistService/index.d.ts +3 -0
  223. package/dist/src/services/tokenlistService/index.js +2 -0
  224. package/dist/src/services/tokenlistService/index.js.map +1 -0
  225. package/dist/src/services/tokenlistService/tokenlistService.d.ts +31 -0
  226. package/dist/src/services/tokenlistService/tokenlistService.js +56 -0
  227. package/dist/src/services/tokenlistService/tokenlistService.js.map +1 -0
  228. package/dist/src/services/tokenlistService/tokenlistServiceTypes.d.ts +33 -0
  229. package/dist/src/services/tokenlistService/tokenlistServiceTypes.js +2 -0
  230. package/dist/src/services/tokenlistService/tokenlistServiceTypes.js.map +1 -0
  231. package/dist/src/services/vaults/IVaultService.d.ts +47 -0
  232. package/dist/src/services/vaults/IVaultService.js +2 -0
  233. package/dist/src/services/vaults/IVaultService.js.map +1 -0
  234. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/abis/vaultLensAbi.d.ts +1280 -0
  235. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/abis/vaultLensAbi.js +1640 -0
  236. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/abis/vaultLensAbi.js.map +1 -0
  237. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultLensTypes.d.ts +97 -0
  238. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultLensTypes.js +9 -0
  239. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultLensTypes.js.map +1 -0
  240. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.d.ts +141 -0
  241. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js +189 -0
  242. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js.map +1 -0
  243. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.d.ts +10 -0
  244. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js +454 -0
  245. package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js.map +1 -0
  246. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.d.ts +25 -0
  247. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js +214 -0
  248. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js.map +1 -0
  249. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.d.ts +5 -0
  250. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js +795 -0
  251. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js.map +1 -0
  252. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.d.ts +146 -0
  253. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.js +2 -0
  254. package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.js.map +1 -0
  255. package/dist/src/services/vaults/eVaultService/eVaultService.d.ts +74 -0
  256. package/dist/src/services/vaults/eVaultService/eVaultService.js +362 -0
  257. package/dist/src/services/vaults/eVaultService/eVaultService.js.map +1 -0
  258. package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.d.ts +15 -0
  259. package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.js +2 -0
  260. package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.js.map +1 -0
  261. package/dist/src/services/vaults/eVaultService/index.d.ts +5 -0
  262. package/dist/src/services/vaults/eVaultService/index.js +4 -0
  263. package/dist/src/services/vaults/eVaultService/index.js.map +1 -0
  264. package/dist/src/services/vaults/eulerEarnService/adapters/abis/eulerEarnVaultLensAbi.d.ts +468 -0
  265. package/dist/src/services/vaults/eulerEarnService/adapters/abis/eulerEarnVaultLensAbi.js +600 -0
  266. package/dist/src/services/vaults/eulerEarnService/adapters/abis/eulerEarnVaultLensAbi.js.map +1 -0
  267. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.d.ts +10 -0
  268. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.js +151 -0
  269. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.js.map +1 -0
  270. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnLensTypes.d.ts +55 -0
  271. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnLensTypes.js +2 -0
  272. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnLensTypes.js.map +1 -0
  273. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.d.ts +109 -0
  274. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js +238 -0
  275. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js.map +1 -0
  276. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.d.ts +100 -0
  277. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.js +373 -0
  278. package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.js.map +1 -0
  279. package/dist/src/services/vaults/eulerEarnService/eulerEarnService.d.ts +77 -0
  280. package/dist/src/services/vaults/eulerEarnService/eulerEarnService.js +298 -0
  281. package/dist/src/services/vaults/eulerEarnService/eulerEarnService.js.map +1 -0
  282. package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.d.ts +13 -0
  283. package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.js +2 -0
  284. package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.js.map +1 -0
  285. package/dist/src/services/vaults/eulerEarnService/index.d.ts +5 -0
  286. package/dist/src/services/vaults/eulerEarnService/index.js +4 -0
  287. package/dist/src/services/vaults/eulerEarnService/index.js.map +1 -0
  288. package/dist/src/services/vaults/index.d.ts +1 -0
  289. package/dist/src/services/vaults/index.js +2 -0
  290. package/dist/src/services/vaults/index.js.map +1 -0
  291. package/dist/src/services/vaults/securitizeVaultService/adapters/abis/erc4626EvcCollateralSecuritizeAbi.d.ts +22 -0
  292. package/dist/src/services/vaults/securitizeVaultService/adapters/abis/erc4626EvcCollateralSecuritizeAbi.js +18 -0
  293. package/dist/src/services/vaults/securitizeVaultService/adapters/abis/erc4626EvcCollateralSecuritizeAbi.js.map +1 -0
  294. package/dist/src/services/vaults/securitizeVaultService/adapters/abis/utilsLensAbi.d.ts +64 -0
  295. package/dist/src/services/vaults/securitizeVaultService/adapters/abis/utilsLensAbi.js +30 -0
  296. package/dist/src/services/vaults/securitizeVaultService/adapters/abis/utilsLensAbi.js.map +1 -0
  297. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.d.ts +4 -0
  298. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.js +53 -0
  299. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.js.map +1 -0
  300. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultLensTypes.d.ts +16 -0
  301. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultLensTypes.js +2 -0
  302. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultLensTypes.js.map +1 -0
  303. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.d.ts +37 -0
  304. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.js +113 -0
  305. package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.js.map +1 -0
  306. package/dist/src/services/vaults/securitizeVaultService/index.d.ts +2 -0
  307. package/dist/src/services/vaults/securitizeVaultService/index.js +3 -0
  308. package/dist/src/services/vaults/securitizeVaultService/index.js.map +1 -0
  309. package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.d.ts +52 -0
  310. package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.js +190 -0
  311. package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.js.map +1 -0
  312. package/dist/src/services/vaults/vaultMetaService/adapters/IVaultTypeAdapter.d.ts +29 -0
  313. package/dist/src/services/vaults/vaultMetaService/adapters/IVaultTypeAdapter.js +2 -0
  314. package/dist/src/services/vaults/vaultMetaService/adapters/IVaultTypeAdapter.js.map +1 -0
  315. package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeSubgraphAdapter.d.ts +18 -0
  316. package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeSubgraphAdapter.js +82 -0
  317. package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeSubgraphAdapter.js.map +1 -0
  318. package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.d.ts +35 -0
  319. package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.js +154 -0
  320. package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.js.map +1 -0
  321. package/dist/src/services/vaults/vaultMetaService/index.d.ts +4 -0
  322. package/dist/src/services/vaults/vaultMetaService/index.js +4 -0
  323. package/dist/src/services/vaults/vaultMetaService/index.js.map +1 -0
  324. package/dist/src/services/vaults/vaultMetaService/vaultMetaService.d.ts +71 -0
  325. package/dist/src/services/vaults/vaultMetaService/vaultMetaService.js +283 -0
  326. package/dist/src/services/vaults/vaultMetaService/vaultMetaService.js.map +1 -0
  327. package/dist/src/services/walletService/adapters/walletOnchainAdapter.d.ts +20 -0
  328. package/dist/src/services/walletService/adapters/walletOnchainAdapter.js +222 -0
  329. package/dist/src/services/walletService/adapters/walletOnchainAdapter.js.map +1 -0
  330. package/dist/src/services/walletService/index.d.ts +3 -0
  331. package/dist/src/services/walletService/index.js +2 -0
  332. package/dist/src/services/walletService/index.js.map +1 -0
  333. package/dist/src/services/walletService/walletService.d.ts +19 -0
  334. package/dist/src/services/walletService/walletService.js +37 -0
  335. package/dist/src/services/walletService/walletService.js.map +1 -0
  336. package/dist/src/utils/accountComputations.d.ts +96 -0
  337. package/dist/src/utils/accountComputations.js +297 -0
  338. package/dist/src/utils/accountComputations.js.map +1 -0
  339. package/dist/src/utils/batch.d.ts +2 -0
  340. package/dist/src/utils/batch.js +51 -0
  341. package/dist/src/utils/batch.js.map +1 -0
  342. package/dist/src/utils/buildQuery.d.ts +19 -0
  343. package/dist/src/utils/buildQuery.js +72 -0
  344. package/dist/src/utils/buildQuery.js.map +1 -0
  345. package/dist/src/utils/callBundler.d.ts +32 -0
  346. package/dist/src/utils/callBundler.js +93 -0
  347. package/dist/src/utils/callBundler.js.map +1 -0
  348. package/dist/src/utils/decodeSmartContractErrors.d.ts +13 -0
  349. package/dist/src/utils/decodeSmartContractErrors.js +311 -0
  350. package/dist/src/utils/decodeSmartContractErrors.js.map +1 -0
  351. package/dist/src/utils/entityDiagnostics.d.ts +28 -0
  352. package/dist/src/utils/entityDiagnostics.js +72 -0
  353. package/dist/src/utils/entityDiagnostics.js.map +1 -0
  354. package/dist/src/utils/eulerErrorSelectors.d.ts +226 -0
  355. package/dist/src/utils/eulerErrorSelectors.js +227 -0
  356. package/dist/src/utils/eulerErrorSelectors.js.map +1 -0
  357. package/dist/src/utils/irm.d.ts +60 -0
  358. package/dist/src/utils/irm.js +213 -0
  359. package/dist/src/utils/irm.js.map +1 -0
  360. package/dist/src/utils/normalization.d.ts +30 -0
  361. package/dist/src/utils/normalization.js +79 -0
  362. package/dist/src/utils/normalization.js.map +1 -0
  363. package/dist/src/utils/oracle.d.ts +107 -0
  364. package/dist/src/utils/oracle.js +437 -0
  365. package/dist/src/utils/oracle.js.map +1 -0
  366. package/dist/src/utils/parsing.d.ts +29 -0
  367. package/dist/src/utils/parsing.js +199 -0
  368. package/dist/src/utils/parsing.js.map +1 -0
  369. package/dist/src/utils/queryNames.d.ts +28 -0
  370. package/dist/src/utils/queryNames.js +2 -0
  371. package/dist/src/utils/queryNames.js.map +1 -0
  372. package/dist/src/utils/stateOverrides/accessList.d.ts +14 -0
  373. package/dist/src/utils/stateOverrides/accessList.js +24 -0
  374. package/dist/src/utils/stateOverrides/accessList.js.map +1 -0
  375. package/dist/src/utils/stateOverrides/approvalOverrides.d.ts +20 -0
  376. package/dist/src/utils/stateOverrides/approvalOverrides.js +111 -0
  377. package/dist/src/utils/stateOverrides/approvalOverrides.js.map +1 -0
  378. package/dist/src/utils/stateOverrides/balanceOverrides.d.ts +13 -0
  379. package/dist/src/utils/stateOverrides/balanceOverrides.js +145 -0
  380. package/dist/src/utils/stateOverrides/balanceOverrides.js.map +1 -0
  381. package/dist/src/utils/stateOverrides/getStateOverrides.d.ts +31 -0
  382. package/dist/src/utils/stateOverrides/getStateOverrides.js +86 -0
  383. package/dist/src/utils/stateOverrides/getStateOverrides.js.map +1 -0
  384. package/dist/src/utils/stateOverrides/index.d.ts +4 -0
  385. package/dist/src/utils/stateOverrides/index.js +5 -0
  386. package/dist/src/utils/stateOverrides/index.js.map +1 -0
  387. package/dist/src/utils/stateOverrides/mergeStateOverrides.d.ts +6 -0
  388. package/dist/src/utils/stateOverrides/mergeStateOverrides.js +40 -0
  389. package/dist/src/utils/stateOverrides/mergeStateOverrides.js.map +1 -0
  390. package/dist/src/utils/stateOverrides/types.d.ts +5 -0
  391. package/dist/src/utils/stateOverrides/types.js +2 -0
  392. package/dist/src/utils/stateOverrides/types.js.map +1 -0
  393. package/dist/src/utils/subAccounts.d.ts +6 -0
  394. package/dist/src/utils/subAccounts.js +24 -0
  395. package/dist/src/utils/subAccounts.js.map +1 -0
  396. package/dist/src/utils/types.d.ts +20 -0
  397. package/dist/src/utils/types.js +8 -0
  398. package/dist/src/utils/types.js.map +1 -0
  399. package/package.json +67 -0
@@ -0,0 +1,795 @@
1
+ import { getAddress } from "viem";
2
+ import { sortOracleResolvedVaults } from "../../../../../utils/oracle.js";
3
+ import { parseAddressField, parseBigIntField, parseBooleanField, parseNumberField, parseRatio1e4, parseStringField, parseTimestampField, ZERO_ADDRESS, } from "../../../../../utils/parsing.js";
4
+ import { hasActiveBorrowableLtv, } from "../../../../../entities/EVault.js";
5
+ import { VaultType } from "../../../../../utils/types.js";
6
+ import { InterestRateModelType } from "../eVaultOnchainAdapter/eVaultLensTypes.js";
7
+ import { normalizeIRMParams, decorateIRMParams, } from "../../../../../utils/irm.js";
8
+ const DEFAULT_HOOKED_OPERATIONS = {
9
+ deposit: false,
10
+ mint: false,
11
+ withdraw: false,
12
+ redeem: false,
13
+ transfer: false,
14
+ skim: false,
15
+ borrow: false,
16
+ repay: false,
17
+ repayWithShares: false,
18
+ pullDebt: false,
19
+ convertFees: false,
20
+ liquidate: false,
21
+ flashloan: false,
22
+ touch: false,
23
+ vaultStatusCheck: false,
24
+ };
25
+ const DEFAULT_TOKEN_BLOCK = {
26
+ address: ZERO_ADDRESS,
27
+ symbol: "",
28
+ decimals: 0,
29
+ name: "",
30
+ };
31
+ const DEFAULT_ORACLE_BLOCK = {
32
+ oracle: ZERO_ADDRESS,
33
+ name: "",
34
+ adapters: [],
35
+ };
36
+ const DEFAULT_CAPS_BLOCK = {
37
+ supplyCap: "0",
38
+ borrowCap: "0",
39
+ };
40
+ const DEFAULT_LIQUIDATION_BLOCK = {
41
+ maxLiquidationDiscount: 0,
42
+ liquidationCoolOffTime: 0,
43
+ socializeDebt: false,
44
+ };
45
+ const DEFAULT_INTEREST_RATES_BLOCK = {
46
+ borrowSPY: "0",
47
+ borrowAPY: "0",
48
+ supplyAPY: "0",
49
+ };
50
+ const DEFAULT_INTEREST_RATE_MODEL_BLOCK = {
51
+ address: ZERO_ADDRESS,
52
+ type: "unknown",
53
+ data: null,
54
+ };
55
+ const DEFAULT_ORACLE_PRICE_BLOCK = {
56
+ queryFailure: true,
57
+ queryFailureReason: "0x",
58
+ amountIn: "0",
59
+ amountOutMid: "0",
60
+ amountOutBid: "0",
61
+ amountOutAsk: "0",
62
+ timestamp: "",
63
+ };
64
+ function normalizeUnitOfAccountToken(token) {
65
+ if (token.address.toLowerCase() === ZERO_ADDRESS.toLowerCase()) {
66
+ return undefined;
67
+ }
68
+ return {
69
+ ...token,
70
+ decimals: token.decimals > 0 ? token.decimals : 18,
71
+ };
72
+ }
73
+ function mapInterestRateModelType(type) {
74
+ switch (type.toLowerCase()) {
75
+ case "kink":
76
+ return InterestRateModelType.KINK;
77
+ case "adaptive_curve":
78
+ case "adaptive-curve":
79
+ return InterestRateModelType.ADAPTIVE_CURVE;
80
+ case "kinky":
81
+ return InterestRateModelType.KINKY;
82
+ case "fixed_cyclical_binary":
83
+ case "fixed-cyclical-binary":
84
+ return InterestRateModelType.FIXED_CYCLICAL_BINARY;
85
+ default:
86
+ return InterestRateModelType.UNKNOWN;
87
+ }
88
+ }
89
+ function convertToken(token, path, entityId, errors) {
90
+ return {
91
+ address: parseAddressField(token.address, {
92
+ path: `${path}.address`,
93
+ entityId,
94
+ errors,
95
+ source: "eVaultV3",
96
+ }),
97
+ name: parseStringField(token.name, {
98
+ path: `${path}.name`,
99
+ entityId,
100
+ errors,
101
+ source: "eVaultV3",
102
+ }),
103
+ symbol: parseStringField(token.symbol, {
104
+ path: `${path}.symbol`,
105
+ entityId,
106
+ errors,
107
+ source: "eVaultV3",
108
+ }),
109
+ decimals: parseNumberField(token.decimals, {
110
+ path: `${path}.decimals`,
111
+ entityId,
112
+ errors,
113
+ source: "eVaultV3",
114
+ }),
115
+ };
116
+ }
117
+ function convertOraclePrice(price, errors, path, entityId) {
118
+ const converted = {
119
+ queryFailure: parseBooleanField(price.queryFailure, {
120
+ path: `${path}.queryFailure`,
121
+ entityId,
122
+ errors,
123
+ source: "eVaultV3",
124
+ fallback: true,
125
+ }),
126
+ queryFailureReason: parseStringField(price.queryFailureReason, {
127
+ path: `${path}.queryFailureReason`,
128
+ entityId,
129
+ errors,
130
+ source: "eVaultV3",
131
+ fallback: "0x",
132
+ }),
133
+ amountIn: parseBigIntField(price.amountIn, {
134
+ path: `${path}.amountIn`,
135
+ entityId,
136
+ errors,
137
+ source: "eVaultV3",
138
+ }),
139
+ amountOutMid: parseBigIntField(price.amountOutMid, {
140
+ path: `${path}.amountOutMid`,
141
+ entityId,
142
+ errors,
143
+ source: "eVaultV3",
144
+ }),
145
+ amountOutBid: parseBigIntField(price.amountOutBid, {
146
+ path: `${path}.amountOutBid`,
147
+ entityId,
148
+ errors,
149
+ source: "eVaultV3",
150
+ }),
151
+ amountOutAsk: parseBigIntField(price.amountOutAsk, {
152
+ path: `${path}.amountOutAsk`,
153
+ entityId,
154
+ errors,
155
+ source: "eVaultV3",
156
+ }),
157
+ timestamp: parseTimestampField(price.timestamp, {
158
+ path: `${path}.timestamp`,
159
+ entityId,
160
+ errors,
161
+ source: "eVaultV3",
162
+ }),
163
+ };
164
+ if (converted.queryFailure) {
165
+ errors.push({
166
+ code: "SOURCE_UNAVAILABLE",
167
+ severity: "warning",
168
+ message: "Oracle price query reported failure.",
169
+ paths: [path],
170
+ entityId,
171
+ source: "eVaultV3",
172
+ originalValue: converted.queryFailureReason,
173
+ normalizedValue: "queryFailure:true",
174
+ });
175
+ }
176
+ return converted;
177
+ }
178
+ function convertOracleAdapter(adapter, entityId, errors) {
179
+ const converted = {
180
+ oracle: parseAddressField(adapter.oracle, {
181
+ path: "$.oracle.adapters[].oracle",
182
+ entityId,
183
+ errors,
184
+ source: "eVaultV3",
185
+ }),
186
+ name: parseStringField(adapter.name, {
187
+ path: "$.oracle.adapters[].name",
188
+ entityId,
189
+ errors,
190
+ source: "eVaultV3",
191
+ }),
192
+ base: parseAddressField(adapter.base, {
193
+ path: "$.oracle.adapters[].base",
194
+ entityId,
195
+ errors,
196
+ source: "eVaultV3",
197
+ }),
198
+ quote: parseAddressField(adapter.quote, {
199
+ path: "$.oracle.adapters[].quote",
200
+ entityId,
201
+ errors,
202
+ source: "eVaultV3",
203
+ }),
204
+ };
205
+ if (adapter.pythDetail) {
206
+ converted.pythDetail = {
207
+ pyth: parseAddressField(adapter.pythDetail.pyth, {
208
+ path: "$.oracle.adapters[].pythDetail.pyth",
209
+ entityId,
210
+ errors,
211
+ source: "eVaultV3",
212
+ }),
213
+ base: parseAddressField(adapter.pythDetail.base, {
214
+ path: "$.oracle.adapters[].pythDetail.base",
215
+ entityId,
216
+ errors,
217
+ source: "eVaultV3",
218
+ }),
219
+ quote: parseAddressField(adapter.pythDetail.quote, {
220
+ path: "$.oracle.adapters[].pythDetail.quote",
221
+ entityId,
222
+ errors,
223
+ source: "eVaultV3",
224
+ }),
225
+ feedId: parseStringField(adapter.pythDetail.feedId, {
226
+ path: "$.oracle.adapters[].pythDetail.feedId",
227
+ entityId,
228
+ errors,
229
+ source: "eVaultV3",
230
+ fallback: "0x",
231
+ }),
232
+ maxStaleness: parseBigIntField(String(adapter.pythDetail.maxStaleness), {
233
+ path: "$.oracle.adapters[].pythDetail.maxStaleness",
234
+ entityId,
235
+ errors,
236
+ source: "eVaultV3",
237
+ }),
238
+ maxConfWidth: parseBigIntField(String(adapter.pythDetail.maxConfWidth), {
239
+ path: "$.oracle.adapters[].pythDetail.maxConfWidth",
240
+ entityId,
241
+ errors,
242
+ source: "eVaultV3",
243
+ }),
244
+ };
245
+ }
246
+ if (adapter.chainlinkDetail) {
247
+ converted.chainlinkDetail = {
248
+ oracle: parseAddressField(adapter.chainlinkDetail.oracle, {
249
+ path: "$.oracle.adapters[].chainlinkDetail.oracle",
250
+ entityId,
251
+ errors,
252
+ source: "eVaultV3",
253
+ }),
254
+ };
255
+ }
256
+ return converted;
257
+ }
258
+ function convertCollaterals(rows, vaultTimestamp, vaultEntityId, errors) {
259
+ const collaterals = [];
260
+ for (const [index, row] of rows.entries()) {
261
+ const collateralAddress = parseAddressField(row.collateral, {
262
+ path: `$.collaterals[${index}].collateral`,
263
+ entityId: vaultEntityId,
264
+ errors,
265
+ source: "eVaultV3",
266
+ });
267
+ const borrowLTV = parseRatio1e4(row.borrowLTV, {
268
+ path: `$.collaterals[${index}].borrowLTV`,
269
+ entityId: collateralAddress,
270
+ errors,
271
+ source: "eVaultV3",
272
+ });
273
+ const liquidationLTV = parseRatio1e4(row.liquidationLTV, {
274
+ path: `$.collaterals[${index}].liquidationLTV`,
275
+ entityId: collateralAddress,
276
+ errors,
277
+ source: "eVaultV3",
278
+ });
279
+ const targetTimestamp = parseNumberField(typeof row.targetTimestamp === "number"
280
+ ? row.targetTimestamp
281
+ : Number(row.targetTimestamp), {
282
+ path: `$.collaterals[${index}].targetTimestamp`,
283
+ entityId: collateralAddress,
284
+ errors,
285
+ source: "eVaultV3",
286
+ });
287
+ const isRemovedCollateral = borrowLTV === 0 &&
288
+ liquidationLTV === 0 &&
289
+ targetTimestamp < vaultTimestamp;
290
+ if (isRemovedCollateral)
291
+ continue;
292
+ const collateral = {
293
+ address: collateralAddress,
294
+ borrowLTV,
295
+ liquidationLTV,
296
+ oraclePriceRaw: row.oraclePriceRaw
297
+ ? convertOraclePrice(row.oraclePriceRaw, errors, `$.collaterals[${collaterals.length}].oraclePriceRaw`, collateralAddress)
298
+ : {
299
+ queryFailure: true,
300
+ queryFailureReason: "0x",
301
+ amountIn: 0n,
302
+ amountOutMid: 0n,
303
+ amountOutBid: 0n,
304
+ amountOutAsk: 0n,
305
+ timestamp: 0,
306
+ },
307
+ };
308
+ if (!row.oraclePriceRaw) {
309
+ errors.push({
310
+ code: "DEFAULT_APPLIED",
311
+ severity: "warning",
312
+ message: "Missing collateral oraclePriceRaw; default zero-price placeholder applied.",
313
+ paths: [`$.collaterals[${collaterals.length}].oraclePriceRaw`],
314
+ entityId: collateralAddress,
315
+ source: "eVaultV3",
316
+ normalizedValue: "queryFailure:true",
317
+ });
318
+ }
319
+ if (targetTimestamp > vaultTimestamp) {
320
+ const ramping = {
321
+ initialLiquidationLTV: parseRatio1e4(row.initialLiquidationLTV, {
322
+ path: `$.collaterals[${collaterals.length}].ramping.initialLiquidationLTV`,
323
+ entityId: collateralAddress,
324
+ errors,
325
+ source: "eVaultV3",
326
+ }),
327
+ targetTimestamp,
328
+ rampDuration: parseBigIntField(String(row.rampDuration ?? 0), {
329
+ path: `$.collaterals[${collaterals.length}].ramping.rampDuration`,
330
+ entityId: collateralAddress,
331
+ errors,
332
+ source: "eVaultV3",
333
+ }),
334
+ };
335
+ collateral.ramping = ramping;
336
+ }
337
+ collaterals.push(collateral);
338
+ }
339
+ return collaterals;
340
+ }
341
+ function convertResolvedVaults(rows, vaultTimestamp, quoteAddress, vaultEntityId, errors) {
342
+ if (!quoteAddress)
343
+ return [];
344
+ const resolvedVaults = [];
345
+ for (const [index, row] of rows.entries()) {
346
+ if (!row.asset)
347
+ continue;
348
+ const collateralAddress = parseAddressField(row.collateral, {
349
+ path: `$.collaterals[${index}].collateral`,
350
+ entityId: vaultEntityId,
351
+ errors,
352
+ source: "eVaultV3",
353
+ });
354
+ const assetAddress = parseAddressField(row.asset, {
355
+ path: `$.collaterals[${index}].asset`,
356
+ entityId: collateralAddress,
357
+ errors,
358
+ source: "eVaultV3",
359
+ });
360
+ const borrowLTV = parseRatio1e4(row.borrowLTV, {
361
+ path: `$.collaterals[${index}].borrowLTV`,
362
+ entityId: collateralAddress,
363
+ errors,
364
+ source: "eVaultV3",
365
+ });
366
+ const liquidationLTV = parseRatio1e4(row.liquidationLTV, {
367
+ path: `$.collaterals[${index}].liquidationLTV`,
368
+ entityId: collateralAddress,
369
+ errors,
370
+ source: "eVaultV3",
371
+ });
372
+ const targetTimestamp = parseNumberField(typeof row.targetTimestamp === "number"
373
+ ? row.targetTimestamp
374
+ : Number(row.targetTimestamp), {
375
+ path: `$.collaterals[${index}].targetTimestamp`,
376
+ entityId: collateralAddress,
377
+ errors,
378
+ source: "eVaultV3",
379
+ });
380
+ const isRemovedCollateral = borrowLTV === 0 &&
381
+ liquidationLTV === 0 &&
382
+ targetTimestamp < vaultTimestamp;
383
+ if (isRemovedCollateral)
384
+ continue;
385
+ if (assetAddress.toLowerCase() === collateralAddress.toLowerCase())
386
+ continue;
387
+ resolvedVaults.push({
388
+ vault: collateralAddress,
389
+ asset: assetAddress,
390
+ quote: quoteAddress,
391
+ resolvedAssets: [assetAddress],
392
+ });
393
+ }
394
+ return sortOracleResolvedVaults(resolvedVaults);
395
+ }
396
+ export function convertVault(detail, collateralRows, errors, fallbackAddress) {
397
+ const hasZeroOracleAddress = detail.oracle?.oracle !== undefined &&
398
+ (() => {
399
+ try {
400
+ return getAddress(detail.oracle.oracle) === ZERO_ADDRESS;
401
+ }
402
+ catch {
403
+ return false;
404
+ }
405
+ })();
406
+ const entityId = parseAddressField(detail.address, {
407
+ path: "$.address",
408
+ entityId: fallbackAddress,
409
+ errors,
410
+ source: "eVaultV3",
411
+ fallback: fallbackAddress,
412
+ fallbackLabel: "requested vault address",
413
+ });
414
+ if (!detail.oracle) {
415
+ errors.push({
416
+ code: "DEFAULT_APPLIED",
417
+ severity: "warning",
418
+ message: "Missing oracle block; defaulted all oracle fields to 0/empty.",
419
+ paths: ["$.oracle"],
420
+ entityId,
421
+ source: "eVaultV3",
422
+ normalizedValue: DEFAULT_ORACLE_BLOCK,
423
+ });
424
+ }
425
+ const oracleData = detail.oracle ?? DEFAULT_ORACLE_BLOCK;
426
+ const oracle = {
427
+ oracle: parseAddressField(oracleData.oracle, {
428
+ path: "$.oracle.oracle",
429
+ entityId,
430
+ errors,
431
+ source: "eVaultV3",
432
+ }),
433
+ name: parseStringField(oracleData.name, {
434
+ path: "$.oracle.name",
435
+ entityId,
436
+ errors,
437
+ source: "eVaultV3",
438
+ }),
439
+ adapters: oracleData.adapters.map((adapter) => convertOracleAdapter(adapter, entityId, errors)),
440
+ resolvedVaults: [],
441
+ };
442
+ const suppressUnitOfAccountDiagnostics = hasZeroOracleAddress;
443
+ if (!detail.shares) {
444
+ errors.push({
445
+ code: "DEFAULT_APPLIED",
446
+ severity: "warning",
447
+ message: "Missing shares block; defaulted all share token fields to 0/empty.",
448
+ paths: ["$.shares"],
449
+ entityId,
450
+ source: "eVaultV3",
451
+ normalizedValue: DEFAULT_TOKEN_BLOCK,
452
+ });
453
+ }
454
+ const sharesData = detail.shares ?? DEFAULT_TOKEN_BLOCK;
455
+ if (!detail.asset) {
456
+ errors.push({
457
+ code: "DEFAULT_APPLIED",
458
+ severity: "warning",
459
+ message: "Missing asset block; defaulted all asset token fields to 0/empty.",
460
+ paths: ["$.asset"],
461
+ entityId,
462
+ source: "eVaultV3",
463
+ normalizedValue: DEFAULT_TOKEN_BLOCK,
464
+ });
465
+ }
466
+ const assetData = detail.asset ?? DEFAULT_TOKEN_BLOCK;
467
+ if (!detail.unitOfAccount && !suppressUnitOfAccountDiagnostics) {
468
+ errors.push({
469
+ code: "DEFAULT_APPLIED",
470
+ severity: "warning",
471
+ message: "Missing unitOfAccount block; defaulted all unit-of-account fields to 0/empty.",
472
+ paths: ["$.unitOfAccount"],
473
+ entityId,
474
+ source: "eVaultV3",
475
+ normalizedValue: DEFAULT_TOKEN_BLOCK,
476
+ });
477
+ }
478
+ const unitOfAccountData = detail.unitOfAccount ?? DEFAULT_TOKEN_BLOCK;
479
+ const unitOfAccountErrors = suppressUnitOfAccountDiagnostics ? [] : errors;
480
+ if (!detail.fees) {
481
+ errors.push({
482
+ code: "DEFAULT_APPLIED",
483
+ severity: "warning",
484
+ message: "Missing fees object; defaulted all fee fields to 0.",
485
+ paths: ["$.fees"],
486
+ entityId,
487
+ source: "eVaultV3",
488
+ normalizedValue: {
489
+ interestFee: 0,
490
+ accumulatedFeesShares: "0",
491
+ accumulatedFeesAssets: "0",
492
+ governorFeeReceiver: ZERO_ADDRESS,
493
+ protocolFeeReceiver: ZERO_ADDRESS,
494
+ protocolFeeShare: 0,
495
+ },
496
+ });
497
+ }
498
+ const feeData = detail.fees ?? {
499
+ interestFee: 0,
500
+ accumulatedFeesShares: "0",
501
+ accumulatedFeesAssets: "0",
502
+ governorFeeReceiver: ZERO_ADDRESS,
503
+ protocolFeeReceiver: ZERO_ADDRESS,
504
+ protocolFeeShare: 0,
505
+ };
506
+ const fees = {
507
+ interestFee: feeData.interestFee ?? 0,
508
+ accumulatedFeesShares: parseBigIntField(feeData.accumulatedFeesShares ?? "0", {
509
+ path: "$.fees.accumulatedFeesShares",
510
+ entityId,
511
+ errors,
512
+ source: "eVaultV3",
513
+ }),
514
+ accumulatedFeesAssets: parseBigIntField(feeData.accumulatedFeesAssets ?? "0", {
515
+ path: "$.fees.accumulatedFeesAssets",
516
+ entityId,
517
+ errors,
518
+ source: "eVaultV3",
519
+ }),
520
+ governorFeeReceiver: parseAddressField(feeData.governorFeeReceiver, {
521
+ path: "$.fees.governorFeeReceiver",
522
+ entityId,
523
+ errors,
524
+ source: "eVaultV3",
525
+ }),
526
+ protocolFeeReceiver: parseAddressField(feeData.protocolFeeReceiver, {
527
+ path: "$.fees.protocolFeeReceiver",
528
+ entityId,
529
+ errors,
530
+ source: "eVaultV3",
531
+ }),
532
+ protocolFeeShare: feeData.protocolFeeShare ?? 0,
533
+ };
534
+ const hooks = {
535
+ hookedOperations: {
536
+ ...DEFAULT_HOOKED_OPERATIONS,
537
+ ...(detail.hooks?.hookedOperations ?? {}),
538
+ },
539
+ hookTarget: parseAddressField(detail.hooks?.hookTarget, {
540
+ path: "$.hooks.hookTarget",
541
+ entityId,
542
+ errors,
543
+ source: "eVaultV3",
544
+ }),
545
+ };
546
+ if (!detail.hooks?.hookedOperations) {
547
+ errors.push({
548
+ code: "DEFAULT_APPLIED",
549
+ severity: "warning",
550
+ message: "Missing hookedOperations; defaulted all operations to false.",
551
+ paths: ["$.hooks.hookedOperations"],
552
+ entityId,
553
+ source: "eVaultV3",
554
+ normalizedValue: DEFAULT_HOOKED_OPERATIONS,
555
+ });
556
+ }
557
+ if (!detail.caps) {
558
+ errors.push({
559
+ code: "DEFAULT_APPLIED",
560
+ severity: "warning",
561
+ message: "Missing caps block; defaulted all cap fields to 0.",
562
+ paths: ["$.caps"],
563
+ entityId,
564
+ source: "eVaultV3",
565
+ normalizedValue: DEFAULT_CAPS_BLOCK,
566
+ });
567
+ }
568
+ const capsData = detail.caps ?? DEFAULT_CAPS_BLOCK;
569
+ const caps = {
570
+ supplyCap: parseBigIntField(capsData.supplyCap ?? "0", {
571
+ path: "$.caps.supplyCap",
572
+ entityId,
573
+ errors,
574
+ source: "eVaultV3",
575
+ }),
576
+ borrowCap: parseBigIntField(capsData.borrowCap ?? "0", {
577
+ path: "$.caps.borrowCap",
578
+ entityId,
579
+ errors,
580
+ source: "eVaultV3",
581
+ }),
582
+ };
583
+ if (!detail.liquidation) {
584
+ errors.push({
585
+ code: "DEFAULT_APPLIED",
586
+ severity: "warning",
587
+ message: "Missing liquidation block; defaulted all liquidation fields to 0/false.",
588
+ paths: ["$.liquidation"],
589
+ entityId,
590
+ source: "eVaultV3",
591
+ normalizedValue: {
592
+ maxLiquidationDiscount: 0,
593
+ liquidationCoolOffTime: 0,
594
+ socializeDebt: false,
595
+ },
596
+ });
597
+ }
598
+ const liquidationData = detail.liquidation ?? DEFAULT_LIQUIDATION_BLOCK;
599
+ const liquidation = {
600
+ maxLiquidationDiscount: liquidationData.maxLiquidationDiscount ?? 0,
601
+ liquidationCoolOffTime: liquidationData.liquidationCoolOffTime ?? 0,
602
+ socializeDebt: liquidationData.socializeDebt ?? false,
603
+ };
604
+ if (!detail.interestRates) {
605
+ errors.push({
606
+ code: "DEFAULT_APPLIED",
607
+ severity: "warning",
608
+ message: "Missing interestRates block; defaulted all rate fields to 0.",
609
+ paths: ["$.interestRates"],
610
+ entityId,
611
+ source: "eVaultV3",
612
+ normalizedValue: DEFAULT_INTEREST_RATES_BLOCK,
613
+ });
614
+ }
615
+ const interestRatesData = detail.interestRates ?? DEFAULT_INTEREST_RATES_BLOCK;
616
+ const interestRates = {
617
+ borrowSPY: parseStringField(interestRatesData.borrowSPY, {
618
+ path: "$.interestRates.borrowSPY",
619
+ entityId,
620
+ errors,
621
+ source: "eVaultV3",
622
+ fallback: "0",
623
+ }),
624
+ borrowAPY: parseStringField(interestRatesData.borrowAPY, {
625
+ path: "$.interestRates.borrowAPY",
626
+ entityId,
627
+ errors,
628
+ source: "eVaultV3",
629
+ fallback: "0",
630
+ }),
631
+ supplyAPY: parseStringField(interestRatesData.supplyAPY, {
632
+ path: "$.interestRates.supplyAPY",
633
+ entityId,
634
+ errors,
635
+ source: "eVaultV3",
636
+ fallback: "0",
637
+ }),
638
+ };
639
+ if (!detail.interestRateModel) {
640
+ errors.push({
641
+ code: "DEFAULT_APPLIED",
642
+ severity: "warning",
643
+ message: "Missing interestRateModel block; defaulted all model fields to 0/unknown.",
644
+ paths: ["$.interestRateModel"],
645
+ entityId,
646
+ source: "eVaultV3",
647
+ normalizedValue: DEFAULT_INTEREST_RATE_MODEL_BLOCK,
648
+ });
649
+ }
650
+ const interestRateModelData = detail.interestRateModel ?? DEFAULT_INTEREST_RATE_MODEL_BLOCK;
651
+ const interestRateModelType = mapInterestRateModelType(parseStringField(interestRateModelData.type, {
652
+ path: "$.interestRateModel.type",
653
+ entityId,
654
+ errors,
655
+ source: "eVaultV3",
656
+ fallback: "unknown",
657
+ }));
658
+ const normalizedIRMData = normalizeIRMParams(interestRateModelType, interestRateModelData.data);
659
+ const interestRateModelAddress = parseAddressField(interestRateModelData.address, {
660
+ path: "$.interestRateModel.address",
661
+ entityId,
662
+ errors,
663
+ source: "eVaultV3",
664
+ });
665
+ const interestRateModel = interestRateModelType === InterestRateModelType.KINK
666
+ ? {
667
+ address: interestRateModelAddress,
668
+ type: InterestRateModelType.KINK,
669
+ data: normalizedIRMData,
670
+ params: decorateIRMParams(interestRateModelType, normalizedIRMData, fees.interestFee),
671
+ }
672
+ : interestRateModelType === InterestRateModelType.ADAPTIVE_CURVE
673
+ ? {
674
+ address: interestRateModelAddress,
675
+ type: InterestRateModelType.ADAPTIVE_CURVE,
676
+ data: normalizedIRMData,
677
+ params: decorateIRMParams(interestRateModelType, normalizedIRMData, fees.interestFee),
678
+ }
679
+ : interestRateModelType === InterestRateModelType.KINKY
680
+ ? {
681
+ address: interestRateModelAddress,
682
+ type: InterestRateModelType.KINKY,
683
+ data: normalizedIRMData,
684
+ params: decorateIRMParams(interestRateModelType, normalizedIRMData, fees.interestFee),
685
+ }
686
+ : interestRateModelType ===
687
+ InterestRateModelType.FIXED_CYCLICAL_BINARY
688
+ ? {
689
+ address: interestRateModelAddress,
690
+ type: InterestRateModelType.FIXED_CYCLICAL_BINARY,
691
+ data: normalizedIRMData,
692
+ params: decorateIRMParams(interestRateModelType, normalizedIRMData, fees.interestFee),
693
+ }
694
+ : {
695
+ address: interestRateModelAddress,
696
+ type: InterestRateModelType.UNKNOWN,
697
+ data: null,
698
+ params: null,
699
+ };
700
+ if (!detail.oraclePriceRaw) {
701
+ errors.push({
702
+ code: "DEFAULT_APPLIED",
703
+ severity: "warning",
704
+ message: "Missing oraclePriceRaw block; defaulted all oracle price fields to 0.",
705
+ paths: ["$.oraclePriceRaw"],
706
+ entityId,
707
+ source: "eVaultV3",
708
+ normalizedValue: DEFAULT_ORACLE_PRICE_BLOCK,
709
+ });
710
+ }
711
+ const oraclePriceData = detail.oraclePriceRaw ?? DEFAULT_ORACLE_PRICE_BLOCK;
712
+ const timestamp = parseTimestampField(detail.timestamp, {
713
+ path: "$.timestamp",
714
+ entityId,
715
+ errors,
716
+ source: "eVaultV3",
717
+ });
718
+ const collaterals = convertCollaterals(collateralRows, timestamp, entityId, errors);
719
+ const unitOfAccount = normalizeUnitOfAccountToken(convertToken(unitOfAccountData, "$.unitOfAccount", entityId, unitOfAccountErrors));
720
+ oracle.resolvedVaults = convertResolvedVaults(oracle.name === "EulerRouter" ? collateralRows : [], timestamp, unitOfAccount?.address, entityId, errors);
721
+ return {
722
+ type: VaultType.EVault,
723
+ chainId: detail.chainId,
724
+ address: entityId,
725
+ shares: convertToken(sharesData, "$.shares", entityId, errors),
726
+ asset: convertToken(assetData, "$.asset", entityId, errors),
727
+ unitOfAccount,
728
+ totalShares: parseBigIntField(detail.totalShares, {
729
+ path: "$.totalShares",
730
+ entityId,
731
+ errors,
732
+ source: "eVaultV3",
733
+ }),
734
+ totalAssets: parseBigIntField(detail.totalAssets, {
735
+ path: "$.totalAssets",
736
+ entityId,
737
+ errors,
738
+ source: "eVaultV3",
739
+ }),
740
+ totalCash: parseBigIntField(detail.totalCash, {
741
+ path: "$.totalCash",
742
+ entityId,
743
+ errors,
744
+ source: "eVaultV3",
745
+ }),
746
+ totalBorrowed: parseBigIntField(detail.totalBorrowed, {
747
+ path: "$.totalBorrowed",
748
+ entityId,
749
+ errors,
750
+ source: "eVaultV3",
751
+ }),
752
+ creator: parseAddressField(detail.creator, {
753
+ path: "$.creator",
754
+ entityId,
755
+ errors,
756
+ source: "eVaultV3",
757
+ }),
758
+ governorAdmin: parseAddressField(detail.governorAdmin, {
759
+ path: "$.governorAdmin",
760
+ entityId,
761
+ errors,
762
+ source: "eVaultV3",
763
+ }),
764
+ dToken: parseAddressField(detail.dToken, {
765
+ path: "$.dToken",
766
+ entityId,
767
+ errors,
768
+ source: "eVaultV3",
769
+ }),
770
+ balanceTracker: parseAddressField(detail.balanceTracker, {
771
+ path: "$.balanceTracker",
772
+ entityId,
773
+ errors,
774
+ source: "eVaultV3",
775
+ }),
776
+ fees,
777
+ hooks,
778
+ caps,
779
+ liquidation,
780
+ oracle,
781
+ interestRates,
782
+ interestRateModel,
783
+ collaterals,
784
+ isBorrowable: hasActiveBorrowableLtv(collaterals, timestamp),
785
+ evcCompatibleAsset: parseBooleanField(detail.evcCompatibleAsset, {
786
+ path: "$.evcCompatibleAsset",
787
+ entityId,
788
+ errors,
789
+ source: "eVaultV3",
790
+ }),
791
+ oraclePriceRaw: convertOraclePrice(oraclePriceData, errors, "$.oraclePriceRaw", entityId),
792
+ timestamp,
793
+ };
794
+ }
795
+ //# sourceMappingURL=eVaultV3AdapterConversions.js.map