- true <- ActivityPub.is_public?(activity),
- page_url <- status_first_external_url(activity.data["object"]["content"]),
- {:ok, rich_media} <- Pleroma.Web.RichMedia.Parser.parse(page_url) do
- rich_media
- |> Map.take([:image, :title, :url, :description])
- |> Map.put(:type, "link")
+ true <- ActivityPub.is_public?(activity) do
+ data =
+ StatusView.render(
+ "card.json",
+ Pleroma.Web.RichMedia.Helpers.fetch_data_for_activity(activity)
+ )
+
+ json(conn, data)