403f8cb17236adea0b45090610a57e5986096398
[akkoma] / lib / pleroma / web / activity_pub / views / object_view.ex
1 defmodule Pleroma.Web.ActivityPub.ObjectView do
2 use Pleroma.Web, :view
3
4 def render("object.json", %{object: object}) do
5 base = %{
6 "@context" => [
7 "https://www.w3.org/ns/activitystreams",
8 "https://w3id.org/security/v1",
9 %{
10 "manuallyApprovesFollowers" => "as:manuallyApprovesFollowers",
11 "sensitive" => "as:sensitive",
12 "Hashtag" => "as:Hashtag",
13 "ostatus" => "http://ostatus.org#",
14 "atomUri" => "ostatus:atomUri",
15 "inReplyToAtomUri" => "ostatus:inReplyToAtomUri",
16 "conversation" => "ostatus:conversation",
17 "toot" => "http://joinmastodon.org/ns#",
18 "Emoji" => "toot:Emoji"
19 }
20 ]
21 }
22
23 additional = Map.take(object.data, ["id", "to", "cc", "actor", "content", "summary", "type"])
24 Map.merge(base, additional)
25 end
26 end