use officemd_core::ir::{DocumentKind, OoxmlDocument, Sheet};
use crate::error::CsvError;
pub fn extract_sheet_names(_content: &[u8]) -> Result<Vec<String>, CsvError> {
Ok(vec!["Sheet1".to_string()])
}
pub fn extract_ir_json(content: &[u8]) -> Result<String, CsvError> {
let doc = extract_ir(content)?;
serde_json::to_string(&doc).map_err(|e| CsvError::Json(e.to_string()))
}
pub fn extract_ir(content: &[u8]) -> Result<OoxmlDocument, CsvError> {
let sheet_names = extract_sheet_names(content)?;
let sheets: Vec<Sheet> = sheet_names
.into_iter()
.map(|name| Sheet {
name,
..Default::default()
})
.collect();
Ok(OoxmlDocument {
kind: DocumentKind::Xlsx,
sheets,
..Default::default()
})
}