Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor/pro-1160/remove-side-side-map #4489

Merged
merged 15 commits into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 13 additions & 14 deletions api/bin/chainflip-lp-api/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use chainflip_api::{
self,
lp::{
types::{LimitOrder, RangeOrder},
ApiWaitForResult, LpApi, Order, Tick,
ApiWaitForResult, LpApi, PoolPairsMap, Side, Tick,
},
primitives::{
chains::{assets::any::OldAsset, Bitcoin, Ethereum, Polkadot},
Expand All @@ -28,7 +28,7 @@ use jsonrpsee::{
types::SubscriptionResult,
SubscriptionSink,
};
use pallet_cf_pools::{AssetPair, AssetsMap, IncreaseOrDecrease, OrderId, RangeOrderSize};
use pallet_cf_pools::{AssetPair, IncreaseOrDecrease, OrderId, RangeOrderSize};
use rpc_types::{AssetBalance, OpenSwapChannels, OrderIdJson, RangeOrderSizeJson};
use sp_core::U256;
use std::{
Expand All @@ -44,8 +44,7 @@ pub mod rpc_types {
use super::*;
use anyhow::anyhow;
use cf_utilities::rpc::NumberOrHex;
use chainflip_api::queries::SwapChannelInfo;
use pallet_cf_pools::AssetsMap;
use chainflip_api::{lp::PoolPairsMap, queries::SwapChannelInfo};
use serde::{Deserialize, Serialize};

#[derive(Copy, Clone, Debug, Serialize, Deserialize)]
Expand All @@ -60,7 +59,7 @@ pub mod rpc_types {

#[derive(Copy, Clone, Debug, Serialize, Deserialize)]
pub enum RangeOrderSizeJson {
AssetAmounts { maximum: AssetsMap<NumberOrHex>, minimum: AssetsMap<NumberOrHex> },
AssetAmounts { maximum: PoolPairsMap<NumberOrHex>, minimum: PoolPairsMap<NumberOrHex> },
Liquidity { liquidity: NumberOrHex },
}
impl TryFrom<RangeOrderSizeJson> for RangeOrderSize {
Expand Down Expand Up @@ -156,7 +155,7 @@ pub trait Rpc {
&self,
base_asset: Asset,
quote_asset: Asset,
side: Order,
side: Side,
id: OrderIdJson,
tick: Option<Tick>,
amount_change: IncreaseOrDecrease<NumberOrHex>,
Expand All @@ -169,7 +168,7 @@ pub trait Rpc {
&self,
base_asset: Asset,
quote_asset: Asset,
side: Order,
side: Side,
id: OrderIdJson,
tick: Option<Tick>,
sell_amount: NumberOrHex,
Expand Down Expand Up @@ -226,7 +225,7 @@ pub enum OrderFilled {
lp: AccountId,
base_asset: OldAsset,
quote_asset: OldAsset,
side: Order,
side: Side,
id: U256,
tick: Tick,
sold: U256,
Expand All @@ -240,7 +239,7 @@ pub enum OrderFilled {
quote_asset: OldAsset,
id: U256,
range: Range<Tick>,
fees: AssetsMap<U256>,
fees: PoolPairsMap<U256>,
liquidity: U256,
},
}
Expand Down Expand Up @@ -367,7 +366,7 @@ impl RpcServer for RpcServerImpl {
&self,
base_asset: Asset,
quote_asset: Asset,
side: Order,
side: Side,
id: OrderIdJson,
tick: Option<Tick>,
amount_change: IncreaseOrDecrease<NumberOrHex>,
Expand All @@ -394,7 +393,7 @@ impl RpcServer for RpcServerImpl {
&self,
base_asset: Asset,
quote_asset: Asset,
side: Order,
side: Side,
id: OrderIdJson,
tick: Option<Tick>,
sell_amount: NumberOrHex,
Expand Down Expand Up @@ -558,7 +557,7 @@ where
let updated_range_orders = &updated_range_orders;
let updated_limit_orders = &updated_limit_orders;
let previous_pools = &previous_pools;
[Order::Sell, Order::Buy]
[Side::Sell, Side::Buy]
.into_iter()
.flat_map(move |side| {
pool.pool_state.limit_orders(side).filter_map(
Expand Down Expand Up @@ -635,7 +634,7 @@ where
collected
.fees
.zip(previous_collected.fees)
.map(|_, (fees, previous_fees)| fees - previous_fees)
.map(|(fees, previous_fees)| fees - previous_fees)
} else {
collected.fees
}
Expand All @@ -650,7 +649,7 @@ where
quote_asset: asset_pair.assets().quote.into(),
id: id.into(),
range: range.clone(),
fees: fees.map(|_, fees| fees).into(),
fees: fees.map(|fees| fees),
liquidity: position_info.liquidity.into(),
})
}
Expand Down
14 changes: 7 additions & 7 deletions api/lib/src/lp.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use anyhow::{bail, Context, Result};
use async_trait::async_trait;
pub use cf_amm::{
common::{Amount, Order, Side, SideMap, Tick},
common::{Amount, PoolPairsMap, Side, Tick},
range_orders::Liquidity,
};
use cf_chains::address::EncodedAddress;
Expand All @@ -10,7 +10,7 @@ use chainflip_engine::state_chain_observer::client::{
extrinsic_api::signed::{SignedExtrinsicApi, UntilInBlock, WaitFor, WaitForResult},
StateChainClient,
};
use pallet_cf_pools::{AssetsMap, IncreaseOrDecrease, OrderId, RangeOrderSize};
use pallet_cf_pools::{IncreaseOrDecrease, OrderId, RangeOrderSize};
use serde::{Deserialize, Serialize};
use sp_core::{H256, U256};
use state_chain_runtime::RuntimeCall;
Expand Down Expand Up @@ -52,21 +52,21 @@ pub mod types {
pub id: U256,
pub tick_range: Range<Tick>,
pub liquidity_total: U256,
pub collected_fees: AssetsMap<U256>,
pub collected_fees: PoolPairsMap<U256>,
pub size_change: Option<IncreaseOrDecrease<RangeOrderChange>>,
}

#[derive(Serialize, Deserialize, Clone)]
pub struct RangeOrderChange {
pub liquidity: U256,
pub amounts: AssetsMap<U256>,
pub amounts: PoolPairsMap<U256>,
}

#[derive(Serialize, Deserialize, Clone)]
pub struct LimitOrder {
pub base_asset: OldAsset,
pub quote_asset: OldAsset,
pub side: Order,
pub side: Side,
pub id: U256,
pub tick: Tick,
pub sell_amount_total: U256,
Expand Down Expand Up @@ -313,7 +313,7 @@ pub trait LpApi: SignedExtrinsicApi {
&self,
base_asset: Asset,
quote_asset: Asset,
side: Order,
side: Side,
id: OrderId,
option_tick: Option<Tick>,
amount_change: IncreaseOrDecrease<AssetAmount>,
Expand All @@ -340,7 +340,7 @@ pub trait LpApi: SignedExtrinsicApi {
&self,
base_asset: Asset,
quote_asset: Asset,
side: Order,
side: Side,
id: OrderId,
option_tick: Option<Tick>,
sell_amount: AssetAmount,
Expand Down
Loading
Loading