@paraswap/dex-lib 3.11.0-bebop.2 → 3.11.0-bebop.4
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/.vscode/launch.json +53 -0
- package/.vscode/settings.json +2 -0
- package/.vscode/tasks.json +15 -0
- package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
- package/build/abi/{angle-transmuter/ChainlinkAccessControlledOffchainAggregator.json → wombat/pool.json} +637 -594
- package/build/dex/aave-v1/aave-v1.js +1 -0
- package/build/dex/aave-v1/aave-v1.js.map +1 -1
- package/build/dex/aave-v2/tokens-avalanche.json +44 -0
- package/build/dex/aave-v2/tokens-mainnet.json +188 -0
- package/build/dex/aave-v2/tokens-polygon.json +44 -0
- package/build/dex/bProtocol.d.ts +18 -0
- package/build/dex/bProtocol.js +39 -0
- package/build/dex/bProtocol.js.map +1 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
- package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
- package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
- package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
- package/build/dex/balancer-v3/balancer-v3-pool.d.ts +76 -0
- package/build/dex/balancer-v3/balancer-v3-pool.js +383 -0
- package/build/dex/balancer-v3/balancer-v3-pool.js.map +1 -0
- package/build/dex/balancer-v3/balancer-v3.d.ts +57 -0
- package/build/dex/balancer-v3/balancer-v3.js +373 -0
- package/build/dex/balancer-v3/balancer-v3.js.map +1 -0
- package/build/dex/balancer-v3/config.d.ts +8 -0
- package/build/dex/balancer-v3/config.js +24 -0
- package/build/dex/balancer-v3/config.js.map +1 -0
- package/build/dex/balancer-v3/getOnChainState.d.ts +10 -0
- package/build/dex/balancer-v3/getOnChainState.js +158 -0
- package/build/dex/balancer-v3/getOnChainState.js.map +1 -0
- package/build/dex/balancer-v3/getPoolsApi.d.ts +2 -0
- package/build/dex/balancer-v3/getPoolsApi.js +81 -0
- package/build/dex/balancer-v3/getPoolsApi.js.map +1 -0
- package/build/dex/balancer-v3/getTopPoolsApi.d.ts +13 -0
- package/build/dex/balancer-v3/getTopPoolsApi.js +62 -0
- package/build/dex/balancer-v3/getTopPoolsApi.js.map +1 -0
- package/build/dex/balancer-v3/types.d.ts +63 -0
- package/build/dex/balancer-v3/types.js +3 -0
- package/build/dex/balancer-v3/types.js.map +1 -0
- package/build/dex/bancor.d.ts +26 -0
- package/build/dex/bancor.js +58 -0
- package/build/dex/bancor.js.map +1 -0
- package/build/dex/bebop/validators.js +3 -2
- package/build/dex/bebop/validators.js.map +1 -1
- package/build/dex/compound.d.ts +18 -0
- package/build/dex/compound.js +46 -0
- package/build/dex/compound.js.map +1 -0
- package/build/dex/curve-v2.d.ts +58 -0
- package/build/dex/curve-v2.js +180 -0
- package/build/dex/curve-v2.js.map +1 -0
- package/build/dex/dodo-v1.d.ts +33 -0
- package/build/dex/dodo-v1.js +63 -0
- package/build/dex/dodo-v1.js.map +1 -0
- package/build/dex/fluid-dex/fluid-dex-pool.d.ts +47 -0
- package/build/dex/fluid-dex/fluid-dex-pool.js +119 -0
- package/build/dex/fluid-dex/fluid-dex-pool.js.map +1 -0
- package/build/dex/inception/inception-event-pool.d.ts +4 -4
- package/build/dex/inception/inception-event-pool.js +7 -9
- package/build/dex/inception/inception-event-pool.js.map +1 -1
- package/build/dex/inception/inception.d.ts +6 -6
- package/build/dex/inception/inception.js +16 -40
- package/build/dex/inception/inception.js.map +1 -1
- package/build/dex/inception/utils.d.ts +1 -0
- package/build/dex/inception/utils.js +22 -1
- package/build/dex/inception/utils.js.map +1 -1
- package/build/dex/lido.d.ts +19 -0
- package/build/dex/lido.js +42 -0
- package/build/dex/lido.js.map +1 -0
- package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
- package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
- package/build/dex/maker-psm/scripts/validate-state.js +185 -0
- package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
- package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
- package/build/dex/onebit.d.ts +25 -0
- package/build/dex/onebit.js +42 -0
- package/build/dex/onebit.js.map +1 -0
- package/build/dex/platypus/platypus.js +17 -3
- package/build/dex/platypus/platypus.js.map +1 -1
- package/build/dex/smoothy.d.ts +26 -0
- package/build/dex/smoothy.js +48 -0
- package/build/dex/smoothy.js.map +1 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
- package/build/dex/stable-pool.d.ts +28 -0
- package/build/dex/stable-pool.js +55 -0
- package/build/dex/stable-pool.js.map +1 -0
- package/build/dex/swaap-v1/swaap-v1.js +4 -0
- package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.d.ts +7 -0
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.js +20 -0
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.js.map +1 -0
- package/build/dex/trader-joe-v2.1.d.ts +43 -0
- package/build/dex/trader-joe-v2.1.js +79 -0
- package/build/dex/trader-joe-v2.1.js.map +1 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +1 -0
- package/build/stateful-event-subscriber.js +78 -50
- package/build/stateful-event-subscriber.js.map +1 -1
- package/package.json +1 -1
- package/src/dex/bebop/validators.ts +3 -2
- package/src/stateful-event-subscriber.ts +110 -71
- package/tsconfig.json +1 -1
- package/build/abi/Aave_GSM.json +0 -751
- package/build/abi/Balancer.json +0 -257
- package/build/abi/BalancerV2.json +0 -1179
- package/build/abi/RamsesV2Pool.abi.json +0 -1554
- package/build/abi/RamsesV2Quoter.abi.json +0 -274
- package/build/abi/USDM.json +0 -807
- package/build/abi/UniswapV2Router.json +0 -397
- package/build/abi/angle-transmuter/ChainlinkEACAggregatorProxy.json +0 -509
- package/build/abi/cables/CablesMainnetRFQ.json +0 -1083
- package/build/abi/curve-v1/CurveBUSDv2.abi.json +0 -1356
- package/build/abi/curve-v1/CurveTokenV1.json +0 -305
- package/build/abi/curve-v1/CurveTokenV2.json +0 -318
- package/build/abi/curve-v1/CurveV1StableNg.json +0 -1452
- package/build/abi/curve-v1/CurveV2Swap.json +0 -700
- package/build/abi/curve-v1/FactoryCryptoRegistry.json +0 -316
- package/build/abi/curve-v1/FactoryRegistry.json +0 -508
- package/build/abi/curve-v1/StableSwapAave.json +0 -1152
- package/build/abi/curve-v1/StableSwapBUSD.json +0 -814
- package/build/abi/curve-v1/StableSwapCompound.json +0 -814
- package/build/abi/curve-v1/StableSwapIDLE.json +0 -1253
- package/build/abi/curve-v1/StableSwapPax.json +0 -865
- package/build/abi/curve-v1/StableSwapSnow.json +0 -900
- package/build/abi/curve-v1/StableSwapUSDN.json +0 -1004
- package/build/abi/curve-v1/StableSwapUSDT.json +0 -814
- package/build/abi/curve-v1/StableSwapY.json +0 -814
- package/build/abi/inception/inception-ineth.json +0 -609
- package/build/abi/kyberdmm/kyber-storage.abi.json +0 -824
- package/build/abi/kyberdmm.abi.json +0 -1148
- package/build/abi/maverick-v2/MaverickV2Quoter.json +0 -278
- package/build/abi/nerve/nerve-metapool.json +0 -790
- package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
- package/build/abi/velodrome-slipstream/VelodromeSlipstreamQuoterV2.abi.json +0 -267
- package/build/dex/balancer-v1/balancer-pools.json +0 -33333
- package/build/dex/bebop/websocket-fetcher.d.ts +0 -35
- package/build/dex/bebop/websocket-fetcher.js +0 -87
- package/build/dex/bebop/websocket-fetcher.js.map +0 -1
- package/build/dex/cables/cables.d.ts +0 -57
- package/build/dex/cables/cables.js +0 -471
- package/build/dex/cables/cables.js.map +0 -1
- package/build/dex/cables/config.d.ts +0 -4
- package/build/dex/cables/config.js +0 -15
- package/build/dex/cables/config.js.map +0 -1
- package/build/dex/cables/constants.d.ts +0 -19
- package/build/dex/cables/constants.js +0 -26
- package/build/dex/cables/constants.js.map +0 -1
- package/build/dex/cables/rate-fetcher.d.ts +0 -34
- package/build/dex/cables/rate-fetcher.js +0 -106
- package/build/dex/cables/rate-fetcher.js.map +0 -1
- package/build/dex/cables/types.d.ts +0 -106
- package/build/dex/cables/types.js +0 -12
- package/build/dex/cables/types.js.map +0 -1
- package/build/dex/cables/validators.d.ts +0 -5
- package/build/dex/cables/validators.js +0 -49
- package/build/dex/cables/validators.js.map +0 -1
- package/build/dex/idle-dao/idle-dao-pool.d.ts +0 -56
- package/build/dex/idle-dao/idle-dao-pool.js +0 -176
- package/build/dex/idle-dao/idle-dao-pool.js.map +0 -1
- package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +0 -16
- package/build/dex/idle-dao/idle-dao-pooling-pool.js +0 -57
- package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +0 -1
- package/build/dex/idle-dao/scripts.d.ts +0 -9
- package/build/dex/idle-dao/scripts.js +0 -552
- package/build/dex/idle-dao/scripts.js.map +0 -1
- package/build/dex/inception/inception-native.d.ts +0 -43
- package/build/dex/inception/inception-native.js +0 -131
- package/build/dex/inception/inception-native.js.map +0 -1
- package/build/dex/inception/inception-pool.d.ts +0 -18
- package/build/dex/inception/inception-pool.js +0 -32
- package/build/dex/inception/inception-pool.js.map +0 -1
- package/build/dex/inception/inception-price-feed.d.ts +0 -19
- package/build/dex/inception/inception-price-feed.js +0 -51
- package/build/dex/inception/inception-price-feed.js.map +0 -1
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -16
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-eth-steth.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-steth-eth.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-eth-usdc.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-eth.json +0 -9
- package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-usdt.json +0 -9
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -12
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -7
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -7
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -7
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -7
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -12
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-eth-usdc.json +0 -7
- package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-usdc-eth.json +0 -7
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -78
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -81
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -78
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -78
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -81
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -81
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -81
- package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -81
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -64
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -85
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -64
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-eth-steth.json +0 -52
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-steth-eth.json +0 -52
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -52
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-eth-usdc.json +0 -55
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-eth.json +0 -55
- package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-usdt.json +0 -55
- package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -23
- package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -37
- package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -23
- package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -23
- package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -51
- package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-univ3-usdt-dai-eth.json +0 -58
- package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -23
- package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -23
- package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -9
- package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -16
- package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -23
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -12
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -7
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -12
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -12
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -7
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-univ3-usdt-dai-eth.json +0 -7
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -7
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -7
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -7
- package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -7
- package/build/executor/fixtures/executor02/routes/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -130
- package/build/executor/fixtures/executor02/routes/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -136
- package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -100
- package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -100
- package/build/executor/fixtures/executor02/routes/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -166
- package/build/executor/fixtures/executor02/routes/price-route-multiswap-univ3-usdt-dai-eth.json +0 -190
- package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -114
- package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -114
- package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -55
- package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -73
- package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -82
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cables.js","sourceRoot":"","sources":["../../../src/dex/cables/cables.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CablesConfig = void 0;
|
|
4
|
-
const constants_1 = require("../../constants");
|
|
5
|
-
exports.CablesConfig = {
|
|
6
|
-
Cables: {
|
|
7
|
-
[constants_1.Network.AVALANCHE]: {
|
|
8
|
-
mainnetRFQAddress: '0xfA12DCB2e1FD72bD92E8255Db6A781b2c76adC20',
|
|
9
|
-
},
|
|
10
|
-
[constants_1.Network.ARBITRUM]: {
|
|
11
|
-
mainnetRFQAddress: '0xfA12DCB2e1FD72bD92E8255Db6A781b2c76adC20',
|
|
12
|
-
},
|
|
13
|
-
},
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/cables/config.ts"],"names":[],"mappings":";;;AAAA,+CAA0C;AAG7B,QAAA,YAAY,GAAgD;IACvE,MAAM,EAAE;QACN,CAAC,mBAAO,CAAC,SAAS,CAAC,EAAE;YACnB,iBAAiB,EAAE,4CAA4C;SAChE;QACD,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,iBAAiB,EAAE,4CAA4C;SAChE;KACF;CACF,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import BigNumber from 'bignumber.js';
|
|
2
|
-
/**
|
|
3
|
-
* Cables
|
|
4
|
-
*/
|
|
5
|
-
export declare const CABLES_API_URL = "https://cables-evm-rfq-service.cryptosrvc.com/v1";
|
|
6
|
-
export declare const CABLES_PRICES_CACHES_TTL_S = 3;
|
|
7
|
-
export declare const CABLES_API_PRICES_POLLING_INTERVAL_MS = 1000;
|
|
8
|
-
export declare const CABLES_PAIRS_CACHES_TTL_S: number;
|
|
9
|
-
export declare const CABLES_API_PAIRS_POLLING_INTERVAL_MS: number;
|
|
10
|
-
export declare const CABLES_BLACKLIST_CACHES_TTL_S: number;
|
|
11
|
-
export declare const CABLES_API_BLACKLIST_POLLING_INTERVAL_MS: number;
|
|
12
|
-
export declare const CABLES_TOKENS_CACHES_TTL_S: number;
|
|
13
|
-
export declare const CABLES_FIRM_QUOTE_TIMEOUT_MS = 2000;
|
|
14
|
-
export declare const CABLES_RATE_LIMITED_TTL_S: number;
|
|
15
|
-
export declare const CABLES_RATELIMIT_CACHE_VALUE = "limited";
|
|
16
|
-
export declare const CABLES_RESTRICT_TTL_S: number;
|
|
17
|
-
export declare const CABLES_RESTRICTED_CACHE_KEY = "restricted";
|
|
18
|
-
export declare const CABLES_MIN_SLIPPAGE_FACTOR_THRESHOLD_FOR_RESTRICTION: BigNumber;
|
|
19
|
-
export declare const CABLES_GAS_COST = 120000;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CABLES_GAS_COST = exports.CABLES_MIN_SLIPPAGE_FACTOR_THRESHOLD_FOR_RESTRICTION = exports.CABLES_RESTRICTED_CACHE_KEY = exports.CABLES_RESTRICT_TTL_S = exports.CABLES_RATELIMIT_CACHE_VALUE = exports.CABLES_RATE_LIMITED_TTL_S = exports.CABLES_FIRM_QUOTE_TIMEOUT_MS = exports.CABLES_TOKENS_CACHES_TTL_S = exports.CABLES_API_BLACKLIST_POLLING_INTERVAL_MS = exports.CABLES_BLACKLIST_CACHES_TTL_S = exports.CABLES_API_PAIRS_POLLING_INTERVAL_MS = exports.CABLES_PAIRS_CACHES_TTL_S = exports.CABLES_API_PRICES_POLLING_INTERVAL_MS = exports.CABLES_PRICES_CACHES_TTL_S = exports.CABLES_API_URL = void 0;
|
|
7
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
8
|
-
/**
|
|
9
|
-
* Cables
|
|
10
|
-
*/
|
|
11
|
-
exports.CABLES_API_URL = 'https://cables-evm-rfq-service.cryptosrvc.com/v1';
|
|
12
|
-
exports.CABLES_PRICES_CACHES_TTL_S = 3;
|
|
13
|
-
exports.CABLES_API_PRICES_POLLING_INTERVAL_MS = 1000; // 1 sec
|
|
14
|
-
exports.CABLES_PAIRS_CACHES_TTL_S = 10 * 60; // 10 mins
|
|
15
|
-
exports.CABLES_API_PAIRS_POLLING_INTERVAL_MS = 1000 * 60 * 10; // 10 mins
|
|
16
|
-
exports.CABLES_BLACKLIST_CACHES_TTL_S = 30 * 60; // 30 mins
|
|
17
|
-
exports.CABLES_API_BLACKLIST_POLLING_INTERVAL_MS = 1000 * 60 * 60; // 60 mins
|
|
18
|
-
exports.CABLES_TOKENS_CACHES_TTL_S = 10 * 60; // 10 mins
|
|
19
|
-
exports.CABLES_FIRM_QUOTE_TIMEOUT_MS = 2000;
|
|
20
|
-
exports.CABLES_RATE_LIMITED_TTL_S = 60 * 60; // 1 hour
|
|
21
|
-
exports.CABLES_RATELIMIT_CACHE_VALUE = 'limited';
|
|
22
|
-
exports.CABLES_RESTRICT_TTL_S = 60 * 30; // 30 minutes
|
|
23
|
-
exports.CABLES_RESTRICTED_CACHE_KEY = 'restricted';
|
|
24
|
-
exports.CABLES_MIN_SLIPPAGE_FACTOR_THRESHOLD_FOR_RESTRICTION = new bignumber_js_1.default('0.005');
|
|
25
|
-
exports.CABLES_GAS_COST = 120000;
|
|
26
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dex/cables/constants.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AAErC;;GAEG;AACU,QAAA,cAAc,GACzB,kDAAkD,CAAC;AAExC,QAAA,0BAA0B,GAAG,CAAC,CAAC;AAC/B,QAAA,qCAAqC,GAAG,IAAI,CAAC,CAAC,QAAQ;AAEtD,QAAA,yBAAyB,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AAC/C,QAAA,oCAAoC,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AAEjE,QAAA,6BAA6B,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AACnD,QAAA,wCAAwC,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AAErE,QAAA,0BAA0B,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AAChD,QAAA,4BAA4B,GAAG,IAAI,CAAC;AAEpC,QAAA,yBAAyB,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,SAAS;AAC9C,QAAA,4BAA4B,GAAG,SAAS,CAAC;AAEzC,QAAA,qBAAqB,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa;AAC9C,QAAA,2BAA2B,GAAG,YAAY,CAAC;AAE3C,QAAA,oDAAoD,GAC/D,IAAI,sBAAS,CAAC,OAAO,CAAC,CAAC;AAEZ,QAAA,eAAe,GAAG,MAAO,CAAC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Network } from '../../constants';
|
|
2
|
-
import { IDexHelper } from '../../dex-helper';
|
|
3
|
-
import { Fetcher } from '../../lib/fetcher/fetcher';
|
|
4
|
-
import { Logger } from '../../types';
|
|
5
|
-
import { CablesBlacklistResponse, CablesPairsResponse, CablesPricesResponse, CablesRateFetcherConfig, CablesTokensResponse } from './types';
|
|
6
|
-
export declare class CablesRateFetcher {
|
|
7
|
-
private dexHelper;
|
|
8
|
-
private dexKey;
|
|
9
|
-
private network;
|
|
10
|
-
private logger;
|
|
11
|
-
tokensFetcher: Fetcher<CablesTokensResponse>;
|
|
12
|
-
tokensCacheKey: string;
|
|
13
|
-
tokensCacheTTL: number;
|
|
14
|
-
pairsFetcher: Fetcher<CablesPairsResponse>;
|
|
15
|
-
pairsCacheKey: string;
|
|
16
|
-
pairsCacheTTL: number;
|
|
17
|
-
pricesFetcher: Fetcher<CablesPricesResponse>;
|
|
18
|
-
pricesCacheKey: string;
|
|
19
|
-
pricesCacheTTL: number;
|
|
20
|
-
blacklistFetcher: Fetcher<CablesBlacklistResponse>;
|
|
21
|
-
blacklistCacheKey: string;
|
|
22
|
-
blacklistCacheTTL: number;
|
|
23
|
-
constructor(dexHelper: IDexHelper, dexKey: string, network: Network, logger: Logger, config: CablesRateFetcherConfig);
|
|
24
|
-
/**
|
|
25
|
-
* Utils
|
|
26
|
-
*/
|
|
27
|
-
start(): void;
|
|
28
|
-
stop(): void;
|
|
29
|
-
private handlePairsResponse;
|
|
30
|
-
private handlePricesResponse;
|
|
31
|
-
private handleBlacklistResponse;
|
|
32
|
-
private normalizeAddressesToLowerCase;
|
|
33
|
-
private handleTokensResponse;
|
|
34
|
-
}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CablesRateFetcher = void 0;
|
|
4
|
-
const fetcher_1 = require("../../lib/fetcher/fetcher");
|
|
5
|
-
const validators_1 = require("../../lib/validators");
|
|
6
|
-
const validators_2 = require("./validators");
|
|
7
|
-
class CablesRateFetcher {
|
|
8
|
-
constructor(dexHelper, dexKey, network, logger, config) {
|
|
9
|
-
this.dexHelper = dexHelper;
|
|
10
|
-
this.dexKey = dexKey;
|
|
11
|
-
this.network = network;
|
|
12
|
-
this.logger = logger;
|
|
13
|
-
// Convert addresses to lowercase
|
|
14
|
-
this.normalizeAddressesToLowerCase = (jsonData) => {
|
|
15
|
-
Object.keys(jsonData).forEach(key => {
|
|
16
|
-
jsonData[key].address = jsonData[key].address.toLowerCase();
|
|
17
|
-
});
|
|
18
|
-
return jsonData;
|
|
19
|
-
};
|
|
20
|
-
this.tokensCacheKey = config.rateConfig.tokensCacheKey;
|
|
21
|
-
this.tokensCacheTTL = config.rateConfig.tokensCacheTTLSecs;
|
|
22
|
-
this.pairsCacheKey = config.rateConfig.pairsCacheKey;
|
|
23
|
-
this.pairsCacheTTL = config.rateConfig.pairsCacheTTLSecs;
|
|
24
|
-
this.pricesCacheKey = config.rateConfig.pricesCacheKey;
|
|
25
|
-
this.pricesCacheTTL = config.rateConfig.pricesCacheTTLSecs;
|
|
26
|
-
this.blacklistCacheKey = config.rateConfig.blacklistCacheKey;
|
|
27
|
-
this.blacklistCacheTTL = config.rateConfig.blacklistCacheTTLSecs;
|
|
28
|
-
this.pairsFetcher = new fetcher_1.Fetcher(dexHelper.httpRequest, {
|
|
29
|
-
info: {
|
|
30
|
-
requestOptions: config.rateConfig.pairsReqParams,
|
|
31
|
-
caster: (data) => {
|
|
32
|
-
return (0, validators_1.validateAndCast)(data, validators_2.pairsResponseValidator);
|
|
33
|
-
},
|
|
34
|
-
},
|
|
35
|
-
handler: this.handlePairsResponse.bind(this),
|
|
36
|
-
}, config.rateConfig.pairsIntervalMs, logger);
|
|
37
|
-
this.pricesFetcher = new fetcher_1.Fetcher(dexHelper.httpRequest, {
|
|
38
|
-
info: {
|
|
39
|
-
requestOptions: config.rateConfig.pricesReqParams,
|
|
40
|
-
caster: (data) => {
|
|
41
|
-
return (0, validators_1.validateAndCast)(data, validators_2.pricesResponseValidator);
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
handler: this.handlePricesResponse.bind(this),
|
|
45
|
-
}, config.rateConfig.pricesIntervalMs, logger);
|
|
46
|
-
this.blacklistFetcher = new fetcher_1.Fetcher(dexHelper.httpRequest, {
|
|
47
|
-
info: {
|
|
48
|
-
requestOptions: config.rateConfig.blacklistReqParams,
|
|
49
|
-
caster: (data) => {
|
|
50
|
-
return (0, validators_1.validateAndCast)(data, validators_2.blacklistResponseValidator);
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
handler: this.handleBlacklistResponse.bind(this),
|
|
54
|
-
}, config.rateConfig.blacklistIntervalMs, logger);
|
|
55
|
-
this.tokensFetcher = new fetcher_1.Fetcher(dexHelper.httpRequest, {
|
|
56
|
-
info: {
|
|
57
|
-
requestOptions: config.rateConfig.tokensReqParams,
|
|
58
|
-
caster: (data) => {
|
|
59
|
-
return (0, validators_1.validateAndCast)(data, validators_2.tokensResponseValidator);
|
|
60
|
-
},
|
|
61
|
-
},
|
|
62
|
-
handler: this.handleTokensResponse.bind(this),
|
|
63
|
-
}, config.rateConfig.tokensIntervalMs, logger);
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Utils
|
|
67
|
-
*/
|
|
68
|
-
start() {
|
|
69
|
-
this.pairsFetcher.startPolling();
|
|
70
|
-
this.pricesFetcher.startPolling();
|
|
71
|
-
this.blacklistFetcher.startPolling();
|
|
72
|
-
this.tokensFetcher.startPolling();
|
|
73
|
-
}
|
|
74
|
-
stop() {
|
|
75
|
-
this.pairsFetcher.stopPolling();
|
|
76
|
-
this.pricesFetcher.stopPolling();
|
|
77
|
-
this.blacklistFetcher.stopPolling();
|
|
78
|
-
this.tokensFetcher.stopPolling();
|
|
79
|
-
}
|
|
80
|
-
handlePairsResponse(res) {
|
|
81
|
-
const networkId = String(this.network);
|
|
82
|
-
const pairs = res.pairs[networkId];
|
|
83
|
-
let normalized_pairs = {};
|
|
84
|
-
Object.keys(pairs).forEach(key => {
|
|
85
|
-
normalized_pairs[key.toLowerCase()] = pairs[key];
|
|
86
|
-
});
|
|
87
|
-
this.dexHelper.cache.setex(this.dexKey, this.network, this.pairsCacheKey, this.pairsCacheTTL, JSON.stringify(normalized_pairs));
|
|
88
|
-
}
|
|
89
|
-
handlePricesResponse(res) {
|
|
90
|
-
const networkId = String(this.network);
|
|
91
|
-
const prices = res.prices[networkId];
|
|
92
|
-
this.dexHelper.cache.setex(this.dexKey, this.network, this.pricesCacheKey, this.pricesCacheTTL, JSON.stringify(prices));
|
|
93
|
-
}
|
|
94
|
-
handleBlacklistResponse(res) {
|
|
95
|
-
const { blacklist } = res;
|
|
96
|
-
this.dexHelper.cache.setex(this.dexKey, this.network, this.blacklistCacheKey, this.blacklistCacheTTL, JSON.stringify(blacklist.map(item => item.toLowerCase())));
|
|
97
|
-
}
|
|
98
|
-
handleTokensResponse(res) {
|
|
99
|
-
const networkId = String(this.network);
|
|
100
|
-
const tokens = res.tokens[networkId];
|
|
101
|
-
const normalized_tokens = this.normalizeAddressesToLowerCase(tokens);
|
|
102
|
-
this.dexHelper.cache.setex(this.dexKey, this.network, this.tokensCacheKey, this.tokensCacheTTL, JSON.stringify(normalized_tokens));
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
exports.CablesRateFetcher = CablesRateFetcher;
|
|
106
|
-
//# sourceMappingURL=rate-fetcher.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/cables/rate-fetcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { RequestHeaders } from '../../dex-helper';
|
|
2
|
-
import { Token } from '../../types';
|
|
3
|
-
import { Method } from '../../dex-helper/irequest-wrapper';
|
|
4
|
-
import { AugustusRFQOrderData } from '../augustus-rfq';
|
|
5
|
-
export declare type CablesRFQResponse = {
|
|
6
|
-
order: AugustusRFQOrderData;
|
|
7
|
-
signature: string;
|
|
8
|
-
};
|
|
9
|
-
export declare type CablesData = {
|
|
10
|
-
quoteData?: AugustusRFQOrderData;
|
|
11
|
-
};
|
|
12
|
-
export declare enum OrderbookSide {
|
|
13
|
-
bids = "bids",
|
|
14
|
-
asks = "asks"
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Utils
|
|
18
|
-
*/
|
|
19
|
-
export declare type CablesAPIParameters = {
|
|
20
|
-
url: string;
|
|
21
|
-
method: Method;
|
|
22
|
-
};
|
|
23
|
-
export declare class CablesRfqError extends Error {
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Types
|
|
27
|
-
*/
|
|
28
|
-
export declare type PairData = {
|
|
29
|
-
base: string;
|
|
30
|
-
quote: string;
|
|
31
|
-
liquidityUSD: number;
|
|
32
|
-
};
|
|
33
|
-
export declare type PriceAndAmount = [string, string];
|
|
34
|
-
export declare type PriceData = {
|
|
35
|
-
bids: PriceAndAmount[];
|
|
36
|
-
asks: PriceAndAmount[];
|
|
37
|
-
};
|
|
38
|
-
export declare type PriceDataMap = {
|
|
39
|
-
[network: string]: {
|
|
40
|
-
[pair: string]: PriceData;
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
export declare type TokenDataMap = {
|
|
44
|
-
[network: string]: {
|
|
45
|
-
[token: string]: Token;
|
|
46
|
-
};
|
|
47
|
-
};
|
|
48
|
-
export declare type PairsDataMap = {
|
|
49
|
-
[network: string]: {
|
|
50
|
-
[token: string]: PairData;
|
|
51
|
-
};
|
|
52
|
-
};
|
|
53
|
-
/**
|
|
54
|
-
* Responses
|
|
55
|
-
*/
|
|
56
|
-
export declare type CablesPricesResponse = {
|
|
57
|
-
prices: PriceDataMap;
|
|
58
|
-
};
|
|
59
|
-
export declare type CablesBlacklistResponse = {
|
|
60
|
-
blacklist: string[];
|
|
61
|
-
};
|
|
62
|
-
export declare type CablesTokensResponse = {
|
|
63
|
-
tokens: TokenDataMap;
|
|
64
|
-
};
|
|
65
|
-
export declare type CablesPairsResponse = {
|
|
66
|
-
pairs: PairsDataMap;
|
|
67
|
-
};
|
|
68
|
-
/**
|
|
69
|
-
* Rate Fetcher
|
|
70
|
-
*/
|
|
71
|
-
export declare type CablesRateFetcherConfig = {
|
|
72
|
-
rateConfig: {
|
|
73
|
-
pairsReqParams: {
|
|
74
|
-
url: string;
|
|
75
|
-
headers?: RequestHeaders;
|
|
76
|
-
params?: any;
|
|
77
|
-
};
|
|
78
|
-
pricesReqParams: {
|
|
79
|
-
url: string;
|
|
80
|
-
headers?: RequestHeaders;
|
|
81
|
-
params?: any;
|
|
82
|
-
};
|
|
83
|
-
blacklistReqParams: {
|
|
84
|
-
url: string;
|
|
85
|
-
headers?: RequestHeaders;
|
|
86
|
-
params?: any;
|
|
87
|
-
};
|
|
88
|
-
tokensReqParams: {
|
|
89
|
-
url: string;
|
|
90
|
-
headers?: RequestHeaders;
|
|
91
|
-
params?: any;
|
|
92
|
-
};
|
|
93
|
-
pairsIntervalMs: number;
|
|
94
|
-
pricesIntervalMs: number;
|
|
95
|
-
blacklistIntervalMs: number;
|
|
96
|
-
tokensIntervalMs: number;
|
|
97
|
-
pairsCacheKey: string;
|
|
98
|
-
pricesCacheKey: string;
|
|
99
|
-
blacklistCacheKey: string;
|
|
100
|
-
tokensCacheKey: string;
|
|
101
|
-
blacklistCacheTTLSecs: number;
|
|
102
|
-
pairsCacheTTLSecs: number;
|
|
103
|
-
pricesCacheTTLSecs: number;
|
|
104
|
-
tokensCacheTTLSecs: number;
|
|
105
|
-
};
|
|
106
|
-
};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CablesRfqError = exports.OrderbookSide = void 0;
|
|
4
|
-
var OrderbookSide;
|
|
5
|
-
(function (OrderbookSide) {
|
|
6
|
-
OrderbookSide["bids"] = "bids";
|
|
7
|
-
OrderbookSide["asks"] = "asks";
|
|
8
|
-
})(OrderbookSide = exports.OrderbookSide || (exports.OrderbookSide = {}));
|
|
9
|
-
class CablesRfqError extends Error {
|
|
10
|
-
}
|
|
11
|
-
exports.CablesRfqError = CablesRfqError;
|
|
12
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/cables/types.ts"],"names":[],"mappings":";;;AAcA,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,8BAAa,CAAA;AACf,CAAC,EAHW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAGxB;AASD,MAAa,cAAe,SAAQ,KAAK;CAAG;AAA5C,wCAA4C"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import joi from 'joi';
|
|
2
|
-
export declare const pairsResponseValidator: joi.ObjectSchema<any>;
|
|
3
|
-
export declare const pricesResponseValidator: joi.ObjectSchema<any>;
|
|
4
|
-
export declare const tokensResponseValidator: joi.ObjectSchema<any>;
|
|
5
|
-
export declare const blacklistResponseValidator: joi.ObjectSchema<any>;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.blacklistResponseValidator = exports.tokensResponseValidator = exports.pricesResponseValidator = exports.pairsResponseValidator = void 0;
|
|
7
|
-
const joi_1 = __importDefault(require("joi"));
|
|
8
|
-
const pairValidator = joi_1.default.object({
|
|
9
|
-
base: joi_1.default.string().min(1),
|
|
10
|
-
quote: joi_1.default.string().min(1),
|
|
11
|
-
liquidityUSD: joi_1.default.number().min(0),
|
|
12
|
-
baseAddress: joi_1.default.string().min(1),
|
|
13
|
-
quoteAddress: joi_1.default.string().min(1),
|
|
14
|
-
baseDecimals: joi_1.default.number().min(0),
|
|
15
|
-
quoteDecimals: joi_1.default.number().min(0),
|
|
16
|
-
});
|
|
17
|
-
const pairMap = joi_1.default.object().pattern(joi_1.default.string(), // Pair name ETH/USDT
|
|
18
|
-
pairValidator);
|
|
19
|
-
exports.pairsResponseValidator = joi_1.default.object({
|
|
20
|
-
pairs: joi_1.default.object().pattern(joi_1.default.string(), // chain id
|
|
21
|
-
pairMap),
|
|
22
|
-
});
|
|
23
|
-
const orderbookEntry = joi_1.default.array().items(joi_1.default.string().min(1)).length(2);
|
|
24
|
-
const orderbookValidator = joi_1.default.object({
|
|
25
|
-
bids: joi_1.default.array().items(orderbookEntry),
|
|
26
|
-
asks: joi_1.default.array().items(orderbookEntry),
|
|
27
|
-
});
|
|
28
|
-
const chainDataSchema = joi_1.default.object().pattern(joi_1.default.string(), // pair name USDC/USDT
|
|
29
|
-
orderbookValidator);
|
|
30
|
-
exports.pricesResponseValidator = joi_1.default.object({
|
|
31
|
-
prices: joi_1.default.object().pattern(joi_1.default.string(), // chain id
|
|
32
|
-
chainDataSchema),
|
|
33
|
-
});
|
|
34
|
-
const tokenValidator = joi_1.default.object({
|
|
35
|
-
symbol: joi_1.default.string().min(1),
|
|
36
|
-
name: joi_1.default.string().min(1),
|
|
37
|
-
description: joi_1.default.string().min(1),
|
|
38
|
-
address: joi_1.default.string().min(1),
|
|
39
|
-
decimals: joi_1.default.number().min(0),
|
|
40
|
-
type: joi_1.default.string().min(1),
|
|
41
|
-
});
|
|
42
|
-
const chainTokens = joi_1.default.object().pattern(joi_1.default.string(), tokenValidator);
|
|
43
|
-
exports.tokensResponseValidator = joi_1.default.object({
|
|
44
|
-
tokens: joi_1.default.object().pattern(joi_1.default.string(), chainTokens),
|
|
45
|
-
});
|
|
46
|
-
exports.blacklistResponseValidator = joi_1.default.object({
|
|
47
|
-
blacklist: joi_1.default.array().items(joi_1.default.string().min(1)),
|
|
48
|
-
});
|
|
49
|
-
//# sourceMappingURL=validators.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/dex/cables/validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import BigNumber from 'bignumber.js';
|
|
2
|
-
import { Contract } from 'web3-eth-contract';
|
|
3
|
-
import { Interface } from '@ethersproject/abi';
|
|
4
|
-
import { DeepReadonly } from 'ts-essentials';
|
|
5
|
-
import { Log, Logger } from '../../types';
|
|
6
|
-
import { StatefulEventSubscriber } from '../../stateful-event-subscriber';
|
|
7
|
-
import { IDexHelper } from '../../dex-helper/idex-helper';
|
|
8
|
-
import { PoolState, IdleToken } from './types';
|
|
9
|
-
import { IdleDao } from './idle-dao';
|
|
10
|
-
declare type BlocksTransfers = Record<number, {
|
|
11
|
-
underlyingAmount: BigNumber;
|
|
12
|
-
idleAmount: BigNumber;
|
|
13
|
-
processed: boolean;
|
|
14
|
-
}>;
|
|
15
|
-
export declare class IdleDaoEventPool extends StatefulEventSubscriber<PoolState> {
|
|
16
|
-
readonly parentName: string;
|
|
17
|
-
protected network: number;
|
|
18
|
-
protected dexHelper: IDexHelper;
|
|
19
|
-
protected logger: Logger;
|
|
20
|
-
protected idleToken: IdleToken;
|
|
21
|
-
protected IdleDao: IdleDao;
|
|
22
|
-
handlers: {
|
|
23
|
-
[event: string]: (event: any, state: DeepReadonly<PoolState>, log: Readonly<Log>) => Promise<DeepReadonly<PoolState> | null>;
|
|
24
|
-
};
|
|
25
|
-
logDecoder: (log: Log) => any;
|
|
26
|
-
cdoContract: Contract;
|
|
27
|
-
poolInterface: Interface;
|
|
28
|
-
addressesSubscribed: string[];
|
|
29
|
-
blocksTransfers: BlocksTransfers;
|
|
30
|
-
constructor(parentName: string, network: number, dexHelper: IDexHelper, logger: Logger, idleToken: IdleToken, IdleDao: IdleDao);
|
|
31
|
-
/**
|
|
32
|
-
* The function is called every time any of the subscribed
|
|
33
|
-
* addresses release log. The function accepts the current
|
|
34
|
-
* state, updates the state according to the log, and returns
|
|
35
|
-
* the updated state.
|
|
36
|
-
* @param state - Current state of event subscriber
|
|
37
|
-
* @param log - Log released by one of the subscribed addresses
|
|
38
|
-
* @returns Updates state of the event subscriber after the log
|
|
39
|
-
*/
|
|
40
|
-
protected processLog(state: DeepReadonly<PoolState>, log: Readonly<Log>): Promise<DeepReadonly<PoolState> | null>;
|
|
41
|
-
/**
|
|
42
|
-
* The function generates state using on-chain calls. This
|
|
43
|
-
* function is called to regenerate state if the event based
|
|
44
|
-
* system fails to fetch events and the local state is no
|
|
45
|
-
* more correct.
|
|
46
|
-
* @param blockNumber - Blocknumber for which the state should
|
|
47
|
-
* should be generated
|
|
48
|
-
* @returns state of the event subscriber at blocknumber
|
|
49
|
-
*/
|
|
50
|
-
generateState(blockNumber: number): Promise<DeepReadonly<PoolState>>;
|
|
51
|
-
setBlockState(blockNumber: number, state: PoolState): void;
|
|
52
|
-
handleCoinTransfer(event: any, state: PoolState, log: Log): Promise<DeepReadonly<PoolState> | null>;
|
|
53
|
-
processBlockTransfer(blockNumber: number, state: PoolState): PoolState;
|
|
54
|
-
handleCoinTransfer_old(event: any, state: PoolState, log: Log): Promise<DeepReadonly<PoolState> | null>;
|
|
55
|
-
}
|
|
56
|
-
export {};
|