Przeglądaj źródła

按钮样式调整,移除bybit的内容。

skyffire 9 miesięcy temu
rodzic
commit
c5fa0c621d

+ 6 - 9
src/data_providers.rs

@@ -13,7 +13,7 @@ use serde::{Deserialize, Deserializer, Serialize};
 use serde_json::Value;
 
 pub mod binance;
-pub mod bybit;
+pub mod china_futures;
 pub mod fetcher;
 
 #[allow(clippy::large_enum_variant)]
@@ -269,8 +269,7 @@ fn round_to_decimal_places(value: f32, places: u32) -> f32 {
 pub enum Exchange {
     BinanceFutures,
     BinanceSpot,
-    BybitLinear,
-    BybitSpot,
+    ChinaFutures
 }
 
 impl std::fmt::Display for Exchange {
@@ -281,18 +280,16 @@ impl std::fmt::Display for Exchange {
             match self {
                 Exchange::BinanceFutures => "Binance Futures",
                 Exchange::BinanceSpot => "Binance Spot",
-                Exchange::BybitLinear => "Bybit Linear",
-                Exchange::BybitSpot => "Bybit Spot",
+                Exchange::ChinaFutures => "China Futures"
             }
         )
     }
 }
 impl Exchange {
-    pub const MARKET_TYPES: [(Exchange, MarketType); 4] = [
+    pub const MARKET_TYPES: [(Exchange, MarketType); 3] = [
         (Exchange::BinanceFutures, MarketType::LinearPerps),
-        (Exchange::BybitLinear, MarketType::LinearPerps),
-        (Exchange::BinanceSpot, MarketType::Spot),
-        (Exchange::BybitSpot, MarketType::Spot),
+        (Exchange::ChinaFutures, MarketType::LinearPerps),
+        (Exchange::BinanceSpot, MarketType::Spot)
     ];
 }
 

+ 0 - 0
src/data_providers/bybit.rs → src/data_providers/china_futures.rs


+ 16 - 21
src/main.rs

@@ -21,7 +21,7 @@ use screen::{
     modal::{confirmation_modal, dashboard_modal}
 };
 use data_providers::{
-    binance, bybit, Exchange, MarketType, StreamType, Ticker, TickerInfo, TickerStats, Timeframe
+    binance, china_futures, Exchange, MarketType, StreamType, Ticker, TickerInfo, TickerStats, Timeframe
 };
 use window::{window_events, Window, WindowEvent};
 use iced::{
@@ -169,8 +169,8 @@ impl State {
                         Exchange::BinanceFutures | Exchange::BinanceSpot => {
                             fetch_ticker_info(*exchange, binance::fetch_ticksize(*market_type))
                         }
-                        Exchange::BybitLinear | Exchange::BybitSpot => {
-                            fetch_ticker_info(*exchange, bybit::fetch_ticksize(*market_type))
+                        Exchange::ChinaFutures => {
+                            fetch_ticker_info(*exchange, china_futures::fetch_ticksize(*market_type))
                         }
                     };
 
@@ -178,8 +178,8 @@ impl State {
                         Exchange::BinanceFutures | Exchange::BinanceSpot => {
                             fetch_ticker_prices(*exchange, binance::fetch_ticker_prices(*market_type))
                         }
-                        Exchange::BybitLinear | Exchange::BybitSpot => {
-                            fetch_ticker_prices(*exchange, bybit::fetch_ticker_prices(*market_type))
+                        Exchange::ChinaFutures => {
+                            fetch_ticker_prices(*exchange, china_futures::fetch_ticker_prices(*market_type))
                         }
                     };
 
@@ -197,7 +197,7 @@ impl State {
                 active_modal: DashboardModal::None,
                 notification: None,
                 tickers_info,
-                show_tickers_dashboard: false,
+                show_tickers_dashboard: true,
                 sidebar_location: saved_state.sidebar,
                 tickers_table: TickersTable::new(saved_state.favorited_tickers),
                 confirmation_dialog: None,
@@ -434,9 +434,9 @@ impl State {
                 self.tickers_table.update_table(exchange, tickers_info);
             }
             Message::FetchAndUpdateTickersTable => {
-                let bybit_linear_fetch = fetch_ticker_prices(
-                    Exchange::BybitLinear,
-                    bybit::fetch_ticker_prices(MarketType::LinearPerps),
+                let china_futures_fetch = fetch_ticker_prices(
+                    Exchange::ChinaFutures,
+                    china_futures::fetch_ticker_prices(MarketType::LinearPerps),
                 );
                 let binance_linear_fetch = fetch_ticker_prices(
                     Exchange::BinanceFutures,
@@ -446,16 +446,11 @@ impl State {
                     Exchange::BinanceSpot,
                     binance::fetch_ticker_prices(MarketType::Spot),
                 );
-                let bybit_spot_fetch = fetch_ticker_prices(
-                    Exchange::BybitSpot,
-                    bybit::fetch_ticker_prices(MarketType::Spot),
-                );
 
                 return Task::batch(vec![
-                    bybit_linear_fetch,
+                    china_futures_fetch,
                     binance_linear_fetch,
                     binance_spot_fetch,
-                    bybit_spot_fetch,
                 ]);
             }
             Message::TickersTable(message) => {
@@ -932,8 +927,8 @@ impl State {
                                         .map(move |evt| create_market_event(exchange, evt));
                                     Subscription::run_with_id(ticker, stream)
                                 },
-                                Exchange::BybitLinear | Exchange::BybitSpot => {
-                                    let stream = bybit::connect_market_stream(ticker)
+                                Exchange::ChinaFutures => {
+                                    let stream = china_futures::connect_market_stream(ticker)
                                         .map(move |evt| create_market_event(exchange, evt));
                                     Subscription::run_with_id(ticker, stream)
                                 },
@@ -947,8 +942,8 @@ impl State {
                     let kline_streams_id: Vec<(Ticker, Timeframe)> = kline_streams.clone();
 
                     let market_type = match exchange {
-                        Exchange::BinanceFutures | Exchange::BybitLinear => MarketType::LinearPerps,
-                        Exchange::BinanceSpot | Exchange::BybitSpot => MarketType::Spot,
+                        Exchange::BinanceFutures | Exchange::ChinaFutures => MarketType::LinearPerps,
+                        Exchange::BinanceSpot => MarketType::Spot,
                     };
 
                     let kline_subscription = match exchange {
@@ -961,8 +956,8 @@ impl State {
 
                             Subscription::run_with_id(kline_streams_id, stream)
                         },
-                        Exchange::BybitLinear | Exchange::BybitSpot => {
-                            let stream = bybit::connect_kline_stream(
+                        Exchange::ChinaFutures => {
+                            let stream = china_futures::connect_kline_stream(
                                 kline_streams,
                                 market_type,
                             )

+ 7 - 7
src/screen/dashboard.rs

@@ -8,7 +8,7 @@ use crate::{
         candlestick::CandlestickChart, footprint::FootprintChart, Message as ChartMessage
     },
     data_providers::{
-        binance, bybit, fetcher::FetchRange, Depth, Exchange, Kline, OpenInterest, TickMultiplier, Ticker, TickerInfo, Timeframe, Trade
+        binance, china_futures, fetcher::FetchRange, Depth, Exchange, Kline, OpenInterest, TickMultiplier, Ticker, TickerInfo, Timeframe, Trade
     },
     screen::InfoType,
     style,
@@ -1393,8 +1393,8 @@ fn get_oi_fetch_task(
                     .map_err(|err| format!("{err}")),
                 move |oi| Message::OIFetchEvent(req_id, oi, stream, pane, window_id),
             ),
-            Exchange::BybitLinear => Task::perform(
-                bybit::fetch_historical_oi(ticker, from_to_time, timeframe)
+            Exchange::ChinaFutures => Task::perform(
+                china_futures::fetch_historical_oi(ticker, from_to_time, timeframe)
                     .map_err(|err| format!("{err}")),
                 move |oi| Message::OIFetchEvent(req_id, oi, stream, pane, window_id),
             ),
@@ -1425,8 +1425,8 @@ fn get_kline_fetch_task(
                     .map_err(|err| format!("{err}")),
                 move |klines| Message::FetchEvent(req_id, klines, stream, pane, window_id),
             ),
-            Exchange::BybitLinear | Exchange::BybitSpot => Task::perform(
-                bybit::fetch_klines(ticker, timeframe, range)
+            Exchange::ChinaFutures => Task::perform(
+                china_futures::fetch_klines(ticker, timeframe, range)
                     .map_err(|err| format!("{err}")),
                 move |klines| Message::FetchEvent(req_id, klines, stream, pane, window_id),
             ),
@@ -1476,9 +1476,9 @@ fn klines_fetch_all_task(
                     );
                     tasks.push(fetch_klines);
                 }
-                Exchange::BybitLinear | Exchange::BybitSpot => {
+                Exchange::ChinaFutures => {
                     let fetch_klines = Task::perform(
-                        bybit::fetch_klines(ticker, timeframe, None)
+                        china_futures::fetch_klines(ticker, timeframe, None)
                             .map_err(|err| format!("{err}")),
                         move |klines| {
                             Message::DistributeFetchedKlines(

+ 1 - 1
src/screen/dashboard/pane.rs

@@ -355,7 +355,7 @@ impl PaneState {
                 row![
                     match exchange {
                         Exchange::BinanceFutures | Exchange::BinanceSpot => get_icon_text(Icon::BinanceLogo, 14),
-                        Exchange::BybitLinear | Exchange::BybitSpot => get_icon_text(Icon::BybitLogo, 14),
+                        Exchange::ChinaFutures => get_icon_text(Icon::Link, 14),
                     },
                     text({
                         if market == MarketType::LinearPerps {

+ 5 - 5
src/tickers_table.rs

@@ -213,7 +213,7 @@ impl TickersTable {
 
     fn matches_exchange(ex: &Exchange, tab: &TickerTab) -> bool {
         match tab {
-            TickerTab::Bybit => matches!(ex, Exchange::BybitLinear | Exchange::BybitSpot),
+            TickerTab::Bybit => matches!(ex, Exchange::ChinaFutures),
             TickerTab::Binance => matches!(ex, Exchange::BinanceFutures | Exchange::BinanceSpot),
             _ => false,
         }
@@ -295,7 +295,7 @@ impl TickersTable {
 
     pub fn view(&self, bounds: Size) -> Element<'_, Message> {
         let all_button = create_tab_button(text("ALL"), &self.selected_tab, TickerTab::All);
-        let bybit_button = create_tab_button(text("Bybit"), &self.selected_tab, TickerTab::Bybit);
+        let china_futures_button = create_tab_button(text("ChinaF"), &self.selected_tab, TickerTab::Bybit);
         let binance_button =
             create_tab_button(text("Binance"), &self.selected_tab, TickerTab::Binance);
         let favorites_button = create_tab_button(
@@ -425,7 +425,7 @@ impl TickersTable {
                 Space::new(Length::FillPortion(1), Length::Shrink),
                 all_button,
                 Space::new(Length::FillPortion(1), Length::Shrink),
-                bybit_button,
+                china_futures_button,
                 Space::new(Length::FillPortion(1), Length::Shrink),
                 binance_button,
             ]
@@ -533,7 +533,7 @@ fn create_ticker_card<'a>(
             row![
                 row![
                     match exchange {
-                        Exchange::BybitLinear | Exchange::BybitSpot => get_icon_text(Icon::BybitLogo, 12),
+                        Exchange::ChinaFutures => get_icon_text(Icon::Link, 12),
                         Exchange::BinanceFutures | Exchange::BinanceSpot => get_icon_text(Icon::BinanceLogo, 12),
                     },
                     text(&display_data.display_ticker),
@@ -584,7 +584,7 @@ fn create_expanded_ticker_card<'a>(
         .spacing(2),
         row![
             match exchange {
-                Exchange::BybitLinear | Exchange::BybitSpot => get_icon_text(Icon::BybitLogo, 12),
+                Exchange::ChinaFutures => get_icon_text(Icon::Link, 12),
                 Exchange::BinanceFutures | Exchange::BinanceSpot => get_icon_text(Icon::BinanceLogo, 12),
             },
             text(ticker_str + {