]> Untitled Git - lemmy.git/blobdiff - crates/apub/src/protocol/activities/voting/vote.rs
Diesel 2.0.0 upgrade (#2452)
[lemmy.git] / crates / apub / src / protocol / activities / voting / vote.rs
index 2f07aea858d2fc0c9f7eeb30f3956c62197db6fe..8541b1369cec2115b9188b792d16c1005486a4d9 100644 (file)
@@ -3,8 +3,8 @@ use crate::{
   objects::person::ApubPerson,
   protocol::Unparsed,
 };
-use lemmy_apub_lib::object_id::ObjectId;
-use lemmy_utils::LemmyError;
+use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
+use lemmy_utils::error::LemmyError;
 use serde::{Deserialize, Serialize};
 use std::convert::TryFrom;
 use strum_macros::Display;
@@ -14,19 +14,18 @@ use url::Url;
 #[serde(rename_all = "camelCase")]
 pub struct Vote {
   pub(crate) actor: ObjectId<ApubPerson>,
-  #[serde(deserialize_with = "crate::deserialize_one_or_many")]
-  pub(crate) to: Vec<Url>,
   pub(crate) object: ObjectId<PostOrComment>,
-  #[serde(deserialize_with = "crate::deserialize_one_or_many")]
+  #[serde(deserialize_with = "deserialize_one_or_many", default)]
   pub(crate) cc: Vec<Url>,
   #[serde(rename = "type")]
   pub(crate) kind: VoteType,
   pub(crate) id: Url,
+
   #[serde(flatten)]
   pub(crate) unparsed: Unparsed,
 }
 
-#[derive(Clone, Debug, Display, Deserialize, Serialize)]
+#[derive(Clone, Debug, Display, Deserialize, Serialize, PartialEq, Eq)]
 pub enum VoteType {
   Like,
   Dislike,