forked from AkkomaGang/akkoma
[Pleroma.Web.ActivityPub.Transmogrifier]: fix when attachment contain is just a Map [kroeg]
This commit is contained in:
parent
a4abb124ea
commit
f8a0cb9c0b
1 changed files with 15 additions and 2 deletions
|
@ -139,9 +139,9 @@ def fix_context(object) do
|
||||||
|> Map.put("conversation", context)
|
|> Map.put("conversation", context)
|
||||||
end
|
end
|
||||||
|
|
||||||
def fix_attachments(object) do
|
def fix_attachments(%{"attachment" => attachment} = object) when is_list(attachment) do
|
||||||
attachments =
|
attachments =
|
||||||
(object["attachment"] || [])
|
attachment
|
||||||
|> Enum.map(fn data ->
|
|> Enum.map(fn data ->
|
||||||
url = [%{"type" => "Link", "mediaType" => data["mediaType"], "href" => data["url"]}]
|
url = [%{"type" => "Link", "mediaType" => data["mediaType"], "href" => data["url"]}]
|
||||||
Map.put(data, "url", url)
|
Map.put(data, "url", url)
|
||||||
|
@ -151,6 +151,19 @@ def fix_attachments(object) do
|
||||||
|> Map.put("attachment", attachments)
|
|> Map.put("attachment", attachments)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def fix_attachments(%{"attachment" => attachment} = object) when is_map(attachment) do
|
||||||
|
attachment =
|
||||||
|
Map.put(attachment, "url", [
|
||||||
|
%{"type" => "Link", "mediaType" => attachment["mediaType"], "href" => attachment["url"]}
|
||||||
|
])
|
||||||
|
|
||||||
|
Map.put(object, "attachment", attachment)
|
||||||
|
end
|
||||||
|
|
||||||
|
def fix_attachments(object) do
|
||||||
|
object
|
||||||
|
end
|
||||||
|
|
||||||
def fix_emoji(object) do
|
def fix_emoji(object) do
|
||||||
tags = object["tag"] || []
|
tags = object["tag"] || []
|
||||||
emoji = tags |> Enum.filter(fn data -> data["type"] == "Emoji" and data["icon"] end)
|
emoji = tags |> Enum.filter(fn data -> data["type"] == "Emoji" and data["icon"] end)
|
||||||
|
|
Loading…
Reference in a new issue