#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
pub enum Elevation {
Flat,
Shadow2,
Shadow4,
Shadow8,
Shadow16,
Shadow28,
Shadow64,
}
impl Elevation {
pub const fn as_class(self) -> &'static str {
match self {
Self::Flat => "orbital-token-elev-flat",
Self::Shadow2 => "orbital-token-elev-shadow2",
Self::Shadow4 => "orbital-token-elev-shadow4",
Self::Shadow8 => "orbital-token-elev-shadow8",
Self::Shadow16 => "orbital-token-elev-shadow16",
Self::Shadow28 => "orbital-token-elev-shadow28",
Self::Shadow64 => "orbital-token-elev-shadow64",
}
}
pub const fn as_token(self) -> &'static str {
match self {
Self::Flat => "none",
Self::Shadow2 => "var(--orb-elev-raised-xs)",
Self::Shadow4 => "var(--orb-elev-raised-sm)",
Self::Shadow8 => "var(--orb-elev-raised-md)",
Self::Shadow16 => "var(--orb-elev-floating)",
Self::Shadow28 => "var(--orb-elev-overlay)",
Self::Shadow64 => "var(--orb-elev-modal)",
}
}
}