3 object::{kind::ImageType, Tombstone, TombstoneExt},
6 use chrono::NaiveDateTime;
7 use lemmy_apub_lib::values::MediaTypeMarkdown;
8 use lemmy_utils::{utils::convert_datetime, LemmyError};
15 pub mod private_message;
17 #[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
18 #[serde(rename_all = "camelCase")]
21 media_type: MediaTypeMarkdown,
24 #[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
25 #[serde(rename_all = "camelCase")]
26 pub struct ImageObject {
27 #[serde(rename = "type")]
32 /// Updated is actually the deletion time
33 fn create_tombstone<T>(
36 updated: Option<NaiveDateTime>,
38 ) -> Result<Tombstone, LemmyError>
43 if let Some(updated) = updated {
44 let mut tombstone = Tombstone::new();
45 tombstone.set_id(object_id);
46 tombstone.set_former_type(former_type.to_string());
47 tombstone.set_deleted(convert_datetime(updated));
50 Err(anyhow!("Cant convert to tombstone because updated time was None.").into())
53 Err(anyhow!("Cant convert object to tombstone if it wasnt deleted").into())