* I also added for keywordpolicy as well now. It was done in the admin-fe, but is better to be done here
* I also added comments to explain why we did the _info keys (backwards compatibility)
%{
key: :quarantined_instances,
type: {:list, :tuple},
+ keyPlaceholder: "instance",
+ valuePlaceholder: "reason",
description:
"List of ActivityPub instances where private (DMs, followers-only) activities will not be sent and the reason for doing so",
suggestions: [
%{
key: :replace,
type: {:list, :tuple},
+ keyPlaceholder: "pattern",
+ valuePlaceholder: "replacement",
description: """
**Pattern**: a string or [Regex](https://hexdocs.pm/elixir/Regex.html) in the format of `~r/PATTERN/`.
end)
|> Enum.into(%{})
+ # 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.
mrf_simple_info =
mrf_simple_excluded
|> Enum.map(fn {k, v} -> {k, Enum.reject(v, fn {_, reason} -> reason == "" end)} end)
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" =>