AppFlowy/frontend/rust-lib/flowy-document2/src/reminder.rs

24 lines
656 B
Rust
Raw Normal View History

use collab_entity::reminder::Reminder;
2023-10-02 07:12:24 +00:00
use serde::{Deserialize, Serialize};
use serde_json::json;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum DocumentReminderAction {
Add { reminder: DocumentReminder },
Remove { reminder_id: String },
Update { reminder: DocumentReminder },
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DocumentReminder {
document_id: String, // defines the necessary fields for a reminder
}
impl TryFrom<Reminder> for DocumentReminder {
type Error = serde_json::Error;
fn try_from(value: Reminder) -> Result<Self, Self::Error> {
serde_json::from_value(json!(value.meta.into_inner()))
}
}