From 85481c23c1145c5e85042cb0ff284f148d6f27f9 Mon Sep 17 00:00:00 2001 From: Sara Vieira Date: Thu, 22 Dec 2022 17:38:57 +0000 Subject: [PATCH] type aria sort --- macros/src/config.rs | 2 +- typed-html/src/types/mod.rs | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/macros/src/config.rs b/macros/src/config.rs index 068e498..c01ca9b 100644 --- a/macros/src/config.rs +++ b/macros/src/config.rs @@ -53,7 +53,7 @@ pub fn global_attrs(span: Span) -> StringyMap { insert("aria_required", "crate::types::Bool"); insert("aria_selected", "crate::types::Bool"); insert("aria_placeholder", "String"); - insert("aria_sort", "String"); // TODO only supports some values + insert("aria_sort", "crate::types::AriaSort"); // TODO only supports some values insert("aria_valuemax", "isize"); insert("aria_valuemin", "isize"); insert("aria_valuenow", "isize"); diff --git a/typed-html/src/types/mod.rs b/typed-html/src/types/mod.rs index f2d81bc..1652537 100644 --- a/typed-html/src/types/mod.rs +++ b/typed-html/src/types/mod.rs @@ -537,3 +537,15 @@ pub enum Wrap { #[strum(to_string = "off")] Off, } + +#[derive(EnumString, Display, PartialEq, Eq, PartialOrd, Ord, AsRefStr, IntoStaticStr)] +pub enum AriaSort { + #[strum(to_string = "ascending")] + Ascending, + #[strum(to_string = "descending")] + Descending, + #[strum(to_string = "none")] + None, + #[strum(to_string = "other")] + Other, +}