use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize)]
pub enum Allow {
#[serde(rename = "all")]
All,
#[serde(rename = "ascii")]
Ascii,
#[serde(rename = "email")]
Email,
#[serde(rename = "numbers")]
Numbers,
#[serde(rename = "tel")]
Tel,
}
impl Default for Allow {
fn default() -> Self {
Self::All
}
}
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize)]
pub enum AutoCapitalize {
#[serde(rename = "names")]
Names,
#[serde(rename = "sentences")]
Sentences,
}
impl Default for AutoCapitalize {
fn default() -> Self {
Self::Sentences
}
}
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize)]
pub enum HAlignment {
#[serde(rename = "start")]
Start,
#[serde(rename = "center")]
Center,
#[serde(rename = "end")]
End,
}
impl HAlignment {
#[must_use]
pub fn is_start(&self) -> bool {
self == &Self::Start
}
}
impl Default for HAlignment {
fn default() -> Self {
Self::Center
}
}
#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize)]
pub enum Disposition {
#[serde(rename = "cover")]
Cover,
#[serde(rename = "fit")]
Fit,
#[serde(rename = "stretch")]
Stretch,
}