Add key- and valuePlaceholders for quarantined_instances and mrf_simple
[akkoma] / lib / pleroma / web / mastodon_api / views / instance_view.ex
index 3528185d50345e102edc18686db70bde420cd08f..f62b52a6433b5dd9984a4c2e0c26dcef6fb98d05 100644 (file)
@@ -95,7 +95,23 @@ defmodule Pleroma.Web.MastodonAPI.InstanceView do
       {:ok, data} = MRF.describe()
 
       data
-      |> Map.merge(%{quarantined_instances: quarantined})
+      |> Map.merge(%{
+        quarantined_instances:
+          quarantined
+          |> Enum.map(fn {instance, _reason} -> instance end)
+      })
+      # This is for backwards compatibility. We originally didn't sent
+      # extra info like a reason why an instance was rejected/quarantined/etc.
+      # Because we didn't want to break backwards compatibility it was decided
+      # to add an extra "info" key.
+      |> Map.merge(%{
+        quarantined_instances_info: %{
+          "quarantined_instances" =>
+            quarantined
+            |> Enum.map(fn {instance, reason} -> {instance, %{"reason" => reason}} end)
+            |> Enum.into(%{})
+        }
+      })
     else
       %{}
     end