use crate::ast::Node;
pub use crate::ast::TaskListStatus;
pub fn checked_task(content: Vec<Node>) -> Node {
Node::task_list_item(TaskListStatus::Checked, content)
}
pub fn unchecked_task(content: Vec<Node>) -> Node {
Node::task_list_item(TaskListStatus::Unchecked, content)
}
pub fn task_list(items: Vec<(TaskListStatus, Vec<Node>)>) -> Node {
let list_items = items
.into_iter()
.map(|(status, content)| match status {
TaskListStatus::Checked => checked_task(content),
TaskListStatus::Unchecked => unchecked_task(content),
})
.collect::<Vec<_>>();
Node::Document(list_items)
}