Merge branch 'feature/activitypub-semantics' into 'develop'
[akkoma] / lib / pleroma / web / activity_pub / transmogrifier.ex
index 2c1ce9c550fbd8983a3f253423434d1b8636dc87..4a250d131d6dcedbe40cb6705899aae49717055c 100644 (file)
@@ -596,13 +596,19 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
           data,
         _options
       )
-      when object_type in ["Person", "Application", "Service", "Organization"] do
+      when object_type in [
+             "Person",
+             "Application",
+             "Service",
+             "Organization"
+           ] do
     with %User{ap_id: ^actor_id} = actor <- User.get_cached_by_ap_id(object["id"]) do
       {:ok, new_user_data} = ActivityPub.user_data_from_user_object(object)
 
       banner = new_user_data[:info][:banner]
       locked = new_user_data[:info][:locked] || false
       attachment = get_in(new_user_data, [:info, :source_data, "attachment"]) || []
+      invisible = new_user_data[:info][:invisible] || false
 
       fields =
         attachment
@@ -612,7 +618,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
       update_data =
         new_user_data
         |> Map.take([:name, :bio, :avatar])
-        |> Map.put(:info, %{banner: banner, locked: locked, fields: fields})
+        |> Map.put(:info, %{banner: banner, locked: locked, fields: fields, invisible: invisible})
 
       actor
       |> User.upgrade_changeset(update_data, true)