@across-protocol/sdk 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +661 -0
- package/README.md +116 -0
- package/dist/cjs/apiClient/abstractClient.d.ts +13 -0
- package/dist/cjs/apiClient/abstractClient.js +17 -0
- package/dist/cjs/apiClient/abstractClient.js.map +1 -0
- package/dist/cjs/apiClient/index.d.ts +2 -0
- package/dist/cjs/apiClient/index.js +11 -0
- package/dist/cjs/apiClient/index.js.map +1 -0
- package/dist/cjs/apiClient/mockedClient.d.ts +11 -0
- package/dist/cjs/apiClient/mockedClient.js +60 -0
- package/dist/cjs/apiClient/mockedClient.js.map +1 -0
- package/dist/cjs/apiClient/productionClient.d.ts +10 -0
- package/dist/cjs/apiClient/productionClient.js +110 -0
- package/dist/cjs/apiClient/productionClient.js.map +1 -0
- package/dist/cjs/apiClient/types.d.ts +44 -0
- package/dist/cjs/apiClient/types.js +3 -0
- package/dist/cjs/apiClient/types.js.map +1 -0
- package/dist/cjs/caching/Arweave/ArweaveClient.d.ts +20 -0
- package/dist/cjs/caching/Arweave/ArweaveClient.js +218 -0
- package/dist/cjs/caching/Arweave/ArweaveClient.js.map +1 -0
- package/dist/cjs/caching/Arweave/index.d.ts +1 -0
- package/dist/cjs/caching/Arweave/index.js +5 -0
- package/dist/cjs/caching/Arweave/index.js.map +1 -0
- package/dist/cjs/caching/IPFS/PinataIPFSClient.d.ts +11 -0
- package/dist/cjs/caching/IPFS/PinataIPFSClient.js +67 -0
- package/dist/cjs/caching/IPFS/PinataIPFSClient.js.map +1 -0
- package/dist/cjs/caching/IPFS/index.d.ts +1 -0
- package/dist/cjs/caching/IPFS/index.js +5 -0
- package/dist/cjs/caching/IPFS/index.js.map +1 -0
- package/dist/cjs/caching/index.d.ts +2 -0
- package/dist/cjs/caching/index.js +6 -0
- package/dist/cjs/caching/index.js.map +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +66 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +377 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/index.d.ts +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/index.js +5 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/index.js.map +1 -0
- package/dist/cjs/clients/BaseAbstractClient.d.ts +22 -0
- package/dist/cjs/clients/BaseAbstractClient.js +76 -0
- package/dist/cjs/clients/BaseAbstractClient.js.map +1 -0
- package/dist/cjs/clients/HubPoolClient.d.ts +111 -0
- package/dist/cjs/clients/HubPoolClient.js +758 -0
- package/dist/cjs/clients/HubPoolClient.js.map +1 -0
- package/dist/cjs/clients/SpokePoolClient.d.ts +117 -0
- package/dist/cjs/clients/SpokePoolClient.js +553 -0
- package/dist/cjs/clients/SpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/index.d.ts +4 -0
- package/dist/cjs/clients/index.js +14 -0
- package/dist/cjs/clients/index.js.map +1 -0
- package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +20 -0
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js +121 -0
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -0
- package/dist/cjs/clients/mocks/MockEvents.d.ts +27 -0
- package/dist/cjs/clients/mocks/MockEvents.js +117 -0
- package/dist/cjs/clients/mocks/MockEvents.js.map +1 -0
- package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +35 -0
- package/dist/cjs/clients/mocks/MockHubPoolClient.js +222 -0
- package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +38 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +319 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/mocks/index.d.ts +3 -0
- package/dist/cjs/clients/mocks/index.js +7 -0
- package/dist/cjs/clients/mocks/index.js.map +1 -0
- package/dist/cjs/coingecko/Coingecko.d.ts +40 -0
- package/dist/cjs/coingecko/Coingecko.js +277 -0
- package/dist/cjs/coingecko/Coingecko.js.map +1 -0
- package/dist/cjs/coingecko/index.d.ts +1 -0
- package/dist/cjs/coingecko/index.js +5 -0
- package/dist/cjs/coingecko/index.js.map +1 -0
- package/dist/cjs/constants.d.ts +18 -0
- package/dist/cjs/constants.js +27 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/contracts/acrossConfigStore.d.ts +57 -0
- package/dist/cjs/contracts/acrossConfigStore.js +65 -0
- package/dist/cjs/contracts/acrossConfigStore.js.map +1 -0
- package/dist/cjs/contracts/hubPool.d.ts +17 -0
- package/dist/cjs/contracts/hubPool.js +61 -0
- package/dist/cjs/contracts/hubPool.js.map +1 -0
- package/dist/cjs/contracts/index.d.ts +2 -0
- package/dist/cjs/contracts/index.js +7 -0
- package/dist/cjs/contracts/index.js.map +1 -0
- package/dist/cjs/contracts/utils.d.ts +15 -0
- package/dist/cjs/contracts/utils.js +40 -0
- package/dist/cjs/contracts/utils.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +25 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +4 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js +46 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/index.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/index.js +7 -0
- package/dist/cjs/gasPriceOracle/adapters/index.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon.js +77 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -0
- package/dist/cjs/gasPriceOracle/index.d.ts +2 -0
- package/dist/cjs/gasPriceOracle/index.js +6 -0
- package/dist/cjs/gasPriceOracle/index.js.map +1 -0
- package/dist/cjs/gasPriceOracle/oracle.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/oracle.js +45 -0
- package/dist/cjs/gasPriceOracle/oracle.js.map +1 -0
- package/dist/cjs/gasPriceOracle/types.d.ts +8 -0
- package/dist/cjs/gasPriceOracle/types.js +3 -0
- package/dist/cjs/gasPriceOracle/types.js.map +1 -0
- package/dist/cjs/gasPriceOracle/util.d.ts +2 -0
- package/dist/cjs/gasPriceOracle/util.js +8 -0
- package/dist/cjs/gasPriceOracle/util.js.map +1 -0
- package/dist/cjs/index.d.ts +15 -0
- package/dist/cjs/index.js +20 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/interfaces/Bridge.d.ts +9 -0
- package/dist/cjs/interfaces/Bridge.js +3 -0
- package/dist/cjs/interfaces/Bridge.js.map +1 -0
- package/dist/cjs/interfaces/CachingMechanism.d.ts +5 -0
- package/dist/cjs/interfaces/CachingMechanism.js +3 -0
- package/dist/cjs/interfaces/CachingMechanism.js.map +1 -0
- package/dist/cjs/interfaces/Common.d.ts +10 -0
- package/dist/cjs/interfaces/Common.js +3 -0
- package/dist/cjs/interfaces/Common.js.map +1 -0
- package/dist/cjs/interfaces/ConfigStore.d.ts +81 -0
- package/dist/cjs/interfaces/ConfigStore.js +3 -0
- package/dist/cjs/interfaces/ConfigStore.js.map +1 -0
- package/dist/cjs/interfaces/Error.d.ts +5 -0
- package/dist/cjs/interfaces/Error.js +3 -0
- package/dist/cjs/interfaces/Error.js.map +1 -0
- package/dist/cjs/interfaces/HubPool.d.ts +98 -0
- package/dist/cjs/interfaces/HubPool.js +3 -0
- package/dist/cjs/interfaces/HubPool.js.map +1 -0
- package/dist/cjs/interfaces/SpokePool.d.ts +103 -0
- package/dist/cjs/interfaces/SpokePool.js +16 -0
- package/dist/cjs/interfaces/SpokePool.js.map +1 -0
- package/dist/cjs/interfaces/TypedData.d.ts +19 -0
- package/dist/cjs/interfaces/TypedData.js +3 -0
- package/dist/cjs/interfaces/TypedData.js.map +1 -0
- package/dist/cjs/interfaces/index.d.ts +8 -0
- package/dist/cjs/interfaces/index.js +12 -0
- package/dist/cjs/interfaces/index.js.map +1 -0
- package/dist/cjs/lpFeeCalculator/index.d.ts +1 -0
- package/dist/cjs/lpFeeCalculator/index.js +5 -0
- package/dist/cjs/lpFeeCalculator/index.js.map +1 -0
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.d.ts +19 -0
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js +79 -0
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js.map +1 -0
- package/dist/cjs/lpFeeCalculator/rateModel.d.ts +28 -0
- package/dist/cjs/lpFeeCalculator/rateModel.js +103 -0
- package/dist/cjs/lpFeeCalculator/rateModel.js.map +1 -0
- package/dist/cjs/merkleDistributor/MerkleDistributor.d.ts +8 -0
- package/dist/cjs/merkleDistributor/MerkleDistributor.js +25 -0
- package/dist/cjs/merkleDistributor/MerkleDistributor.js.map +1 -0
- package/dist/cjs/merkleDistributor/index.d.ts +2 -0
- package/dist/cjs/merkleDistributor/index.js +6 -0
- package/dist/cjs/merkleDistributor/index.js.map +1 -0
- package/dist/cjs/merkleDistributor/model/Distribution.d.ts +17 -0
- package/dist/cjs/merkleDistributor/model/Distribution.js +3 -0
- package/dist/cjs/merkleDistributor/model/Distribution.js.map +1 -0
- package/dist/cjs/merkleDistributor/model/index.d.ts +1 -0
- package/dist/cjs/merkleDistributor/model/index.js +5 -0
- package/dist/cjs/merkleDistributor/model/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/pool/TransactionManager.d.ts +12 -0
- package/dist/cjs/pool/TransactionManager.js +121 -0
- package/dist/cjs/pool/TransactionManager.js.map +1 -0
- package/dist/cjs/pool/index.d.ts +1 -0
- package/dist/cjs/pool/index.js +5 -0
- package/dist/cjs/pool/index.js.map +1 -0
- package/dist/cjs/pool/poolClient.d.ts +232 -0
- package/dist/cjs/pool/poolClient.js +869 -0
- package/dist/cjs/pool/poolClient.js.map +1 -0
- package/dist/cjs/priceClient/adapters/acrossApi.d.ts +13 -0
- package/dist/cjs/priceClient/adapters/acrossApi.js +48 -0
- package/dist/cjs/priceClient/adapters/acrossApi.js.map +1 -0
- package/dist/cjs/priceClient/adapters/baseAdapter.d.ts +17 -0
- package/dist/cjs/priceClient/adapters/baseAdapter.js +81 -0
- package/dist/cjs/priceClient/adapters/baseAdapter.js.map +1 -0
- package/dist/cjs/priceClient/adapters/coingecko.d.ts +14 -0
- package/dist/cjs/priceClient/adapters/coingecko.js +75 -0
- package/dist/cjs/priceClient/adapters/coingecko.js.map +1 -0
- package/dist/cjs/priceClient/adapters/defiLlama.d.ts +17 -0
- package/dist/cjs/priceClient/adapters/defiLlama.js +95 -0
- package/dist/cjs/priceClient/adapters/defiLlama.js.map +1 -0
- package/dist/cjs/priceClient/adapters/index.d.ts +3 -0
- package/dist/cjs/priceClient/adapters/index.js +8 -0
- package/dist/cjs/priceClient/adapters/index.js.map +1 -0
- package/dist/cjs/priceClient/index.d.ts +2 -0
- package/dist/cjs/priceClient/index.js +7 -0
- package/dist/cjs/priceClient/index.js.map +1 -0
- package/dist/cjs/priceClient/priceClient.d.ts +32 -0
- package/dist/cjs/priceClient/priceClient.js +197 -0
- package/dist/cjs/priceClient/priceClient.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +29 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +62 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +151 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +35 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.d.ts +3 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js +7 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.d.ts +152 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js +43 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/index.d.ts +2 -0
- package/dist/cjs/relayFeeCalculator/index.js +6 -0
- package/dist/cjs/relayFeeCalculator/index.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +231 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +224 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -0
- package/dist/cjs/typechain.d.ts +17 -0
- package/dist/cjs/typechain.js +20 -0
- package/dist/cjs/typechain.js.map +1 -0
- package/dist/cjs/typeguards/error.d.ts +3 -0
- package/dist/cjs/typeguards/error.js +11 -0
- package/dist/cjs/typeguards/error.js.map +1 -0
- package/dist/cjs/typeguards/index.d.ts +1 -0
- package/dist/cjs/typeguards/index.js +5 -0
- package/dist/cjs/typeguards/index.js.map +1 -0
- package/dist/cjs/utils/AddressUtils.d.ts +2 -0
- package/dist/cjs/utils/AddressUtils.js +24 -0
- package/dist/cjs/utils/AddressUtils.js.map +1 -0
- package/dist/cjs/utils/ArrayUtils.d.ts +12 -0
- package/dist/cjs/utils/ArrayUtils.js +125 -0
- package/dist/cjs/utils/ArrayUtils.js.map +1 -0
- package/dist/cjs/utils/BigNumberUtils.d.ts +8 -0
- package/dist/cjs/utils/BigNumberUtils.js +26 -0
- package/dist/cjs/utils/BigNumberUtils.js.map +1 -0
- package/dist/cjs/utils/BlockExplorerUtils.d.ts +3 -0
- package/dist/cjs/utils/BlockExplorerUtils.js +52 -0
- package/dist/cjs/utils/BlockExplorerUtils.js.map +1 -0
- package/dist/cjs/utils/BlockUtils.d.ts +28 -0
- package/dist/cjs/utils/BlockUtils.js +251 -0
- package/dist/cjs/utils/BlockUtils.js.map +1 -0
- package/dist/cjs/utils/BundleUtils.d.ts +5 -0
- package/dist/cjs/utils/BundleUtils.js +62 -0
- package/dist/cjs/utils/BundleUtils.js.map +1 -0
- package/dist/cjs/utils/CachingUtils.d.ts +5 -0
- package/dist/cjs/utils/CachingUtils.js +59 -0
- package/dist/cjs/utils/CachingUtils.js.map +1 -0
- package/dist/cjs/utils/DeploymentUtils.d.ts +1 -0
- package/dist/cjs/utils/DeploymentUtils.js +8 -0
- package/dist/cjs/utils/DeploymentUtils.js.map +1 -0
- package/dist/cjs/utils/DepositUtils.d.ts +19 -0
- package/dist/cjs/utils/DepositUtils.js +107 -0
- package/dist/cjs/utils/DepositUtils.js.map +1 -0
- package/dist/cjs/utils/EventUtils.d.ts +18 -0
- package/dist/cjs/utils/EventUtils.js +169 -0
- package/dist/cjs/utils/EventUtils.js.map +1 -0
- package/dist/cjs/utils/FlowUtils.d.ts +7 -0
- package/dist/cjs/utils/FlowUtils.js +42 -0
- package/dist/cjs/utils/FlowUtils.js.map +1 -0
- package/dist/cjs/utils/FormattingUtils.d.ts +15 -0
- package/dist/cjs/utils/FormattingUtils.js +107 -0
- package/dist/cjs/utils/FormattingUtils.js.map +1 -0
- package/dist/cjs/utils/IPFSUtils.d.ts +4 -0
- package/dist/cjs/utils/IPFSUtils.js +48 -0
- package/dist/cjs/utils/IPFSUtils.js.map +1 -0
- package/dist/cjs/utils/JSONUtils.d.ts +4 -0
- package/dist/cjs/utils/JSONUtils.js +53 -0
- package/dist/cjs/utils/JSONUtils.js.map +1 -0
- package/dist/cjs/utils/LogUtils.d.ts +14 -0
- package/dist/cjs/utils/LogUtils.js +18 -0
- package/dist/cjs/utils/LogUtils.js.map +1 -0
- package/dist/cjs/utils/Multicall.d.ts +13 -0
- package/dist/cjs/utils/Multicall.js +73 -0
- package/dist/cjs/utils/Multicall.js.map +1 -0
- package/dist/cjs/utils/NetworkUtils.d.ts +10 -0
- package/dist/cjs/utils/NetworkUtils.js +70 -0
- package/dist/cjs/utils/NetworkUtils.js.map +1 -0
- package/dist/cjs/utils/NumberUtils.d.ts +2 -0
- package/dist/cjs/utils/NumberUtils.js +12 -0
- package/dist/cjs/utils/NumberUtils.js.map +1 -0
- package/dist/cjs/utils/ObjectUtils.d.ts +5 -0
- package/dist/cjs/utils/ObjectUtils.js +65 -0
- package/dist/cjs/utils/ObjectUtils.js.map +1 -0
- package/dist/cjs/utils/ReviverUtils.d.ts +3 -0
- package/dist/cjs/utils/ReviverUtils.js +23 -0
- package/dist/cjs/utils/ReviverUtils.js.map +1 -0
- package/dist/cjs/utils/SpokeUtils.d.ts +16 -0
- package/dist/cjs/utils/SpokeUtils.js +299 -0
- package/dist/cjs/utils/SpokeUtils.js.map +1 -0
- package/dist/cjs/utils/TimeUtils.d.ts +1 -0
- package/dist/cjs/utils/TimeUtils.js +8 -0
- package/dist/cjs/utils/TimeUtils.js.map +1 -0
- package/dist/cjs/utils/TokenUtils.d.ts +303 -0
- package/dist/cjs/utils/TokenUtils.js +74 -0
- package/dist/cjs/utils/TokenUtils.js.map +1 -0
- package/dist/cjs/utils/TypeGuards.d.ts +3 -0
- package/dist/cjs/utils/TypeGuards.js +16 -0
- package/dist/cjs/utils/TypeGuards.js.map +1 -0
- package/dist/cjs/utils/TypeUtils.d.ts +5 -0
- package/dist/cjs/utils/TypeUtils.js +3 -0
- package/dist/cjs/utils/TypeUtils.js.map +1 -0
- package/dist/cjs/utils/V3Utils.d.ts +4 -0
- package/dist/cjs/utils/V3Utils.js +15 -0
- package/dist/cjs/utils/V3Utils.js.map +1 -0
- package/dist/cjs/utils/ValidatorUtils.d.ts +2 -0
- package/dist/cjs/utils/ValidatorUtils.js +39 -0
- package/dist/cjs/utils/ValidatorUtils.js.map +1 -0
- package/dist/cjs/utils/abi/contracts/Multicall3.json +440 -0
- package/dist/cjs/utils/abi/index.d.ts +3 -0
- package/dist/cjs/utils/abi/index.js +31 -0
- package/dist/cjs/utils/abi/index.js.map +1 -0
- package/dist/cjs/utils/common.d.ts +79 -0
- package/dist/cjs/utils/common.js +220 -0
- package/dist/cjs/utils/common.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +29 -0
- package/dist/cjs/utils/index.js +33 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/esm/apiClient/abstractClient.d.ts +66 -0
- package/dist/esm/apiClient/abstractClient.js +31 -0
- package/dist/esm/apiClient/abstractClient.js.map +1 -0
- package/dist/esm/apiClient/index.d.ts +2 -0
- package/dist/esm/apiClient/index.js +3 -0
- package/dist/esm/apiClient/index.js.map +1 -0
- package/dist/esm/apiClient/mockedClient.d.ts +24 -0
- package/dist/esm/apiClient/mockedClient.js +69 -0
- package/dist/esm/apiClient/mockedClient.js.map +1 -0
- package/dist/esm/apiClient/productionClient.d.ts +16 -0
- package/dist/esm/apiClient/productionClient.js +114 -0
- package/dist/esm/apiClient/productionClient.js.map +1 -0
- package/dist/esm/apiClient/types.d.ts +44 -0
- package/dist/esm/apiClient/types.js +2 -0
- package/dist/esm/apiClient/types.js.map +1 -0
- package/dist/esm/caching/Arweave/ArweaveClient.d.ts +61 -0
- package/dist/esm/caching/Arweave/ArweaveClient.js +265 -0
- package/dist/esm/caching/Arweave/ArweaveClient.js.map +1 -0
- package/dist/esm/caching/Arweave/index.d.ts +1 -0
- package/dist/esm/caching/Arweave/index.js +2 -0
- package/dist/esm/caching/Arweave/index.js.map +1 -0
- package/dist/esm/caching/IPFS/PinataIPFSClient.d.ts +37 -0
- package/dist/esm/caching/IPFS/PinataIPFSClient.js +81 -0
- package/dist/esm/caching/IPFS/PinataIPFSClient.js.map +1 -0
- package/dist/esm/caching/IPFS/index.d.ts +1 -0
- package/dist/esm/caching/IPFS/index.js +2 -0
- package/dist/esm/caching/IPFS/index.js.map +1 -0
- package/dist/esm/caching/index.d.ts +2 -0
- package/dist/esm/caching/index.js +3 -0
- package/dist/esm/caching/index.js.map +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +108 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +467 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/index.d.ts +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/index.js +2 -0
- package/dist/esm/clients/AcrossConfigStoreClient/index.js.map +1 -0
- package/dist/esm/clients/BaseAbstractClient.d.ts +51 -0
- package/dist/esm/clients/BaseAbstractClient.js +101 -0
- package/dist/esm/clients/BaseAbstractClient.js.map +1 -0
- package/dist/esm/clients/HubPoolClient.d.ts +134 -0
- package/dist/esm/clients/HubPoolClient.js +862 -0
- package/dist/esm/clients/HubPoolClient.js.map +1 -0
- package/dist/esm/clients/SpokePoolClient.d.ts +318 -0
- package/dist/esm/clients/SpokePoolClient.js +780 -0
- package/dist/esm/clients/SpokePoolClient.js.map +1 -0
- package/dist/esm/clients/index.d.ts +4 -0
- package/dist/esm/clients/index.js +6 -0
- package/dist/esm/clients/index.js.map +1 -0
- package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +20 -0
- package/dist/esm/clients/mocks/MockConfigStoreClient.js +122 -0
- package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -0
- package/dist/esm/clients/mocks/MockEvents.d.ts +34 -0
- package/dist/esm/clients/mocks/MockEvents.js +126 -0
- package/dist/esm/clients/mocks/MockEvents.js.map +1 -0
- package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +35 -0
- package/dist/esm/clients/mocks/MockHubPoolClient.js +223 -0
- package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +38 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +322 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -0
- package/dist/esm/clients/mocks/index.d.ts +3 -0
- package/dist/esm/clients/mocks/index.js +4 -0
- package/dist/esm/clients/mocks/index.js.map +1 -0
- package/dist/esm/coingecko/Coingecko.d.ts +40 -0
- package/dist/esm/coingecko/Coingecko.js +283 -0
- package/dist/esm/coingecko/Coingecko.js.map +1 -0
- package/dist/esm/coingecko/index.d.ts +1 -0
- package/dist/esm/coingecko/index.js +2 -0
- package/dist/esm/coingecko/index.js.map +1 -0
- package/dist/esm/constants.d.ts +29 -0
- package/dist/esm/constants.js +34 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/contracts/acrossConfigStore.d.ts +57 -0
- package/dist/esm/contracts/acrossConfigStore.js +62 -0
- package/dist/esm/contracts/acrossConfigStore.js.map +1 -0
- package/dist/esm/contracts/hubPool.d.ts +17 -0
- package/dist/esm/contracts/hubPool.js +55 -0
- package/dist/esm/contracts/hubPool.js.map +1 -0
- package/dist/esm/contracts/index.d.ts +2 -0
- package/dist/esm/contracts/index.js +5 -0
- package/dist/esm/contracts/index.js.map +1 -0
- package/dist/esm/contracts/utils.d.ts +23 -0
- package/dist/esm/contracts/utils.js +38 -0
- package/dist/esm/contracts/utils.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js +25 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +4 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum.js +41 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/index.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/index.js +4 -0
- package/dist/esm/gasPriceOracle/adapters/index.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/polygon.js +78 -0
- package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -0
- package/dist/esm/gasPriceOracle/index.d.ts +2 -0
- package/dist/esm/gasPriceOracle/index.js +2 -0
- package/dist/esm/gasPriceOracle/index.js.map +1 -0
- package/dist/esm/gasPriceOracle/oracle.d.ts +10 -0
- package/dist/esm/gasPriceOracle/oracle.js +48 -0
- package/dist/esm/gasPriceOracle/oracle.js.map +1 -0
- package/dist/esm/gasPriceOracle/types.d.ts +8 -0
- package/dist/esm/gasPriceOracle/types.js +2 -0
- package/dist/esm/gasPriceOracle/types.js.map +1 -0
- package/dist/esm/gasPriceOracle/util.d.ts +2 -0
- package/dist/esm/gasPriceOracle/util.js +4 -0
- package/dist/esm/gasPriceOracle/util.js.map +1 -0
- package/dist/esm/index.d.ts +15 -0
- package/dist/esm/index.js +31 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/interfaces/Bridge.d.ts +9 -0
- package/dist/esm/interfaces/Bridge.js +2 -0
- package/dist/esm/interfaces/Bridge.js.map +1 -0
- package/dist/esm/interfaces/CachingMechanism.d.ts +26 -0
- package/dist/esm/interfaces/CachingMechanism.js +2 -0
- package/dist/esm/interfaces/CachingMechanism.js.map +1 -0
- package/dist/esm/interfaces/Common.d.ts +10 -0
- package/dist/esm/interfaces/Common.js +2 -0
- package/dist/esm/interfaces/Common.js.map +1 -0
- package/dist/esm/interfaces/ConfigStore.d.ts +157 -0
- package/dist/esm/interfaces/ConfigStore.js +2 -0
- package/dist/esm/interfaces/ConfigStore.js.map +1 -0
- package/dist/esm/interfaces/Error.d.ts +5 -0
- package/dist/esm/interfaces/Error.js +2 -0
- package/dist/esm/interfaces/Error.js.map +1 -0
- package/dist/esm/interfaces/HubPool.d.ts +98 -0
- package/dist/esm/interfaces/HubPool.js +2 -0
- package/dist/esm/interfaces/HubPool.js.map +1 -0
- package/dist/esm/interfaces/SpokePool.d.ts +103 -0
- package/dist/esm/interfaces/SpokePool.js +13 -0
- package/dist/esm/interfaces/SpokePool.js.map +1 -0
- package/dist/esm/interfaces/TypedData.d.ts +19 -0
- package/dist/esm/interfaces/TypedData.js +2 -0
- package/dist/esm/interfaces/TypedData.js.map +1 -0
- package/dist/esm/interfaces/index.d.ts +8 -0
- package/dist/esm/interfaces/index.js +9 -0
- package/dist/esm/interfaces/index.js.map +1 -0
- package/dist/esm/lpFeeCalculator/index.d.ts +1 -0
- package/dist/esm/lpFeeCalculator/index.js +2 -0
- package/dist/esm/lpFeeCalculator/index.js.map +1 -0
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.d.ts +66 -0
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.js +129 -0
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.js.map +1 -0
- package/dist/esm/lpFeeCalculator/rateModel.d.ts +45 -0
- package/dist/esm/lpFeeCalculator/rateModel.js +138 -0
- package/dist/esm/lpFeeCalculator/rateModel.js.map +1 -0
- package/dist/esm/merkleDistributor/MerkleDistributor.d.ts +20 -0
- package/dist/esm/merkleDistributor/MerkleDistributor.js +34 -0
- package/dist/esm/merkleDistributor/MerkleDistributor.js.map +1 -0
- package/dist/esm/merkleDistributor/index.d.ts +2 -0
- package/dist/esm/merkleDistributor/index.js +3 -0
- package/dist/esm/merkleDistributor/index.js.map +1 -0
- package/dist/esm/merkleDistributor/model/Distribution.d.ts +17 -0
- package/dist/esm/merkleDistributor/model/Distribution.js +2 -0
- package/dist/esm/merkleDistributor/model/Distribution.js.map +1 -0
- package/dist/esm/merkleDistributor/model/index.d.ts +1 -0
- package/dist/esm/merkleDistributor/model/index.js +2 -0
- package/dist/esm/merkleDistributor/model/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/pool/TransactionManager.d.ts +12 -0
- package/dist/esm/pool/TransactionManager.js +122 -0
- package/dist/esm/pool/TransactionManager.js.map +1 -0
- package/dist/esm/pool/index.d.ts +1 -0
- package/dist/esm/pool/index.js +2 -0
- package/dist/esm/pool/index.js.map +1 -0
- package/dist/esm/pool/poolClient.d.ts +242 -0
- package/dist/esm/pool/poolClient.js +899 -0
- package/dist/esm/pool/poolClient.js.map +1 -0
- package/dist/esm/priceClient/adapters/acrossApi.d.ts +14 -0
- package/dist/esm/priceClient/adapters/acrossApi.js +49 -0
- package/dist/esm/priceClient/adapters/acrossApi.js.map +1 -0
- package/dist/esm/priceClient/adapters/baseAdapter.d.ts +17 -0
- package/dist/esm/priceClient/adapters/baseAdapter.js +78 -0
- package/dist/esm/priceClient/adapters/baseAdapter.js.map +1 -0
- package/dist/esm/priceClient/adapters/coingecko.d.ts +14 -0
- package/dist/esm/priceClient/adapters/coingecko.js +73 -0
- package/dist/esm/priceClient/adapters/coingecko.js.map +1 -0
- package/dist/esm/priceClient/adapters/defiLlama.d.ts +17 -0
- package/dist/esm/priceClient/adapters/defiLlama.js +93 -0
- package/dist/esm/priceClient/adapters/defiLlama.js.map +1 -0
- package/dist/esm/priceClient/adapters/index.d.ts +3 -0
- package/dist/esm/priceClient/adapters/index.js +7 -0
- package/dist/esm/priceClient/adapters/index.js.map +1 -0
- package/dist/esm/priceClient/index.d.ts +2 -0
- package/dist/esm/priceClient/index.js +4 -0
- package/dist/esm/priceClient/index.js.map +1 -0
- package/dist/esm/priceClient/priceClient.d.ts +32 -0
- package/dist/esm/priceClient/priceClient.js +206 -0
- package/dist/esm/priceClient/priceClient.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +61 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +91 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +151 -0
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js +38 -0
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.d.ts +3 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.js +4 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.d.ts +152 -0
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.js +40 -0
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.js.map +1 -0
- package/dist/esm/relayFeeCalculator/index.d.ts +2 -0
- package/dist/esm/relayFeeCalculator/index.js +3 -0
- package/dist/esm/relayFeeCalculator/index.js.map +1 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +282 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +298 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -0
- package/dist/esm/typechain.d.ts +22 -0
- package/dist/esm/typechain.js +9 -0
- package/dist/esm/typechain.js.map +1 -0
- package/dist/esm/typeguards/error.d.ts +3 -0
- package/dist/esm/typeguards/error.js +6 -0
- package/dist/esm/typeguards/error.js.map +1 -0
- package/dist/esm/typeguards/index.d.ts +1 -0
- package/dist/esm/typeguards/index.js +2 -0
- package/dist/esm/typeguards/index.js.map +1 -0
- package/dist/esm/utils/AddressUtils.d.ts +8 -0
- package/dist/esm/utils/AddressUtils.js +28 -0
- package/dist/esm/utils/AddressUtils.js.map +1 -0
- package/dist/esm/utils/ArrayUtils.d.ts +98 -0
- package/dist/esm/utils/ArrayUtils.js +196 -0
- package/dist/esm/utils/ArrayUtils.js.map +1 -0
- package/dist/esm/utils/BigNumberUtils.d.ts +31 -0
- package/dist/esm/utils/BigNumberUtils.js +52 -0
- package/dist/esm/utils/BigNumberUtils.js.map +1 -0
- package/dist/esm/utils/BlockExplorerUtils.d.ts +21 -0
- package/dist/esm/utils/BlockExplorerUtils.js +91 -0
- package/dist/esm/utils/BlockExplorerUtils.js.map +1 -0
- package/dist/esm/utils/BlockUtils.d.ts +46 -0
- package/dist/esm/utils/BlockUtils.js +294 -0
- package/dist/esm/utils/BlockUtils.js.map +1 -0
- package/dist/esm/utils/BundleUtils.d.ts +29 -0
- package/dist/esm/utils/BundleUtils.js +89 -0
- package/dist/esm/utils/BundleUtils.js.map +1 -0
- package/dist/esm/utils/CachingUtils.d.ts +17 -0
- package/dist/esm/utils/CachingUtils.js +66 -0
- package/dist/esm/utils/CachingUtils.js.map +1 -0
- package/dist/esm/utils/DeploymentUtils.d.ts +1 -0
- package/dist/esm/utils/DeploymentUtils.js +2 -0
- package/dist/esm/utils/DeploymentUtils.js.map +1 -0
- package/dist/esm/utils/DepositUtils.d.ts +46 -0
- package/dist/esm/utils/DepositUtils.js +138 -0
- package/dist/esm/utils/DepositUtils.js.map +1 -0
- package/dist/esm/utils/EventUtils.d.ts +32 -0
- package/dist/esm/utils/EventUtils.js +194 -0
- package/dist/esm/utils/EventUtils.js.map +1 -0
- package/dist/esm/utils/FlowUtils.d.ts +8 -0
- package/dist/esm/utils/FlowUtils.js +39 -0
- package/dist/esm/utils/FlowUtils.js.map +1 -0
- package/dist/esm/utils/FormattingUtils.d.ts +61 -0
- package/dist/esm/utils/FormattingUtils.js +167 -0
- package/dist/esm/utils/FormattingUtils.js.map +1 -0
- package/dist/esm/utils/IPFSUtils.d.ts +24 -0
- package/dist/esm/utils/IPFSUtils.js +65 -0
- package/dist/esm/utils/IPFSUtils.js.map +1 -0
- package/dist/esm/utils/JSONUtils.d.ts +31 -0
- package/dist/esm/utils/JSONUtils.js +82 -0
- package/dist/esm/utils/JSONUtils.js.map +1 -0
- package/dist/esm/utils/LogUtils.d.ts +20 -0
- package/dist/esm/utils/LogUtils.js +19 -0
- package/dist/esm/utils/LogUtils.js.map +1 -0
- package/dist/esm/utils/Multicall.d.ts +13 -0
- package/dist/esm/utils/Multicall.js +70 -0
- package/dist/esm/utils/Multicall.js.map +1 -0
- package/dist/esm/utils/NetworkUtils.d.ts +60 -0
- package/dist/esm/utils/NetworkUtils.js +109 -0
- package/dist/esm/utils/NetworkUtils.js.map +1 -0
- package/dist/esm/utils/NumberUtils.d.ts +12 -0
- package/dist/esm/utils/NumberUtils.js +17 -0
- package/dist/esm/utils/NumberUtils.js.map +1 -0
- package/dist/esm/utils/ObjectUtils.d.ts +10 -0
- package/dist/esm/utils/ObjectUtils.js +72 -0
- package/dist/esm/utils/ObjectUtils.js.map +1 -0
- package/dist/esm/utils/ReviverUtils.d.ts +15 -0
- package/dist/esm/utils/ReviverUtils.js +33 -0
- package/dist/esm/utils/ReviverUtils.js.map +1 -0
- package/dist/esm/utils/SpokeUtils.d.ts +64 -0
- package/dist/esm/utils/SpokeUtils.js +370 -0
- package/dist/esm/utils/SpokeUtils.js.map +1 -0
- package/dist/esm/utils/TimeUtils.d.ts +5 -0
- package/dist/esm/utils/TimeUtils.js +8 -0
- package/dist/esm/utils/TimeUtils.js.map +1 -0
- package/dist/esm/utils/TokenUtils.d.ts +325 -0
- package/dist/esm/utils/TokenUtils.js +88 -0
- package/dist/esm/utils/TokenUtils.js.map +1 -0
- package/dist/esm/utils/TypeGuards.d.ts +3 -0
- package/dist/esm/utils/TypeGuards.js +10 -0
- package/dist/esm/utils/TypeGuards.js.map +1 -0
- package/dist/esm/utils/TypeUtils.d.ts +5 -0
- package/dist/esm/utils/TypeUtils.js +2 -0
- package/dist/esm/utils/TypeUtils.js.map +1 -0
- package/dist/esm/utils/V3Utils.d.ts +4 -0
- package/dist/esm/utils/V3Utils.js +10 -0
- package/dist/esm/utils/V3Utils.js.map +1 -0
- package/dist/esm/utils/ValidatorUtils.d.ts +2 -0
- package/dist/esm/utils/ValidatorUtils.js +35 -0
- package/dist/esm/utils/ValidatorUtils.js.map +1 -0
- package/dist/esm/utils/abi/contracts/Multicall3.json +440 -0
- package/dist/esm/utils/abi/index.d.ts +18 -0
- package/dist/esm/utils/abi/index.js +41 -0
- package/dist/esm/utils/abi/index.js.map +1 -0
- package/dist/esm/utils/common.d.ts +204 -0
- package/dist/esm/utils/common.js +325 -0
- package/dist/esm/utils/common.js.map +1 -0
- package/dist/esm/utils/index.d.ts +29 -0
- package/dist/esm/utils/index.js +30 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/types/apiClient/abstractClient.d.ts +67 -0
- package/dist/types/apiClient/abstractClient.d.ts.map +1 -0
- package/dist/types/apiClient/index.d.ts +3 -0
- package/dist/types/apiClient/index.d.ts.map +1 -0
- package/dist/types/apiClient/mockedClient.d.ts +25 -0
- package/dist/types/apiClient/mockedClient.d.ts.map +1 -0
- package/dist/types/apiClient/productionClient.d.ts +17 -0
- package/dist/types/apiClient/productionClient.d.ts.map +1 -0
- package/dist/types/apiClient/types.d.ts +45 -0
- package/dist/types/apiClient/types.d.ts.map +1 -0
- package/dist/types/caching/Arweave/ArweaveClient.d.ts +62 -0
- package/dist/types/caching/Arweave/ArweaveClient.d.ts.map +1 -0
- package/dist/types/caching/Arweave/index.d.ts +2 -0
- package/dist/types/caching/Arweave/index.d.ts.map +1 -0
- package/dist/types/caching/IPFS/PinataIPFSClient.d.ts +38 -0
- package/dist/types/caching/IPFS/PinataIPFSClient.d.ts.map +1 -0
- package/dist/types/caching/IPFS/index.d.ts +2 -0
- package/dist/types/caching/IPFS/index.d.ts.map +1 -0
- package/dist/types/caching/index.d.ts +3 -0
- package/dist/types/caching/index.d.ts.map +1 -0
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +109 -0
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -0
- package/dist/types/clients/AcrossConfigStoreClient/index.d.ts +2 -0
- package/dist/types/clients/AcrossConfigStoreClient/index.d.ts.map +1 -0
- package/dist/types/clients/BaseAbstractClient.d.ts +52 -0
- package/dist/types/clients/BaseAbstractClient.d.ts.map +1 -0
- package/dist/types/clients/HubPoolClient.d.ts +135 -0
- package/dist/types/clients/HubPoolClient.d.ts.map +1 -0
- package/dist/types/clients/SpokePoolClient.d.ts +319 -0
- package/dist/types/clients/SpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/index.d.ts +5 -0
- package/dist/types/clients/index.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +21 -0
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockEvents.d.ts +35 -0
- package/dist/types/clients/mocks/MockEvents.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockHubPoolClient.d.ts +36 -0
- package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +39 -0
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/index.d.ts +4 -0
- package/dist/types/clients/mocks/index.d.ts.map +1 -0
- package/dist/types/coingecko/Coingecko.d.ts +41 -0
- package/dist/types/coingecko/Coingecko.d.ts.map +1 -0
- package/dist/types/coingecko/index.d.ts +2 -0
- package/dist/types/coingecko/index.d.ts.map +1 -0
- package/dist/types/constants.d.ts +30 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/contracts/acrossConfigStore.d.ts +58 -0
- package/dist/types/contracts/acrossConfigStore.d.ts.map +1 -0
- package/dist/types/contracts/hubPool.d.ts +18 -0
- package/dist/types/contracts/hubPool.d.ts.map +1 -0
- package/dist/types/contracts/index.d.ts +3 -0
- package/dist/types/contracts/index.d.ts.map +1 -0
- package/dist/types/contracts/utils.d.ts +24 -0
- package/dist/types/contracts/utils.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +5 -0
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/index.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/index.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/index.d.ts +3 -0
- package/dist/types/gasPriceOracle/index.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/oracle.d.ts +11 -0
- package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/types.d.ts +9 -0
- package/dist/types/gasPriceOracle/types.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/util.d.ts +3 -0
- package/dist/types/gasPriceOracle/util.d.ts.map +1 -0
- package/dist/types/index.d.ts +16 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/interfaces/Bridge.d.ts +10 -0
- package/dist/types/interfaces/Bridge.d.ts.map +1 -0
- package/dist/types/interfaces/CachingMechanism.d.ts +27 -0
- package/dist/types/interfaces/CachingMechanism.d.ts.map +1 -0
- package/dist/types/interfaces/Common.d.ts +11 -0
- package/dist/types/interfaces/Common.d.ts.map +1 -0
- package/dist/types/interfaces/ConfigStore.d.ts +158 -0
- package/dist/types/interfaces/ConfigStore.d.ts.map +1 -0
- package/dist/types/interfaces/Error.d.ts +6 -0
- package/dist/types/interfaces/Error.d.ts.map +1 -0
- package/dist/types/interfaces/HubPool.d.ts +99 -0
- package/dist/types/interfaces/HubPool.d.ts.map +1 -0
- package/dist/types/interfaces/SpokePool.d.ts +104 -0
- package/dist/types/interfaces/SpokePool.d.ts.map +1 -0
- package/dist/types/interfaces/TypedData.d.ts +20 -0
- package/dist/types/interfaces/TypedData.d.ts.map +1 -0
- package/dist/types/interfaces/index.d.ts +9 -0
- package/dist/types/interfaces/index.d.ts.map +1 -0
- package/dist/types/lpFeeCalculator/index.d.ts +2 -0
- package/dist/types/lpFeeCalculator/index.d.ts.map +1 -0
- package/dist/types/lpFeeCalculator/lpFeeCalculator.d.ts +67 -0
- package/dist/types/lpFeeCalculator/lpFeeCalculator.d.ts.map +1 -0
- package/dist/types/lpFeeCalculator/rateModel.d.ts +46 -0
- package/dist/types/lpFeeCalculator/rateModel.d.ts.map +1 -0
- package/dist/types/merkleDistributor/MerkleDistributor.d.ts +21 -0
- package/dist/types/merkleDistributor/MerkleDistributor.d.ts.map +1 -0
- package/dist/types/merkleDistributor/index.d.ts +3 -0
- package/dist/types/merkleDistributor/index.d.ts.map +1 -0
- package/dist/types/merkleDistributor/model/Distribution.d.ts +18 -0
- package/dist/types/merkleDistributor/model/Distribution.d.ts.map +1 -0
- package/dist/types/merkleDistributor/model/index.d.ts +2 -0
- package/dist/types/merkleDistributor/model/index.d.ts.map +1 -0
- package/dist/types/pool/TransactionManager.d.ts +13 -0
- package/dist/types/pool/TransactionManager.d.ts.map +1 -0
- package/dist/types/pool/index.d.ts +2 -0
- package/dist/types/pool/index.d.ts.map +1 -0
- package/dist/types/pool/poolClient.d.ts +243 -0
- package/dist/types/pool/poolClient.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/acrossApi.d.ts +15 -0
- package/dist/types/priceClient/adapters/acrossApi.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/baseAdapter.d.ts +18 -0
- package/dist/types/priceClient/adapters/baseAdapter.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/coingecko.d.ts +15 -0
- package/dist/types/priceClient/adapters/coingecko.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/defiLlama.d.ts +18 -0
- package/dist/types/priceClient/adapters/defiLlama.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/index.d.ts +4 -0
- package/dist/types/priceClient/adapters/index.d.ts.map +1 -0
- package/dist/types/priceClient/index.d.ts +3 -0
- package/dist/types/priceClient/index.d.ts.map +1 -0
- package/dist/types/priceClient/priceClient.d.ts +33 -0
- package/dist/types/priceClient/priceClient.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +62 -0
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +152 -0
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/index.d.ts +4 -0
- package/dist/types/relayFeeCalculator/chain-queries/index.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts +153 -0
- package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/index.d.ts +3 -0
- package/dist/types/relayFeeCalculator/index.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +283 -0
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -0
- package/dist/types/typechain.d.ts +23 -0
- package/dist/types/typechain.d.ts.map +1 -0
- package/dist/types/typeguards/error.d.ts +4 -0
- package/dist/types/typeguards/error.d.ts.map +1 -0
- package/dist/types/typeguards/index.d.ts +2 -0
- package/dist/types/typeguards/index.d.ts.map +1 -0
- package/dist/types/utils/AddressUtils.d.ts +9 -0
- package/dist/types/utils/AddressUtils.d.ts.map +1 -0
- package/dist/types/utils/ArrayUtils.d.ts +99 -0
- package/dist/types/utils/ArrayUtils.d.ts.map +1 -0
- package/dist/types/utils/BigNumberUtils.d.ts +32 -0
- package/dist/types/utils/BigNumberUtils.d.ts.map +1 -0
- package/dist/types/utils/BlockExplorerUtils.d.ts +22 -0
- package/dist/types/utils/BlockExplorerUtils.d.ts.map +1 -0
- package/dist/types/utils/BlockUtils.d.ts +47 -0
- package/dist/types/utils/BlockUtils.d.ts.map +1 -0
- package/dist/types/utils/BundleUtils.d.ts +30 -0
- package/dist/types/utils/BundleUtils.d.ts.map +1 -0
- package/dist/types/utils/CachingUtils.d.ts +18 -0
- package/dist/types/utils/CachingUtils.d.ts.map +1 -0
- package/dist/types/utils/DeploymentUtils.d.ts +2 -0
- package/dist/types/utils/DeploymentUtils.d.ts.map +1 -0
- package/dist/types/utils/DepositUtils.d.ts +47 -0
- package/dist/types/utils/DepositUtils.d.ts.map +1 -0
- package/dist/types/utils/EventUtils.d.ts +33 -0
- package/dist/types/utils/EventUtils.d.ts.map +1 -0
- package/dist/types/utils/FlowUtils.d.ts +9 -0
- package/dist/types/utils/FlowUtils.d.ts.map +1 -0
- package/dist/types/utils/FormattingUtils.d.ts +62 -0
- package/dist/types/utils/FormattingUtils.d.ts.map +1 -0
- package/dist/types/utils/IPFSUtils.d.ts +25 -0
- package/dist/types/utils/IPFSUtils.d.ts.map +1 -0
- package/dist/types/utils/JSONUtils.d.ts +32 -0
- package/dist/types/utils/JSONUtils.d.ts.map +1 -0
- package/dist/types/utils/LogUtils.d.ts +21 -0
- package/dist/types/utils/LogUtils.d.ts.map +1 -0
- package/dist/types/utils/Multicall.d.ts +14 -0
- package/dist/types/utils/Multicall.d.ts.map +1 -0
- package/dist/types/utils/NetworkUtils.d.ts +61 -0
- package/dist/types/utils/NetworkUtils.d.ts.map +1 -0
- package/dist/types/utils/NumberUtils.d.ts +13 -0
- package/dist/types/utils/NumberUtils.d.ts.map +1 -0
- package/dist/types/utils/ObjectUtils.d.ts +11 -0
- package/dist/types/utils/ObjectUtils.d.ts.map +1 -0
- package/dist/types/utils/ReviverUtils.d.ts +16 -0
- package/dist/types/utils/ReviverUtils.d.ts.map +1 -0
- package/dist/types/utils/SpokeUtils.d.ts +65 -0
- package/dist/types/utils/SpokeUtils.d.ts.map +1 -0
- package/dist/types/utils/TimeUtils.d.ts +6 -0
- package/dist/types/utils/TimeUtils.d.ts.map +1 -0
- package/dist/types/utils/TokenUtils.d.ts +326 -0
- package/dist/types/utils/TokenUtils.d.ts.map +1 -0
- package/dist/types/utils/TypeGuards.d.ts +4 -0
- package/dist/types/utils/TypeGuards.d.ts.map +1 -0
- package/dist/types/utils/TypeUtils.d.ts +6 -0
- package/dist/types/utils/TypeUtils.d.ts.map +1 -0
- package/dist/types/utils/V3Utils.d.ts +5 -0
- package/dist/types/utils/V3Utils.d.ts.map +1 -0
- package/dist/types/utils/ValidatorUtils.d.ts +3 -0
- package/dist/types/utils/ValidatorUtils.d.ts.map +1 -0
- package/dist/types/utils/abi/index.d.ts +19 -0
- package/dist/types/utils/abi/index.d.ts.map +1 -0
- package/dist/types/utils/common.d.ts +205 -0
- package/dist/types/utils/common.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +30 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/package.json +144 -0
- package/src/apiClient/abstractClient.ts +95 -0
- package/src/apiClient/index.ts +2 -0
- package/src/apiClient/mockedClient.ts +90 -0
- package/src/apiClient/productionClient.ts +98 -0
- package/src/apiClient/types.ts +49 -0
- package/src/caching/Arweave/ArweaveClient.ts +238 -0
- package/src/caching/Arweave/index.ts +1 -0
- package/src/caching/IPFS/PinataIPFSClient.ts +92 -0
- package/src/caching/IPFS/index.ts +1 -0
- package/src/caching/index.ts +2 -0
- package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +526 -0
- package/src/clients/AcrossConfigStoreClient/index.ts +1 -0
- package/src/clients/BaseAbstractClient.ts +94 -0
- package/src/clients/HubPoolClient.ts +1010 -0
- package/src/clients/SpokePoolClient.ts +894 -0
- package/src/clients/index.ts +9 -0
- package/src/clients/mocks/MockConfigStoreClient.ts +129 -0
- package/src/clients/mocks/MockEvents.ts +156 -0
- package/src/clients/mocks/MockHubPoolClient.ts +257 -0
- package/src/clients/mocks/MockSpokePoolClient.ts +341 -0
- package/src/clients/mocks/index.ts +3 -0
- package/src/coingecko/Coingecko.ts +277 -0
- package/src/coingecko/index.ts +1 -0
- package/src/constants.ts +53 -0
- package/src/contracts/acrossConfigStore.ts +49 -0
- package/src/contracts/hubPool.ts +90 -0
- package/src/contracts/index.ts +2 -0
- package/src/contracts/utils.ts +56 -0
- package/src/gasPriceOracle/adapters/arbitrum.ts +21 -0
- package/src/gasPriceOracle/adapters/ethereum.ts +27 -0
- package/src/gasPriceOracle/adapters/index.ts +3 -0
- package/src/gasPriceOracle/adapters/polygon.ts +77 -0
- package/src/gasPriceOracle/index.ts +2 -0
- package/src/gasPriceOracle/oracle.ts +42 -0
- package/src/gasPriceOracle/types.ts +10 -0
- package/src/gasPriceOracle/util.ts +5 -0
- package/src/index.ts +15 -0
- package/src/interfaces/Bridge.ts +10 -0
- package/src/interfaces/CachingMechanism.ts +37 -0
- package/src/interfaces/Common.ts +12 -0
- package/src/interfaces/ConfigStore.ts +173 -0
- package/src/interfaces/Error.ts +5 -0
- package/src/interfaces/HubPool.ts +118 -0
- package/src/interfaces/SpokePool.ts +119 -0
- package/src/interfaces/TypedData.ts +21 -0
- package/src/interfaces/index.ts +8 -0
- package/src/lpFeeCalculator/README.md +27 -0
- package/src/lpFeeCalculator/index.ts +1 -0
- package/src/lpFeeCalculator/lpFeeCalculator.ts +169 -0
- package/src/lpFeeCalculator/rateModel.ts +183 -0
- package/src/merkleDistributor/MerkleDistributor.ts +37 -0
- package/src/merkleDistributor/README.md +30 -0
- package/src/merkleDistributor/index.ts +2 -0
- package/src/merkleDistributor/model/Distribution.ts +17 -0
- package/src/merkleDistributor/model/index.ts +1 -0
- package/src/pool/TransactionManager.ts +73 -0
- package/src/pool/index.ts +1 -0
- package/src/pool/poolClient.ts +840 -0
- package/src/priceClient/README.md +36 -0
- package/src/priceClient/adapters/acrossApi.ts +44 -0
- package/src/priceClient/adapters/baseAdapter.ts +65 -0
- package/src/priceClient/adapters/coingecko.ts +67 -0
- package/src/priceClient/adapters/defiLlama.ts +96 -0
- package/src/priceClient/adapters/index.ts +3 -0
- package/src/priceClient/index.ts +2 -0
- package/src/priceClient/priceClient.ts +192 -0
- package/src/relayFeeCalculator/README.md +34 -0
- package/src/relayFeeCalculator/chain-queries/baseQuery.ts +98 -0
- package/src/relayFeeCalculator/chain-queries/factory.ts +58 -0
- package/src/relayFeeCalculator/chain-queries/index.ts +3 -0
- package/src/relayFeeCalculator/chain-queries/polygon.ts +45 -0
- package/src/relayFeeCalculator/index.ts +2 -0
- package/src/relayFeeCalculator/relayFeeCalculator.ts +410 -0
- package/src/typechain.ts +46 -0
- package/src/typeguards/error.ts +7 -0
- package/src/typeguards/index.ts +1 -0
- package/src/utils/AddressUtils.ts +18 -0
- package/src/utils/ArrayUtils.ts +170 -0
- package/src/utils/BigNumberUtils.ts +58 -0
- package/src/utils/BlockExplorerUtils.ts +91 -0
- package/src/utils/BlockUtils.ts +265 -0
- package/src/utils/BundleUtils.ts +109 -0
- package/src/utils/CachingUtils.ts +56 -0
- package/src/utils/DeploymentUtils.ts +5 -0
- package/src/utils/DepositUtils.ts +144 -0
- package/src/utils/EventUtils.ts +227 -0
- package/src/utils/FlowUtils.ts +48 -0
- package/src/utils/FormattingUtils.ts +186 -0
- package/src/utils/IPFSUtils.ts +48 -0
- package/src/utils/JSONUtils.ts +85 -0
- package/src/utils/LogUtils.ts +38 -0
- package/src/utils/Multicall.ts +64 -0
- package/src/utils/NetworkUtils.ts +117 -0
- package/src/utils/NumberUtils.ts +17 -0
- package/src/utils/ObjectUtils.ts +77 -0
- package/src/utils/ReviverUtils.ts +31 -0
- package/src/utils/SpokeUtils.ts +372 -0
- package/src/utils/TimeUtils.ts +7 -0
- package/src/utils/TokenUtils.ts +94 -0
- package/src/utils/TypeGuards.ts +15 -0
- package/src/utils/TypeUtils.ts +9 -0
- package/src/utils/V3Utils.ts +12 -0
- package/src/utils/ValidatorUtils.ts +38 -0
- package/src/utils/abi/contracts/Multicall3.json +440 -0
- package/src/utils/abi/index.ts +33 -0
- package/src/utils/common.ts +392 -0
- package/src/utils/index.ts +29 -0
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AcrossConfigStoreClient = exports.GLOBAL_CONFIG_STORE_KEYS = exports.DEFAULT_CONFIG_STORE_VERSION = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var sdk_1 = require("@uma/sdk");
|
|
6
|
+
var assert_1 = tslib_1.__importDefault(require("assert"));
|
|
7
|
+
var typeguards_1 = require("../../typeguards");
|
|
8
|
+
var utils_1 = require("../../utils");
|
|
9
|
+
var constants_1 = require("../../constants");
|
|
10
|
+
var JSONUtils_1 = require("../../utils/JSONUtils");
|
|
11
|
+
var BaseAbstractClient_1 = require("../BaseAbstractClient");
|
|
12
|
+
exports.DEFAULT_CONFIG_STORE_VERSION = 0;
|
|
13
|
+
var GLOBAL_CONFIG_STORE_KEYS;
|
|
14
|
+
(function (GLOBAL_CONFIG_STORE_KEYS) {
|
|
15
|
+
GLOBAL_CONFIG_STORE_KEYS["MAX_RELAYER_REPAYMENT_LEAF_SIZE"] = "MAX_RELAYER_REPAYMENT_LEAF_SIZE";
|
|
16
|
+
GLOBAL_CONFIG_STORE_KEYS["MAX_POOL_REBALANCE_LEAF_SIZE"] = "MAX_POOL_REBALANCE_LEAF_SIZE";
|
|
17
|
+
GLOBAL_CONFIG_STORE_KEYS["VERSION"] = "VERSION";
|
|
18
|
+
GLOBAL_CONFIG_STORE_KEYS["DISABLED_CHAINS"] = "DISABLED_CHAINS";
|
|
19
|
+
GLOBAL_CONFIG_STORE_KEYS["CHAIN_ID_INDICES"] = "CHAIN_ID_INDICES";
|
|
20
|
+
})(GLOBAL_CONFIG_STORE_KEYS || (exports.GLOBAL_CONFIG_STORE_KEYS = GLOBAL_CONFIG_STORE_KEYS = {}));
|
|
21
|
+
var AcrossConfigStoreClient = (function (_super) {
|
|
22
|
+
tslib_1.__extends(AcrossConfigStoreClient, _super);
|
|
23
|
+
function AcrossConfigStoreClient(logger, configStore, eventSearchConfig, configStoreVersion) {
|
|
24
|
+
if (eventSearchConfig === void 0) { eventSearchConfig = { fromBlock: 0, maxBlockLookBack: 0 }; }
|
|
25
|
+
var _this = _super.call(this, eventSearchConfig) || this;
|
|
26
|
+
_this.logger = logger;
|
|
27
|
+
_this.configStore = configStore;
|
|
28
|
+
_this.configStoreVersion = configStoreVersion;
|
|
29
|
+
_this.cumulativeRateModelUpdates = [];
|
|
30
|
+
_this.ubaConfigUpdates = [];
|
|
31
|
+
_this.cumulativeRouteRateModelUpdates = [];
|
|
32
|
+
_this.cumulativeMaxRefundCountUpdates = [];
|
|
33
|
+
_this.cumulativeMaxL1TokenCountUpdates = [];
|
|
34
|
+
_this.chainIdIndicesUpdates = [];
|
|
35
|
+
_this.cumulativeSpokeTargetBalanceUpdates = [];
|
|
36
|
+
_this.cumulativeConfigStoreVersionUpdates = [];
|
|
37
|
+
_this.cumulativeDisabledChainUpdates = [];
|
|
38
|
+
_this.hasLatestConfigStoreVersion = false;
|
|
39
|
+
_this.firstBlockToSearch = eventSearchConfig.fromBlock;
|
|
40
|
+
_this.latestBlockSearched = 0;
|
|
41
|
+
_this.rateModelDictionary = new sdk_1.across.rateModel.RateModelDictionary();
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
AcrossConfigStoreClient.prototype.getRateModelForBlockNumber = function (l1Token, originChainId, destinationChainId, blockNumber) {
|
|
45
|
+
if (blockNumber === void 0) { blockNumber = undefined; }
|
|
46
|
+
var route = "".concat(originChainId, "-").concat(destinationChainId);
|
|
47
|
+
var routeRateModel = this.getRouteRateModelForBlockNumber(l1Token, route, blockNumber);
|
|
48
|
+
return routeRateModel !== null && routeRateModel !== void 0 ? routeRateModel : this.rateModelDictionary.getRateModelForBlockNumber(l1Token, blockNumber);
|
|
49
|
+
};
|
|
50
|
+
AcrossConfigStoreClient.prototype.getRouteRateModelForBlockNumber = function (l1Token, route, blockNumber) {
|
|
51
|
+
if (blockNumber === void 0) { blockNumber = undefined; }
|
|
52
|
+
var config = (0, utils_1.sortEventsDescending)(this.cumulativeRouteRateModelUpdates).find(function (config) { return config.blockNumber <= (blockNumber !== null && blockNumber !== void 0 ? blockNumber : 0) && config.l1Token === l1Token; });
|
|
53
|
+
if ((config === null || config === void 0 ? void 0 : config.routeRateModel[route]) === undefined) {
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
return sdk_1.across.rateModel.parseAndReturnRateModelFromString(config.routeRateModel[route]);
|
|
57
|
+
};
|
|
58
|
+
AcrossConfigStoreClient.prototype.implicitChainIdIndices = function (chainId) {
|
|
59
|
+
(0, assert_1.default)((0, utils_1.isDefined)(chainId), "ConfigStoreClient used before update");
|
|
60
|
+
return constants_1.PROTOCOL_DEFAULT_CHAIN_ID_INDICES[0] === chainId ? constants_1.PROTOCOL_DEFAULT_CHAIN_ID_INDICES : [chainId];
|
|
61
|
+
};
|
|
62
|
+
AcrossConfigStoreClient.prototype.getChainIdIndicesForBlock = function (blockNumber) {
|
|
63
|
+
var _a;
|
|
64
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
65
|
+
var chainIdUpdates = (0, utils_1.sortEventsDescending)(this.chainIdIndicesUpdates);
|
|
66
|
+
var chainIdIndices = (_a = chainIdUpdates.find(function (update) { return update.blockNumber <= blockNumber; })) === null || _a === void 0 ? void 0 : _a.value;
|
|
67
|
+
return chainIdIndices !== null && chainIdIndices !== void 0 ? chainIdIndices : this.implicitChainIdIndices(this.chainId);
|
|
68
|
+
};
|
|
69
|
+
AcrossConfigStoreClient.prototype.getSpokeTargetBalancesForBlock = function (l1Token, chainId, blockNumber) {
|
|
70
|
+
var _a;
|
|
71
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
72
|
+
var config = (0, utils_1.sortEventsDescending)(this.cumulativeSpokeTargetBalanceUpdates).find(function (config) { return config.l1Token === l1Token && config.blockNumber <= blockNumber; });
|
|
73
|
+
var targetBalance = (_a = config === null || config === void 0 ? void 0 : config.spokeTargetBalances) === null || _a === void 0 ? void 0 : _a[chainId];
|
|
74
|
+
return targetBalance || { target: (0, utils_1.toBN)(0), threshold: (0, utils_1.toBN)(0) };
|
|
75
|
+
};
|
|
76
|
+
AcrossConfigStoreClient.prototype.getMaxRefundCountForRelayerRefundLeafForBlock = function (blockNumber) {
|
|
77
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
78
|
+
var config = (0, utils_1.sortEventsDescending)(this.cumulativeMaxRefundCountUpdates).find(function (config) { return config.blockNumber <= blockNumber; });
|
|
79
|
+
if (!config) {
|
|
80
|
+
throw new Error("Could not find MaxRefundCount before block ".concat(blockNumber));
|
|
81
|
+
}
|
|
82
|
+
return Number(config.value);
|
|
83
|
+
};
|
|
84
|
+
AcrossConfigStoreClient.prototype.getMaxL1TokenCountForPoolRebalanceLeafForBlock = function (blockNumber) {
|
|
85
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
86
|
+
var config = (0, utils_1.sortEventsDescending)(this.cumulativeMaxL1TokenCountUpdates).find(function (config) { return config.blockNumber <= blockNumber; });
|
|
87
|
+
if (!config) {
|
|
88
|
+
throw new Error("Could not find MaxL1TokenCount before block ".concat(blockNumber));
|
|
89
|
+
}
|
|
90
|
+
return Number(config.value);
|
|
91
|
+
};
|
|
92
|
+
AcrossConfigStoreClient.prototype.getEnabledChainsInBlockRange = function (fromBlock, toBlock) {
|
|
93
|
+
if (toBlock === void 0) { toBlock = Number.MAX_SAFE_INTEGER; }
|
|
94
|
+
if (fromBlock > toBlock) {
|
|
95
|
+
throw new Error("Invalid block range: fromBlock ".concat(fromBlock, " > toBlock ").concat(toBlock));
|
|
96
|
+
}
|
|
97
|
+
var disabledChainsAtFromBlock = this.getDisabledChainsForBlock(fromBlock);
|
|
98
|
+
var allPossibleChains = this.getChainIdIndicesForBlock(toBlock);
|
|
99
|
+
var enabledChainsInBlockRange = allPossibleChains.filter(function (chainId) { return !disabledChainsAtFromBlock.includes(chainId); });
|
|
100
|
+
this.cumulativeDisabledChainUpdates
|
|
101
|
+
.filter(function (e) { return e.blockNumber <= toBlock && e.blockNumber >= fromBlock; })
|
|
102
|
+
.forEach(function (e) {
|
|
103
|
+
var newDisabledSet = e.chainIds;
|
|
104
|
+
disabledChainsAtFromBlock.forEach(function (disabledChain) {
|
|
105
|
+
if (!newDisabledSet.includes(disabledChain)) {
|
|
106
|
+
enabledChainsInBlockRange.push(disabledChain);
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
return allPossibleChains.filter(function (chainId) { return enabledChainsInBlockRange.includes(chainId); });
|
|
111
|
+
};
|
|
112
|
+
AcrossConfigStoreClient.prototype.getEnabledChains = function (block) {
|
|
113
|
+
if (block === void 0) { block = Number.MAX_SAFE_INTEGER; }
|
|
114
|
+
var currentlyDisabledChains = this.getDisabledChainsForBlock(block);
|
|
115
|
+
return this.getChainIdIndicesForBlock(block).filter(function (chainId) { return !currentlyDisabledChains.includes(chainId); });
|
|
116
|
+
};
|
|
117
|
+
AcrossConfigStoreClient.prototype.getDisabledChainsForBlock = function (blockNumber) {
|
|
118
|
+
var _a, _b;
|
|
119
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
120
|
+
return ((_b = (_a = (0, utils_1.sortEventsDescending)(this.cumulativeDisabledChainUpdates).find(function (config) { return config.blockNumber <= blockNumber; })) === null || _a === void 0 ? void 0 : _a.chainIds) !== null && _b !== void 0 ? _b : []);
|
|
121
|
+
};
|
|
122
|
+
AcrossConfigStoreClient.prototype.getConfigStoreVersionForTimestamp = function (timestamp) {
|
|
123
|
+
if (timestamp === void 0) { timestamp = Number.MAX_SAFE_INTEGER; }
|
|
124
|
+
var config = this.cumulativeConfigStoreVersionUpdates.find(function (config) { return config.timestamp <= timestamp; });
|
|
125
|
+
return (0, utils_1.isDefined)(config) ? Number(config.value) : exports.DEFAULT_CONFIG_STORE_VERSION;
|
|
126
|
+
};
|
|
127
|
+
AcrossConfigStoreClient.prototype.getConfigStoreVersionForBlock = function (blockNumber) {
|
|
128
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
129
|
+
var config = this.cumulativeConfigStoreVersionUpdates.find(function (config) { return config.blockNumber <= blockNumber; });
|
|
130
|
+
return (0, utils_1.isDefined)(config) ? Number(config.value) : exports.DEFAULT_CONFIG_STORE_VERSION;
|
|
131
|
+
};
|
|
132
|
+
AcrossConfigStoreClient.prototype.hasValidConfigStoreVersionForTimestamp = function (timestamp) {
|
|
133
|
+
if (timestamp === void 0) { timestamp = Number.MAX_SAFE_INTEGER; }
|
|
134
|
+
var version = this.getConfigStoreVersionForTimestamp(timestamp);
|
|
135
|
+
return this.configStoreVersion >= version;
|
|
136
|
+
};
|
|
137
|
+
AcrossConfigStoreClient.prototype.resolveChainId = function () {
|
|
138
|
+
var _a;
|
|
139
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
140
|
+
var _b;
|
|
141
|
+
return tslib_1.__generator(this, function (_c) {
|
|
142
|
+
switch (_c.label) {
|
|
143
|
+
case 0:
|
|
144
|
+
if (!((_a = this.chainId) !== null && _a !== void 0)) return [3, 1];
|
|
145
|
+
_b = _a;
|
|
146
|
+
return [3, 3];
|
|
147
|
+
case 1: return [4, this.configStore.provider.getNetwork()];
|
|
148
|
+
case 2:
|
|
149
|
+
_b = (_c.sent()).chainId;
|
|
150
|
+
_c.label = 3;
|
|
151
|
+
case 3: return [2, _b];
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
});
|
|
155
|
+
};
|
|
156
|
+
AcrossConfigStoreClient.prototype._update = function () {
|
|
157
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
158
|
+
var chainId, searchConfig, reason, _a, updatedTokenConfigEvents, updatedGlobalConfigEvents, globalConfigUpdateTimes;
|
|
159
|
+
var _this = this;
|
|
160
|
+
return tslib_1.__generator(this, function (_b) {
|
|
161
|
+
switch (_b.label) {
|
|
162
|
+
case 0: return [4, this.resolveChainId()];
|
|
163
|
+
case 1:
|
|
164
|
+
chainId = _b.sent();
|
|
165
|
+
return [4, this.updateSearchConfig(this.configStore.provider)];
|
|
166
|
+
case 2:
|
|
167
|
+
searchConfig = _b.sent();
|
|
168
|
+
if ((0, BaseAbstractClient_1.isUpdateFailureReason)(searchConfig)) {
|
|
169
|
+
reason = searchConfig;
|
|
170
|
+
return [2, { success: false, reason: reason }];
|
|
171
|
+
}
|
|
172
|
+
this.logger.debug({ at: "AcrossConfigStore", message: "Updating ConfigStore client", searchConfig: searchConfig });
|
|
173
|
+
return [4, Promise.all([
|
|
174
|
+
(0, utils_1.paginatedEventQuery)(this.configStore, this.configStore.filters.UpdatedTokenConfig(), searchConfig),
|
|
175
|
+
(0, utils_1.paginatedEventQuery)(this.configStore, this.configStore.filters.UpdatedGlobalConfig(), searchConfig),
|
|
176
|
+
])];
|
|
177
|
+
case 3:
|
|
178
|
+
_a = _b.sent(), updatedTokenConfigEvents = _a[0], updatedGlobalConfigEvents = _a[1];
|
|
179
|
+
[updatedTokenConfigEvents, updatedGlobalConfigEvents].forEach(function (events) { return (0, utils_1.sortEventsAscendingInPlace)(events); });
|
|
180
|
+
return [4, Promise.all(updatedGlobalConfigEvents.map(function (event) { return _this.configStore.provider.getBlock(event.blockNumber); }))];
|
|
181
|
+
case 4:
|
|
182
|
+
globalConfigUpdateTimes = (_b.sent()).map(function (block) { return block.timestamp; });
|
|
183
|
+
return [2, {
|
|
184
|
+
success: true,
|
|
185
|
+
chainId: chainId,
|
|
186
|
+
searchEndBlock: searchConfig.toBlock,
|
|
187
|
+
events: {
|
|
188
|
+
updatedTokenConfigEvents: updatedTokenConfigEvents,
|
|
189
|
+
updatedGlobalConfigEvents: updatedGlobalConfigEvents,
|
|
190
|
+
globalConfigUpdateTimes: globalConfigUpdateTimes,
|
|
191
|
+
},
|
|
192
|
+
}];
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
});
|
|
196
|
+
};
|
|
197
|
+
AcrossConfigStoreClient.prototype.update = function () {
|
|
198
|
+
var _a, _b, _c, _d, _e;
|
|
199
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
200
|
+
var result, chainId, _f, updatedTokenConfigEvents, updatedGlobalConfigEvents, globalConfigUpdateTimes, _i, updatedTokenConfigEvents_1, event_1, args, parsedValue, l1Token, value, key, passedArgs, rateModelForToken, targetBalances, routeRateModel, err_1, maxWarnAge, _g, errMsg, _loop_1, this_1, i;
|
|
201
|
+
return tslib_1.__generator(this, function (_h) {
|
|
202
|
+
switch (_h.label) {
|
|
203
|
+
case 0: return [4, this._update()];
|
|
204
|
+
case 1:
|
|
205
|
+
result = _h.sent();
|
|
206
|
+
if (!result.success) {
|
|
207
|
+
if (result.reason !== BaseAbstractClient_1.UpdateFailureReason.AlreadyUpdated) {
|
|
208
|
+
throw new Error("Unable to update ConfigStoreClient: ".concat(result.reason));
|
|
209
|
+
}
|
|
210
|
+
return [2];
|
|
211
|
+
}
|
|
212
|
+
chainId = result.chainId;
|
|
213
|
+
_f = result.events, updatedTokenConfigEvents = _f.updatedTokenConfigEvents, updatedGlobalConfigEvents = _f.updatedGlobalConfigEvents, globalConfigUpdateTimes = _f.globalConfigUpdateTimes;
|
|
214
|
+
(0, assert_1.default)(updatedGlobalConfigEvents.length === globalConfigUpdateTimes.length, "GlobalConfigUpdate events mismatch (".concat(updatedGlobalConfigEvents.length, " != ").concat(globalConfigUpdateTimes.length, ")"));
|
|
215
|
+
_i = 0, updatedTokenConfigEvents_1 = updatedTokenConfigEvents;
|
|
216
|
+
_h.label = 2;
|
|
217
|
+
case 2:
|
|
218
|
+
if (!(_i < updatedTokenConfigEvents_1.length)) return [3, 7];
|
|
219
|
+
event_1 = updatedTokenConfigEvents_1[_i];
|
|
220
|
+
args = tslib_1.__assign({}, (0, utils_1.spreadEventWithBlockNumber)(event_1));
|
|
221
|
+
_h.label = 3;
|
|
222
|
+
case 3:
|
|
223
|
+
_h.trys.push([3, 4, , 6]);
|
|
224
|
+
parsedValue = (0, JSONUtils_1.parseJSONWithNumericString)(args.value);
|
|
225
|
+
l1Token = args.key;
|
|
226
|
+
value = args.value, key = args.key, passedArgs = tslib_1.__rest(args, ["value", "key"]);
|
|
227
|
+
if ((parsedValue === null || parsedValue === void 0 ? void 0 : parsedValue.rateModel) !== undefined) {
|
|
228
|
+
rateModelForToken = JSON.stringify(parsedValue.rateModel);
|
|
229
|
+
this.cumulativeRateModelUpdates.push(tslib_1.__assign(tslib_1.__assign({}, passedArgs), { rateModel: rateModelForToken, l1Token: l1Token }));
|
|
230
|
+
if (parsedValue === null || parsedValue === void 0 ? void 0 : parsedValue.spokeTargetBalances) {
|
|
231
|
+
targetBalances = Object.fromEntries(Object.entries(parsedValue.spokeTargetBalances).map(function (_a) {
|
|
232
|
+
var chainId = _a[0], targetBalance = _a[1];
|
|
233
|
+
var target = (0, utils_1.max)((0, utils_1.toBN)(targetBalance.target), (0, utils_1.toBN)(0));
|
|
234
|
+
var threshold = (0, utils_1.max)((0, utils_1.toBN)(targetBalance.threshold), (0, utils_1.toBN)(0));
|
|
235
|
+
return [chainId, { target: target, threshold: threshold }];
|
|
236
|
+
}));
|
|
237
|
+
this.cumulativeSpokeTargetBalanceUpdates.push(tslib_1.__assign(tslib_1.__assign({}, passedArgs), { spokeTargetBalances: targetBalances, l1Token: l1Token }));
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
this.cumulativeSpokeTargetBalanceUpdates.push(tslib_1.__assign(tslib_1.__assign({}, passedArgs), { spokeTargetBalances: {}, l1Token: l1Token }));
|
|
241
|
+
}
|
|
242
|
+
if (parsedValue === null || parsedValue === void 0 ? void 0 : parsedValue.routeRateModel) {
|
|
243
|
+
routeRateModel = Object.fromEntries(Object.entries(parsedValue.routeRateModel).map(function (_a) {
|
|
244
|
+
var path = _a[0], routeRateModel = _a[1];
|
|
245
|
+
return [path, JSON.stringify(routeRateModel)];
|
|
246
|
+
}));
|
|
247
|
+
this.cumulativeRouteRateModelUpdates.push(tslib_1.__assign(tslib_1.__assign({}, passedArgs), { routeRateModel: routeRateModel, l1Token: l1Token }));
|
|
248
|
+
}
|
|
249
|
+
else {
|
|
250
|
+
this.cumulativeRouteRateModelUpdates.push(tslib_1.__assign(tslib_1.__assign({}, passedArgs), { routeRateModel: {}, l1Token: l1Token }));
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return [3, 6];
|
|
254
|
+
case 4:
|
|
255
|
+
err_1 = _h.sent();
|
|
256
|
+
_g = (24 * 60 * 60);
|
|
257
|
+
return [4, sdk_1.utils.averageBlockTimeSeconds()];
|
|
258
|
+
case 5:
|
|
259
|
+
maxWarnAge = _g / (_h.sent());
|
|
260
|
+
if (result.searchEndBlock - event_1.blockNumber < maxWarnAge) {
|
|
261
|
+
errMsg = (0, typeguards_1.isError)(err_1) ? err_1.message : "unknown error";
|
|
262
|
+
this.logger.warn({
|
|
263
|
+
at: "ConfigStore::update",
|
|
264
|
+
message: "Caught error during ConfigStore update: ".concat(errMsg),
|
|
265
|
+
update: args,
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
this.logger.debug({
|
|
270
|
+
at: "ConfigStoreClient::update",
|
|
271
|
+
message: "Skipping invalid historical update at block ".concat(event_1.blockNumber),
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
return [3, 6];
|
|
275
|
+
case 6:
|
|
276
|
+
_i++;
|
|
277
|
+
return [3, 2];
|
|
278
|
+
case 7:
|
|
279
|
+
(0, utils_1.sortEventsAscendingInPlace)(this.ubaConfigUpdates);
|
|
280
|
+
_loop_1 = function (i) {
|
|
281
|
+
var event_2 = updatedGlobalConfigEvents[i];
|
|
282
|
+
var args = tslib_1.__assign({ blockNumber: event_2.blockNumber, transactionIndex: event_2.transactionIndex, logIndex: event_2.logIndex }, (0, utils_1.spreadEvent)(event_2.args));
|
|
283
|
+
if (args.key === (0, utils_1.utf8ToHex)(GLOBAL_CONFIG_STORE_KEYS.MAX_RELAYER_REPAYMENT_LEAF_SIZE)) {
|
|
284
|
+
if (!isNaN(args.value)) {
|
|
285
|
+
this_1.cumulativeMaxRefundCountUpdates.push(args);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
else if (args.key === (0, utils_1.utf8ToHex)(GLOBAL_CONFIG_STORE_KEYS.CHAIN_ID_INDICES)) {
|
|
289
|
+
try {
|
|
290
|
+
var chainIndices_1 = JSON.parse(args.value.replace(/['"\s]/g, ""));
|
|
291
|
+
if (!(0, utils_1.isArrayOf)(chainIndices_1, utils_1.isPositiveInteger)) {
|
|
292
|
+
this_1.logger.warn({ at: "ConfigStore", message: "The array ".concat(chainIndices_1, " is invalid.") });
|
|
293
|
+
return "continue";
|
|
294
|
+
}
|
|
295
|
+
if (new Set(chainIndices_1).size !== chainIndices_1.length) {
|
|
296
|
+
this_1.logger.warn({
|
|
297
|
+
at: "ConfigStore",
|
|
298
|
+
message: "The array ".concat(chainIndices_1, " contains duplicates making it invalid."),
|
|
299
|
+
});
|
|
300
|
+
return "continue";
|
|
301
|
+
}
|
|
302
|
+
var previousUpdate = (_b = (_a = this_1.chainIdIndicesUpdates.at(-1)) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : this_1.implicitChainIdIndices(chainId);
|
|
303
|
+
if (!previousUpdate.every(function (chainId, idx) { return chainIndices_1[idx] === chainId; })) {
|
|
304
|
+
this_1.logger.warn({
|
|
305
|
+
at: "ConfigStoreClient#update",
|
|
306
|
+
message: "The array ".concat(chainIndices_1, " is invalid. It must be a superset of the previous array ").concat(previousUpdate),
|
|
307
|
+
});
|
|
308
|
+
return "continue";
|
|
309
|
+
}
|
|
310
|
+
this_1.chainIdIndicesUpdates.push(tslib_1.__assign(tslib_1.__assign({}, args), { value: chainIndices_1 }));
|
|
311
|
+
}
|
|
312
|
+
catch (e) {
|
|
313
|
+
this_1.logger.warn({ at: "ConfigStore::update", message: "Failed to parse chain ID indices: ".concat(args.value) });
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
else if (args.key === (0, utils_1.utf8ToHex)(GLOBAL_CONFIG_STORE_KEYS.MAX_POOL_REBALANCE_LEAF_SIZE)) {
|
|
317
|
+
if (!isNaN(args.value)) {
|
|
318
|
+
this_1.cumulativeMaxL1TokenCountUpdates.push(args);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
else if (args.key === (0, utils_1.utf8ToHex)(GLOBAL_CONFIG_STORE_KEYS.VERSION)) {
|
|
322
|
+
if (isNaN(args.value)) {
|
|
323
|
+
return "continue";
|
|
324
|
+
}
|
|
325
|
+
var value = Number(args.value);
|
|
326
|
+
if (!Number.isInteger(value)) {
|
|
327
|
+
return "continue";
|
|
328
|
+
}
|
|
329
|
+
var lastValue = Number((_d = (_c = this_1.cumulativeConfigStoreVersionUpdates[0]) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : exports.DEFAULT_CONFIG_STORE_VERSION);
|
|
330
|
+
if (value <= lastValue) {
|
|
331
|
+
return "continue";
|
|
332
|
+
}
|
|
333
|
+
this_1.cumulativeConfigStoreVersionUpdates = tslib_1.__spreadArray([
|
|
334
|
+
tslib_1.__assign(tslib_1.__assign({}, args), { timestamp: globalConfigUpdateTimes[i] })
|
|
335
|
+
], this_1.cumulativeConfigStoreVersionUpdates, true);
|
|
336
|
+
}
|
|
337
|
+
else if (args.key === (0, utils_1.utf8ToHex)(GLOBAL_CONFIG_STORE_KEYS.DISABLED_CHAINS)) {
|
|
338
|
+
try {
|
|
339
|
+
var chainIds = this_1.filterDisabledChains(JSON.parse(args.value));
|
|
340
|
+
this_1.cumulativeDisabledChainUpdates.push(tslib_1.__assign(tslib_1.__assign({}, args), { chainIds: chainIds }));
|
|
341
|
+
}
|
|
342
|
+
catch (err) {
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
else {
|
|
346
|
+
return "continue";
|
|
347
|
+
}
|
|
348
|
+
};
|
|
349
|
+
this_1 = this;
|
|
350
|
+
for (i = 0; i < updatedGlobalConfigEvents.length; i++) {
|
|
351
|
+
_loop_1(i);
|
|
352
|
+
}
|
|
353
|
+
this.rateModelDictionary.updateWithEvents(this.cumulativeRateModelUpdates);
|
|
354
|
+
this.hasLatestConfigStoreVersion = this.hasValidConfigStoreVersionForTimestamp();
|
|
355
|
+
this.latestBlockSearched = result.searchEndBlock;
|
|
356
|
+
this.firstBlockToSearch = result.searchEndBlock + 1;
|
|
357
|
+
this.eventSearchConfig.toBlock = undefined;
|
|
358
|
+
this.chainId = (_e = this.chainId) !== null && _e !== void 0 ? _e : chainId;
|
|
359
|
+
this.isUpdated = true;
|
|
360
|
+
this.logger.debug({ at: "ConfigStore", message: "ConfigStore client updated!" });
|
|
361
|
+
return [2];
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
});
|
|
365
|
+
};
|
|
366
|
+
AcrossConfigStoreClient.prototype.filterDisabledChains = function (disabledChains) {
|
|
367
|
+
return disabledChains.filter(function (chainId) { return !isNaN(chainId) && Number.isInteger(chainId) && chainId !== 1; });
|
|
368
|
+
};
|
|
369
|
+
AcrossConfigStoreClient.prototype.getUBAConfig = function (l1TokenAddress, blockNumber) {
|
|
370
|
+
if (blockNumber === void 0) { blockNumber = Number.MAX_SAFE_INTEGER; }
|
|
371
|
+
var config = (0, utils_1.findLast)(this.ubaConfigUpdates, function (config) { return config.l1Token === l1TokenAddress && config.blockNumber <= blockNumber; });
|
|
372
|
+
return config === null || config === void 0 ? void 0 : config.config;
|
|
373
|
+
};
|
|
374
|
+
return AcrossConfigStoreClient;
|
|
375
|
+
}(BaseAbstractClient_1.BaseAbstractClient));
|
|
376
|
+
exports.AcrossConfigStoreClient = AcrossConfigStoreClient;
|
|
377
|
+
//# sourceMappingURL=AcrossConfigStoreClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcrossConfigStoreClient.js","sourceRoot":"","sources":["../../../../src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./AcrossConfigStoreClient";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/clients/AcrossConfigStoreClient/index.ts"],"names":[],"mappings":";;;AAAA,oEAA0C"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { providers } from "ethers";
|
|
2
|
+
import { CachingMechanismInterface } from "../interfaces";
|
|
3
|
+
import { EventSearchConfig, MakeOptional } from "../utils";
|
|
4
|
+
export declare enum UpdateFailureReason {
|
|
5
|
+
AlreadyUpdated = 0,
|
|
6
|
+
BadRequest = 1,
|
|
7
|
+
RPCError = 2
|
|
8
|
+
}
|
|
9
|
+
export declare function isUpdateFailureReason(x: EventSearchConfig | UpdateFailureReason): x is UpdateFailureReason;
|
|
10
|
+
export declare abstract class BaseAbstractClient {
|
|
11
|
+
readonly eventSearchConfig: MakeOptional<EventSearchConfig, "toBlock">;
|
|
12
|
+
protected cachingMechanism?: CachingMechanismInterface | undefined;
|
|
13
|
+
protected _isUpdated: boolean;
|
|
14
|
+
firstBlockToSearch: number;
|
|
15
|
+
latestBlockSearched: number;
|
|
16
|
+
constructor(eventSearchConfig?: MakeOptional<EventSearchConfig, "toBlock">, cachingMechanism?: CachingMechanismInterface | undefined);
|
|
17
|
+
get isUpdated(): boolean;
|
|
18
|
+
set isUpdated(value: boolean);
|
|
19
|
+
updateSearchConfig(provider: providers.Provider): Promise<EventSearchConfig | UpdateFailureReason>;
|
|
20
|
+
protected assertUpdated(): void;
|
|
21
|
+
protected hasCachingMechanism(): boolean;
|
|
22
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseAbstractClient = exports.isUpdateFailureReason = exports.UpdateFailureReason = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var utils_1 = require("../utils");
|
|
6
|
+
var UpdateFailureReason;
|
|
7
|
+
(function (UpdateFailureReason) {
|
|
8
|
+
UpdateFailureReason[UpdateFailureReason["AlreadyUpdated"] = 0] = "AlreadyUpdated";
|
|
9
|
+
UpdateFailureReason[UpdateFailureReason["BadRequest"] = 1] = "BadRequest";
|
|
10
|
+
UpdateFailureReason[UpdateFailureReason["RPCError"] = 2] = "RPCError";
|
|
11
|
+
})(UpdateFailureReason || (exports.UpdateFailureReason = UpdateFailureReason = {}));
|
|
12
|
+
function isUpdateFailureReason(x) {
|
|
13
|
+
return Number.isInteger(x);
|
|
14
|
+
}
|
|
15
|
+
exports.isUpdateFailureReason = isUpdateFailureReason;
|
|
16
|
+
var BaseAbstractClient = (function () {
|
|
17
|
+
function BaseAbstractClient(eventSearchConfig, cachingMechanism) {
|
|
18
|
+
if (eventSearchConfig === void 0) { eventSearchConfig = { fromBlock: 0, maxBlockLookBack: 0 }; }
|
|
19
|
+
this.eventSearchConfig = eventSearchConfig;
|
|
20
|
+
this.cachingMechanism = cachingMechanism;
|
|
21
|
+
this.firstBlockToSearch = 0;
|
|
22
|
+
this.latestBlockSearched = 0;
|
|
23
|
+
this._isUpdated = false;
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(BaseAbstractClient.prototype, "isUpdated", {
|
|
26
|
+
get: function () {
|
|
27
|
+
return this._isUpdated;
|
|
28
|
+
},
|
|
29
|
+
set: function (value) {
|
|
30
|
+
if (this._isUpdated === true && !value) {
|
|
31
|
+
throw new Error("Cannot set isUpdated to false once it is true");
|
|
32
|
+
}
|
|
33
|
+
this._isUpdated = value;
|
|
34
|
+
},
|
|
35
|
+
enumerable: false,
|
|
36
|
+
configurable: true
|
|
37
|
+
});
|
|
38
|
+
BaseAbstractClient.prototype.updateSearchConfig = function (provider) {
|
|
39
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
40
|
+
var fromBlock, toBlock, maxBlockLookBack;
|
|
41
|
+
return tslib_1.__generator(this, function (_a) {
|
|
42
|
+
switch (_a.label) {
|
|
43
|
+
case 0:
|
|
44
|
+
fromBlock = this.firstBlockToSearch;
|
|
45
|
+
toBlock = this.eventSearchConfig.toBlock;
|
|
46
|
+
if (!(0, utils_1.isDefined)(toBlock)) return [3, 1];
|
|
47
|
+
if (fromBlock > toBlock) {
|
|
48
|
+
throw new Error("Invalid event search config fromBlock (".concat(fromBlock, ") > toBlock (").concat(toBlock, ")"));
|
|
49
|
+
}
|
|
50
|
+
return [3, 3];
|
|
51
|
+
case 1: return [4, provider.getBlockNumber()];
|
|
52
|
+
case 2:
|
|
53
|
+
toBlock = _a.sent();
|
|
54
|
+
if (toBlock < fromBlock) {
|
|
55
|
+
return [2, UpdateFailureReason.AlreadyUpdated];
|
|
56
|
+
}
|
|
57
|
+
_a.label = 3;
|
|
58
|
+
case 3:
|
|
59
|
+
maxBlockLookBack = this.eventSearchConfig.maxBlockLookBack;
|
|
60
|
+
return [2, { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }];
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
BaseAbstractClient.prototype.assertUpdated = function () {
|
|
66
|
+
if (!this.isUpdated) {
|
|
67
|
+
throw new Error("Client not updated");
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
BaseAbstractClient.prototype.hasCachingMechanism = function () {
|
|
71
|
+
return (0, utils_1.isDefined)(this.cachingMechanism);
|
|
72
|
+
};
|
|
73
|
+
return BaseAbstractClient;
|
|
74
|
+
}());
|
|
75
|
+
exports.BaseAbstractClient = BaseAbstractClient;
|
|
76
|
+
//# sourceMappingURL=BaseAbstractClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseAbstractClient.js","sourceRoot":"","sources":["../../../src/clients/BaseAbstractClient.ts"],"names":[],"mappings":";;;;AAEA,kCAAsE;AAEtE,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,iFAAc,CAAA;IACd,yEAAU,CAAA;IACV,qEAAQ,CAAA;AACV,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B;AAED,SAAgB,qBAAqB,CAAC,CAA0C;IAC9E,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAFD,sDAEC;AAKD;IASE,4BACW,iBAAqG,EACpG,gBAA4C;QAD7C,kCAAA,EAAA,sBAAkE,SAAS,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE;QAArG,sBAAiB,GAAjB,iBAAiB,CAAoF;QACpG,qBAAgB,GAAhB,gBAAgB,CAA4B;QATjD,uBAAkB,GAAG,CAAC,CAAC;QACvB,wBAAmB,GAAG,CAAC,CAAC;QAU7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAMD,sBAAW,yCAAS;aAApB;YACE,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aAOD,UAAqB,KAAc;YACjC,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE;gBACtC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;aAClE;YACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAZA;IAoBY,+CAAkB,GAA/B,UAAgC,QAA4B;;;;;;wBACpD,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC;wBACpC,OAAO,GAAK,IAAI,CAAC,iBAAiB,QAA3B,CAA4B;6BACrC,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAlB,cAAkB;wBACpB,IAAI,SAAS,GAAG,OAAO,EAAE;4BACvB,MAAM,IAAI,KAAK,CAAC,iDAA0C,SAAS,0BAAgB,OAAO,MAAG,CAAC,CAAC;yBAChG;;4BAES,WAAM,QAAQ,CAAC,cAAc,EAAE,EAAA;;wBAAzC,OAAO,GAAG,SAA+B,CAAC;wBAC1C,IAAI,OAAO,GAAG,SAAS,EAAE;4BACvB,WAAO,mBAAmB,CAAC,cAAc,EAAC;yBAC3C;;;wBAGK,gBAAgB,GAAK,IAAI,CAAC,iBAAiB,iBAA3B,CAA4B;wBACpD,WAAO,EAAE,SAAS,WAAA,EAAE,OAAO,SAAA,EAAE,gBAAgB,kBAAA,EAAE,EAAC;;;;KACjD;IAKS,0CAAa,GAAvB;QACE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;SACvC;IACH,CAAC;IAMS,gDAAmB,GAA7B;QACE,OAAO,IAAA,iBAAS,EAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC1C,CAAC;IACH,yBAAC;AAAD,CAAC,AA5ED,IA4EC;AA5EqB,gDAAkB"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { BigNumber, Contract, Event, EventFilter } from "ethers";
|
|
2
|
+
import winston from "winston";
|
|
3
|
+
import { CachingMechanismInterface, CancelledRootBundle, CrossChainContractsSet, Deposit, DepositWithBlock, DestinationTokenWithBlock, DisputedRootBundle, ExecutedRootBundle, L1Token, LpToken, PendingRootBundle, ProposedRootBundle, RealizedLpFee, TokenRunningBalance } from "../interfaces";
|
|
4
|
+
import { BlockFinder, EventSearchConfig, MakeOptional } from "../utils";
|
|
5
|
+
import { AcrossConfigStoreClient as ConfigStoreClient } from "./AcrossConfigStoreClient/AcrossConfigStoreClient";
|
|
6
|
+
import { BaseAbstractClient, UpdateFailureReason } from "./BaseAbstractClient";
|
|
7
|
+
type HubPoolUpdateSuccess = {
|
|
8
|
+
success: true;
|
|
9
|
+
currentTime: number;
|
|
10
|
+
pendingRootBundleProposal: PendingRootBundle;
|
|
11
|
+
events: Record<string, Event[]>;
|
|
12
|
+
searchEndBlock: number;
|
|
13
|
+
};
|
|
14
|
+
type HubPoolUpdateFailure = {
|
|
15
|
+
success: false;
|
|
16
|
+
reason: UpdateFailureReason;
|
|
17
|
+
};
|
|
18
|
+
export type HubPoolUpdate = HubPoolUpdateSuccess | HubPoolUpdateFailure;
|
|
19
|
+
type HubPoolEvent = "SetPoolRebalanceRoute" | "L1TokenEnabledForLiquidityProvision" | "ProposeRootBundle" | "RootBundleCanceled" | "RootBundleDisputed" | "RootBundleExecuted" | "CrossChainContractsSet";
|
|
20
|
+
type L1TokensToDestinationTokens = {
|
|
21
|
+
[l1Token: string]: {
|
|
22
|
+
[destinationChainId: number]: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
export type LpFeeRequest = Pick<Deposit, "originChainId" | "inputToken" | "inputAmount" | "quoteTimestamp"> & {
|
|
26
|
+
paymentChainId?: number;
|
|
27
|
+
};
|
|
28
|
+
export declare class HubPoolClient extends BaseAbstractClient {
|
|
29
|
+
readonly logger: winston.Logger;
|
|
30
|
+
readonly hubPool: Contract;
|
|
31
|
+
configStoreClient: ConfigStoreClient;
|
|
32
|
+
deploymentBlock: number;
|
|
33
|
+
readonly chainId: number;
|
|
34
|
+
protected readonly configOverride: {
|
|
35
|
+
ignoredHubExecutedBundles: number[];
|
|
36
|
+
ignoredHubProposedBundles: number[];
|
|
37
|
+
timeToCache?: number;
|
|
38
|
+
};
|
|
39
|
+
protected l1TokensToDestinationTokens: L1TokensToDestinationTokens;
|
|
40
|
+
protected l1Tokens: L1Token[];
|
|
41
|
+
protected lpTokens: {
|
|
42
|
+
[token: string]: LpToken;
|
|
43
|
+
};
|
|
44
|
+
protected proposedRootBundles: ProposedRootBundle[];
|
|
45
|
+
protected canceledRootBundles: CancelledRootBundle[];
|
|
46
|
+
protected disputedRootBundles: DisputedRootBundle[];
|
|
47
|
+
protected executedRootBundles: ExecutedRootBundle[];
|
|
48
|
+
protected crossChainContracts: {
|
|
49
|
+
[l2ChainId: number]: CrossChainContractsSet[];
|
|
50
|
+
};
|
|
51
|
+
protected l1TokensToDestinationTokensWithBlock: {
|
|
52
|
+
[l1Token: string]: {
|
|
53
|
+
[destinationChainId: number]: DestinationTokenWithBlock[];
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
protected pendingRootBundle: PendingRootBundle | undefined;
|
|
57
|
+
currentTime: number | undefined;
|
|
58
|
+
readonly blockFinder: BlockFinder;
|
|
59
|
+
constructor(logger: winston.Logger, hubPool: Contract, configStoreClient: ConfigStoreClient, deploymentBlock?: number, chainId?: number, eventSearchConfig?: MakeOptional<EventSearchConfig, "toBlock">, configOverride?: {
|
|
60
|
+
ignoredHubExecutedBundles: number[];
|
|
61
|
+
ignoredHubProposedBundles: number[];
|
|
62
|
+
timeToCache?: number;
|
|
63
|
+
}, cachingMechanism?: CachingMechanismInterface);
|
|
64
|
+
protected hubPoolEventFilters(): Record<HubPoolEvent, EventFilter>;
|
|
65
|
+
hasPendingProposal(): boolean;
|
|
66
|
+
getPendingRootBundle(): PendingRootBundle | undefined;
|
|
67
|
+
getProposedRootBundles(): ProposedRootBundle[];
|
|
68
|
+
getCancelledRootBundles(): CancelledRootBundle[];
|
|
69
|
+
getDisputedRootBundles(): DisputedRootBundle[];
|
|
70
|
+
getExecutedRootBundles(): ExecutedRootBundle[];
|
|
71
|
+
getSpokePoolForBlock(chain: number, block?: number): string;
|
|
72
|
+
getSpokePoolActivationBlock(chain: number, spokePool: string): number | undefined;
|
|
73
|
+
getL2TokenForL1TokenAtBlock(l1Token: string, destinationChainId: number, latestHubBlock?: number): string;
|
|
74
|
+
getL1TokenForL2TokenAtBlock(l2Token: string, destinationChainId: number, latestHubBlock?: number): string;
|
|
75
|
+
getL1TokenForDeposit(deposit: Pick<DepositWithBlock, "originChainId" | "inputToken" | "quoteBlockNumber">): string;
|
|
76
|
+
getL2TokenForDeposit(deposit: Pick<DepositWithBlock, "originChainId" | "destinationChainId" | "inputToken" | "quoteBlockNumber">, l2ChainId?: number): string;
|
|
77
|
+
l2TokenEnabledForL1Token(l1Token: string, destinationChainId: number): boolean;
|
|
78
|
+
getBlockNumber(timestamp: number): Promise<number | undefined>;
|
|
79
|
+
getCurrentPoolUtilization(l1Token: string): Promise<BigNumber>;
|
|
80
|
+
protected getUtilization(hubPoolToken: string, blockNumber: number, depositAmount: BigNumber, timestamp: number, timeToCache: number): Promise<BigNumber>;
|
|
81
|
+
computeRealizedLpFeePct(deposit: LpFeeRequest): Promise<RealizedLpFee>;
|
|
82
|
+
batchComputeRealizedLpFeePct(deposits: LpFeeRequest[]): Promise<RealizedLpFee[]>;
|
|
83
|
+
getL1Tokens(): L1Token[];
|
|
84
|
+
getTokenInfoForL1Token(l1Token: string): L1Token | undefined;
|
|
85
|
+
getLpTokenInfoForL1Token(l1Token: string): LpToken | undefined;
|
|
86
|
+
getL1TokenInfoForL2Token(l2Token: string, chainId: number): L1Token | undefined;
|
|
87
|
+
getTokenInfoForDeposit(deposit: Deposit): L1Token | undefined;
|
|
88
|
+
getTokenInfo(chainId: number | string, tokenAddress: string): L1Token | undefined;
|
|
89
|
+
areTokensEquivalent(tokenA: string, chainIdA: number, tokenB: string, chainIdB: number, hubPoolBlock?: number): boolean;
|
|
90
|
+
getSpokeActivationBlockForChain(chainId: number): number;
|
|
91
|
+
isRootBundleValid(rootBundle: ProposedRootBundle, latestMainnetBlock: number): boolean;
|
|
92
|
+
getRootBundleEvalBlockNumberContainingBlock(latestMainnetBlock: number, block: number, chain: number, chainIdListOverride?: number[]): number | undefined;
|
|
93
|
+
getProposedRootBundlesInBlockRange(startingBlock: number, endingBlock: number): ProposedRootBundle[];
|
|
94
|
+
getCancelledRootBundlesInBlockRange(startingBlock: number, endingBlock: number): CancelledRootBundle[];
|
|
95
|
+
getDisputedRootBundlesInBlockRange(startingBlock: number, endingBlock: number): DisputedRootBundle[];
|
|
96
|
+
getLatestProposedRootBundle(): ProposedRootBundle;
|
|
97
|
+
getFollowingRootBundle(currentRootBundle: ProposedRootBundle): ProposedRootBundle | undefined;
|
|
98
|
+
getExecutedLeavesForRootBundle(rootBundle: ProposedRootBundle, latestMainnetBlockToSearch: number): ExecutedRootBundle[];
|
|
99
|
+
getValidatedRootBundles(latestMainnetBlock?: number): ProposedRootBundle[];
|
|
100
|
+
getLatestFullyExecutedRootBundle(latestMainnetBlock: number): ProposedRootBundle | undefined;
|
|
101
|
+
getEarliestFullyExecutedRootBundle(latestMainnetBlock: number, startBlock?: number): ProposedRootBundle | undefined;
|
|
102
|
+
getNthFullyExecutedRootBundle(n: number, startBlock?: number): ProposedRootBundle | undefined;
|
|
103
|
+
getLatestBundleEndBlockForChain(chainIdList: number[], latestMainnetBlock: number, chainId: number): number;
|
|
104
|
+
getNextBundleStartBlockNumber(chainIdList: number[], latestMainnetBlock: number, chainId: number): number;
|
|
105
|
+
getRunningBalanceBeforeBlockForChain(block: number, chain: number, l1Token: string): TokenRunningBalance;
|
|
106
|
+
getRunningBalanceForToken(l1Token: string, executedRootBundle: ExecutedRootBundle): TokenRunningBalance;
|
|
107
|
+
_update(eventNames: HubPoolEvent[]): Promise<HubPoolUpdate>;
|
|
108
|
+
update(eventsToQuery?: HubPoolEvent[]): Promise<void>;
|
|
109
|
+
protected getBundleEndBlockForChain(proposeRootBundleEvent: ProposedRootBundle, chainId: number, chainIdList: number[]): number;
|
|
110
|
+
}
|
|
111
|
+
export {};
|