commit: 98f300c5ae98c2057ff91a03537b17bd0bf8aa78
parent ed538603fb5f2941bbdce61e11e9e3ca6adec395
Author: Lain Soykaf <lain@lain.com>
Date: Sun, 21 Dec 2025 14:16:57 +0400
Transmogrifier: Handle user updates.
Diffstat:
1 file changed, 17 insertions(+), 0 deletions(-)
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex
@@ -851,6 +851,23 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
{:ok, data}
end
+ def prepare_outgoing(%{"type" => "Update", "object" => %{"type" => objtype} = object} = data)
+ when objtype in Pleroma.Constants.actor_types() do
+ object =
+ object
+ |> maybe_fix_user_object()
+ |> strip_internal_fields()
+
+ data =
+ data
+ |> Map.put("object", object)
+ |> strip_internal_fields()
+ |> Map.merge(Utils.make_json_ld_header(object))
+ |> Map.delete("bcc")
+
+ {:ok, data}
+ end
+
def prepare_outgoing(%{"type" => "Update", "object" => %{}} = data) do
raise "Requested to serve an Update for non-updateable object type: #{inspect(data)}"
end