feat(export): move csv and xlsx generation to Rust backend

This commit is contained in:
t8y2 committed 2026-05-22 14:56:40 +08:00
1 parent 0655d309d8
commit c736fe372a
14 files changed
+591 -53

No files matched your search

+17
View File
@@ -0,0 +1,17 @@
use dbx_core::csv_export::format_csv;
use serde::Deserialize;
use serde_json::Value;
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct QueryResultCsvExportRequest {
pub file_path: String,
pub columns: Vec<String>,
pub rows: Vec<Vec<Value>>,
}
#[tauri::command]
pub fn export_query_result_csv(request: QueryResultCsvExportRequest) -> Result<(), String> {
let csv = format_csv(&request.columns, &request.rows);
std::fs::write(&request.file_path, format!("\u{FEFF}{csv}")).map_err(|err| err.to_string())
}