v0.1.0-pre.055
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
// file: kb-app-demo-desktop/src/app_state.rs
|
||||
// version: 8
|
||||
// version: 9
|
||||
|
||||
//! Shared Tauri application state and startup initialization.
|
||||
|
||||
@@ -28,9 +28,12 @@ pub(crate) struct AppState {
|
||||
impl crate::AppState {
|
||||
/// Initializes configuration, logging and shared runtime state.
|
||||
pub(crate) fn initialize() -> kb_core::Result<crate::AppState> {
|
||||
load_workspace_dotenv();
|
||||
let config_path = resolve_config_path();
|
||||
let app_config = match kb_config::read_config_json_file(&config_path) {
|
||||
let workspace_root = crate::workspace_root_dir();
|
||||
let app_config = match kb_config::read_config_json_file_with_environment(
|
||||
&config_path,
|
||||
&workspace_root,
|
||||
) {
|
||||
std::result::Result::Ok(config) => config,
|
||||
std::result::Result::Err(error) => return std::result::Result::Err(error),
|
||||
};
|
||||
@@ -180,23 +183,6 @@ impl crate::AppState {
|
||||
}
|
||||
}
|
||||
|
||||
fn load_workspace_dotenv() {
|
||||
let workspace_path = crate::workspace_root_dir().join(".env");
|
||||
load_dotenv_path(&workspace_path);
|
||||
let desktop_path = crate::workspace_root_dir().join("kb-app-demo-desktop/.env");
|
||||
load_dotenv_path(&desktop_path);
|
||||
}
|
||||
|
||||
fn load_dotenv_path(path: &std::path::Path) {
|
||||
let result = dotenvy::from_path(path);
|
||||
if let std::result::Result::Err(error) = result {
|
||||
if matches!(error, dotenvy::Error::Io(ref io_error) if io_error.kind() == std::io::ErrorKind::NotFound) {
|
||||
return;
|
||||
}
|
||||
eprintln!("cannot load {}: {error}", path.display());
|
||||
}
|
||||
}
|
||||
|
||||
fn convert_logging_config(config: &kb_config::LoggingConfig) -> kb_logging::LoggingConfig {
|
||||
let mut targets = std::vec::Vec::<kb_logging::LogTargetConfig>::new();
|
||||
for target in &config.targets {
|
||||
|
||||
@@ -65,8 +65,8 @@ pub(crate) fn open_sql_demo_window(
|
||||
tauri::WebviewUrl::App(html_path.into()),
|
||||
)
|
||||
.title(title)
|
||||
.inner_size(1220.0, 780.0)
|
||||
.min_inner_size(920.0, 560.0)
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true);
|
||||
let build_result = builder.build();
|
||||
|
||||
@@ -243,9 +243,9 @@ fn open_demo_core_extraction_window(
|
||||
"demo_core_extraction",
|
||||
tauri::WebviewUrl::App("demo_core_extraction.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - Extraction canonical vers core")
|
||||
.inner_size(1280.0, 860.0)
|
||||
.min_inner_size(960.0, 620.0)
|
||||
.title("Extraction canonical vers core")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
@@ -354,9 +354,9 @@ fn open_demo_decode_replay_window(
|
||||
"demo_decode_replay",
|
||||
tauri::WebviewUrl::App("demo_decode_replay.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - Décodage et matérialisation")
|
||||
.inner_size(1320.0, 900.0)
|
||||
.min_inner_size(980.0, 660.0)
|
||||
.title("Décodage et matérialisation")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
@@ -669,9 +669,9 @@ fn open_demo_config_window(
|
||||
"demo_config",
|
||||
tauri::WebviewUrl::App("demo_config.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - Configuration")
|
||||
.inner_size(1280.0, 820.0)
|
||||
.min_inner_size(960.0, 640.0);
|
||||
.title("Configuration")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0);
|
||||
let window = match builder.build() {
|
||||
std::result::Result::Ok(value) => value,
|
||||
std::result::Result::Err(error) => {
|
||||
@@ -734,9 +734,9 @@ fn open_demo_backfill_window(
|
||||
"demo_backfill",
|
||||
tauri::WebviewUrl::App("demo_backfill.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - Backfill HTTP")
|
||||
.inner_size(1280.0, 860.0)
|
||||
.min_inner_size(960.0, 620.0)
|
||||
.title("Backfill HTTP")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
@@ -849,9 +849,9 @@ fn open_demo_http_window(
|
||||
"demo_http",
|
||||
tauri::WebviewUrl::App("demo_http.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - HTTP JSON-RPC")
|
||||
.inner_size(1280.0, 860.0)
|
||||
.min_inner_size(960.0, 620.0)
|
||||
.title("HTTP JSON-RPC")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
@@ -912,9 +912,9 @@ fn open_demo_ws_window(
|
||||
"demo_ws",
|
||||
tauri::WebviewUrl::App("demo_ws.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - WebSocket standard")
|
||||
.inner_size(1200.0, 760.0)
|
||||
.min_inner_size(920.0, 560.0)
|
||||
.title("WebSocket standard")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
@@ -1011,7 +1011,7 @@ fn open_demo_sql_diag_window(
|
||||
app_handle,
|
||||
"demo_sql_diag",
|
||||
"demo_sql_diag.html",
|
||||
"Khadhroony Bot3 - SQL diagnostics",
|
||||
"SQL diagnostics",
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1061,7 +1061,7 @@ fn open_demo_sql_pg_raw_window(
|
||||
app_handle,
|
||||
"demo_sql_pg_raw",
|
||||
"demo_sql_pg_raw.html",
|
||||
"Khadhroony Bot3 - PostgreSQL canonical acquisition",
|
||||
"PostgreSQL canonical acquisition",
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1098,7 +1098,7 @@ fn open_demo_sql_pg_core_window(
|
||||
app_handle,
|
||||
"demo_sql_pg_core",
|
||||
"demo_sql_pg_core.html",
|
||||
"Khadhroony Bot3 - PostgreSQL core store",
|
||||
"PostgreSQL core store",
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1135,7 +1135,7 @@ fn open_demo_sql_replay_candidates_window(
|
||||
app_handle,
|
||||
"demo_sql_replay_candidates",
|
||||
"demo_sql_replay_candidates.html",
|
||||
"Khadhroony Bot3 - SQL replay candidates",
|
||||
"SQL replay candidates",
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1358,9 +1358,9 @@ fn open_demo_execution_solana_core_window(
|
||||
"demo_execution_solana_core",
|
||||
tauri::WebviewUrl::App("demo_execution_solana_core.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - Exécution Solana Devnet")
|
||||
.inner_size(1360.0, 920.0)
|
||||
.min_inner_size(1040.0, 700.0)
|
||||
.title("Exécution Solana Devnet")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
@@ -1650,9 +1650,9 @@ fn open_demo_execution_spl_window(
|
||||
"demo_execution_spl",
|
||||
tauri::WebviewUrl::App("demo_execution_spl.html".into()),
|
||||
)
|
||||
.title("Khadhroony Bot3 - Exécution SPL Devnet")
|
||||
.title("Exécution SPL Devnet")
|
||||
.inner_size(1500.0, 960.0)
|
||||
.min_inner_size(1120.0, 720.0)
|
||||
.min_inner_size(1024.0, 768.0)
|
||||
.resizable(true)
|
||||
.visible(true)
|
||||
.build();
|
||||
|
||||
Reference in New Issue
Block a user