diff options
Diffstat (limited to 'src/model/dates.rs')
-rw-r--r-- | src/model/dates.rs | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/src/model/dates.rs b/src/model/dates.rs deleted file mode 100644 index 192f986..0000000 --- a/src/model/dates.rs +++ /dev/null @@ -1,69 +0,0 @@ -use super::*; - -/// Type that represents the vcard `anniversary` and `birthday` properties. -#[derive(Clone, Debug, PartialEq)] -pub struct Dates { - pub anniversary: String, - pub birthday: String, -} - -#[derive(Clone, PartialEq)] -pub enum DatesMsg { - UpdateAnniversary(String), - UpdateBirthday(String), - - Generate, -} - -impl VCardPropertyInputObject<DatesMsg> for Dates { - fn new() -> Self { - Self { - anniversary: String::new(), - birthday: String::new(), - } - } - fn get_title(&self) -> std::string::String { - "Dates".to_string() - } - fn get_input_fields( - &self, - link: &yew::html::Scope<PropertyGroupInputComponent<Self, DatesMsg>>, - ) -> std::vec::Vec<VCardPropertyInputField> { - let typ = String::from("date"); - vec![ - VCardPropertyInputField::Text { - label: "Anniversary".to_string(), - id: Some("anniversary".to_string()), - placeholder: None, - oninput: link.callback(|e: InputData| DatesMsg::UpdateAnniversary(e.value)), - value: self.anniversary.clone(), - typ: typ.clone(), - }, - VCardPropertyInputField::Text { - label: "Birthday".to_string(), - id: Some("birthday".to_string()), - placeholder: None, - oninput: link.callback(|e: InputData| DatesMsg::UpdateBirthday(e.value)), - value: self.birthday.clone(), - typ, - }, - ] - } - fn update( - &mut self, - props: InputProps<Self, DatesMsg>, - msg: <PropertyGroupInputComponent<Self, DatesMsg> as yew::Component>::Message, - ) -> bool { - match msg { - DatesMsg::UpdateAnniversary(a) => self.anniversary = a, - DatesMsg::UpdateBirthday(b) => self.birthday = b, - DatesMsg::Generate => { - props.generated.emit(self.clone()); - } - }; - true - } - fn is_empty(&self) -> bool { - self.anniversary.is_empty() && self.birthday.is_empty() - } -} |