@across-protocol/sdk 4.3.111-alpha.4 → 4.3.111
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/dist/cjs/addressAggregator/adapters/abstract.js +64 -50
- package/dist/cjs/addressAggregator/adapters/abstract.js.map +1 -1
- package/dist/cjs/addressAggregator/adapters/bybit.js +29 -16
- package/dist/cjs/addressAggregator/adapters/bybit.js.map +1 -1
- package/dist/cjs/addressAggregator/adapters/env.js +15 -11
- package/dist/cjs/addressAggregator/adapters/env.js.map +1 -1
- package/dist/cjs/addressAggregator/adapters/file.js +45 -32
- package/dist/cjs/addressAggregator/adapters/file.js.map +1 -1
- package/dist/cjs/addressAggregator/adapters/index.js +1 -1
- package/dist/cjs/addressAggregator/adapters/risklabs.js +36 -22
- package/dist/cjs/addressAggregator/adapters/risklabs.js.map +1 -1
- package/dist/cjs/addressAggregator/index.js +87 -57
- package/dist/cjs/addressAggregator/index.js.map +1 -1
- package/dist/cjs/apiClient/abstractClient.js +8 -9
- package/dist/cjs/apiClient/abstractClient.js.map +1 -1
- package/dist/cjs/apiClient/index.js +1 -1
- package/dist/cjs/apiClient/mockedClient.js +29 -23
- package/dist/cjs/apiClient/mockedClient.js.map +1 -1
- package/dist/cjs/apiClient/productionClient.js +103 -65
- package/dist/cjs/apiClient/productionClient.js.map +1 -1
- package/dist/cjs/arch/evm/BlockUtils.js +208 -122
- package/dist/cjs/arch/evm/BlockUtils.js.map +1 -1
- package/dist/cjs/arch/evm/MessageUtils.js +1 -1
- package/dist/cjs/arch/evm/MessageUtils.js.map +1 -1
- package/dist/cjs/arch/evm/SpokeUtils.js +288 -134
- package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
- package/dist/cjs/arch/evm/index.js +1 -1
- package/dist/cjs/arch/evm/utils/index.js +1 -1
- package/dist/cjs/arch/evm/utils/wait.js +49 -38
- package/dist/cjs/arch/evm/utils/wait.js.map +1 -1
- package/dist/cjs/arch/index.js +1 -1
- package/dist/cjs/arch/svm/BlockUtils.js +158 -102
- package/dist/cjs/arch/svm/BlockUtils.js.map +1 -1
- package/dist/cjs/arch/svm/MessageUtils.js +2 -2
- package/dist/cjs/arch/svm/MessageUtils.js.map +1 -1
- package/dist/cjs/arch/svm/SpokeUtils.js +1147 -708
- package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
- package/dist/cjs/arch/svm/encoders.js +1 -1
- package/dist/cjs/arch/svm/encoders.js.map +1 -1
- package/dist/cjs/arch/svm/eventsClient.js +236 -174
- package/dist/cjs/arch/svm/eventsClient.js.map +1 -1
- package/dist/cjs/arch/svm/index.js +1 -1
- package/dist/cjs/arch/svm/provider.js +3 -3
- package/dist/cjs/arch/svm/provider.js.map +1 -1
- package/dist/cjs/arch/svm/utils.js +355 -166
- package/dist/cjs/arch/svm/utils.js.map +1 -1
- package/dist/cjs/caching/Arweave/ArweaveClient.js +246 -168
- package/dist/cjs/caching/Arweave/ArweaveClient.js.map +1 -1
- package/dist/cjs/caching/Arweave/index.js +1 -1
- package/dist/cjs/caching/IPFS/PinataIPFSClient.js +49 -40
- package/dist/cjs/caching/IPFS/PinataIPFSClient.js.map +1 -1
- package/dist/cjs/caching/IPFS/index.js +1 -1
- package/dist/cjs/caching/Memory/MemoryCacheClient.js +18 -13
- package/dist/cjs/caching/Memory/MemoryCacheClient.js.map +1 -1
- package/dist/cjs/caching/Memory/index.js +1 -1
- package/dist/cjs/caching/index.js +1 -1
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +381 -302
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/AcrossConfigStoreClient/index.js +1 -1
- package/dist/cjs/clients/BaseAbstractClient.js +83 -58
- package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +900 -709
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/index.js +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +128 -95
- package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +53 -48
- package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js +8 -10
- package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +90 -67
- package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js +24 -46
- package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/index.js +1 -1
- package/dist/cjs/clients/HubPoolClient.js +708 -526
- package/dist/cjs/clients/HubPoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +179 -133
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +183 -124
- package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +389 -357
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js +8 -9
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/index.js +3 -3
- package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -1
- package/dist/cjs/clients/index.js +1 -1
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js +67 -58
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockEvents.js +52 -47
- package/dist/cjs/clients/mocks/MockEvents.js.map +1 -1
- package/dist/cjs/clients/mocks/MockHubPoolClient.js +185 -142
- package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +192 -208
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +143 -140
- package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +73 -57
- package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/index.js +1 -1
- package/dist/cjs/coingecko/Coingecko.js +437 -285
- package/dist/cjs/coingecko/Coingecko.js.map +1 -1
- package/dist/cjs/coingecko/index.js +1 -1
- package/dist/cjs/constants.js +30 -23
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/contracts/acrossConfigStore.js +48 -27
- package/dist/cjs/contracts/acrossConfigStore.js.map +1 -1
- package/dist/cjs/contracts/hubPool.js +20 -36
- package/dist/cjs/contracts/hubPool.js.map +1 -1
- package/dist/cjs/contracts/index.js +1 -1
- package/dist/cjs/contracts/utils.js +8 -6
- package/dist/cjs/contracts/utils.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +16 -7
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js +45 -26
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +28 -16
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/polygon.js +112 -73
- package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/solana.js +33 -20
- package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -1
- package/dist/cjs/gasPriceOracle/oracle.js +104 -77
- package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
- package/dist/cjs/gasPriceOracle/types.js +3 -3
- package/dist/cjs/gasPriceOracle/types.js.map +1 -1
- package/dist/cjs/gasPriceOracle/util.js +8 -8
- package/dist/cjs/gasPriceOracle/util.js.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/interfaces/index.js +1 -1
- package/dist/cjs/lpFeeCalculator/index.js +1 -1
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js +35 -33
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js.map +1 -1
- package/dist/cjs/lpFeeCalculator/rateModel.js +9 -7
- package/dist/cjs/lpFeeCalculator/rateModel.js.map +1 -1
- package/dist/cjs/merkleDistributor/MerkleDistributor.js +18 -20
- package/dist/cjs/merkleDistributor/MerkleDistributor.js.map +1 -1
- package/dist/cjs/merkleDistributor/index.js +1 -1
- package/dist/cjs/merkleDistributor/model/index.js +1 -1
- package/dist/cjs/pool/TransactionManager.js +100 -45
- package/dist/cjs/pool/TransactionManager.js.map +1 -1
- package/dist/cjs/pool/index.js +1 -1
- package/dist/cjs/pool/poolClient.js +731 -464
- package/dist/cjs/pool/poolClient.js.map +1 -1
- package/dist/cjs/pool/uma/across/index.js +1 -1
- package/dist/cjs/pool/uma/across/transactionManager.js +100 -45
- package/dist/cjs/pool/uma/across/transactionManager.js.map +1 -1
- package/dist/cjs/pool/uma/clients/erc20/client.js +16 -18
- package/dist/cjs/pool/uma/clients/erc20/client.js.map +1 -1
- package/dist/cjs/pool/uma/clients/erc20/index.js +1 -1
- package/dist/cjs/pool/uma/clients/index.js +1 -1
- package/dist/cjs/pool/uma/index.js +1 -1
- package/dist/cjs/pool/uma/oracle/index.js +1 -1
- package/dist/cjs/pool/uma/oracle/utils.js +5 -4
- package/dist/cjs/pool/uma/oracle/utils.js.map +1 -1
- package/dist/cjs/pool/uma/utils.js +30 -11
- package/dist/cjs/pool/uma/utils.js.map +1 -1
- package/dist/cjs/priceClient/adapters/acrossApi.js +39 -22
- package/dist/cjs/priceClient/adapters/acrossApi.js.map +1 -1
- package/dist/cjs/priceClient/adapters/baseAdapter.js +73 -49
- package/dist/cjs/priceClient/adapters/baseAdapter.js.map +1 -1
- package/dist/cjs/priceClient/adapters/coingecko.js +61 -34
- package/dist/cjs/priceClient/adapters/coingecko.js.map +1 -1
- package/dist/cjs/priceClient/adapters/default.js +31 -16
- package/dist/cjs/priceClient/adapters/default.js.map +1 -1
- package/dist/cjs/priceClient/adapters/defiLlama.js +74 -40
- package/dist/cjs/priceClient/adapters/defiLlama.js.map +1 -1
- package/dist/cjs/priceClient/adapters/index.js +1 -1
- package/dist/cjs/priceClient/index.js +1 -1
- package/dist/cjs/priceClient/priceClient.js +159 -110
- package/dist/cjs/priceClient/priceClient.js.map +1 -1
- package/dist/cjs/providers/alchemy.js +19 -17
- package/dist/cjs/providers/alchemy.js.map +1 -1
- package/dist/cjs/providers/cachedProvider.js +129 -88
- package/dist/cjs/providers/cachedProvider.js.map +1 -1
- package/dist/cjs/providers/drpc.js +11 -9
- package/dist/cjs/providers/drpc.js.map +1 -1
- package/dist/cjs/providers/index.js +1 -1
- package/dist/cjs/providers/infura.js +12 -10
- package/dist/cjs/providers/infura.js.map +1 -1
- package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js +15 -7
- package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -1
- package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js +14 -6
- package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -1
- package/dist/cjs/providers/mocks/MockRetrySolanaRpcFactory.js +15 -7
- package/dist/cjs/providers/mocks/MockRetrySolanaRpcFactory.js.map +1 -1
- package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js +66 -42
- package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js.map +1 -1
- package/dist/cjs/providers/mocks/index.js +1 -1
- package/dist/cjs/providers/mocks/mockEthersProvider.js +31 -29
- package/dist/cjs/providers/mocks/mockEthersProvider.js.map +1 -1
- package/dist/cjs/providers/quicknode.js +21 -19
- package/dist/cjs/providers/quicknode.js.map +1 -1
- package/dist/cjs/providers/rateLimitedProvider.js +79 -64
- package/dist/cjs/providers/rateLimitedProvider.js.map +1 -1
- package/dist/cjs/providers/retryProvider.js +246 -163
- package/dist/cjs/providers/retryProvider.js.map +1 -1
- package/dist/cjs/providers/solana/baseRpcFactories.js +18 -14
- package/dist/cjs/providers/solana/baseRpcFactories.js.map +1 -1
- package/dist/cjs/providers/solana/cachedRpcFactory.js +112 -70
- package/dist/cjs/providers/solana/cachedRpcFactory.js.map +1 -1
- package/dist/cjs/providers/solana/defaultRpcFactory.js +15 -8
- package/dist/cjs/providers/solana/defaultRpcFactory.js.map +1 -1
- package/dist/cjs/providers/solana/index.js +1 -1
- package/dist/cjs/providers/solana/quorumFallbackRpcFactory.js +191 -135
- package/dist/cjs/providers/solana/quorumFallbackRpcFactory.js.map +1 -1
- package/dist/cjs/providers/solana/rateLimitedRpcFactory.js +90 -67
- package/dist/cjs/providers/solana/rateLimitedRpcFactory.js.map +1 -1
- package/dist/cjs/providers/solana/retryRpcFactory.js +79 -52
- package/dist/cjs/providers/solana/retryRpcFactory.js.map +1 -1
- package/dist/cjs/providers/solana/utils.js +2 -2
- package/dist/cjs/providers/solana/utils.js.map +1 -1
- package/dist/cjs/providers/speedProvider.js +53 -31
- package/dist/cjs/providers/speedProvider.js.map +1 -1
- package/dist/cjs/providers/types.js +1 -1
- package/dist/cjs/providers/types.js.map +1 -1
- package/dist/cjs/providers/utils.js +28 -26
- package/dist/cjs/providers/utils.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +162 -108
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/customGasToken.js +26 -14
- package/dist/cjs/relayFeeCalculator/chain-queries/customGasToken.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +29 -20
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +137 -88
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/index.js +1 -1
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +297 -199
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/cjs/typeguards/error.js +7 -5
- package/dist/cjs/typeguards/error.js.map +1 -1
- package/dist/cjs/typeguards/index.js +1 -1
- package/dist/cjs/utils/AddressUtils.js +144 -117
- package/dist/cjs/utils/AddressUtils.js.map +1 -1
- package/dist/cjs/utils/ArrayUtils.js +78 -21
- package/dist/cjs/utils/ArrayUtils.js.map +1 -1
- package/dist/cjs/utils/BigNumberUtils.js +10 -9
- package/dist/cjs/utils/BigNumberUtils.js.map +1 -1
- package/dist/cjs/utils/BlockExplorerUtils.js +30 -26
- package/dist/cjs/utils/BlockExplorerUtils.js.map +1 -1
- package/dist/cjs/utils/BlockFinder.js +5 -2
- package/dist/cjs/utils/BlockFinder.js.map +1 -1
- package/dist/cjs/utils/BlockUtils.js +41 -24
- package/dist/cjs/utils/BlockUtils.js.map +1 -1
- package/dist/cjs/utils/BundleUtils.js +24 -21
- package/dist/cjs/utils/BundleUtils.js.map +1 -1
- package/dist/cjs/utils/CCTPUtils.js +126 -62
- package/dist/cjs/utils/CCTPUtils.js.map +1 -1
- package/dist/cjs/utils/CachingUtils.js +42 -20
- package/dist/cjs/utils/CachingUtils.js.map +1 -1
- package/dist/cjs/utils/ContractUtils.js +5 -5
- package/dist/cjs/utils/ContractUtils.js.map +1 -1
- package/dist/cjs/utils/DepositUtils.js +99 -122
- package/dist/cjs/utils/DepositUtils.js.map +1 -1
- package/dist/cjs/utils/EventUtils.js +70 -49
- package/dist/cjs/utils/EventUtils.js.map +1 -1
- package/dist/cjs/utils/FormattingUtils.js +32 -26
- package/dist/cjs/utils/FormattingUtils.js.map +1 -1
- package/dist/cjs/utils/HyperLiquidUtils.js +23 -10
- package/dist/cjs/utils/HyperLiquidUtils.js.map +1 -1
- package/dist/cjs/utils/IPFSUtils.js +34 -16
- package/dist/cjs/utils/IPFSUtils.js.map +1 -1
- package/dist/cjs/utils/JSONUtils.js +6 -6
- package/dist/cjs/utils/JSONUtils.js.map +1 -1
- package/dist/cjs/utils/LogUtils.js +12 -10
- package/dist/cjs/utils/LogUtils.js.map +1 -1
- package/dist/cjs/utils/Multicall.js +115 -56
- package/dist/cjs/utils/Multicall.js.map +1 -1
- package/dist/cjs/utils/NetworkUtils.js +28 -12
- package/dist/cjs/utils/NetworkUtils.js.map +1 -1
- package/dist/cjs/utils/NumberUtils.js +3 -1
- package/dist/cjs/utils/NumberUtils.js.map +1 -1
- package/dist/cjs/utils/ObjectUtils.js +41 -27
- package/dist/cjs/utils/ObjectUtils.js.map +1 -1
- package/dist/cjs/utils/Profiler.js +83 -80
- package/dist/cjs/utils/Profiler.js.map +1 -1
- package/dist/cjs/utils/ReviverUtils.js +9 -5
- package/dist/cjs/utils/ReviverUtils.js.map +1 -1
- package/dist/cjs/utils/SpokeUtils.js +84 -84
- package/dist/cjs/utils/SpokeUtils.js.map +1 -1
- package/dist/cjs/utils/TokenUtils.js +64 -41
- package/dist/cjs/utils/TokenUtils.js.map +1 -1
- package/dist/cjs/utils/TypeGuards.js +1 -1
- package/dist/cjs/utils/TypeGuards.js.map +1 -1
- package/dist/cjs/utils/ValidatorUtils.js +7 -7
- package/dist/cjs/utils/ValidatorUtils.js.map +1 -1
- package/dist/cjs/utils/abi/contracts/index.js +1 -1
- package/dist/cjs/utils/abi/index.js +22 -12
- package/dist/cjs/utils/abi/index.js.map +1 -1
- package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js +12 -9
- package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
- package/dist/cjs/utils/abi/typechain/index.js +1 -1
- package/dist/cjs/utils/common.js +53 -40
- package/dist/cjs/utils/common.js.map +1 -1
- package/dist/cjs/utils/index.js +1 -1
- package/dist/esm/addressAggregator/adapters/abstract.js +64 -48
- package/dist/esm/addressAggregator/adapters/abstract.js.map +1 -1
- package/dist/esm/addressAggregator/adapters/bybit.js +29 -15
- package/dist/esm/addressAggregator/adapters/bybit.js.map +1 -1
- package/dist/esm/addressAggregator/adapters/env.js +14 -9
- package/dist/esm/addressAggregator/adapters/env.js.map +1 -1
- package/dist/esm/addressAggregator/adapters/file.js +43 -29
- package/dist/esm/addressAggregator/adapters/file.js.map +1 -1
- package/dist/esm/addressAggregator/adapters/risklabs.js +35 -20
- package/dist/esm/addressAggregator/adapters/risklabs.js.map +1 -1
- package/dist/esm/addressAggregator/index.js +83 -52
- package/dist/esm/addressAggregator/index.js.map +1 -1
- package/dist/esm/addressAggregator/types.js +1 -1
- package/dist/esm/addressAggregator/types.js.map +1 -1
- package/dist/esm/apiClient/abstractClient.js +9 -15
- package/dist/esm/apiClient/abstractClient.js.map +1 -1
- package/dist/esm/apiClient/mockedClient.js +26 -21
- package/dist/esm/apiClient/mockedClient.js.map +1 -1
- package/dist/esm/apiClient/productionClient.js +101 -61
- package/dist/esm/apiClient/productionClient.js.map +1 -1
- package/dist/esm/arch/evm/BlockUtils.js +217 -139
- package/dist/esm/arch/evm/BlockUtils.js.map +1 -1
- package/dist/esm/arch/evm/SpokeUtils.js +289 -146
- package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
- package/dist/esm/arch/evm/utils/wait.js +46 -34
- package/dist/esm/arch/evm/utils/wait.js.map +1 -1
- package/dist/esm/arch/svm/BlockUtils.js +166 -118
- package/dist/esm/arch/svm/BlockUtils.js.map +1 -1
- package/dist/esm/arch/svm/SpokeUtils.js +1150 -738
- package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
- package/dist/esm/arch/svm/constants.js +1 -1
- package/dist/esm/arch/svm/constants.js.map +1 -1
- package/dist/esm/arch/svm/eventsClient.js +232 -172
- package/dist/esm/arch/svm/eventsClient.js.map +1 -1
- package/dist/esm/arch/svm/provider.js +1 -1
- package/dist/esm/arch/svm/provider.js.map +1 -1
- package/dist/esm/arch/svm/utils.js +345 -155
- package/dist/esm/arch/svm/utils.js.map +1 -1
- package/dist/esm/caching/Arweave/ArweaveClient.js +256 -182
- package/dist/esm/caching/Arweave/ArweaveClient.js.map +1 -1
- package/dist/esm/caching/IPFS/PinataIPFSClient.js +48 -47
- package/dist/esm/caching/IPFS/PinataIPFSClient.js.map +1 -1
- package/dist/esm/caching/Memory/MemoryCacheClient.js +19 -13
- package/dist/esm/caching/Memory/MemoryCacheClient.js.map +1 -1
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +408 -333
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/BaseAbstractClient.js +92 -66
- package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js +1054 -927
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +131 -102
- package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +59 -57
- package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js +5 -7
- package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +94 -75
- package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js +23 -45
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
- package/dist/esm/clients/HubPoolClient.js +740 -581
- package/dist/esm/clients/HubPoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +178 -133
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +183 -126
- package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +399 -372
- package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.js +9 -9
- package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/index.js +2 -2
- package/dist/esm/clients/SpokePoolClient/index.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/types.js +2 -2
- package/dist/esm/clients/SpokePoolClient/types.js.map +1 -1
- package/dist/esm/clients/mocks/MockConfigStoreClient.js +64 -53
- package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockEvents.js +49 -42
- package/dist/esm/clients/mocks/MockEvents.js.map +1 -1
- package/dist/esm/clients/mocks/MockHubPoolClient.js +182 -138
- package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +188 -202
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +132 -127
- package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +69 -53
- package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
- package/dist/esm/coingecko/Coingecko.js +443 -298
- package/dist/esm/coingecko/Coingecko.js.map +1 -1
- package/dist/esm/constants.js +47 -40
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/contracts/acrossConfigStore.js +46 -24
- package/dist/esm/contracts/acrossConfigStore.js.map +1 -1
- package/dist/esm/contracts/hubPool.js +18 -34
- package/dist/esm/contracts/hubPool.js.map +1 -1
- package/dist/esm/contracts/utils.js +5 -3
- package/dist/esm/contracts/utils.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js +14 -6
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/ethereum.js +42 -22
- package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/linea-viem.js +25 -13
- package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/polygon.js +108 -72
- package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/solana.js +31 -22
- package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -1
- package/dist/esm/gasPriceOracle/oracle.js +96 -70
- package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
- package/dist/esm/gasPriceOracle/types.js +2 -2
- package/dist/esm/gasPriceOracle/types.js.map +1 -1
- package/dist/esm/gasPriceOracle/util.js +4 -4
- package/dist/esm/gasPriceOracle/util.js.map +1 -1
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.js +33 -30
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.js.map +1 -1
- package/dist/esm/lpFeeCalculator/rateModel.js +9 -7
- package/dist/esm/lpFeeCalculator/rateModel.js.map +1 -1
- package/dist/esm/merkleDistributor/MerkleDistributor.js +17 -18
- package/dist/esm/merkleDistributor/MerkleDistributor.js.map +1 -1
- package/dist/esm/pool/TransactionManager.js +100 -45
- package/dist/esm/pool/TransactionManager.js.map +1 -1
- package/dist/esm/pool/poolClient.js +740 -479
- package/dist/esm/pool/poolClient.js.map +1 -1
- package/dist/esm/pool/uma/across/constants.js +2 -2
- package/dist/esm/pool/uma/across/constants.js.map +1 -1
- package/dist/esm/pool/uma/across/transactionManager.js +100 -45
- package/dist/esm/pool/uma/across/transactionManager.js.map +1 -1
- package/dist/esm/pool/uma/clients/erc20/client.js +13 -15
- package/dist/esm/pool/uma/clients/erc20/client.js.map +1 -1
- package/dist/esm/pool/uma/oracle/utils.js +3 -2
- package/dist/esm/pool/uma/oracle/utils.js.map +1 -1
- package/dist/esm/pool/uma/utils.js +28 -9
- package/dist/esm/pool/uma/utils.js.map +1 -1
- package/dist/esm/priceClient/adapters/acrossApi.js +40 -21
- package/dist/esm/priceClient/adapters/acrossApi.js.map +1 -1
- package/dist/esm/priceClient/adapters/baseAdapter.js +72 -46
- package/dist/esm/priceClient/adapters/baseAdapter.js.map +1 -1
- package/dist/esm/priceClient/adapters/coingecko.js +61 -33
- package/dist/esm/priceClient/adapters/coingecko.js.map +1 -1
- package/dist/esm/priceClient/adapters/default.js +31 -15
- package/dist/esm/priceClient/adapters/default.js.map +1 -1
- package/dist/esm/priceClient/adapters/defiLlama.js +73 -38
- package/dist/esm/priceClient/adapters/defiLlama.js.map +1 -1
- package/dist/esm/priceClient/priceClient.js +158 -109
- package/dist/esm/priceClient/priceClient.js.map +1 -1
- package/dist/esm/providers/alchemy.js +18 -16
- package/dist/esm/providers/alchemy.js.map +1 -1
- package/dist/esm/providers/cachedProvider.js +134 -99
- package/dist/esm/providers/cachedProvider.js.map +1 -1
- package/dist/esm/providers/constants.js +3 -3
- package/dist/esm/providers/constants.js.map +1 -1
- package/dist/esm/providers/drpc.js +10 -8
- package/dist/esm/providers/drpc.js.map +1 -1
- package/dist/esm/providers/infura.js +11 -9
- package/dist/esm/providers/infura.js.map +1 -1
- package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js +15 -6
- package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -1
- package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js +14 -5
- package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -1
- package/dist/esm/providers/mocks/MockRetrySolanaRpcFactory.js +15 -6
- package/dist/esm/providers/mocks/MockRetrySolanaRpcFactory.js.map +1 -1
- package/dist/esm/providers/mocks/MockSolanaRpcFactory.js +66 -41
- package/dist/esm/providers/mocks/MockSolanaRpcFactory.js.map +1 -1
- package/dist/esm/providers/mocks/mockEthersProvider.js +30 -27
- package/dist/esm/providers/mocks/mockEthersProvider.js.map +1 -1
- package/dist/esm/providers/quicknode.js +20 -18
- package/dist/esm/providers/quicknode.js.map +1 -1
- package/dist/esm/providers/rateLimitedProvider.js +80 -68
- package/dist/esm/providers/rateLimitedProvider.js.map +1 -1
- package/dist/esm/providers/retryProvider.js +259 -186
- package/dist/esm/providers/retryProvider.js.map +1 -1
- package/dist/esm/providers/solana/baseRpcFactories.js +19 -13
- package/dist/esm/providers/solana/baseRpcFactories.js.map +1 -1
- package/dist/esm/providers/solana/cachedRpcFactory.js +112 -75
- package/dist/esm/providers/solana/cachedRpcFactory.js.map +1 -1
- package/dist/esm/providers/solana/defaultRpcFactory.js +14 -6
- package/dist/esm/providers/solana/defaultRpcFactory.js.map +1 -1
- package/dist/esm/providers/solana/quorumFallbackRpcFactory.js +202 -149
- package/dist/esm/providers/solana/quorumFallbackRpcFactory.js.map +1 -1
- package/dist/esm/providers/solana/rateLimitedRpcFactory.js +90 -70
- package/dist/esm/providers/solana/rateLimitedRpcFactory.js.map +1 -1
- package/dist/esm/providers/solana/retryRpcFactory.js +74 -50
- package/dist/esm/providers/solana/retryRpcFactory.js.map +1 -1
- package/dist/esm/providers/solana/utils.js +1 -1
- package/dist/esm/providers/solana/utils.js.map +1 -1
- package/dist/esm/providers/speedProvider.js +51 -28
- package/dist/esm/providers/speedProvider.js.map +1 -1
- package/dist/esm/providers/types.js +2 -2
- package/dist/esm/providers/types.js.map +1 -1
- package/dist/esm/providers/utils.js +20 -17
- package/dist/esm/providers/utils.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +152 -98
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/customGasToken.js +26 -13
- package/dist/esm/relayFeeCalculator/chain-queries/customGasToken.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js +19 -9
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +128 -83
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +299 -211
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/esm/typeguards/error.js +5 -3
- package/dist/esm/typeguards/error.js.map +1 -1
- package/dist/esm/utils/AddressUtils.js +147 -115
- package/dist/esm/utils/AddressUtils.js.map +1 -1
- package/dist/esm/utils/ArrayUtils.js +78 -21
- package/dist/esm/utils/ArrayUtils.js.map +1 -1
- package/dist/esm/utils/BigNumberUtils.js +12 -11
- package/dist/esm/utils/BigNumberUtils.js.map +1 -1
- package/dist/esm/utils/BlockExplorerUtils.js +23 -19
- package/dist/esm/utils/BlockExplorerUtils.js.map +1 -1
- package/dist/esm/utils/BlockFinder.js +6 -2
- package/dist/esm/utils/BlockFinder.js.map +1 -1
- package/dist/esm/utils/BlockUtils.js +40 -31
- package/dist/esm/utils/BlockUtils.js.map +1 -1
- package/dist/esm/utils/BundleUtils.js +24 -21
- package/dist/esm/utils/BundleUtils.js.map +1 -1
- package/dist/esm/utils/CCTPUtils.js +123 -62
- package/dist/esm/utils/CCTPUtils.js.map +1 -1
- package/dist/esm/utils/CachingUtils.js +38 -17
- package/dist/esm/utils/CachingUtils.js.map +1 -1
- package/dist/esm/utils/ContractUtils.js +3 -3
- package/dist/esm/utils/ContractUtils.js.map +1 -1
- package/dist/esm/utils/DepositUtils.js +98 -121
- package/dist/esm/utils/DepositUtils.js.map +1 -1
- package/dist/esm/utils/EventUtils.js +69 -52
- package/dist/esm/utils/EventUtils.js.map +1 -1
- package/dist/esm/utils/FormattingUtils.js +26 -20
- package/dist/esm/utils/FormattingUtils.js.map +1 -1
- package/dist/esm/utils/HyperLiquidUtils.js +22 -8
- package/dist/esm/utils/HyperLiquidUtils.js.map +1 -1
- package/dist/esm/utils/IPFSUtils.js +35 -16
- package/dist/esm/utils/IPFSUtils.js.map +1 -1
- package/dist/esm/utils/JSONUtils.js +4 -4
- package/dist/esm/utils/JSONUtils.js.map +1 -1
- package/dist/esm/utils/LogUtils.js +12 -8
- package/dist/esm/utils/LogUtils.js.map +1 -1
- package/dist/esm/utils/Multicall.js +110 -50
- package/dist/esm/utils/Multicall.js.map +1 -1
- package/dist/esm/utils/NetworkUtils.js +28 -12
- package/dist/esm/utils/NetworkUtils.js.map +1 -1
- package/dist/esm/utils/NumberUtils.js +3 -1
- package/dist/esm/utils/NumberUtils.js.map +1 -1
- package/dist/esm/utils/ObjectUtils.js +41 -27
- package/dist/esm/utils/ObjectUtils.js.map +1 -1
- package/dist/esm/utils/Profiler.js +82 -77
- package/dist/esm/utils/Profiler.js.map +1 -1
- package/dist/esm/utils/ReviverUtils.js +7 -3
- package/dist/esm/utils/ReviverUtils.js.map +1 -1
- package/dist/esm/utils/SpokeUtils.js +78 -83
- package/dist/esm/utils/SpokeUtils.js.map +1 -1
- package/dist/esm/utils/TokenUtils.js +57 -33
- package/dist/esm/utils/TokenUtils.js.map +1 -1
- package/dist/esm/utils/ValidatorUtils.js +4 -4
- package/dist/esm/utils/ValidatorUtils.js.map +1 -1
- package/dist/esm/utils/abi/index.js +20 -10
- package/dist/esm/utils/abi/index.js.map +1 -1
- package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js +12 -8
- package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
- package/dist/esm/utils/common.js +52 -38
- package/dist/esm/utils/common.js.map +1 -1
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
- package/dist/types/utils/Multicall.d.ts.map +1 -1
- package/dist/types/utils/NetworkUtils.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/constants.ts +1 -0
- package/src/gasPriceOracle/oracle.ts +1 -0
- package/src/utils/Multicall.ts +1 -0
- package/src/utils/NetworkUtils.ts +8 -1
|
@@ -1,54 +1,80 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
1
2
|
import assert from "assert";
|
|
2
3
|
import axios from "axios";
|
|
3
|
-
|
|
4
|
-
name
|
|
5
|
-
|
|
6
|
-
_retries = 0;
|
|
7
|
-
_timeout = 0;
|
|
8
|
-
get retries() {
|
|
9
|
-
return this._retries;
|
|
10
|
-
}
|
|
11
|
-
set retries(retries) {
|
|
12
|
-
assert(retries >= 0);
|
|
13
|
-
this._retries = retries;
|
|
14
|
-
}
|
|
15
|
-
get timeout() {
|
|
16
|
-
return this._timeout;
|
|
17
|
-
}
|
|
18
|
-
set timeout(timeout) {
|
|
19
|
-
assert(timeout >= 0);
|
|
20
|
-
this._timeout = timeout;
|
|
21
|
-
}
|
|
22
|
-
constructor(name, host, { timeout = 1000, retries = 1 }) {
|
|
4
|
+
var BaseHTTPAdapter = /** @class */ (function () {
|
|
5
|
+
function BaseHTTPAdapter(name, host, _a) {
|
|
6
|
+
var _b = _a.timeout, timeout = _b === void 0 ? 1000 : _b, _c = _a.retries, retries = _c === void 0 ? 1 : _c;
|
|
23
7
|
this.name = name;
|
|
24
8
|
this.host = host;
|
|
9
|
+
this._retries = 0;
|
|
10
|
+
this._timeout = 0;
|
|
25
11
|
this.retries = retries;
|
|
26
12
|
this.timeout = timeout; // ms
|
|
27
13
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return
|
|
52
|
-
|
|
53
|
-
|
|
14
|
+
Object.defineProperty(BaseHTTPAdapter.prototype, "retries", {
|
|
15
|
+
get: function () {
|
|
16
|
+
return this._retries;
|
|
17
|
+
},
|
|
18
|
+
set: function (retries) {
|
|
19
|
+
assert(retries >= 0);
|
|
20
|
+
this._retries = retries;
|
|
21
|
+
},
|
|
22
|
+
enumerable: false,
|
|
23
|
+
configurable: true
|
|
24
|
+
});
|
|
25
|
+
Object.defineProperty(BaseHTTPAdapter.prototype, "timeout", {
|
|
26
|
+
get: function () {
|
|
27
|
+
return this._timeout;
|
|
28
|
+
},
|
|
29
|
+
set: function (timeout) {
|
|
30
|
+
assert(timeout >= 0);
|
|
31
|
+
this._timeout = timeout;
|
|
32
|
+
},
|
|
33
|
+
enumerable: false,
|
|
34
|
+
configurable: true
|
|
35
|
+
});
|
|
36
|
+
BaseHTTPAdapter.prototype.query = function (path, urlArgs) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
38
|
+
var url, args, errs, tries, err_1, errMsg;
|
|
39
|
+
var _a;
|
|
40
|
+
return __generator(this, function (_b) {
|
|
41
|
+
switch (_b.label) {
|
|
42
|
+
case 0:
|
|
43
|
+
url = "https://".concat(this.host, "/").concat(path !== null && path !== void 0 ? path : "");
|
|
44
|
+
args = {
|
|
45
|
+
headers: { "User-Agent": (_a = process.env.ACROSS_USER_AGENT) !== null && _a !== void 0 ? _a : "across-protocol" },
|
|
46
|
+
timeout: this.timeout,
|
|
47
|
+
params: urlArgs !== null && urlArgs !== void 0 ? urlArgs : {},
|
|
48
|
+
};
|
|
49
|
+
errs = [];
|
|
50
|
+
tries = 0;
|
|
51
|
+
_b.label = 1;
|
|
52
|
+
case 1:
|
|
53
|
+
_b.trys.push([1, 3, , 6]);
|
|
54
|
+
return [4 /*yield*/, axios(url, args)];
|
|
55
|
+
case 2: return [2 /*return*/, (_b.sent()).data];
|
|
56
|
+
case 3:
|
|
57
|
+
err_1 = _b.sent();
|
|
58
|
+
errMsg = axios.isAxiosError(err_1) || err_1 instanceof Error ? err_1.message : "unknown error";
|
|
59
|
+
errs.push(errMsg);
|
|
60
|
+
if (!(++tries <= this.retries)) return [3 /*break*/, 5];
|
|
61
|
+
return [4 /*yield*/, this.sleep(Math.pow(1.5, tries) * 1000)];
|
|
62
|
+
case 4:
|
|
63
|
+
_b.sent(); // simple backoff
|
|
64
|
+
_b.label = 5;
|
|
65
|
+
case 5: return [3 /*break*/, 6];
|
|
66
|
+
case 6:
|
|
67
|
+
if (tries <= this.retries) return [3 /*break*/, 1];
|
|
68
|
+
_b.label = 7;
|
|
69
|
+
case 7: throw new Error("".concat(this.name, " price lookup failure (").concat(errs.join(", "), ")"));
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
BaseHTTPAdapter.prototype.sleep = function (ms) {
|
|
75
|
+
return new Promise(function (r) { return setTimeout(r, ms); });
|
|
76
|
+
};
|
|
77
|
+
return BaseHTTPAdapter;
|
|
78
|
+
}());
|
|
79
|
+
export { BaseHTTPAdapter };
|
|
54
80
|
//# sourceMappingURL=baseAdapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseAdapter.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/baseAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,
|
|
1
|
+
{"version":3,"file":"baseAdapter.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/baseAdapter.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B;IAsBE,yBACkB,IAAY,EACZ,IAAY,EAC5B,EAAoD;YAAlD,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EAAE,eAAW,EAAX,OAAO,mBAAG,CAAC,KAAA;QAFb,SAAI,GAAJ,IAAI,CAAQ;QACZ,SAAI,GAAJ,IAAI,CAAQ;QAvBtB,aAAQ,GAAG,CAAC,CAAC;QACb,aAAQ,GAAG,CAAC,CAAC;QAyBnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,KAAK;IAC/B,CAAC;IAzBD,sBAAI,oCAAO;aAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aAED,UAAY,OAAe;YACzB,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC1B,CAAC;;;OALA;IAOD,sBAAI,oCAAO;aAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aAED,UAAY,OAAe;YACzB,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC1B,CAAC;;;OALA;IAgBe,+BAAK,GAArB,UAAsB,IAAY,EAAE,OAAgB;;;;;;;wBAC5C,GAAG,GAAG,kBAAW,IAAI,CAAC,IAAI,cAAI,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAE,CAAC;wBAC3C,IAAI,GAAG;4BACX,OAAO,EAAE,EAAE,YAAY,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,iBAAiB,mCAAI,iBAAiB,EAAE;4BAC7E,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,MAAM,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE;yBACtB,CAAC;wBAEI,IAAI,GAAa,EAAE,CAAC;wBACtB,KAAK,GAAG,CAAC,CAAC;;;;wBAGF,qBAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,EAAA;4BAA9B,sBAAO,CAAC,SAAsB,CAAC,CAAC,IAAI,EAAC;;;wBAE/B,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,KAAG,CAAC,IAAI,KAAG,YAAY,KAAK,CAAC,CAAC,CAAC,KAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;wBAC/F,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;6BACd,CAAA,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAA,EAAvB,wBAAuB;wBAAE,qBAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,EAAA;;wBAA7C,SAA6C,CAAC,CAAC,iBAAiB;;;;4BAExF,KAAK,IAAI,IAAI,CAAC,OAAO;;4BAE9B,MAAM,IAAI,KAAK,CAAC,UAAG,IAAI,CAAC,IAAI,oCAA0B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC,CAAC;;;;KAC3E;IAES,+BAAK,GAAf,UAAgB,EAAU;QACxB,OAAO,IAAI,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,EAAjB,CAAiB,CAAC,CAAC;IAC/C,CAAC;IACH,sBAAC;AAAD,CAAC,AAzDD,IAyDC"}
|
|
@@ -1,45 +1,73 @@
|
|
|
1
|
+
import { __awaiter, __extends, __generator } from "tslib";
|
|
1
2
|
import { BaseHTTPAdapter } from "./baseAdapter";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return price[0];
|
|
3
|
+
var PriceFeed = /** @class */ (function (_super) {
|
|
4
|
+
__extends(PriceFeed, _super);
|
|
5
|
+
function PriceFeed(_a) {
|
|
6
|
+
var _b = _a === void 0 ? {} : _a, name = _b.name, apiKey = _b.apiKey, _c = _b.timeout, timeout = _c === void 0 ? 5000 : _c, _d = _b.retries, retries = _d === void 0 ? 3 : _d;
|
|
7
|
+
var _this = _super.call(this, (name !== null && name !== void 0 ? name : apiKey) ? "CoinGecko Pro" : "CoinGecko Free", apiKey ? "pro-api.coingecko.com" : "api.coingecko.com", {
|
|
8
|
+
timeout: timeout,
|
|
9
|
+
retries: retries,
|
|
10
|
+
}) || this;
|
|
11
|
+
_this.apiKey = undefined;
|
|
12
|
+
_this.apiKey = apiKey;
|
|
13
|
+
return _this;
|
|
14
14
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
.filter((address) => prices[address.toLowerCase()] !== undefined)
|
|
28
|
-
.map((address) => {
|
|
29
|
-
const price = prices[address.toLowerCase()];
|
|
30
|
-
return { address, price: price[currency], timestamp: price.last_updated_at };
|
|
15
|
+
PriceFeed.prototype.getPriceByAddress = function (address_1) {
|
|
16
|
+
return __awaiter(this, arguments, void 0, function (address, currency) {
|
|
17
|
+
var price;
|
|
18
|
+
if (currency === void 0) { currency = "usd"; }
|
|
19
|
+
return __generator(this, function (_a) {
|
|
20
|
+
switch (_a.label) {
|
|
21
|
+
case 0: return [4 /*yield*/, this.getPricesByAddress([address], currency)];
|
|
22
|
+
case 1:
|
|
23
|
+
price = _a.sent();
|
|
24
|
+
return [2 /*return*/, price[0]];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
31
27
|
});
|
|
32
|
-
}
|
|
33
|
-
|
|
28
|
+
};
|
|
29
|
+
PriceFeed.prototype.getPricesByAddress = function (addresses_1) {
|
|
30
|
+
return __awaiter(this, arguments, void 0, function (addresses, currency) {
|
|
31
|
+
var queryArgs, prices;
|
|
32
|
+
if (currency === void 0) { currency = "usd"; }
|
|
33
|
+
return __generator(this, function (_a) {
|
|
34
|
+
switch (_a.label) {
|
|
35
|
+
case 0:
|
|
36
|
+
queryArgs = {
|
|
37
|
+
contract_addresses: addresses.map(function (address) { return address.toLowerCase(); }).join(","),
|
|
38
|
+
vs_currencies: currency,
|
|
39
|
+
include_last_updated_at: true,
|
|
40
|
+
};
|
|
41
|
+
if (this.apiKey)
|
|
42
|
+
queryArgs["x_cg_pro_api_key"] = this.apiKey;
|
|
43
|
+
return [4 /*yield*/, this.query("api/v3/simple/token_price/ethereum", queryArgs)];
|
|
44
|
+
case 1:
|
|
45
|
+
prices = _a.sent();
|
|
46
|
+
if (!this.validateResponse(prices, currency))
|
|
47
|
+
throw new Error("Unexpected ".concat(this.name, " response: ").concat(JSON.stringify(prices)));
|
|
48
|
+
return [2 /*return*/, addresses
|
|
49
|
+
.filter(function (address) { return prices[address.toLowerCase()] !== undefined; })
|
|
50
|
+
.map(function (address) {
|
|
51
|
+
var price = prices[address.toLowerCase()];
|
|
52
|
+
return { address: address, price: price[currency], timestamp: price.last_updated_at };
|
|
53
|
+
})];
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
PriceFeed.prototype.validateResponse = function (response, currency) {
|
|
34
59
|
if (typeof response !== "object")
|
|
35
60
|
return false;
|
|
36
|
-
return Object.entries(response).every((
|
|
61
|
+
return Object.entries(response).every(function (_a) {
|
|
62
|
+
var address = _a[0], tokenPrice = _a[1];
|
|
37
63
|
// prettier-ignore
|
|
38
64
|
return (/0x[0-9a-fA-F]{40}/.exec(address) !== undefined
|
|
39
65
|
&& typeof tokenPrice === "object"
|
|
40
66
|
&& !isNaN(tokenPrice[currency])
|
|
41
67
|
&& !isNaN(tokenPrice.last_updated_at));
|
|
42
68
|
});
|
|
43
|
-
}
|
|
44
|
-
|
|
69
|
+
};
|
|
70
|
+
return PriceFeed;
|
|
71
|
+
}(BaseHTTPAdapter));
|
|
72
|
+
export { PriceFeed };
|
|
45
73
|
//# sourceMappingURL=coingecko.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coingecko.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/coingecko.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAuB,MAAM,eAAe,CAAC;AAgBrE,
|
|
1
|
+
{"version":3,"file":"coingecko.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/coingecko.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAuB,MAAM,eAAe,CAAC;AAgBrE;IAA+B,6BAAe;IAG5C,mBAAY,EAAiE;YAAjE,qBAA+D,EAAE,KAAA,EAA/D,IAAI,UAAA,EAAE,MAAM,YAAA,EAAE,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EAAE,eAAW,EAAX,OAAO,mBAAG,CAAC,KAAA;QACrD,YAAA,MAAK,YAAC,CAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,MAAM,EAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,mBAAmB,EAAE;YACjH,OAAO,SAAA;YACP,OAAO,SAAA;SACR,CAAC,SAAC;QANY,YAAM,GAAuB,SAAS,CAAC;QAOtD,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;;IACvB,CAAC;IAEK,qCAAiB,GAAvB;4DAAwB,OAAe,EAAE,QAAgB;;YAAhB,yBAAA,EAAA,gBAAgB;;;4BACzC,qBAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAA;;wBAA1D,KAAK,GAAG,SAAkD;wBAChE,sBAAO,KAAK,CAAC,CAAC,CAAC,EAAC;;;;KACjB;IAEK,sCAAkB,GAAxB;4DAAyB,SAAmB,EAAE,QAAgB;;YAAhB,yBAAA,EAAA,gBAAgB;;;;wBACtD,SAAS,GAAwC;4BACrD,kBAAkB,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,WAAW,EAAE,EAArB,CAAqB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;4BAC/E,aAAa,EAAE,QAAQ;4BACvB,uBAAuB,EAAE,IAAI;yBAC9B,CAAC;wBACF,IAAI,IAAI,CAAC,MAAM;4BAAE,SAAS,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;wBAErC,qBAAM,IAAI,CAAC,KAAK,CAAC,oCAAoC,EAAE,SAAS,CAAC,EAAA;;wBAAnF,MAAM,GAAY,SAAiE;wBACzF,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC;4BAC1C,MAAM,IAAI,KAAK,CAAC,qBAAc,IAAI,CAAC,IAAI,wBAAc,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAE,CAAC,CAAC;wBAEjF,sBAAO,SAAS;iCACb,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,SAAS,EAA3C,CAA2C,CAAC;iCAChE,GAAG,CAAC,UAAC,OAAO;gCACX,IAAM,KAAK,GAAwB,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;gCACjE,OAAO,EAAE,OAAO,SAAA,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;4BAC/E,CAAC,CAAC,EAAC;;;;KACN;IAEO,oCAAgB,GAAxB,UAAyB,QAAiB,EAAE,QAAgB;QAC1D,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAE/C,OAAO,MAAM,CAAC,OAAO,CAAC,QAAkB,CAAC,CAAC,KAAK,CAAC,UAAC,EAAqB;gBAApB,OAAO,QAAA,EAAE,UAAU,QAAA;YACnE,kBAAkB;YAClB,OAAO,CACL,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,SAAS;mBAC5C,OAAO,UAAU,KAAK,QAAQ;mBAC9B,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;mBAC5B,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CACtC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IACH,gBAAC;AAAD,CAAC,AAjDD,CAA+B,eAAe,GAiD7C"}
|
|
@@ -1,27 +1,43 @@
|
|
|
1
|
+
import { __awaiter, __extends, __generator } from "tslib";
|
|
1
2
|
import { BaseHTTPAdapter } from "./baseAdapter";
|
|
2
3
|
/**
|
|
3
4
|
* Fallback price adapter to unconditionally return 0 on all input addresses.
|
|
4
5
|
* This adapter can be used as a last-resort to default to a token price of 0
|
|
5
6
|
* in case all other adapters fail to resolve a token price.
|
|
6
7
|
*/
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.
|
|
8
|
+
var PriceFeed = /** @class */ (function (_super) {
|
|
9
|
+
__extends(PriceFeed, _super);
|
|
10
|
+
function PriceFeed(prices) {
|
|
11
|
+
if (prices === void 0) { prices = {}; }
|
|
12
|
+
var _this = _super.call(this, "Default Adapter", "127.0.0.1", {}) || this;
|
|
13
|
+
_this.prices = prices;
|
|
14
|
+
return _this;
|
|
12
15
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
PriceFeed.prototype.getPriceByAddress = function (address, currency) {
|
|
17
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
18
|
+
var price;
|
|
19
|
+
return __generator(this, function (_a) {
|
|
20
|
+
switch (_a.label) {
|
|
21
|
+
case 0: return [4 /*yield*/, this.getPricesByAddress([address], currency)];
|
|
22
|
+
case 1:
|
|
23
|
+
price = (_a.sent())[0];
|
|
24
|
+
return [2 /*return*/, price];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
PriceFeed.prototype.getPricesByAddress = function (addresses, currency) {
|
|
30
|
+
var _this = this;
|
|
31
|
+
return Promise.resolve(addresses.map(function (address) {
|
|
32
|
+
var _a, _b;
|
|
19
33
|
return {
|
|
20
|
-
address,
|
|
21
|
-
price:
|
|
34
|
+
address: address,
|
|
35
|
+
price: (_b = (_a = _this.prices[currency]) === null || _a === void 0 ? void 0 : _a[address]) !== null && _b !== void 0 ? _b : 0,
|
|
22
36
|
timestamp: 0,
|
|
23
37
|
};
|
|
24
38
|
}));
|
|
25
|
-
}
|
|
26
|
-
|
|
39
|
+
};
|
|
40
|
+
return PriceFeed;
|
|
41
|
+
}(BaseHTTPAdapter));
|
|
42
|
+
export { PriceFeed };
|
|
27
43
|
//# sourceMappingURL=default.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/default.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIhD;;;;GAIG;AACH,
|
|
1
|
+
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/default.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIhD;;;;GAIG;AACH;IAA+B,6BAAe;IAC5C,mBAA6B,MAAyB;QAAzB,uBAAA,EAAA,WAAyB;QACpD,YAAA,MAAK,YAAC,iBAAiB,EAAE,WAAW,EAAE,EAAE,CAAC,SAAC;QADf,YAAM,GAAN,MAAM,CAAmB;;IAEtD,CAAC;IAEK,qCAAiB,GAAvB,UAAwB,OAAe,EAAE,QAAgB;;;;;4BACvC,qBAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAA;;wBAA3D,KAAK,GAAI,CAAA,SAAkD,CAAA,GAAtD;wBACZ,sBAAO,KAAK,EAAC;;;;KACd;IAED,sCAAkB,GAAlB,UAAmB,SAAmB,EAAE,QAAgB;QAAxD,iBAUC;QATC,OAAO,OAAO,CAAC,OAAO,CACpB,SAAS,CAAC,GAAG,CAAC,UAAC,OAAO;;YACpB,OAAO;gBACL,OAAO,SAAA;gBACP,KAAK,EAAE,MAAA,MAAA,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,0CAAG,OAAO,CAAC,mCAAI,CAAC;gBAC5C,SAAS,EAAE,CAAC;aACb,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACH,gBAAC;AAAD,CAAC,AArBD,CAA+B,eAAe,GAqB7C"}
|
|
@@ -1,48 +1,81 @@
|
|
|
1
|
+
import { __awaiter, __extends, __generator } from "tslib";
|
|
1
2
|
import assert from "assert";
|
|
2
3
|
import { BaseHTTPAdapter } from "./baseAdapter";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
var PriceFeed = /** @class */ (function (_super) {
|
|
5
|
+
__extends(PriceFeed, _super);
|
|
6
|
+
function PriceFeed(_a) {
|
|
7
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.name, name = _c === void 0 ? "DefiLlama" : _c, _d = _b.host, host = _d === void 0 ? "coins.llama.fi" : _d, _e = _b.timeout, timeout = _e === void 0 ? 5000 : _e, _f = _b.retries, retries = _f === void 0 ? 2 : _f, _g = _b.minConfidence, minConfidence = _g === void 0 ? 0.9 : _g;
|
|
8
|
+
var _this = _super.call(this, name, host, { timeout: timeout, retries: retries }) || this;
|
|
7
9
|
assert(minConfidence >= 0.0 && minConfidence <= 1.0);
|
|
8
|
-
|
|
10
|
+
_this._minConfidence = minConfidence;
|
|
11
|
+
return _this;
|
|
9
12
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
})
|
|
34
|
-
.map((address) => {
|
|
35
|
-
const { price, timestamp } = tokenPrices[address.toLowerCase()];
|
|
36
|
-
return { address, price, timestamp };
|
|
13
|
+
Object.defineProperty(PriceFeed.prototype, "minConfidence", {
|
|
14
|
+
get: function () {
|
|
15
|
+
return this._minConfidence;
|
|
16
|
+
},
|
|
17
|
+
set: function (minConfidence) {
|
|
18
|
+
assert(minConfidence >= 0.0 && minConfidence <= 1.0);
|
|
19
|
+
this._minConfidence = minConfidence;
|
|
20
|
+
},
|
|
21
|
+
enumerable: false,
|
|
22
|
+
configurable: true
|
|
23
|
+
});
|
|
24
|
+
PriceFeed.prototype.getPriceByAddress = function (address_1) {
|
|
25
|
+
return __awaiter(this, arguments, void 0, function (address, currency) {
|
|
26
|
+
var price;
|
|
27
|
+
if (currency === void 0) { currency = "usd"; }
|
|
28
|
+
return __generator(this, function (_a) {
|
|
29
|
+
switch (_a.label) {
|
|
30
|
+
case 0: return [4 /*yield*/, this.getPricesByAddress([address], currency)];
|
|
31
|
+
case 1:
|
|
32
|
+
price = _a.sent();
|
|
33
|
+
return [2 /*return*/, price[0]];
|
|
34
|
+
}
|
|
35
|
+
});
|
|
37
36
|
});
|
|
38
|
-
}
|
|
39
|
-
|
|
37
|
+
};
|
|
38
|
+
PriceFeed.prototype.getPricesByAddress = function (addresses_1) {
|
|
39
|
+
return __awaiter(this, arguments, void 0, function (addresses, currency) {
|
|
40
|
+
var path, response, tokenPrices;
|
|
41
|
+
var _this = this;
|
|
42
|
+
if (currency === void 0) { currency = "usd"; }
|
|
43
|
+
return __generator(this, function (_a) {
|
|
44
|
+
switch (_a.label) {
|
|
45
|
+
case 0:
|
|
46
|
+
if (currency != "usd")
|
|
47
|
+
throw new Error("Currency ".concat(currency, " not supported by ").concat(this.name));
|
|
48
|
+
path = "prices/current/" + addresses.map(function (address) { return "ethereum:".concat(address.toLowerCase()); }).join();
|
|
49
|
+
return [4 /*yield*/, this.query(path, {})];
|
|
50
|
+
case 1:
|
|
51
|
+
response = _a.sent();
|
|
52
|
+
if (!this.validateResponse(response))
|
|
53
|
+
throw new Error("Unexpected ".concat(this.name, " response: ").concat(JSON.stringify(response)));
|
|
54
|
+
tokenPrices = Object.fromEntries(Object.entries(response.coins).map(function (_a) {
|
|
55
|
+
var identifier = _a[0], tokenPrice = _a[1];
|
|
56
|
+
return [identifier.split(":")[1], tokenPrice];
|
|
57
|
+
}));
|
|
58
|
+
return [2 /*return*/, addresses
|
|
59
|
+
.filter(function (address) {
|
|
60
|
+
var _a;
|
|
61
|
+
return (((_a = tokenPrices[address.toLowerCase()]) === null || _a === void 0 ? void 0 : _a.confidence) || 0.0) >= _this.minConfidence;
|
|
62
|
+
})
|
|
63
|
+
.map(function (address) {
|
|
64
|
+
var _a = tokenPrices[address.toLowerCase()], price = _a.price, timestamp = _a.timestamp;
|
|
65
|
+
return { address: address, price: price, timestamp: timestamp };
|
|
66
|
+
})];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
};
|
|
71
|
+
PriceFeed.prototype.validateResponse = function (response) {
|
|
40
72
|
if (response === null || typeof response !== "object")
|
|
41
73
|
return false;
|
|
42
|
-
|
|
74
|
+
var coins = response.coins;
|
|
43
75
|
if (coins === null || typeof coins !== "object")
|
|
44
76
|
return false;
|
|
45
|
-
return Object.entries(coins).every((
|
|
77
|
+
return Object.entries(coins).every(function (_a) {
|
|
78
|
+
var address = _a[0], tokenPrice = _a[1];
|
|
46
79
|
// prettier-ignore
|
|
47
80
|
return (/[a-z]+:0[xX][0-9a-fA-F]{40}/.exec(address) !== undefined
|
|
48
81
|
&& typeof tokenPrice === "object"
|
|
@@ -53,6 +86,8 @@ export class PriceFeed extends BaseHTTPAdapter {
|
|
|
53
86
|
&& !isNaN(tokenPrice.timestamp)
|
|
54
87
|
&& !isNaN(tokenPrice.confidence));
|
|
55
88
|
});
|
|
56
|
-
}
|
|
57
|
-
|
|
89
|
+
};
|
|
90
|
+
return PriceFeed;
|
|
91
|
+
}(BaseHTTPAdapter));
|
|
92
|
+
export { PriceFeed };
|
|
58
93
|
//# sourceMappingURL=defiLlama.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defiLlama.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/defiLlama.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,eAAe,EAAuB,MAAM,eAAe,CAAC;AAqBrE,
|
|
1
|
+
{"version":3,"file":"defiLlama.js","sourceRoot":"","sources":["../../../../src/priceClient/adapters/defiLlama.ts"],"names":[],"mappings":"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"}
|