diff --git a/crates/caldav/src/resources/calendar.rs b/crates/caldav/src/resources/calendar.rs index c5eac3e..df57437 100644 --- a/crates/caldav/src/resources/calendar.rs +++ b/crates/caldav/src/resources/calendar.rs @@ -10,7 +10,7 @@ use rustical_dav::{ use rustical_store::calendar::{Calendar, CalendarStore}; use serde::Serialize; use std::sync::Arc; -use strum::{EnumProperty, EnumString, IntoStaticStr, VariantNames}; +use strum::{EnumString, IntoStaticStr, VariantNames}; use tokio::sync::RwLock; pub struct CalendarResource { @@ -117,20 +117,16 @@ impl Default for UserPrivilegeSet { } } -#[derive(EnumString, Debug, VariantNames, IntoStaticStr, EnumProperty, Clone)] +#[derive(EnumString, Debug, VariantNames, IntoStaticStr, Clone)] #[strum(serialize_all = "kebab-case")] pub enum CalendarProp { Resourcetype, CurrentUserPrincipal, Owner, Displayname, - // #[strum(props(tagname = "IC:calendar-color"))] CalendarColor, - // #[strum(props(tagname = "C:calendar-description"))] CalendarDescription, - // #[strum(props(tagname = "C:supported-calendar-component-set"))] SupportedCalendarComponentSet, - // #[strum(props(tagname = "C:supported-calendar-data"))] SupportedCalendarData, Getcontenttype, CurrentUserPrivilegeSet, diff --git a/crates/caldav/src/resources/event.rs b/crates/caldav/src/resources/event.rs index 70f73bc..34556c3 100644 --- a/crates/caldav/src/resources/event.rs +++ b/crates/caldav/src/resources/event.rs @@ -8,7 +8,7 @@ use rustical_store::calendar::CalendarStore; use rustical_store::event::Event; use serde::Serialize; use std::sync::Arc; -use strum::{EnumProperty, EnumString, IntoStaticStr, VariantNames}; +use strum::{EnumString, IntoStaticStr, VariantNames}; use tokio::sync::RwLock; pub struct EventResource { @@ -17,11 +17,10 @@ pub struct EventResource { pub event: Event, } -#[derive(EnumString, Debug, VariantNames, IntoStaticStr, EnumProperty, Clone)] +#[derive(EnumString, Debug, VariantNames, IntoStaticStr, Clone)] #[strum(serialize_all = "kebab-case")] pub enum EventProp { Getetag, - #[strum(props(tagname = "C:calendar-data"))] CalendarData, Getcontenttype, } diff --git a/crates/caldav/src/resources/principal.rs b/crates/caldav/src/resources/principal.rs index 31a97bb..3a202aa 100644 --- a/crates/caldav/src/resources/principal.rs +++ b/crates/caldav/src/resources/principal.rs @@ -7,7 +7,7 @@ use rustical_dav::{resource::Resource, xml_snippets::HrefElement}; use rustical_store::calendar::CalendarStore; use serde::Serialize; use std::sync::Arc; -use strum::{EnumProperty, EnumString, IntoStaticStr, VariantNames}; +use strum::{EnumString, IntoStaticStr, VariantNames}; use tokio::sync::RwLock; use super::calendar::CalendarResource; @@ -39,16 +39,14 @@ pub enum PrincipalPropResponse { CalendarUserAddressSet(HrefElement), } -#[derive(EnumString, Debug, VariantNames, IntoStaticStr, EnumProperty, Clone)] +#[derive(EnumString, Debug, VariantNames, IntoStaticStr, Clone)] #[strum(serialize_all = "kebab-case")] pub enum PrincipalProp { Resourcetype, CurrentUserPrincipal, #[strum(serialize = "principal-URL")] PrincipalUrl, - #[strum(props(tagname = "C:calendar-home-set"))] CalendarHomeSet, - #[strum(props(tagname = "C:calendar-user-address-set"))] CalendarUserAddressSet, } diff --git a/crates/caldav/src/resources/root.rs b/crates/caldav/src/resources/root.rs index 35a3752..83ad55d 100644 --- a/crates/caldav/src/resources/root.rs +++ b/crates/caldav/src/resources/root.rs @@ -5,7 +5,7 @@ use rustical_auth::AuthInfo; use rustical_dav::error::Error; use rustical_dav::{resource::Resource, xml_snippets::HrefElement}; use serde::Serialize; -use strum::{EnumProperty, EnumString, IntoStaticStr, VariantNames}; +use strum::{EnumString, IntoStaticStr, VariantNames}; pub struct RootResource { prefix: String, @@ -13,7 +13,7 @@ pub struct RootResource { path: String, } -#[derive(EnumString, Debug, VariantNames, EnumProperty, IntoStaticStr, Clone)] +#[derive(EnumString, Debug, VariantNames, IntoStaticStr, Clone)] #[strum(serialize_all = "kebab-case")] pub enum RootProp { Resourcetype, diff --git a/crates/dav/src/resource.rs b/crates/dav/src/resource.rs index c9ac62a..cf80c56 100644 --- a/crates/dav/src/resource.rs +++ b/crates/dav/src/resource.rs @@ -6,7 +6,7 @@ use itertools::Itertools; use rustical_auth::AuthInfo; use serde::Serialize; use std::str::FromStr; -use strum::{EnumProperty, VariantNames}; +use strum::VariantNames; // A resource is identified by a URI and has properties // A resource can also be a collection @@ -16,7 +16,7 @@ use strum::{EnumProperty, VariantNames}; pub trait Resource: Sized { type MemberType: Resource; type UriComponents: Sized; // defines how the resource URI maps to parameters, i.e. /{principal}/{calendar} -> (String, String) - type PropType: FromStr + VariantNames + Into<&'static str> + EnumProperty + Clone; + type PropType: FromStr + VariantNames + Into<&'static str> + Clone; type PropResponse: Serialize; async fn acquire_from_request(