146 lines
5.5 KiB
Rust
146 lines
5.5 KiB
Rust
// file: kb_lib/src/lib.rs
|
|
|
|
//! Core library of the `khadhroony-bobobot` workspace.
|
|
//!
|
|
//! This crate contains the reusable backend logic shared by the desktop
|
|
//! application and future clients.
|
|
|
|
#![deny(unreachable_pub)]
|
|
#![warn(missing_docs)]
|
|
|
|
mod config;
|
|
mod constants;
|
|
mod error;
|
|
mod http_client;
|
|
mod rpc_ws;
|
|
mod tracing;
|
|
mod types;
|
|
mod ws_client;
|
|
mod rpc_ws_solana;
|
|
mod http_pool;
|
|
mod db;
|
|
|
|
pub use crate::config::KbAppConfig;
|
|
pub use crate::config::KbConfig;
|
|
pub use crate::config::KbDataConfig;
|
|
pub use crate::config::KbHttpEndpointConfig;
|
|
pub use crate::config::KbLoggingConfig;
|
|
pub use crate::config::KbSolanaConfig;
|
|
pub use crate::config::KbWsEndpointConfig;
|
|
pub use crate::config::KbDatabaseConfig;
|
|
pub use crate::config::KbSqliteDatabaseConfig;
|
|
pub use crate::constants::*;
|
|
pub use crate::error::KbError;
|
|
pub use crate::rpc_ws::KbJsonRpcWsErrorObject;
|
|
pub use crate::rpc_ws::KbJsonRpcWsErrorResponse;
|
|
pub use crate::rpc_ws::KbJsonRpcWsIncomingMessage;
|
|
pub use crate::rpc_ws::KbJsonRpcWsNotification;
|
|
pub use crate::rpc_ws::KbJsonRpcWsNotificationParams;
|
|
pub use crate::rpc_ws::KbJsonRpcWsRequest;
|
|
pub use crate::rpc_ws::KbJsonRpcWsSuccessResponse;
|
|
pub use crate::rpc_ws::kb_is_probable_json_rpc_object_text;
|
|
pub use crate::rpc_ws::parse_kb_json_rpc_ws_incoming_text;
|
|
pub use crate::rpc_ws::parse_kb_json_rpc_ws_incoming_value;
|
|
pub use crate::http_client::HttpClient;
|
|
pub use crate::http_client::KbJsonRpcHttpErrorObject;
|
|
pub use crate::http_client::KbJsonRpcHttpErrorResponse;
|
|
pub use crate::http_client::KbJsonRpcHttpRequest;
|
|
pub use crate::http_client::KbJsonRpcHttpResponse;
|
|
pub use crate::http_client::KbJsonRpcHttpSuccessResponse;
|
|
pub use crate::http_client::KbHttpEndpointStatus;
|
|
pub use crate::http_client::KbHttpMethodClass;
|
|
pub use crate::http_client::parse_kb_json_rpc_http_response_text;
|
|
pub use crate::http_client::parse_kb_json_rpc_http_response_value;
|
|
pub use crate::tracing::KbTracingGuard;
|
|
pub use crate::tracing::init_tracing;
|
|
pub use crate::types::KbConnectionState;
|
|
pub use crate::ws_client::WsClient;
|
|
pub use crate::ws_client::WsEvent;
|
|
pub use crate::ws_client::WsOutgoingMessage;
|
|
pub use crate::ws_client::WsSubscriptionInfo;
|
|
pub use crate::rpc_ws_solana::KbSolanaWsTypedNotification;
|
|
pub use crate::rpc_ws_solana::parse_kb_solana_ws_typed_notification;
|
|
pub use crate::rpc_ws_solana::parse_kb_solana_ws_typed_notification_from_event;
|
|
pub use crate::http_pool::HttpEndpointPool;
|
|
pub use crate::http_pool::KbHttpPoolClientSnapshot;
|
|
pub use crate::db::KbDatabase;
|
|
pub use crate::db::KbDatabaseBackend;
|
|
pub use crate::db::KbDatabaseConnection;
|
|
pub use crate::db::KbDbMetadataDto;
|
|
pub use crate::db::KbDbMetadataEntity;
|
|
pub use crate::db::get_db_metadata;
|
|
pub use crate::db::list_db_metadata;
|
|
pub use crate::db::upsert_db_metadata;
|
|
pub use crate::db::KbDbRuntimeEventDto;
|
|
pub use crate::db::KbDbRuntimeEventEntity;
|
|
pub use crate::db::KbDbRuntimeEventLevel;
|
|
pub use crate::db::KbKnownHttpEndpointDto;
|
|
pub use crate::db::KbKnownHttpEndpointEntity;
|
|
pub use crate::db::KbKnownWsEndpointDto;
|
|
pub use crate::db::KbKnownWsEndpointEntity;
|
|
pub use crate::db::KbObservedTokenDto;
|
|
pub use crate::db::KbObservedTokenEntity;
|
|
pub use crate::db::KbObservedTokenStatus;
|
|
pub use crate::db::KbAnalysisSignalDto;
|
|
pub use crate::db::KbAnalysisSignalEntity;
|
|
pub use crate::db::KbAnalysisSignalSeverity;
|
|
pub use crate::db::KbObservationSourceKind;
|
|
pub use crate::db::KbOnchainObservationDto;
|
|
pub use crate::db::KbOnchainObservationEntity;
|
|
pub use crate::db::KbDexDto;
|
|
pub use crate::db::KbDexEntity;
|
|
pub use crate::db::KbPairDto;
|
|
pub use crate::db::KbPairEntity;
|
|
pub use crate::db::KbPoolDto;
|
|
pub use crate::db::KbPoolEntity;
|
|
pub use crate::db::KbPoolKind;
|
|
pub use crate::db::KbPoolListingDto;
|
|
pub use crate::db::KbPoolListingEntity;
|
|
pub use crate::db::KbPoolStatus;
|
|
pub use crate::db::KbPoolTokenDto;
|
|
pub use crate::db::KbPoolTokenEntity;
|
|
pub use crate::db::KbPoolTokenRole;
|
|
pub use crate::db::KbTokenDto;
|
|
pub use crate::db::KbTokenEntity;
|
|
pub use crate::db::KbLiquidityEventDto;
|
|
pub use crate::db::KbLiquidityEventEntity;
|
|
pub use crate::db::KbLiquidityEventKind;
|
|
pub use crate::db::KbSwapDto;
|
|
pub use crate::db::KbSwapEntity;
|
|
pub use crate::db::KbSwapTradeSide;
|
|
pub use crate::db::KbTokenBurnEventDto;
|
|
pub use crate::db::KbTokenBurnEventEntity;
|
|
pub use crate::db::KbTokenMintEventDto;
|
|
pub use crate::db::KbTokenMintEventEntity;
|
|
pub use crate::db::list_recent_liquidity_events;
|
|
pub use crate::db::list_recent_swaps;
|
|
pub use crate::db::list_recent_token_burn_events;
|
|
pub use crate::db::list_recent_token_mint_events;
|
|
pub use crate::db::upsert_liquidity_event;
|
|
pub use crate::db::upsert_swap;
|
|
pub use crate::db::upsert_token_burn_event;
|
|
pub use crate::db::upsert_token_mint_event;
|
|
pub use crate::db::get_token_by_mint;
|
|
pub use crate::db::list_dexes;
|
|
pub use crate::db::upsert_dex;
|
|
pub use crate::db::upsert_pair;
|
|
pub use crate::db::upsert_pool;
|
|
pub use crate::db::upsert_pool_listing;
|
|
pub use crate::db::upsert_pool_token;
|
|
pub use crate::db::upsert_token;
|
|
pub use crate::db::insert_analysis_signal;
|
|
pub use crate::db::insert_onchain_observation;
|
|
pub use crate::db::list_recent_analysis_signals;
|
|
pub use crate::db::list_recent_onchain_observations;
|
|
pub use crate::db::get_observed_token_by_mint;
|
|
pub use crate::db::list_observed_tokens;
|
|
pub use crate::db::upsert_observed_token;
|
|
pub use crate::db::get_known_http_endpoint;
|
|
pub use crate::db::get_known_ws_endpoint;
|
|
pub use crate::db::insert_db_runtime_event;
|
|
pub use crate::db::list_known_http_endpoints;
|
|
pub use crate::db::list_known_ws_endpoints;
|
|
pub use crate::db::list_recent_db_runtime_events;
|
|
pub use crate::db::upsert_known_http_endpoint;
|
|
pub use crate::db::upsert_known_ws_endpoint;
|