|
|
|
|
@ -1,27 +1,29 @@
|
|
|
|
|
use std::fs;
|
|
|
|
|
use serde_json::Value;
|
|
|
|
|
//use std::io::Write;
|
|
|
|
|
|
|
|
|
|
fn main() -> std::io::Result<()> {
|
|
|
|
|
let json_string = fs::read_to_string("boards/coding.json")?;
|
|
|
|
|
let output_dir = "output";
|
|
|
|
|
fs::create_dir(&output_dir)?;
|
|
|
|
|
fs::create_dir(output_dir)?;
|
|
|
|
|
|
|
|
|
|
let json_data: Value = serde_json::from_str(&json_string).unwrap();
|
|
|
|
|
|
|
|
|
|
let board_dir = format!("{}/{}", &output_dir, &json_data["name"]);
|
|
|
|
|
let board_dir = format!("{}/{}", output_dir, json_data["name"].as_str().unwrap());
|
|
|
|
|
fs::create_dir(&board_dir)?;
|
|
|
|
|
|
|
|
|
|
if let Value::Array(lists) = &json_data["lists"]{
|
|
|
|
|
if let Value::Array(cards) = &json_data["cards"]{
|
|
|
|
|
for list in lists {
|
|
|
|
|
let list_dir = format!("{}/{}", &board_dir, list["name"]);
|
|
|
|
|
let list_dir = format!("{}/{}", board_dir, list["name"].as_str().unwrap());
|
|
|
|
|
fs::create_dir(&list_dir)?;
|
|
|
|
|
for card in cards {
|
|
|
|
|
if card["idList"] == list["id"]{
|
|
|
|
|
println!("{}: {}", list["name"], card["name"]);
|
|
|
|
|
let file_path = format!("{}/{}/{}.md", &board_dir, &list_dir, &card["name"]);
|
|
|
|
|
let mut _file = fs::File::create(&file_path);
|
|
|
|
|
//file.write_all(b"#" + card["name"].as_str().unwrap());
|
|
|
|
|
let file_path = format!("{}/{}.md", list_dir, card["name"].as_str().unwrap());
|
|
|
|
|
println!("{}", file_path);
|
|
|
|
|
//let mut _file = fs::File::create(&file_path)?;
|
|
|
|
|
//let header_text = format!("# {}", card["name"]);
|
|
|
|
|
//file.write_all(header_text.as_bytes())?;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|