@eulerxyz/euler-v2-sdk 0.1.3-beta → 0.2.1-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/README.md +24 -25
- package/dist/src/entities/Account.d.ts +50 -49
- package/dist/src/entities/Account.d.ts.map +1 -1
- package/dist/src/entities/Account.js +80 -66
- package/dist/src/entities/Account.js.map +1 -1
- package/dist/src/entities/ERC4626Vault.d.ts +6 -5
- package/dist/src/entities/ERC4626Vault.d.ts.map +1 -1
- package/dist/src/entities/ERC4626Vault.js +13 -6
- package/dist/src/entities/ERC4626Vault.js.map +1 -1
- package/dist/src/entities/EVault.d.ts +30 -15
- package/dist/src/entities/EVault.d.ts.map +1 -1
- package/dist/src/entities/EVault.js +66 -14
- package/dist/src/entities/EVault.js.map +1 -1
- package/dist/src/entities/EulerEarn.d.ts +3 -0
- package/dist/src/entities/EulerEarn.d.ts.map +1 -1
- package/dist/src/entities/EulerEarn.js +12 -3
- package/dist/src/entities/EulerEarn.js.map +1 -1
- package/dist/src/entities/EulerLabels.d.ts +74 -0
- package/dist/src/entities/EulerLabels.d.ts.map +1 -1
- package/dist/src/entities/Portfolio.d.ts +20 -19
- package/dist/src/entities/Portfolio.d.ts.map +1 -1
- package/dist/src/entities/Portfolio.js +34 -17
- package/dist/src/entities/Portfolio.js.map +1 -1
- package/dist/src/entities/Wallet.d.ts +1 -0
- package/dist/src/entities/Wallet.d.ts.map +1 -1
- package/dist/src/entities/Wallet.js +2 -2
- package/dist/src/entities/Wallet.js.map +1 -1
- package/dist/src/index.d.ts +4 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/plugins/keyring/keyringPlugin.d.ts.map +1 -1
- package/dist/src/plugins/keyring/keyringPlugin.js +59 -10
- package/dist/src/plugins/keyring/keyringPlugin.js.map +1 -1
- package/dist/src/plugins/pyth/pythPlugin.d.ts.map +1 -1
- package/dist/src/plugins/pyth/pythPlugin.js +132 -11
- package/dist/src/plugins/pyth/pythPlugin.js.map +1 -1
- package/dist/src/plugins/types.d.ts +4 -7
- package/dist/src/plugins/types.d.ts.map +1 -1
- package/dist/src/plugins/types.js.map +1 -1
- package/dist/src/sdk/buildSDK.d.ts +10 -4
- package/dist/src/sdk/buildSDK.d.ts.map +1 -1
- package/dist/src/sdk/buildSDK.js +359 -110
- package/dist/src/sdk/buildSDK.js.map +1 -1
- package/dist/src/sdk/config.d.ts +74 -0
- package/dist/src/sdk/config.d.ts.map +1 -0
- package/dist/src/sdk/config.js +187 -0
- package/dist/src/sdk/config.js.map +1 -0
- package/dist/src/sdk/defaultConfig.d.ts +5 -2
- package/dist/src/sdk/defaultConfig.d.ts.map +1 -1
- package/dist/src/sdk/defaultConfig.js +21 -18
- package/dist/src/sdk/defaultConfig.js.map +1 -1
- package/dist/src/sdk/sdk.d.ts +4 -3
- package/dist/src/sdk/sdk.d.ts.map +1 -1
- package/dist/src/sdk/sdk.js +2 -4
- package/dist/src/sdk/sdk.js.map +1 -1
- package/dist/src/services/accountService/accountService.d.ts.map +1 -1
- package/dist/src/services/accountService/accountService.js +10 -7
- package/dist/src/services/accountService/accountService.js.map +1 -1
- package/dist/src/services/accountService/accountServiceConfig.d.ts +1 -1
- package/dist/src/services/accountService/accountServiceConfig.d.ts.map +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.d.ts +2 -2
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.d.ts.map +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js +22 -17
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js.map +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.d.ts +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js +16 -17
- package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountOnchainAdapter.js.map +1 -1
- package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.d.ts.map +1 -1
- package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.js +58 -53
- package/dist/src/services/accountService/adapters/accountV3Adapter/accountV3Adapter.js.map +1 -1
- package/dist/src/services/deploymentService/deploymentService.d.ts +1 -0
- package/dist/src/services/deploymentService/deploymentService.d.ts.map +1 -1
- package/dist/src/services/deploymentService/deploymentService.js.map +1 -1
- package/dist/src/services/eulerLabelsService/eulerLabelsService.d.ts +18 -1
- package/dist/src/services/eulerLabelsService/eulerLabelsService.d.ts.map +1 -1
- package/dist/src/services/eulerLabelsService/eulerLabelsService.js +373 -30
- package/dist/src/services/eulerLabelsService/eulerLabelsService.js.map +1 -1
- package/dist/src/services/executionService/encode.d.ts +15 -11
- package/dist/src/services/executionService/encode.d.ts.map +1 -1
- package/dist/src/services/executionService/encode.js +242 -23
- package/dist/src/services/executionService/encode.js.map +1 -1
- package/dist/src/services/executionService/execute.d.ts +2 -1
- package/dist/src/services/executionService/execute.d.ts.map +1 -1
- package/dist/src/services/executionService/execute.js +10 -6
- package/dist/src/services/executionService/execute.js.map +1 -1
- package/dist/src/services/executionService/executionService.d.ts +45 -7
- package/dist/src/services/executionService/executionService.d.ts.map +1 -1
- package/dist/src/services/executionService/executionService.js +325 -20
- package/dist/src/services/executionService/executionService.js.map +1 -1
- package/dist/src/services/executionService/executionServiceTypes.d.ts +109 -1
- package/dist/src/services/executionService/executionServiceTypes.d.ts.map +1 -1
- package/dist/src/services/executionService/executionServiceTypes.js.map +1 -1
- package/dist/src/services/executionService/index.d.ts +1 -1
- package/dist/src/services/executionService/index.d.ts.map +1 -1
- package/dist/src/services/executionService/index.js.map +1 -1
- package/dist/src/services/executionService/simulate.d.ts.map +1 -1
- package/dist/src/services/executionService/simulate.js +3 -2
- package/dist/src/services/executionService/simulate.js.map +1 -1
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.d.ts +1 -1
- package/dist/src/services/intrinsicApyService/adapters/intrinsicApyV3Adapter/intrinsicApyV3AdapterTypes.d.ts.map +1 -1
- package/dist/src/services/oracleAdapterService/oracleAdapterService.d.ts +5 -0
- package/dist/src/services/oracleAdapterService/oracleAdapterService.d.ts.map +1 -1
- package/dist/src/services/oracleAdapterService/oracleAdapterService.js +38 -11
- package/dist/src/services/oracleAdapterService/oracleAdapterService.js.map +1 -1
- package/dist/src/services/priceService/backendClient.d.ts +7 -11
- package/dist/src/services/priceService/backendClient.d.ts.map +1 -1
- package/dist/src/services/priceService/backendClient.js +7 -14
- package/dist/src/services/priceService/backendClient.js.map +1 -1
- package/dist/src/services/priceService/index.d.ts +2 -2
- package/dist/src/services/priceService/index.d.ts.map +1 -1
- package/dist/src/services/priceService/index.js +1 -1
- package/dist/src/services/priceService/index.js.map +1 -1
- package/dist/src/services/priceService/priceService.d.ts +21 -18
- package/dist/src/services/priceService/priceService.d.ts.map +1 -1
- package/dist/src/services/priceService/priceService.js +61 -101
- package/dist/src/services/priceService/priceService.js.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.d.ts +4 -1
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.d.ts.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js +20 -4
- package/dist/src/services/rewardsService/adapters/rewardsDirectAdapter/rewardsDirectAdapter.js.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.d.ts.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js +5 -2
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3Adapter.js.map +1 -1
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.d.ts +2 -0
- package/dist/src/services/rewardsService/adapters/rewardsV3Adapter/rewardsV3AdapterTypes.d.ts.map +1 -1
- package/dist/src/services/rewardsService/rewardsService.d.ts +6 -1
- package/dist/src/services/rewardsService/rewardsService.d.ts.map +1 -1
- package/dist/src/services/rewardsService/rewardsService.js +128 -3
- package/dist/src/services/rewardsService/rewardsService.js.map +1 -1
- package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts +5 -3
- package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts.map +1 -1
- package/dist/src/services/swapService/swapService.d.ts +4 -6
- package/dist/src/services/swapService/swapService.d.ts.map +1 -1
- package/dist/src/services/swapService/swapService.js +90 -99
- package/dist/src/services/swapService/swapService.js.map +1 -1
- package/dist/src/services/swapService/swapVerification.d.ts +28 -0
- package/dist/src/services/swapService/swapVerification.d.ts.map +1 -0
- package/dist/src/services/swapService/swapVerification.js +138 -0
- package/dist/src/services/swapService/swapVerification.js.map +1 -0
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.d.ts +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js +6 -13
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.d.ts +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js +69 -51
- package/dist/src/services/vaults/eVaultService/adapters/eVaultOnchainAdapter/vaultInfoConverter.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.d.ts +5 -2
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js +50 -18
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.d.ts +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js +106 -111
- package/dist/src/services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3AdapterConversions.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/eVaultService.d.ts +4 -4
- package/dist/src/services/vaults/eVaultService/eVaultService.d.ts.map +1 -1
- package/dist/src/services/vaults/eVaultService/eVaultService.js +56 -57
- package/dist/src/services/vaults/eVaultService/eVaultService.js.map +1 -1
- package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.d.ts +1 -1
- package/dist/src/services/vaults/eVaultService/eVaultServiceConfig.d.ts.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.d.ts +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.d.ts.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.js +22 -21
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnInfoConverter.js.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js +27 -32
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnOnchainAdapter.js.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.d.ts +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.d.ts.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.js +113 -72
- package/dist/src/services/vaults/eulerEarnService/adapters/eulerEarnV3Adapter.js.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.d.ts +5 -5
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.d.ts.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.js +30 -28
- package/dist/src/services/vaults/eulerEarnService/eulerEarnService.js.map +1 -1
- package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.d.ts +1 -1
- package/dist/src/services/vaults/eulerEarnService/eulerEarnServiceConfig.d.ts.map +1 -1
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.d.ts +1 -1
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.d.ts.map +1 -1
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.js +10 -7
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultInfoConverter.js.map +1 -1
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.js +6 -8
- package/dist/src/services/vaults/securitizeVaultService/adapters/securitizeVaultOnchainAdapter.js.map +1 -1
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.d.ts +2 -2
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.d.ts.map +1 -1
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.js +13 -18
- package/dist/src/services/vaults/securitizeVaultService/securitizeVaultService.js.map +1 -1
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.d.ts +1 -1
- package/dist/src/services/vaults/vaultMetaService/adapters/VaultTypeV3Adapter.d.ts.map +1 -1
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.d.ts +3 -3
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.d.ts.map +1 -1
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.js +31 -32
- package/dist/src/services/vaults/vaultMetaService/vaultMetaService.js.map +1 -1
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.d.ts +5 -1
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.d.ts.map +1 -1
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.js +181 -40
- package/dist/src/services/walletService/adapters/walletOnchainAdapter.js.map +1 -1
- package/dist/src/services/walletService/walletService.d.ts +1 -1
- package/dist/src/services/walletService/walletService.d.ts.map +1 -1
- package/dist/src/services/walletService/walletService.js +4 -3
- package/dist/src/services/walletService/walletService.js.map +1 -1
- package/dist/src/utils/accountComputations.d.ts +14 -13
- package/dist/src/utils/accountComputations.d.ts.map +1 -1
- package/dist/src/utils/accountComputations.js +59 -37
- package/dist/src/utils/accountComputations.js.map +1 -1
- package/dist/src/utils/buildQuery.d.ts +1 -0
- package/dist/src/utils/buildQuery.d.ts.map +1 -1
- package/dist/src/utils/buildQuery.js +1 -1
- package/dist/src/utils/buildQuery.js.map +1 -1
- package/dist/src/utils/entityDiagnostics.d.ts +75 -12
- package/dist/src/utils/entityDiagnostics.d.ts.map +1 -1
- package/dist/src/utils/entityDiagnostics.js +85 -19
- package/dist/src/utils/entityDiagnostics.js.map +1 -1
- package/dist/src/utils/eulerLabels.d.ts +34 -0
- package/dist/src/utils/eulerLabels.d.ts.map +1 -0
- package/dist/src/utils/eulerLabels.js +156 -0
- package/dist/src/utils/eulerLabels.js.map +1 -0
- package/dist/src/utils/healthCheckSets.d.ts +14 -0
- package/dist/src/utils/healthCheckSets.d.ts.map +1 -0
- package/dist/src/utils/healthCheckSets.js +174 -0
- package/dist/src/utils/healthCheckSets.js.map +1 -0
- package/dist/src/utils/normalization.d.ts +10 -4
- package/dist/src/utils/normalization.d.ts.map +1 -1
- package/dist/src/utils/normalization.js +38 -11
- package/dist/src/utils/normalization.js.map +1 -1
- package/dist/src/utils/oracle.d.ts.map +1 -1
- package/dist/src/utils/oracle.js +12 -1
- package/dist/src/utils/oracle.js.map +1 -1
- package/dist/src/utils/parsing.d.ts +2 -2
- package/dist/src/utils/parsing.d.ts.map +1 -1
- package/dist/src/utils/parsing.js +12 -22
- package/dist/src/utils/parsing.js.map +1 -1
- package/package.json +1 -1
package/dist/src/sdk/buildSDK.js
CHANGED
|
@@ -22,41 +22,238 @@ import { PriceService, PricingBackendClient, } from "../services/priceService/in
|
|
|
22
22
|
import { RewardsDirectAdapter, RewardsService, RewardsV3Adapter, } from "../services/rewardsService/index.js";
|
|
23
23
|
import { IntrinsicApyService, IntrinsicApyV3Adapter, } from "../services/intrinsicApyService/index.js";
|
|
24
24
|
import { OracleAdapterService, } from "../services/oracleAdapterService/index.js";
|
|
25
|
-
import { defaultAccountV3AdapterConfig, defaultAccountVaultsAdapterConfig,
|
|
25
|
+
import { DEFAULT_EULER_LABELS_BASE_URL, DEFAULT_TOKENLIST_API_BASE_URL, defaultAccountV3AdapterConfig, defaultAccountVaultsAdapterConfig, defaultDeploymentServiceConfig, defaultEulerEarnV3AdapterConfig, defaultEulerLabelsURLAdapterConfig, defaultIntrinsicApyV3AdapterConfig, defaultPricingServiceConfig, defaultRewardsV3AdapterConfig, defaultSwapServiceConfig, defaultTokenlistServiceConfig, defaultVaultTypeAdapterConfig, } from "./defaultConfig.js";
|
|
26
26
|
import { defaultEVaultV3AdapterConfig } from "./defaultConfig.js";
|
|
27
27
|
import { FeeFlowService, } from "../services/feeFlowService/index.js";
|
|
28
|
+
import { readEulerSDKEnvConfig, } from "./config.js";
|
|
28
29
|
import { EVaultOnchainAdapter } from "../services/vaults/eVaultService/adapters/eVaultOnchainAdapter/eVaultOnchainAdapter.js";
|
|
29
30
|
import { EVaultV3Adapter } from "../services/vaults/eVaultService/adapters/eVaultV3Adapter/eVaultV3Adapter.js";
|
|
30
31
|
import { VaultMetaService, VaultTypeSubgraphAdapter, VaultTypeV3Adapter, } from "../services/vaults/vaultMetaService/index.js";
|
|
31
32
|
import { VaultType } from "../utils/types.js";
|
|
32
33
|
import { createQueryCacheBuildQuery, } from "../utils/buildQuery.js";
|
|
33
34
|
import { BatchSimulationAdapter } from "../plugins/batchSimulation.js";
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
function pickConfigValue(configValue, explicitValue, envValue, defaultValue) {
|
|
36
|
+
return configValue ?? explicitValue ?? envValue ?? defaultValue;
|
|
37
|
+
}
|
|
38
|
+
function mergeNumberRecords(defaultRecord, envRecord, explicitRecord, configRecord) {
|
|
39
|
+
return {
|
|
40
|
+
...(defaultRecord ?? {}),
|
|
41
|
+
...(envRecord ?? {}),
|
|
42
|
+
...(explicitRecord ?? {}),
|
|
43
|
+
...(configRecord ?? {}),
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function mergeStringRecords(envRecord, explicitRecord, configRecord) {
|
|
47
|
+
const merged = {
|
|
48
|
+
...(envRecord ?? {}),
|
|
49
|
+
...(explicitRecord ?? {}),
|
|
50
|
+
...(configRecord ?? {}),
|
|
51
|
+
};
|
|
52
|
+
return Object.keys(merged).length > 0 ? merged : undefined;
|
|
53
|
+
}
|
|
54
|
+
function maybeField(key, value) {
|
|
55
|
+
return value === undefined
|
|
56
|
+
? {}
|
|
57
|
+
: { [key]: value };
|
|
58
|
+
}
|
|
59
|
+
function resolveV3AdapterConfig(defaultConfig, args) {
|
|
60
|
+
const { explicitConfig, explicitV3ApiKey, envConfig, config, envEndpoint, configEndpoint, envApiKey, configApiKey, envExtra, configExtra, } = args;
|
|
61
|
+
return {
|
|
62
|
+
...defaultConfig,
|
|
63
|
+
...maybeField("endpoint", envConfig.v3ApiUrl),
|
|
64
|
+
...maybeField("apiKey", envConfig.v3ApiKey),
|
|
65
|
+
...maybeField("endpoint", envEndpoint),
|
|
66
|
+
...maybeField("apiKey", envApiKey),
|
|
67
|
+
...(envExtra ?? {}),
|
|
68
|
+
...maybeField("apiKey", explicitV3ApiKey),
|
|
69
|
+
...(explicitConfig ?? {}),
|
|
70
|
+
...maybeField("endpoint", config?.v3ApiUrl),
|
|
71
|
+
...maybeField("apiKey", config?.v3ApiKey),
|
|
72
|
+
...maybeField("endpoint", configEndpoint),
|
|
73
|
+
...maybeField("apiKey", configApiKey),
|
|
74
|
+
...(configExtra ?? {}),
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function applyTemplate(template, values) {
|
|
78
|
+
return Object.entries(values).reduce((result, [key, value]) => result.replaceAll(`{${key}}`, String(value)), template);
|
|
79
|
+
}
|
|
80
|
+
function makeEulerLabelsConfig(config) {
|
|
81
|
+
if (!config)
|
|
82
|
+
return {};
|
|
83
|
+
const baseUrl = config.eulerLabelsBaseUrl ?? DEFAULT_EULER_LABELS_BASE_URL;
|
|
84
|
+
const hasBaseOverride = config.eulerLabelsBaseUrl !== undefined;
|
|
85
|
+
return {
|
|
86
|
+
...(hasBaseOverride || config.eulerLabelsEntitiesUrlTemplate
|
|
87
|
+
? {
|
|
88
|
+
getEulerLabelsEntitiesUrl: (chainId) => config.eulerLabelsEntitiesUrlTemplate
|
|
89
|
+
? applyTemplate(config.eulerLabelsEntitiesUrlTemplate, {
|
|
90
|
+
base: baseUrl,
|
|
91
|
+
chainId,
|
|
92
|
+
})
|
|
93
|
+
: `${baseUrl}/${chainId}/entities.json`,
|
|
94
|
+
}
|
|
95
|
+
: {}),
|
|
96
|
+
...(hasBaseOverride || config.eulerLabelsProductsUrlTemplate
|
|
97
|
+
? {
|
|
98
|
+
getEulerLabelsProductsUrl: (chainId) => config.eulerLabelsProductsUrlTemplate
|
|
99
|
+
? applyTemplate(config.eulerLabelsProductsUrlTemplate, {
|
|
100
|
+
base: baseUrl,
|
|
101
|
+
chainId,
|
|
102
|
+
})
|
|
103
|
+
: `${baseUrl}/${chainId}/products.json`,
|
|
104
|
+
}
|
|
105
|
+
: {}),
|
|
106
|
+
...(hasBaseOverride || config.eulerLabelsPointsUrlTemplate
|
|
107
|
+
? {
|
|
108
|
+
getEulerLabelsPointsUrl: (chainId) => config.eulerLabelsPointsUrlTemplate
|
|
109
|
+
? applyTemplate(config.eulerLabelsPointsUrlTemplate, {
|
|
110
|
+
base: baseUrl,
|
|
111
|
+
chainId,
|
|
112
|
+
})
|
|
113
|
+
: `${baseUrl}/${chainId}/points.json`,
|
|
114
|
+
}
|
|
115
|
+
: {}),
|
|
116
|
+
...(hasBaseOverride || config.eulerLabelsEarnVaultsUrlTemplate
|
|
117
|
+
? {
|
|
118
|
+
getEulerLabelsEarnVaultsUrl: (chainId) => config.eulerLabelsEarnVaultsUrlTemplate
|
|
119
|
+
? applyTemplate(config.eulerLabelsEarnVaultsUrlTemplate, {
|
|
120
|
+
base: baseUrl,
|
|
121
|
+
chainId,
|
|
122
|
+
})
|
|
123
|
+
: `${baseUrl}/${chainId}/earn-vaults.json`,
|
|
124
|
+
}
|
|
125
|
+
: {}),
|
|
126
|
+
...(hasBaseOverride || config.eulerLabelsAssetsUrlTemplate
|
|
127
|
+
? {
|
|
128
|
+
getEulerLabelsAssetsUrl: (chainId) => config.eulerLabelsAssetsUrlTemplate
|
|
129
|
+
? applyTemplate(config.eulerLabelsAssetsUrlTemplate, {
|
|
130
|
+
base: baseUrl,
|
|
131
|
+
chainId,
|
|
132
|
+
})
|
|
133
|
+
: `${baseUrl}/${chainId}/assets.json`,
|
|
134
|
+
}
|
|
135
|
+
: {}),
|
|
136
|
+
...(hasBaseOverride || config.eulerLabelsGlobalAssetsUrl
|
|
137
|
+
? {
|
|
138
|
+
getEulerLabelsGlobalAssetsUrl: () => config.eulerLabelsGlobalAssetsUrl ?? `${baseUrl}/all/assets.json`,
|
|
139
|
+
}
|
|
140
|
+
: {}),
|
|
141
|
+
...(hasBaseOverride || config.eulerLabelsLogoUrlTemplate
|
|
142
|
+
? {
|
|
143
|
+
getEulerLabelsLogoUrl: (filename) => config.eulerLabelsLogoUrlTemplate
|
|
144
|
+
? applyTemplate(config.eulerLabelsLogoUrlTemplate, {
|
|
145
|
+
base: baseUrl,
|
|
146
|
+
filename,
|
|
147
|
+
})
|
|
148
|
+
: `${baseUrl}/logo/${filename}`,
|
|
149
|
+
}
|
|
150
|
+
: {}),
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
function makeTokenlistConfig(config) {
|
|
154
|
+
if (!config?.tokenlistApiBaseUrl && !config?.tokenlistUrlTemplate)
|
|
155
|
+
return {};
|
|
156
|
+
const baseUrl = config.tokenlistApiBaseUrl ?? DEFAULT_TOKENLIST_API_BASE_URL;
|
|
157
|
+
return {
|
|
158
|
+
getTokenListUrl: (chainId) => config.tokenlistUrlTemplate
|
|
159
|
+
? applyTemplate(config.tokenlistUrlTemplate, { base: baseUrl, chainId })
|
|
160
|
+
: `${baseUrl}/v1/tokens?chainId=${chainId}`,
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
function resolveRewardsDirectAdapterConfig(explicitConfig, envConfig, config) {
|
|
164
|
+
return {
|
|
165
|
+
...maybeField("merklApiUrl", envConfig.rewardsMerklApiUrl),
|
|
166
|
+
...maybeField("brevisApiUrl", envConfig.rewardsBrevisApiUrl),
|
|
167
|
+
...maybeField("brevisProofsApiUrl", envConfig.rewardsBrevisProofsApiUrl),
|
|
168
|
+
...maybeField("fuulApiUrl", envConfig.rewardsFuulApiUrl),
|
|
169
|
+
...maybeField("fuulTotalsUrl", envConfig.rewardsFuulTotalsUrl),
|
|
170
|
+
...maybeField("fuulClaimChecksUrl", envConfig.rewardsFuulClaimChecksUrl),
|
|
171
|
+
...maybeField("brevisChainIds", envConfig.rewardsBrevisChainIds),
|
|
172
|
+
...maybeField("merklDistributorAddress", envConfig.rewardsMerklDistributorAddress),
|
|
173
|
+
...maybeField("fuulManagerAddress", envConfig.rewardsFuulManagerAddress),
|
|
174
|
+
...maybeField("fuulFactoryAddress", envConfig.rewardsFuulFactoryAddress),
|
|
175
|
+
...maybeField("enableMerkl", envConfig.rewardsEnableMerkl),
|
|
176
|
+
...maybeField("enableBrevis", envConfig.rewardsEnableBrevis),
|
|
177
|
+
...maybeField("enableFuul", envConfig.rewardsEnableFuul),
|
|
178
|
+
...maybeField("merklApiUrl", explicitConfig?.merklApiUrl),
|
|
179
|
+
...maybeField("brevisApiUrl", explicitConfig?.brevisApiUrl),
|
|
180
|
+
...maybeField("brevisProofsApiUrl", explicitConfig?.brevisProofsApiUrl),
|
|
181
|
+
...maybeField("fuulApiUrl", explicitConfig?.fuulApiUrl),
|
|
182
|
+
...maybeField("fuulTotalsUrl", explicitConfig?.fuulTotalsUrl),
|
|
183
|
+
...maybeField("fuulClaimChecksUrl", explicitConfig?.fuulClaimChecksUrl),
|
|
184
|
+
...maybeField("brevisChainIds", explicitConfig?.brevisChainIds),
|
|
185
|
+
...maybeField("merklDistributorAddress", explicitConfig?.merklDistributorAddress),
|
|
186
|
+
...maybeField("fuulManagerAddress", explicitConfig?.fuulManagerAddress),
|
|
187
|
+
...maybeField("fuulFactoryAddress", explicitConfig?.fuulFactoryAddress),
|
|
188
|
+
...maybeField("enableMerkl", explicitConfig?.enableMerkl),
|
|
189
|
+
...maybeField("enableBrevis", explicitConfig?.enableBrevis),
|
|
190
|
+
...maybeField("enableFuul", explicitConfig?.enableFuul),
|
|
191
|
+
...(explicitConfig?.directAdapterConfig ?? {}),
|
|
192
|
+
...maybeField("merklApiUrl", config?.rewardsMerklApiUrl),
|
|
193
|
+
...maybeField("brevisApiUrl", config?.rewardsBrevisApiUrl),
|
|
194
|
+
...maybeField("brevisProofsApiUrl", config?.rewardsBrevisProofsApiUrl),
|
|
195
|
+
...maybeField("fuulApiUrl", config?.rewardsFuulApiUrl),
|
|
196
|
+
...maybeField("fuulTotalsUrl", config?.rewardsFuulTotalsUrl),
|
|
197
|
+
...maybeField("fuulClaimChecksUrl", config?.rewardsFuulClaimChecksUrl),
|
|
198
|
+
...maybeField("brevisChainIds", config?.rewardsBrevisChainIds),
|
|
199
|
+
...maybeField("merklDistributorAddress", config?.rewardsMerklDistributorAddress),
|
|
200
|
+
...maybeField("fuulManagerAddress", config?.rewardsFuulManagerAddress),
|
|
201
|
+
...maybeField("fuulFactoryAddress", config?.rewardsFuulFactoryAddress),
|
|
202
|
+
...maybeField("enableMerkl", config?.rewardsEnableMerkl),
|
|
203
|
+
...maybeField("enableBrevis", config?.rewardsEnableBrevis),
|
|
204
|
+
...maybeField("enableFuul", config?.rewardsEnableFuul),
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
export async function buildEulerSDK(options = {}) {
|
|
208
|
+
const { config, v3ApiKey, accountServiceConfig, eVaultServiceConfig, eulerEarnServiceConfig, accountVaultsAdapterConfig, vaultTypeAdapterConfig, additionalVaultServices, eulerLabelsAdapterConfig, tokenlistServiceConfig, swapServiceConfig, pricingServiceConfig, rewardsServiceConfig, intrinsicApyServiceConfig, oracleAdapterServiceConfig, queryCacheConfig, buildQuery, plugins, servicesOverrides, feeFlowServiceConfig, } = options;
|
|
209
|
+
const envConfig = readEulerSDKEnvConfig();
|
|
210
|
+
const resolvedRpcUrls = mergeNumberRecords(undefined, envConfig.rpcUrls, undefined, config?.rpcUrls);
|
|
211
|
+
const resolvedQueryCacheConfig = {
|
|
212
|
+
...maybeField("enabled", envConfig.queryCacheEnabled),
|
|
213
|
+
...maybeField("ttlMs", envConfig.queryCacheTtlMs),
|
|
214
|
+
...(queryCacheConfig ?? {}),
|
|
215
|
+
...maybeField("enabled", config?.queryCacheEnabled),
|
|
216
|
+
...maybeField("ttlMs", config?.queryCacheTtlMs),
|
|
217
|
+
};
|
|
218
|
+
const resolvedBuildQuery = buildQuery ?? createQueryCacheBuildQuery(resolvedQueryCacheConfig);
|
|
219
|
+
const resolvedDeploymentServiceConfig = {
|
|
220
|
+
...defaultDeploymentServiceConfig,
|
|
221
|
+
...maybeField("deploymentsUrl", envConfig.deploymentsUrl),
|
|
222
|
+
...maybeField("deploymentsUrl", config?.deploymentsUrl),
|
|
223
|
+
};
|
|
37
224
|
// Build core services (these may be needed for adapters even if overridden)
|
|
38
225
|
const abiService = servicesOverrides?.abiService ?? new ABIService(resolvedBuildQuery);
|
|
39
226
|
const deploymentService = servicesOverrides?.deploymentService ??
|
|
40
|
-
(await DeploymentService.build(
|
|
41
|
-
const providerService = servicesOverrides?.providerService ?? new ProviderService(
|
|
227
|
+
(await DeploymentService.build(resolvedDeploymentServiceConfig, resolvedBuildQuery));
|
|
228
|
+
const providerService = servicesOverrides?.providerService ?? new ProviderService(resolvedRpcUrls);
|
|
42
229
|
// Account adapter is built early so it can be used when building account service (after vault meta service)
|
|
43
230
|
const resolvedAccountServiceConfig = accountServiceConfig ?? {};
|
|
231
|
+
const resolvedAccountServiceAdapter = pickConfigValue(config?.accountServiceAdapter, resolvedAccountServiceConfig.adapter, envConfig.accountServiceAdapter);
|
|
44
232
|
let accountOnchainAdapter;
|
|
45
|
-
const accountAdapter =
|
|
233
|
+
const accountAdapter = resolvedAccountServiceAdapter === "onchain"
|
|
46
234
|
? (() => {
|
|
47
|
-
const accountVaultsAdapter = new AccountVaultsSubgraphAdapter(
|
|
235
|
+
const accountVaultsAdapter = new AccountVaultsSubgraphAdapter({
|
|
236
|
+
subgraphURLs: mergeNumberRecords(defaultAccountVaultsAdapterConfig.subgraphURLs, envConfig.accountVaultsSubgraphUrls, accountVaultsAdapterConfig?.subgraphURLs, config?.accountVaultsSubgraphUrls),
|
|
237
|
+
}, resolvedBuildQuery);
|
|
48
238
|
accountOnchainAdapter = new AccountOnchainAdapter(providerService, deploymentService, accountVaultsAdapter, resolvedBuildQuery);
|
|
49
239
|
return accountOnchainAdapter;
|
|
50
240
|
})()
|
|
51
|
-
: new AccountV3Adapter({
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
241
|
+
: new AccountV3Adapter(resolveV3AdapterConfig(defaultAccountV3AdapterConfig, {
|
|
242
|
+
explicitConfig: resolvedAccountServiceConfig.v3AdapterConfig,
|
|
243
|
+
explicitV3ApiKey: v3ApiKey,
|
|
244
|
+
envConfig,
|
|
245
|
+
config,
|
|
246
|
+
envEndpoint: envConfig.accountV3ApiUrl,
|
|
247
|
+
configEndpoint: config?.accountV3ApiUrl,
|
|
248
|
+
envApiKey: envConfig.accountV3ApiKey,
|
|
249
|
+
configApiKey: config?.accountV3ApiKey,
|
|
250
|
+
envExtra: {
|
|
251
|
+
...maybeField("forceFresh", envConfig.accountV3ForceFresh),
|
|
252
|
+
},
|
|
253
|
+
configExtra: {
|
|
254
|
+
...maybeField("forceFresh", config?.accountV3ForceFresh),
|
|
255
|
+
},
|
|
256
|
+
}), resolvedBuildQuery);
|
|
60
257
|
// Build wallet service if not overridden
|
|
61
258
|
let walletService;
|
|
62
259
|
if (servicesOverrides?.walletService) {
|
|
@@ -74,20 +271,28 @@ export async function buildEulerSDK(options) {
|
|
|
74
271
|
}
|
|
75
272
|
else {
|
|
76
273
|
const resolvedEVaultServiceConfig = eVaultServiceConfig ?? {};
|
|
77
|
-
const
|
|
274
|
+
const resolvedEVaultServiceAdapter = pickConfigValue(config?.eVaultServiceAdapter, resolvedEVaultServiceConfig.adapter, envConfig.eVaultServiceAdapter);
|
|
275
|
+
const selectedEVaultAdapter = resolvedEVaultServiceAdapter === "onchain"
|
|
78
276
|
? (() => {
|
|
79
277
|
eVaultAdapter = new EVaultOnchainAdapter(providerService, deploymentService, resolvedBuildQuery);
|
|
80
278
|
return eVaultAdapter;
|
|
81
279
|
})()
|
|
82
|
-
: new EVaultV3Adapter({
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
280
|
+
: new EVaultV3Adapter(resolveV3AdapterConfig(defaultEVaultV3AdapterConfig, {
|
|
281
|
+
explicitConfig: resolvedEVaultServiceConfig.v3AdapterConfig,
|
|
282
|
+
explicitV3ApiKey: v3ApiKey,
|
|
283
|
+
envConfig,
|
|
284
|
+
config,
|
|
285
|
+
envEndpoint: envConfig.eVaultV3ApiUrl,
|
|
286
|
+
configEndpoint: config?.eVaultV3ApiUrl,
|
|
287
|
+
envApiKey: envConfig.eVaultV3ApiKey,
|
|
288
|
+
configApiKey: config?.eVaultV3ApiKey,
|
|
289
|
+
envExtra: {
|
|
290
|
+
...maybeField("batchSize", envConfig.eVaultV3BatchSize),
|
|
291
|
+
},
|
|
292
|
+
configExtra: {
|
|
293
|
+
...maybeField("batchSize", config?.eVaultV3BatchSize),
|
|
294
|
+
},
|
|
295
|
+
}), providerService, resolvedBuildQuery);
|
|
91
296
|
eVaultService = new EVaultService(selectedEVaultAdapter, deploymentService);
|
|
92
297
|
}
|
|
93
298
|
// Build eulerEarn service if not overridden
|
|
@@ -97,19 +302,19 @@ export async function buildEulerSDK(options) {
|
|
|
97
302
|
}
|
|
98
303
|
else {
|
|
99
304
|
const resolvedEulerEarnServiceConfig = eulerEarnServiceConfig ?? {};
|
|
100
|
-
const
|
|
305
|
+
const resolvedEulerEarnServiceAdapter = pickConfigValue(config?.eulerEarnServiceAdapter, resolvedEulerEarnServiceConfig.adapter, envConfig.eulerEarnServiceAdapter);
|
|
306
|
+
const eulerEarnAdapter = resolvedEulerEarnServiceAdapter === "onchain"
|
|
101
307
|
? new EulerEarnOnchainAdapter(providerService, deploymentService, resolvedBuildQuery)
|
|
102
|
-
: new EulerEarnV3Adapter({
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}, resolvedBuildQuery);
|
|
308
|
+
: new EulerEarnV3Adapter(resolveV3AdapterConfig(defaultEulerEarnV3AdapterConfig, {
|
|
309
|
+
explicitConfig: resolvedEulerEarnServiceConfig.v3AdapterConfig,
|
|
310
|
+
explicitV3ApiKey: v3ApiKey,
|
|
311
|
+
envConfig,
|
|
312
|
+
config,
|
|
313
|
+
envEndpoint: envConfig.eulerEarnV3ApiUrl,
|
|
314
|
+
configEndpoint: config?.eulerEarnV3ApiUrl,
|
|
315
|
+
envApiKey: envConfig.eulerEarnV3ApiKey,
|
|
316
|
+
configApiKey: config?.eulerEarnV3ApiKey,
|
|
317
|
+
}), resolvedBuildQuery);
|
|
113
318
|
eulerEarnService = new EulerEarnService(eulerEarnAdapter, deploymentService, eVaultService);
|
|
114
319
|
}
|
|
115
320
|
// Build securitizeVault service if not overridden
|
|
@@ -127,17 +332,37 @@ export async function buildEulerSDK(options) {
|
|
|
127
332
|
vaultMetaService = servicesOverrides.vaultMetaService;
|
|
128
333
|
}
|
|
129
334
|
else {
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
335
|
+
const explicitVaultTypeAdapterKind = vaultTypeAdapterConfig
|
|
336
|
+
? "subgraphURLs" in vaultTypeAdapterConfig
|
|
337
|
+
? "subgraph"
|
|
338
|
+
: "v3"
|
|
339
|
+
: undefined;
|
|
340
|
+
const resolvedVaultTypeAdapterKind = pickConfigValue(config?.vaultTypeAdapter, explicitVaultTypeAdapterKind, envConfig.vaultTypeAdapter, "v3");
|
|
341
|
+
const vaultTypeAdapter = resolvedVaultTypeAdapterKind === "subgraph"
|
|
342
|
+
? new VaultTypeSubgraphAdapter({
|
|
343
|
+
subgraphURLs: mergeNumberRecords(defaultAccountVaultsAdapterConfig.subgraphURLs, envConfig.vaultTypeSubgraphUrls, vaultTypeAdapterConfig &&
|
|
344
|
+
"subgraphURLs" in vaultTypeAdapterConfig
|
|
345
|
+
? vaultTypeAdapterConfig.subgraphURLs
|
|
346
|
+
: undefined, config?.vaultTypeSubgraphUrls),
|
|
347
|
+
}, resolvedBuildQuery)
|
|
348
|
+
: new VaultTypeV3Adapter(resolveV3AdapterConfig(defaultVaultTypeAdapterConfig, {
|
|
349
|
+
explicitConfig: vaultTypeAdapterConfig &&
|
|
350
|
+
!("subgraphURLs" in vaultTypeAdapterConfig)
|
|
351
|
+
? {
|
|
352
|
+
...vaultTypeAdapterConfig,
|
|
353
|
+
...maybeField("typeMap", mergeStringRecords(envConfig.vaultTypeV3TypeMap, vaultTypeAdapterConfig.typeMap, config?.vaultTypeV3TypeMap)),
|
|
354
|
+
}
|
|
355
|
+
: {
|
|
356
|
+
...maybeField("typeMap", mergeStringRecords(envConfig.vaultTypeV3TypeMap, undefined, config?.vaultTypeV3TypeMap)),
|
|
357
|
+
},
|
|
358
|
+
explicitV3ApiKey: v3ApiKey,
|
|
359
|
+
envConfig,
|
|
360
|
+
config,
|
|
361
|
+
envEndpoint: envConfig.vaultTypeV3ApiUrl,
|
|
362
|
+
configEndpoint: config?.vaultTypeV3ApiUrl,
|
|
363
|
+
envApiKey: envConfig.vaultTypeV3ApiKey,
|
|
364
|
+
configApiKey: config?.vaultTypeV3ApiKey,
|
|
365
|
+
}), resolvedBuildQuery);
|
|
141
366
|
const allVaultServices = [
|
|
142
367
|
{
|
|
143
368
|
type: VaultType.EVault,
|
|
@@ -188,7 +413,12 @@ export async function buildEulerSDK(options) {
|
|
|
188
413
|
const portfolioService = servicesOverrides?.portfolioService ??
|
|
189
414
|
new PortfolioService(accountService);
|
|
190
415
|
// Build eulerLabels service if not overridden
|
|
191
|
-
const eulerLabelsConfig =
|
|
416
|
+
const eulerLabelsConfig = {
|
|
417
|
+
...defaultEulerLabelsURLAdapterConfig,
|
|
418
|
+
...makeEulerLabelsConfig(envConfig),
|
|
419
|
+
...(eulerLabelsAdapterConfig ?? {}),
|
|
420
|
+
...makeEulerLabelsConfig(config),
|
|
421
|
+
};
|
|
192
422
|
const eulerLabelsService = servicesOverrides?.eulerLabelsService ??
|
|
193
423
|
(() => {
|
|
194
424
|
const eulerLabelsAdapter = new EulerLabelsURLAdapter(eulerLabelsConfig, resolvedBuildQuery);
|
|
@@ -196,10 +426,22 @@ export async function buildEulerSDK(options) {
|
|
|
196
426
|
})();
|
|
197
427
|
// Build tokenlist service if not overridden
|
|
198
428
|
const tokenlistService = servicesOverrides?.tokenlistService ??
|
|
199
|
-
new TokenlistService(
|
|
429
|
+
new TokenlistService({
|
|
430
|
+
...defaultTokenlistServiceConfig,
|
|
431
|
+
...makeTokenlistConfig(envConfig),
|
|
432
|
+
...(tokenlistServiceConfig ?? {}),
|
|
433
|
+
...makeTokenlistConfig(config),
|
|
434
|
+
}, resolvedBuildQuery);
|
|
200
435
|
// Build swap service if not overridden
|
|
201
436
|
const swapService = servicesOverrides?.swapService ??
|
|
202
|
-
new SwapService(
|
|
437
|
+
new SwapService({
|
|
438
|
+
...defaultSwapServiceConfig,
|
|
439
|
+
...maybeField("swapApiUrl", envConfig.swapApiUrl),
|
|
440
|
+
...maybeField("defaultDeadline", envConfig.swapDefaultDeadline),
|
|
441
|
+
...(swapServiceConfig ?? {}),
|
|
442
|
+
...maybeField("swapApiUrl", config?.swapApiUrl),
|
|
443
|
+
...maybeField("defaultDeadline", config?.swapDefaultDeadline),
|
|
444
|
+
}, deploymentService, resolvedBuildQuery);
|
|
203
445
|
// Build execution service if not overridden
|
|
204
446
|
const executionService = servicesOverrides?.executionService ??
|
|
205
447
|
(() => {
|
|
@@ -211,56 +453,38 @@ export async function buildEulerSDK(options) {
|
|
|
211
453
|
// Build price service if not overridden
|
|
212
454
|
const priceService = servicesOverrides?.priceService ??
|
|
213
455
|
(() => {
|
|
214
|
-
const
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
456
|
+
const resolvedPricingServiceConfig = resolveV3AdapterConfig(defaultPricingServiceConfig, {
|
|
457
|
+
explicitConfig: pricingServiceConfig,
|
|
458
|
+
explicitV3ApiKey: v3ApiKey,
|
|
459
|
+
envConfig,
|
|
460
|
+
config,
|
|
461
|
+
envEndpoint: envConfig.pricingApiUrl,
|
|
462
|
+
configEndpoint: config?.pricingApiUrl,
|
|
463
|
+
envApiKey: envConfig.pricingApiKey,
|
|
464
|
+
configApiKey: config?.pricingApiKey,
|
|
465
|
+
});
|
|
466
|
+
const backendClient = new PricingBackendClient(resolvedPricingServiceConfig, resolvedBuildQuery);
|
|
222
467
|
return new PriceService(providerService, deploymentService, backendClient, resolvedBuildQuery);
|
|
223
468
|
})();
|
|
224
469
|
// Build rewards service if not overridden
|
|
225
470
|
const rewardsService = servicesOverrides?.rewardsService ??
|
|
226
471
|
(() => {
|
|
227
|
-
const
|
|
228
|
-
const
|
|
229
|
-
merklApiUrl: resolvedRewardsServiceConfig.merklApiUrl,
|
|
230
|
-
brevisApiUrl: resolvedRewardsServiceConfig.brevisApiUrl,
|
|
231
|
-
brevisProofsApiUrl: resolvedRewardsServiceConfig.brevisProofsApiUrl,
|
|
232
|
-
fuulApiUrl: resolvedRewardsServiceConfig.fuulApiUrl,
|
|
233
|
-
fuulTotalsUrl: resolvedRewardsServiceConfig.fuulTotalsUrl,
|
|
234
|
-
fuulClaimChecksUrl: resolvedRewardsServiceConfig.fuulClaimChecksUrl,
|
|
235
|
-
brevisChainIds: resolvedRewardsServiceConfig.brevisChainIds,
|
|
236
|
-
merklDistributorAddress: resolvedRewardsServiceConfig.merklDistributorAddress,
|
|
237
|
-
fuulManagerAddress: resolvedRewardsServiceConfig.fuulManagerAddress,
|
|
238
|
-
fuulFactoryAddress: resolvedRewardsServiceConfig.fuulFactoryAddress,
|
|
239
|
-
enableMerkl: resolvedRewardsServiceConfig.enableMerkl,
|
|
240
|
-
enableBrevis: resolvedRewardsServiceConfig.enableBrevis,
|
|
241
|
-
enableFuul: resolvedRewardsServiceConfig.enableFuul,
|
|
242
|
-
};
|
|
243
|
-
const directAdapterConfig = {
|
|
244
|
-
...legacyDirectAdapterConfig,
|
|
245
|
-
...(resolvedRewardsServiceConfig.directAdapterConfig ?? {}),
|
|
246
|
-
};
|
|
472
|
+
const resolvedRewardsServiceAdapter = pickConfigValue(config?.rewardsServiceAdapter, rewardsServiceConfig?.adapter, envConfig.rewardsServiceAdapter, "v3");
|
|
473
|
+
const directAdapterConfig = resolveRewardsDirectAdapterConfig(rewardsServiceConfig, envConfig, config);
|
|
247
474
|
const directAdapter = new RewardsDirectAdapter(directAdapterConfig, resolvedBuildQuery);
|
|
248
|
-
const rewardsAdapter =
|
|
475
|
+
const rewardsAdapter = resolvedRewardsServiceAdapter === "direct"
|
|
249
476
|
? directAdapter
|
|
250
|
-
: new RewardsV3Adapter({
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
return new RewardsService(rewardsAdapter, resolvedRewardsServiceConfig.adapter === "direct"
|
|
262
|
-
? undefined
|
|
263
|
-
: directAdapter, {
|
|
477
|
+
: new RewardsV3Adapter(resolveV3AdapterConfig(defaultRewardsV3AdapterConfig, {
|
|
478
|
+
explicitConfig: rewardsServiceConfig?.v3AdapterConfig,
|
|
479
|
+
explicitV3ApiKey: v3ApiKey,
|
|
480
|
+
envConfig,
|
|
481
|
+
config,
|
|
482
|
+
envEndpoint: envConfig.rewardsV3ApiUrl,
|
|
483
|
+
configEndpoint: config?.rewardsV3ApiUrl,
|
|
484
|
+
envApiKey: envConfig.rewardsV3ApiKey,
|
|
485
|
+
configApiKey: config?.rewardsV3ApiKey,
|
|
486
|
+
}), resolvedBuildQuery);
|
|
487
|
+
return new RewardsService(rewardsAdapter, resolvedRewardsServiceAdapter === "direct" ? undefined : directAdapter, {
|
|
264
488
|
merklDistributorAddress: directAdapter.getMerklDistributorAddress(),
|
|
265
489
|
fuulManagerAddress: directAdapter.getFuulManagerAddress(),
|
|
266
490
|
fuulFactoryAddress: directAdapter.getFuulFactoryAddress(),
|
|
@@ -270,23 +494,44 @@ export async function buildEulerSDK(options) {
|
|
|
270
494
|
const intrinsicApyService = servicesOverrides?.intrinsicApyService ??
|
|
271
495
|
(() => {
|
|
272
496
|
const resolvedIntrinsicApyServiceConfig = intrinsicApyServiceConfig ?? {};
|
|
273
|
-
const intrinsicApyAdapter = new IntrinsicApyV3Adapter({
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
497
|
+
const intrinsicApyAdapter = new IntrinsicApyV3Adapter(resolveV3AdapterConfig(defaultIntrinsicApyV3AdapterConfig, {
|
|
498
|
+
explicitConfig: resolvedIntrinsicApyServiceConfig.v3AdapterConfig,
|
|
499
|
+
explicitV3ApiKey: v3ApiKey,
|
|
500
|
+
envConfig,
|
|
501
|
+
config,
|
|
502
|
+
envEndpoint: envConfig.intrinsicApyV3ApiUrl,
|
|
503
|
+
configEndpoint: config?.intrinsicApyV3ApiUrl,
|
|
504
|
+
envApiKey: envConfig.intrinsicApyV3ApiKey,
|
|
505
|
+
configApiKey: config?.intrinsicApyV3ApiKey,
|
|
506
|
+
envExtra: {
|
|
507
|
+
...maybeField("pageSize", envConfig.intrinsicApyV3PageSize),
|
|
508
|
+
...maybeField("maxAssetsPerRequest", envConfig.intrinsicApyV3MaxAssetsPerRequest),
|
|
509
|
+
},
|
|
510
|
+
configExtra: {
|
|
511
|
+
...maybeField("pageSize", config?.intrinsicApyV3PageSize),
|
|
512
|
+
...maybeField("maxAssetsPerRequest", config?.intrinsicApyV3MaxAssetsPerRequest),
|
|
513
|
+
},
|
|
514
|
+
}), resolvedBuildQuery);
|
|
284
515
|
return new IntrinsicApyService(intrinsicApyAdapter);
|
|
285
516
|
})();
|
|
286
517
|
const oracleAdapterService = servicesOverrides?.oracleAdapterService ??
|
|
287
|
-
new OracleAdapterService(
|
|
518
|
+
new OracleAdapterService({
|
|
519
|
+
...maybeField("baseUrl", envConfig.oracleAdaptersBaseUrl),
|
|
520
|
+
...maybeField("cacheMs", envConfig.oracleAdaptersCacheMs),
|
|
521
|
+
...(oracleAdapterServiceConfig ?? {}),
|
|
522
|
+
...maybeField("baseUrl", config?.oracleAdaptersBaseUrl),
|
|
523
|
+
...maybeField("cacheMs", config?.oracleAdaptersCacheMs),
|
|
524
|
+
}, resolvedBuildQuery);
|
|
288
525
|
const feeFlowService = servicesOverrides?.feeFlowService ??
|
|
289
|
-
new FeeFlowService(
|
|
526
|
+
new FeeFlowService({
|
|
527
|
+
...maybeField("feeFlowControllerAddress", envConfig.feeFlowControllerAddress),
|
|
528
|
+
...maybeField("feeFlowControllerUtilAddress", envConfig.feeFlowControllerUtilAddress),
|
|
529
|
+
...maybeField("defaultBuyDeadlineSeconds", envConfig.feeFlowDefaultBuyDeadlineSeconds),
|
|
530
|
+
...(feeFlowServiceConfig ?? {}),
|
|
531
|
+
...maybeField("feeFlowControllerAddress", config?.feeFlowControllerAddress),
|
|
532
|
+
...maybeField("feeFlowControllerUtilAddress", config?.feeFlowControllerUtilAddress),
|
|
533
|
+
...maybeField("defaultBuyDeadlineSeconds", config?.feeFlowDefaultBuyDeadlineSeconds),
|
|
534
|
+
}, resolvedBuildQuery);
|
|
290
535
|
if (executionService instanceof ExecutionService) {
|
|
291
536
|
executionService.setProviderService(providerService);
|
|
292
537
|
executionService.setVaultMetaService(vaultMetaService);
|
|
@@ -348,7 +593,7 @@ export async function buildEulerSDK(options) {
|
|
|
348
593
|
if (securitizeVaultService instanceof SecuritizeVaultService) {
|
|
349
594
|
securitizeVaultService.setEulerLabelsService(eulerLabelsService);
|
|
350
595
|
}
|
|
351
|
-
|
|
596
|
+
const sdk = new EulerSDK({
|
|
352
597
|
accountService,
|
|
353
598
|
portfolioService,
|
|
354
599
|
walletService,
|
|
@@ -370,5 +615,9 @@ export async function buildEulerSDK(options) {
|
|
|
370
615
|
feeFlowService,
|
|
371
616
|
plugins,
|
|
372
617
|
});
|
|
618
|
+
if (executionService instanceof ExecutionService) {
|
|
619
|
+
executionService.setPluginProcessor((plan, account, chainId) => sdk.processPlugins(plan, account, chainId));
|
|
620
|
+
}
|
|
621
|
+
return sdk;
|
|
373
622
|
}
|
|
374
623
|
//# sourceMappingURL=buildSDK.js.map
|