@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.
- package/LICENSE +21 -0
- package/README.md +115 -0
- package/dist/src/entities/Account.d.ts +242 -0
- package/dist/src/entities/Account.js +509 -0
- package/dist/src/entities/Account.js.map +1 -0
- package/dist/src/entities/ERC4626Vault.d.ts +56 -0
- package/dist/src/entities/ERC4626Vault.js +94 -0
- package/dist/src/entities/ERC4626Vault.js.map +1 -0
- package/dist/src/entities/EVault.d.ts +159 -0
- package/dist/src/entities/EVault.js +224 -0
- package/dist/src/entities/EVault.js.map +1 -0
- package/dist/src/entities/EulerEarn.d.ts +69 -0
- package/dist/src/entities/EulerEarn.js +89 -0
- package/dist/src/entities/EulerEarn.js.map +1 -0
- package/dist/src/entities/EulerLabels.d.ts +53 -0
- package/dist/src/entities/EulerLabels.js +2 -0
- package/dist/src/entities/EulerLabels.js.map +1 -0
- package/dist/src/entities/SecuritizeCollateralVault.d.ts +16 -0
- package/dist/src/entities/SecuritizeCollateralVault.js +22 -0
- package/dist/src/entities/SecuritizeCollateralVault.js.map +1 -0
- package/dist/src/entities/Wallet.d.ts +27 -0
- package/dist/src/entities/Wallet.js +21 -0
- package/dist/src/entities/Wallet.js.map +1 -0
- package/dist/src/index.d.ts +43 -0
- package/dist/src/index.js +46 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/plugins/batchSimulation.d.ts +34 -0
- package/dist/src/plugins/batchSimulation.js +83 -0
- package/dist/src/plugins/batchSimulation.js.map +1 -0
- package/dist/src/plugins/index.d.ts +4 -0
- package/dist/src/plugins/index.js +5 -0
- package/dist/src/plugins/index.js.map +1 -0
- package/dist/src/plugins/keyring/index.d.ts +1 -0
- package/dist/src/plugins/keyring/index.js +2 -0
- package/dist/src/plugins/keyring/index.js.map +1 -0
- package/dist/src/plugins/keyring/keyringPlugin.d.ts +41 -0
- package/dist/src/plugins/keyring/keyringPlugin.js +182 -0
- package/dist/src/plugins/keyring/keyringPlugin.js.map +1 -0
- package/dist/src/plugins/pyth/index.d.ts +1 -0
- package/dist/src/plugins/pyth/index.js +2 -0
- package/dist/src/plugins/pyth/index.js.map +1 -0
- package/dist/src/plugins/pyth/pythPlugin.d.ts +29 -0
- package/dist/src/plugins/pyth/pythPlugin.js +190 -0
- package/dist/src/plugins/pyth/pythPlugin.js.map +1 -0
- package/dist/src/plugins/types.d.ts +39 -0
- package/dist/src/plugins/types.js +16 -0
- package/dist/src/plugins/types.js.map +1 -0
- package/dist/src/sdk/buildSDK.d.ts +77 -0
- package/dist/src/sdk/buildSDK.js +366 -0
- package/dist/src/sdk/buildSDK.js.map +1 -0
- package/dist/src/sdk/defaultConfig.d.ts +26 -0
- package/dist/src/sdk/defaultConfig.js +68 -0
- package/dist/src/sdk/defaultConfig.js.map +1 -0
- package/dist/src/sdk/sdk.d.ts +73 -0
- package/dist/src/sdk/sdk.js +67 -0
- package/dist/src/sdk/sdk.js.map +1 -0
- package/dist/src/services/abiService/abiService.d.ts +13 -0
- package/dist/src/services/abiService/abiService.js +25 -0
- package/dist/src/services/abiService/abiService.js.map +1 -0
- package/dist/src/services/abiService/index.d.ts +2 -0
- package/dist/src/services/abiService/index.js +2 -0
- package/dist/src/services/abiService/index.js.map +1 -0
- package/dist/src/services/accountService/accountService.d.ts +44 -0
- package/dist/src/services/accountService/accountService.js +193 -0
- package/dist/src/services/accountService/accountService.js.map +1 -0
- package/dist/src/services/accountService/accountServiceConfig.d.ts +15 -0
- package/dist/src/services/accountService/accountServiceConfig.js +2 -0
- package/dist/src/services/accountService/accountServiceConfig.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.d.ts +960 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.js +1230 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.d.ts +17 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js +158 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.d.ts +48 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.js +2 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.d.ts +210 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js +287 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountVaultsSubgraphAdapter.d.ts +22 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountVaultsSubgraphAdapter.js +80 -0
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountVaultsSubgraphAdapter.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountOutputNormalization.d.ts +8 -0
- package/dist/src/services/accountService/adapters/accountOutputNormalization.js +50 -0
- package/dist/src/services/accountService/adapters/accountOutputNormalization.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.d.ts +62 -0
- package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.js +287 -0
- package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.js.map +1 -0
- package/dist/src/services/accountService/adapters/accountVaultsSubgraphAdapter/accountVaultsSubgraphAdapter.d.ts +1 -0
- package/dist/src/services/accountService/adapters/accountVaultsSubgraphAdapter/accountVaultsSubgraphAdapter.js +2 -0
- package/dist/src/services/accountService/adapters/accountVaultsSubgraphAdapter/accountVaultsSubgraphAdapter.js.map +1 -0
- package/dist/src/services/accountService/index.d.ts +5 -0
- package/dist/src/services/accountService/index.js +4 -0
- package/dist/src/services/accountService/index.js.map +1 -0
- package/dist/src/services/deploymentService/deploymentService.d.ts +116 -0
- package/dist/src/services/deploymentService/deploymentService.js +44 -0
- package/dist/src/services/deploymentService/deploymentService.js.map +1 -0
- package/dist/src/services/deploymentService/index.d.ts +2 -0
- package/dist/src/services/deploymentService/index.js +2 -0
- package/dist/src/services/deploymentService/index.js.map +1 -0
- package/dist/src/services/eulerLabelsService/eulerLabelsService.d.ts +54 -0
- package/dist/src/services/eulerLabelsService/eulerLabelsService.js +178 -0
- package/dist/src/services/eulerLabelsService/eulerLabelsService.js.map +1 -0
- package/dist/src/services/eulerLabelsService/index.d.ts +2 -0
- package/dist/src/services/eulerLabelsService/index.js +2 -0
- package/dist/src/services/eulerLabelsService/index.js.map +1 -0
- package/dist/src/services/executionService/abis/eVaultAbi.d.ts +1948 -0
- package/dist/src/services/executionService/abis/eVaultAbi.js +2517 -0
- package/dist/src/services/executionService/abis/eVaultAbi.js.map +1 -0
- package/dist/src/services/executionService/abis/ethereumVaultConnectorAbi.d.ts +1070 -0
- package/dist/src/services/executionService/abis/ethereumVaultConnectorAbi.js +1387 -0
- package/dist/src/services/executionService/abis/ethereumVaultConnectorAbi.js.map +1 -0
- package/dist/src/services/executionService/abis/permit2PermitAbi.d.ts +52 -0
- package/dist/src/services/executionService/abis/permit2PermitAbi.js +36 -0
- package/dist/src/services/executionService/abis/permit2PermitAbi.js.map +1 -0
- package/dist/src/services/executionService/abis/swapVerifierAbi.d.ts +139 -0
- package/dist/src/services/executionService/abis/swapVerifierAbi.js +70 -0
- package/dist/src/services/executionService/abis/swapVerifierAbi.js.map +1 -0
- package/dist/src/services/executionService/abis/swapperAbi.d.ts +270 -0
- package/dist/src/services/executionService/abis/swapperAbi.js +152 -0
- package/dist/src/services/executionService/abis/swapperAbi.js.map +1 -0
- package/dist/src/services/executionService/executionService.d.ts +619 -0
- package/dist/src/services/executionService/executionService.js +2037 -0
- package/dist/src/services/executionService/executionService.js.map +1 -0
- package/dist/src/services/executionService/executionServiceTypes.d.ts +423 -0
- package/dist/src/services/executionService/executionServiceTypes.js +14 -0
- package/dist/src/services/executionService/executionServiceTypes.js.map +1 -0
- package/dist/src/services/executionService/index.d.ts +7 -0
- package/dist/src/services/executionService/index.js +7 -0
- package/dist/src/services/executionService/index.js.map +1 -0
- package/dist/src/services/feeFlowService/feeFlowService.d.ts +22 -0
- package/dist/src/services/feeFlowService/feeFlowService.js +239 -0
- package/dist/src/services/feeFlowService/feeFlowService.js.map +1 -0
- package/dist/src/services/feeFlowService/feeFlowServiceTypes.d.ts +42 -0
- package/dist/src/services/feeFlowService/feeFlowServiceTypes.js +2 -0
- package/dist/src/services/feeFlowService/feeFlowServiceTypes.js.map +1 -0
- package/dist/src/services/feeFlowService/index.d.ts +2 -0
- package/dist/src/services/feeFlowService/index.js +2 -0
- package/dist/src/services/feeFlowService/index.js.map +1 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.d.ts +2 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.js +2 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.js.map +1 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.d.ts +21 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.js +125 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.js.map +1 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.d.ts +30 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.js +2 -0
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.js.map +1 -0
- package/dist/src/services/intrinsicApyService/index.d.ts +4 -0
- package/dist/src/services/intrinsicApyService/index.js +3 -0
- package/dist/src/services/intrinsicApyService/index.js.map +1 -0
- package/dist/src/services/intrinsicApyService/intrinsicApyService.d.ts +28 -0
- package/dist/src/services/intrinsicApyService/intrinsicApyService.js +42 -0
- package/dist/src/services/intrinsicApyService/intrinsicApyService.js.map +1 -0
- package/dist/src/services/oracleAdapterService/index.d.ts +1 -0
- package/dist/src/services/oracleAdapterService/index.js +2 -0
- package/dist/src/services/oracleAdapterService/index.js.map +1 -0
- package/dist/src/services/oracleAdapterService/oracleAdapterService.d.ts +40 -0
- package/dist/src/services/oracleAdapterService/oracleAdapterService.js +65 -0
- package/dist/src/services/oracleAdapterService/oracleAdapterService.js.map +1 -0
- package/dist/src/services/priceService/backendClient.d.ts +70 -0
- package/dist/src/services/priceService/backendClient.js +108 -0
- package/dist/src/services/priceService/backendClient.js.map +1 -0
- package/dist/src/services/priceService/index.d.ts +2 -0
- package/dist/src/services/priceService/index.js +3 -0
- package/dist/src/services/priceService/index.js.map +1 -0
- package/dist/src/services/priceService/priceService.d.ts +133 -0
- package/dist/src/services/priceService/priceService.js +499 -0
- package/dist/src/services/priceService/priceService.js.map +1 -0
- package/dist/src/services/priceService/utilsLensPriceAbi.d.ts +60 -0
- package/dist/src/services/priceService/utilsLensPriceAbi.js +31 -0
- package/dist/src/services/priceService/utilsLensPriceAbi.js.map +1 -0
- package/dist/src/services/providerService/index.d.ts +2 -0
- package/dist/src/services/providerService/index.js +2 -0
- package/dist/src/services/providerService/index.js.map +1 -0
- package/dist/src/services/providerService/providerService.d.ts +11 -0
- package/dist/src/services/providerService/providerService.js +61 -0
- package/dist/src/services/providerService/providerService.js.map +1 -0
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/index.d.ts +2 -0
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/index.js +2 -0
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/index.js.map +1 -0
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.d.ts +48 -0
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js +391 -0
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js.map +1 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/index.d.ts +2 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/index.js +2 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/index.js.map +1 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.d.ts +23 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js +296 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js.map +1 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.d.ts +110 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.js +2 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.js.map +1 -0
- package/dist/src/services/rewardsService/index.d.ts +5 -0
- package/dist/src/services/rewardsService/index.js +4 -0
- package/dist/src/services/rewardsService/index.js.map +1 -0
- package/dist/src/services/rewardsService/rewardsService.d.ts +34 -0
- package/dist/src/services/rewardsService/rewardsService.js +298 -0
- package/dist/src/services/rewardsService/rewardsService.js.map +1 -0
- package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts +270 -0
- package/dist/src/services/rewardsService/rewardsServiceTypes.js +2 -0
- package/dist/src/services/rewardsService/rewardsServiceTypes.js.map +1 -0
- package/dist/src/services/simulationService/index.d.ts +2 -0
- package/dist/src/services/simulationService/index.js +2 -0
- package/dist/src/services/simulationService/index.js.map +1 -0
- package/dist/src/services/simulationService/simulationService.d.ts +88 -0
- package/dist/src/services/simulationService/simulationService.js +497 -0
- package/dist/src/services/simulationService/simulationService.js.map +1 -0
- package/dist/src/services/swapService/index.d.ts +3 -0
- package/dist/src/services/swapService/index.js +3 -0
- package/dist/src/services/swapService/index.js.map +1 -0
- package/dist/src/services/swapService/swapService.d.ts +121 -0
- package/dist/src/services/swapService/swapService.js +329 -0
- package/dist/src/services/swapService/swapService.js.map +1 -0
- package/dist/src/services/swapService/swapServiceTypes.d.ts +130 -0
- package/dist/src/services/swapService/swapServiceTypes.js +16 -0
- package/dist/src/services/swapService/swapServiceTypes.js.map +1 -0
- package/dist/src/services/swapService/swapVerifierAbi.d.ts +139 -0
- package/dist/src/services/swapService/swapVerifierAbi.js +178 -0
- package/dist/src/services/swapService/swapVerifierAbi.js.map +1 -0
- package/dist/src/services/tokenlistService/index.d.ts +3 -0
- package/dist/src/services/tokenlistService/index.js +2 -0
- package/dist/src/services/tokenlistService/index.js.map +1 -0
- package/dist/src/services/tokenlistService/tokenlistService.d.ts +31 -0
- package/dist/src/services/tokenlistService/tokenlistService.js +56 -0
- package/dist/src/services/tokenlistService/tokenlistService.js.map +1 -0
- package/dist/src/services/tokenlistService/tokenlistServiceTypes.d.ts +33 -0
- package/dist/src/services/tokenlistService/tokenlistServiceTypes.js +2 -0
- package/dist/src/services/tokenlistService/tokenlistServiceTypes.js.map +1 -0
- package/dist/src/services/vaults/IVaultService.d.ts +47 -0
- package/dist/src/services/vaults/IVaultService.js +2 -0
- package/dist/src/services/vaults/IVaultService.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/abis/vaultLensAbi.d.ts +1280 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/abis/vaultLensAbi.js +1640 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/abis/vaultLensAbi.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultLensTypes.d.ts +97 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultLensTypes.js +9 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultLensTypes.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.d.ts +141 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js +189 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.d.ts +10 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js +454 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.d.ts +25 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js +214 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.d.ts +5 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js +795 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.d.ts +146 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.js +2 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterTypes.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/eVaultService.d.ts +74 -0
- package/dist/src/services/vaults/eVaultService/eVaultService.js +362 -0
- package/dist/src/services/vaults/eVaultService/eVaultService.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.d.ts +15 -0
- package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.js +2 -0
- package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/index.d.ts +5 -0
- package/dist/src/services/vaults/eVaultService/index.js +4 -0
- package/dist/src/services/vaults/eVaultService/index.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/abis/eulerEarnVaultLensAbi.d.ts +468 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/abis/eulerEarnVaultLensAbi.js +600 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/abis/eulerEarnVaultLensAbi.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.d.ts +10 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.js +151 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnLensTypes.d.ts +55 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnLensTypes.js +2 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnLensTypes.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.d.ts +109 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js +238 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.d.ts +100 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.js +373 -0
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.d.ts +77 -0
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.js +298 -0
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.d.ts +13 -0
- package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.js +2 -0
- package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.js.map +1 -0
- package/dist/src/services/vaults/eulerEarnService/index.d.ts +5 -0
- package/dist/src/services/vaults/eulerEarnService/index.js +4 -0
- package/dist/src/services/vaults/eulerEarnService/index.js.map +1 -0
- package/dist/src/services/vaults/index.d.ts +1 -0
- package/dist/src/services/vaults/index.js +2 -0
- package/dist/src/services/vaults/index.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/abis/erc4626EvcCollateralSecuritizeAbi.d.ts +22 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/abis/erc4626EvcCollateralSecuritizeAbi.js +18 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/abis/erc4626EvcCollateralSecuritizeAbi.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/abis/utilsLensAbi.d.ts +64 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/abis/utilsLensAbi.js +30 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/abis/utilsLensAbi.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.d.ts +4 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.js +53 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultLensTypes.d.ts +16 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultLensTypes.js +2 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultLensTypes.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.d.ts +37 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.js +113 -0
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/index.d.ts +2 -0
- package/dist/src/services/vaults/securitizeVaultService/index.js +3 -0
- package/dist/src/services/vaults/securitizeVaultService/index.js.map +1 -0
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.d.ts +52 -0
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.js +190 -0
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.js.map +1 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/IVaultTypeAdapter.d.ts +29 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/IVaultTypeAdapter.js +2 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/IVaultTypeAdapter.js.map +1 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeSubgraphAdapter.d.ts +18 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeSubgraphAdapter.js +82 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeSubgraphAdapter.js.map +1 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.d.ts +35 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.js +154 -0
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.js.map +1 -0
- package/dist/src/services/vaults/vaultMetaService/index.d.ts +4 -0
- package/dist/src/services/vaults/vaultMetaService/index.js +4 -0
- package/dist/src/services/vaults/vaultMetaService/index.js.map +1 -0
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.d.ts +71 -0
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.js +283 -0
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.js.map +1 -0
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.d.ts +20 -0
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.js +222 -0
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.js.map +1 -0
- package/dist/src/services/walletService/index.d.ts +3 -0
- package/dist/src/services/walletService/index.js +2 -0
- package/dist/src/services/walletService/index.js.map +1 -0
- package/dist/src/services/walletService/walletService.d.ts +19 -0
- package/dist/src/services/walletService/walletService.js +37 -0
- package/dist/src/services/walletService/walletService.js.map +1 -0
- package/dist/src/utils/accountComputations.d.ts +96 -0
- package/dist/src/utils/accountComputations.js +297 -0
- package/dist/src/utils/accountComputations.js.map +1 -0
- package/dist/src/utils/batch.d.ts +2 -0
- package/dist/src/utils/batch.js +51 -0
- package/dist/src/utils/batch.js.map +1 -0
- package/dist/src/utils/buildQuery.d.ts +19 -0
- package/dist/src/utils/buildQuery.js +72 -0
- package/dist/src/utils/buildQuery.js.map +1 -0
- package/dist/src/utils/callBundler.d.ts +32 -0
- package/dist/src/utils/callBundler.js +93 -0
- package/dist/src/utils/callBundler.js.map +1 -0
- package/dist/src/utils/decodeSmartContractErrors.d.ts +13 -0
- package/dist/src/utils/decodeSmartContractErrors.js +311 -0
- package/dist/src/utils/decodeSmartContractErrors.js.map +1 -0
- package/dist/src/utils/entityDiagnostics.d.ts +28 -0
- package/dist/src/utils/entityDiagnostics.js +72 -0
- package/dist/src/utils/entityDiagnostics.js.map +1 -0
- package/dist/src/utils/eulerErrorSelectors.d.ts +226 -0
- package/dist/src/utils/eulerErrorSelectors.js +227 -0
- package/dist/src/utils/eulerErrorSelectors.js.map +1 -0
- package/dist/src/utils/irm.d.ts +60 -0
- package/dist/src/utils/irm.js +213 -0
- package/dist/src/utils/irm.js.map +1 -0
- package/dist/src/utils/normalization.d.ts +30 -0
- package/dist/src/utils/normalization.js +79 -0
- package/dist/src/utils/normalization.js.map +1 -0
- package/dist/src/utils/oracle.d.ts +107 -0
- package/dist/src/utils/oracle.js +437 -0
- package/dist/src/utils/oracle.js.map +1 -0
- package/dist/src/utils/parsing.d.ts +29 -0
- package/dist/src/utils/parsing.js +199 -0
- package/dist/src/utils/parsing.js.map +1 -0
- package/dist/src/utils/queryNames.d.ts +28 -0
- package/dist/src/utils/queryNames.js +2 -0
- package/dist/src/utils/queryNames.js.map +1 -0
- package/dist/src/utils/stateOverrides/accessList.d.ts +14 -0
- package/dist/src/utils/stateOverrides/accessList.js +24 -0
- package/dist/src/utils/stateOverrides/accessList.js.map +1 -0
- package/dist/src/utils/stateOverrides/approvalOverrides.d.ts +20 -0
- package/dist/src/utils/stateOverrides/approvalOverrides.js +111 -0
- package/dist/src/utils/stateOverrides/approvalOverrides.js.map +1 -0
- package/dist/src/utils/stateOverrides/balanceOverrides.d.ts +13 -0
- package/dist/src/utils/stateOverrides/balanceOverrides.js +145 -0
- package/dist/src/utils/stateOverrides/balanceOverrides.js.map +1 -0
- package/dist/src/utils/stateOverrides/getStateOverrides.d.ts +31 -0
- package/dist/src/utils/stateOverrides/getStateOverrides.js +86 -0
- package/dist/src/utils/stateOverrides/getStateOverrides.js.map +1 -0
- package/dist/src/utils/stateOverrides/index.d.ts +4 -0
- package/dist/src/utils/stateOverrides/index.js +5 -0
- package/dist/src/utils/stateOverrides/index.js.map +1 -0
- package/dist/src/utils/stateOverrides/mergeStateOverrides.d.ts +6 -0
- package/dist/src/utils/stateOverrides/mergeStateOverrides.js +40 -0
- package/dist/src/utils/stateOverrides/mergeStateOverrides.js.map +1 -0
- package/dist/src/utils/stateOverrides/types.d.ts +5 -0
- package/dist/src/utils/stateOverrides/types.js +2 -0
- package/dist/src/utils/stateOverrides/types.js.map +1 -0
- package/dist/src/utils/subAccounts.d.ts +6 -0
- package/dist/src/utils/subAccounts.js +24 -0
- package/dist/src/utils/subAccounts.js.map +1 -0
- package/dist/src/utils/types.d.ts +20 -0
- package/dist/src/utils/types.js +8 -0
- package/dist/src/utils/types.js.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { getAddress } from "viem";
|
|
2
|
+
import { applyBuildQuery } from "../../utils/buildQuery.js";
|
|
3
|
+
const DEFAULT_BUY_DEADLINE_SECONDS = 15 * 60;
|
|
4
|
+
const FEE_FLOW_CONTROLLER_ABI = [
|
|
5
|
+
{
|
|
6
|
+
type: "function",
|
|
7
|
+
name: "getSlot0",
|
|
8
|
+
inputs: [],
|
|
9
|
+
outputs: [
|
|
10
|
+
{
|
|
11
|
+
type: "tuple",
|
|
12
|
+
components: [
|
|
13
|
+
{ name: "locked", type: "uint8" },
|
|
14
|
+
{ name: "epochId", type: "uint16" },
|
|
15
|
+
{ name: "initPrice", type: "uint192" },
|
|
16
|
+
{ name: "startTime", type: "uint40" },
|
|
17
|
+
],
|
|
18
|
+
},
|
|
19
|
+
],
|
|
20
|
+
stateMutability: "view",
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
type: "function",
|
|
24
|
+
name: "getPrice",
|
|
25
|
+
inputs: [],
|
|
26
|
+
outputs: [{ type: "uint256" }],
|
|
27
|
+
stateMutability: "view",
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
type: "function",
|
|
31
|
+
name: "paymentToken",
|
|
32
|
+
inputs: [],
|
|
33
|
+
outputs: [{ type: "address" }],
|
|
34
|
+
stateMutability: "view",
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
type: "function",
|
|
38
|
+
name: "paymentReceiver",
|
|
39
|
+
inputs: [],
|
|
40
|
+
outputs: [{ type: "address" }],
|
|
41
|
+
stateMutability: "view",
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
type: "function",
|
|
45
|
+
name: "epochPeriod",
|
|
46
|
+
inputs: [],
|
|
47
|
+
outputs: [{ type: "uint256" }],
|
|
48
|
+
stateMutability: "view",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
type: "function",
|
|
52
|
+
name: "priceMultiplier",
|
|
53
|
+
inputs: [],
|
|
54
|
+
outputs: [{ type: "uint256" }],
|
|
55
|
+
stateMutability: "view",
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
type: "function",
|
|
59
|
+
name: "minInitPrice",
|
|
60
|
+
inputs: [],
|
|
61
|
+
outputs: [{ type: "uint256" }],
|
|
62
|
+
stateMutability: "view",
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
type: "function",
|
|
66
|
+
name: "buy",
|
|
67
|
+
inputs: [
|
|
68
|
+
{ name: "assets", type: "address[]" },
|
|
69
|
+
{ name: "assetsReceiver", type: "address" },
|
|
70
|
+
{ name: "epochId", type: "uint256" },
|
|
71
|
+
{ name: "deadline", type: "uint256" },
|
|
72
|
+
{ name: "maxPaymentTokenAmount", type: "uint256" },
|
|
73
|
+
],
|
|
74
|
+
outputs: [{ type: "uint256" }],
|
|
75
|
+
stateMutability: "nonpayable",
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
export class FeeFlowService {
|
|
79
|
+
providerService;
|
|
80
|
+
deploymentService;
|
|
81
|
+
feeFlowControllerAddress;
|
|
82
|
+
feeFlowControllerUtilAddress;
|
|
83
|
+
defaultBuyDeadlineSeconds;
|
|
84
|
+
constructor(config, buildQuery) {
|
|
85
|
+
this.feeFlowControllerAddress = config?.feeFlowControllerAddress;
|
|
86
|
+
this.feeFlowControllerUtilAddress = config?.feeFlowControllerUtilAddress;
|
|
87
|
+
this.defaultBuyDeadlineSeconds =
|
|
88
|
+
config?.defaultBuyDeadlineSeconds ?? DEFAULT_BUY_DEADLINE_SECONDS;
|
|
89
|
+
if (buildQuery)
|
|
90
|
+
applyBuildQuery(this, buildQuery);
|
|
91
|
+
}
|
|
92
|
+
setProviderService(providerService) {
|
|
93
|
+
this.providerService = providerService;
|
|
94
|
+
}
|
|
95
|
+
setDeploymentService(deploymentService) {
|
|
96
|
+
this.deploymentService = deploymentService;
|
|
97
|
+
}
|
|
98
|
+
async fetchState(chainId) {
|
|
99
|
+
if (!this.providerService) {
|
|
100
|
+
throw new Error("FeeFlowService providerService is not set");
|
|
101
|
+
}
|
|
102
|
+
const feeFlowControllerAddress = this.resolveFeeFlowControllerAddress(chainId);
|
|
103
|
+
const feeFlowControllerUtilAddress = this.resolveFeeFlowControllerUtilAddress(chainId);
|
|
104
|
+
const provider = this.providerService.getProvider(chainId);
|
|
105
|
+
const [slot0Result, currentPrice, paymentToken, paymentReceiver, epochPeriod, priceMultiplier, minInitPrice,] = await provider.multicall({
|
|
106
|
+
contracts: [
|
|
107
|
+
{
|
|
108
|
+
address: feeFlowControllerAddress,
|
|
109
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
110
|
+
functionName: "getSlot0",
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
address: feeFlowControllerAddress,
|
|
114
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
115
|
+
functionName: "getPrice",
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
address: feeFlowControllerAddress,
|
|
119
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
120
|
+
functionName: "paymentToken",
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
address: feeFlowControllerAddress,
|
|
124
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
125
|
+
functionName: "paymentReceiver",
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
address: feeFlowControllerAddress,
|
|
129
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
130
|
+
functionName: "epochPeriod",
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
address: feeFlowControllerAddress,
|
|
134
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
135
|
+
functionName: "priceMultiplier",
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
address: feeFlowControllerAddress,
|
|
139
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
140
|
+
functionName: "minInitPrice",
|
|
141
|
+
},
|
|
142
|
+
],
|
|
143
|
+
allowFailure: false,
|
|
144
|
+
});
|
|
145
|
+
const slot0 = {
|
|
146
|
+
locked: Number(slot0Result.locked),
|
|
147
|
+
epochId: Number(slot0Result.epochId),
|
|
148
|
+
initPrice: slot0Result.initPrice,
|
|
149
|
+
startTime: Number(slot0Result.startTime),
|
|
150
|
+
};
|
|
151
|
+
const now = Math.floor(Date.now() / 1000);
|
|
152
|
+
const endTime = slot0.startTime + Number(epochPeriod);
|
|
153
|
+
const timeRemaining = Math.max(0, endTime - now);
|
|
154
|
+
return {
|
|
155
|
+
chainId,
|
|
156
|
+
feeFlowControllerAddress,
|
|
157
|
+
feeFlowControllerUtilAddress,
|
|
158
|
+
paymentToken: getAddress(paymentToken),
|
|
159
|
+
paymentReceiver: getAddress(paymentReceiver),
|
|
160
|
+
epochPeriod,
|
|
161
|
+
priceMultiplier,
|
|
162
|
+
minInitPrice,
|
|
163
|
+
currentPrice,
|
|
164
|
+
slot0,
|
|
165
|
+
now,
|
|
166
|
+
endTime,
|
|
167
|
+
timeRemaining,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
getEligibleVaults(vaults, chainId) {
|
|
171
|
+
if (vaults.length === 0)
|
|
172
|
+
return [];
|
|
173
|
+
const inferredChainId = chainId ?? vaults[0]?.chainId;
|
|
174
|
+
if (inferredChainId === undefined)
|
|
175
|
+
return [];
|
|
176
|
+
const feeFlowControllerAddress = this.resolveFeeFlowControllerAddress(inferredChainId);
|
|
177
|
+
return vaults.filter((vault) => vault.chainId === inferredChainId &&
|
|
178
|
+
getAddress(vault.fees.protocolFeeReceiver) === feeFlowControllerAddress);
|
|
179
|
+
}
|
|
180
|
+
async buildBuyPlan(args) {
|
|
181
|
+
const account = getAddress(args.account);
|
|
182
|
+
const recipient = getAddress(args.recipient ?? args.account);
|
|
183
|
+
const state = await this.fetchState(args.chainId);
|
|
184
|
+
const buyTarget = state.feeFlowControllerUtilAddress;
|
|
185
|
+
if (!buyTarget) {
|
|
186
|
+
throw new Error(`FeeFlow controller util address not configured for chainId ${args.chainId}`);
|
|
187
|
+
}
|
|
188
|
+
const spender = buyTarget;
|
|
189
|
+
const vaults = this.normalizeVaultAddresses(args.vaults);
|
|
190
|
+
if (vaults.length === 0) {
|
|
191
|
+
throw new Error("At least one vault is required to build a FeeFlow buy plan");
|
|
192
|
+
}
|
|
193
|
+
const deadline = args.deadline ??
|
|
194
|
+
BigInt(Math.floor(Date.now() / 1000) + this.defaultBuyDeadlineSeconds);
|
|
195
|
+
const maxPaymentTokenAmount = args.maxPaymentTokenAmount ?? state.currentPrice;
|
|
196
|
+
const approval = {
|
|
197
|
+
type: "requiredApproval",
|
|
198
|
+
token: state.paymentToken,
|
|
199
|
+
owner: account,
|
|
200
|
+
spender,
|
|
201
|
+
amount: maxPaymentTokenAmount,
|
|
202
|
+
};
|
|
203
|
+
const contractCall = {
|
|
204
|
+
type: "contractCall",
|
|
205
|
+
chainId: args.chainId,
|
|
206
|
+
to: buyTarget,
|
|
207
|
+
abi: FEE_FLOW_CONTROLLER_ABI,
|
|
208
|
+
functionName: "buy",
|
|
209
|
+
args: [
|
|
210
|
+
vaults,
|
|
211
|
+
recipient,
|
|
212
|
+
BigInt(state.slot0.epochId),
|
|
213
|
+
deadline,
|
|
214
|
+
maxPaymentTokenAmount,
|
|
215
|
+
],
|
|
216
|
+
value: 0n,
|
|
217
|
+
};
|
|
218
|
+
return [approval, contractCall];
|
|
219
|
+
}
|
|
220
|
+
normalizeVaultAddresses(vaults) {
|
|
221
|
+
return vaults.map((vault) => getAddress(typeof vault === "string" ? vault : vault.address));
|
|
222
|
+
}
|
|
223
|
+
resolveFeeFlowControllerAddress(chainId) {
|
|
224
|
+
const address = this.feeFlowControllerAddress ??
|
|
225
|
+
this.deploymentService?.getDeployment(chainId).addresses.peripheryAddrs
|
|
226
|
+
?.feeFlowController;
|
|
227
|
+
if (!address) {
|
|
228
|
+
throw new Error(`FeeFlow controller address not configured for chainId ${chainId}`);
|
|
229
|
+
}
|
|
230
|
+
return getAddress(address);
|
|
231
|
+
}
|
|
232
|
+
resolveFeeFlowControllerUtilAddress(chainId) {
|
|
233
|
+
const address = this.feeFlowControllerUtilAddress ??
|
|
234
|
+
this.deploymentService?.getDeployment(chainId).addresses.peripheryAddrs
|
|
235
|
+
?.feeFlowControllerUtil;
|
|
236
|
+
return address ? getAddress(address) : undefined;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=feeFlowService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feeFlowService.js","sourceRoot":"","sources":["../../../../src/services/feeFlowService/feeFlowService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { EVault } from "../../entities/EVault.js";
|
|
3
|
+
import type { TransactionPlan } from "../executionService/index.js";
|
|
4
|
+
export interface FeeFlowServiceConfig {
|
|
5
|
+
feeFlowControllerAddress?: Address;
|
|
6
|
+
feeFlowControllerUtilAddress?: Address;
|
|
7
|
+
defaultBuyDeadlineSeconds?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface FeeFlowSlot0 {
|
|
10
|
+
locked: number;
|
|
11
|
+
epochId: number;
|
|
12
|
+
initPrice: bigint;
|
|
13
|
+
startTime: number;
|
|
14
|
+
}
|
|
15
|
+
export interface FeeFlowState {
|
|
16
|
+
chainId: number;
|
|
17
|
+
feeFlowControllerAddress: Address;
|
|
18
|
+
feeFlowControllerUtilAddress?: Address;
|
|
19
|
+
paymentToken: Address;
|
|
20
|
+
paymentReceiver: Address;
|
|
21
|
+
epochPeriod: bigint;
|
|
22
|
+
priceMultiplier: bigint;
|
|
23
|
+
minInitPrice: bigint;
|
|
24
|
+
currentPrice: bigint;
|
|
25
|
+
slot0: FeeFlowSlot0;
|
|
26
|
+
now: number;
|
|
27
|
+
endTime: number;
|
|
28
|
+
timeRemaining: number;
|
|
29
|
+
}
|
|
30
|
+
export interface BuildFeeFlowBuyPlanArgs {
|
|
31
|
+
chainId: number;
|
|
32
|
+
account: Address;
|
|
33
|
+
vaults: Address[] | EVault[];
|
|
34
|
+
recipient?: Address;
|
|
35
|
+
deadline?: bigint;
|
|
36
|
+
maxPaymentTokenAmount?: bigint;
|
|
37
|
+
}
|
|
38
|
+
export interface IFeeFlowService {
|
|
39
|
+
fetchState(chainId: number): Promise<FeeFlowState>;
|
|
40
|
+
getEligibleVaults(vaults: EVault[], chainId?: number): EVault[];
|
|
41
|
+
buildBuyPlan(args: BuildFeeFlowBuyPlanArgs): Promise<TransactionPlan>;
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feeFlowServiceTypes.js","sourceRoot":"","sources":["../../../../src/services/feeFlowService/feeFlowServiceTypes.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/feeFlowService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import { type BuildQueryFn } from "../../../../utils/buildQuery.js";
|
|
3
|
+
import type { IntrinsicApyV3AdapterConfig, V3IntrinsicApyRow, V3ListEnvelope } from "./intrinsicApyV3AdapterTypes.js";
|
|
4
|
+
import type { IIntrinsicApyAdapter, IntrinsicApyInfo } from "../../intrinsicApyService.js";
|
|
5
|
+
export declare class IntrinsicApyV3Adapter implements IIntrinsicApyAdapter {
|
|
6
|
+
private config;
|
|
7
|
+
constructor(config: IntrinsicApyV3AdapterConfig, buildQuery?: BuildQueryFn);
|
|
8
|
+
setConfig(config: IntrinsicApyV3AdapterConfig): void;
|
|
9
|
+
private getHeaders;
|
|
10
|
+
private buildUrl;
|
|
11
|
+
queryV3IntrinsicApysPage: (endpoint: string, chainId: number, offset: number, limit: number, assets?: Address[]) => Promise<V3ListEnvelope<V3IntrinsicApyRow>>;
|
|
12
|
+
private mapRowsToApyMap;
|
|
13
|
+
private fetchChunkedIntrinsicApys;
|
|
14
|
+
queryV3IntrinsicApy: (key: {
|
|
15
|
+
chainId: number;
|
|
16
|
+
assetAddress: Address;
|
|
17
|
+
}) => Promise<IntrinsicApyInfo | undefined>;
|
|
18
|
+
setQueryV3IntrinsicApy(fn: typeof this.queryV3IntrinsicApy): void;
|
|
19
|
+
fetchIntrinsicApy(chainId: number, assetAddress: Address): Promise<IntrinsicApyInfo | undefined>;
|
|
20
|
+
fetchChainIntrinsicApys(chainId: number, assetAddresses?: Address[]): Promise<Map<string, IntrinsicApyInfo>>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { applyBuildQuery, } from "../../../../utils/buildQuery.js";
|
|
2
|
+
import { createCallBundler } from "../../../../utils/callBundler.js";
|
|
3
|
+
const DEFAULT_PAGE_SIZE = 100;
|
|
4
|
+
const DEFAULT_MAX_ASSETS_PER_REQUEST = 50;
|
|
5
|
+
const normalize = (addr) => addr.toLowerCase();
|
|
6
|
+
export class IntrinsicApyV3Adapter {
|
|
7
|
+
config;
|
|
8
|
+
constructor(config, buildQuery) {
|
|
9
|
+
this.config = config;
|
|
10
|
+
if (buildQuery)
|
|
11
|
+
applyBuildQuery(this, buildQuery);
|
|
12
|
+
}
|
|
13
|
+
setConfig(config) {
|
|
14
|
+
this.config = config;
|
|
15
|
+
}
|
|
16
|
+
getHeaders() {
|
|
17
|
+
return {
|
|
18
|
+
Accept: "application/json",
|
|
19
|
+
...(this.config.apiKey ? { "X-API-Key": this.config.apiKey } : {}),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
buildUrl(endpoint, path, search) {
|
|
23
|
+
const normalizedEndpoint = endpoint.replace(/\/+$/, "");
|
|
24
|
+
const joined = normalizedEndpoint.startsWith("http://") ||
|
|
25
|
+
normalizedEndpoint.startsWith("https://")
|
|
26
|
+
? new URL(path, `${normalizedEndpoint}/`).toString()
|
|
27
|
+
: `${normalizedEndpoint}${path}`;
|
|
28
|
+
if (!search || Object.keys(search).length === 0)
|
|
29
|
+
return joined;
|
|
30
|
+
const params = new URLSearchParams(search);
|
|
31
|
+
return `${joined}?${params.toString()}`;
|
|
32
|
+
}
|
|
33
|
+
queryV3IntrinsicApysPage = async (endpoint, chainId, offset, limit, assets) => {
|
|
34
|
+
const url = this.buildUrl(endpoint, "/v3/apys/intrinsic", {
|
|
35
|
+
chainId: String(chainId),
|
|
36
|
+
offset: String(offset),
|
|
37
|
+
limit: String(limit),
|
|
38
|
+
...(assets?.length ? { assets: assets.join(",") } : {}),
|
|
39
|
+
});
|
|
40
|
+
const response = await fetch(url, {
|
|
41
|
+
method: "GET",
|
|
42
|
+
headers: this.getHeaders(),
|
|
43
|
+
});
|
|
44
|
+
if (!response.ok) {
|
|
45
|
+
throw new Error(`intrinsicApyV3 ${response.status} ${response.statusText}`);
|
|
46
|
+
}
|
|
47
|
+
return response.json();
|
|
48
|
+
};
|
|
49
|
+
mapRowsToApyMap(rows) {
|
|
50
|
+
const apyMap = new Map();
|
|
51
|
+
for (const row of rows) {
|
|
52
|
+
if (!row.address || typeof row.apy !== "number" || !row.provider)
|
|
53
|
+
continue;
|
|
54
|
+
apyMap.set(normalize(row.address), {
|
|
55
|
+
apy: row.apy,
|
|
56
|
+
provider: row.provider,
|
|
57
|
+
source: row.source,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
return apyMap;
|
|
61
|
+
}
|
|
62
|
+
async fetchChunkedIntrinsicApys(chainId, assetAddresses) {
|
|
63
|
+
const uniqueAssetAddresses = [
|
|
64
|
+
...new Set(assetAddresses.map((address) => normalize(address))),
|
|
65
|
+
];
|
|
66
|
+
const apyMap = new Map();
|
|
67
|
+
const maxAssetsPerRequest = Math.max(1, this.config.maxAssetsPerRequest ?? DEFAULT_MAX_ASSETS_PER_REQUEST);
|
|
68
|
+
const chunks = [];
|
|
69
|
+
for (let offset = 0; offset < uniqueAssetAddresses.length; offset += maxAssetsPerRequest) {
|
|
70
|
+
chunks.push(uniqueAssetAddresses.slice(offset, offset + maxAssetsPerRequest));
|
|
71
|
+
}
|
|
72
|
+
const pages = await Promise.all(chunks.map((chunk) => this.queryV3IntrinsicApysPage(this.config.endpoint, chainId, 0, Math.max(chunk.length, DEFAULT_PAGE_SIZE), chunk)));
|
|
73
|
+
for (const page of pages) {
|
|
74
|
+
const rows = Array.isArray(page.data) ? page.data : [];
|
|
75
|
+
for (const [address, info] of this.mapRowsToApyMap(rows)) {
|
|
76
|
+
apyMap.set(address, info);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return apyMap;
|
|
80
|
+
}
|
|
81
|
+
queryV3IntrinsicApy = createCallBundler(async (keys) => {
|
|
82
|
+
const byChain = new Map();
|
|
83
|
+
for (const key of keys) {
|
|
84
|
+
const addresses = byChain.get(key.chainId) ?? [];
|
|
85
|
+
addresses.push(key.assetAddress);
|
|
86
|
+
byChain.set(key.chainId, addresses);
|
|
87
|
+
}
|
|
88
|
+
const chainResults = new Map();
|
|
89
|
+
for (const [chainId, assetAddresses] of byChain) {
|
|
90
|
+
const apyMap = await this.fetchChunkedIntrinsicApys(chainId, assetAddresses);
|
|
91
|
+
chainResults.set(chainId, apyMap);
|
|
92
|
+
}
|
|
93
|
+
return keys.map((key) => chainResults.get(key.chainId)?.get(normalize(key.assetAddress)));
|
|
94
|
+
}, {
|
|
95
|
+
maxBatchSize: DEFAULT_MAX_ASSETS_PER_REQUEST,
|
|
96
|
+
});
|
|
97
|
+
setQueryV3IntrinsicApy(fn) {
|
|
98
|
+
this.queryV3IntrinsicApy = fn;
|
|
99
|
+
}
|
|
100
|
+
async fetchIntrinsicApy(chainId, assetAddress) {
|
|
101
|
+
return this.queryV3IntrinsicApy({ chainId, assetAddress });
|
|
102
|
+
}
|
|
103
|
+
async fetchChainIntrinsicApys(chainId, assetAddresses) {
|
|
104
|
+
if (assetAddresses?.length) {
|
|
105
|
+
return this.fetchChunkedIntrinsicApys(chainId, assetAddresses);
|
|
106
|
+
}
|
|
107
|
+
const pageSize = Math.max(1, this.config.pageSize ?? DEFAULT_PAGE_SIZE);
|
|
108
|
+
const apyMap = new Map();
|
|
109
|
+
let offset = 0;
|
|
110
|
+
for (;;) {
|
|
111
|
+
const page = await this.queryV3IntrinsicApysPage(this.config.endpoint, chainId, offset, pageSize);
|
|
112
|
+
const rows = Array.isArray(page.data) ? page.data : [];
|
|
113
|
+
for (const [address, info] of this.mapRowsToApyMap(rows)) {
|
|
114
|
+
apyMap.set(address, info);
|
|
115
|
+
}
|
|
116
|
+
if (rows.length < pageSize)
|
|
117
|
+
break;
|
|
118
|
+
offset += rows.length;
|
|
119
|
+
if (typeof page.meta?.total === "number" && offset >= page.meta.total)
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
return apyMap;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=intrinsicApyV3Adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intrinsicApyV3Adapter.js","sourceRoot":"","sources":["../../../../../../src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3Adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,eAAe,GACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAWrE,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAE1C,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAE/D,MAAM,OAAO,qBAAqB;IAExB;IADT,YACS,MAAmC,EAC3C,UAAyB;QADjB,WAAM,GAAN,MAAM,CAA6B;QAG3C,IAAI,UAAU;YAAE,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,SAAS,CAAC,MAAmC;QAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAEO,UAAU;QACjB,OAAO;YACN,MAAM,EAAE,kBAAkB;YAC1B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;IACH,CAAC;IAEO,QAAQ,CACf,QAAgB,EAChB,IAAY,EACZ,MAA+B;QAE/B,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACxD,MAAM,MAAM,GACX,kBAAkB,CAAC,UAAU,CAAC,SAAS,CAAC;YACxC,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC;YACxC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,kBAAkB,GAAG,CAAC,CAAC,QAAQ,EAAE;YACpD,CAAC,CAAC,GAAG,kBAAkB,GAAG,IAAI,EAAE,CAAC;QAEnC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC;QAE/D,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;QAC3C,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;IACzC,CAAC;IAED,wBAAwB,GAAG,KAAK,EAC/B,QAAgB,EAChB,OAAe,EACf,MAAc,EACd,KAAa,EACb,MAAkB,EAC2B,EAAE;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,EAAE;YACzD,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;YACxB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;YACpB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YACjC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACd,kBAAkB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAC1D,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAAgD,CAAC;IACtE,CAAC,CAAC;IAEM,eAAe,CACtB,IAAyB;QAEzB,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;QAEnD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ;gBAAE,SAAS;YAC3E,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAClC,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,MAAM,EAAE,GAAG,CAAC,MAAM;aAClB,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACtC,OAAe,EACf,cAAyB;QAEzB,MAAM,oBAAoB,GAAG;YAC5B,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;SAClD,CAAC;QACf,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;QACnD,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CACnC,CAAC,EACD,IAAI,CAAC,MAAM,CAAC,mBAAmB,IAAI,8BAA8B,CACjE,CAAC;QACF,MAAM,MAAM,GAAgB,EAAE,CAAC;QAC/B,KACC,IAAI,MAAM,GAAG,CAAC,EACd,MAAM,GAAG,oBAAoB,CAAC,MAAM,EACpC,MAAM,IAAI,mBAAmB,EAC5B,CAAC;YACF,MAAM,CAAC,IAAI,CACV,oBAAoB,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,CAChE,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACpB,IAAI,CAAC,wBAAwB,CAC5B,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,OAAO,EACP,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,EACzC,KAAK,CACL,CACD,CACD,CAAC;QAEF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3B,CAAC;QACF,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAED,mBAAmB,GAAG,iBAAiB,CACtC,KAAK,EACJ,IAAkD,EACN,EAAE;QAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;QAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACjD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyC,CAAC;QAEtE,KAAK,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,OAAO,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAClD,OAAO,EACP,cAAc,CACd,CAAC;YACF,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACvB,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAC/D,CAAC;IACH,CAAC,EACD;QACC,YAAY,EAAE,8BAA8B;KAC5C,CACD,CAAC;IAEF,sBAAsB,CAAC,EAAmC;QACzD,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,iBAAiB,CACtB,OAAe,EACf,YAAqB;QAErB,OAAO,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC5B,OAAe,EACf,cAA0B;QAE1B,IAAI,cAAc,EAAE,MAAM,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,iBAAiB,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;QACnD,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,SAAS,CAAC;YACT,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC/C,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,OAAO,EACP,MAAM,EACN,QAAQ,CACR,CAAC;YACF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAEvD,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3B,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ;gBAAE,MAAM;YAClC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;YACtB,IAAI,OAAO,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,MAAM;QAC9E,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;CACD"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export interface IntrinsicApyV3AdapterConfig {
|
|
2
|
+
/** Base HTTP endpoint, for example `https://v3staging.eul.dev`. */
|
|
3
|
+
endpoint: string;
|
|
4
|
+
/** Optional API key sent as `X-API-Key` on V3 HTTP requests. */
|
|
5
|
+
apiKey?: string;
|
|
6
|
+
/** Optional page size override used when fetching paginated intrinsic APYs. */
|
|
7
|
+
pageSize?: number;
|
|
8
|
+
/**
|
|
9
|
+
* Optional max number of asset addresses sent in a single filtered request.
|
|
10
|
+
* Used by the bundled single-asset query path to avoid oversized URLs.
|
|
11
|
+
*/
|
|
12
|
+
maxAssetsPerRequest?: number;
|
|
13
|
+
}
|
|
14
|
+
export type V3ListEnvelope<T> = {
|
|
15
|
+
data?: T[];
|
|
16
|
+
meta?: {
|
|
17
|
+
total?: number;
|
|
18
|
+
offset?: number;
|
|
19
|
+
limit?: number;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
export type V3IntrinsicApyRow = {
|
|
23
|
+
chainId: number;
|
|
24
|
+
address: string;
|
|
25
|
+
symbol?: string;
|
|
26
|
+
apy?: number;
|
|
27
|
+
provider?: string;
|
|
28
|
+
source?: string;
|
|
29
|
+
timestamp?: string;
|
|
30
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intrinsicApyV3AdapterTypes.js","sourceRoot":"","sources":["../../../../../../src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { IntrinsicApyService } from "./intrinsicApyService.js";
|
|
2
|
+
export { IntrinsicApyV3Adapter } from "./adapters/intrinsicApyV3Adapter/index.js";
|
|
3
|
+
export type { IIntrinsicApyAdapter, IIntrinsicApyService, IntrinsicApyInfo, IntrinsicApyServiceConfig, } from "./intrinsicApyService.js";
|
|
4
|
+
export type { IntrinsicApyV3AdapterConfig } from "./adapters/intrinsicApyV3Adapter/index.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/intrinsicApyService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { ERC4626Vault } from "../../entities/ERC4626Vault.js";
|
|
3
|
+
import type { IntrinsicApyV3AdapterConfig } from "./adapters/intrinsicApyV3Adapter/index.js";
|
|
4
|
+
export interface IntrinsicApyInfo {
|
|
5
|
+
apy: number;
|
|
6
|
+
provider: string;
|
|
7
|
+
source?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface IntrinsicApyServiceConfig {
|
|
10
|
+
v3AdapterConfig?: IntrinsicApyV3AdapterConfig;
|
|
11
|
+
}
|
|
12
|
+
export interface IIntrinsicApyService {
|
|
13
|
+
fetchIntrinsicApy(chainId: number, assetAddress: Address): Promise<IntrinsicApyInfo | undefined>;
|
|
14
|
+
fetchChainIntrinsicApys(chainId: number): Promise<Map<string, IntrinsicApyInfo>>;
|
|
15
|
+
populateIntrinsicApy(vaults: ERC4626Vault[]): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
export interface IIntrinsicApyAdapter {
|
|
18
|
+
fetchIntrinsicApy(chainId: number, assetAddress: Address): Promise<IntrinsicApyInfo | undefined>;
|
|
19
|
+
fetchChainIntrinsicApys(chainId: number, assetAddresses?: Address[]): Promise<Map<string, IntrinsicApyInfo>>;
|
|
20
|
+
}
|
|
21
|
+
export declare class IntrinsicApyService implements IIntrinsicApyService {
|
|
22
|
+
private adapter;
|
|
23
|
+
constructor(adapter: IIntrinsicApyAdapter);
|
|
24
|
+
setAdapter(adapter: IIntrinsicApyAdapter): void;
|
|
25
|
+
fetchIntrinsicApy(chainId: number, assetAddress: Address): Promise<IntrinsicApyInfo | undefined>;
|
|
26
|
+
fetchChainIntrinsicApys(chainId: number): Promise<Map<string, IntrinsicApyInfo>>;
|
|
27
|
+
populateIntrinsicApy(vaults: ERC4626Vault[]): Promise<void>;
|
|
28
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export class IntrinsicApyService {
|
|
2
|
+
adapter;
|
|
3
|
+
constructor(adapter) {
|
|
4
|
+
this.adapter = adapter;
|
|
5
|
+
}
|
|
6
|
+
setAdapter(adapter) {
|
|
7
|
+
this.adapter = adapter;
|
|
8
|
+
}
|
|
9
|
+
async fetchIntrinsicApy(chainId, assetAddress) {
|
|
10
|
+
return this.adapter.fetchIntrinsicApy(chainId, assetAddress);
|
|
11
|
+
}
|
|
12
|
+
async fetchChainIntrinsicApys(chainId) {
|
|
13
|
+
return this.adapter.fetchChainIntrinsicApys(chainId);
|
|
14
|
+
}
|
|
15
|
+
async populateIntrinsicApy(vaults) {
|
|
16
|
+
if (vaults.length === 0)
|
|
17
|
+
return;
|
|
18
|
+
const byChain = new Map();
|
|
19
|
+
for (const vault of vaults) {
|
|
20
|
+
const arr = byChain.get(vault.chainId) ?? [];
|
|
21
|
+
arr.push(vault);
|
|
22
|
+
byChain.set(vault.chainId, arr);
|
|
23
|
+
}
|
|
24
|
+
await Promise.all(Array.from(byChain.entries()).map(async ([chainId, chainVaults]) => {
|
|
25
|
+
const assetAddresses = Array.from(new Map(chainVaults.map((vault) => [
|
|
26
|
+
vault.asset.address.toLowerCase(),
|
|
27
|
+
vault.asset.address,
|
|
28
|
+
])).entries())
|
|
29
|
+
.sort(([left], [right]) => left.localeCompare(right))
|
|
30
|
+
.map(([, address]) => address);
|
|
31
|
+
const apyMap = await this.adapter.fetchChainIntrinsicApys(chainId, assetAddresses);
|
|
32
|
+
for (const vault of chainVaults) {
|
|
33
|
+
const info = apyMap.get(vault.asset.address.toLowerCase());
|
|
34
|
+
if (info) {
|
|
35
|
+
vault.intrinsicApy = info;
|
|
36
|
+
}
|
|
37
|
+
vault.populated.intrinsicApy = true;
|
|
38
|
+
}
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=intrinsicApyService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intrinsicApyService.js","sourceRoot":"","sources":["../../../../src/services/intrinsicApyService/intrinsicApyService.ts"],"names":[],"mappings":"AAoCA,MAAM,OAAO,mBAAmB;IACX;IAApB,YAAoB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;IAAG,CAAC;IAErD,UAAU,CAAC,OAA6B;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACtB,OAAe,EACf,YAAqB;QAErB,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC5B,OAAe;QAEf,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,MAAsB;QAChD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEhC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;QAClD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC7C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE;YAClE,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAChC,IAAI,GAAG,CACN,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC1B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;gBACjC,KAAK,CAAC,KAAK,CAAC,OAAO;aACnB,CAAC,CACF,CAAC,OAAO,EAAE,CACX;iBACC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;iBACpD,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CACxD,OAAO,EACP,cAAc,CACd,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC3D,IAAI,IAAI,EAAE,CAAC;oBACV,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC3B,CAAC;gBACD,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;YACrC,CAAC;QACF,CAAC,CAAC,CACF,CAAC;IACH,CAAC;CACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { OracleAdapterService, type IOracleAdapterService, type OracleAdapterMetadata, type OracleAdapterCheck, type EnrichedOracleAdapterEntry, type OracleAdapterServiceConfig, } from "./oracleAdapterService.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/oracleAdapterService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,oBAAoB,GAMpB,MAAM,2BAA2B,CAAC"}
|