use crate::LinkView;
use super::MermaidBuilder;
#[derive(Debug, Default, Clone, Copy, PartialEq, Eq, Hash)]
#[non_exhaustive]
pub enum MermaidLayout {
Dagre,
#[default]
Elk,
}
impl MermaidLayout {
pub fn requires_config(&self) -> bool {
match self {
MermaidLayout::Dagre => false,
MermaidLayout::Elk => true,
}
}
pub(super) fn emit_config(&self, builder: &mut MermaidBuilder<'_, impl LinkView>) {
match self {
MermaidLayout::Dagre => {}
MermaidLayout::Elk => {
builder.push_line("layout: elk");
}
}
}
}