use acorn::util::MimeType;
use clap::ValueEnum;
use derive_more::Display;
#[derive(Clone, Debug, PartialEq, PartialOrd, ValueEnum)]
pub enum CheckCategory {
Conventions,
Prose,
Readability,
Schema,
}
#[derive(Clone, Copy, Debug, Default, PartialEq, ValueEnum)]
pub enum Diagnostic {
#[default]
All,
System,
Memory,
Network,
Gpu,
Software,
}
#[derive(Clone, Debug, Default, Display, ValueEnum)]
pub enum FileFormat {
#[default]
#[display("PDF")]
Pdf,
#[display("BagIt")]
Bag,
#[display("JSON")]
Json,
#[display("MD")]
Markdown,
#[display("PPTX")]
Powerpoint,
#[display("YAML")]
Yaml,
}
#[derive(Clone, Debug, Default, Display, ValueEnum)]
pub enum ReadabilityTypeArgument {
#[default]
#[display("fkgl")]
Fkgl,
#[display("ari")]
Ari,
#[display("cli")]
Cli,
#[display("fres")]
Fres,
#[display("gfi")]
Gfi,
#[display("lix")]
Lix,
#[display("smog")]
Smog,
}
#[derive(Clone, Debug, Default, Display, ValueEnum)]
pub enum Size {
#[default]
#[display("widescreen")]
Widescreen,
#[display("standard")]
Standard,
}
#[derive(Clone, Copy, Debug, Default, Display, ValueEnum)]
pub enum Target {
#[default]
#[display("fact-sheet")]
FactSheet,
#[display("highlight")]
Highlight,
#[display("poster")]
Poster,
}
impl From<FileFormat> for MimeType {
fn from(format: FileFormat) -> Self {
match format {
| FileFormat::Pdf => MimeType::Pdf,
| FileFormat::Bag => MimeType::Zip,
| FileFormat::Json => MimeType::Json,
| FileFormat::Markdown => MimeType::Markdown,
| FileFormat::Powerpoint => MimeType::Powerpoint,
| FileFormat::Yaml => MimeType::Yaml,
}
}
}