more activities

This commit is contained in:
me 2024-12-17 10:46:59 +02:00
parent bb1819b3a0
commit c476864650

View file

@ -217,12 +217,17 @@ instance ToObject TypeCreate where
, "object" A..= create.object , "object" A..= create.object
] ]
-- type Follow = Object (TypeActivity TypeFollow) type Follow = Object (TypeActivity TypeFollow)
-- data TypeFollow = TypeFollow deriving Show data TypeFollow
-- instance ToObject TypeFollow where = TypeFollow
-- toObject TypeFollow = { object :: Actor
-- [ "type" A..= ("Follow" :: String) }
-- ] deriving Show
instance ToObject TypeFollow where
toObject follow =
[ "type" A..= ("Follow" :: String)
, "object" A..= follow.object
]
-- --
type Like = Object (TypeActivity TypeLike) type Like = Object (TypeActivity TypeLike)
@ -236,17 +241,50 @@ instance ToObject TypeLike where
data AnyActivity data AnyActivity
= -- ActivityAnnounce Announce = -- ActivityAnnounce Announce
ActivityCreate Create ActivityCreate Create
-- | ActivityFollow Follow | ActivityFollow Follow
-- | ActivityLike Like -- | ActivityLike Like
| ActivityAccept Accept
| ActivityReject Reject
deriving (Show) deriving (Show)
instance A.ToJSON AnyActivity where instance A.ToJSON AnyActivity where
toJSON = \case toJSON = \case
-- ActivityAnnounce obj -> A.toJSON obj -- ActivityAnnounce obj -> A.toJSON obj
ActivityCreate obj -> A.toJSON obj ActivityCreate obj -> A.toJSON obj
ActivityFollow obj -> A.toJSON obj
-- ActivityFollow obj -> A.toJSON obj
-- ActivityLike obj -> A.toJSON obj -- ActivityLike obj -> A.toJSON obj
ActivityAccept obj -> A.toJSON obj
ActivityReject obj -> A.toJSON obj
-- * Accept Reject Add Remove
type Accept = Object (TypeActivity TypeAccept)
data TypeAccept
= TypeAccept
{ object :: AnyActivity
}
deriving Show
instance ToObject TypeAccept where
toObject obj =
[ "type" A..= ("Accept" :: String)
, "object" A..= obj.object
]
type Reject = Object (TypeActivity TypeReject)
data TypeReject
= TypeReject
{ object :: AnyActivity
}
deriving Show
instance ToObject TypeReject where
toObject obj =
[ "type" A..= ("Reject" :: String)
, "object" A..= obj.object
]
-- * Actors -- * Actors