From 88b16fdfb7b40877aecae5d45f6f3a1c54362f13 Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Sat, 11 Apr 2020 16:01:09 +0300 Subject: [PATCH 001/156] [#1364] Disabled notifications on activities from blocked domains. --- CHANGELOG.md | 1 + lib/pleroma/notification.ex | 20 +++++++++++++------- test/notification_test.exs | 15 +++++++++++++++ 3 files changed, 29 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 36897503a..22d0645fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Fixed - Support pagination in conversations API +- Filtering of push notifications on activities from blocked domains ## [unreleased-patch] diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 04ee510b9..02363ddb0 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -321,10 +321,11 @@ def create_notification(%Activity{} = activity, %User{} = user, do_send \\ true) @doc """ Returns a tuple with 2 elements: - {enabled notification receivers, currently disabled receivers (blocking / [thread] muting)} + {notification-enabled receivers, currently disabled receivers (blocking / [thread] muting)} NOTE: might be called for FAKE Activities, see ActivityPub.Utils.get_notified_from_object/1 """ + @spec get_notified_from_activity(Activity.t(), boolean()) :: {list(User.t()), list(User.t())} def get_notified_from_activity(activity, local_only \\ true) def get_notified_from_activity(%Activity{data: %{"type" => type}} = activity, local_only) @@ -337,17 +338,22 @@ def get_notified_from_activity(%Activity{data: %{"type" => type}} = activity, lo |> Utils.maybe_notify_followers(activity) |> Enum.uniq() - # Since even subscribers and followers can mute / thread-mute, filtering all above AP IDs - notification_enabled_ap_ids = - potential_receiver_ap_ids - |> exclude_relationship_restricted_ap_ids(activity) - |> exclude_thread_muter_ap_ids(activity) - potential_receivers = potential_receiver_ap_ids |> Enum.uniq() |> User.get_users_from_set(local_only) + activity_actor_domain = activity.actor && URI.parse(activity.actor).host + + notification_enabled_ap_ids = + for u <- potential_receivers, activity_actor_domain not in u.domain_blocks, do: u.ap_id + + # Since even subscribers and followers can mute / thread-mute, filtering all above AP IDs + notification_enabled_ap_ids = + notification_enabled_ap_ids + |> exclude_relationship_restricted_ap_ids(activity) + |> exclude_thread_muter_ap_ids(activity) + notification_enabled_users = Enum.filter(potential_receivers, fn u -> u.ap_id in notification_enabled_ap_ids end) diff --git a/test/notification_test.exs b/test/notification_test.exs index 837a9dacd..caa941934 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -609,6 +609,21 @@ test "it returns thread-muting recipient in disabled recipients list" do assert [other_user] == disabled_receivers refute other_user in enabled_receivers end + + test "it returns domain-blocking recipient in disabled recipients list" do + blocked_domain = "blocked.domain" + user = insert(:user, %{ap_id: "https://#{blocked_domain}/@actor"}) + other_user = insert(:user) + + {:ok, other_user} = User.block_domain(other_user, blocked_domain) + + {:ok, activity} = CommonAPI.post(user, %{"status" => "hey @#{other_user.nickname}!"}) + + {enabled_receivers, disabled_receivers} = Notification.get_notified_from_activity(activity) + + assert [] == enabled_receivers + assert [other_user] == disabled_receivers + end end describe "notification lifecycle" do From c556efb761a3e7fc2beb4540d6f58dbfe8e4abfe Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Sun, 12 Apr 2020 21:53:03 +0300 Subject: [PATCH 002/156] [#1364] Enabled notifications on followed domain-blocked users' activities. --- lib/pleroma/following_relationship.ex | 35 +++++++++++++-- lib/pleroma/notification.ex | 61 +++++++++++++++++++++------ test/notification_test.exs | 35 +++++++++++++-- 3 files changed, 111 insertions(+), 20 deletions(-) diff --git a/lib/pleroma/following_relationship.ex b/lib/pleroma/following_relationship.ex index a9538ea4e..11e06c5cc 100644 --- a/lib/pleroma/following_relationship.ex +++ b/lib/pleroma/following_relationship.ex @@ -69,6 +69,29 @@ def follower_count(%User{} = user) do |> Repo.aggregate(:count, :id) end + def followers_query(%User{} = user) do + __MODULE__ + |> join(:inner, [r], u in User, on: r.follower_id == u.id) + |> where([r], r.following_id == ^user.id) + |> where([r], r.state == "accept") + end + + def followers_ap_ids(%User{} = user, from_ap_ids \\ nil) do + query = + user + |> followers_query() + |> select([r, u], u.ap_id) + + query = + if from_ap_ids do + where(query, [r, u], u.ap_id in ^from_ap_ids) + else + query + end + + Repo.all(query) + end + def following_count(%User{id: nil}), do: 0 def following_count(%User{} = user) do @@ -92,12 +115,16 @@ def following?(%User{id: follower_id}, %User{id: followed_id}) do |> Repo.exists?() end + def following_query(%User{} = user) do + __MODULE__ + |> join(:inner, [r], u in User, on: r.following_id == u.id) + |> where([r], r.follower_id == ^user.id) + |> where([r], r.state == "accept") + end + def following(%User{} = user) do following = - __MODULE__ - |> join(:inner, [r], u in User, on: r.following_id == u.id) - |> where([r], r.follower_id == ^user.id) - |> where([r], r.state == "accept") + following_query(user) |> select([r, u], u.follower_address) |> Repo.all() diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 02363ddb0..da05ff2e4 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -6,6 +6,7 @@ defmodule Pleroma.Notification do use Ecto.Schema alias Pleroma.Activity + alias Pleroma.FollowingRelationship alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Pagination @@ -81,6 +82,7 @@ def for_user_query(user, opts \\ %{}) do |> exclude_visibility(opts) end + # Excludes blocked users and non-followed domain-blocked users defp exclude_blocked(query, user, opts) do blocked_ap_ids = opts[:blocked_users_ap_ids] || User.blocked_users_ap_ids(user) @@ -88,7 +90,16 @@ defp exclude_blocked(query, user, opts) do |> where([n, a], a.actor not in ^blocked_ap_ids) |> where( [n, a], - fragment("substring(? from '.*://([^/]*)')", a.actor) not in ^user.domain_blocks + fragment( + # "NOT (actor's domain in domain_blocks) OR (actor is in followed AP IDs)" + "NOT (substring(? from '.*://([^/]*)') = ANY(?)) OR \ + ? = ANY(SELECT ap_id FROM users AS u INNER JOIN following_relationships AS fr \ + ON u.id = fr.following_id WHERE fr.follower_id = ? AND fr.state = 'accept')", + a.actor, + ^user.domain_blocks, + a.actor, + ^User.binary_id(user.id) + ) ) end @@ -338,19 +349,11 @@ def get_notified_from_activity(%Activity{data: %{"type" => type}} = activity, lo |> Utils.maybe_notify_followers(activity) |> Enum.uniq() - potential_receivers = + potential_receivers = User.get_users_from_set(potential_receiver_ap_ids, local_only) + + notification_enabled_ap_ids = potential_receiver_ap_ids - |> Enum.uniq() - |> User.get_users_from_set(local_only) - - activity_actor_domain = activity.actor && URI.parse(activity.actor).host - - notification_enabled_ap_ids = - for u <- potential_receivers, activity_actor_domain not in u.domain_blocks, do: u.ap_id - - # Since even subscribers and followers can mute / thread-mute, filtering all above AP IDs - notification_enabled_ap_ids = - notification_enabled_ap_ids + |> exclude_domain_blocker_ap_ids(activity, potential_receivers) |> exclude_relationship_restricted_ap_ids(activity) |> exclude_thread_muter_ap_ids(activity) @@ -362,6 +365,38 @@ def get_notified_from_activity(%Activity{data: %{"type" => type}} = activity, lo def get_notified_from_activity(_, _local_only), do: {[], []} + @doc "Filters out AP IDs of users who domain-block and not follow activity actor" + def exclude_domain_blocker_ap_ids(ap_ids, activity, preloaded_users \\ []) + + def exclude_domain_blocker_ap_ids([], _activity, _preloaded_users), do: [] + + def exclude_domain_blocker_ap_ids(ap_ids, %Activity{} = activity, preloaded_users) do + activity_actor_domain = activity.actor && URI.parse(activity.actor).host + + users = + ap_ids + |> Enum.map(fn ap_id -> + Enum.find(preloaded_users, &(&1.ap_id == ap_id)) || + User.get_cached_by_ap_id(ap_id) + end) + |> Enum.filter(& &1) + + domain_blocker_ap_ids = for u <- users, activity_actor_domain in u.domain_blocks, do: u.ap_id + + domain_blocker_follower_ap_ids = + if Enum.any?(domain_blocker_ap_ids) do + activity + |> Activity.user_actor() + |> FollowingRelationship.followers_ap_ids(domain_blocker_ap_ids) + else + [] + end + + ap_ids + |> Kernel.--(domain_blocker_ap_ids) + |> Kernel.++(domain_blocker_follower_ap_ids) + end + @doc "Filters out AP IDs of users basing on their relationships with activity actor user" def exclude_relationship_restricted_ap_ids([], _activity), do: [] diff --git a/test/notification_test.exs b/test/notification_test.exs index caa941934..4e5559bb1 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -610,7 +610,7 @@ test "it returns thread-muting recipient in disabled recipients list" do refute other_user in enabled_receivers end - test "it returns domain-blocking recipient in disabled recipients list" do + test "it returns non-following domain-blocking recipient in disabled recipients list" do blocked_domain = "blocked.domain" user = insert(:user, %{ap_id: "https://#{blocked_domain}/@actor"}) other_user = insert(:user) @@ -624,6 +624,22 @@ test "it returns domain-blocking recipient in disabled recipients list" do assert [] == enabled_receivers assert [other_user] == disabled_receivers end + + test "it returns following domain-blocking recipient in enabled recipients list" do + blocked_domain = "blocked.domain" + user = insert(:user, %{ap_id: "https://#{blocked_domain}/@actor"}) + other_user = insert(:user) + + {:ok, other_user} = User.block_domain(other_user, blocked_domain) + {:ok, other_user} = User.follow(other_user, user) + + {:ok, activity} = CommonAPI.post(user, %{"status" => "hey @#{other_user.nickname}!"}) + + {enabled_receivers, disabled_receivers} = Notification.get_notified_from_activity(activity) + + assert [other_user] == enabled_receivers + assert [] == disabled_receivers + end end describe "notification lifecycle" do @@ -886,7 +902,7 @@ test "it doesn't return notifications for blocked user" do assert Notification.for_user(user) == [] end - test "it doesn't return notifications for blocked domain" do + test "it doesn't return notifications for domain-blocked non-followed user" do user = insert(:user) blocked = insert(:user, ap_id: "http://some-domain.com") {:ok, user} = User.block_domain(user, "some-domain.com") @@ -896,6 +912,18 @@ test "it doesn't return notifications for blocked domain" do assert Notification.for_user(user) == [] end + test "it returns notifications for domain-blocked but followed user" do + user = insert(:user) + blocked = insert(:user, ap_id: "http://some-domain.com") + + {:ok, user} = User.block_domain(user, "some-domain.com") + {:ok, _} = User.follow(user, blocked) + + {:ok, _activity} = CommonAPI.post(blocked, %{"status" => "hey @#{user.nickname}"}) + + assert length(Notification.for_user(user)) == 1 + end + test "it doesn't return notifications for muted thread" do user = insert(:user) another_user = insert(:user) @@ -926,7 +954,8 @@ test "it doesn't return notifications from a blocked user when with_muted is set assert Enum.empty?(Notification.for_user(user, %{with_muted: true})) end - test "it doesn't return notifications from a domain-blocked user when with_muted is set" do + test "when with_muted is set, " <> + "it doesn't return notifications from a domain-blocked non-followed user" do user = insert(:user) blocked = insert(:user, ap_id: "http://some-domain.com") {:ok, user} = User.block_domain(user, "some-domain.com") From c5c09fc61b7b6e591e9de23028e5caea8f26b996 Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Mon, 13 Apr 2020 06:53:45 +0300 Subject: [PATCH 003/156] fix mediaType of object --- .../web/activity_pub/transmogrifier.ex | 21 +++++++++++++++---- test/fixtures/tesla_mock/bittube-video.json | 1 + test/fixtures/tesla_mock/hanimated.json | 1 + test/support/http_request_mock.ex | 16 ++++++++++++++ test/web/activity_pub/transmogrifier_test.exs | 9 ++++++++ 5 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 test/fixtures/tesla_mock/bittube-video.json create mode 100644 test/fixtures/tesla_mock/hanimated.json diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index 39feae285..17e3c203a 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -35,6 +35,7 @@ def fix_object(object, options \\ []) do |> fix_actor |> fix_url |> fix_attachments + |> fix_media_type |> fix_context |> fix_in_reply_to(options) |> fix_emoji @@ -357,6 +358,12 @@ def fix_type(%{"inReplyTo" => reply_id, "name" => _} = object, options) def fix_type(object, _), do: object + defp fix_media_type(%{"mediaType" => _} = object) do + Map.put(object, "mediaType", "text/html") + end + + defp fix_media_type(object), do: object + defp mastodon_follow_hack(%{"id" => id, "actor" => follower_id}, followed) do with true <- id =~ "follows", %User{local: true} = follower <- User.get_cached_by_ap_id(follower_id), @@ -1207,18 +1214,24 @@ def add_attributed_to(object) do def prepare_attachments(object) do attachments = - (object["attachment"] || []) + object + |> Map.get("attachment", []) |> Enum.map(fn data -> [%{"mediaType" => media_type, "href" => href} | _] = data["url"] - %{"url" => href, "mediaType" => media_type, "name" => data["name"], "type" => "Document"} + + %{ + "url" => href, + "mediaType" => media_type, + "name" => data["name"], + "type" => "Document" + } end) Map.put(object, "attachment", attachments) end def strip_internal_fields(object) do - object - |> Map.drop(Pleroma.Constants.object_internal_fields()) + Map.drop(object, Pleroma.Constants.object_internal_fields()) end defp strip_internal_tags(%{"tag" => tags} = object) do diff --git a/test/fixtures/tesla_mock/bittube-video.json b/test/fixtures/tesla_mock/bittube-video.json new file mode 100644 index 000000000..be839862f --- /dev/null +++ b/test/fixtures/tesla_mock/bittube-video.json @@ -0,0 +1 @@ +{"type":"Video","id":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b","name":"Implications of 5G Rollout Simply Explained","duration":"PT428S","uuid":"2aad7dfb-5c75-4ee6-a9ed-08436af0558b","tag":[{"type":"Hashtag","name":"5g"},{"type":"Hashtag","name":"big brother"},{"type":"Hashtag","name":"facial recognition"},{"type":"Hashtag","name":"smart device"}],"category":{"identifier":"15","name":"Science & Technology"},"language":{"identifier":"en","name":"English"},"views":5,"sensitive":false,"waitTranscoding":true,"state":1,"commentsEnabled":true,"downloadEnabled":true,"published":"2020-04-12T11:55:44.805Z","originallyPublishedAt":null,"updated":"2020-04-13T02:01:24.279Z","mediaType":"text/markdown","content":null,"support":null,"subtitleLanguage":[],"icon":{"type":"Image","url":"https://bittube.video/static/thumbnails/2aad7dfb-5c75-4ee6-a9ed-08436af0558b.jpg","mediaType":"image/jpeg","width":223,"height":122},"url":[{"type":"Link","mediaType":"text/html","href":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b"},{"type":"Link","mediaType":"video/mp4","href":"https://bittube.video/static/webseed/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.mp4","height":240,"size":17158094,"fps":30},{"type":"Link","mediaType":"application/x-bittorrent","href":"https://bittube.video/static/torrents/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.torrent","height":240},{"type":"Link","mediaType":"application/x-bittorrent;x-scheme-handler/magnet","href":"magnet:?xs=https%3A%2F%2Fbittube.video%2Fstatic%2Ftorrents%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.torrent&xt=urn:btih:16c8f60d788a29e7ff195de44b4a1558b41dc6c3&dn=Implications+of+5G+Rollout+Simply+Explained&tr=wss%3A%2F%2Fbittube.video%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fbittube.video%2Ftracker%2Fannounce&ws=https%3A%2F%2Fbittube.video%2Fstatic%2Fwebseed%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.mp4","height":240},{"type":"Link","mediaType":"video/mp4","href":"https://bittube.video/static/webseed/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.mp4","height":0,"size":5215186,"fps":0},{"type":"Link","mediaType":"application/x-bittorrent","href":"https://bittube.video/static/torrents/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.torrent","height":0},{"type":"Link","mediaType":"application/x-bittorrent;x-scheme-handler/magnet","href":"magnet:?xs=https%3A%2F%2Fbittube.video%2Fstatic%2Ftorrents%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.torrent&xt=urn:btih:8a043b09291f2947423ce96d1cd0e977662d6de8&dn=Implications+of+5G+Rollout+Simply+Explained&tr=wss%3A%2F%2Fbittube.video%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fbittube.video%2Ftracker%2Fannounce&ws=https%3A%2F%2Fbittube.video%2Fstatic%2Fwebseed%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.mp4","height":0},{"type":"Link","mediaType":"video/mp4","href":"https://bittube.video/static/webseed/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.mp4","height":360,"size":22813140,"fps":30},{"type":"Link","mediaType":"application/x-bittorrent","href":"https://bittube.video/static/torrents/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.torrent","height":360},{"type":"Link","mediaType":"application/x-bittorrent;x-scheme-handler/magnet","href":"magnet:?xs=https%3A%2F%2Fbittube.video%2Fstatic%2Ftorrents%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.torrent&xt=urn:btih:d121f7493998d4204b3d33d00da7fea1c9a42484&dn=Implications+of+5G+Rollout+Simply+Explained&tr=wss%3A%2F%2Fbittube.video%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fbittube.video%2Ftracker%2Fannounce&ws=https%3A%2F%2Fbittube.video%2Fstatic%2Fwebseed%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.mp4","height":360}],"likes":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/likes","dislikes":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/dislikes","shares":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/announces","comments":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/comments","attributedTo":[{"type":"Person","id":"https://bittube.video/accounts/hanimated.moh"},{"type":"Group","id":"https://bittube.video/video-channels/hanimated.moh_channel"}],"to":["https://www.w3.org/ns/activitystreams#Public"],"cc":["https://bittube.video/accounts/hanimated.moh/followers"],"@context":["https://www.w3.org/ns/activitystreams","https://w3id.org/security/v1",{"RsaSignature2017":"https://w3id.org/security#RsaSignature2017","pt":"https://joinpeertube.org/ns#","sc":"http://schema.org#","Hashtag":"as:Hashtag","uuid":"sc:identifier","category":"sc:category","licence":"sc:license","subtitleLanguage":"sc:subtitleLanguage","sensitive":"as:sensitive","language":"sc:inLanguage","expires":"sc:expires","CacheFile":"pt:CacheFile","Infohash":"pt:Infohash","originallyPublishedAt":"sc:datePublished","views":{"@type":"sc:Number","@id":"pt:views"},"state":{"@type":"sc:Number","@id":"pt:state"},"size":{"@type":"sc:Number","@id":"pt:size"},"fps":{"@type":"sc:Number","@id":"pt:fps"},"startTimestamp":{"@type":"sc:Number","@id":"pt:startTimestamp"},"stopTimestamp":{"@type":"sc:Number","@id":"pt:stopTimestamp"},"position":{"@type":"sc:Number","@id":"pt:position"},"commentsEnabled":{"@type":"sc:Boolean","@id":"pt:commentsEnabled"},"downloadEnabled":{"@type":"sc:Boolean","@id":"pt:downloadEnabled"},"waitTranscoding":{"@type":"sc:Boolean","@id":"pt:waitTranscoding"},"support":{"@type":"sc:Text","@id":"pt:support"}},{"likes":{"@id":"as:likes","@type":"@id"},"dislikes":{"@id":"as:dislikes","@type":"@id"},"playlists":{"@id":"pt:playlists","@type":"@id"},"shares":{"@id":"as:shares","@type":"@id"},"comments":{"@id":"as:comments","@type":"@id"}}]} diff --git a/test/fixtures/tesla_mock/hanimated.json b/test/fixtures/tesla_mock/hanimated.json new file mode 100644 index 000000000..564deebd9 --- /dev/null +++ b/test/fixtures/tesla_mock/hanimated.json @@ -0,0 +1 @@ +{"type":"Person","id":"https://bittube.video/accounts/hanimated.moh","following":"https://bittube.video/accounts/hanimated.moh/following","followers":"https://bittube.video/accounts/hanimated.moh/followers","playlists":"https://bittube.video/accounts/hanimated.moh/playlists","inbox":"https://bittube.video/accounts/hanimated.moh/inbox","outbox":"https://bittube.video/accounts/hanimated.moh/outbox","preferredUsername":"hanimated.moh","url":"https://bittube.video/accounts/hanimated.moh","name":"Nosat","endpoints":{"sharedInbox":"https://bittube.video/inbox"},"publicKey":{"id":"https://bittube.video/accounts/hanimated.moh#main-key","owner":"https://bittube.video/accounts/hanimated.moh","publicKeyPem":"-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwuoQT+4uyAboQcf/okCM\nFqUS/LuqFc2888OSKZFAz00Op/dyOB/pkr1+QLxbl8ZGiUWhmnmhNwmmd3tbhSsC\nvLv9Mz/YaWQPYLfRS/s/7iIxdniC4lo/YgicOrzcvetHmk1feOg5vb5/yc+bgUSm\nOk+L4azqXP9GmZyofzvufT65bUmzQRFXP19eL55YZWvZDaC81QAfRXsqtCqbehtF\nQNOjGhnl6a7Kfe8KprRDPV/3WvvFjftnNO2qenIIOFLLeznkQ0ELP6lyb9pvv/1C\n2/GRh2BwmgVlCTw1kTxLSdj80BFX5P8AudSiIx079lVkhamEhzsNLkMpQFqWAAlg\nrQIDAQAB\n-----END PUBLIC KEY-----"},"icon":{"type":"Image","mediaType":"image/jpeg","url":"https://bittube.video/lazy-static/avatars/84b8acc3-e48b-4642-a9f4-360a4499579b.jpg"},"@context":["https://www.w3.org/ns/activitystreams","https://w3id.org/security/v1",{"RsaSignature2017":"https://w3id.org/security#RsaSignature2017","pt":"https://joinpeertube.org/ns#","sc":"http://schema.org#","Hashtag":"as:Hashtag","uuid":"sc:identifier","category":"sc:category","licence":"sc:license","subtitleLanguage":"sc:subtitleLanguage","sensitive":"as:sensitive","language":"sc:inLanguage","expires":"sc:expires","CacheFile":"pt:CacheFile","Infohash":"pt:Infohash","originallyPublishedAt":"sc:datePublished","views":{"@type":"sc:Number","@id":"pt:views"},"state":{"@type":"sc:Number","@id":"pt:state"},"size":{"@type":"sc:Number","@id":"pt:size"},"fps":{"@type":"sc:Number","@id":"pt:fps"},"startTimestamp":{"@type":"sc:Number","@id":"pt:startTimestamp"},"stopTimestamp":{"@type":"sc:Number","@id":"pt:stopTimestamp"},"position":{"@type":"sc:Number","@id":"pt:position"},"commentsEnabled":{"@type":"sc:Boolean","@id":"pt:commentsEnabled"},"downloadEnabled":{"@type":"sc:Boolean","@id":"pt:downloadEnabled"},"waitTranscoding":{"@type":"sc:Boolean","@id":"pt:waitTranscoding"},"support":{"@type":"sc:Text","@id":"pt:support"}},{"likes":{"@id":"as:likes","@type":"@id"},"dislikes":{"@id":"as:dislikes","@type":"@id"},"playlists":{"@id":"pt:playlists","@type":"@id"},"shares":{"@id":"as:shares","@type":"@id"},"comments":{"@id":"as:comments","@type":"@id"}}],"summary":null} diff --git a/test/support/http_request_mock.ex b/test/support/http_request_mock.ex index 20cb2b3d1..54dde0432 100644 --- a/test/support/http_request_mock.ex +++ b/test/support/http_request_mock.ex @@ -308,6 +308,22 @@ def get("https://peertube.moe/videos/watch/df5f464b-be8d-46fb-ad81-2d4c2d1630e3" }} end + def get("https://bittube.video/accounts/hanimated.moh", _, _, _) do + {:ok, + %Tesla.Env{ + status: 200, + body: File.read!("test/fixtures/tesla_mock/hanimated.json") + }} + end + + def get("https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b", _, _, _) do + {:ok, + %Tesla.Env{ + status: 200, + body: File.read!("test/fixtures/tesla_mock/bittube-video.json") + }} + end + def get("https://mobilizon.org/events/252d5816-00a3-4a89-a66f-15bf65c33e39", _, _, [ {"accept", "application/activity+json"} ]) do diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index 2332029e5..de9663fa9 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -1221,6 +1221,15 @@ test "it rejects activities without a valid ID" do :error = Transmogrifier.handle_incoming(data) end + test "it remaps mediaType of object" do + {:ok, object} = + Fetcher.fetch_object_from_id( + "https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b" + ) + + assert object.data["mediaType"] == "text/html" + end + test "it remaps video URLs as attachments if necessary" do {:ok, object} = Fetcher.fetch_object_from_id( From 99b0bc198921099816a5f809f11a7579b3993274 Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Mon, 13 Apr 2020 13:24:31 +0300 Subject: [PATCH 004/156] [#1364] Resolved merge conflicts with `develop`. Refactoring. --- lib/pleroma/following_relationship.ex | 34 +++++++++++++++++++++++++-- lib/pleroma/notification.ex | 14 +---------- 2 files changed, 33 insertions(+), 15 deletions(-) diff --git a/lib/pleroma/following_relationship.ex b/lib/pleroma/following_relationship.ex index 219a64352..3a3082e72 100644 --- a/lib/pleroma/following_relationship.ex +++ b/lib/pleroma/following_relationship.ex @@ -10,11 +10,12 @@ defmodule Pleroma.FollowingRelationship do alias Ecto.Changeset alias FlakeId.Ecto.CompatType + alias Pleroma.FollowingRelationship.State alias Pleroma.Repo alias Pleroma.User schema "following_relationships" do - field(:state, Pleroma.FollowingRelationship.State, default: :follow_pending) + field(:state, State, default: :follow_pending) belongs_to(:follower, User, type: CompatType) belongs_to(:following, User, type: CompatType) @@ -22,6 +23,11 @@ defmodule Pleroma.FollowingRelationship do timestamps() end + @doc "Returns underlying integer code for state atom" + def state_int_code(state_atom), do: State.__enum_map__() |> Keyword.fetch!(state_atom) + + def accept_state_code, do: state_int_code(:follow_accept) + def changeset(%__MODULE__{} = following_relationship, attrs) do following_relationship |> cast(attrs, [:state]) @@ -86,7 +92,7 @@ def followers_query(%User{} = user) do __MODULE__ |> join(:inner, [r], u in User, on: r.follower_id == u.id) |> where([r], r.following_id == ^user.id) - |> where([r], r.state == "accept") + |> where([r], r.state == ^:follow_accept) end def followers_ap_ids(%User{} = user, from_ap_ids \\ nil) do @@ -198,6 +204,30 @@ def find(following_relationships, follower, following) do end) end + @doc """ + For a query with joined activity, + keeps rows where activity's actor is followed by user -or- is NOT domain-blocked by user. + """ + def keep_following_or_not_domain_blocked(query, user) do + where( + query, + [_, activity], + fragment( + # "(actor's domain NOT in domain_blocks) OR (actor IS in followed AP IDs)" + """ + NOT (substring(? from '.*://([^/]*)') = ANY(?)) OR + ? = ANY(SELECT ap_id FROM users AS u INNER JOIN following_relationships AS fr + ON u.id = fr.following_id WHERE fr.follower_id = ? AND fr.state = ?) + """, + activity.actor, + ^user.domain_blocks, + activity.actor, + ^User.binary_id(user.id), + ^accept_state_code() + ) + ) + end + defp validate_not_self_relationship(%Changeset{} = changeset) do changeset |> validate_follower_id_following_id_inequality() diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index da05ff2e4..b76dd176c 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -88,19 +88,7 @@ defp exclude_blocked(query, user, opts) do query |> where([n, a], a.actor not in ^blocked_ap_ids) - |> where( - [n, a], - fragment( - # "NOT (actor's domain in domain_blocks) OR (actor is in followed AP IDs)" - "NOT (substring(? from '.*://([^/]*)') = ANY(?)) OR \ - ? = ANY(SELECT ap_id FROM users AS u INNER JOIN following_relationships AS fr \ - ON u.id = fr.following_id WHERE fr.follower_id = ? AND fr.state = 'accept')", - a.actor, - ^user.domain_blocks, - a.actor, - ^User.binary_id(user.id) - ) - ) + |> FollowingRelationship.keep_following_or_not_domain_blocked(user) end defp exclude_notification_muted(query, _, %{@include_muted_option => true}) do From f7e623c11c4b6f4f323a4317e9489092be73f9cd Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Tue, 14 Apr 2020 20:19:08 +0300 Subject: [PATCH 005/156] [#1364] Resolved merge conflicts with `develop`. --- lib/pleroma/notification.ex | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index f517282f7..b76dd176c 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -7,7 +7,6 @@ defmodule Pleroma.Notification do alias Pleroma.Activity alias Pleroma.FollowingRelationship - alias Pleroma.Marker alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Pagination From 4b3b1fec4e57bd07ac75700bf34cd188ce43b545 Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Wed, 15 Apr 2020 21:19:43 +0300 Subject: [PATCH 006/156] added an endpoint for getting unread notification count --- CHANGELOG.md | 1 + docs/API/differences_in_mastoapi_responses.md | 17 +++++-- lib/pleroma/marker.ex | 45 ++++++++++++++++- lib/pleroma/notification.ex | 47 ++++++++++++----- .../web/mastodon_api/views/marker_view.ex | 5 +- mix.lock | 50 ++++++++++--------- .../20200415181818_update_markers.exs | 40 +++++++++++++++ test/marker_test.exs | 29 ++++++++++- test/notification_test.exs | 13 +++++ .../controllers/marker_controller_test.exs | 10 ++-- .../mastodon_api/views/marker_view_test.exs | 8 +-- 11 files changed, 214 insertions(+), 51 deletions(-) create mode 100644 priv/repo/migrations/20200415181818_update_markers.exs diff --git a/CHANGELOG.md b/CHANGELOG.md index 56b235f6d..3f7fc1802 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -123,6 +123,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Mastodon API: `pleroma.thread_muted` to the Status entity - Mastodon API: Mark the direct conversation as read for the author when they send a new direct message - Mastodon API, streaming: Add `pleroma.direct_conversation_id` to the `conversation` stream event payload. +- Mastodon API: Add `pleroma.unread_count` to the Marker entity - Admin API: Render whole status in grouped reports - Mastodon API: User timelines will now respect blocks, unless you are getting the user timeline of somebody you blocked (which would be empty otherwise). - Mastodon API: Favoriting / Repeating a post multiple times will now return the identical response every time. Before, executing that action twice would return an error ("already favorited") on the second try. diff --git a/docs/API/differences_in_mastoapi_responses.md b/docs/API/differences_in_mastoapi_responses.md index 1059155cf..0a7520f9e 100644 --- a/docs/API/differences_in_mastoapi_responses.md +++ b/docs/API/differences_in_mastoapi_responses.md @@ -185,8 +185,15 @@ Post here request with `grant_type=refresh_token` to obtain new access token. Re Has theses additional parameters (which are the same as in Pleroma-API): -- `fullname`: optional -- `bio`: optional -- `captcha_solution`: optional, contains provider-specific captcha solution, -- `captcha_token`: optional, contains provider-specific captcha token -- `token`: invite token required when the registrations aren't public. + `fullname`: optional + `bio`: optional + `captcha_solution`: optional, contains provider-specific captcha solution, + `captcha_token`: optional, contains provider-specific captcha token + `token`: invite token required when the registrations aren't public. + + +## Markers + +Has these additional fields under the `pleroma` object: + +- `unread_count`: contains number unread notifications diff --git a/lib/pleroma/marker.ex b/lib/pleroma/marker.ex index 443927392..4d82860f5 100644 --- a/lib/pleroma/marker.ex +++ b/lib/pleroma/marker.ex @@ -9,24 +9,34 @@ defmodule Pleroma.Marker do import Ecto.Query alias Ecto.Multi + alias Pleroma.Notification alias Pleroma.Repo alias Pleroma.User + alias __MODULE__ @timelines ["notifications"] + @type t :: %__MODULE__{} schema "markers" do field(:last_read_id, :string, default: "") field(:timeline, :string, default: "") field(:lock_version, :integer, default: 0) + field(:unread_count, :integer, default: 0, virtual: true) belongs_to(:user, User, type: FlakeId.Ecto.CompatType) timestamps() end + @doc "Gets markers by user and timeline." + @spec get_markers(User.t(), list(String)) :: list(t()) def get_markers(user, timelines \\ []) do - Repo.all(get_query(user, timelines)) + user + |> get_query(timelines) + |> unread_count_query() + |> Repo.all() end + @spec upsert(User.t(), map()) :: {:ok | :error, any()} def upsert(%User{} = user, attrs) do attrs |> Map.take(@timelines) @@ -45,6 +55,27 @@ def upsert(%User{} = user, attrs) do |> Repo.transaction() end + @spec multi_set_last_read_id(Multi.t(), User.t(), String.t()) :: Multi.t() + def multi_set_last_read_id(multi, %User{} = user, "notifications") do + multi + |> Multi.run(:counters, fn _repo, _changes -> + {:ok, %{last_read_id: Repo.one(Notification.last_read_query(user))}} + end) + |> Multi.insert( + :marker, + fn %{counters: attrs} -> + %Marker{timeline: "notifications", user_id: user.id} + |> struct(attrs) + |> Ecto.Changeset.change() + end, + returning: true, + on_conflict: {:replace, [:last_read_id]}, + conflict_target: [:user_id, :timeline] + ) + end + + def multi_set_last_read_id(multi, _, _), do: multi + defp get_marker(user, timeline) do case Repo.find_resource(get_query(user, timeline)) do {:ok, marker} -> %__MODULE__{marker | user: user} @@ -71,4 +102,16 @@ defp get_query(user, timelines) do |> by_user_id(user.id) |> by_timeline(timelines) end + + defp unread_count_query(query) do + from( + q in query, + left_join: n in "notifications", + on: n.user_id == q.user_id and n.seen == false, + group_by: [:id], + select_merge: %{ + unread_count: fragment("count(?)", n.id) + } + ) + end end diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 04ee510b9..3084bac3b 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -5,7 +5,9 @@ defmodule Pleroma.Notification do use Ecto.Schema + alias Ecto.Multi alias Pleroma.Activity + alias Pleroma.Marker alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Pagination @@ -38,6 +40,17 @@ def changeset(%Notification{} = notification, attrs) do |> cast(attrs, [:seen]) end + @spec last_read_query(User.t()) :: Ecto.Queryable.t() + def last_read_query(user) do + from(q in Pleroma.Notification, + where: q.user_id == ^user.id, + where: q.seen == true, + select: type(q.id, :string), + limit: 1, + order_by: [desc: :id] + ) + end + defp for_user_query_ap_id_opts(user, opts) do ap_id_relationships = [:block] ++ @@ -186,25 +199,23 @@ def for_user_since(user, date) do |> Repo.all() end - def set_read_up_to(%{id: user_id} = _user, id) do + def set_read_up_to(%{id: user_id} = user, id) do query = from( n in Notification, where: n.user_id == ^user_id, where: n.id <= ^id, where: n.seen == false, - update: [ - set: [ - seen: true, - updated_at: ^NaiveDateTime.utc_now() - ] - ], # Ideally we would preload object and activities here # but Ecto does not support preloads in update_all select: n.id ) - {_, notification_ids} = Repo.update_all(query, []) + {:ok, %{ids: {_, notification_ids}}} = + Multi.new() + |> Multi.update_all(:ids, query, set: [seen: true, updated_at: NaiveDateTime.utc_now()]) + |> Marker.multi_set_last_read_id(user, "notifications") + |> Repo.transaction() Notification |> where([n], n.id in ^notification_ids) @@ -221,11 +232,18 @@ def set_read_up_to(%{id: user_id} = _user, id) do |> Repo.all() end + @spec read_one(User.t(), String.t()) :: + {:ok, Notification.t()} | {:error, Ecto.Changeset.t()} | nil def read_one(%User{} = user, notification_id) do with {:ok, %Notification{} = notification} <- get(user, notification_id) do - notification - |> changeset(%{seen: true}) - |> Repo.update() + Multi.new() + |> Multi.update(:update, changeset(notification, %{seen: true})) + |> Marker.multi_set_last_read_id(user, "notifications") + |> Repo.transaction() + |> case do + {:ok, %{update: notification}} -> {:ok, notification} + {:error, :update, changeset, _} -> {:error, changeset} + end end end @@ -307,8 +325,11 @@ defp do_create_notifications(%Activity{} = activity) do # TODO move to sql, too. def create_notification(%Activity{} = activity, %User{} = user, do_send \\ true) do unless skip?(activity, user) do - notification = %Notification{user_id: user.id, activity: activity} - {:ok, notification} = Repo.insert(notification) + {:ok, %{notification: notification}} = + Multi.new() + |> Multi.insert(:notification, %Notification{user_id: user.id, activity: activity}) + |> Marker.multi_set_last_read_id(user, "notifications") + |> Repo.transaction() if do_send do Streamer.stream(["user", "user:notification"], notification) diff --git a/lib/pleroma/web/mastodon_api/views/marker_view.ex b/lib/pleroma/web/mastodon_api/views/marker_view.ex index 985368fe5..415dae93b 100644 --- a/lib/pleroma/web/mastodon_api/views/marker_view.ex +++ b/lib/pleroma/web/mastodon_api/views/marker_view.ex @@ -10,7 +10,10 @@ def render("markers.json", %{markers: markers}) do Map.put_new(acc, m.timeline, %{ last_read_id: m.last_read_id, version: m.lock_version, - updated_at: NaiveDateTime.to_iso8601(m.updated_at) + updated_at: NaiveDateTime.to_iso8601(m.updated_at), + pleroma: %{ + unread_count: m.unread_count + } }) end) end diff --git a/mix.lock b/mix.lock index 2b9c54548..38adc45e3 100644 --- a/mix.lock +++ b/mix.lock @@ -2,8 +2,8 @@ "accept": {:hex, :accept, "0.3.5", "b33b127abca7cc948bbe6caa4c263369abf1347cfa9d8e699c6d214660f10cd1", [:rebar3], [], "hexpm", "11b18c220bcc2eab63b5470c038ef10eb6783bcb1fcdb11aa4137defa5ac1bb8"}, "auto_linker": {:git, "https://git.pleroma.social/pleroma/auto_linker.git", "95e8188490e97505c56636c1379ffdf036c1fdde", [ref: "95e8188490e97505c56636c1379ffdf036c1fdde"]}, "base62": {:hex, :base62, "1.2.1", "4866763e08555a7b3917064e9eef9194c41667276c51b59de2bc42c6ea65f806", [:mix], [{:custom_base, "~> 0.2.1", [hex: :custom_base, repo: "hexpm", optional: false]}], "hexpm", "3b29948de2013d3f93aa898c884a9dff847e7aec75d9d6d8c1dc4c61c2716c42"}, - "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm"}, - "bbcode": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/bbcode.git", "f2d267675e9a7e1ad1ea9beb4cc23382762b66c2", [ref: "v0.2.0"]}, + "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm", "fab09b20e3f5db886725544cbcf875b8e73ec93363954eb8a1a9ed834aa8c1f9"}, + "bbcode": {:hex, :bbcode, "0.1.1", "0023e2c7814119b2e620b7add67182e3f6019f92bfec9a22da7e99821aceba70", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5a981b98ac7d366a9b6bf40eac389aaf4d6e623c631e6b6f8a6b571efaafd338"}, "bbcode_pleroma": {:hex, :bbcode_pleroma, "0.2.0", "d36f5bca6e2f62261c45be30fa9b92725c0655ad45c99025cb1c3e28e25803ef", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "19851074419a5fedb4ef49e1f01b30df504bb5dbb6d6adfc135238063bebd1c3"}, "benchee": {:hex, :benchee, "1.0.1", "66b211f9bfd84bd97e6d1beaddf8fc2312aaabe192f776e8931cb0c16f53a521", [:mix], [{:deep_merge, "~> 1.0", [hex: :deep_merge, repo: "hexpm", optional: false]}], "hexpm", "3ad58ae787e9c7c94dd7ceda3b587ec2c64604563e049b2a0e8baafae832addb"}, "bunt": {:hex, :bunt, "0.2.0", "951c6e801e8b1d2cbe58ebbd3e616a869061ddadcc4863d0a2182541acae9a38", [:mix], [], "hexpm", "7af5c7e09fe1d40f76c8e4f9dd2be7cebd83909f31fee7cd0e9eadc567da8353"}, @@ -19,47 +19,47 @@ "cowboy": {:hex, :cowboy, "2.7.0", "91ed100138a764355f43316b1d23d7ff6bdb0de4ea618cb5d8677c93a7a2f115", [:rebar3], [{:cowlib, "~> 2.8.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "~> 1.7.1", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "04fd8c6a39edc6aaa9c26123009200fc61f92a3a94f3178c527b70b767c6e605"}, "cowlib": {:hex, :cowlib, "2.8.0", "fd0ff1787db84ac415b8211573e9a30a3ebe71b5cbff7f720089972b2319c8a4", [:rebar3], [], "hexpm", "79f954a7021b302186a950a32869dbc185523d99d3e44ce430cd1f3289f41ed4"}, "credo": {:hex, :credo, "1.1.5", "caec7a3cadd2e58609d7ee25b3931b129e739e070539ad1a0cd7efeeb47014f4", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "d0bbd3222607ccaaac5c0340f7f525c627ae4d7aee6c8c8c108922620c5b6446"}, - "crontab": {:hex, :crontab, "1.1.8", "2ce0e74777dfcadb28a1debbea707e58b879e6aa0ffbf9c9bb540887bce43617", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm"}, + "crontab": {:hex, :crontab, "1.1.8", "2ce0e74777dfcadb28a1debbea707e58b879e6aa0ffbf9c9bb540887bce43617", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "48e513299cd28b12c77266c0ed5b1c844368e5c1823724994ae84834f43d6bbe"}, "crypt": {:git, "https://github.com/msantos/crypt", "1f2b58927ab57e72910191a7ebaeff984382a1d3", [ref: "1f2b58927ab57e72910191a7ebaeff984382a1d3"]}, "custom_base": {:hex, :custom_base, "0.2.1", "4a832a42ea0552299d81652aa0b1f775d462175293e99dfbe4d7dbaab785a706", [:mix], [], "hexpm", "8df019facc5ec9603e94f7270f1ac73ddf339f56ade76a721eaa57c1493ba463"}, "db_connection": {:hex, :db_connection, "2.2.1", "caee17725495f5129cb7faebde001dc4406796f12a62b8949f4ac69315080566", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}], "hexpm", "2b02ece62d9f983fcd40954e443b7d9e6589664380e5546b2b9b523cd0fb59e1"}, "decimal": {:hex, :decimal, "1.8.1", "a4ef3f5f3428bdbc0d35374029ffcf4ede8533536fa79896dd450168d9acdf3c", [:mix], [], "hexpm", "3cb154b00225ac687f6cbd4acc4b7960027c757a5152b369923ead9ddbca7aec"}, "deep_merge": {:hex, :deep_merge, "1.0.0", "b4aa1a0d1acac393bdf38b2291af38cb1d4a52806cf7a4906f718e1feb5ee961", [:mix], [], "hexpm", "ce708e5f094b9cd4e8f2be4f00d2f4250c4095be93f8cd6d018c753894885430"}, - "earmark": {:hex, :earmark, "1.4.3", "364ca2e9710f6bff494117dbbd53880d84bebb692dafc3a78eb50aa3183f2bfd", [:mix], [], "hexpm", "8cf8a291ebf1c7b9539e3cddb19e9cef066c2441b1640f13c34c1d3cfc825fec"}, - "ecto": {:hex, :ecto, "3.4.0", "a7a83ab8359bf816ce729e5e65981ce25b9fc5adfc89c2ea3980f4fed0bfd7c1", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "5eed18252f5b5bbadec56a24112b531343507dbe046273133176b12190ce19cc"}, + "earmark": {:hex, :earmark, "1.4.2", "3aa0bd23bc4c61cf2f1e5d752d1bb470560a6f8539974f767a38923bb20e1d7f", [:mix], [], "hexpm", "5e8806285d8a3a8999bd38e4a73c58d28534c856bc38c44818e5ba85bbda16fb"}, + "ecto": {:hex, :ecto, "3.4.2", "6890af71025769bd27ef62b1ed1925cfe23f7f0460bcb3041da4b705215ff23e", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "b3959b8a83e086202a4bd86b4b5e6e71f9f1840813de14a57d502d3fc2ef7132"}, "ecto_enum": {:hex, :ecto_enum, "1.4.0", "d14b00e04b974afc69c251632d1e49594d899067ee2b376277efd8233027aec8", [:mix], [{:ecto, ">= 3.0.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:ecto_sql, "> 3.0.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:mariaex, ">= 0.0.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: true]}], "hexpm", "8fb55c087181c2b15eee406519dc22578fa60dd82c088be376d0010172764ee4"}, "ecto_sql": {:hex, :ecto_sql, "3.3.4", "aa18af12eb875fbcda2f75e608b3bd534ebf020fc4f6448e4672fcdcbb081244", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.4 or ~> 3.3.3", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.3.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "5eccbdbf92e3c6f213007a82d5dbba4cd9bb659d1a21331f89f408e4c0efd7a8"}, - "esshd": {:hex, :esshd, "0.1.1", "d4dd4c46698093a40a56afecce8a46e246eb35463c457c246dacba2e056f31b5", [:mix], [], "hexpm", "d73e341e3009d390aa36387dc8862860bf9f874c94d9fd92ade2926376f49981"}, + "esshd": {:hex, :esshd, "0.1.0", "6f93a2062adb43637edad0ea7357db2702a4b80dd9683482fe00f5134e97f4c1", [:mix], [], "hexpm", "98d0f3c6f4b8a0333170df770c6fe772b3d04564fb514c1a09504cf5ab2f48a5"}, "eternal": {:hex, :eternal, "1.2.1", "d5b6b2499ba876c57be2581b5b999ee9bdf861c647401066d3eeed111d096bc4", [:mix], [], "hexpm", "b14f1dc204321429479c569cfbe8fb287541184ed040956c8862cb7a677b8406"}, "ex2ms": {:hex, :ex2ms, "1.5.0", "19e27f9212be9a96093fed8cdfbef0a2b56c21237196d26760f11dfcfae58e97", [:mix], [], "hexpm"}, "ex_aws": {:hex, :ex_aws, "2.1.1", "1e4de2106cfbf4e837de41be41cd15813eabc722315e388f0d6bb3732cec47cd", [:mix], [{:configparser_ex, "~> 4.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "1.6.3 or 1.6.5 or 1.7.1 or 1.8.6 or ~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:poison, ">= 1.2.0", [hex: :poison, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "06b6fde12b33bb6d65d5d3493e903ba5a56d57a72350c15285a4298338089e10"}, "ex_aws_s3": {:hex, :ex_aws_s3, "2.0.2", "c0258bbdfea55de4f98f0b2f0ca61fe402cc696f573815134beb1866e778f47b", [:mix], [{:ex_aws, "~> 2.0", [hex: :ex_aws, repo: "hexpm", optional: false]}, {:sweet_xml, ">= 0.0.0", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "0569f5b211b1a3b12b705fe2a9d0e237eb1360b9d76298028df2346cad13097a"}, "ex_const": {:hex, :ex_const, "0.2.4", "d06e540c9d834865b012a17407761455efa71d0ce91e5831e86881b9c9d82448", [:mix], [], "hexpm", "96fd346610cc992b8f896ed26a98be82ac4efb065a0578f334a32d60a3ba9767"}, - "ex_doc": {:hex, :ex_doc, "0.21.3", "857ec876b35a587c5d9148a2512e952e24c24345552259464b98bfbb883c7b42", [:mix], [{:earmark, "~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "0db1ee8d1547ab4877c5b5dffc6604ef9454e189928d5ba8967d4a58a801f161"}, + "ex_doc": {:hex, :ex_doc, "0.21.2", "caca5bc28ed7b3bdc0b662f8afe2bee1eedb5c3cf7b322feeeb7c6ebbde089d6", [:mix], [{:earmark, "~> 1.3.3 or ~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "f1155337ae17ff7a1255217b4c1ceefcd1860b7ceb1a1874031e7a861b052e39"}, "ex_machina": {:hex, :ex_machina, "2.3.0", "92a5ad0a8b10ea6314b876a99c8c9e3f25f4dde71a2a835845b136b9adaf199a", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:ecto_sql, "~> 3.0", [hex: :ecto_sql, repo: "hexpm", optional: true]}], "hexpm", "b84f6af156264530b312a8ab98ac6088f6b77ae5fe2058305c81434aa01fbaf9"}, "ex_syslogger": {:hex, :ex_syslogger, "1.5.0", "bc936ee3fd13d9e592cb4c3a1e8a55fccd33b05e3aa7b185f211f3ed263ff8f0", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.0.5", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "f3b4b184dcdd5f356b7c26c6cd72ab0918ba9dfb4061ccfaf519e562942af87b"}, "excoveralls": {:hex, :excoveralls, "0.12.2", "a513defac45c59e310ac42fcf2b8ae96f1f85746410f30b1ff2b710a4b6cd44b", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "151c476331d49b45601ffc45f43cb3a8beb396b02a34e3777fea0ad34ae57d89"}, - "fast_html": {:hex, :fast_html, "1.0.3", "2cc0d4b68496266a1530e0c852cafeaede0bd10cfdee26fda50dc696c203162f", [:make, :mix], [], "hexpm", "ab3d782b639d3c4655fbaec0f9d032c91f8cab8dd791ac7469c2381bc7c32f85"}, - "fast_sanitize": {:hex, :fast_sanitize, "0.1.7", "2a7cd8734c88a2de6de55022104f8a3b87f1fdbe8bbf131d9049764b53d50d0d", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "f39fe8ea08fbac17487c30bf09b7d9f3e12472e51fb07a88ffeb8fd17da8ab67"}, + "fast_html": {:hex, :fast_html, "1.0.1", "5bc7df4dc4607ec2c314c16414e4111d79a209956c4f5df96602d194c61197f9", [:make, :mix], [], "hexpm", "18e627dd62051a375ef94b197f41e8027c3e8eef0180ab8f81e0543b3dc6900a"}, + "fast_sanitize": {:hex, :fast_sanitize, "0.1.6", "60a5ae96879956dea409a91a77f5dd2994c24cc10f80eefd8f9892ee4c0c7b25", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b73f50f0cb522dd0331ea8e8c90b408de42c50f37641219d6364f0e3e7efd22c"}, "flake_id": {:hex, :flake_id, "0.1.0", "7716b086d2e405d09b647121a166498a0d93d1a623bead243e1f74216079ccb3", [:mix], [{:base62, "~> 1.2", [hex: :base62, repo: "hexpm", optional: false]}, {:ecto, ">= 2.0.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "31fc8090fde1acd267c07c36ea7365b8604055f897d3a53dd967658c691bd827"}, - "floki": {:hex, :floki, "0.25.0", "b1c9ddf5f32a3a90b43b76f3386ca054325dc2478af020e87b5111c19f2284ac", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "631f4e627c46d5ecd347df5a2accdaf0621c77c3693c5b75a8ad58e84c61f242"}, + "floki": {:hex, :floki, "0.26.0", "4df88977e2e357c6720e1b650f613444bfb48c5acfc6a0c646ab007d08ad13bf", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "e7b66ce7feef5518a9cd9fc7b52dd62a64028bd9cb6d6ad282a0f0fc90a4ae52"}, "gen_smtp": {:hex, :gen_smtp, "0.15.0", "9f51960c17769b26833b50df0b96123605a8024738b62db747fece14eb2fbfcc", [:rebar3], [], "hexpm", "29bd14a88030980849c7ed2447b8db6d6c9278a28b11a44cafe41b791205440f"}, - "gen_stage": {:hex, :gen_stage, "0.14.3", "d0c66f1c87faa301c1a85a809a3ee9097a4264b2edf7644bf5c123237ef732bf", [:mix], [], "hexpm"}, - "gen_state_machine": {:hex, :gen_state_machine, "2.0.5", "9ac15ec6e66acac994cc442dcc2c6f9796cf380ec4b08267223014be1c728a95", [:mix], [], "hexpm"}, - "gettext": {:hex, :gettext, "0.17.4", "f13088e1ec10ce01665cf25f5ff779e7df3f2dc71b37084976cf89d1aa124d5c", [:mix], [], "hexpm", "3c75b5ea8288e2ee7ea503ff9e30dfe4d07ad3c054576a6e60040e79a801e14d"}, + "gen_stage": {:hex, :gen_stage, "0.14.3", "d0c66f1c87faa301c1a85a809a3ee9097a4264b2edf7644bf5c123237ef732bf", [:mix], [], "hexpm", "8453e2289d94c3199396eb517d65d6715ef26bcae0ee83eb5ff7a84445458d76"}, + "gen_state_machine": {:hex, :gen_state_machine, "2.0.5", "9ac15ec6e66acac994cc442dcc2c6f9796cf380ec4b08267223014be1c728a95", [:mix], [], "hexpm", "5cacd405e72b2609a7e1f891bddb80c53d0b3b7b0036d1648e7382ca108c41c8"}, + "gettext": {:hex, :gettext, "0.17.1", "8baab33482df4907b3eae22f719da492cee3981a26e649b9c2be1c0192616962", [:mix], [], "hexpm", "f7d97341e536f95b96eef2988d6d4230f7262cf239cda0e2e63123ee0b717222"}, "gun": {:git, "https://github.com/ninenines/gun.git", "e1a69b36b180a574c0ac314ced9613fdd52312cc", [ref: "e1a69b36b180a574c0ac314ced9613fdd52312cc"]}, "hackney": {:hex, :hackney, "1.15.2", "07e33c794f8f8964ee86cebec1a8ed88db5070e52e904b8f12209773c1036085", [:rebar3], [{:certifi, "2.5.1", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.5", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "e0100f8ef7d1124222c11ad362c857d3df7cb5f4204054f9f0f4a728666591fc"}, "html_entities": {:hex, :html_entities, "0.5.1", "1c9715058b42c35a2ab65edc5b36d0ea66dd083767bef6e3edb57870ef556549", [:mix], [], "hexpm", "30efab070904eb897ff05cd52fa61c1025d7f8ef3a9ca250bc4e6513d16c32de"}, "html_sanitize_ex": {:hex, :html_sanitize_ex, "1.3.0", "f005ad692b717691203f940c686208aa3d8ffd9dd4bb3699240096a51fa9564e", [:mix], [{:mochiweb, "~> 2.15", [hex: :mochiweb, repo: "hexpm", optional: false]}], "hexpm"}, "http_signatures": {:git, "https://git.pleroma.social/pleroma/http_signatures.git", "293d77bb6f4a67ac8bde1428735c3b42f22cbb30", [ref: "293d77bb6f4a67ac8bde1428735c3b42f22cbb30"]}, - "httpoison": {:hex, :httpoison, "1.6.2", "ace7c8d3a361cebccbed19c283c349b3d26991eff73a1eaaa8abae2e3c8089b6", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "aa2c74bd271af34239a3948779612f87df2422c2fdcfdbcec28d9c105f0773fe"}, + "httpoison": {:hex, :httpoison, "1.6.1", "2ce5bf6e535cd0ab02e905ba8c276580bab80052c5c549f53ddea52d72e81f33", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "89149056039084024a284cd703b2d1900d584958dba432132cb21ef35aed7487"}, "idna": {:hex, :idna, "6.0.0", "689c46cbcdf3524c44d5f3dde8001f364cd7608a99556d8fbd8239a5798d4c10", [:rebar3], [{:unicode_util_compat, "0.4.1", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "4bdd305eb64e18b0273864920695cb18d7a2021f31a11b9c5fbcd9a253f936e2"}, "inet_cidr": {:hex, :inet_cidr, "1.0.4", "a05744ab7c221ca8e395c926c3919a821eb512e8f36547c062f62c4ca0cf3d6e", [:mix], [], "hexpm", "64a2d30189704ae41ca7dbdd587f5291db5d1dda1414e0774c29ffc81088c1bc"}, "jason": {:hex, :jason, "1.2.0", "10043418c42d2493d0ee212d3fddd25d7ffe484380afad769a0a38795938e448", [:mix], [{:decimal, "~> 1.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "116747dbe057794c3a3e4e143b7c8390b29f634e16c78a7f59ba75bfa6852e7f"}, - "joken": {:hex, :joken, "2.2.0", "2daa1b12be05184aff7b5ace1d43ca1f81345962285fff3f88db74927c954d3a", [:mix], [{:jose, "~> 1.9", [hex: :jose, repo: "hexpm", optional: false]}], "hexpm", "b4f92e30388206f869dd25d1af628a1d99d7586e5cf0672f64d4df84c4d2f5e9"}, - "jose": {:hex, :jose, "1.10.1", "16d8e460dae7203c6d1efa3f277e25b5af8b659febfc2f2eb4bacf87f128b80a", [:mix, :rebar3], [], "hexpm", "3c7ddc8a9394b92891db7c2771da94bf819834a1a4c92e30857b7d582e2f8257"}, + "joken": {:hex, :joken, "2.1.0", "bf21a73105d82649f617c5e59a7f8919aa47013d2519ebcc39d998d8d12adda9", [:mix], [{:jose, "~> 1.9", [hex: :jose, repo: "hexpm", optional: false]}], "hexpm", "eb02df7d5526df13063397e051b926b7006d5986d66f399eefc474f560cdad6a"}, + "jose": {:hex, :jose, "1.9.0", "4167c5f6d06ffaebffd15cdb8da61a108445ef5e85ab8f5a7ad926fdf3ada154", [:mix, :rebar3], [{:base64url, "~> 0.0.1", [hex: :base64url, repo: "hexpm", optional: false]}], "hexpm", "6429c4fee52b2dda7861ee19a4f09c8c1ffa213bee3a1ec187828fde95d447ed"}, "jumper": {:hex, :jumper, "1.0.1", "3c00542ef1a83532b72269fab9f0f0c82bf23a35e27d278bfd9ed0865cecabff", [:mix], [], "hexpm", "318c59078ac220e966d27af3646026db9b5a5e6703cb2aa3e26bcfaba65b7433"}, - "libring": {:hex, :libring, "1.4.0", "41246ba2f3fbc76b3971f6bce83119dfec1eee17e977a48d8a9cfaaf58c2a8d6", [:mix], [], "hexpm"}, + "libring": {:hex, :libring, "1.4.0", "41246ba2f3fbc76b3971f6bce83119dfec1eee17e977a48d8a9cfaaf58c2a8d6", [:mix], [], "hexpm", "1feaf05ee886815ad047cad7ede17d6910710986148ae09cf73eee2989717b81"}, "makeup": {:hex, :makeup, "1.0.0", "671df94cf5a594b739ce03b0d0316aa64312cee2574b6a44becb83cd90fb05dc", [:mix], [{:nimble_parsec, "~> 0.5.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "a10c6eb62cca416019663129699769f0c2ccf39428b3bb3c0cb38c718a0c186d"}, "makeup_elixir": {:hex, :makeup_elixir, "0.14.0", "cf8b7c66ad1cff4c14679698d532f0b5d45a3968ffbcbfd590339cb57742f1ae", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "d4b316c7222a85bbaa2fd7c6e90e37e953257ad196dc229505137c5e505e9eff"}, "meck": {:hex, :meck, "0.8.13", "ffedb39f99b0b99703b8601c6f17c7f76313ee12de6b646e671e3188401f7866", [:rebar3], [], "hexpm", "d34f013c156db51ad57cc556891b9720e6a1c1df5fe2e15af999c84d6cebeb1a"}, @@ -71,35 +71,37 @@ "mogrify": {:hex, :mogrify, "0.6.1", "de1b527514f2d95a7bbe9642eb556061afb337e220cf97adbf3a4e6438ed70af", [:mix], [], "hexpm", "3bc928d817974fa10cc11e6c89b9a9361e37e96dbbf3d868c41094ec05745dcd"}, "mox": {:hex, :mox, "0.5.1", "f86bb36026aac1e6f924a4b6d024b05e9adbed5c63e8daa069bd66fb3292165b", [:mix], [], "hexpm", "052346cf322311c49a0f22789f3698eea030eec09b8c47367f0686ef2634ae14"}, "myhtmlex": {:git, "https://git.pleroma.social/pleroma/myhtmlex.git", "ad0097e2f61d4953bfef20fb6abddf23b87111e6", [ref: "ad0097e2f61d4953bfef20fb6abddf23b87111e6", submodules: true]}, - "nimble_parsec": {:hex, :nimble_parsec, "0.5.3", "def21c10a9ed70ce22754fdeea0810dafd53c2db3219a0cd54cf5526377af1c6", [:mix], [], "hexpm", "589b5af56f4afca65217a1f3eb3fee7e79b09c40c742fddc1c312b3ac0b3399f"}, + "nimble_parsec": {:hex, :nimble_parsec, "0.5.1", "c90796ecee0289dbb5ad16d3ad06f957b0cd1199769641c961cfe0b97db190e0", [:mix], [], "hexpm", "00e3ebdc821fb3a36957320d49e8f4bfa310d73ea31c90e5f925dc75e030da8f"}, "nodex": {:git, "https://git.pleroma.social/pleroma/nodex", "cb6730f943cfc6aad674c92161be23a8411f15d1", [ref: "cb6730f943cfc6aad674c92161be23a8411f15d1"]}, "oban": {:hex, :oban, "1.2.0", "7cca94d341be43d220571e28f69131c4afc21095b25257397f50973d3fc59b07", [:mix], [{:ecto_sql, "~> 3.1", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:postgrex, "~> 0.14", [hex: :postgrex, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ba5f8b3f7d76967b3e23cf8014f6a13e4ccb33431e4808f036709a7f822362ee"}, "open_api_spex": {:hex, :open_api_spex, "3.6.0", "64205aba9f2607f71b08fd43e3351b9c5e9898ec5ef49fc0ae35890da502ade9", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}, {:poison, "~> 3.1", [hex: :poison, repo: "hexpm", optional: true]}], "hexpm", "126ba3473966277132079cb1d5bf1e3df9e36fe2acd00166e75fd125cecb59c5"}, "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm", "17ef63abde837ad30680ea7f857dd9e7ced9476cdd7b0394432af4bfc241b960"}, "pbkdf2_elixir": {:hex, :pbkdf2_elixir, "0.12.4", "8dd29ed783f2e12195d7e0a4640effc0a7c37e6537da491f1db01839eee6d053", [:mix], [], "hexpm", "595d09db74cb093b1903381c9de423276a931a2480a46a1a5dc7f932a2a6375b"}, - "phoenix": {:hex, :phoenix, "1.4.13", "67271ad69b51f3719354604f4a3f968f83aa61c19199343656c9caee057ff3b8", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ab765a0feddb81fc62e2116c827b5f068df85159c162bee760745276ad7ddc1b"}, - "phoenix_ecto": {:hex, :phoenix_ecto, "4.1.0", "a044d0756d0464c5a541b4a0bf4bcaf89bffcaf92468862408290682c73ae50d", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "c5e666a341ff104d0399d8f0e4ff094559b2fde13a5985d4cb5023b2c2ac558b"}, - "phoenix_html": {:hex, :phoenix_html, "2.14.0", "d8c6bc28acc8e65f8ea0080ee05aa13d912c8758699283b8d3427b655aabe284", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b0bb30eda478a06dbfbe96728061a93833db3861a49ccb516f839ecb08493fbb"}, + "phoenix": {:hex, :phoenix, "1.4.10", "619e4a545505f562cd294df52294372d012823f4fd9d34a6657a8b242898c255", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "256ad7a140efadc3f0290470369da5bd3de985ec7c706eba07c2641b228974be"}, + "phoenix_ecto": {:hex, :phoenix_ecto, "4.0.0", "c43117a136e7399ea04ecaac73f8f23ee0ffe3e07acfcb8062fe5f4c9f0f6531", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "fe15d9fee5b82f5e64800502011ffe530650d42e1710ae9b14bc4c9be38bf303"}, + "phoenix_html": {:hex, :phoenix_html, "2.13.3", "850e292ff6e204257f5f9c4c54a8cb1f6fbc16ed53d360c2b780a3d0ba333867", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "8b01b3d6d39731ab18aa548d928b5796166d2500755f553725cfe967bafba7d9"}, "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.2", "496c303bdf1b2e98a9d26e89af5bba3ab487ba3a3735f74bf1f4064d2a845a3e", [:mix], [], "hexpm", "1f13f9f0f3e769a667a6b6828d29dec37497a082d195cc52dbef401a9b69bf38"}, "phoenix_swoosh": {:hex, :phoenix_swoosh, "0.2.0", "a7e0b32077cd6d2323ae15198839b05d9caddfa20663fd85787479e81f89520e", [:mix], [{:phoenix, "~> 1.0", [hex: :phoenix, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.2", [hex: :phoenix_html, repo: "hexpm", optional: false]}, {:swoosh, "~> 0.1", [hex: :swoosh, repo: "hexpm", optional: false]}], "hexpm", "ebf1bfa7b3c1c850c04929afe02e2e0d7ab135e0706332c865de03e761676b1f"}, "plug": {:hex, :plug, "1.9.0", "8d7c4e26962283ff9f8f3347bd73838e2413fbc38b7bb5467d5924f68f3a5a4a", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "9902eda2c52ada2a096434682e99a2493f5d06a94d6ac6bcfff9805f952350f1"}, - "plug_cowboy": {:hex, :plug_cowboy, "2.1.2", "8b0addb5908c5238fac38e442e81b6fcd32788eaa03246b4d55d147c47c5805e", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "7d722581ce865a237e14da6d946f92704101740a256bd13ec91e63c0b122fc70"}, - "plug_crypto": {:hex, :plug_crypto, "1.1.2", "bdd187572cc26dbd95b87136290425f2b580a116d3fb1f564216918c9730d227", [:mix], [], "hexpm", "6b8b608f895b6ffcfad49c37c7883e8df98ae19c6a28113b02aa1e9c5b22d6b5"}, + "plug_cowboy": {:hex, :plug_cowboy, "2.1.0", "b75768153c3a8a9e8039d4b25bb9b14efbc58e9c4a6e6a270abff1cd30cbe320", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "6cd8ddd1bd1fbfa54d3fc61d4719c2057dae67615395d58d40437a919a46f132"}, + "plug_crypto": {:hex, :plug_crypto, "1.0.0", "18e49317d3fa343f24620ed22795ec29d4a5e602d52d1513ccea0b07d8ea7d4d", [:mix], [], "hexpm", "73c1682f0e414cfb5d9b95c8e8cd6ffcfdae699e3b05e1db744e58b7be857759"}, "plug_static_index_html": {:hex, :plug_static_index_html, "1.0.0", "840123d4d3975585133485ea86af73cb2600afd7f2a976f9f5fd8b3808e636a0", [:mix], [{:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "79fd4fcf34d110605c26560cbae8f23c603ec4158c08298bd4360fdea90bb5cf"}, "poison": {:hex, :poison, "3.1.0", "d9eb636610e096f86f25d9a46f35a9facac35609a7591b3be3326e99a0484665", [:mix], [], "hexpm", "fec8660eb7733ee4117b85f55799fd3833eb769a6df71ccf8903e8dc5447cfce"}, "poolboy": {:hex, :poolboy, "1.5.2", "392b007a1693a64540cead79830443abf5762f5d30cf50bc95cb2c1aaafa006b", [:rebar3], [], "hexpm", "dad79704ce5440f3d5a3681c8590b9dc25d1a561e8f5a9c995281012860901e3"}, "postgrex": {:hex, :postgrex, "0.15.3", "5806baa8a19a68c4d07c7a624ccdb9b57e89cbc573f1b98099e3741214746ae4", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "4737ce62a31747b4c63c12b20c62307e51bb4fcd730ca0c32c280991e0606c90"}, - "prometheus": {:hex, :prometheus, "4.5.0", "8f4a2246fe0beb50af0f77c5e0a5bb78fe575c34a9655d7f8bc743aad1c6bf76", [:mix, :rebar3], [], "hexpm", "679b5215480fff612b8351f45c839d995a07ce403e42ff02f1c6b20960d41a4e"}, + "prometheus": {:hex, :prometheus, "4.4.1", "1e96073b3ed7788053768fea779cbc896ddc3bdd9ba60687f2ad50b252ac87d6", [:mix, :rebar3], [], "hexpm", "d39f2ce1f3f29f3bf04f915aa3cf9c7cd4d2cee2f975e05f526e06cae9b7c902"}, "prometheus_ecto": {:hex, :prometheus_ecto, "1.4.3", "3dd4da1812b8e0dbee81ea58bb3b62ed7588f2eae0c9e97e434c46807ff82311", [:mix], [{:ecto, "~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "8d66289f77f913b37eda81fd287340c17e61a447549deb28efc254532b2bed82"}, "prometheus_ex": {:hex, :prometheus_ex, "3.0.5", "fa58cfd983487fc5ead331e9a3e0aa622c67232b3ec71710ced122c4c453a02f", [:mix], [{:prometheus, "~> 4.0", [hex: :prometheus, repo: "hexpm", optional: false]}], "hexpm", "9fd13404a48437e044b288b41f76e64acd9735fb8b0e3809f494811dfa66d0fb"}, "prometheus_phoenix": {:hex, :prometheus_phoenix, "1.3.0", "c4b527e0b3a9ef1af26bdcfbfad3998f37795b9185d475ca610fe4388fdd3bb5", [:mix], [{:phoenix, "~> 1.4", [hex: :phoenix, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.3 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "c4d1404ac4e9d3d963da601db2a7d8ea31194f0017057fabf0cfb9bf5a6c8c75"}, "prometheus_plugs": {:hex, :prometheus_plugs, "1.1.5", "25933d48f8af3a5941dd7b621c889749894d8a1082a6ff7c67cc99dec26377c5", [:mix], [{:accept, "~> 0.1", [hex: :accept, repo: "hexpm", optional: false]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}, {:prometheus_process_collector, "~> 1.1", [hex: :prometheus_process_collector, repo: "hexpm", optional: true]}], "hexpm", "0273a6483ccb936d79ca19b0ab629aef0dba958697c94782bb728b920dfc6a79"}, "quack": {:hex, :quack, "0.1.1", "cca7b4da1a233757fdb44b3334fce80c94785b3ad5a602053b7a002b5a8967bf", [:mix], [{:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: false]}, {:tesla, "~> 1.2.0", [hex: :tesla, repo: "hexpm", optional: false]}], "hexpm", "d736bfa7444112eb840027bb887832a0e403a4a3437f48028c3b29a2dbbd2543"}, + "quantum": {:hex, :quantum, "2.3.4", "72a0e8855e2adc101459eac8454787cb74ab4169de6ca50f670e72142d4960e9", [:mix], [{:calendar, "~> 0.17", [hex: :calendar, repo: "hexpm", optional: true]}, {:crontab, "~> 1.1", [hex: :crontab, repo: "hexpm", optional: false]}, {:gen_stage, "~> 0.12", [hex: :gen_stage, repo: "hexpm", optional: false]}, {:swarm, "~> 3.3", [hex: :swarm, repo: "hexpm", optional: false]}, {:timex, "~> 3.1", [hex: :timex, repo: "hexpm", optional: true]}], "hexpm", "6de553ba9ac0668d3728b699d5065543f3e40c854154017461ee8c09038752da"}, "ranch": {:hex, :ranch, "1.7.1", "6b1fab51b49196860b733a49c07604465a47bdb78aa10c1c16a3d199f7f8c881", [:rebar3], [], "hexpm", "451d8527787df716d99dc36162fca05934915db0b6141bbdac2ea8d3c7afc7d7"}, "recon": {:hex, :recon, "2.5.0", "2f7fcbec2c35034bade2f9717f77059dc54eb4e929a3049ca7ba6775c0bd66cd", [:mix, :rebar3], [], "hexpm", "72f3840fedd94f06315c523f6cecf5b4827233bed7ae3fe135b2a0ebeab5e196"}, "remote_ip": {:git, "https://git.pleroma.social/pleroma/remote_ip.git", "b647d0deecaa3acb140854fe4bda5b7e1dc6d1c8", [ref: "b647d0deecaa3acb140854fe4bda5b7e1dc6d1c8"]}, "sleeplocks": {:hex, :sleeplocks, "1.1.1", "3d462a0639a6ef36cc75d6038b7393ae537ab394641beb59830a1b8271faeed3", [:rebar3], [], "hexpm", "84ee37aeff4d0d92b290fff986d6a95ac5eedf9b383fadfd1d88e9b84a1c02e1"}, "ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.5", "6eaf7ad16cb568bb01753dbbd7a95ff8b91c7979482b95f38443fe2c8852a79b", [:make, :mix, :rebar3], [], "hexpm", "13104d7897e38ed7f044c4de953a6c28597d1c952075eb2e328bc6d6f2bfc496"}, + "swarm": {:hex, :swarm, "3.4.0", "64f8b30055d74640d2186c66354b33b999438692a91be275bb89cdc7e401f448", [:mix], [{:gen_state_machine, "~> 2.0", [hex: :gen_state_machine, repo: "hexpm", optional: false]}, {:libring, "~> 1.0", [hex: :libring, repo: "hexpm", optional: false]}], "hexpm", "94884f84783fc1ba027aba8fe8a7dae4aad78c98e9f9c76667ec3471585c08c6"}, "sweet_xml": {:hex, :sweet_xml, "0.6.6", "fc3e91ec5dd7c787b6195757fbcf0abc670cee1e4172687b45183032221b66b8", [:mix], [], "hexpm", "2e1ec458f892ffa81f9f8386e3f35a1af6db7a7a37748a64478f13163a1f3573"}, "swoosh": {:hex, :swoosh, "0.23.5", "bfd9404bbf5069b1be2ffd317923ce57e58b332e25dbca2a35dedd7820dfee5a", [:mix], [{:cowboy, "~> 1.0.1 or ~> 1.1 or ~> 2.4", [hex: :cowboy, repo: "hexpm", optional: true]}, {:gen_smtp, "~> 0.13", [hex: :gen_smtp, repo: "hexpm", optional: true]}, {:hackney, "~> 1.9", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:mail, "~> 0.2", [hex: :mail, repo: "hexpm", optional: true]}, {:mime, "~> 1.1", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_cowboy, ">= 1.0.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}], "hexpm", "e3928e1d2889a308aaf3e42755809ac21cffd77cb58eef01cbfdab4ce2fd1e21"}, "syslog": {:hex, :syslog, "1.0.6", "995970c9aa7feb380ac493302138e308d6e04fd57da95b439a6df5bb3bf75076", [:rebar3], [], "hexpm", "769ddfabd0d2a16f3f9c17eb7509951e0ca4f68363fb26f2ee51a8ec4a49881a"}, diff --git a/priv/repo/migrations/20200415181818_update_markers.exs b/priv/repo/migrations/20200415181818_update_markers.exs new file mode 100644 index 000000000..976363565 --- /dev/null +++ b/priv/repo/migrations/20200415181818_update_markers.exs @@ -0,0 +1,40 @@ +defmodule Pleroma.Repo.Migrations.UpdateMarkers do + use Ecto.Migration + import Ecto.Query + alias Pleroma.Repo + + def up do + update_markers() + end + + def down do + :ok + end + + defp update_markers do + now = NaiveDateTime.utc_now() + + markers_attrs = + from(q in "notifications", + select: %{ + timeline: "notifications", + user_id: q.user_id, + last_read_id: + type(fragment("MAX( CASE WHEN seen = true THEN id ELSE null END )"), :string) + }, + group_by: [q.user_id] + ) + |> Repo.all() + |> Enum.map(fn %{last_read_id: last_read_id} = attrs -> + attrs + |> Map.put(:last_read_id, last_read_id || "") + |> Map.put_new(:inserted_at, now) + |> Map.put_new(:updated_at, now) + end) + + Repo.insert_all("markers", markers_attrs, + on_conflict: {:replace, [:last_read_id]}, + conflict_target: [:user_id, :timeline] + ) + end +end diff --git a/test/marker_test.exs b/test/marker_test.exs index c80ae16b6..5b6d0b4a4 100644 --- a/test/marker_test.exs +++ b/test/marker_test.exs @@ -8,12 +8,39 @@ defmodule Pleroma.MarkerTest do import Pleroma.Factory + describe "multi_set_unread_count/3" do + test "returns multi" do + user = insert(:user) + + assert %Ecto.Multi{ + operations: [marker: {:run, _}, counters: {:run, _}] + } = + Marker.multi_set_last_read_id( + Ecto.Multi.new(), + user, + "notifications" + ) + end + + test "return empty multi" do + user = insert(:user) + multi = Ecto.Multi.new() + assert Marker.multi_set_last_read_id(multi, user, "home") == multi + end + end + describe "get_markers/2" do test "returns user markers" do user = insert(:user) marker = insert(:marker, user: user) + insert(:notification, user: user) + insert(:notification, user: user) insert(:marker, timeline: "home", user: user) - assert Marker.get_markers(user, ["notifications"]) == [refresh_record(marker)] + + assert Marker.get_markers( + user, + ["notifications"] + ) == [%Marker{refresh_record(marker) | unread_count: 2}] end end diff --git a/test/notification_test.exs b/test/notification_test.exs index 837a9dacd..f78a47af6 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -45,6 +45,9 @@ test "notifies someone when they are directly addressed" do assert notified_ids == [other_user.id, third_user.id] assert notification.activity_id == activity.id assert other_notification.activity_id == activity.id + + assert [%Pleroma.Marker{unread_count: 2}] = + Pleroma.Marker.get_markers(other_user, ["notifications"]) end test "it creates a notification for subscribed users" do @@ -410,6 +413,16 @@ test "it sets all notifications as read up to a specified notification ID" do assert n1.seen == true assert n2.seen == true assert n3.seen == false + + assert %Pleroma.Marker{} = + m = + Pleroma.Repo.get_by( + Pleroma.Marker, + user_id: other_user.id, + timeline: "notifications" + ) + + assert m.last_read_id == to_string(n2.id) end end diff --git a/test/web/mastodon_api/controllers/marker_controller_test.exs b/test/web/mastodon_api/controllers/marker_controller_test.exs index 919f295bd..7280abd10 100644 --- a/test/web/mastodon_api/controllers/marker_controller_test.exs +++ b/test/web/mastodon_api/controllers/marker_controller_test.exs @@ -11,6 +11,7 @@ defmodule Pleroma.Web.MastodonAPI.MarkerControllerTest do test "gets markers with correct scopes", %{conn: conn} do user = insert(:user) token = insert(:oauth_token, user: user, scopes: ["read:statuses"]) + insert_list(7, :notification, user: user) {:ok, %{"notifications" => marker}} = Pleroma.Marker.upsert( @@ -29,7 +30,8 @@ test "gets markers with correct scopes", %{conn: conn} do "notifications" => %{ "last_read_id" => "69420", "updated_at" => NaiveDateTime.to_iso8601(marker.updated_at), - "version" => 0 + "version" => 0, + "pleroma" => %{"unread_count" => 7} } } end @@ -70,7 +72,8 @@ test "creates a marker with correct scopes", %{conn: conn} do "notifications" => %{ "last_read_id" => "69420", "updated_at" => _, - "version" => 0 + "version" => 0, + "pleroma" => %{"unread_count" => 0} } } = response end @@ -99,7 +102,8 @@ test "updates exist marker", %{conn: conn} do "notifications" => %{ "last_read_id" => "69888", "updated_at" => NaiveDateTime.to_iso8601(marker.updated_at), - "version" => 0 + "version" => 0, + "pleroma" => %{"unread_count" => 0} } } end diff --git a/test/web/mastodon_api/views/marker_view_test.exs b/test/web/mastodon_api/views/marker_view_test.exs index 893cf8857..48a0a6d33 100644 --- a/test/web/mastodon_api/views/marker_view_test.exs +++ b/test/web/mastodon_api/views/marker_view_test.exs @@ -8,19 +8,21 @@ defmodule Pleroma.Web.MastodonAPI.MarkerViewTest do import Pleroma.Factory test "returns markers" do - marker1 = insert(:marker, timeline: "notifications", last_read_id: "17") + marker1 = insert(:marker, timeline: "notifications", last_read_id: "17", unread_count: 5) marker2 = insert(:marker, timeline: "home", last_read_id: "42") assert MarkerView.render("markers.json", %{markers: [marker1, marker2]}) == %{ "home" => %{ last_read_id: "42", updated_at: NaiveDateTime.to_iso8601(marker2.updated_at), - version: 0 + version: 0, + pleroma: %{unread_count: 0} }, "notifications" => %{ last_read_id: "17", updated_at: NaiveDateTime.to_iso8601(marker1.updated_at), - version: 0 + version: 0, + pleroma: %{unread_count: 5} } } end From b03aeae8b935b0a211c51cc3be5f1c15591f5a2f Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Wed, 22 Apr 2020 15:31:41 +0000 Subject: [PATCH 007/156] Apply suggestion to lib/pleroma/notification.ex --- lib/pleroma/notification.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index d305a43ba..aaa675253 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -362,7 +362,7 @@ def get_notified_from_activity(%Activity{data: %{"type" => type}} = activity, lo def get_notified_from_activity(_, _local_only), do: {[], []} - @doc "Filters out AP IDs of users who domain-block and not follow activity actor" + @doc "Filters out AP IDs domain-blocking and not following the activity's actor" def exclude_domain_blocker_ap_ids(ap_ids, activity, preloaded_users \\ []) def exclude_domain_blocker_ap_ids([], _activity, _preloaded_users), do: [] From 3635a9c9c25db16be292c5f56c27ab5d5f5affb5 Mon Sep 17 00:00:00 2001 From: lain Date: Mon, 27 Apr 2020 14:28:08 +0200 Subject: [PATCH 008/156] InstanceController: Add extensions to `/api/v1/instance` --- .../web/mastodon_api/views/instance_view.ex | 58 ++++++++++++++++++- .../web/nodeinfo/nodeinfo_controller.ex | 47 ++------------- .../controllers/instance_controller_test.exs | 4 ++ 3 files changed, 64 insertions(+), 45 deletions(-) diff --git a/lib/pleroma/web/mastodon_api/views/instance_view.ex b/lib/pleroma/web/mastodon_api/views/instance_view.ex index 67214dbea..a329ffc28 100644 --- a/lib/pleroma/web/mastodon_api/views/instance_view.ex +++ b/lib/pleroma/web/mastodon_api/views/instance_view.ex @@ -5,10 +5,13 @@ defmodule Pleroma.Web.MastodonAPI.InstanceView do use Pleroma.Web, :view + alias Pleroma.Config + alias Pleroma.Web.ActivityPub.MRF + @mastodon_api_level "2.7.2" def render("show.json", _) do - instance = Pleroma.Config.get(:instance) + instance = Config.get(:instance) %{ uri: Pleroma.Web.base_url(), @@ -29,7 +32,58 @@ def render("show.json", _) do upload_limit: Keyword.get(instance, :upload_limit), avatar_upload_limit: Keyword.get(instance, :avatar_upload_limit), background_upload_limit: Keyword.get(instance, :background_upload_limit), - banner_upload_limit: Keyword.get(instance, :banner_upload_limit) + banner_upload_limit: Keyword.get(instance, :banner_upload_limit), + pleroma: %{ + metadata: %{ + features: features(), + federation: federation() + }, + vapid_public_key: Keyword.get(Pleroma.Web.Push.vapid_config(), :public_key) + } } end + + def features do + [ + "pleroma_api", + "mastodon_api", + "mastodon_api_streaming", + "polls", + "pleroma_explicit_addressing", + "shareable_emoji_packs", + "multifetch", + "pleroma:api/v1/notifications:include_types_filter", + if Config.get([:media_proxy, :enabled]) do + "media_proxy" + end, + if Config.get([:gopher, :enabled]) do + "gopher" + end, + if Config.get([:chat, :enabled]) do + "chat" + end, + if Config.get([:instance, :allow_relay]) do + "relay" + end, + if Config.get([:instance, :safe_dm_mentions]) do + "safe_dm_mentions" + end, + "pleroma_emoji_reactions" + ] + |> Enum.filter(& &1) + end + + def federation do + quarantined = Config.get([:instance, :quarantined_instances], []) + + if Config.get([:instance, :mrf_transparency]) do + {:ok, data} = MRF.describe() + + data + |> Map.merge(%{quarantined_instances: quarantined}) + else + %{} + end + |> Map.put(:enabled, Config.get([:instance, :federating])) + end end diff --git a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex index f9a5ddcc0..721b599d4 100644 --- a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex +++ b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex @@ -9,8 +9,8 @@ defmodule Pleroma.Web.Nodeinfo.NodeinfoController do alias Pleroma.Stats alias Pleroma.User alias Pleroma.Web - alias Pleroma.Web.ActivityPub.MRF alias Pleroma.Web.Federator.Publisher + alias Pleroma.Web.MastodonAPI.InstanceView def schemas(conn, _params) do response = %{ @@ -34,51 +34,12 @@ def schemas(conn, _params) do def raw_nodeinfo do stats = Stats.get_stats() - quarantined = Config.get([:instance, :quarantined_instances], []) - staff_accounts = User.all_superusers() |> Enum.map(fn u -> u.ap_id end) - federation_response = - if Config.get([:instance, :mrf_transparency]) do - {:ok, data} = MRF.describe() - - data - |> Map.merge(%{quarantined_instances: quarantined}) - else - %{} - end - |> Map.put(:enabled, Config.get([:instance, :federating])) - - features = - [ - "pleroma_api", - "mastodon_api", - "mastodon_api_streaming", - "polls", - "pleroma_explicit_addressing", - "shareable_emoji_packs", - "multifetch", - "pleroma:api/v1/notifications:include_types_filter", - if Config.get([:media_proxy, :enabled]) do - "media_proxy" - end, - if Config.get([:gopher, :enabled]) do - "gopher" - end, - if Config.get([:chat, :enabled]) do - "chat" - end, - if Config.get([:instance, :allow_relay]) do - "relay" - end, - if Config.get([:instance, :safe_dm_mentions]) do - "safe_dm_mentions" - end, - "pleroma_emoji_reactions" - ] - |> Enum.filter(& &1) + features = InstanceView.features() + federation = InstanceView.federation() %{ version: "2.0", @@ -106,7 +67,7 @@ def raw_nodeinfo do enabled: false }, staffAccounts: staff_accounts, - federation: federation_response, + federation: federation, pollLimits: Config.get([:instance, :poll_limits]), postFormats: Config.get([:instance, :allowed_post_formats]), uploadLimits: %{ diff --git a/test/web/mastodon_api/controllers/instance_controller_test.exs b/test/web/mastodon_api/controllers/instance_controller_test.exs index 2737dcaba..2c7fd9fd0 100644 --- a/test/web/mastodon_api/controllers/instance_controller_test.exs +++ b/test/web/mastodon_api/controllers/instance_controller_test.exs @@ -34,6 +34,10 @@ test "get instance information", %{conn: conn} do "banner_upload_limit" => _ } = result + assert result["pleroma"]["metadata"]["features"] + assert result["pleroma"]["metadata"]["federation"] + assert result["pleroma"]["vapid_public_key"] + assert email == from_config_email end From 4cadaf7e96bed51545d82deb86b5554cd009020e Mon Sep 17 00:00:00 2001 From: lain Date: Mon, 27 Apr 2020 14:33:21 +0200 Subject: [PATCH 009/156] Docs: Add `/api/v1/instance` information --- docs/API/differences_in_mastoapi_responses.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/API/differences_in_mastoapi_responses.md b/docs/API/differences_in_mastoapi_responses.md index 41ceda26b..d0a776ebf 100644 --- a/docs/API/differences_in_mastoapi_responses.md +++ b/docs/API/differences_in_mastoapi_responses.md @@ -191,3 +191,17 @@ Has theses additional parameters (which are the same as in Pleroma-API): - `captcha_solution`: optional, contains provider-specific captcha solution, - `captcha_token`: optional, contains provider-specific captcha token - `token`: invite token required when the registrations aren't public. + +## Instance + +`GET /api/v1/instance` has additional fields + +- `max_toot_chars`: The maximum characters per post +- `poll_limits`: The limits of polls +- `upload_limit`: The maximum upload file size +- `avatar_upload_limit`: The same for avatars +- `background_upload_limit`: The same for backgrounds +- `banner_upload_limit`: The same for banners +- `pleroma.metadata.features`: A list of supported features +- `pleroma.metadata.federation`: The federation restrictions of this instance +- `vapid_public_key`: The public key needed for push messages From 5a3a5abc0c3315cba1ed3694e8a2876da8a5d294 Mon Sep 17 00:00:00 2001 From: lain Date: Mon, 27 Apr 2020 14:35:12 +0200 Subject: [PATCH 010/156] Changelog: Add info about `/api/v1/instance` changes --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ccc6a5bd4..b98d4fc63 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - **Breaking:** removed `with_move` parameter from notifications timeline. ### Added +- Instance: Extend `/api/v1/instance` with Pleroma-specific information. - NodeInfo: `pleroma:api/v1/notifications:include_types_filter` to the `features` list. - NodeInfo: `pleroma_emoji_reactions` to the `features` list. - Configuration: `:restrict_unauthenticated` setting, restrict access for unauthenticated users to timelines (public and federate), user profiles and statuses. @@ -17,6 +18,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Added `:reject_deletes` group to SimplePolicy
API Changes +- Mastodon API: Extended `/api/v1/instance`. - Mastodon API: Support for `include_types` in `/api/v1/notifications`. - Mastodon API: Added `/api/v1/notifications/:id/dismiss` endpoint. - Mastodon API: Add support for filtering replies in public and home timelines From 270c3fe446a374202b6d64ce487f7df29ecb1c14 Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Tue, 28 Apr 2020 06:45:59 +0300 Subject: [PATCH 011/156] fix markdown format --- docs/API/differences_in_mastoapi_responses.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/API/differences_in_mastoapi_responses.md b/docs/API/differences_in_mastoapi_responses.md index 0a7520f9e..a56a74064 100644 --- a/docs/API/differences_in_mastoapi_responses.md +++ b/docs/API/differences_in_mastoapi_responses.md @@ -185,11 +185,11 @@ Post here request with `grant_type=refresh_token` to obtain new access token. Re Has theses additional parameters (which are the same as in Pleroma-API): - `fullname`: optional - `bio`: optional - `captcha_solution`: optional, contains provider-specific captcha solution, - `captcha_token`: optional, contains provider-specific captcha token - `token`: invite token required when the registrations aren't public. +- `fullname`: optional +- `bio`: optional +- `captcha_solution`: optional, contains provider-specific captcha solution, +- `captcha_token`: optional, contains provider-specific captcha token +- `token`: invite token required when the registrations aren't public. ## Markers From ea5142b94bcd1a02571776440dc828dd08a2c3d6 Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Tue, 28 Apr 2020 09:32:43 +0300 Subject: [PATCH 012/156] convert markdown content to html --- .../web/activity_pub/transmogrifier.ex | 15 +- test/fixtures/tesla_mock/bittube-video.json | 1 - test/fixtures/tesla_mock/craigmaloney.json | 112 +++++++++ test/fixtures/tesla_mock/hanimated.json | 1 - test/fixtures/tesla_mock/peertube-social.json | 234 ++++++++++++++++++ test/support/http_request_mock.ex | 8 +- test/web/activity_pub/transmogrifier_test.exs | 19 +- 7 files changed, 375 insertions(+), 15 deletions(-) delete mode 100644 test/fixtures/tesla_mock/bittube-video.json create mode 100644 test/fixtures/tesla_mock/craigmaloney.json delete mode 100644 test/fixtures/tesla_mock/hanimated.json create mode 100644 test/fixtures/tesla_mock/peertube-social.json diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index 17e3c203a..91933dc0f 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -7,6 +7,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do A module to handle coding from internal to wire ActivityPub and back. """ alias Pleroma.Activity + alias Pleroma.EarmarkRenderer alias Pleroma.FollowingRelationship alias Pleroma.Object alias Pleroma.Object.Containment @@ -35,7 +36,6 @@ def fix_object(object, options \\ []) do |> fix_actor |> fix_url |> fix_attachments - |> fix_media_type |> fix_context |> fix_in_reply_to(options) |> fix_emoji @@ -44,6 +44,7 @@ def fix_object(object, options \\ []) do |> fix_addressing |> fix_summary |> fix_type(options) + |> fix_content end def fix_summary(%{"summary" => nil} = object) do @@ -358,11 +359,17 @@ def fix_type(%{"inReplyTo" => reply_id, "name" => _} = object, options) def fix_type(object, _), do: object - defp fix_media_type(%{"mediaType" => _} = object) do - Map.put(object, "mediaType", "text/html") + defp fix_content(%{"mediaType" => "text/markdown", "content" => content} = object) + when is_binary(content) do + html_content = + content + |> Earmark.as_html!(%Earmark.Options{renderer: EarmarkRenderer}) + |> Pleroma.HTML.filter_tags() + + Map.merge(object, %{"content" => html_content, "mediaType" => "text/html"}) end - defp fix_media_type(object), do: object + defp fix_content(object), do: object defp mastodon_follow_hack(%{"id" => id, "actor" => follower_id}, followed) do with true <- id =~ "follows", diff --git a/test/fixtures/tesla_mock/bittube-video.json b/test/fixtures/tesla_mock/bittube-video.json deleted file mode 100644 index be839862f..000000000 --- a/test/fixtures/tesla_mock/bittube-video.json +++ /dev/null @@ -1 +0,0 @@ -{"type":"Video","id":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b","name":"Implications of 5G Rollout Simply Explained","duration":"PT428S","uuid":"2aad7dfb-5c75-4ee6-a9ed-08436af0558b","tag":[{"type":"Hashtag","name":"5g"},{"type":"Hashtag","name":"big brother"},{"type":"Hashtag","name":"facial recognition"},{"type":"Hashtag","name":"smart device"}],"category":{"identifier":"15","name":"Science & Technology"},"language":{"identifier":"en","name":"English"},"views":5,"sensitive":false,"waitTranscoding":true,"state":1,"commentsEnabled":true,"downloadEnabled":true,"published":"2020-04-12T11:55:44.805Z","originallyPublishedAt":null,"updated":"2020-04-13T02:01:24.279Z","mediaType":"text/markdown","content":null,"support":null,"subtitleLanguage":[],"icon":{"type":"Image","url":"https://bittube.video/static/thumbnails/2aad7dfb-5c75-4ee6-a9ed-08436af0558b.jpg","mediaType":"image/jpeg","width":223,"height":122},"url":[{"type":"Link","mediaType":"text/html","href":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b"},{"type":"Link","mediaType":"video/mp4","href":"https://bittube.video/static/webseed/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.mp4","height":240,"size":17158094,"fps":30},{"type":"Link","mediaType":"application/x-bittorrent","href":"https://bittube.video/static/torrents/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.torrent","height":240},{"type":"Link","mediaType":"application/x-bittorrent;x-scheme-handler/magnet","href":"magnet:?xs=https%3A%2F%2Fbittube.video%2Fstatic%2Ftorrents%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.torrent&xt=urn:btih:16c8f60d788a29e7ff195de44b4a1558b41dc6c3&dn=Implications+of+5G+Rollout+Simply+Explained&tr=wss%3A%2F%2Fbittube.video%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fbittube.video%2Ftracker%2Fannounce&ws=https%3A%2F%2Fbittube.video%2Fstatic%2Fwebseed%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-240.mp4","height":240},{"type":"Link","mediaType":"video/mp4","href":"https://bittube.video/static/webseed/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.mp4","height":0,"size":5215186,"fps":0},{"type":"Link","mediaType":"application/x-bittorrent","href":"https://bittube.video/static/torrents/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.torrent","height":0},{"type":"Link","mediaType":"application/x-bittorrent;x-scheme-handler/magnet","href":"magnet:?xs=https%3A%2F%2Fbittube.video%2Fstatic%2Ftorrents%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.torrent&xt=urn:btih:8a043b09291f2947423ce96d1cd0e977662d6de8&dn=Implications+of+5G+Rollout+Simply+Explained&tr=wss%3A%2F%2Fbittube.video%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fbittube.video%2Ftracker%2Fannounce&ws=https%3A%2F%2Fbittube.video%2Fstatic%2Fwebseed%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-0.mp4","height":0},{"type":"Link","mediaType":"video/mp4","href":"https://bittube.video/static/webseed/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.mp4","height":360,"size":22813140,"fps":30},{"type":"Link","mediaType":"application/x-bittorrent","href":"https://bittube.video/static/torrents/2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.torrent","height":360},{"type":"Link","mediaType":"application/x-bittorrent;x-scheme-handler/magnet","href":"magnet:?xs=https%3A%2F%2Fbittube.video%2Fstatic%2Ftorrents%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.torrent&xt=urn:btih:d121f7493998d4204b3d33d00da7fea1c9a42484&dn=Implications+of+5G+Rollout+Simply+Explained&tr=wss%3A%2F%2Fbittube.video%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fbittube.video%2Ftracker%2Fannounce&ws=https%3A%2F%2Fbittube.video%2Fstatic%2Fwebseed%2F2aad7dfb-5c75-4ee6-a9ed-08436af0558b-360.mp4","height":360}],"likes":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/likes","dislikes":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/dislikes","shares":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/announces","comments":"https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b/comments","attributedTo":[{"type":"Person","id":"https://bittube.video/accounts/hanimated.moh"},{"type":"Group","id":"https://bittube.video/video-channels/hanimated.moh_channel"}],"to":["https://www.w3.org/ns/activitystreams#Public"],"cc":["https://bittube.video/accounts/hanimated.moh/followers"],"@context":["https://www.w3.org/ns/activitystreams","https://w3id.org/security/v1",{"RsaSignature2017":"https://w3id.org/security#RsaSignature2017","pt":"https://joinpeertube.org/ns#","sc":"http://schema.org#","Hashtag":"as:Hashtag","uuid":"sc:identifier","category":"sc:category","licence":"sc:license","subtitleLanguage":"sc:subtitleLanguage","sensitive":"as:sensitive","language":"sc:inLanguage","expires":"sc:expires","CacheFile":"pt:CacheFile","Infohash":"pt:Infohash","originallyPublishedAt":"sc:datePublished","views":{"@type":"sc:Number","@id":"pt:views"},"state":{"@type":"sc:Number","@id":"pt:state"},"size":{"@type":"sc:Number","@id":"pt:size"},"fps":{"@type":"sc:Number","@id":"pt:fps"},"startTimestamp":{"@type":"sc:Number","@id":"pt:startTimestamp"},"stopTimestamp":{"@type":"sc:Number","@id":"pt:stopTimestamp"},"position":{"@type":"sc:Number","@id":"pt:position"},"commentsEnabled":{"@type":"sc:Boolean","@id":"pt:commentsEnabled"},"downloadEnabled":{"@type":"sc:Boolean","@id":"pt:downloadEnabled"},"waitTranscoding":{"@type":"sc:Boolean","@id":"pt:waitTranscoding"},"support":{"@type":"sc:Text","@id":"pt:support"}},{"likes":{"@id":"as:likes","@type":"@id"},"dislikes":{"@id":"as:dislikes","@type":"@id"},"playlists":{"@id":"pt:playlists","@type":"@id"},"shares":{"@id":"as:shares","@type":"@id"},"comments":{"@id":"as:comments","@type":"@id"}}]} diff --git a/test/fixtures/tesla_mock/craigmaloney.json b/test/fixtures/tesla_mock/craigmaloney.json new file mode 100644 index 000000000..56ea9c7c3 --- /dev/null +++ b/test/fixtures/tesla_mock/craigmaloney.json @@ -0,0 +1,112 @@ +{ + "@context": [ + "https://www.w3.org/ns/activitystreams", + "https://w3id.org/security/v1", + { + "CacheFile": "pt:CacheFile", + "Hashtag": "as:Hashtag", + "Infohash": "pt:Infohash", + "RsaSignature2017": "https://w3id.org/security#RsaSignature2017", + "category": "sc:category", + "commentsEnabled": { + "@id": "pt:commentsEnabled", + "@type": "sc:Boolean" + }, + "downloadEnabled": { + "@id": "pt:downloadEnabled", + "@type": "sc:Boolean" + }, + "expires": "sc:expires", + "fps": { + "@id": "pt:fps", + "@type": "sc:Number" + }, + "language": "sc:inLanguage", + "licence": "sc:license", + "originallyPublishedAt": "sc:datePublished", + "position": { + "@id": "pt:position", + "@type": "sc:Number" + }, + "pt": "https://joinpeertube.org/ns#", + "sc": "http://schema.org#", + "sensitive": "as:sensitive", + "size": { + "@id": "pt:size", + "@type": "sc:Number" + }, + "startTimestamp": { + "@id": "pt:startTimestamp", + "@type": "sc:Number" + }, + "state": { + "@id": "pt:state", + "@type": "sc:Number" + }, + "stopTimestamp": { + "@id": "pt:stopTimestamp", + "@type": "sc:Number" + }, + "subtitleLanguage": "sc:subtitleLanguage", + "support": { + "@id": "pt:support", + "@type": "sc:Text" + }, + "uuid": "sc:identifier", + "views": { + "@id": "pt:views", + "@type": "sc:Number" + }, + "waitTranscoding": { + "@id": "pt:waitTranscoding", + "@type": "sc:Boolean" + } + }, + { + "comments": { + "@id": "as:comments", + "@type": "@id" + }, + "dislikes": { + "@id": "as:dislikes", + "@type": "@id" + }, + "likes": { + "@id": "as:likes", + "@type": "@id" + }, + "playlists": { + "@id": "pt:playlists", + "@type": "@id" + }, + "shares": { + "@id": "as:shares", + "@type": "@id" + } + } + ], + "endpoints": { + "sharedInbox": "https://peertube.social/inbox" + }, + "followers": "https://peertube.social/accounts/craigmaloney/followers", + "following": "https://peertube.social/accounts/craigmaloney/following", + "icon": { + "mediaType": "image/png", + "type": "Image", + "url": "https://peertube.social/lazy-static/avatars/87bd694b-95bc-4066-83f4-bddfcd2b9caa.png" + }, + "id": "https://peertube.social/accounts/craigmaloney", + "inbox": "https://peertube.social/accounts/craigmaloney/inbox", + "name": "Craig Maloney", + "outbox": "https://peertube.social/accounts/craigmaloney/outbox", + "playlists": "https://peertube.social/accounts/craigmaloney/playlists", + "preferredUsername": "craigmaloney", + "publicKey": { + "id": "https://peertube.social/accounts/craigmaloney#main-key", + "owner": "https://peertube.social/accounts/craigmaloney", + "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9qvGIYUW01yc8CCsrwxK\n5OXlV5s7EbNWY8tJr/p1oGuELZwAnG2XKxtdbvgcCT+YxL5uRXIdCFIIIKrzRFr/\nHfS0mOgNT9u3gu+SstCNgtatciT0RVP77yiC3b2NHq1NRRvvVhzQb4cpIWObIxqh\nb2ypDClTc7XaKtgmQCbwZlGyZMT+EKz/vustD6BlpGsglRkm7iES6s1PPGb1BU+n\nS94KhbS2DOFiLcXCVWt0QarokIIuKznp4+xP1axKyP+SkT5AHx08Nd5TYFb2C1Jl\nz0WD/1q0mAN62m7QrA3SQPUgB+wWD+S3Nzf7FwNPiP4srbBgxVEUnji/r9mQ6BXC\nrQIDAQAB\n-----END PUBLIC KEY-----" + }, + "summary": null, + "type": "Person", + "url": "https://peertube.social/accounts/craigmaloney" +} diff --git a/test/fixtures/tesla_mock/hanimated.json b/test/fixtures/tesla_mock/hanimated.json deleted file mode 100644 index 564deebd9..000000000 --- a/test/fixtures/tesla_mock/hanimated.json +++ /dev/null @@ -1 +0,0 @@ -{"type":"Person","id":"https://bittube.video/accounts/hanimated.moh","following":"https://bittube.video/accounts/hanimated.moh/following","followers":"https://bittube.video/accounts/hanimated.moh/followers","playlists":"https://bittube.video/accounts/hanimated.moh/playlists","inbox":"https://bittube.video/accounts/hanimated.moh/inbox","outbox":"https://bittube.video/accounts/hanimated.moh/outbox","preferredUsername":"hanimated.moh","url":"https://bittube.video/accounts/hanimated.moh","name":"Nosat","endpoints":{"sharedInbox":"https://bittube.video/inbox"},"publicKey":{"id":"https://bittube.video/accounts/hanimated.moh#main-key","owner":"https://bittube.video/accounts/hanimated.moh","publicKeyPem":"-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwuoQT+4uyAboQcf/okCM\nFqUS/LuqFc2888OSKZFAz00Op/dyOB/pkr1+QLxbl8ZGiUWhmnmhNwmmd3tbhSsC\nvLv9Mz/YaWQPYLfRS/s/7iIxdniC4lo/YgicOrzcvetHmk1feOg5vb5/yc+bgUSm\nOk+L4azqXP9GmZyofzvufT65bUmzQRFXP19eL55YZWvZDaC81QAfRXsqtCqbehtF\nQNOjGhnl6a7Kfe8KprRDPV/3WvvFjftnNO2qenIIOFLLeznkQ0ELP6lyb9pvv/1C\n2/GRh2BwmgVlCTw1kTxLSdj80BFX5P8AudSiIx079lVkhamEhzsNLkMpQFqWAAlg\nrQIDAQAB\n-----END PUBLIC KEY-----"},"icon":{"type":"Image","mediaType":"image/jpeg","url":"https://bittube.video/lazy-static/avatars/84b8acc3-e48b-4642-a9f4-360a4499579b.jpg"},"@context":["https://www.w3.org/ns/activitystreams","https://w3id.org/security/v1",{"RsaSignature2017":"https://w3id.org/security#RsaSignature2017","pt":"https://joinpeertube.org/ns#","sc":"http://schema.org#","Hashtag":"as:Hashtag","uuid":"sc:identifier","category":"sc:category","licence":"sc:license","subtitleLanguage":"sc:subtitleLanguage","sensitive":"as:sensitive","language":"sc:inLanguage","expires":"sc:expires","CacheFile":"pt:CacheFile","Infohash":"pt:Infohash","originallyPublishedAt":"sc:datePublished","views":{"@type":"sc:Number","@id":"pt:views"},"state":{"@type":"sc:Number","@id":"pt:state"},"size":{"@type":"sc:Number","@id":"pt:size"},"fps":{"@type":"sc:Number","@id":"pt:fps"},"startTimestamp":{"@type":"sc:Number","@id":"pt:startTimestamp"},"stopTimestamp":{"@type":"sc:Number","@id":"pt:stopTimestamp"},"position":{"@type":"sc:Number","@id":"pt:position"},"commentsEnabled":{"@type":"sc:Boolean","@id":"pt:commentsEnabled"},"downloadEnabled":{"@type":"sc:Boolean","@id":"pt:downloadEnabled"},"waitTranscoding":{"@type":"sc:Boolean","@id":"pt:waitTranscoding"},"support":{"@type":"sc:Text","@id":"pt:support"}},{"likes":{"@id":"as:likes","@type":"@id"},"dislikes":{"@id":"as:dislikes","@type":"@id"},"playlists":{"@id":"pt:playlists","@type":"@id"},"shares":{"@id":"as:shares","@type":"@id"},"comments":{"@id":"as:comments","@type":"@id"}}],"summary":null} diff --git a/test/fixtures/tesla_mock/peertube-social.json b/test/fixtures/tesla_mock/peertube-social.json new file mode 100644 index 000000000..0e996ba35 --- /dev/null +++ b/test/fixtures/tesla_mock/peertube-social.json @@ -0,0 +1,234 @@ +{ + "@context": [ + "https://www.w3.org/ns/activitystreams", + "https://w3id.org/security/v1", + { + "CacheFile": "pt:CacheFile", + "Hashtag": "as:Hashtag", + "Infohash": "pt:Infohash", + "RsaSignature2017": "https://w3id.org/security#RsaSignature2017", + "category": "sc:category", + "commentsEnabled": { + "@id": "pt:commentsEnabled", + "@type": "sc:Boolean" + }, + "downloadEnabled": { + "@id": "pt:downloadEnabled", + "@type": "sc:Boolean" + }, + "expires": "sc:expires", + "fps": { + "@id": "pt:fps", + "@type": "sc:Number" + }, + "language": "sc:inLanguage", + "licence": "sc:license", + "originallyPublishedAt": "sc:datePublished", + "position": { + "@id": "pt:position", + "@type": "sc:Number" + }, + "pt": "https://joinpeertube.org/ns#", + "sc": "http://schema.org#", + "sensitive": "as:sensitive", + "size": { + "@id": "pt:size", + "@type": "sc:Number" + }, + "startTimestamp": { + "@id": "pt:startTimestamp", + "@type": "sc:Number" + }, + "state": { + "@id": "pt:state", + "@type": "sc:Number" + }, + "stopTimestamp": { + "@id": "pt:stopTimestamp", + "@type": "sc:Number" + }, + "subtitleLanguage": "sc:subtitleLanguage", + "support": { + "@id": "pt:support", + "@type": "sc:Text" + }, + "uuid": "sc:identifier", + "views": { + "@id": "pt:views", + "@type": "sc:Number" + }, + "waitTranscoding": { + "@id": "pt:waitTranscoding", + "@type": "sc:Boolean" + } + }, + { + "comments": { + "@id": "as:comments", + "@type": "@id" + }, + "dislikes": { + "@id": "as:dislikes", + "@type": "@id" + }, + "likes": { + "@id": "as:likes", + "@type": "@id" + }, + "playlists": { + "@id": "pt:playlists", + "@type": "@id" + }, + "shares": { + "@id": "as:shares", + "@type": "@id" + } + } + ], + "attributedTo": [ + { + "id": "https://peertube.social/accounts/craigmaloney", + "type": "Person" + }, + { + "id": "https://peertube.social/video-channels/9909c7d9-6b5b-4aae-9164-c1af7229c91c", + "type": "Group" + } + ], + "category": { + "identifier": "15", + "name": "Science & Technology" + }, + "cc": [ + "https://peertube.social/accounts/craigmaloney/followers" + ], + "comments": "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe/comments", + "commentsEnabled": true, + "content": "Support this and our other Michigan!/usr/group videos and meetings. Learn more at http://mug.org/membership\n\nTwenty Years in Jail: FreeBSD's Jails, Then and Now\n\nJails started as a limited virtualization system, but over the last two years they've...", + "dislikes": "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe/dislikes", + "downloadEnabled": true, + "duration": "PT5151S", + "icon": { + "height": 122, + "mediaType": "image/jpeg", + "type": "Image", + "url": "https://peertube.social/static/thumbnails/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe.jpg", + "width": 223 + }, + "id": "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe", + "language": { + "identifier": "en", + "name": "English" + }, + "licence": { + "identifier": "1", + "name": "Attribution" + }, + "likes": "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe/likes", + "mediaType": "text/markdown", + "name": "Twenty Years in Jail: FreeBSD's Jails, Then and Now", + "originallyPublishedAt": "2019-08-13T00:00:00.000Z", + "published": "2020-02-12T01:06:08.054Z", + "sensitive": false, + "shares": "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe/announces", + "state": 1, + "subtitleLanguage": [], + "support": "Learn more at http://mug.org", + "tag": [ + { + "name": "linux", + "type": "Hashtag" + }, + { + "name": "mug.org", + "type": "Hashtag" + }, + { + "name": "open", + "type": "Hashtag" + }, + { + "name": "oss", + "type": "Hashtag" + }, + { + "name": "source", + "type": "Hashtag" + } + ], + "to": [ + "https://www.w3.org/ns/activitystreams#Public" + ], + "type": "Video", + "updated": "2020-02-15T15:01:09.474Z", + "url": [ + { + "href": "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe", + "mediaType": "text/html", + "type": "Link" + }, + { + "fps": 30, + "height": 240, + "href": "https://peertube.social/static/webseed/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-240.mp4", + "mediaType": "video/mp4", + "size": 119465800, + "type": "Link" + }, + { + "height": 240, + "href": "https://peertube.social/static/torrents/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-240.torrent", + "mediaType": "application/x-bittorrent", + "type": "Link" + }, + { + "height": 240, + "href": "magnet:?xs=https%3A%2F%2Fpeertube.social%2Fstatic%2Ftorrents%2F278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-240.torrent&xt=urn:btih:b3365331a8543bf48d09add56d7fe4b1cbbb5659&dn=Twenty+Years+in+Jail%3A+FreeBSD's+Jails%2C+Then+and+Now&tr=wss%3A%2F%2Fpeertube.social%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fpeertube.social%2Ftracker%2Fannounce&ws=https%3A%2F%2Fpeertube.social%2Fstatic%2Fwebseed%2F278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-240.mp4", + "mediaType": "application/x-bittorrent;x-scheme-handler/magnet", + "type": "Link" + }, + { + "fps": 30, + "height": 360, + "href": "https://peertube.social/static/webseed/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-360.mp4", + "mediaType": "video/mp4", + "size": 143930318, + "type": "Link" + }, + { + "height": 360, + "href": "https://peertube.social/static/torrents/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-360.torrent", + "mediaType": "application/x-bittorrent", + "type": "Link" + }, + { + "height": 360, + "href": "magnet:?xs=https%3A%2F%2Fpeertube.social%2Fstatic%2Ftorrents%2F278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-360.torrent&xt=urn:btih:0d37b23c98cb0d89e28b5dc8f49b3c97a041e569&dn=Twenty+Years+in+Jail%3A+FreeBSD's+Jails%2C+Then+and+Now&tr=wss%3A%2F%2Fpeertube.social%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fpeertube.social%2Ftracker%2Fannounce&ws=https%3A%2F%2Fpeertube.social%2Fstatic%2Fwebseed%2F278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-360.mp4", + "mediaType": "application/x-bittorrent;x-scheme-handler/magnet", + "type": "Link" + }, + { + "fps": 30, + "height": 480, + "href": "https://peertube.social/static/webseed/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-480.mp4", + "mediaType": "video/mp4", + "size": 130530754, + "type": "Link" + }, + { + "height": 480, + "href": "https://peertube.social/static/torrents/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-480.torrent", + "mediaType": "application/x-bittorrent", + "type": "Link" + }, + { + "height": 480, + "href": "magnet:?xs=https%3A%2F%2Fpeertube.social%2Fstatic%2Ftorrents%2F278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-480.torrent&xt=urn:btih:3a13ff822ad9494165eff6167183ddaaabc1372a&dn=Twenty+Years+in+Jail%3A+FreeBSD's+Jails%2C+Then+and+Now&tr=wss%3A%2F%2Fpeertube.social%3A443%2Ftracker%2Fsocket&tr=https%3A%2F%2Fpeertube.social%2Ftracker%2Fannounce&ws=https%3A%2F%2Fpeertube.social%2Fstatic%2Fwebseed%2F278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe-480.mp4", + "mediaType": "application/x-bittorrent;x-scheme-handler/magnet", + "type": "Link" + } + ], + "uuid": "278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe", + "views": 2, + "waitTranscoding": false +} diff --git a/test/support/http_request_mock.ex b/test/support/http_request_mock.ex index 54dde0432..9624cb0f7 100644 --- a/test/support/http_request_mock.ex +++ b/test/support/http_request_mock.ex @@ -308,19 +308,19 @@ def get("https://peertube.moe/videos/watch/df5f464b-be8d-46fb-ad81-2d4c2d1630e3" }} end - def get("https://bittube.video/accounts/hanimated.moh", _, _, _) do + def get("https://peertube.social/accounts/craigmaloney", _, _, _) do {:ok, %Tesla.Env{ status: 200, - body: File.read!("test/fixtures/tesla_mock/hanimated.json") + body: File.read!("test/fixtures/tesla_mock/craigmaloney.json") }} end - def get("https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b", _, _, _) do + def get("https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe", _, _, _) do {:ok, %Tesla.Env{ status: 200, - body: File.read!("test/fixtures/tesla_mock/bittube-video.json") + body: File.read!("test/fixtures/tesla_mock/peertube-social.json") }} end diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index de9663fa9..0404aae6a 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -1221,11 +1221,20 @@ test "it rejects activities without a valid ID" do :error = Transmogrifier.handle_incoming(data) end - test "it remaps mediaType of object" do - {:ok, object} = - Fetcher.fetch_object_from_id( - "https://bittube.video/videos/watch/2aad7dfb-5c75-4ee6-a9ed-08436af0558b" - ) + test "it converts content of object to html" do + object_id = "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe" + + {:ok, %{"content" => content_markdown}} = + Fetcher.fetch_and_contain_remote_object_from_id(object_id) + + {:ok, %Pleroma.Object{data: %{"content" => content}} = object} = + Fetcher.fetch_object_from_id(object_id) + + assert content_markdown == + "Support this and our other Michigan!/usr/group videos and meetings. Learn more at http://mug.org/membership\n\nTwenty Years in Jail: FreeBSD's Jails, Then and Now\n\nJails started as a limited virtualization system, but over the last two years they've..." + + assert content == + "

Support this and our other Michigan!/usr/group videos and meetings. Learn more at http://mug.org/membership

Twenty Years in Jail: FreeBSD’s Jails, Then and Now

Jails started as a limited virtualization system, but over the last two years they’ve…

" assert object.data["mediaType"] == "text/html" end From 560f2c1979ca4d49f18abd6de6aac49875bfc771 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 28 Apr 2020 16:50:37 +0400 Subject: [PATCH 013/156] Add OpenAPI spec for ReportController --- .../api_spec/operations/report_operation.ex | 78 +++++++++++++++++++ lib/pleroma/web/common_api/common_api.ex | 10 +-- lib/pleroma/web/common_api/utils.ex | 3 +- .../controllers/report_controller.ex | 6 +- .../admin_api/admin_api_controller_test.exs | 40 +++++----- test/web/admin_api/views/report_view_test.exs | 18 ++--- test/web/common_api/common_api_test.exs | 30 +++---- .../controllers/report_controller_test.exs | 24 ++++-- 8 files changed, 148 insertions(+), 61 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/report_operation.ex diff --git a/lib/pleroma/web/api_spec/operations/report_operation.ex b/lib/pleroma/web/api_spec/operations/report_operation.ex new file mode 100644 index 000000000..da4d50703 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/report_operation.ex @@ -0,0 +1,78 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.ReportOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Helpers + alias Pleroma.Web.ApiSpec.Schemas.ApiError + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def create_operation do + %Operation{ + tags: ["reports"], + summary: "File a report", + description: "Report problematic users to your moderators", + operationId: "ReportController.create", + security: [%{"oAuth" => ["follow", "write:reports"]}], + requestBody: Helpers.request_body("Parameters", create_request(), required: true), + responses: %{ + 200 => Operation.response("Report", "application/json", create_response()), + 400 => Operation.response("Report", "application/json", ApiError) + } + } + end + + defp create_request do + %Schema{ + title: "ReportCreateRequest", + description: "POST body for creating a report", + type: :object, + properties: %{ + account_id: %Schema{type: :string, description: "ID of the account to report"}, + status_ids: %Schema{ + type: :array, + items: %Schema{type: :string}, + description: "Array of Statuses to attach to the report, for context" + }, + comment: %Schema{ + type: :string, + description: "Reason for the report" + }, + forward: %Schema{ + type: :boolean, + default: false, + description: + "If the account is remote, should the report be forwarded to the remote admin?" + } + }, + required: [:account_id], + example: %{ + "account_id" => "123", + "status_ids" => ["1337"], + "comment" => "bad status!", + "forward" => "false" + } + } + end + + defp create_response do + %Schema{ + title: "ReportResponse", + type: :object, + properties: %{ + id: %Schema{type: :string, description: "Report ID"}, + action_taken: %Schema{type: :boolean, description: "Is action taken?"} + }, + example: %{ + "id" => "123", + "action_taken" => false + } + } + end +end diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index d1efe0c36..53ce7d425 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -380,9 +380,9 @@ def thread_muted?(user, activity) do ThreadMute.exists?(user.id, activity.data["context"]) end - def report(user, %{"account_id" => account_id} = data) do - with {:ok, account} <- get_reported_account(account_id), - {:ok, {content_html, _, _}} <- make_report_content_html(data["comment"]), + def report(user, data) do + with {:ok, account} <- get_reported_account(data.account_id), + {:ok, {content_html, _, _}} <- make_report_content_html(data[:comment]), {:ok, statuses} <- get_report_statuses(account, data) do ActivityPub.flag(%{ context: Utils.generate_context_id(), @@ -390,13 +390,11 @@ def report(user, %{"account_id" => account_id} = data) do account: account, statuses: statuses, content: content_html, - forward: data["forward"] || false + forward: Map.get(data, :forward, false) }) end end - def report(_user, _params), do: {:error, dgettext("errors", "Valid `account_id` required")} - defp get_reported_account(account_id) do case User.get_cached_by_id(account_id) do %User{} = account -> {:ok, account} diff --git a/lib/pleroma/web/common_api/utils.ex b/lib/pleroma/web/common_api/utils.ex index 945e63e22..6540fa5d1 100644 --- a/lib/pleroma/web/common_api/utils.ex +++ b/lib/pleroma/web/common_api/utils.ex @@ -504,7 +504,8 @@ def make_report_content_html(comment) do end end - def get_report_statuses(%User{ap_id: actor}, %{"status_ids" => status_ids}) do + def get_report_statuses(%User{ap_id: actor}, %{status_ids: status_ids}) + when is_list(status_ids) do {:ok, Activity.all_by_actor_and_id(actor, status_ids)} end diff --git a/lib/pleroma/web/mastodon_api/controllers/report_controller.ex b/lib/pleroma/web/mastodon_api/controllers/report_controller.ex index f5782be13..85bd52106 100644 --- a/lib/pleroma/web/mastodon_api/controllers/report_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/report_controller.ex @@ -9,12 +9,14 @@ defmodule Pleroma.Web.MastodonAPI.ReportController do action_fallback(Pleroma.Web.MastodonAPI.FallbackController) + plug(OpenApiSpex.Plug.CastAndValidate, render_error: Pleroma.Web.ApiSpec.RenderError) plug(OAuthScopesPlug, %{scopes: ["write:reports"]} when action == :create) - plug(Pleroma.Plugs.EnsurePublicOrAuthenticatedPlug) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.ReportOperation + @doc "POST /api/v1/reports" - def create(%{assigns: %{user: user}} = conn, params) do + def create(%{assigns: %{user: user}, body_params: params} = conn, _) do with {:ok, activity} <- Pleroma.Web.CommonAPI.report(user, params) do render(conn, "show.json", activity: activity) end diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index f80dbf8dd..1862a9589 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -1347,9 +1347,9 @@ test "returns report by its id", %{conn: conn} do {:ok, %{id: report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) response = @@ -1374,16 +1374,16 @@ test "returns 404 when report id is invalid", %{conn: conn} do {:ok, %{id: report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) {:ok, %{id: second_report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel very offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel very offended", + status_ids: [activity.id] }) %{ @@ -1523,9 +1523,9 @@ test "returns reports", %{conn: conn} do {:ok, %{id: report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) response = @@ -1547,15 +1547,15 @@ test "returns reports with specified state", %{conn: conn} do {:ok, %{id: first_report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) {:ok, %{id: second_report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I don't like this user" + account_id: target_user.id, + comment: "I don't like this user" }) CommonAPI.update_report_state(second_report_id, "closed") @@ -3431,9 +3431,9 @@ test "it resend emails for two users", %{conn: conn, admin: admin} do {:ok, %{id: report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) post(conn, "/api/pleroma/admin/reports/#{report_id}/notes", %{ diff --git a/test/web/admin_api/views/report_view_test.exs b/test/web/admin_api/views/report_view_test.exs index 5db6629f2..8cfa1dcfa 100644 --- a/test/web/admin_api/views/report_view_test.exs +++ b/test/web/admin_api/views/report_view_test.exs @@ -15,7 +15,7 @@ test "renders a report" do user = insert(:user) other_user = insert(:user) - {:ok, activity} = CommonAPI.report(user, %{"account_id" => other_user.id}) + {:ok, activity} = CommonAPI.report(user, %{account_id: other_user.id}) expected = %{ content: nil, @@ -48,7 +48,7 @@ test "includes reported statuses" do {:ok, activity} = CommonAPI.post(other_user, %{"status" => "toot"}) {:ok, report_activity} = - CommonAPI.report(user, %{"account_id" => other_user.id, "status_ids" => [activity.id]}) + CommonAPI.report(user, %{account_id: other_user.id, status_ids: [activity.id]}) other_user = Pleroma.User.get_by_id(other_user.id) @@ -81,7 +81,7 @@ test "renders report's state" do user = insert(:user) other_user = insert(:user) - {:ok, activity} = CommonAPI.report(user, %{"account_id" => other_user.id}) + {:ok, activity} = CommonAPI.report(user, %{account_id: other_user.id}) {:ok, activity} = CommonAPI.update_report_state(activity.id, "closed") assert %{state: "closed"} = @@ -94,8 +94,8 @@ test "renders report description" do {:ok, activity} = CommonAPI.report(user, %{ - "account_id" => other_user.id, - "comment" => "posts are too good for this instance" + account_id: other_user.id, + comment: "posts are too good for this instance" }) assert %{content: "posts are too good for this instance"} = @@ -108,8 +108,8 @@ test "sanitizes report description" do {:ok, activity} = CommonAPI.report(user, %{ - "account_id" => other_user.id, - "comment" => "" + account_id: other_user.id, + comment: "" }) data = Map.put(activity.data, "content", "") @@ -125,8 +125,8 @@ test "doesn't error out when the user doesn't exists" do {:ok, activity} = CommonAPI.report(user, %{ - "account_id" => other_user.id, - "comment" => "" + account_id: other_user.id, + comment: "" }) Pleroma.User.delete(other_user) diff --git a/test/web/common_api/common_api_test.exs b/test/web/common_api/common_api_test.exs index 1758662b0..c6ccc02c4 100644 --- a/test/web/common_api/common_api_test.exs +++ b/test/web/common_api/common_api_test.exs @@ -485,9 +485,9 @@ test "creates a report" do comment = "foobar" report_data = %{ - "account_id" => target_user.id, - "comment" => comment, - "status_ids" => [activity.id] + account_id: target_user.id, + comment: comment, + status_ids: [activity.id] } note_obj = %{ @@ -517,9 +517,9 @@ test "updates report state" do {:ok, %Activity{id: report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) {:ok, report} = CommonAPI.update_report_state(report_id, "resolved") @@ -538,9 +538,9 @@ test "does not update report state when state is unsupported" do {:ok, %Activity{id: report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) assert CommonAPI.update_report_state(report_id, "test") == {:error, "Unsupported state"} @@ -552,16 +552,16 @@ test "updates state of multiple reports" do {:ok, %Activity{id: first_report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel offended", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel offended", + status_ids: [activity.id] }) {:ok, %Activity{id: second_report_id}} = CommonAPI.report(reporter, %{ - "account_id" => target_user.id, - "comment" => "I feel very offended!", - "status_ids" => [activity.id] + account_id: target_user.id, + comment: "I feel very offended!", + status_ids: [activity.id] }) {:ok, report_ids} = diff --git a/test/web/mastodon_api/controllers/report_controller_test.exs b/test/web/mastodon_api/controllers/report_controller_test.exs index 34ec8119e..21b037237 100644 --- a/test/web/mastodon_api/controllers/report_controller_test.exs +++ b/test/web/mastodon_api/controllers/report_controller_test.exs @@ -22,8 +22,9 @@ defmodule Pleroma.Web.MastodonAPI.ReportControllerTest do test "submit a basic report", %{conn: conn, target_user: target_user} do assert %{"action_taken" => false, "id" => _} = conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/reports", %{"account_id" => target_user.id}) - |> json_response(200) + |> json_response_and_validate_schema(200) end test "submit a report with statuses and comment", %{ @@ -33,23 +34,25 @@ test "submit a report with statuses and comment", %{ } do assert %{"action_taken" => false, "id" => _} = conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/reports", %{ "account_id" => target_user.id, "status_ids" => [activity.id], "comment" => "bad status!", "forward" => "false" }) - |> json_response(200) + |> json_response_and_validate_schema(200) end test "account_id is required", %{ conn: conn, activity: activity } do - assert %{"error" => "Valid `account_id` required"} = + assert %{"error" => "Missing field: account_id."} = conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/reports", %{"status_ids" => [activity.id]}) - |> json_response(400) + |> json_response_and_validate_schema(400) end test "comment must be up to the size specified in the config", %{ @@ -63,17 +66,21 @@ test "comment must be up to the size specified in the config", %{ assert ^error = conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/reports", %{"account_id" => target_user.id, "comment" => comment}) - |> json_response(400) + |> json_response_and_validate_schema(400) end test "returns error when account is not exist", %{ conn: conn, activity: activity } do - conn = post(conn, "/api/v1/reports", %{"status_ids" => [activity.id], "account_id" => "foo"}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/reports", %{"status_ids" => [activity.id], "account_id" => "foo"}) - assert json_response(conn, 400) == %{"error" => "Account not found"} + assert json_response_and_validate_schema(conn, 400) == %{"error" => "Account not found"} end test "doesn't fail if an admin has no email", %{conn: conn, target_user: target_user} do @@ -81,7 +88,8 @@ test "doesn't fail if an admin has no email", %{conn: conn, target_user: target_ assert %{"action_taken" => false, "id" => _} = conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/reports", %{"account_id" => target_user.id}) - |> json_response(200) + |> json_response_and_validate_schema(200) end end From 5238ae3dd3bfba9ff84d5f47e2419227fc7c5d9a Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 28 Apr 2020 21:27:54 +0400 Subject: [PATCH 014/156] Add OpenAPI spec for NotificationController --- lib/pleroma/web/api_spec/helpers.ex | 8 + .../api_spec/operations/account_operation.ex | 4 +- .../operations/domain_block_operation.ex | 8 +- .../operations/notification_operation.ex | 202 ++++++++++++++++++ .../controllers/notification_controller.ex | 24 ++- lib/pleroma/web/router.ex | 2 +- .../notification_controller_test.exs | 181 ++++++++-------- 7 files changed, 325 insertions(+), 104 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/notification_operation.ex diff --git a/lib/pleroma/web/api_spec/helpers.ex b/lib/pleroma/web/api_spec/helpers.ex index ce40fb9e8..df0804486 100644 --- a/lib/pleroma/web/api_spec/helpers.ex +++ b/lib/pleroma/web/api_spec/helpers.ex @@ -46,4 +46,12 @@ def pagination_params do ) ] end + + def empty_object_response do + Operation.response("Empty object", "application/json", %Schema{type: :object, example: %{}}) + end + + def empty_array_response do + Operation.response("Empty array", "application/json", %Schema{type: :array, example: []}) + end end diff --git a/lib/pleroma/web/api_spec/operations/account_operation.ex b/lib/pleroma/web/api_spec/operations/account_operation.ex index 2efe6e901..6fb6e627b 100644 --- a/lib/pleroma/web/api_spec/operations/account_operation.ex +++ b/lib/pleroma/web/api_spec/operations/account_operation.ex @@ -343,7 +343,7 @@ def endorsements_operation do description: "Not implemented", security: [%{"oAuth" => ["read:accounts"]}], responses: %{ - 200 => Operation.response("Empry array", "application/json", %Schema{type: :array}) + 200 => empty_array_response() } } end @@ -355,7 +355,7 @@ def identity_proofs_operation do operationId: "AccountController.identity_proofs", description: "Not implemented", responses: %{ - 200 => Operation.response("Empry array", "application/json", %Schema{type: :array}) + 200 => empty_array_response() } } end diff --git a/lib/pleroma/web/api_spec/operations/domain_block_operation.ex b/lib/pleroma/web/api_spec/operations/domain_block_operation.ex index 3b7f51ceb..049bcf931 100644 --- a/lib/pleroma/web/api_spec/operations/domain_block_operation.ex +++ b/lib/pleroma/web/api_spec/operations/domain_block_operation.ex @@ -5,7 +5,7 @@ defmodule Pleroma.Web.ApiSpec.DomainBlockOperation do alias OpenApiSpex.Operation alias OpenApiSpex.Schema - alias Pleroma.Web.ApiSpec.Helpers + import Pleroma.Web.ApiSpec.Helpers def open_api_operation(action) do operation = String.to_existing_atom("#{action}_operation") @@ -46,9 +46,7 @@ def create_operation do operationId: "DomainBlockController.create", requestBody: domain_block_request(), security: [%{"oAuth" => ["follow", "write:blocks"]}], - responses: %{ - 200 => Operation.response("Empty object", "application/json", %Schema{type: :object}) - } + responses: %{200 => empty_object_response()} } end @@ -67,7 +65,7 @@ def delete_operation do end defp domain_block_request do - Helpers.request_body( + request_body( "Parameters", %Schema{ type: :object, diff --git a/lib/pleroma/web/api_spec/operations/notification_operation.ex b/lib/pleroma/web/api_spec/operations/notification_operation.ex new file mode 100644 index 000000000..c6514f3f2 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/notification_operation.ex @@ -0,0 +1,202 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.NotificationOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.Account + alias Pleroma.Web.ApiSpec.Schemas.ApiError + alias Pleroma.Web.ApiSpec.Schemas.BooleanLike + alias Pleroma.Web.ApiSpec.Schemas.Status + alias Pleroma.Web.ApiSpec.Schemas.VisibilityScope + + import Pleroma.Web.ApiSpec.Helpers + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def index_operation do + %Operation{ + tags: ["Notifications"], + summary: "Get all notifications", + description: + "Notifications concerning the user. This API returns Link headers containing links to the next/previous page. However, the links can also be constructed dynamically using query params and `id` values.", + operationId: "NotificationController.index", + security: [%{"oAuth" => ["read:notifications"]}], + parameters: + [ + Operation.parameter( + :exclude_types, + :query, + %Schema{type: :array, items: notification_type()}, + "Array of types to exclude" + ), + Operation.parameter( + :account_id, + :query, + %Schema{type: :string}, + "Return only notifications received from this account" + ), + Operation.parameter( + :exclude_visibilities, + :query, + %Schema{type: :array, items: VisibilityScope}, + "Exclude the notifications for activities with the given visibilities" + ), + Operation.parameter( + :include_types, + :query, + %Schema{type: :array, items: notification_type()}, + "Include the notifications for activities with the given types" + ), + Operation.parameter( + :with_muted, + :query, + BooleanLike, + "Include the notifications from muted users" + ) + ] ++ pagination_params(), + responses: %{ + 200 => + Operation.response("Array of notifications", "application/json", %Schema{ + type: :array, + items: notification() + }), + 404 => Operation.response("Error", "application/json", ApiError) + } + } + end + + def show_operation do + %Operation{ + tags: ["Notifications"], + summary: "Get a single notification", + description: "View information about a notification with a given ID.", + operationId: "NotificationController.show", + security: [%{"oAuth" => ["read:notifications"]}], + parameters: [id_param()], + responses: %{ + 200 => Operation.response("Notification", "application/json", notification()) + } + } + end + + def clear_operation do + %Operation{ + tags: ["Notifications"], + summary: "Dismiss all notifications", + description: "Clear all notifications from the server.", + operationId: "NotificationController.clear", + security: [%{"oAuth" => ["write:notifications"]}], + responses: %{200 => empty_object_response()} + } + end + + def dismiss_operation do + %Operation{ + tags: ["Notifications"], + summary: "Dismiss a single notification", + description: "Clear a single notification from the server.", + operationId: "NotificationController.dismiss", + parameters: [id_param()], + security: [%{"oAuth" => ["write:notifications"]}], + responses: %{200 => empty_object_response()} + } + end + + def dismiss_via_body_operation do + %Operation{ + tags: ["Notifications"], + summary: "Dismiss a single notification", + deprecated: true, + description: "Clear a single notification from the server.", + operationId: "NotificationController.dismiss_via_body", + requestBody: + request_body( + "Parameters", + %Schema{type: :object, properties: %{id: %Schema{type: :string}}}, + required: true + ), + security: [%{"oAuth" => ["write:notifications"]}], + responses: %{200 => empty_object_response()} + } + end + + def destroy_multiple_operation do + %Operation{ + tags: ["Notifications"], + summary: "Dismiss multiple notifications", + operationId: "NotificationController.destroy_multiple", + security: [%{"oAuth" => ["write:notifications"]}], + parameters: [ + Operation.parameter( + :ids, + :query, + %Schema{type: :array, items: %Schema{type: :string}}, + "Array of notification IDs to dismiss", + required: true + ) + ], + responses: %{200 => empty_object_response()} + } + end + + defp notification do + %Schema{ + title: "Notification", + description: "Response schema for a notification", + type: :object, + properties: %{ + id: %Schema{type: :string}, + type: notification_type(), + created_at: %Schema{type: :string, format: :"date-time"}, + account: %Schema{ + allOf: [Account], + description: "The account that performed the action that generated the notification." + }, + status: %Schema{ + allOf: [Status], + description: + "Status that was the object of the notification, e.g. in mentions, reblogs, favourites, or polls.", + nullable: true + } + }, + example: %{ + "id" => "34975861", + "type" => "mention", + "created_at" => "2019-11-23T07:49:02.064Z", + "account" => Account.schema().example, + "status" => Status.schema().example + } + } + end + + defp notification_type do + %Schema{ + type: :string, + enum: ["follow", "favourite", "reblog", "mention", "poll", "pleroma:emoji_reaction", "move"], + description: """ + The type of event that resulted in the notification. + + - `follow` - Someone followed you + - `mention` - Someone mentioned you in their status + - `reblog` - Someone boosted one of your statuses + - `favourite` - Someone favourited one of your statuses + - `poll` - A poll you have voted in or created has ended + - `move` - Someone moved their account + - `pleroma:emoji_reaction` - Someone reacted with emoji to your status + """ + } + end + + defp id_param do + Operation.parameter(:id, :path, :string, "Notification ID", + example: "123", + required: true + ) + end +end diff --git a/lib/pleroma/web/mastodon_api/controllers/notification_controller.ex b/lib/pleroma/web/mastodon_api/controllers/notification_controller.ex index 7fb536b09..dcb421756 100644 --- a/lib/pleroma/web/mastodon_api/controllers/notification_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/notification_controller.ex @@ -13,6 +13,8 @@ defmodule Pleroma.Web.MastodonAPI.NotificationController do @oauth_read_actions [:show, :index] + plug(OpenApiSpex.Plug.CastAndValidate, render_error: Pleroma.Web.ApiSpec.RenderError) + plug( OAuthScopesPlug, %{scopes: ["read:notifications"]} when action in @oauth_read_actions @@ -22,14 +24,16 @@ defmodule Pleroma.Web.MastodonAPI.NotificationController do plug(Pleroma.Plugs.EnsurePublicOrAuthenticatedPlug) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.NotificationOperation + # GET /api/v1/notifications - def index(conn, %{"account_id" => account_id} = params) do + def index(conn, %{account_id: account_id} = params) do case Pleroma.User.get_cached_by_id(account_id) do %{ap_id: account_ap_id} -> params = params - |> Map.delete("account_id") - |> Map.put("account_ap_id", account_ap_id) + |> Map.delete(:account_id) + |> Map.put(:account_ap_id, account_ap_id) index(conn, params) @@ -41,6 +45,7 @@ def index(conn, %{"account_id" => account_id} = params) do end def index(%{assigns: %{user: user}} = conn, params) do + params = Map.new(params, fn {k, v} -> {to_string(k), v} end) notifications = MastodonAPI.get_notifications(user, params) conn @@ -53,7 +58,7 @@ def index(%{assigns: %{user: user}} = conn, params) do end # GET /api/v1/notifications/:id - def show(%{assigns: %{user: user}} = conn, %{"id" => id}) do + def show(%{assigns: %{user: user}} = conn, %{id: id}) do with {:ok, notification} <- Notification.get(user, id) do render(conn, "show.json", notification: notification, for: user) else @@ -71,8 +76,8 @@ def clear(%{assigns: %{user: user}} = conn, _params) do end # POST /api/v1/notifications/:id/dismiss - # POST /api/v1/notifications/dismiss (deprecated) - def dismiss(%{assigns: %{user: user}} = conn, %{"id" => id} = _params) do + + def dismiss(%{assigns: %{user: user}} = conn, %{id: id} = _params) do with {:ok, _notif} <- Notification.dismiss(user, id) do json(conn, %{}) else @@ -83,8 +88,13 @@ def dismiss(%{assigns: %{user: user}} = conn, %{"id" => id} = _params) do end end + # POST /api/v1/notifications/dismiss (deprecated) + def dismiss_via_body(%{body_params: params} = conn, _) do + dismiss(conn, params) + end + # DELETE /api/v1/notifications/destroy_multiple - def destroy_multiple(%{assigns: %{user: user}} = conn, %{"ids" => ids} = _params) do + def destroy_multiple(%{assigns: %{user: user}} = conn, %{ids: ids} = _params) do Notification.destroy_multiple(user, ids) json(conn, %{}) end diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index 153802a43..fe984b06c 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -344,7 +344,7 @@ defmodule Pleroma.Web.Router do post("/notifications/clear", NotificationController, :clear) delete("/notifications/destroy_multiple", NotificationController, :destroy_multiple) # Deprecated: was removed in Mastodon v3, use `/notifications/:id/dismiss` instead - post("/notifications/dismiss", NotificationController, :dismiss) + post("/notifications/dismiss", NotificationController, :dismiss_via_body) get("/scheduled_statuses", ScheduledActivityController, :index) get("/scheduled_statuses/:id", ScheduledActivityController, :show) diff --git a/test/web/mastodon_api/controllers/notification_controller_test.exs b/test/web/mastodon_api/controllers/notification_controller_test.exs index 8c815b415..db380f76a 100644 --- a/test/web/mastodon_api/controllers/notification_controller_test.exs +++ b/test/web/mastodon_api/controllers/notification_controller_test.exs @@ -25,7 +25,7 @@ test "does NOT render account/pleroma/relationship if this is disabled by defaul conn |> assign(:user, user) |> get("/api/v1/notifications") - |> json_response(200) + |> json_response_and_validate_schema(200) assert Enum.all?(response, fn n -> get_in(n, ["account", "pleroma", "relationship"]) == %{} @@ -50,7 +50,9 @@ test "list of notifications" do user.ap_id }\" rel=\"ugc\">@#{user.nickname}" - assert [%{"status" => %{"content" => response}} | _rest] = json_response(conn, 200) + assert [%{"status" => %{"content" => response}} | _rest] = + json_response_and_validate_schema(conn, 200) + assert response == expected_response end @@ -69,7 +71,7 @@ test "getting a single notification" do user.ap_id }\" rel=\"ugc\">@#{user.nickname}" - assert %{"status" => %{"content" => response}} = json_response(conn, 200) + assert %{"status" => %{"content" => response}} = json_response_and_validate_schema(conn, 200) assert response == expected_response end @@ -84,9 +86,10 @@ test "dismissing a single notification (deprecated endpoint)" do conn = conn |> assign(:user, user) - |> post("/api/v1/notifications/dismiss", %{"id" => notification.id}) + |> put_req_header("content-type", "application/json") + |> post("/api/v1/notifications/dismiss", %{"id" => to_string(notification.id)}) - assert %{} = json_response(conn, 200) + assert %{} = json_response_and_validate_schema(conn, 200) end test "dismissing a single notification" do @@ -102,7 +105,7 @@ test "dismissing a single notification" do |> assign(:user, user) |> post("/api/v1/notifications/#{notification.id}/dismiss") - assert %{} = json_response(conn, 200) + assert %{} = json_response_and_validate_schema(conn, 200) end test "clearing all notifications" do @@ -115,11 +118,11 @@ test "clearing all notifications" do ret_conn = post(conn, "/api/v1/notifications/clear") - assert %{} = json_response(ret_conn, 200) + assert %{} = json_response_and_validate_schema(ret_conn, 200) ret_conn = get(conn, "/api/v1/notifications") - assert all = json_response(ret_conn, 200) + assert all = json_response_and_validate_schema(ret_conn, 200) assert all == [] end @@ -143,7 +146,7 @@ test "paginates notifications using min_id, since_id, max_id, and limit" do result = conn |> get("/api/v1/notifications?limit=2&min_id=#{notification1_id}") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert [%{"id" => ^notification3_id}, %{"id" => ^notification2_id}] = result @@ -151,7 +154,7 @@ test "paginates notifications using min_id, since_id, max_id, and limit" do result = conn |> get("/api/v1/notifications?limit=2&since_id=#{notification1_id}") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert [%{"id" => ^notification4_id}, %{"id" => ^notification3_id}] = result @@ -159,7 +162,7 @@ test "paginates notifications using min_id, since_id, max_id, and limit" do result = conn |> get("/api/v1/notifications?limit=2&max_id=#{notification4_id}") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert [%{"id" => ^notification3_id}, %{"id" => ^notification2_id}] = result end @@ -181,36 +184,28 @@ test "filters notifications for mentions" do {:ok, private_activity} = CommonAPI.post(other_user, %{"status" => "@#{user.nickname}", "visibility" => "private"}) - conn_res = - get(conn, "/api/v1/notifications", %{ - exclude_visibilities: ["public", "unlisted", "private"] - }) + query = params_to_query(%{exclude_visibilities: ["public", "unlisted", "private"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"status" => %{"id" => id}}] = json_response(conn_res, 200) + assert [%{"status" => %{"id" => id}}] = json_response_and_validate_schema(conn_res, 200) assert id == direct_activity.id - conn_res = - get(conn, "/api/v1/notifications", %{ - exclude_visibilities: ["public", "unlisted", "direct"] - }) + query = params_to_query(%{exclude_visibilities: ["public", "unlisted", "direct"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"status" => %{"id" => id}}] = json_response(conn_res, 200) + assert [%{"status" => %{"id" => id}}] = json_response_and_validate_schema(conn_res, 200) assert id == private_activity.id - conn_res = - get(conn, "/api/v1/notifications", %{ - exclude_visibilities: ["public", "private", "direct"] - }) + query = params_to_query(%{exclude_visibilities: ["public", "private", "direct"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"status" => %{"id" => id}}] = json_response(conn_res, 200) + assert [%{"status" => %{"id" => id}}] = json_response_and_validate_schema(conn_res, 200) assert id == unlisted_activity.id - conn_res = - get(conn, "/api/v1/notifications", %{ - exclude_visibilities: ["unlisted", "private", "direct"] - }) + query = params_to_query(%{exclude_visibilities: ["unlisted", "private", "direct"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"status" => %{"id" => id}}] = json_response(conn_res, 200) + assert [%{"status" => %{"id" => id}}] = json_response_and_validate_schema(conn_res, 200) assert id == public_activity.id end @@ -237,8 +232,8 @@ test "filters notifications for Like activities" do activity_ids = conn - |> get("/api/v1/notifications", %{exclude_visibilities: ["direct"]}) - |> json_response(200) + |> get("/api/v1/notifications?exclude_visibilities[]=direct") + |> json_response_and_validate_schema(200) |> Enum.map(& &1["status"]["id"]) assert public_activity.id in activity_ids @@ -248,8 +243,8 @@ test "filters notifications for Like activities" do activity_ids = conn - |> get("/api/v1/notifications", %{exclude_visibilities: ["unlisted"]}) - |> json_response(200) + |> get("/api/v1/notifications?exclude_visibilities[]=unlisted") + |> json_response_and_validate_schema(200) |> Enum.map(& &1["status"]["id"]) assert public_activity.id in activity_ids @@ -259,8 +254,8 @@ test "filters notifications for Like activities" do activity_ids = conn - |> get("/api/v1/notifications", %{exclude_visibilities: ["private"]}) - |> json_response(200) + |> get("/api/v1/notifications?exclude_visibilities[]=private") + |> json_response_and_validate_schema(200) |> Enum.map(& &1["status"]["id"]) assert public_activity.id in activity_ids @@ -270,8 +265,8 @@ test "filters notifications for Like activities" do activity_ids = conn - |> get("/api/v1/notifications", %{exclude_visibilities: ["public"]}) - |> json_response(200) + |> get("/api/v1/notifications?exclude_visibilities[]=public") + |> json_response_and_validate_schema(200) |> Enum.map(& &1["status"]["id"]) refute public_activity.id in activity_ids @@ -295,8 +290,8 @@ test "filters notifications for Announce activities" do activity_ids = conn - |> get("/api/v1/notifications", %{exclude_visibilities: ["unlisted"]}) - |> json_response(200) + |> get("/api/v1/notifications?exclude_visibilities[]=unlisted") + |> json_response_and_validate_schema(200) |> Enum.map(& &1["status"]["id"]) assert public_activity.id in activity_ids @@ -319,25 +314,27 @@ test "filters notifications using exclude_types" do reblog_notification_id = get_notification_id_by_activity(reblog_activity) follow_notification_id = get_notification_id_by_activity(follow_activity) - conn_res = - get(conn, "/api/v1/notifications", %{exclude_types: ["mention", "favourite", "reblog"]}) + query = params_to_query(%{exclude_types: ["mention", "favourite", "reblog"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"id" => ^follow_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^follow_notification_id}] = json_response_and_validate_schema(conn_res, 200) - conn_res = - get(conn, "/api/v1/notifications", %{exclude_types: ["favourite", "reblog", "follow"]}) + query = params_to_query(%{exclude_types: ["favourite", "reblog", "follow"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"id" => ^mention_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^mention_notification_id}] = + json_response_and_validate_schema(conn_res, 200) - conn_res = - get(conn, "/api/v1/notifications", %{exclude_types: ["reblog", "follow", "mention"]}) + query = params_to_query(%{exclude_types: ["reblog", "follow", "mention"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"id" => ^favorite_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^favorite_notification_id}] = + json_response_and_validate_schema(conn_res, 200) - conn_res = - get(conn, "/api/v1/notifications", %{exclude_types: ["follow", "mention", "favourite"]}) + query = params_to_query(%{exclude_types: ["follow", "mention", "favourite"]}) + conn_res = get(conn, "/api/v1/notifications?" <> query) - assert [%{"id" => ^reblog_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^reblog_notification_id}] = json_response_and_validate_schema(conn_res, 200) end test "filters notifications using include_types" do @@ -355,32 +352,34 @@ test "filters notifications using include_types" do reblog_notification_id = get_notification_id_by_activity(reblog_activity) follow_notification_id = get_notification_id_by_activity(follow_activity) - conn_res = get(conn, "/api/v1/notifications", %{include_types: ["follow"]}) + conn_res = get(conn, "/api/v1/notifications?include_types[]=follow") - assert [%{"id" => ^follow_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^follow_notification_id}] = json_response_and_validate_schema(conn_res, 200) - conn_res = get(conn, "/api/v1/notifications", %{include_types: ["mention"]}) + conn_res = get(conn, "/api/v1/notifications?include_types[]=mention") - assert [%{"id" => ^mention_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^mention_notification_id}] = + json_response_and_validate_schema(conn_res, 200) - conn_res = get(conn, "/api/v1/notifications", %{include_types: ["favourite"]}) + conn_res = get(conn, "/api/v1/notifications?include_types[]=favourite") - assert [%{"id" => ^favorite_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^favorite_notification_id}] = + json_response_and_validate_schema(conn_res, 200) - conn_res = get(conn, "/api/v1/notifications", %{include_types: ["reblog"]}) + conn_res = get(conn, "/api/v1/notifications?include_types[]=reblog") - assert [%{"id" => ^reblog_notification_id}] = json_response(conn_res, 200) + assert [%{"id" => ^reblog_notification_id}] = json_response_and_validate_schema(conn_res, 200) - result = conn |> get("/api/v1/notifications") |> json_response(200) + result = conn |> get("/api/v1/notifications") |> json_response_and_validate_schema(200) assert length(result) == 4 + query = params_to_query(%{include_types: ["follow", "mention", "favourite", "reblog"]}) + result = conn - |> get("/api/v1/notifications", %{ - include_types: ["follow", "mention", "favourite", "reblog"] - }) - |> json_response(200) + |> get("/api/v1/notifications?" <> query) + |> json_response_and_validate_schema(200) assert length(result) == 4 end @@ -402,7 +401,7 @@ test "destroy multiple" do result = conn |> get("/api/v1/notifications") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert [%{"id" => ^notification2_id}, %{"id" => ^notification1_id}] = result @@ -414,22 +413,19 @@ test "destroy multiple" do result = conn2 |> get("/api/v1/notifications") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert [%{"id" => ^notification4_id}, %{"id" => ^notification3_id}] = result - conn_destroy = - conn - |> delete("/api/v1/notifications/destroy_multiple", %{ - "ids" => [notification1_id, notification2_id] - }) + query = params_to_query(%{ids: [notification1_id, notification2_id]}) + conn_destroy = delete(conn, "/api/v1/notifications/destroy_multiple?" <> query) - assert json_response(conn_destroy, 200) == %{} + assert json_response_and_validate_schema(conn_destroy, 200) == %{} result = conn2 |> get("/api/v1/notifications") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert [%{"id" => ^notification4_id}, %{"id" => ^notification3_id}] = result end @@ -443,13 +439,13 @@ test "doesn't see notifications after muting user with notifications" do ret_conn = get(conn, "/api/v1/notifications") - assert length(json_response(ret_conn, 200)) == 1 + assert length(json_response_and_validate_schema(ret_conn, 200)) == 1 {:ok, _user_relationships} = User.mute(user, user2) conn = get(conn, "/api/v1/notifications") - assert json_response(conn, 200) == [] + assert json_response_and_validate_schema(conn, 200) == [] end test "see notifications after muting user without notifications" do @@ -461,13 +457,13 @@ test "see notifications after muting user without notifications" do ret_conn = get(conn, "/api/v1/notifications") - assert length(json_response(ret_conn, 200)) == 1 + assert length(json_response_and_validate_schema(ret_conn, 200)) == 1 {:ok, _user_relationships} = User.mute(user, user2, false) conn = get(conn, "/api/v1/notifications") - assert length(json_response(conn, 200)) == 1 + assert length(json_response_and_validate_schema(conn, 200)) == 1 end test "see notifications after muting user with notifications and with_muted parameter" do @@ -479,13 +475,13 @@ test "see notifications after muting user with notifications and with_muted para ret_conn = get(conn, "/api/v1/notifications") - assert length(json_response(ret_conn, 200)) == 1 + assert length(json_response_and_validate_schema(ret_conn, 200)) == 1 {:ok, _user_relationships} = User.mute(user, user2) - conn = get(conn, "/api/v1/notifications", %{"with_muted" => "true"}) + conn = get(conn, "/api/v1/notifications?with_muted=true") - assert length(json_response(conn, 200)) == 1 + assert length(json_response_and_validate_schema(conn, 200)) == 1 end @tag capture_log: true @@ -512,7 +508,7 @@ test "see move notifications" do conn = get(conn, "/api/v1/notifications") - assert length(json_response(conn, 200)) == 1 + assert length(json_response_and_validate_schema(conn, 200)) == 1 end describe "link headers" do @@ -538,10 +534,10 @@ test "preserves parameters in link headers" do conn = conn |> assign(:user, user) - |> get("/api/v1/notifications", %{media_only: true}) + |> get("/api/v1/notifications?limit=5") assert [link_header] = get_resp_header(conn, "link") - assert link_header =~ ~r/media_only=true/ + assert link_header =~ ~r/limit=5/ assert link_header =~ ~r/min_id=#{notification2.id}/ assert link_header =~ ~r/max_id=#{notification1.id}/ end @@ -560,14 +556,14 @@ test "account_id" do assert [%{"account" => %{"id" => ^account_id}}] = conn |> assign(:user, user) - |> get("/api/v1/notifications", %{account_id: account_id}) - |> json_response(200) + |> get("/api/v1/notifications?account_id=#{account_id}") + |> json_response_and_validate_schema(200) assert %{"error" => "Account is not found"} = conn |> assign(:user, user) - |> get("/api/v1/notifications", %{account_id: "cofe"}) - |> json_response(404) + |> get("/api/v1/notifications?account_id=cofe") + |> json_response_and_validate_schema(404) end end @@ -577,4 +573,11 @@ defp get_notification_id_by_activity(%{id: id}) do |> Map.get(:id) |> to_string() end + + defp params_to_query(%{} = params) do + Enum.map_join(params, "&", fn + {k, v} when is_list(v) -> Enum.map_join(v, "&", &"#{k}[]=#{&1}") + {k, v} -> k <> "=" <> v + end) + end end From 7bd187bc5e2e589f3ba639bbc0ab2feea905a9b0 Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Wed, 29 Apr 2020 08:13:10 +0300 Subject: [PATCH 015/156] added test --- test/web/activity_pub/transmogrifier_test.exs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index 0404aae6a..0800305ce 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -1221,6 +1221,17 @@ test "it rejects activities without a valid ID" do :error = Transmogrifier.handle_incoming(data) end + test "skip converting the content when it is nil" do + object_id = "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe" + + {:ok, object} = Fetcher.fetch_and_contain_remote_object_from_id(object_id) + + result = + Pleroma.Web.ActivityPub.Transmogrifier.fix_object(Map.merge(object, %{"content" => nil})) + + assert result["content"] == nil + end + test "it converts content of object to html" do object_id = "https://peertube.social/videos/watch/278d2b7c-0f38-4aaa-afe6-9ecc0c4a34fe" From b8056e69e0a2505fc466dd5742b0986b7c1895ae Mon Sep 17 00:00:00 2001 From: lain Date: Wed, 29 Apr 2020 19:08:08 +0200 Subject: [PATCH 016/156] Object Validator Types: Add Recipients. --- .../object_validators/types/recipients.ex | 34 +++++++++++++++++++ .../types/recipients_test.exs | 27 +++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 lib/pleroma/web/activity_pub/object_validators/types/recipients.ex create mode 100644 test/web/activity_pub/object_validators/types/recipients_test.exs diff --git a/lib/pleroma/web/activity_pub/object_validators/types/recipients.ex b/lib/pleroma/web/activity_pub/object_validators/types/recipients.ex new file mode 100644 index 000000000..48fe61e1a --- /dev/null +++ b/lib/pleroma/web/activity_pub/object_validators/types/recipients.ex @@ -0,0 +1,34 @@ +defmodule Pleroma.Web.ActivityPub.ObjectValidators.Types.Recipients do + use Ecto.Type + + alias Pleroma.Web.ActivityPub.ObjectValidators.Types.ObjectID + + def type, do: {:array, ObjectID} + + def cast(object) when is_binary(object) do + cast([object]) + end + + def cast(data) when is_list(data) do + data + |> Enum.reduce({:ok, []}, fn element, acc -> + case {acc, ObjectID.cast(element)} do + {:error, _} -> :error + {_, :error} -> :error + {{:ok, list}, {:ok, id}} -> {:ok, [id | list]} + end + end) + end + + def cast(_) do + :error + end + + def dump(data) do + {:ok, data} + end + + def load(data) do + {:ok, data} + end +end diff --git a/test/web/activity_pub/object_validators/types/recipients_test.exs b/test/web/activity_pub/object_validators/types/recipients_test.exs new file mode 100644 index 000000000..f278f039b --- /dev/null +++ b/test/web/activity_pub/object_validators/types/recipients_test.exs @@ -0,0 +1,27 @@ +defmodule Pleroma.Web.ObjectValidators.Types.RecipientsTest do + alias Pleroma.Web.ActivityPub.ObjectValidators.Types.Recipients + use Pleroma.DataCase + + test "it asserts that all elements of the list are object ids" do + list = ["https://lain.com/users/lain", "invalid"] + + assert :error == Recipients.cast(list) + end + + test "it works with a list" do + list = ["https://lain.com/users/lain"] + assert {:ok, list} == Recipients.cast(list) + end + + test "it works with a list with whole objects" do + list = ["https://lain.com/users/lain", %{"id" => "https://gensokyo.2hu/users/raymoo"}] + resulting_list = ["https://gensokyo.2hu/users/raymoo", "https://lain.com/users/lain"] + assert {:ok, resulting_list} == Recipients.cast(list) + end + + test "it turns a single string into a list" do + recipient = "https://lain.com/users/lain" + + assert {:ok, [recipient]} == Recipients.cast(recipient) + end +end From 78c864cbeed8fcdbe80e2842377d4fabc9362f3c Mon Sep 17 00:00:00 2001 From: lain Date: Wed, 29 Apr 2020 19:08:36 +0200 Subject: [PATCH 017/156] LikeValidator: Use Recipients Type. --- .../web/activity_pub/object_validators/like_validator.ex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/web/activity_pub/object_validators/like_validator.ex b/lib/pleroma/web/activity_pub/object_validators/like_validator.ex index 49546ceaa..eeb0da192 100644 --- a/lib/pleroma/web/activity_pub/object_validators/like_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/like_validator.ex @@ -19,8 +19,8 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator do field(:object, Types.ObjectID) field(:actor, Types.ObjectID) field(:context, :string) - field(:to, {:array, :string}) - field(:cc, {:array, :string}) + field(:to, Types.Recipients) + field(:cc, Types.Recipients) end def cast_and_validate(data) do From 503de4b8df0bfc34008c3c856edc488633290f0e Mon Sep 17 00:00:00 2001 From: lain Date: Wed, 29 Apr 2020 19:09:51 +0200 Subject: [PATCH 018/156] ObjectValidator: Add validation for `Delete`s. --- lib/pleroma/web/activity_pub/builder.ex | 16 +++++ .../web/activity_pub/object_validator.ex | 17 +++++ .../object_validators/common_validations.ex | 20 ++++++ .../object_validators/delete_validator.ex | 64 ++++++++++++++++++ .../activity_pub/object_validator_test.exs | 67 +++++++++++++++++++ 5 files changed, 184 insertions(+) create mode 100644 lib/pleroma/web/activity_pub/object_validators/delete_validator.ex diff --git a/lib/pleroma/web/activity_pub/builder.ex b/lib/pleroma/web/activity_pub/builder.ex index 429a510b8..5cc46c3ea 100644 --- a/lib/pleroma/web/activity_pub/builder.ex +++ b/lib/pleroma/web/activity_pub/builder.ex @@ -10,6 +10,22 @@ defmodule Pleroma.Web.ActivityPub.Builder do alias Pleroma.Web.ActivityPub.Utils alias Pleroma.Web.ActivityPub.Visibility + @spec delete(User.t(), String.t()) :: {:ok, map(), keyword()} + def delete(actor, object_id) do + object = Object.normalize(object_id) + + to = (object.data["to"] || []) ++ (object.data["cc"] || []) + + {:ok, + %{ + "id" => Utils.generate_activity_id(), + "actor" => actor.ap_id, + "object" => object_id, + "to" => to, + "type" => "Delete" + }, []} + end + @spec like(User.t(), Object.t()) :: {:ok, map(), keyword()} def like(actor, object) do object_actor = User.get_cached_by_ap_id(object.data["actor"]) diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex index dc4bce059..f476c6f72 100644 --- a/lib/pleroma/web/activity_pub/object_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validator.ex @@ -12,10 +12,21 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidator do alias Pleroma.Object alias Pleroma.User alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator + alias Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator @spec validate(map(), keyword()) :: {:ok, map(), keyword()} | {:error, any()} def validate(object, meta) + def validate(%{"type" => "Delete"} = object, meta) do + with {:ok, object} <- + object + |> DeleteValidator.cast_and_validate() + |> Ecto.Changeset.apply_action(:insert) do + object = stringify_keys(object) + {:ok, object, meta} + end + end + def validate(%{"type" => "Like"} = object, meta) do with {:ok, object} <- object |> LikeValidator.cast_and_validate() |> Ecto.Changeset.apply_action(:insert) do @@ -24,6 +35,12 @@ def validate(%{"type" => "Like"} = object, meta) do end end + def stringify_keys(%{__struct__: _} = object) do + object + |> Map.from_struct() + |> stringify_keys + end + def stringify_keys(object) do object |> Map.new(fn {key, val} -> {to_string(key), val} end) diff --git a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex index b479c3918..e115d9526 100644 --- a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex +++ b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex @@ -8,6 +8,26 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.CommonValidations do alias Pleroma.Object alias Pleroma.User + def validate_recipients_presence(cng, fields \\ [:to, :cc]) do + non_empty = + fields + |> Enum.map(fn field -> get_field(cng, field) end) + |> Enum.any?(fn + [] -> false + _ -> true + end) + + if non_empty do + cng + else + fields + |> Enum.reduce(cng, fn field, cng -> + cng + |> add_error(field, "no recipients in any field") + end) + end + end + def validate_actor_presence(cng, field_name \\ :actor) do cng |> validate_change(field_name, fn field_name, actor -> diff --git a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex new file mode 100644 index 000000000..8dd5c19ad --- /dev/null +++ b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex @@ -0,0 +1,64 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator do + use Ecto.Schema + + alias Pleroma.Web.ActivityPub.ObjectValidators.Types + + import Ecto.Changeset + import Pleroma.Web.ActivityPub.ObjectValidators.CommonValidations + + @primary_key false + + embedded_schema do + field(:id, Types.ObjectID, primary_key: true) + field(:type, :string) + field(:actor, Types.ObjectID) + field(:to, Types.Recipients, default: []) + field(:cc, Types.Recipients, default: []) + field(:object, Types.ObjectID) + end + + def cast_data(data) do + %__MODULE__{} + |> cast(data, __schema__(:fields)) + end + + def validate_data(cng) do + cng + |> validate_required([:id, :type, :actor, :to, :cc, :object]) + |> validate_inclusion(:type, ["Delete"]) + |> validate_same_domain() + |> validate_object_presence() + |> validate_recipients_presence() + end + + def validate_same_domain(cng) do + actor_domain = + cng + |> get_field(:actor) + |> URI.parse() + |> (& &1.host).() + + object_domain = + cng + |> get_field(:object) + |> URI.parse() + |> (& &1.host).() + + if object_domain != actor_domain do + cng + |> add_error(:actor, "is not allowed to delete object") + else + cng + end + end + + def cast_and_validate(data) do + data + |> cast_data + |> validate_data + end +end diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 3c5c3696e..64b9ee1ec 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -1,6 +1,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidatorTest do use Pleroma.DataCase + alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.ActivityPub.ObjectValidator alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator alias Pleroma.Web.ActivityPub.Utils @@ -8,6 +9,72 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidatorTest do import Pleroma.Factory + describe "deletes" do + setup do + user = insert(:user) + {:ok, post_activity} = CommonAPI.post(user, %{"status" => "cancel me daddy"}) + + {:ok, valid_post_delete, _} = Builder.delete(user, post_activity.data["object"]) + + %{user: user, valid_post_delete: valid_post_delete} + end + + test "it is valid for a post deletion", %{valid_post_delete: valid_post_delete} do + assert match?({:ok, _, _}, ObjectValidator.validate(valid_post_delete, [])) + end + + test "it's invalid if the id is missing", %{valid_post_delete: valid_post_delete} do + no_id = + valid_post_delete + |> Map.delete("id") + + {:error, cng} = ObjectValidator.validate(no_id, []) + + assert {:id, {"can't be blank", [validation: :required]}} in cng.errors + end + + test "it's invalid if the object doesn't exist", %{valid_post_delete: valid_post_delete} do + missing_object = + valid_post_delete + |> Map.put("object", "http://does.not/exist") + + {:error, cng} = ObjectValidator.validate(missing_object, []) + + assert {:object, {"can't find object", []}} in cng.errors + end + + test "it's invalid if the actor of the object and the actor of delete are from different domains", + %{valid_post_delete: valid_post_delete} do + valid_other_actor = + valid_post_delete + |> Map.put("actor", valid_post_delete["actor"] <> "1") + + assert match?({:ok, _, _}, ObjectValidator.validate(valid_other_actor, [])) + + invalid_other_actor = + valid_post_delete + |> Map.put("actor", "https://gensokyo.2hu/users/raymoo") + + {:error, cng} = ObjectValidator.validate(invalid_other_actor, []) + + assert {:actor, {"is not allowed to delete object", []}} in cng.errors + end + + test "it's invalid if all the recipient fields are empty", %{ + valid_post_delete: valid_post_delete + } do + empty_recipients = + valid_post_delete + |> Map.put("to", []) + |> Map.put("cc", []) + + {:error, cng} = ObjectValidator.validate(empty_recipients, []) + + assert {:to, {"no recipients in any field", []}} in cng.errors + assert {:cc, {"no recipients in any field", []}} in cng.errors + end + end + describe "likes" do setup do user = insert(:user) From 8148d76ec5f85083aae9895e79f8d249e1267482 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Wed, 29 Apr 2020 14:30:07 +0400 Subject: [PATCH 019/156] Document `captcha_answer_data` parameter --- docs/API/differences_in_mastoapi_responses.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/API/differences_in_mastoapi_responses.md b/docs/API/differences_in_mastoapi_responses.md index 289f85930..041563de5 100644 --- a/docs/API/differences_in_mastoapi_responses.md +++ b/docs/API/differences_in_mastoapi_responses.md @@ -202,4 +202,5 @@ Has theses additional parameters (which are the same as in Pleroma-API): - `bio`: optional - `captcha_solution`: optional, contains provider-specific captcha solution, - `captcha_token`: optional, contains provider-specific captcha token +- `captcha_answer_data`: optional, contains provider-specific captcha data - `token`: invite token required when the registrations aren't public. From 2f77842bd3c07d915cd341f7d3ba1f9053cc3a18 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Wed, 29 Apr 2020 14:31:13 +0400 Subject: [PATCH 020/156] Fix account registration when captcha is enabled but not provided --- lib/pleroma/web/twitter_api/twitter_api.ex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex index cf1d9c74c..a6ef9a310 100644 --- a/lib/pleroma/web/twitter_api/twitter_api.ex +++ b/lib/pleroma/web/twitter_api/twitter_api.ex @@ -47,9 +47,9 @@ defp validate_captcha(params) do :ok else Pleroma.Captcha.validate( - params.captcha_token, - params.captcha_solution, - params.captcha_answer_data + params[:captcha_token], + params[:captcha_solution], + params[:captcha_answer_data] ) end end From 7b0c8f0fde495e50c5434575c452addeace39e60 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Wed, 29 Apr 2020 20:48:08 +0400 Subject: [PATCH 021/156] Add tests for account registration with captcha enabled and improve errors --- lib/pleroma/captcha/captcha.ex | 91 +++++++++------ lib/pleroma/captcha/kocaptcha.ex | 5 +- lib/pleroma/captcha/native.ex | 5 +- .../controllers/account_controller.ex | 24 +--- lib/pleroma/web/twitter_api/twitter_api.ex | 108 +++++++++++------- test/captcha_test.exs | 7 +- test/support/captcha_mock.ex | 6 +- .../controllers/account_controller_test.exs | 88 +++++++++++++- test/web/twitter_api/twitter_api_test.exs | 41 ++++--- 9 files changed, 246 insertions(+), 129 deletions(-) diff --git a/lib/pleroma/captcha/captcha.ex b/lib/pleroma/captcha/captcha.ex index cf75c3adc..e17dc2426 100644 --- a/lib/pleroma/captcha/captcha.ex +++ b/lib/pleroma/captcha/captcha.ex @@ -3,8 +3,6 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Captcha do - import Pleroma.Web.Gettext - alias Calendar.DateTime alias Plug.Crypto.KeyGenerator alias Plug.Crypto.MessageEncryptor @@ -37,19 +35,14 @@ def validate(token, captcha, answer_data) do @doc false def handle_call(:new, _from, state) do - enabled = Pleroma.Config.get([__MODULE__, :enabled]) - - if !enabled do + if not enabled?() do {:reply, %{type: :none}, state} else new_captcha = method().new() - secret_key_base = Pleroma.Config.get!([Pleroma.Web.Endpoint, :secret_key_base]) - # This make salt a little different for two keys - token = new_captcha[:token] - secret = KeyGenerator.generate(secret_key_base, token <> "_encrypt") - sign_secret = KeyGenerator.generate(secret_key_base, token <> "_sign") + {secret, sign_secret} = secret_pair(new_captcha[:token]) + # Basically copy what Phoenix.Token does here, add the time to # the actual data and make it a binary to then encrypt it encrypted_captcha_answer = @@ -71,44 +64,68 @@ def handle_call(:new, _from, state) do @doc false def handle_call({:validate, token, captcha, answer_data}, _from, state) do + {:reply, do_validate(token, captcha, answer_data), state} + end + + def enabled?, do: Pleroma.Config.get([__MODULE__, :enabled], false) + + defp seconds_valid, do: Pleroma.Config.get!([__MODULE__, :seconds_valid]) + + defp secret_pair(token) do secret_key_base = Pleroma.Config.get!([Pleroma.Web.Endpoint, :secret_key_base]) secret = KeyGenerator.generate(secret_key_base, token <> "_encrypt") sign_secret = KeyGenerator.generate(secret_key_base, token <> "_sign") + {secret, sign_secret} + end + + defp do_validate(token, captcha, answer_data) do + with {:ok, %{at: at, answer_data: answer_md5}} <- validate_answer_data(token, answer_data), + :ok <- validate_expiration(at), + :ok <- validate_usage(token), + :ok <- method().validate(token, captcha, answer_md5), + {:ok, _} <- mark_captcha_as_used(token) do + :ok + end + end + + defp validate_answer_data(token, answer_data) do + {secret, sign_secret} = secret_pair(token) + + with false <- is_nil(answer_data), + {:ok, data} <- MessageEncryptor.decrypt(answer_data, secret, sign_secret), + %{at: at, answer_data: answer_md5} <- :erlang.binary_to_term(data) do + {:ok, %{at: at, answer_data: answer_md5}} + else + _ -> {:error, :invalid_answer_data} + end + end + + defp validate_expiration(created_at) do # If the time found is less than (current_time-seconds_valid) then the time has already passed # Later we check that the time found is more than the presumed invalidatation time, that means # that the data is still valid and the captcha can be checked - seconds_valid = Pleroma.Config.get!([Pleroma.Captcha, :seconds_valid]) - valid_if_after = DateTime.subtract!(DateTime.now_utc(), seconds_valid) - result = - with false <- is_nil(answer_data), - {:ok, data} <- MessageEncryptor.decrypt(answer_data, secret, sign_secret), - %{at: at, answer_data: answer_md5} <- :erlang.binary_to_term(data) do - try do - if DateTime.before?(at, valid_if_after), - do: throw({:error, dgettext("errors", "CAPTCHA expired")}) + valid_if_after = DateTime.subtract!(DateTime.now_utc(), seconds_valid()) - if not is_nil(Cachex.get!(:used_captcha_cache, token)), - do: throw({:error, dgettext("errors", "CAPTCHA already used")}) + if DateTime.before?(created_at, valid_if_after) do + {:error, :expired} + else + :ok + end + end - res = method().validate(token, captcha, answer_md5) - # Throw if an error occurs - if res != :ok, do: throw(res) + defp validate_usage(token) do + if is_nil(Cachex.get!(:used_captcha_cache, token)) do + :ok + else + {:error, :already_used} + end + end - # Mark this captcha as used - {:ok, _} = - Cachex.put(:used_captcha_cache, token, true, ttl: :timer.seconds(seconds_valid)) - - :ok - catch - :throw, e -> e - end - else - _ -> {:error, dgettext("errors", "Invalid answer data")} - end - - {:reply, result, state} + defp mark_captcha_as_used(token) do + ttl = seconds_valid() |> :timer.seconds() + Cachex.put(:used_captcha_cache, token, true, ttl: ttl) end defp method, do: Pleroma.Config.get!([__MODULE__, :method]) diff --git a/lib/pleroma/captcha/kocaptcha.ex b/lib/pleroma/captcha/kocaptcha.ex index 06ceb20b6..6bc2fa158 100644 --- a/lib/pleroma/captcha/kocaptcha.ex +++ b/lib/pleroma/captcha/kocaptcha.ex @@ -3,7 +3,6 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Captcha.Kocaptcha do - import Pleroma.Web.Gettext alias Pleroma.Captcha.Service @behaviour Service @@ -13,7 +12,7 @@ def new do case Tesla.get(endpoint <> "/new") do {:error, _} -> - %{error: dgettext("errors", "Kocaptcha service unavailable")} + %{error: :kocaptcha_service_unavailable} {:ok, res} -> json_resp = Jason.decode!(res.body) @@ -33,6 +32,6 @@ def validate(_token, captcha, answer_data) do if not is_nil(captcha) and :crypto.hash(:md5, captcha) |> Base.encode16() == String.upcase(answer_data), do: :ok, - else: {:error, dgettext("errors", "Invalid CAPTCHA")} + else: {:error, :invalid} end end diff --git a/lib/pleroma/captcha/native.ex b/lib/pleroma/captcha/native.ex index 06c479ca9..a90631d61 100644 --- a/lib/pleroma/captcha/native.ex +++ b/lib/pleroma/captcha/native.ex @@ -3,7 +3,6 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Captcha.Native do - import Pleroma.Web.Gettext alias Pleroma.Captcha.Service @behaviour Service @@ -11,7 +10,7 @@ defmodule Pleroma.Captcha.Native do def new do case Captcha.get() do :error -> - %{error: dgettext("errors", "Captcha error")} + %{error: :captcha_error} {:ok, answer_data, img_binary} -> %{ @@ -25,7 +24,7 @@ def new do @impl Service def validate(_token, captcha, captcha) when not is_nil(captcha), do: :ok - def validate(_token, _captcha, _answer), do: {:error, dgettext("errors", "Invalid CAPTCHA")} + def validate(_token, _captcha, _answer), do: {:error, :invalid} defp token do 10 diff --git a/lib/pleroma/web/mastodon_api/controllers/account_controller.ex b/lib/pleroma/web/mastodon_api/controllers/account_controller.ex index 1eedf02d6..61b0e2f63 100644 --- a/lib/pleroma/web/mastodon_api/controllers/account_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/account_controller.ex @@ -94,24 +94,8 @@ defmodule Pleroma.Web.MastodonAPI.AccountController do @doc "POST /api/v1/accounts" def create(%{assigns: %{app: app}, body_params: params} = conn, _params) do - params = - params - |> Map.take([ - :email, - :bio, - :captcha_solution, - :captcha_token, - :captcha_answer_data, - :token, - :password, - :fullname - ]) - |> Map.put(:nickname, params.username) - |> Map.put(:fullname, Map.get(params, :fullname, params.username)) - |> Map.put(:confirm, params.password) - |> Map.put(:trusted_app, app.trusted) - with :ok <- validate_email_param(params), + :ok <- TwitterAPI.validate_captcha(app, params), {:ok, user} <- TwitterAPI.register_user(params, need_confirmation: true), {:ok, token} <- Token.create_token(app, user, %{scopes: app.scopes}) do json(conn, %{ @@ -121,7 +105,7 @@ def create(%{assigns: %{app: app}, body_params: params} = conn, _params) do created_at: Token.Utils.format_created_at(token) }) else - {:error, errors} -> json_response(conn, :bad_request, errors) + {:error, error} -> json_response(conn, :bad_request, %{error: error}) end end @@ -133,11 +117,11 @@ def create(conn, _) do render_error(conn, :forbidden, "Invalid credentials") end - defp validate_email_param(%{:email => email}) when not is_nil(email), do: :ok + defp validate_email_param(%{email: email}) when not is_nil(email), do: :ok defp validate_email_param(_) do case Pleroma.Config.get([:instance, :account_activation_required]) do - true -> {:error, %{"error" => "Missing parameters"}} + true -> {:error, dgettext("errors", "Missing parameter: %{name}", name: "email")} _ -> :ok end end diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex index a6ef9a310..5cfb385ac 100644 --- a/lib/pleroma/web/twitter_api/twitter_api.ex +++ b/lib/pleroma/web/twitter_api/twitter_api.ex @@ -3,54 +3,27 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.TwitterAPI.TwitterAPI do + import Pleroma.Web.Gettext + alias Pleroma.Emails.Mailer alias Pleroma.Emails.UserEmail alias Pleroma.Repo alias Pleroma.User alias Pleroma.UserInviteToken - require Pleroma.Constants - def register_user(params, opts \\ []) do params = params - |> Map.take([ - :nickname, - :password, - :captcha_solution, - :captcha_token, - :captcha_answer_data, - :token, - :email, - :trusted_app - ]) - |> Map.put(:bio, User.parse_bio(params[:bio] || "")) - |> Map.put(:name, params.fullname) - |> Map.put(:password_confirmation, params[:confirm]) + |> Map.take([:email, :token, :password]) + |> Map.put(:bio, params |> Map.get(:bio, "") |> User.parse_bio()) + |> Map.put(:nickname, params[:username]) + |> Map.put(:name, Map.get(params, :fullname, params[:username])) + |> Map.put(:password_confirmation, params[:password]) - case validate_captcha(params) do - :ok -> - if Pleroma.Config.get([:instance, :registrations_open]) do - create_user(params, opts) - else - create_user_with_invite(params, opts) - end - - {:error, error} -> - # I have no idea how this error handling works - {:error, %{error: Jason.encode!(%{captcha: [error]})}} - end - end - - defp validate_captcha(params) do - if params[:trusted_app] || not Pleroma.Config.get([Pleroma.Captcha, :enabled]) do - :ok + if Pleroma.Config.get([:instance, :registrations_open]) do + create_user(params, opts) else - Pleroma.Captcha.validate( - params[:captcha_token], - params[:captcha_solution], - params[:captcha_answer_data] - ) + create_user_with_invite(params, opts) end end @@ -75,16 +48,17 @@ defp create_user(params, opts) do {:error, changeset} -> errors = - Ecto.Changeset.traverse_errors(changeset, fn {msg, _opts} -> msg end) + changeset + |> Ecto.Changeset.traverse_errors(fn {msg, _opts} -> msg end) |> Jason.encode!() - {:error, %{error: errors}} + {:error, errors} end end def password_reset(nickname_or_email) do with true <- is_binary(nickname_or_email), - %User{local: true, email: email} = user when not is_nil(email) <- + %User{local: true, email: email} = user when is_binary(email) <- User.get_by_nickname_or_email(nickname_or_email), {:ok, token_record} <- Pleroma.PasswordResetToken.create_token(user) do user @@ -106,4 +80,58 @@ def password_reset(nickname_or_email) do {:error, "unknown user"} end end + + def validate_captcha(app, params) do + if app.trusted || not Pleroma.Captcha.enabled?() do + :ok + else + do_validate_captcha(params) + end + end + + defp do_validate_captcha(params) do + with :ok <- validate_captcha_presence(params), + :ok <- + Pleroma.Captcha.validate( + params[:captcha_token], + params[:captcha_solution], + params[:captcha_answer_data] + ) do + :ok + else + {:error, :captcha_error} -> + captcha_error(dgettext("errors", "CAPTCHA Error")) + + {:error, :invalid} -> + captcha_error(dgettext("errors", "Invalid CAPTCHA")) + + {:error, :kocaptcha_service_unavailable} -> + captcha_error(dgettext("errors", "Kocaptcha service unavailable")) + + {:error, :expired} -> + captcha_error(dgettext("errors", "CAPTCHA expired")) + + {:error, :already_used} -> + captcha_error(dgettext("errors", "CAPTCHA already used")) + + {:error, :invalid_answer_data} -> + captcha_error(dgettext("errors", "Invalid answer data")) + + {:error, error} -> + captcha_error(error) + end + end + + defp validate_captcha_presence(params) do + [:captcha_solution, :captcha_token, :captcha_answer_data] + |> Enum.find_value(:ok, fn key -> + unless is_binary(params[key]) do + error = dgettext("errors", "Invalid CAPTCHA (Missing parameter: %{name})", name: key) + {:error, error} + end + end) + end + + # For some reason FE expects error message to be a serialized JSON + defp captcha_error(error), do: {:error, Jason.encode!(%{captcha: [error]})} end diff --git a/test/captcha_test.exs b/test/captcha_test.exs index ac1d846e8..1ab9019ab 100644 --- a/test/captcha_test.exs +++ b/test/captcha_test.exs @@ -61,7 +61,7 @@ test "new and validate" do assert is_binary(answer) assert :ok = Native.validate(token, answer, answer) - assert {:error, "Invalid CAPTCHA"} == Native.validate(token, answer, answer <> "foobar") + assert {:error, :invalid} == Native.validate(token, answer, answer <> "foobar") end end @@ -78,6 +78,7 @@ test "validate" do assert is_binary(answer) assert :ok = Captcha.validate(token, "63615261b77f5354fb8c4e4986477555", answer) + Cachex.del(:used_captcha_cache, token) end test "doesn't validate invalid answer" do @@ -92,7 +93,7 @@ test "doesn't validate invalid answer" do assert is_binary(answer) - assert {:error, "Invalid answer data"} = + assert {:error, :invalid_answer_data} = Captcha.validate(token, "63615261b77f5354fb8c4e4986477555", answer <> "foobar") end @@ -108,7 +109,7 @@ test "nil answer_data" do assert is_binary(answer) - assert {:error, "Invalid answer data"} = + assert {:error, :invalid_answer_data} = Captcha.validate(token, "63615261b77f5354fb8c4e4986477555", nil) end end diff --git a/test/support/captcha_mock.ex b/test/support/captcha_mock.ex index 6dae94edf..7b0c1d5af 100644 --- a/test/support/captcha_mock.ex +++ b/test/support/captcha_mock.ex @@ -6,12 +6,16 @@ defmodule Pleroma.Captcha.Mock do alias Pleroma.Captcha.Service @behaviour Service + @solution "63615261b77f5354fb8c4e4986477555" + + def solution, do: @solution + @impl Service def new, do: %{ type: :mock, token: "afa1815e14e29355e6c8f6b143a39fa2", - answer_data: "63615261b77f5354fb8c4e4986477555", + answer_data: @solution, url: "https://example.org/captcha.png" } diff --git a/test/web/mastodon_api/controllers/account_controller_test.exs b/test/web/mastodon_api/controllers/account_controller_test.exs index ba70ba66c..b9da7e924 100644 --- a/test/web/mastodon_api/controllers/account_controller_test.exs +++ b/test/web/mastodon_api/controllers/account_controller_test.exs @@ -925,7 +925,8 @@ test "returns bad_request if missing email params when :account_activation_requi |> Map.put(:remote_ip, {127, 0, 0, 5}) |> post("/api/v1/accounts", Map.delete(valid_params, :email)) - assert json_response_and_validate_schema(res, 400) == %{"error" => "Missing parameters"} + assert json_response_and_validate_schema(res, 400) == + %{"error" => "Missing parameter: email"} res = conn @@ -1093,6 +1094,91 @@ test "respects rate limit setting", %{conn: conn} do end end + describe "create account with enabled captcha" do + setup %{conn: conn} do + app_token = insert(:oauth_token, user: nil) + + conn = + conn + |> put_req_header("authorization", "Bearer " <> app_token.token) + |> put_req_header("content-type", "multipart/form-data") + + [conn: conn] + end + + setup do: clear_config([Pleroma.Captcha, :enabled], true) + + test "creates an account and returns 200 if captcha is valid", %{conn: conn} do + %{token: token, answer_data: answer_data} = Pleroma.Captcha.new() + + params = %{ + username: "lain", + email: "lain@example.org", + password: "PlzDontHackLain", + agreement: true, + captcha_solution: Pleroma.Captcha.Mock.solution(), + captcha_token: token, + captcha_answer_data: answer_data + } + + assert %{ + "access_token" => access_token, + "created_at" => _, + "scope" => ["read"], + "token_type" => "Bearer" + } = + conn + |> post("/api/v1/accounts", params) + |> json_response_and_validate_schema(:ok) + + assert Token |> Repo.get_by(token: access_token) |> Repo.preload(:user) |> Map.get(:user) + + Cachex.del(:used_captcha_cache, token) + end + + test "returns 400 if any captcha field is not provided", %{conn: conn} do + captcha_fields = [:captcha_solution, :captcha_token, :captcha_answer_data] + + valid_params = %{ + username: "lain", + email: "lain@example.org", + password: "PlzDontHackLain", + agreement: true, + captcha_solution: "xx", + captcha_token: "xx", + captcha_answer_data: "xx" + } + + for field <- captcha_fields do + expected = %{ + "error" => "{\"captcha\":[\"Invalid CAPTCHA (Missing parameter: #{field})\"]}" + } + + assert expected == + conn + |> post("/api/v1/accounts", Map.delete(valid_params, field)) + |> json_response_and_validate_schema(:bad_request) + end + end + + test "returns an error if captcha is invalid", %{conn: conn} do + params = %{ + username: "lain", + email: "lain@example.org", + password: "PlzDontHackLain", + agreement: true, + captcha_solution: "cofe", + captcha_token: "cofe", + captcha_answer_data: "cofe" + } + + assert %{"error" => "{\"captcha\":[\"Invalid answer data\"]}"} == + conn + |> post("/api/v1/accounts", params) + |> json_response_and_validate_schema(:bad_request) + end + end + describe "GET /api/v1/accounts/:id/lists - account_lists" do test "returns lists to which the account belongs" do %{user: user, conn: conn} = oauth_access(["read:lists"]) diff --git a/test/web/twitter_api/twitter_api_test.exs b/test/web/twitter_api/twitter_api_test.exs index 7926a0757..368533292 100644 --- a/test/web/twitter_api/twitter_api_test.exs +++ b/test/web/twitter_api/twitter_api_test.exs @@ -18,7 +18,7 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do test "it registers a new user and returns the user." do data = %{ - :nickname => "lain", + :username => "lain", :email => "lain@wired.jp", :fullname => "lain iwakura", :password => "bear", @@ -35,7 +35,7 @@ test "it registers a new user and returns the user." do test "it registers a new user with empty string in bio and returns the user." do data = %{ - :nickname => "lain", + :username => "lain", :email => "lain@wired.jp", :fullname => "lain iwakura", :bio => "", @@ -60,7 +60,7 @@ test "it sends confirmation email if :account_activation_required is specified i end data = %{ - :nickname => "lain", + :username => "lain", :email => "lain@wired.jp", :fullname => "lain iwakura", :bio => "", @@ -87,7 +87,7 @@ test "it sends confirmation email if :account_activation_required is specified i test "it registers a new user and parses mentions in the bio" do data1 = %{ - :nickname => "john", + :username => "john", :email => "john@gmail.com", :fullname => "John Doe", :bio => "test", @@ -98,7 +98,7 @@ test "it registers a new user and parses mentions in the bio" do {:ok, user1} = TwitterAPI.register_user(data1) data2 = %{ - :nickname => "lain", + :username => "lain", :email => "lain@wired.jp", :fullname => "lain iwakura", :bio => "@john test", @@ -123,7 +123,7 @@ test "returns user on success" do {:ok, invite} = UserInviteToken.create_invite() data = %{ - :nickname => "vinny", + :username => "vinny", :email => "pasta@pizza.vs", :fullname => "Vinny Vinesauce", :bio => "streamer", @@ -145,7 +145,7 @@ test "returns user on success" do test "returns error on invalid token" do data = %{ - :nickname => "GrimReaper", + :username => "GrimReaper", :email => "death@reapers.afterlife", :fullname => "Reaper Grim", :bio => "Your time has come", @@ -165,7 +165,7 @@ test "returns error on expired token" do UserInviteToken.update_invite!(invite, used: true) data = %{ - :nickname => "GrimReaper", + :username => "GrimReaper", :email => "death@reapers.afterlife", :fullname => "Reaper Grim", :bio => "Your time has come", @@ -186,7 +186,7 @@ test "returns error on expired token" do setup do data = %{ - :nickname => "vinny", + :username => "vinny", :email => "pasta@pizza.vs", :fullname => "Vinny Vinesauce", :bio => "streamer", @@ -250,7 +250,7 @@ test "returns user on success, after him registration fails" do UserInviteToken.update_invite!(invite, uses: 99) data = %{ - :nickname => "vinny", + :username => "vinny", :email => "pasta@pizza.vs", :fullname => "Vinny Vinesauce", :bio => "streamer", @@ -269,7 +269,7 @@ test "returns user on success, after him registration fails" do AccountView.render("show.json", %{user: fetched_user}) data = %{ - :nickname => "GrimReaper", + :username => "GrimReaper", :email => "death@reapers.afterlife", :fullname => "Reaper Grim", :bio => "Your time has come", @@ -292,7 +292,7 @@ test "returns user on success" do {:ok, invite} = UserInviteToken.create_invite(%{expires_at: Date.utc_today(), max_use: 100}) data = %{ - :nickname => "vinny", + :username => "vinny", :email => "pasta@pizza.vs", :fullname => "Vinny Vinesauce", :bio => "streamer", @@ -317,7 +317,7 @@ test "error after max uses" do UserInviteToken.update_invite!(invite, uses: 99) data = %{ - :nickname => "vinny", + :username => "vinny", :email => "pasta@pizza.vs", :fullname => "Vinny Vinesauce", :bio => "streamer", @@ -335,7 +335,7 @@ test "error after max uses" do AccountView.render("show.json", %{user: fetched_user}) data = %{ - :nickname => "GrimReaper", + :username => "GrimReaper", :email => "death@reapers.afterlife", :fullname => "Reaper Grim", :bio => "Your time has come", @@ -355,7 +355,7 @@ test "returns error on overdue date" do UserInviteToken.create_invite(%{expires_at: Date.add(Date.utc_today(), -1), max_use: 100}) data = %{ - :nickname => "GrimReaper", + :username => "GrimReaper", :email => "death@reapers.afterlife", :fullname => "Reaper Grim", :bio => "Your time has come", @@ -377,7 +377,7 @@ test "returns error on with overdue date and after max" do UserInviteToken.update_invite!(invite, uses: 100) data = %{ - :nickname => "GrimReaper", + :username => "GrimReaper", :email => "death@reapers.afterlife", :fullname => "Reaper Grim", :bio => "Your time has come", @@ -395,16 +395,15 @@ test "returns error on with overdue date and after max" do test "it returns the error on registration problems" do data = %{ - :nickname => "lain", + :username => "lain", :email => "lain@wired.jp", :fullname => "lain iwakura", - :bio => "close the world.", - :password => "bear" + :bio => "close the world." } - {:error, error_object} = TwitterAPI.register_user(data) + {:error, error} = TwitterAPI.register_user(data) - assert is_binary(error_object[:error]) + assert is_binary(error) refute User.get_cached_by_nickname("lain") end From 39a78998d0a729323406497332f9402301994811 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Wed, 29 Apr 2020 21:01:16 +0400 Subject: [PATCH 022/156] Change Pleroma.CaptchaTest to be a regular module instead of GenServer --- lib/pleroma/application.ex | 1 - lib/pleroma/captcha/captcha.ex | 58 ++++++++-------------------------- 2 files changed, 14 insertions(+), 45 deletions(-) diff --git a/lib/pleroma/application.ex b/lib/pleroma/application.ex index a00938c04..308d8cffa 100644 --- a/lib/pleroma/application.ex +++ b/lib/pleroma/application.ex @@ -73,7 +73,6 @@ def start(_type, _args) do Pleroma.Repo, Config.TransferTask, Pleroma.Emoji, - Pleroma.Captcha, Pleroma.Plugs.RateLimiter.Supervisor ] ++ cachex_children() ++ diff --git a/lib/pleroma/captcha/captcha.ex b/lib/pleroma/captcha/captcha.ex index e17dc2426..6ab754b6f 100644 --- a/lib/pleroma/captcha/captcha.ex +++ b/lib/pleroma/captcha/captcha.ex @@ -7,36 +7,12 @@ defmodule Pleroma.Captcha do alias Plug.Crypto.KeyGenerator alias Plug.Crypto.MessageEncryptor - use GenServer - - @doc false - def start_link(_) do - GenServer.start_link(__MODULE__, [], name: __MODULE__) - end - - @doc false - def init(_) do - {:ok, nil} - end - @doc """ Ask the configured captcha service for a new captcha """ def new do - GenServer.call(__MODULE__, :new) - end - - @doc """ - Ask the configured captcha service to validate the captcha - """ - def validate(token, captcha, answer_data) do - GenServer.call(__MODULE__, {:validate, token, captcha, answer_data}) - end - - @doc false - def handle_call(:new, _from, state) do if not enabled?() do - {:reply, %{type: :none}, state} + %{type: :none} else new_captcha = method().new() @@ -53,18 +29,22 @@ def handle_call(:new, _from, state) do |> :erlang.term_to_binary() |> MessageEncryptor.encrypt(secret, sign_secret) - { - :reply, - # Replace the answer with the encrypted answer - %{new_captcha | answer_data: encrypted_captcha_answer}, - state - } + # Replace the answer with the encrypted answer + %{new_captcha | answer_data: encrypted_captcha_answer} end end - @doc false - def handle_call({:validate, token, captcha, answer_data}, _from, state) do - {:reply, do_validate(token, captcha, answer_data), state} + @doc """ + Ask the configured captcha service to validate the captcha + """ + def validate(token, captcha, answer_data) do + with {:ok, %{at: at, answer_data: answer_md5}} <- validate_answer_data(token, answer_data), + :ok <- validate_expiration(at), + :ok <- validate_usage(token), + :ok <- method().validate(token, captcha, answer_md5), + {:ok, _} <- mark_captcha_as_used(token) do + :ok + end end def enabled?, do: Pleroma.Config.get([__MODULE__, :enabled], false) @@ -79,16 +59,6 @@ defp secret_pair(token) do {secret, sign_secret} end - defp do_validate(token, captcha, answer_data) do - with {:ok, %{at: at, answer_data: answer_md5}} <- validate_answer_data(token, answer_data), - :ok <- validate_expiration(at), - :ok <- validate_usage(token), - :ok <- method().validate(token, captcha, answer_md5), - {:ok, _} <- mark_captcha_as_used(token) do - :ok - end - end - defp validate_answer_data(token, answer_data) do {secret, sign_secret} = secret_pair(token) From 3ead44a9aa14daebfb63de089d047f4fe9ee3bdd Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 29 Apr 2020 15:49:48 -0500 Subject: [PATCH 023/156] Update AdminFE build in preparation for the 2.0.3 release --- .../{app.85534e14.css => app.796ca6d4.css} | 2 +- ...a.5a5f973d.css => chunk-0558.af0d89cd.css} | 0 priv/static/adminfe/chunk-0778.d9e7180a.css | 1 + ...c.90dffac4.css => chunk-0961.d3692214.css} | 0 priv/static/adminfe/chunk-0d8f.d85f5a29.css | 1 - priv/static/adminfe/chunk-13e9.98eaadba.css | 1 - priv/static/adminfe/chunk-22d2.813009b9.css | 1 + priv/static/adminfe/chunk-2b9c.feb61a2b.css | 1 - ...a.f1130f8e.css => chunk-3384.2278f87c.css} | 2 +- priv/static/adminfe/chunk-4011.c4799067.css | 1 + priv/static/adminfe/chunk-46ef.145de4f9.css | 1 - priv/static/adminfe/chunk-6b68.0cc00484.css | 1 + ...b.dd09fe2e.css => chunk-6e81.0e80d020.css} | 0 priv/static/adminfe/chunk-7637.941c4edb.css | 1 + priv/static/adminfe/chunk-87b3.3c6ede9c.css | 1 - priv/static/adminfe/chunk-88c9.184084df.css | 1 - priv/static/adminfe/chunk-970d.f59cca8c.css | 1 + priv/static/adminfe/chunk-cf57.26596375.css | 1 - priv/static/adminfe/chunk-d38a.cabdc22e.css | 1 + priv/static/adminfe/chunk-e458.f88bafea.css | 1 + priv/static/adminfe/index.html | 2 +- priv/static/adminfe/static/js/app.203f69f8.js | Bin 0 -> 187722 bytes .../adminfe/static/js/app.203f69f8.js.map | Bin 0 -> 416278 bytes priv/static/adminfe/static/js/app.d898cc2b.js | Bin 185128 -> 0 bytes .../adminfe/static/js/app.d898cc2b.js.map | Bin 410154 -> 0 bytes ...5fa.34070731.js => chunk-0558.75954137.js} | Bin 7919 -> 7919 bytes ...0731.js.map => chunk-0558.75954137.js.map} | Bin 17438 -> 17438 bytes .../adminfe/static/js/chunk-0778.b17650df.js | Bin 0 -> 9756 bytes .../static/js/chunk-0778.b17650df.js.map | Bin 0 -> 32393 bytes ...76c.e4ceccca.js => chunk-0961.ef33e81b.js} | Bin 5112 -> 5112 bytes ...ccca.js.map => chunk-0961.ef33e81b.js.map} | Bin 19744 -> 19744 bytes .../adminfe/static/js/chunk-0d8f.6d50ff86.js | Bin 33538 -> 0 bytes .../static/js/chunk-0d8f.6d50ff86.js.map | Bin 116201 -> 0 bytes .../adminfe/static/js/chunk-136a.c4719e3e.js | Bin 19553 -> 0 bytes .../static/js/chunk-136a.c4719e3e.js.map | Bin 69090 -> 0 bytes .../adminfe/static/js/chunk-13e9.79da1569.js | Bin 9528 -> 0 bytes .../static/js/chunk-13e9.79da1569.js.map | Bin 40125 -> 0 bytes .../adminfe/static/js/chunk-22d2.a0cf7976.js | Bin 0 -> 30624 bytes .../static/js/chunk-22d2.a0cf7976.js.map | Bin 0 -> 103450 bytes .../adminfe/static/js/chunk-2b9c.cf321c74.js | Bin 28194 -> 0 bytes .../static/js/chunk-2b9c.cf321c74.js.map | Bin 95810 -> 0 bytes .../adminfe/static/js/chunk-3384.458ffaf1.js | Bin 0 -> 23953 bytes .../static/js/chunk-3384.458ffaf1.js.map | Bin 0 -> 85906 bytes .../adminfe/static/js/chunk-4011.67fb1692.js | Bin 0 -> 117521 bytes .../static/js/chunk-4011.67fb1692.js.map | Bin 0 -> 397967 bytes .../adminfe/static/js/chunk-46ef.671cac7d.js | Bin 7765 -> 0 bytes .../static/js/chunk-46ef.671cac7d.js.map | Bin 26170 -> 0 bytes .../adminfe/static/js/chunk-6b68.fbc0f684.js | Bin 0 -> 14790 bytes .../static/js/chunk-6b68.fbc0f684.js.map | Bin 0 -> 40172 bytes ...ffb.0e8f3772.js => chunk-6e81.3733ace2.js} | Bin 2080 -> 2080 bytes ...3772.js.map => chunk-6e81.3733ace2.js.map} | Bin 9090 -> 9090 bytes .../adminfe/static/js/chunk-7637.8f5fb36e.js | Bin 0 -> 10877 bytes .../static/js/chunk-7637.8f5fb36e.js.map | Bin 0 -> 44563 bytes .../adminfe/static/js/chunk-87b3.3c11ef09.js | Bin 103449 -> 0 bytes .../static/js/chunk-87b3.3c11ef09.js.map | Bin 358904 -> 0 bytes .../adminfe/static/js/chunk-88c9.e3583744.js | Bin 24234 -> 0 bytes .../static/js/chunk-88c9.e3583744.js.map | Bin 92387 -> 0 bytes .../adminfe/static/js/chunk-970d.2457e066.js | Bin 0 -> 26608 bytes .../static/js/chunk-970d.2457e066.js.map | Bin 0 -> 100000 bytes .../adminfe/static/js/chunk-cf57.3e45f57f.js | Bin 29728 -> 0 bytes .../static/js/chunk-cf57.3e45f57f.js.map | Bin 89855 -> 0 bytes .../adminfe/static/js/chunk-d38a.a851004a.js | Bin 0 -> 20205 bytes .../static/js/chunk-d38a.a851004a.js.map | Bin 0 -> 81345 bytes .../adminfe/static/js/chunk-e458.4e5aad44.js | Bin 0 -> 16756 bytes .../static/js/chunk-e458.4e5aad44.js.map | Bin 0 -> 55666 bytes .../adminfe/static/js/runtime.1b4f6ce0.js | Bin 0 -> 4032 bytes .../adminfe/static/js/runtime.1b4f6ce0.js.map | Bin 0 -> 16879 bytes .../adminfe/static/js/runtime.cb26bbd1.js | Bin 3969 -> 0 bytes .../adminfe/static/js/runtime.cb26bbd1.js.map | Bin 16759 -> 0 bytes 69 files changed, 11 insertions(+), 10 deletions(-) rename priv/static/adminfe/{app.85534e14.css => app.796ca6d4.css} (68%) rename priv/static/adminfe/{chunk-15fa.5a5f973d.css => chunk-0558.af0d89cd.css} (100%) create mode 100644 priv/static/adminfe/chunk-0778.d9e7180a.css rename priv/static/adminfe/{chunk-876c.90dffac4.css => chunk-0961.d3692214.css} (100%) delete mode 100644 priv/static/adminfe/chunk-0d8f.d85f5a29.css delete mode 100644 priv/static/adminfe/chunk-13e9.98eaadba.css create mode 100644 priv/static/adminfe/chunk-22d2.813009b9.css delete mode 100644 priv/static/adminfe/chunk-2b9c.feb61a2b.css rename priv/static/adminfe/{chunk-136a.f1130f8e.css => chunk-3384.2278f87c.css} (64%) create mode 100644 priv/static/adminfe/chunk-4011.c4799067.css delete mode 100644 priv/static/adminfe/chunk-46ef.145de4f9.css create mode 100644 priv/static/adminfe/chunk-6b68.0cc00484.css rename priv/static/adminfe/{chunk-4ffb.dd09fe2e.css => chunk-6e81.0e80d020.css} (100%) create mode 100644 priv/static/adminfe/chunk-7637.941c4edb.css delete mode 100644 priv/static/adminfe/chunk-87b3.3c6ede9c.css delete mode 100644 priv/static/adminfe/chunk-88c9.184084df.css create mode 100644 priv/static/adminfe/chunk-970d.f59cca8c.css delete mode 100644 priv/static/adminfe/chunk-cf57.26596375.css create mode 100644 priv/static/adminfe/chunk-d38a.cabdc22e.css create mode 100644 priv/static/adminfe/chunk-e458.f88bafea.css create mode 100644 priv/static/adminfe/static/js/app.203f69f8.js create mode 100644 priv/static/adminfe/static/js/app.203f69f8.js.map delete mode 100644 priv/static/adminfe/static/js/app.d898cc2b.js delete mode 100644 priv/static/adminfe/static/js/app.d898cc2b.js.map rename priv/static/adminfe/static/js/{chunk-15fa.34070731.js => chunk-0558.75954137.js} (98%) rename priv/static/adminfe/static/js/{chunk-15fa.34070731.js.map => chunk-0558.75954137.js.map} (99%) create mode 100644 priv/static/adminfe/static/js/chunk-0778.b17650df.js create mode 100644 priv/static/adminfe/static/js/chunk-0778.b17650df.js.map rename priv/static/adminfe/static/js/{chunk-876c.e4ceccca.js => chunk-0961.ef33e81b.js} (97%) rename priv/static/adminfe/static/js/{chunk-876c.e4ceccca.js.map => chunk-0961.ef33e81b.js.map} (99%) delete mode 100644 priv/static/adminfe/static/js/chunk-0d8f.6d50ff86.js delete mode 100644 priv/static/adminfe/static/js/chunk-0d8f.6d50ff86.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-136a.c4719e3e.js delete mode 100644 priv/static/adminfe/static/js/chunk-136a.c4719e3e.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-13e9.79da1569.js delete mode 100644 priv/static/adminfe/static/js/chunk-13e9.79da1569.js.map create mode 100644 priv/static/adminfe/static/js/chunk-22d2.a0cf7976.js create mode 100644 priv/static/adminfe/static/js/chunk-22d2.a0cf7976.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-2b9c.cf321c74.js delete mode 100644 priv/static/adminfe/static/js/chunk-2b9c.cf321c74.js.map create mode 100644 priv/static/adminfe/static/js/chunk-3384.458ffaf1.js create mode 100644 priv/static/adminfe/static/js/chunk-3384.458ffaf1.js.map create mode 100644 priv/static/adminfe/static/js/chunk-4011.67fb1692.js create mode 100644 priv/static/adminfe/static/js/chunk-4011.67fb1692.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-46ef.671cac7d.js delete mode 100644 priv/static/adminfe/static/js/chunk-46ef.671cac7d.js.map create mode 100644 priv/static/adminfe/static/js/chunk-6b68.fbc0f684.js create mode 100644 priv/static/adminfe/static/js/chunk-6b68.fbc0f684.js.map rename priv/static/adminfe/static/js/{chunk-4ffb.0e8f3772.js => chunk-6e81.3733ace2.js} (85%) rename priv/static/adminfe/static/js/{chunk-4ffb.0e8f3772.js.map => chunk-6e81.3733ace2.js.map} (98%) create mode 100644 priv/static/adminfe/static/js/chunk-7637.8f5fb36e.js create mode 100644 priv/static/adminfe/static/js/chunk-7637.8f5fb36e.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-87b3.3c11ef09.js delete mode 100644 priv/static/adminfe/static/js/chunk-87b3.3c11ef09.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-88c9.e3583744.js delete mode 100644 priv/static/adminfe/static/js/chunk-88c9.e3583744.js.map create mode 100644 priv/static/adminfe/static/js/chunk-970d.2457e066.js create mode 100644 priv/static/adminfe/static/js/chunk-970d.2457e066.js.map delete mode 100644 priv/static/adminfe/static/js/chunk-cf57.3e45f57f.js delete mode 100644 priv/static/adminfe/static/js/chunk-cf57.3e45f57f.js.map create mode 100644 priv/static/adminfe/static/js/chunk-d38a.a851004a.js create mode 100644 priv/static/adminfe/static/js/chunk-d38a.a851004a.js.map create mode 100644 priv/static/adminfe/static/js/chunk-e458.4e5aad44.js create mode 100644 priv/static/adminfe/static/js/chunk-e458.4e5aad44.js.map create mode 100644 priv/static/adminfe/static/js/runtime.1b4f6ce0.js create mode 100644 priv/static/adminfe/static/js/runtime.1b4f6ce0.js.map delete mode 100644 priv/static/adminfe/static/js/runtime.cb26bbd1.js delete mode 100644 priv/static/adminfe/static/js/runtime.cb26bbd1.js.map diff --git a/priv/static/adminfe/app.85534e14.css b/priv/static/adminfe/app.796ca6d4.css similarity index 68% rename from priv/static/adminfe/app.85534e14.css rename to priv/static/adminfe/app.796ca6d4.css index 473ec1b86..1b83a8a39 100644 --- a/priv/static/adminfe/app.85534e14.css +++ b/priv/static/adminfe/app.796ca6d4.css @@ -1 +1 @@ -.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .28s;transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-enter-active,.fade-transform-leave-active{-webkit-transition:all .5s;transition:all .5s}.fade-transform-enter{opacity:0;-webkit-transform:translateX(-30px);transform:translateX(-30px)}.fade-transform-leave-to{opacity:0;-webkit-transform:translateX(30px);transform:translateX(30px)}.breadcrumb-enter-active,.breadcrumb-leave-active{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-enter,.breadcrumb-leave-active{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}.breadcrumb-move{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-leave-active{position:absolute}.el-breadcrumb__inner,.el-breadcrumb__inner a{font-weight:400!important}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.cell .el-tag{margin-right:0}.small-padding .cell{padding-left:5px;padding-right:5px}.fixed-width .el-button--mini{padding:7px 10px;width:60px}.status-col .cell{padding:0 10px;text-align:center}.status-col .cell .el-tag{margin-right:0}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.article-textarea textarea{padding-right:40px;resize:none;border-radius:0;border:none;border-bottom:1px solid #bfcbd9}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.el-dropdown-menu a{display:block}#app .main-container{min-height:100%;-webkit-transition:margin-left .28s;transition:margin-left .28s;margin-left:180px;position:relative}#app .sidebar-container{-webkit-transition:width .28s;transition:width .28s;width:180px!important;height:100%;position:fixed;font-size:0;top:0;bottom:0;left:0;z-index:1001;overflow:hidden}#app .sidebar-container .horizontal-collapse-transition{-webkit-transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out;transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out}#app .sidebar-container .scrollbar-wrapper{overflow-x:hidden!important}#app .sidebar-container .scrollbar-wrapper .el-scrollbar__view{height:100%}#app .sidebar-container .el-scrollbar__bar.is-vertical{right:0}#app .sidebar-container .is-horizontal{display:none}#app .sidebar-container a{display:inline-block;width:100%;overflow:hidden}#app .sidebar-container .svg-icon{margin-right:16px}#app .sidebar-container .el-menu{border:none;height:100%;width:100%!important}#app .sidebar-container .el-submenu__title:hover,#app .sidebar-container .submenu-title-noDropdown:hover{background-color:#263445!important}#app .sidebar-container .is-active>.el-submenu__title{color:#f4f4f5!important}#app .sidebar-container .el-submenu .el-menu-item,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title{min-width:180px!important;background-color:#1f2d3d!important}#app .sidebar-container .el-submenu .el-menu-item:hover,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#001528!important}#app .hideSidebar .sidebar-container{width:36px!important}#app .hideSidebar .main-container{margin-left:36px}#app .hideSidebar .submenu-title-noDropdown{padding-left:10px!important;position:relative}#app .hideSidebar .submenu-title-noDropdown .el-tooltip{padding:0 10px!important}#app .hideSidebar .el-submenu{overflow:hidden}#app .hideSidebar .el-submenu>.el-submenu__title{padding-left:10px!important}#app .hideSidebar .el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}#app .hideSidebar .el-menu--collapse .el-submenu>.el-submenu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}#app .el-menu--collapse .el-menu .el-submenu{min-width:180px!important}#app .mobile .main-container{margin-left:0}#app .mobile .sidebar-container{-webkit-transition:-webkit-transform .28s;transition:-webkit-transform .28s;transition:transform .28s;transition:transform .28s,-webkit-transform .28s;width:180px!important}#app .mobile.hideSidebar .sidebar-container{pointer-events:none;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(-180px,0,0);transform:translate3d(-180px,0,0)}#app .withoutAnimation .main-container,#app .withoutAnimation .sidebar-container{-webkit-transition:none;transition:none}.el-menu--vertical>.el-menu .svg-icon{margin-right:16px}.el-menu--vertical .el-menu-item:hover,.el-menu--vertical .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#263445!important}.blue-btn{background:#324157}.blue-btn:hover{color:#324157}.blue-btn:hover:after,.blue-btn:hover:before{background:#324157}.light-blue-btn{background:#3a71a8}.light-blue-btn:hover{color:#3a71a8}.light-blue-btn:hover:after,.light-blue-btn:hover:before{background:#3a71a8}.red-btn{background:#c03639}.red-btn:hover{color:#c03639}.red-btn:hover:after,.red-btn:hover:before{background:#c03639}.pink-btn{background:#e65d6e}.pink-btn:hover{color:#e65d6e}.pink-btn:hover:after,.pink-btn:hover:before{background:#e65d6e}.green-btn{background:#30b08f}.green-btn:hover{color:#30b08f}.green-btn:hover:after,.green-btn:hover:before{background:#30b08f}.tiffany-btn{background:#4ab7bd}.tiffany-btn:hover{color:#4ab7bd}.tiffany-btn:hover:after,.tiffany-btn:hover:before{background:#4ab7bd}.yellow-btn{background:#fec171}.yellow-btn:hover{color:#fec171}.yellow-btn:hover:after,.yellow-btn:hover:before{background:#fec171}.pan-btn{font-size:14px;color:#fff;padding:14px 36px;border-radius:8px;border:none;outline:none;-webkit-transition:all .6s ease;transition:all .6s ease;position:relative;display:inline-block}.pan-btn:hover{background:#fff}.pan-btn:hover:after,.pan-btn:hover:before{width:100%;-webkit-transition:all .6s ease;transition:all .6s ease}.pan-btn:after,.pan-btn:before{content:"";position:absolute;top:0;right:0;height:2px;width:0;-webkit-transition:all .4s ease;transition:all .4s ease}.pan-btn:after{right:inherit;top:inherit;left:0;bottom:0}.custom-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;color:#fff;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;padding:10px 15px;font-size:14px;border-radius:4px}body{height:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;background:#fff;color:#000}label{font-weight:700}html{-webkit-box-sizing:border-box;box-sizing:border-box}#app,html{height:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}.no-padding{padding:0!important}.padding-content{padding:4px 0}a:active,a:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}div:focus{outline:none}.fr{float:right}.fl{float:left}.pr-5{padding-right:5px}.pl-5{padding-left:5px}.block{display:block}.pointer{cursor:pointer}.inlineBlock{display:block}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}code{background:#eef1f6;padding:15px 16px;margin-bottom:20px;display:block;line-height:36px;font-size:15px;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif}code a{color:#337ab7;cursor:pointer}code a:hover{color:#20a0ff}.warn-content{background:rgba(66,185,131,.1);border-radius:2px;padding:1rem;line-height:1.6rem;word-spacing:.05rem}.warn-content a{color:#42b983;font-weight:600}.app-container{padding:20px}.components-container{margin:30px 50px;position:relative}.pagination-container{margin-top:30px}.text-center{text-align:center}.sub-navbar{height:50px;line-height:50px;position:relative;width:100%;text-align:right;padding-right:20px;-webkit-transition:position .6s ease;transition:position .6s ease;background:-webkit-gradient(linear,left top,right top,from(#20b6f9),color-stop(0,#20b6f9),color-stop(100%,#2178f1),to(#2178f1));background:linear-gradient(90deg,#20b6f9,#20b6f9 0,#2178f1 100%,#2178f1 0)}.sub-navbar .subtitle{font-size:20px;color:#fff}.sub-navbar.deleted,.sub-navbar.draft{background:#d0d0d0}.link-type,.link-type:focus{color:#337ab7;cursor:pointer}.link-type:focus:hover,.link-type:hover{color:#20a0ff}.filter-container{padding-bottom:10px}.filter-container .filter-item{display:inline-block;vertical-align:middle;margin-bottom:10px}.multiselect{line-height:16px}.multiselect--active{z-index:1000!important}.hamburger[data-v-69c6c5c4]{display:inline-block;vertical-align:middle;width:20px;height:20px}.hamburger.is-active[data-v-69c6c5c4]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.navbar[data-v-19937682]{height:50px;overflow:hidden}.navbar .hamburger-container[data-v-19937682]{line-height:46px;height:100%;float:left;cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .hamburger-container[data-v-19937682]:hover{background:rgba(0,0,0,.025)}.navbar .breadcrumb-container[data-v-19937682]{float:left}.navbar .errLog-container[data-v-19937682]{display:inline-block;vertical-align:top}.navbar .right-menu[data-v-19937682]{float:right;height:100%;line-height:50px}.navbar .right-menu[data-v-19937682]:focus{outline:none}.navbar .right-menu .right-menu-item[data-v-19937682]{display:inline-block;padding:0 8px;height:100%;font-size:18px;color:#5a5e66;vertical-align:text-bottom}.navbar .right-menu .right-menu-item.hover-effect[data-v-19937682]{cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .right-menu .right-menu-item.hover-effect[data-v-19937682]:hover{background:rgba(0,0,0,.025)}.navbar .right-menu .avatar-container .avatar-wrapper[data-v-19937682]{margin-top:5px;position:relative}.navbar .right-menu .avatar-container .avatar-wrapper .user-avatar[data-v-19937682]{cursor:pointer;width:40px;height:40px;border-radius:10px}.navbar .right-menu .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-19937682]{cursor:pointer;position:absolute;right:-20px;top:25px;font-size:12px}.scroll-container[data-v-591d6778]{white-space:nowrap;position:relative;overflow:hidden;width:100%}.scroll-container[data-v-591d6778] .el-scrollbar__bar{bottom:0}.scroll-container[data-v-591d6778] .el-scrollbar__wrap{height:49px}.tags-view-container[data-v-e1cdb714]{height:34px;width:100%;background:#fff;border-bottom:1px solid #d8dce5;-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04);box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04)}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]{display:inline-block;position:relative;cursor:pointer;height:26px;line-height:26px;border:1px solid #d8dce5;color:#495060;background:#fff;padding:0 8px;font-size:12px;margin-left:5px;margin-top:4px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:first-of-type{margin-left:15px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:last-of-type{margin-right:15px}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]{background-color:#42b983;color:#fff;border-color:#42b983}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]:before{content:"";background:#fff;display:inline-block;width:8px;height:8px;border-radius:50%;position:relative;margin-right:2px}.tags-view-container .contextmenu[data-v-e1cdb714]{margin:0;background:#fff;z-index:100;position:absolute;list-style-type:none;padding:5px 0;border-radius:4px;font-size:12px;font-weight:400;color:#333;-webkit-box-shadow:2px 2px 3px 0 rgba(0,0,0,.3);box-shadow:2px 2px 3px 0 rgba(0,0,0,.3)}.tags-view-container .contextmenu li[data-v-e1cdb714]{margin:0;padding:7px 16px;cursor:pointer}.tags-view-container .contextmenu li[data-v-e1cdb714]:hover{background:#eee}.tags-view-wrapper .tags-view-item .el-icon-close{width:16px;height:16px;vertical-align:2px;border-radius:50%;text-align:center;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.tags-view-wrapper .tags-view-item .el-icon-close:before{-webkit-transform:scale(.6);transform:scale(.6);display:inline-block;vertical-align:-3px}.tags-view-wrapper .tags-view-item .el-icon-close:hover{background-color:#b4bccc;color:#fff}.app-main[data-v-f852c4f2]{min-height:calc(100vh - 84px);width:100%;position:relative;overflow:hidden}.app-wrapper[data-v-767d264f]{position:relative;height:100%;width:100%}.app-wrapper[data-v-767d264f]:after{content:"";display:table;clear:both}.app-wrapper.mobile.openSidebar[data-v-767d264f]{position:fixed;top:0}.drawer-bg[data-v-767d264f]{background:#000;opacity:.3;width:100%;top:0;height:100%;position:absolute;z-index:999}.svg-icon[data-v-17178ffc]{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden} \ No newline at end of file +.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .28s;transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-enter-active,.fade-transform-leave-active{-webkit-transition:all .5s;transition:all .5s}.fade-transform-enter{opacity:0;-webkit-transform:translateX(-30px);transform:translateX(-30px)}.fade-transform-leave-to{opacity:0;-webkit-transform:translateX(30px);transform:translateX(30px)}.breadcrumb-enter-active,.breadcrumb-leave-active{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-enter,.breadcrumb-leave-active{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}.breadcrumb-move{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-leave-active{position:absolute}.el-breadcrumb__inner,.el-breadcrumb__inner a{font-weight:400!important}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.cell .el-tag{margin-right:0}.small-padding .cell{padding-left:5px;padding-right:5px}.fixed-width .el-button--mini{padding:7px 10px;width:60px}.status-col .cell{padding:0 10px;text-align:center}.status-col .cell .el-tag{margin-right:0}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.article-textarea textarea{padding-right:40px;resize:none;border-radius:0;border:none;border-bottom:1px solid #bfcbd9}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.el-dropdown-menu a{display:block}#app .main-container{min-height:100%;-webkit-transition:margin-left .28s;transition:margin-left .28s;margin-left:180px;position:relative}#app .sidebar-container{-webkit-transition:width .28s;transition:width .28s;width:180px!important;height:100%;position:fixed;font-size:0;top:0;bottom:0;left:0;z-index:5000;overflow:hidden}#app .sidebar-container .horizontal-collapse-transition{-webkit-transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out;transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out}#app .sidebar-container .scrollbar-wrapper{overflow-x:hidden!important}#app .sidebar-container .scrollbar-wrapper .el-scrollbar__view{height:100%}#app .sidebar-container .el-scrollbar__bar.is-vertical{right:0}#app .sidebar-container .is-horizontal{display:none}#app .sidebar-container a{display:inline-block;width:100%;overflow:hidden}#app .sidebar-container .svg-icon{margin-right:16px}#app .sidebar-container .el-menu{border:none;height:100%;width:100%!important}#app .sidebar-container .el-submenu__title:hover,#app .sidebar-container .submenu-title-noDropdown:hover{background-color:#263445!important}#app .sidebar-container .is-active>.el-submenu__title{color:#f4f4f5!important}#app .sidebar-container .el-submenu .el-menu-item,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title{min-width:180px!important;background-color:#1f2d3d!important}#app .sidebar-container .el-submenu .el-menu-item:hover,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#001528!important}#app .hideSidebar .sidebar-container{width:36px!important}#app .hideSidebar .main-container{margin-left:36px}#app .hideSidebar .submenu-title-noDropdown{padding-left:10px!important;position:relative}#app .hideSidebar .submenu-title-noDropdown .el-tooltip{padding:0 10px!important}#app .hideSidebar .el-submenu{overflow:hidden}#app .hideSidebar .el-submenu>.el-submenu__title{padding-left:10px!important}#app .hideSidebar .el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}#app .hideSidebar .el-menu--collapse .el-submenu>.el-submenu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}#app .el-menu--collapse .el-menu .el-submenu{min-width:180px!important}#app .mobile .main-container{margin-left:0}#app .mobile .sidebar-container{-webkit-transition:-webkit-transform .28s;transition:-webkit-transform .28s;transition:transform .28s;transition:transform .28s,-webkit-transform .28s;width:180px!important}#app .mobile.hideSidebar .sidebar-container{pointer-events:none;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(-180px,0,0);transform:translate3d(-180px,0,0)}#app .withoutAnimation .main-container,#app .withoutAnimation .sidebar-container{-webkit-transition:none;transition:none}.el-menu--vertical>.el-menu .svg-icon{margin-right:16px}.el-menu--vertical .el-menu-item:hover,.el-menu--vertical .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#263445!important}.blue-btn{background:#324157}.blue-btn:hover{color:#324157}.blue-btn:hover:after,.blue-btn:hover:before{background:#324157}.light-blue-btn{background:#3a71a8}.light-blue-btn:hover{color:#3a71a8}.light-blue-btn:hover:after,.light-blue-btn:hover:before{background:#3a71a8}.red-btn{background:#c03639}.red-btn:hover{color:#c03639}.red-btn:hover:after,.red-btn:hover:before{background:#c03639}.pink-btn{background:#e65d6e}.pink-btn:hover{color:#e65d6e}.pink-btn:hover:after,.pink-btn:hover:before{background:#e65d6e}.green-btn{background:#30b08f}.green-btn:hover{color:#30b08f}.green-btn:hover:after,.green-btn:hover:before{background:#30b08f}.tiffany-btn{background:#4ab7bd}.tiffany-btn:hover{color:#4ab7bd}.tiffany-btn:hover:after,.tiffany-btn:hover:before{background:#4ab7bd}.yellow-btn{background:#fec171}.yellow-btn:hover{color:#fec171}.yellow-btn:hover:after,.yellow-btn:hover:before{background:#fec171}.pan-btn{font-size:14px;color:#fff;padding:14px 36px;border-radius:8px;border:none;outline:none;-webkit-transition:all .6s ease;transition:all .6s ease;position:relative;display:inline-block}.pan-btn:hover{background:#fff}.pan-btn:hover:after,.pan-btn:hover:before{width:100%;-webkit-transition:all .6s ease;transition:all .6s ease}.pan-btn:after,.pan-btn:before{content:"";position:absolute;top:0;right:0;height:2px;width:0;-webkit-transition:all .4s ease;transition:all .4s ease}.pan-btn:after{right:inherit;top:inherit;left:0;bottom:0}.custom-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;color:#fff;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;padding:10px 15px;font-size:14px;border-radius:4px}body{height:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;background:#fff;color:#000}label{font-weight:700}html{-webkit-box-sizing:border-box;box-sizing:border-box}#app,html{height:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}.no-padding{padding:0!important}.padding-content{padding:4px 0}a:active,a:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}div:focus{outline:none}.fr{float:right}.fl{float:left}.pr-5{padding-right:5px}.pl-5{padding-left:5px}.block{display:block}.pointer{cursor:pointer}.inlineBlock{display:block}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}code{background:#eef1f6;padding:15px 16px;margin-bottom:20px;display:block;line-height:36px;font-size:15px;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif}code a{color:#337ab7;cursor:pointer}code a:hover{color:#20a0ff}.warn-content{background:rgba(66,185,131,.1);border-radius:2px;padding:1rem;line-height:1.6rem;word-spacing:.05rem}.warn-content a{color:#42b983;font-weight:600}.app-container{padding:20px}.components-container{margin:30px 50px;position:relative}.pagination-container{margin-top:30px}.text-center{text-align:center}.sub-navbar{height:50px;line-height:50px;position:relative;width:100%;text-align:right;padding-right:20px;-webkit-transition:position .6s ease;transition:position .6s ease;background:-webkit-gradient(linear,left top,right top,from(#20b6f9),color-stop(0,#20b6f9),color-stop(100%,#2178f1),to(#2178f1));background:linear-gradient(90deg,#20b6f9,#20b6f9 0,#2178f1 100%,#2178f1 0)}.sub-navbar .subtitle{font-size:20px;color:#fff}.sub-navbar.deleted,.sub-navbar.draft{background:#d0d0d0}.link-type,.link-type:focus{color:#337ab7;cursor:pointer}.link-type:focus:hover,.link-type:hover{color:#20a0ff}.filter-container{padding-bottom:10px}.filter-container .filter-item{display:inline-block;vertical-align:middle;margin-bottom:10px}.multiselect{line-height:16px}.multiselect--active{z-index:1000!important}.hamburger[data-v-69c6c5c4]{display:inline-block;vertical-align:middle;width:20px;height:20px}.hamburger.is-active[data-v-69c6c5c4]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.navbar[data-v-28de7ff2]{height:50px;overflow:hidden}.navbar .hamburger-container[data-v-28de7ff2]{line-height:46px;height:100%;float:left;cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .hamburger-container[data-v-28de7ff2]:hover{background:rgba(0,0,0,.025)}.navbar .breadcrumb-container[data-v-28de7ff2]{float:left}.navbar .errLog-container[data-v-28de7ff2]{display:inline-block;vertical-align:top}.navbar .right-menu[data-v-28de7ff2]{float:right;height:100%;line-height:50px}.navbar .right-menu[data-v-28de7ff2]:focus{outline:none}.navbar .right-menu .right-menu-item[data-v-28de7ff2]{display:inline-block;padding:0 15px;height:100%;font-size:18px;color:#5a5e66;vertical-align:text-bottom}.navbar .right-menu .right-menu-item.hover-effect[data-v-28de7ff2]{cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .right-menu .right-menu-item.hover-effect[data-v-28de7ff2]:hover{background:rgba(0,0,0,.025)}.navbar .right-menu .avatar-container .avatar-wrapper[data-v-28de7ff2]{margin-top:5px;position:relative}.navbar .right-menu .avatar-container .avatar-wrapper .user-avatar[data-v-28de7ff2]{cursor:pointer;width:40px;height:40px;border-radius:10px}.navbar .right-menu .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-28de7ff2]{cursor:pointer;position:absolute;right:-20px;top:25px;font-size:12px}.scroll-container[data-v-591d6778]{white-space:nowrap;position:relative;overflow:hidden;width:100%}.scroll-container[data-v-591d6778] .el-scrollbar__bar{bottom:0}.scroll-container[data-v-591d6778] .el-scrollbar__wrap{height:49px}.tags-view-container[data-v-e1cdb714]{height:34px;width:100%;background:#fff;border-bottom:1px solid #d8dce5;-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04);box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04)}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]{display:inline-block;position:relative;cursor:pointer;height:26px;line-height:26px;border:1px solid #d8dce5;color:#495060;background:#fff;padding:0 8px;font-size:12px;margin-left:5px;margin-top:4px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:first-of-type{margin-left:15px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:last-of-type{margin-right:15px}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]{background-color:#42b983;color:#fff;border-color:#42b983}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]:before{content:"";background:#fff;display:inline-block;width:8px;height:8px;border-radius:50%;position:relative;margin-right:2px}.tags-view-container .contextmenu[data-v-e1cdb714]{margin:0;background:#fff;z-index:100;position:absolute;list-style-type:none;padding:5px 0;border-radius:4px;font-size:12px;font-weight:400;color:#333;-webkit-box-shadow:2px 2px 3px 0 rgba(0,0,0,.3);box-shadow:2px 2px 3px 0 rgba(0,0,0,.3)}.tags-view-container .contextmenu li[data-v-e1cdb714]{margin:0;padding:7px 16px;cursor:pointer}.tags-view-container .contextmenu li[data-v-e1cdb714]:hover{background:#eee}.tags-view-wrapper .tags-view-item .el-icon-close{width:16px;height:16px;vertical-align:2px;border-radius:50%;text-align:center;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.tags-view-wrapper .tags-view-item .el-icon-close:before{-webkit-transform:scale(.6);transform:scale(.6);display:inline-block;vertical-align:-3px}.tags-view-wrapper .tags-view-item .el-icon-close:hover{background-color:#b4bccc;color:#fff}.app-main[data-v-f852c4f2]{min-height:calc(100vh - 84px);width:100%;position:relative;overflow:hidden}.app-wrapper[data-v-767d264f]{position:relative;height:100%;width:100%}.app-wrapper[data-v-767d264f]:after{content:"";display:table;clear:both}.app-wrapper.mobile.openSidebar[data-v-767d264f]{position:fixed;top:0}.drawer-bg[data-v-767d264f]{background:#000;opacity:.3;width:100%;top:0;height:100%;position:absolute;z-index:999}.svg-icon[data-v-17178ffc]{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-15fa.5a5f973d.css b/priv/static/adminfe/chunk-0558.af0d89cd.css similarity index 100% rename from priv/static/adminfe/chunk-15fa.5a5f973d.css rename to priv/static/adminfe/chunk-0558.af0d89cd.css diff --git a/priv/static/adminfe/chunk-0778.d9e7180a.css b/priv/static/adminfe/chunk-0778.d9e7180a.css new file mode 100644 index 000000000..9d730019a --- /dev/null +++ b/priv/static/adminfe/chunk-0778.d9e7180a.css @@ -0,0 +1 @@ +.invites-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.invites-container .create-invite-token{text-align:left;width:350px;padding:10px}.invites-container .create-new-token-dialog{width:50%}.invites-container .create-new-token-dialog a{margin-bottom:3px}.invites-container .create-new-token-dialog .el-card__body{padding:10px 20px}.invites-container .el-dialog__body{padding:5px 20px 0}.invites-container h1{margin:0}.invites-container .icon{margin-right:5px}.invites-container .invite-token-table{width:100%;margin:0 15px}.invites-container .invite-via-email{text-align:left;width:350px;padding:10px}.invites-container .invite-via-email-dialog{width:50%}.invites-container .invites-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px}.invites-container .info{color:#666;font-size:13px;line-height:22px;margin:0 0 10px}.invites-container .new-token-card .el-form-item{margin:0}.invites-container .reboot-button{padding:10px;margin:0;width:145px}@media only screen and (max-width:480px){.invites-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 10px 7px}.invites-container .cell{padding:0}.invites-container .create-invite-token{width:100%}.invites-container .create-new-token-dialog{width:85%}.invites-container .el-date-editor{width:150px}.invites-container .el-dialog__body{padding:5px 15px 0}.invites-container h1{margin:0}.invites-container .invite-token-table{width:100%;margin:0 5px;font-size:12px;font-weight:500}.invites-container .invite-via-email{width:100%;margin:10px 0 0}.invites-container .invite-via-email-dialog{width:85%}.invites-container .invites-header-container{margin:0 10px}.invites-container .info{margin:0 0 10px 5px}.invites-container th .cell{padding:0}.create-invite-token,.invite-via-email{width:100%}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-876c.90dffac4.css b/priv/static/adminfe/chunk-0961.d3692214.css similarity index 100% rename from priv/static/adminfe/chunk-876c.90dffac4.css rename to priv/static/adminfe/chunk-0961.d3692214.css diff --git a/priv/static/adminfe/chunk-0d8f.d85f5a29.css b/priv/static/adminfe/chunk-0d8f.d85f5a29.css deleted file mode 100644 index 931620872..000000000 --- a/priv/static/adminfe/chunk-0d8f.d85f5a29.css +++ /dev/null @@ -1 +0,0 @@ -.select-field[data-v-29abde8c]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-29abde8c]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px) and (min-width:481px){.select-field[data-v-29abde8c]{width:50%}}.actions-button[data-v-3850612b]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-3850612b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-3850612b]{float:right}.el-icon-edit[data-v-3850612b]{margin-right:5px}.tag-container[data-v-3850612b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-3850612b]{padding-right:20px}.no-hover[data-v-3850612b]:hover{color:#606266;background-color:#fff;cursor:auto}.el-dialog__body{padding:20px}.create-account-form-item{margin-bottom:20px}.create-account-form-item-without-margin{margin-bottom:0}@media only screen and (max-width:480px){.create-user-dialog{width:85%}.create-account-form-item{margin-bottom:20px}.el-dialog__body{padding:20px}}.moderate-user-button{text-align:left;width:200px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.actions-button{text-align:left;width:350px;padding:10px}.actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 15px 10px}.active-tag{color:#409eff;font-weight:700}.active-tag .el-icon-check{color:#409eff;float:right;margin:7px 0 0 15px}.el-dropdown-link:hover{cursor:pointer;color:#409eff}.create-account>.el-icon-plus{margin-right:5px}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reset-password-link{text-decoration:underline}.users-container h1{margin:10px 0 0 15px}.users-container .pagination{margin:25px 0;text-align:center}.users-container .search{width:350px;float:right}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:22px 15px 15px}.users-container .user-count{color:grey;font-size:28px}@media only screen and (max-width:480px){.password-reset-token-dialog{width:85%}.users-container h1{margin:7px 10px 15px}.users-container .actions-button{width:100%}.users-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px 7px}.users-container .el-icon-arrow-down{font-size:12px}.users-container .search{width:100%}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px}.users-container .el-tag{width:30px;display:inline-block;margin-bottom:4px;font-weight:700}.users-container .el-tag.el-tag--danger,.users-container .el-tag.el-tag--success{padding-left:8px}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-13e9.98eaadba.css b/priv/static/adminfe/chunk-13e9.98eaadba.css deleted file mode 100644 index 9f377eee2..000000000 --- a/priv/static/adminfe/chunk-13e9.98eaadba.css +++ /dev/null @@ -1 +0,0 @@ -.moderation-log-container[data-v-5d520014]{margin:0 15px}h1[data-v-5d520014]{margin:10px 0 20px}.el-timeline[data-v-5d520014]{margin:25px 45px 0 0;padding:0}.moderation-log-date-panel[data-v-5d520014]{width:350px}.moderation-log-nav-container[data-v-5d520014]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-log-search[data-v-5d520014]{width:350px}.moderation-log-user-select[data-v-5d520014]{margin:0 0 20px;width:350px}.search-container[data-v-5d520014]{text-align:right}.pagination[data-v-5d520014]{text-align:center}@media only screen and (max-width:480px){.moderation-log-date-panel[data-v-5d520014]{width:100%}.moderation-log-user-select[data-v-5d520014]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-5d520014]{width:40%}}@media only screen and (max-width:801px) and (min-width:481px){.moderation-log-date-panel[data-v-5d520014]{width:55%}.moderation-log-user-select[data-v-5d520014]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-5d520014]{width:40%}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-22d2.813009b9.css b/priv/static/adminfe/chunk-22d2.813009b9.css new file mode 100644 index 000000000..f0a98583e --- /dev/null +++ b/priv/static/adminfe/chunk-22d2.813009b9.css @@ -0,0 +1 @@ +.status-card{margin-bottom:10px}.status-card .account{text-decoration:underline;line-height:26px;font-size:13px}.status-card .image{width:20%}.status-card .image img{width:100%}.status-card .show-more-button{margin-left:5px}.status-card .status-account{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.status-card .status-avatar-img{display:inline-block;width:15px;height:15px;margin-right:5px}.status-card .status-account-name{display:inline-block;margin:0;height:22px}.status-card .status-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.status-card .status-checkbox{margin-right:7px}.status-card .status-content{font-size:15px;line-height:26px}.status-card .status-deleted{font-style:italic;margin-top:3px}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.status-card .status-without-content{font-style:italic}@media only screen and (max-width:480px){.el-message{min-width:80%}.el-message-box{width:80%}.status-card .el-card__header{padding:10px 17px}.status-card .el-tag{margin:3px 4px 3px 0}.status-card .status-account-container{margin-bottom:5px}.status-card .status-actions-button{margin:3px 0}.status-card .status-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.moderate-user-button{width:100%}}.security-settings-container{display:-webkit-box;display:-ms-flexbox;display:flex}.security-settings-container label{width:15%;height:36px}.security-settings-modal .el-dialog__body{padding-top:10px}.security-settings-modal .el-form-item,.security-settings-modal .password-alert{margin-bottom:15px}.security-settings-modal .password-input{margin-bottom:0}.security-settings-submit-button{float:right}@media (max-width:800px){.security-settings-modal .el-dialog{width:90%}}.security-settings-modal .el-alert .el-alert__description{word-break:break-word;font-size:1em}.security-settings-modal .form-text{display:block;margin-top:.25rem;color:#909399}header[data-v-d4bc7d00]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;margin:22px 0;padding-left:15px}header h1[data-v-d4bc7d00]{margin:0 0 0 10px}table[data-v-d4bc7d00]{margin:10px 0 0 15px}table .name-col[data-v-d4bc7d00]{width:150px}.avatar-name-container[data-v-d4bc7d00]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-table--border[data-v-d4bc7d00]:after,.el-table--group[data-v-d4bc7d00]:after,.el-table[data-v-d4bc7d00]:before{background-color:transparent}.image[data-v-d4bc7d00]{width:20%}.image img[data-v-d4bc7d00]{width:100%}.left-header-container[data-v-d4bc7d00]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.no-statuses[data-v-d4bc7d00]{margin-left:28px;color:#606266}.poll ul[data-v-d4bc7d00]{list-style-type:none;padding:0;width:30%}.reboot-button[data-v-d4bc7d00]{padding:10px;margin-left:10px}.recent-statuses-container[data-v-d4bc7d00]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:67%}.recent-statuses-header[data-v-d4bc7d00]{margin-top:10px}.security-setting-button[data-v-d4bc7d00]{margin-top:20px;width:100%}.statuses[data-v-d4bc7d00]{padding:0 20px 0 0}.show-private[data-v-d4bc7d00]{width:200px;text-align:left;line-height:67px;margin-right:20px}.show-private-statuses[data-v-d4bc7d00]{margin-left:28px;margin-bottom:20px}.recent-statuses[data-v-d4bc7d00]{margin-left:28px}.user-page-header[data-v-d4bc7d00]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 15px 0 20px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.user-page-header h1[data-v-d4bc7d00]{display:inline}.user-profile-card[data-v-d4bc7d00]{margin:0 20px;width:30%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.user-profile-container[data-v-d4bc7d00]{display:-webkit-box;display:-ms-flexbox;display:flex}.user-profile-table[data-v-d4bc7d00]{margin:0}.user-profile-tag[data-v-d4bc7d00]{margin:0 4px 4px 0}@media only screen and (max-width:480px){.avatar-name-container[data-v-d4bc7d00]{margin-bottom:10px}.recent-statuses[data-v-d4bc7d00]{margin:20px 10px 15px}.recent-statuses-container[data-v-d4bc7d00]{width:100%;margin:0 10px}.show-private-statuses[data-v-d4bc7d00]{margin:0 10px 20px}.user-page-header[data-v-d4bc7d00]{padding:0;margin:7px 15px 15px 10px}.user-page-header-container .el-dropdown[data-v-d4bc7d00]{width:95%;margin:0 15px 15px 10px}.user-profile-card[data-v-d4bc7d00]{margin:0 10px;width:95%}.user-profile-card td[data-v-d4bc7d00]{width:80px}.user-profile-container[data-v-d4bc7d00]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media only screen and (max-width:801px) and (min-width:481px){.recent-statuses[data-v-d4bc7d00]{margin:20px 10px 15px 0}.recent-statuses-container[data-v-d4bc7d00]{width:97%;margin:0 20px}.show-private-statuses[data-v-d4bc7d00]{margin:0 10px 20px 0}.user-page-header[data-v-d4bc7d00]{padding:0;margin:7px 15px 20px 20px}.user-profile-card[data-v-d4bc7d00]{margin:0 20px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.user-profile-container[data-v-d4bc7d00]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-2b9c.feb61a2b.css b/priv/static/adminfe/chunk-2b9c.feb61a2b.css deleted file mode 100644 index f54eca1f5..000000000 --- a/priv/static/adminfe/chunk-2b9c.feb61a2b.css +++ /dev/null @@ -1 +0,0 @@ -.status-card{margin-bottom:10px}.status-card .account{text-decoration:underline;line-height:26px;font-size:13px}.status-card .image{width:20%}.status-card .image img{width:100%}.status-card .show-more-button{margin-left:5px}.status-card .status-account{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.status-card .status-avatar-img{display:inline-block;width:15px;height:15px;margin-right:5px}.status-card .status-account-name{display:inline-block;margin:0;height:22px}.status-card .status-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.status-card .status-checkbox{margin-right:7px}.status-card .status-content{font-size:15px;line-height:26px}.status-card .status-deleted{font-style:italic;margin-top:3px}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.status-card .status-without-content{font-style:italic}@media only screen and (max-width:480px){.el-message{min-width:80%}.el-message-box{width:80%}.status-card .el-card__header{padding:10px 17px}.status-card .el-tag{margin:3px 4px 3px 0}.status-card .status-account-container{margin-bottom:5px}.status-card .status-actions-button{margin:3px 0}.status-card .status-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.moderate-user-button{text-align:left;width:200px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media (max-width:800px){.security-settings-modal .el-dialog{width:90%}}.security-settings-modal .el-alert .el-alert__description{word-break:break-word;font-size:1em}.security-settings-modal .form-text{display:block;margin-top:.25rem;color:#909399}.avatar-name-container[data-v-77412d30],header[data-v-77412d30]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}header[data-v-77412d30]{margin:22px 0;padding-left:15px}header h1[data-v-77412d30]{margin:0 0 0 10px}table[data-v-77412d30]{margin:10px 0 0 15px}table .name-col[data-v-77412d30]{width:150px}.el-table--border[data-v-77412d30]:after,.el-table--group[data-v-77412d30]:after,.el-table[data-v-77412d30]:before{background-color:transparent}.poll ul[data-v-77412d30]{list-style-type:none;padding:0;width:30%}.image[data-v-77412d30]{width:20%}.image img[data-v-77412d30]{width:100%}.no-statuses[data-v-77412d30]{margin-left:28px;color:#606266}.recent-statuses-container[data-v-77412d30]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:67%}.recent-statuses-header[data-v-77412d30]{margin-top:10px}.statuses[data-v-77412d30]{padding:0 20px 0 0}.show-private[data-v-77412d30]{width:200px;text-align:left;line-height:67px;margin-right:20px}.show-private-statuses[data-v-77412d30]{margin-left:28px;margin-bottom:20px}.recent-statuses[data-v-77412d30]{margin-left:28px}.user-page-header[data-v-77412d30]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 20px}.user-page-header h1[data-v-77412d30]{display:inline}.user-profile-card[data-v-77412d30]{margin:0 20px;width:30%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.user-profile-container[data-v-77412d30]{display:-webkit-box;display:-ms-flexbox;display:flex}.user-profile-table[data-v-77412d30]{margin:0}.user-profile-tag[data-v-77412d30]{margin:0 4px 4px 0}@media only screen and (max-width:480px){.avatar-name-container[data-v-77412d30]{margin-bottom:10px}.recent-statuses[data-v-77412d30]{margin:20px 10px 15px}.recent-statuses-container[data-v-77412d30]{width:100%;margin:0 10px}.show-private-statuses[data-v-77412d30]{margin:0 10px 20px}.user-page-header[data-v-77412d30]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;padding:0;margin:7px 0 15px 10px}.user-profile-card[data-v-77412d30]{margin:0 10px;width:95%}.user-profile-card td[data-v-77412d30]{width:80px}.user-profile-container[data-v-77412d30]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media only screen and (max-width:801px) and (min-width:481px){.avatar-name-container[data-v-77412d30]{margin-bottom:20px}.recent-statuses[data-v-77412d30]{margin:20px 10px 15px 0}.recent-statuses-container[data-v-77412d30]{width:97%;margin:0 20px}.show-private-statuses[data-v-77412d30]{margin:0 10px 20px 0}.user-page-header[data-v-77412d30]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;padding:0;margin:7px 0 20px 20px}.user-profile-card[data-v-77412d30]{margin:0 20px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.user-profile-container[data-v-77412d30]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-136a.f1130f8e.css b/priv/static/adminfe/chunk-3384.2278f87c.css similarity index 64% rename from priv/static/adminfe/chunk-136a.f1130f8e.css rename to priv/static/adminfe/chunk-3384.2278f87c.css index f492b37d0..96e3273eb 100644 --- a/priv/static/adminfe/chunk-136a.f1130f8e.css +++ b/priv/static/adminfe/chunk-3384.2278f87c.css @@ -1 +1 @@ -.copy-popover{width:330px}.emoji-buttons{place-self:center;min-width:200px}.emoji-container-grid{display:grid;grid-template-columns:75px auto auto 200px;grid-column-gap:15px;margin-bottom:10px}.emoji-preview-img{max-width:100%;place-self:center}.emoji-info{place-self:center}.copy-pack-container{place-self:center stretch}.copy-pack-select{width:100%}.remote-emoji-container-grid{display:grid;grid-template-columns:75px auto auto 160px;grid-column-gap:15px;margin-bottom:10px}@media only screen and (max-width:480px){.emoji-container-flex{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px solid #dcdfe6;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;padding:15px;margin:0 15px 15px 0}.emoji-info,.emoji-preview-img{margin-bottom:10px}.emoji-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%}.emoji-buttons button{padding:10px 5px;width:47%}}@media only screen and (max-width:801px) and (min-width:481px){.emoji-container-grid{grid-column-gap:10px}.emoji-buttons .el-button+.el-button{margin-left:5px}.remote-emoji-container-grid{grid-column-gap:10px}}.add-new-emoji{height:36px;font-size:14px;font-weight:700;color:#606266}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.upload-button{margin-left:10px}.upload-file-url{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.new-emoji-uploader-form label.el-form-item__label{padding:0}}.download-archive{width:250px}.download-pack-button-container{width:265px}.download-pack-button-container .el-link,.download-pack-button-container .el-link span,.download-pack-button-container .el-link span .download-archive{width:inherit}.download-shared-pack{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.download-shared-pack-button{margin-left:10px}.el-collapse-item__content{padding-bottom:0}.el-collapse-item__header{height:36px;font-size:14px;font-weight:700;color:#606266}.emoji-pack-card{margin-top:5px}.emoji-pack-metadata .el-form-item{margin-bottom:10px}.has-background .el-collapse-item__header{background:#f6f6f6}.no-background .el-collapse-item__header{background:#fff}.pack-button-container{margin:0 0 18px 120px}.save-pack-button-container{margin-bottom:8px;width:265px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.delete-pack-button{width:45%}.download-pack-button-container{width:100%}.download-shared-pack{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.download-shared-pack-button{margin-left:0;margin-top:10px;padding:10px}.pack-button-container{width:100%;margin:0 0 22px}.remote-pack-metadata .el-form-item__content{line-height:24px;margin-top:4px}.save-pack-button{width:54%}.save-pack-button-container{margin-bottom:8px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.save-pack-button-container button{padding:10px 5px}.save-pack-button-container .el-button+.el-button{margin-left:3px}}.emoji-packs-header-button-container{margin:0 0 22px 15px}.create-pack,.emoji-packs-header-button-container{display:-webkit-box;display:-ms-flexbox;display:flex}.create-pack{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.create-pack-button{margin-left:10px}.emoji-packs-form{margin:0 30px}.emoji-packs-header{margin:10px 0 20px 15px}.import-pack-button{margin-left:10px}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:22px}@media only screen and (min-width:1824px){.emoji-packs{max-width:1824px;margin:auto}}@media only screen and (max-width:480px){.create-pack{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.create-pack-button{margin-left:0}.divider{margin:15px 0}.el-message{min-width:80%}.el-message-box{width:80%}.emoji-packs-form{margin:0 7px}.emoji-packs-form label{padding-right:8px}.emoji-packs-form .el-form-item{margin-bottom:15px}.emoji-packs-header{margin:15px}.emoji-packs-header-button-container{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.emoji-packs-header-button-container .el-button+.el-button{margin:7px 0 0}.emoji-packs-header-button-container .el-button+.el-button,.reload-emoji-button{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}} \ No newline at end of file +.copy-popover{width:330px}.emoji-buttons{place-self:center;min-width:200px}.emoji-container-grid{display:grid;grid-template-columns:75px auto auto 200px;grid-column-gap:15px;margin-bottom:10px}.emoji-preview-img{max-width:100%;place-self:center}.emoji-info{place-self:center}.copy-pack-container{place-self:center stretch}.copy-pack-select{width:100%}.remote-emoji-container-grid{display:grid;grid-template-columns:75px auto auto 160px;grid-column-gap:15px;margin-bottom:10px}@media only screen and (max-width:480px){.emoji-container-flex{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px solid #dcdfe6;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;padding:15px;margin:0 15px 15px 0}.emoji-info,.emoji-preview-img{margin-bottom:10px}.emoji-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%}.emoji-buttons button{padding:10px 5px;width:47%}}@media only screen and (max-width:801px) and (min-width:481px){.emoji-container-grid{grid-column-gap:10px}.emoji-buttons .el-button+.el-button{margin-left:5px}.remote-emoji-container-grid{grid-column-gap:10px}}.add-new-emoji{height:36px;font-size:14px;font-weight:700;color:#606266}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.upload-button{margin-left:10px}.upload-file-url{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.new-emoji-uploader-form label.el-form-item__label{padding:0}}.download-archive{width:250px}.download-pack-button-container{width:265px}.download-pack-button-container .el-link,.download-pack-button-container .el-link span,.download-pack-button-container .el-link span .download-archive{width:inherit}.download-shared-pack{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.download-shared-pack-button{margin-left:10px}.el-collapse-item__content{padding-bottom:0}.el-collapse-item__header{height:36px;font-size:14px;font-weight:700;color:#606266}.emoji-pack-card{margin-top:5px}.emoji-pack-metadata .el-form-item{margin-bottom:10px}.has-background .el-collapse-item__header{background:#f6f6f6}.no-background .el-collapse-item__header{background:#fff}.pack-button-container{margin:0 0 18px 120px}.save-pack-button-container{margin-bottom:8px;width:265px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.delete-pack-button{width:45%}.download-pack-button-container{width:100%}.download-shared-pack{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.download-shared-pack-button{margin-left:0;margin-top:10px;padding:10px}.pack-button-container{width:100%;margin:0 0 22px}.remote-pack-metadata .el-form-item__content{line-height:24px;margin-top:4px}.save-pack-button{width:54%}.save-pack-button-container{margin-bottom:8px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.save-pack-button-container button{padding:10px 5px}.save-pack-button-container .el-button+.el-button{margin-left:3px}}.emoji-header-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 15px 22px}.create-pack,.emoji-header-container,.emoji-packs-header-button-container{display:-webkit-box;display:-ms-flexbox;display:flex}.create-pack{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.create-pack-button{margin-left:10px}.emoji-packs-form{margin:0 30px}.emoji-packs-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px 15px}.import-pack-button{margin-left:10px}h1{margin:0}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:22px}.reboot-button{padding:10px;margin:0;width:145px}@media only screen and (min-width:1824px){.emoji-packs{max-width:1824px;margin:auto}}@media only screen and (max-width:480px){.create-pack{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.create-pack-button{margin-left:0}.divider{margin:15px 0}.el-message{min-width:80%}.el-message-box{width:80%}.emoji-header-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.emoji-packs-form{margin:0 7px}.emoji-packs-form label{padding-right:8px}.emoji-packs-form .el-form-item{margin-bottom:15px}.emoji-packs-header{margin:15px}.emoji-packs-header-button-container{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.emoji-packs-header-button-container .el-button+.el-button{margin:7px 0 0}.emoji-packs-header-button-container .el-button+.el-button,.reload-emoji-button{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-4011.c4799067.css b/priv/static/adminfe/chunk-4011.c4799067.css new file mode 100644 index 000000000..1fb099c0c --- /dev/null +++ b/priv/static/adminfe/chunk-4011.c4799067.css @@ -0,0 +1 @@ +a{text-decoration:underline}.center-label label{text-align:center}.center-label label span{float:left}.code{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button{margin-left:5px}.description>p{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.description>p code{display:inline;padding:2px 3px;font-size:14px}.description-container{overflow-wrap:break-word;margin-bottom:0}.divider{margin:0 0 18px}.divider.thick-line{height:2px}.docs-search-container{float:right;margin-right:30px}.editable-keyword-container{width:100%}.el-form-item .rate-limit{margin-right:0}.el-input-group__prepend{padding-left:10px;padding-right:10px}.el-tabs__header{z-index:3000}.esshd-list{margin:0}.expl,.expl>p{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code,.expl code{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay{width:350px;margin-right:7px}.form-container{margin-bottom:80px}.grouped-settings-header{margin:0 0 14px}.highlight{background-color:#e6e6e6}.icons-button-container{width:100%;margin-bottom:10px}.icons-button-desc{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input{width:30%;margin-right:8px}.icon-minus-button{width:36px;height:36px}.icon-value-input{width:70%;margin-left:8px}.icons-container,.input-container{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item{margin-right:30px;width:100%}.input-container .el-select,.keyword-container{width:100%}label{overflow:hidden;text-overflow:ellipsis}.label-font{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl{margin-left:10px}.limit-input{width:47%;margin:0 0 5px 1%}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot{margin-bottom:15px}.mascot-container{width:100%}.mascot-input{margin-bottom:7px}.mascot-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input{margin-right:10px}.multiple-select-container{width:100%}.name-input{width:30%;margin-right:8px}.pattern-input{width:20%;margin-right:8px}.proxy-url-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input{width:35%;margin-right:8px}.proxy-url-value-input{width:35%;margin-left:8px;margin-right:10px}.prune-options{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio{margin-top:11px}.rate-limit .el-form-item__content{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container,.rate-limit-content{width:100%}.rate-limit-label{float:right}.rate-limit-label-container{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:36px;width:100%;margin-right:10px}.reboot-button{width:145px;text-align:left;padding:10px;float:right;margin:0 30px 0 0}.reboot-button-container{width:100%;position:fixed;top:60px;right:0;z-index:2000}.relays-container{margin:0 15px}.replacement-input{width:80%;margin-left:8px;margin-right:10px}.scale-input{width:47%;margin:0 1% 5px 0}.setting-input{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.settings-container{max-width:1824px;margin:auto}.settings-container .el-tabs{margin-top:20px}.settings-delete-button{margin-left:5px}.settings-docs-button{width:163px;text-align:left;padding:10px}.settings-header{margin:10px 15px 15px}.header-sidebar-opened{max-width:1585px}.header-sidebar-closed{max-width:1728px}.settings-header-container{height:87px}.settings-search-input{width:350px;margin-left:5px}.single-input{margin-right:10px}.socks5-checkbox{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts{margin:36px 0 0}.submit-button{float:right;margin:0 30px 22px 0}.submit-button-container{width:100%;position:fixed;bottom:0;right:0;z-index:2000}.switch-input{height:36px}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.header-sidebar-closed{max-width:1772px}.header-sidebar-opened{max-width:1630px}.reboot-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}.reboot-sidebar-opened{max-width:1630px}.reboot-sidebar-closed{max-width:1772px}.sidebar-closed{max-width:1586px}.sidebar-opened{max-width:1442px}.submit-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab,.crontab label{width:100%}.delete-setting-button{margin:4px 0 0 5px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 5px 7px 15px}.description>p code{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.divider{margin:0 0 10px}.divider .thick-line{height:2px}.follow-relay{width:70%;margin-right:5px}.follow-relay input{width:100%}.follow-relay-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}h1{font-size:24px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container{width:100%}.input-container .el-form-item:first-child{margin:0;padding:0 15px 10px}.input-container .el-form-item.crontab-container:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item,.input-container .el-form-item:first-child .rate-limit{padding:0}.input-container .settings-delete-button{margin-top:4px;float:right}.input-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.label-with-margin{margin-left:15px}.limit-input{width:45%}.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.proxy-url-input{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input{width:100%;margin-bottom:5px}.proxy-url-value-input{width:100%;margin-left:0}.prune-options{height:80px}.prune-options,.rate-limit .el-form-item__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-label{float:left}.reboot-button{margin:0 15px 0 0}.reboot-button-container{top:57px}.scale-input{width:45%}.setting-label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.settings-header{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:10px 15px 15px}.docs-search-container{float:right}.settings-search-input{width:100%;margin-left:0}.settings-search-input-container{margin:0 15px 15px}.settings-menu{width:163px;margin-right:5px}.socks5-checkbox-container{width:100%}.submit-button{margin:0 15px 22px 0}.el-input__inner{padding:0 5px}.el-form-item__label:not(.no-top-margin){padding-bottom:5px;line-height:22px;margin-top:7px;width:100%}.el-form-item__label:not(.no-top-margin) span{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.el-message{min-width:80%}.el-select__tags{overflow:hidden}.expl,.expl>p{line-height:16px}.icon-key-input{width:40%;margin-right:4px}.icon-minus-button{width:28px;height:28px;margin-top:4px}.icon-values-container{margin:0 7px 7px 0}.icon-value-input{width:60%;margin-left:4px}.icons-button-container{line-height:24px}.line{margin-bottom:10px}.mascot-form-item .el-form-item__label:not(.no-top-margin){margin:0;padding:0}.mascot-container{margin-bottom:5px}.name-input{width:40%;margin-right:5px}p.expl{line-height:20px}.pattern-input{width:40%;margin-right:4px}.relays-container{margin:0 10px}.replacement-input{width:60%;margin-left:4px;margin-right:5px}.settings-header-container{height:45px}.value-input{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button{margin:4px 0 0 10px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 15px 10px 0}.icon-minus-button{width:28px;height:28px;margin-top:4px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span{margin-left:10px}.input-row,.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-label-container{width:250px}.settings-delete-button{float:right}.settings-header-container{height:36px}.settings-search-input{width:250px;margin:0 0 15px 15px}}a[data-v-667428a6]{text-decoration:underline}.center-label label[data-v-667428a6]{text-align:center}.center-label label span[data-v-667428a6]{float:left}.code[data-v-667428a6]{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button[data-v-667428a6]{margin-left:5px}.description>p[data-v-667428a6]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.description>p code[data-v-667428a6]{display:inline;padding:2px 3px;font-size:14px}.description-container[data-v-667428a6]{overflow-wrap:break-word;margin-bottom:0}.divider[data-v-667428a6]{margin:0 0 18px}.divider.thick-line[data-v-667428a6]{height:2px}.docs-search-container[data-v-667428a6]{float:right;margin-right:30px}.editable-keyword-container[data-v-667428a6]{width:100%}.el-form-item .rate-limit[data-v-667428a6]{margin-right:0}.el-input-group__prepend[data-v-667428a6]{padding-left:10px;padding-right:10px}.el-tabs__header[data-v-667428a6]{z-index:3000}.esshd-list[data-v-667428a6]{margin:0}.expl>p[data-v-667428a6],.expl[data-v-667428a6]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code[data-v-667428a6],.expl code[data-v-667428a6]{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay[data-v-667428a6]{width:350px;margin-right:7px}.form-container[data-v-667428a6]{margin-bottom:80px}.grouped-settings-header[data-v-667428a6]{margin:0 0 14px}.highlight[data-v-667428a6]{background-color:#e6e6e6}.icons-button-container[data-v-667428a6]{width:100%;margin-bottom:10px}.icons-button-desc[data-v-667428a6]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container[data-v-667428a6]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input[data-v-667428a6]{width:30%;margin-right:8px}.icon-minus-button[data-v-667428a6]{width:36px;height:36px}.icon-value-input[data-v-667428a6]{width:70%;margin-left:8px}.icons-container[data-v-667428a6],.input-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container[data-v-667428a6]{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item[data-v-667428a6]{margin-right:30px;width:100%}.input-container .el-select[data-v-667428a6],.keyword-container[data-v-667428a6]{width:100%}label[data-v-667428a6]{overflow:hidden;text-overflow:ellipsis}.label-font[data-v-667428a6]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl[data-v-667428a6]{margin-left:10px}.limit-input[data-v-667428a6]{width:47%;margin:0 0 5px 1%}.line[data-v-667428a6]{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot[data-v-667428a6]{margin-bottom:15px}.mascot-container[data-v-667428a6]{width:100%}.mascot-input[data-v-667428a6]{margin-bottom:7px}.mascot-name-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input[data-v-667428a6]{margin-right:10px}.multiple-select-container[data-v-667428a6]{width:100%}.name-input[data-v-667428a6]{width:30%;margin-right:8px}.pattern-input[data-v-667428a6]{width:20%;margin-right:8px}.proxy-url-input[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input[data-v-667428a6]{width:35%;margin-right:8px}.proxy-url-value-input[data-v-667428a6]{width:35%;margin-left:8px;margin-right:10px}.prune-options[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio[data-v-667428a6]{margin-top:11px}.rate-limit .el-form-item__content[data-v-667428a6]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container[data-v-667428a6],.rate-limit-content[data-v-667428a6]{width:100%}.rate-limit-label[data-v-667428a6]{float:right}.rate-limit-label-container[data-v-667428a6]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:36px;width:100%;margin-right:10px}.reboot-button[data-v-667428a6]{width:145px;text-align:left;padding:10px;float:right;margin:0 30px 0 0}.reboot-button-container[data-v-667428a6]{width:100%;position:fixed;top:60px;right:0;z-index:2000}.relays-container[data-v-667428a6]{margin:0 15px}.replacement-input[data-v-667428a6]{width:80%;margin-left:8px;margin-right:10px}.scale-input[data-v-667428a6]{width:47%;margin:0 1% 5px 0}.setting-input[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.settings-container[data-v-667428a6]{max-width:1824px;margin:auto}.settings-container .el-tabs[data-v-667428a6]{margin-top:20px}.settings-delete-button[data-v-667428a6]{margin-left:5px}.settings-docs-button[data-v-667428a6]{width:163px;text-align:left;padding:10px}.settings-header[data-v-667428a6]{margin:10px 15px 15px}.header-sidebar-opened[data-v-667428a6]{max-width:1585px}.header-sidebar-closed[data-v-667428a6]{max-width:1728px}.settings-header-container[data-v-667428a6]{height:87px}.settings-search-input[data-v-667428a6]{width:350px;margin-left:5px}.single-input[data-v-667428a6]{margin-right:10px}.socks5-checkbox[data-v-667428a6]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container[data-v-667428a6]{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts[data-v-667428a6]{margin:36px 0 0}.submit-button[data-v-667428a6]{float:right;margin:0 30px 22px 0}.submit-button-container[data-v-667428a6]{width:100%;position:fixed;bottom:0;right:0;z-index:2000}.switch-input[data-v-667428a6]{height:36px}.text[data-v-667428a6]{line-height:20px;margin-right:15px}.upload-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input[data-v-667428a6]{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.header-sidebar-closed[data-v-667428a6]{max-width:1772px}.header-sidebar-opened[data-v-667428a6]{max-width:1630px}.reboot-button-container[data-v-667428a6]{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}.reboot-sidebar-opened[data-v-667428a6]{max-width:1630px}.reboot-sidebar-closed[data-v-667428a6]{max-width:1772px}.sidebar-closed[data-v-667428a6]{max-width:1586px}.sidebar-opened[data-v-667428a6]{max-width:1442px}.submit-button-container[data-v-667428a6]{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab[data-v-667428a6],.crontab label[data-v-667428a6]{width:100%}.delete-setting-button[data-v-667428a6]{margin:4px 0 0 5px;height:28px}.delete-setting-button-container[data-v-667428a6]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p[data-v-667428a6]{line-height:18px;margin:0 5px 7px 15px}.description>p code[data-v-667428a6]{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.divider[data-v-667428a6]{margin:0 0 10px}.divider .thick-line[data-v-667428a6]{height:2px}.follow-relay[data-v-667428a6]{width:70%;margin-right:5px}.follow-relay input[data-v-667428a6]{width:100%}.follow-relay-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}h1[data-v-667428a6]{font-size:24px}.input[data-v-667428a6]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container[data-v-667428a6]{width:100%}.input-container .el-form-item[data-v-667428a6]:first-child{margin:0;padding:0 15px 10px}.input-container .el-form-item.crontab-container[data-v-667428a6]:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item[data-v-667428a6],.input-container .el-form-item:first-child .rate-limit[data-v-667428a6]{padding:0}.input-container .settings-delete-button[data-v-667428a6]{margin-top:4px;float:right}.input-row[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.label-with-margin[data-v-667428a6]{margin-left:15px}.limit-input[data-v-667428a6]{width:45%}.nav-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.proxy-url-input[data-v-667428a6]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input[data-v-667428a6]{width:100%;margin-bottom:5px}.proxy-url-value-input[data-v-667428a6]{width:100%;margin-left:0}.prune-options[data-v-667428a6]{height:80px}.prune-options[data-v-667428a6],.rate-limit .el-form-item__content[data-v-667428a6]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-label[data-v-667428a6]{float:left}.reboot-button[data-v-667428a6]{margin:0 15px 0 0}.reboot-button-container[data-v-667428a6]{top:57px}.scale-input[data-v-667428a6]{width:45%}.setting-label[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.settings-header[data-v-667428a6]{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:10px 15px 15px}.docs-search-container[data-v-667428a6]{float:right}.settings-search-input[data-v-667428a6]{width:100%;margin-left:0}.settings-search-input-container[data-v-667428a6]{margin:0 15px 15px}.settings-menu[data-v-667428a6]{width:163px;margin-right:5px}.socks5-checkbox-container[data-v-667428a6]{width:100%}.submit-button[data-v-667428a6]{margin:0 15px 22px 0}.el-input__inner[data-v-667428a6]{padding:0 5px}.el-form-item__label[data-v-667428a6]:not(.no-top-margin){padding-bottom:5px;line-height:22px;margin-top:7px;width:100%}.el-form-item__label:not(.no-top-margin) span[data-v-667428a6]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.el-message[data-v-667428a6]{min-width:80%}.el-select__tags[data-v-667428a6]{overflow:hidden}.expl>p[data-v-667428a6],.expl[data-v-667428a6]{line-height:16px}.icon-key-input[data-v-667428a6]{width:40%;margin-right:4px}.icon-minus-button[data-v-667428a6]{width:28px;height:28px;margin-top:4px}.icon-values-container[data-v-667428a6]{margin:0 7px 7px 0}.icon-value-input[data-v-667428a6]{width:60%;margin-left:4px}.icons-button-container[data-v-667428a6]{line-height:24px}.line[data-v-667428a6]{margin-bottom:10px}.mascot-form-item .el-form-item__label[data-v-667428a6]:not(.no-top-margin){margin:0;padding:0}.mascot-container[data-v-667428a6]{margin-bottom:5px}.name-input[data-v-667428a6]{width:40%;margin-right:5px}p.expl[data-v-667428a6]{line-height:20px}.pattern-input[data-v-667428a6]{width:40%;margin-right:4px}.relays-container[data-v-667428a6]{margin:0 10px}.replacement-input[data-v-667428a6]{width:60%;margin-left:4px;margin-right:5px}.settings-header-container[data-v-667428a6]{height:45px}.value-input[data-v-667428a6]{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button[data-v-667428a6]{margin:4px 0 0 10px;height:28px}.delete-setting-button-container[data-v-667428a6]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p[data-v-667428a6]{line-height:18px;margin:0 15px 10px 0}.icon-minus-button[data-v-667428a6]{width:28px;height:28px;margin-top:4px}.input[data-v-667428a6]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span[data-v-667428a6]{margin-left:10px}.input-row[data-v-667428a6],.nav-container[data-v-667428a6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container[data-v-667428a6]{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-label-container[data-v-667428a6]{width:250px}.settings-delete-button[data-v-667428a6]{float:right}.settings-header-container[data-v-667428a6]{height:36px}.settings-search-input[data-v-667428a6]{width:250px;margin:0 0 15px 15px}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-46ef.145de4f9.css b/priv/static/adminfe/chunk-46ef.145de4f9.css deleted file mode 100644 index deb5249ac..000000000 --- a/priv/static/adminfe/chunk-46ef.145de4f9.css +++ /dev/null @@ -1 +0,0 @@ -.invites-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:20px 15px 15px}.invites-container .create-invite-token{text-align:left;width:350px;padding:10px}.invites-container .create-new-token-dialog{width:40%}.invites-container .el-dialog__body{padding:5px 20px 0}.invites-container h1{margin:10px 0 0 15px}.invites-container .icon{margin-right:5px}.invites-container .invite-token-table{width:100%;margin:0 15px}.invites-container .invite-via-email{text-align:left;width:350px;padding:10px}.invites-container .invite-via-email-dialog{width:50%}.invites-container .info{color:#666;font-size:13px;line-height:22px;margin:0 0 10px}@media only screen and (max-width:480px){.invites-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 10px 7px}.invites-container .cell{padding:0}.invites-container .create-invite-token{width:100%}.invites-container .create-new-token-dialog{width:85%}.invites-container .el-date-editor{width:150px}.invites-container .el-dialog__body{padding:5px 15px 0}.invites-container h1{margin:7px 10px 15px}.invites-container .invite-token-table{width:100%;margin:0 5px;font-size:12px;font-weight:500}.invites-container .invite-via-email{width:100%;margin:10px 0 0}.invites-container .invite-via-email-dialog{width:85%}.invites-container .info{margin:0 0 10px 5px}.invites-container th .cell{padding:0}.create-invite-token,.invite-via-email{width:100%}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-6b68.0cc00484.css b/priv/static/adminfe/chunk-6b68.0cc00484.css new file mode 100644 index 000000000..7061b3d03 --- /dev/null +++ b/priv/static/adminfe/chunk-6b68.0cc00484.css @@ -0,0 +1 @@ +.actions-button[data-v-3850612b]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-3850612b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-3850612b]{float:right}.el-icon-edit[data-v-3850612b]{margin-right:5px}.tag-container[data-v-3850612b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-3850612b]{padding-right:20px}.no-hover[data-v-3850612b]:hover{color:#606266;background-color:#fff;cursor:auto} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-4ffb.dd09fe2e.css b/priv/static/adminfe/chunk-6e81.0e80d020.css similarity index 100% rename from priv/static/adminfe/chunk-4ffb.dd09fe2e.css rename to priv/static/adminfe/chunk-6e81.0e80d020.css diff --git a/priv/static/adminfe/chunk-7637.941c4edb.css b/priv/static/adminfe/chunk-7637.941c4edb.css new file mode 100644 index 000000000..be1d183a9 --- /dev/null +++ b/priv/static/adminfe/chunk-7637.941c4edb.css @@ -0,0 +1 @@ +.moderation-log-container[data-v-103bba83]{margin:0 15px}h1[data-v-103bba83]{margin:0}.el-timeline[data-v-103bba83]{margin:25px 45px 0 0;padding:0}.moderation-log-date-panel[data-v-103bba83]{width:350px}.moderation-log-header-container[data-v-103bba83]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:10px 0 15px}.moderation-log-header-container[data-v-103bba83],.moderation-log-nav-container[data-v-103bba83]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-log-search[data-v-103bba83]{width:350px}.moderation-log-user-select[data-v-103bba83]{margin:0 0 20px;width:350px}.reboot-button[data-v-103bba83]{padding:10px;margin:0;width:145px}.search-container[data-v-103bba83]{text-align:right}.pagination[data-v-103bba83]{text-align:center}@media only screen and (max-width:480px){h1[data-v-103bba83]{font-size:24px}.moderation-log-date-panel[data-v-103bba83]{width:100%}.moderation-log-user-select[data-v-103bba83]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-103bba83]{width:40%}}@media only screen and (max-width:801px) and (min-width:481px){.moderation-log-date-panel[data-v-103bba83]{width:55%}.moderation-log-user-select[data-v-103bba83]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-103bba83]{width:40%}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-87b3.3c6ede9c.css b/priv/static/adminfe/chunk-87b3.3c6ede9c.css deleted file mode 100644 index f0e6bf4ee..000000000 --- a/priv/static/adminfe/chunk-87b3.3c6ede9c.css +++ /dev/null @@ -1 +0,0 @@ -a{text-decoration:underline}.center-label label{text-align:center}.center-label label span{float:left}.code{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button{margin-left:5px}.description>p{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.description>p code{display:inline;padding:2px 3px;font-size:14px}.description-container{overflow-wrap:break-word;margin-bottom:0}.divider{margin:0 0 18px}.divider.thick-line{height:2px}.editable-keyword-container{width:100%}.el-form-item .rate-limit{margin-right:0}.el-input-group__prepend{padding-left:10px;padding-right:10px}.esshd-list{margin:0}.expl,.expl>p{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code,.expl code{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay{width:350px;margin-right:7px}.form-container{margin-bottom:80px}.grouped-settings-header{margin:0 0 14px}.highlight{background-color:#e6e6e6}.icons-button-container{width:100%;margin-bottom:10px}.icons-button-desc{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input{width:30%;margin-right:8px}.icon-minus-button{width:36px;height:36px}.icon-value-input{width:70%;margin-left:8px}.icons-container,.input-container{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item{margin-right:30px;width:100%}.input-container .el-select,.keyword-container{width:100%}label{overflow:hidden;text-overflow:ellipsis}.label-font{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl{margin-left:10px}.limit-input{width:47%;margin:0 0 5px 1%}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot{margin-bottom:15px}.mascot-container{width:100%}.mascot-input{margin-bottom:7px}.mascot-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input{margin-right:10px}.multiple-select-container{width:100%}.name-input{width:30%;margin-right:8px}.pattern-input{width:20%;margin-right:8px}.proxy-url-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input{width:35%;margin-right:8px}.proxy-url-value-input{width:35%;margin-left:8px;margin-right:10px}.prune-options{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio{margin-top:11px}.rate-limit .el-form-item__content{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container,.rate-limit-content{width:100%}.rate-limit-label{float:right}.rate-limit-label-container{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:36px;width:100%;margin-right:10px}.relays-container{margin:0 15px}.replacement-input{width:80%;margin-left:8px;margin-right:10px}.scale-input{width:47%;margin:0 1% 5px 0}.setting-input{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.settings-container{max-width:1824px;margin:auto}.settings-container .el-tabs{margin-top:20px}.settings-delete-button{margin-left:5px}.settings-docs-button{width:163px;text-align:left;padding:10px}.settings-header{margin:0}.header-sidebar-opened{max-width:1585px}.header-sidebar-closed{max-width:1728px}.settings-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:22px 30px 15px 15px}.settings-reboot-button{width:145px;text-align:left;padding:10px;margin-right:5px}.single-input{margin-right:10px}.socks5-checkbox{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts{margin:36px 0 0}.submit-button{float:right;margin:0 30px 22px 0}.submit-button-container{width:100%;position:fixed;bottom:0;right:0;z-index:10000}.switch-input{height:36px}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.sidebar-closed{max-width:1586px}.sidebar-opened{max-width:1442px}.submit-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab,.crontab label{width:100%}.delete-setting-button{margin:4px 0 0 5px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 5px 7px 0}.description>p code{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.divider{margin:0 0 10px}.divider .thick-line{height:2px}.follow-relay{width:70%;margin-right:5px}.follow-relay input{width:100%}.follow-relay-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container{width:100%}.input-container .el-form-item:first-child{margin:0;padding:0 15px 10px 0}.input-container .el-form-item.crontab-container:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item,.input-container .el-form-item:first-child .rate-limit{padding:0}.input-container .settings-delete-button{margin-top:4px;float:right}.input-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.limit-input{width:45%}.proxy-url-input{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input{width:100%;margin-bottom:5px}.proxy-url-value-input{width:100%;margin-left:0}.prune-options{height:80px}.prune-options,.rate-limit .el-form-item__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-label{float:left}.scale-input{width:45%}.setting-label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.settings-header{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:0}.settings-header-container{margin:10px 15px 15px}.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.settings-menu{width:163px}.socks5-checkbox-container{width:100%}.submit-button{margin:0 15px 22px 0}.el-input__inner{padding:0 5px}.el-form-item__label:not(.no-top-margin){padding-left:3px;padding-right:10px;line-height:22px;margin-top:7px}.el-message{min-width:80%}.el-select__tags{overflow:hidden}.expl,.expl>p{line-height:16px}.icon-key-input{width:40%;margin-right:4px}.icon-minus-button{width:28px;height:28px;margin-top:4px}.icon-values-container{margin:0 7px 7px 0}.icon-value-input{width:60%;margin-left:4px}.icons-button-container{line-height:24px}.line{margin-bottom:10px}.mascot-container{margin-bottom:5px}.name-input{width:40%;margin-right:5px}p.expl{line-height:20px}.pattern-input{width:40%;margin-right:4px}.relays-container{margin:0 10px}.replacement-input{width:60%;margin-left:4px;margin-right:5px}.value-input{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button{margin:4px 0 0 10px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 15px 10px 0}.icon-minus-button{width:28px;height:28px;margin-top:4px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span{margin-left:10px}.input-row,.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-label-container{width:250px}.settings-delete-button{float:right}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-88c9.184084df.css b/priv/static/adminfe/chunk-88c9.184084df.css deleted file mode 100644 index f3299f33b..000000000 --- a/priv/static/adminfe/chunk-88c9.184084df.css +++ /dev/null @@ -1 +0,0 @@ -a{text-decoration:underline}.note-header{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.note-actor{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.note-actor-name{margin:0;height:22px}.note-avatar-img{width:15px;height:15px;margin-right:5px}.note-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.note-card{margin-bottom:15px}.note-content{font-size:15px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.el-card__header{padding:10px 17px}.note-header{height:80px}.note-actor-container{margin-bottom:5px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.status-card{margin-bottom:10px}.status-card .account{text-decoration:underline;line-height:26px;font-size:13px}.status-card .image{width:20%}.status-card .image img{width:100%}.status-card .show-more-button{margin-left:5px}.status-card .status-account{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.status-card .status-avatar-img{display:inline-block;width:15px;height:15px;margin-right:5px}.status-card .status-account-name{display:inline-block;margin:0;height:22px}.status-card .status-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.status-card .status-checkbox{margin-right:7px}.status-card .status-content{font-size:15px;line-height:26px}.status-card .status-deleted{font-style:italic;margin-top:3px}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.status-card .status-without-content{font-style:italic}@media only screen and (max-width:480px){.el-message{min-width:80%}.el-message-box{width:80%}.status-card .el-card__header{padding:10px 17px}.status-card .el-tag{margin:3px 4px 3px 0}.status-card .status-account-container{margin-bottom:5px}.status-card .status-actions-button{margin:3px 0}.status-card .status-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.account{text-decoration:underline}.avatar-img{vertical-align:bottom;width:15px;height:15px;margin-left:5px}.divider{margin:15px 0}.el-card__body{padding:17px}.el-card__header{background-color:#fafafa;padding:10px 20px}.el-collapse{border-bottom:none}.el-collapse-item__header{height:46px;font-size:14px}.el-collapse-item__content{padding-bottom:7px}.el-icon-arrow-right{margin-right:6px}.el-icon-close{padding:10px 5px 10px 10px;cursor:pointer}h4{margin:0;height:17px}.report .header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.id{color:grey;margin-top:6px}.line{width:100%;height:0;border:.5px solid #ebeef5;margin:15px 0}.new-note p{font-size:14px;font-weight:500;height:17px;margin:13px 0 7px}.note{-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.1);box-shadow:0 2px 5px 0 rgba(0,0,0,.1);margin-bottom:10px}.no-notes{font-style:italic;color:grey}.report-row-key{font-weight:500;font-size:14px}.report-title{margin:0}.report-note-form{margin:15px 0 0}.report-post-note{margin:5px 0 0;text-align:right}.reports-pagination{margin:25px 0;text-align:center}.reports-timeline{margin:30px 45px 45px 19px;padding:0}.statuses{margin-top:15px}.submit-button{display:block;margin:7px 0 17px auto}.timestamp{margin:0;font-style:italic;color:grey}@media only screen and (max-width:480px){.report .header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto}.report .id{margin:6px 0 0}.report .report-actions-button,.report .report-tag{margin:3px 0 6px}.report .title-container{margin-bottom:7px}.reports-timeline{margin:20px 10px}.reports-timeline .el-timeline-item__wrapper{padding-left:20px}}.select-field[data-v-ecc36f5a]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-ecc36f5a]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px) and (min-width:481px){.select-field[data-v-ecc36f5a]{width:50%}}.reports-container .reports-filter-container[data-v-0a3cd0a0]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin:22px 15px;padding-bottom:0}.reports-container h1[data-v-0a3cd0a0]{margin:10px 0 0 15px}.reports-container .no-reports-message[data-v-0a3cd0a0]{color:grey;margin-left:19px}.reports-container .report-count[data-v-0a3cd0a0]{color:grey;font-size:28px}@media only screen and (max-width:480px){.reports-container h1[data-v-0a3cd0a0]{margin:7px 10px 15px}.reports-container .reports-filter-container[data-v-0a3cd0a0]{margin:0 10px}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-970d.f59cca8c.css b/priv/static/adminfe/chunk-970d.f59cca8c.css new file mode 100644 index 000000000..15511f12f --- /dev/null +++ b/priv/static/adminfe/chunk-970d.f59cca8c.css @@ -0,0 +1 @@ +a{text-decoration:underline}.note-header{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.note-actor{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.note-actor-name{margin:0;height:22px}.note-avatar-img{width:15px;height:15px;margin-right:5px}.note-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.note-card{margin-bottom:15px}.note-content{font-size:15px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.el-card__header{padding:10px 17px}.note-header{height:80px}.note-actor-container{margin-bottom:5px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.status-card{margin-bottom:10px}.status-card .account{text-decoration:underline;line-height:26px;font-size:13px}.status-card .image{width:20%}.status-card .image img{width:100%}.status-card .show-more-button{margin-left:5px}.status-card .status-account{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.status-card .status-avatar-img{display:inline-block;width:15px;height:15px;margin-right:5px}.status-card .status-account-name{display:inline-block;margin:0;height:22px}.status-card .status-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.status-card .status-checkbox{margin-right:7px}.status-card .status-content{font-size:15px;line-height:26px}.status-card .status-deleted{font-style:italic;margin-top:3px}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.status-card .status-without-content{font-style:italic}@media only screen and (max-width:480px){.el-message{min-width:80%}.el-message-box{width:80%}.status-card .el-card__header{padding:10px 17px}.status-card .el-tag{margin:3px 4px 3px 0}.status-card .status-account-container{margin-bottom:5px}.status-card .status-actions-button{margin:3px 0}.status-card .status-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.account{text-decoration:underline}.avatar-img{vertical-align:bottom;width:15px;height:15px;margin-left:5px}.divider{margin:15px 0}.deactivated{color:grey}.el-card__body{padding:17px}.el-card__header{background-color:#fafafa;padding:10px 20px}.el-collapse{border-bottom:none}.el-collapse-item__header{height:46px;font-size:14px}.el-collapse-item__content{padding-bottom:7px}.el-icon-arrow-right{margin-right:6px}.el-icon-close{padding:10px 5px 10px 10px;cursor:pointer}h4{margin:0;height:17px}.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.id{color:grey;margin-top:6px}.line{width:100%;height:0;border:.5px solid #ebeef5;margin:15px 0}.new-note p{font-size:14px;font-weight:500;height:17px;margin:13px 0 7px}.note{-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.1);box-shadow:0 2px 5px 0 rgba(0,0,0,.1);margin-bottom:10px}.no-notes{font-style:italic;color:grey}.report-row-key{font-weight:500;font-size:14px}.report-title{margin:0}.report-note-form{margin:15px 0 0}.report-post-note{margin:5px 0 0;text-align:right}.reports-pagination{margin:25px 0;text-align:center}.reports-timeline{margin:30px 45px 45px 19px;padding:0}.statuses{margin-top:15px}.submit-button{display:block;margin:7px 0 17px auto}.timestamp{margin:0;font-style:italic;color:grey}@media only screen and (max-width:480px){.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto}.report .id{margin:6px 0 0}.report .report-actions-button,.report .report-tag{margin:3px 0 6px}.report .title-container{margin-bottom:7px}.reports-timeline{margin:20px 10px}.reports-timeline .el-timeline-item__wrapper{padding-left:20px}}.select-field[data-v-ecc36f5a]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-ecc36f5a]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px) and (min-width:481px){.select-field[data-v-ecc36f5a]{width:50%}}.reports-container .reboot-button[data-v-fa601560]{padding:10px;margin:0;width:145px}.reports-container .reports-filter-container[data-v-fa601560]{margin:15px 45px 22px 15px;padding-bottom:0}.reports-container .reports-filter-container[data-v-fa601560],.reports-container .reports-header-container[data-v-fa601560]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.reports-container .reports-header-container[data-v-fa601560]{margin:10px 15px}.reports-container h1[data-v-fa601560]{margin:0}.reports-container .no-reports-message[data-v-fa601560]{color:grey;margin-left:19px}.reports-container .report-count[data-v-fa601560]{color:grey;font-size:28px}@media only screen and (max-width:480px){.reports-container h1[data-v-fa601560]{margin:7px 10px 15px}.reports-container .reboot-button[data-v-fa601560]{margin:0 0 5px 10px;width:145px}.reports-container .report-count[data-v-fa601560]{font-size:22px}.reports-container .reports-filter-container[data-v-fa601560]{margin:0 10px}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-cf57.26596375.css b/priv/static/adminfe/chunk-cf57.26596375.css deleted file mode 100644 index 9f72b88c1..000000000 --- a/priv/static/adminfe/chunk-cf57.26596375.css +++ /dev/null @@ -1 +0,0 @@ -.actions-button[data-v-3850612b]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-3850612b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-3850612b]{float:right}.el-icon-edit[data-v-3850612b]{margin-right:5px}.tag-container[data-v-3850612b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-3850612b]{padding-right:20px}.no-hover[data-v-3850612b]:hover{color:#606266;background-color:#fff;cursor:auto}.status-card{margin-bottom:10px}.status-card .account{text-decoration:underline;line-height:26px;font-size:13px}.status-card .image{width:20%}.status-card .image img{width:100%}.status-card .show-more-button{margin-left:5px}.status-card .status-account{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.status-card .status-avatar-img{display:inline-block;width:15px;height:15px;margin-right:5px}.status-card .status-account-name{display:inline-block;margin:0;height:22px}.status-card .status-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.status-card .status-checkbox{margin-right:7px}.status-card .status-content{font-size:15px;line-height:26px}.status-card .status-deleted{font-style:italic;margin-top:3px}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.status-card .status-without-content{font-style:italic}@media only screen and (max-width:480px){.el-message{min-width:80%}.el-message-box{width:80%}.status-card .el-card__header{padding:10px 17px}.status-card .el-tag{margin:3px 4px 3px 0}.status-card .status-account-container{margin-bottom:5px}.status-card .status-actions-button{margin:3px 0}.status-card .status-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.statuses-container{padding:0 15px}.statuses-container h1{margin:10px 0 15px}.statuses-container .status-container{margin:0 0 10px}.checkbox-container{margin-bottom:15px}.filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:22px 0 15px}.select-instance{width:350px}.statuses-pagination{padding:15px 0;text-align:center}@media only screen and (max-width:480px){.checkbox-container{margin-bottom:10px}.filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:10px 0}.select-field{width:100%;margin-bottom:5px}.select-instance{width:100%}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-d38a.cabdc22e.css b/priv/static/adminfe/chunk-d38a.cabdc22e.css new file mode 100644 index 000000000..4a2bf472b --- /dev/null +++ b/priv/static/adminfe/chunk-d38a.cabdc22e.css @@ -0,0 +1 @@ +.select-field[data-v-4bc96860]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-4bc96860]{width:100%;margin-bottom:5px}}.el-dialog__body{padding:20px}.create-account-form-item{margin-bottom:20px}.create-account-form-item-without-margin{margin-bottom:0}@media only screen and (max-width:480px){.create-user-dialog{width:85%}.create-account-form-item{margin-bottom:20px}.el-dialog__body{padding:20px}}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.moderate-user-button{width:100%}}.actions-button{text-align:left;width:350px;padding:10px}.actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 15px 10px}.actions-container .el-dropdown{margin-left:10px}.active-tag{color:#409eff;font-weight:700}.active-tag .el-icon-check{color:#409eff;float:right;margin:7px 0 0 15px}.el-dropdown-link:hover{cursor:pointer;color:#409eff}.create-account>.el-icon-plus{margin-right:5px}.users-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reset-password-link{text-decoration:underline}.users-container h1{margin:10px 0 0 15px;height:40px}.users-container .pagination{margin:25px 0;text-align:center}.users-container .reboot-button{margin:0 15px 0 0;padding:10px;width:145px}.users-container .search{width:350px;float:right;margin-left:10px}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.users-container .user-count{color:grey;font-size:28px}@media only screen and (max-width:480px){.password-reset-token-dialog{width:85%}.users-container h1{margin:0}.users-container .actions-button{width:100%}.users-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px 7px}.users-container .el-icon-arrow-down{font-size:12px}.users-container .search{width:100%;margin-left:0}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px}.users-container .el-tag{width:30px;display:inline-block;margin-bottom:4px;font-weight:700}.users-container .el-tag.el-tag--danger,.users-container .el-tag.el-tag--success{padding-left:8px}.users-container .reboot-button{margin:0}.users-container .users-header-container{margin:7px 10px 12px}.users-container .user-count{color:grey;font-size:22px}}@media only screen and (max-width:801px) and (min-width:481px){.actions-button,.search{width:49%}} \ No newline at end of file diff --git a/priv/static/adminfe/chunk-e458.f88bafea.css b/priv/static/adminfe/chunk-e458.f88bafea.css new file mode 100644 index 000000000..085bdf076 --- /dev/null +++ b/priv/static/adminfe/chunk-e458.f88bafea.css @@ -0,0 +1 @@ +.status-card{margin-bottom:10px}.status-card .account{text-decoration:underline;line-height:26px;font-size:13px}.status-card .image{width:20%}.status-card .image img{width:100%}.status-card .show-more-button{margin-left:5px}.status-card .status-account{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.status-card .status-avatar-img{display:inline-block;width:15px;height:15px;margin-right:5px}.status-card .status-account-name{display:inline-block;margin:0;height:22px}.status-card .status-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.status-card .status-checkbox{margin-right:7px}.status-card .status-content{font-size:15px;line-height:26px}.status-card .status-deleted{font-style:italic;margin-top:3px}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.status-card .status-without-content{font-style:italic}@media only screen and (max-width:480px){.el-message{min-width:80%}.el-message-box{width:80%}.status-card .el-card__header{padding:10px 17px}.status-card .el-tag{margin:3px 4px 3px 0}.status-card .status-account-container{margin-bottom:5px}.status-card .status-actions-button{margin:3px 0}.status-card .status-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.status-card .status-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.statuses-container{padding:0 15px}.statuses-container h1{margin:10px 0 15px}.statuses-container .status-container{margin:0 0 10px}.checkbox-container{margin-bottom:15px}.filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:22px 0 15px}.reboot-button{padding:10px;margin:0;width:145px}.select-instance{width:396px}.statuses-header,.statuses-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.statuses-pagination{padding:15px 0;text-align:center}@media only screen and (max-width:480px){.checkbox-container{margin-bottom:10px}.filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:10px 0}.select-field{width:100%;margin-bottom:5px}.select-instance{width:100%}.statuses-header-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.statuses-header-container .el-button{padding:10px 6.5px}.statuses-header-container .reboot-button{margin:10px 0 0}} \ No newline at end of file diff --git a/priv/static/adminfe/index.html b/priv/static/adminfe/index.html index 3651c1cf0..a236dd0f7 100644 --- a/priv/static/adminfe/index.html +++ b/priv/static/adminfe/index.html @@ -1 +1 @@ -Admin FE
\ No newline at end of file +Admin FE
\ No newline at end of file diff --git a/priv/static/adminfe/static/js/app.203f69f8.js b/priv/static/adminfe/static/js/app.203f69f8.js new file mode 100644 index 0000000000000000000000000000000000000000..d06fdf71def65f514bd5f24044db9870982f1d86 GIT binary patch literal 187722 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%0AE>uF}n}!WG#3I$qthG6CDXZy415 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%0A9Sc56>yA#9K(iUyI*^PC+jxhxe?dtlz0)qwi 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�wg@4cJlIP^w{HeE{6m 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

5!9@c~d80t|>_5`<$3ejw4AmSTnMqu#` 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

jD6s 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ℜM&joT@kCQKrZGf-gswXcJZaSu{nA0(9RRv$U_3 zTVr7aS~Z)tXJFVgFGEC@E2iHd?9ZgR%r-lMN6=qK*bN9{sv;QnTFBh|L?fIEhb0*% zXhI(IwjGrcjfjn9{%2i32b|hgY#VITEJJc9>#e`hlKY%DJNG&zJ36{?mlm2{dz$CA z=s8e+@!>b=RC4^WInqf02j6lES28jar2XK)IaRDkOPS91W~a@A$}j3)HN7u?F}pGH zO3s>X@1wcJU#3Jf8#B7Bg}XcaWt1wGtT-4snST8+jUzN9Ka%jfjj;aiTeG7u6?f`{ zpmuzM28}!501=#K>v@^#S_uhYeDLmE?(kADTV5{)sbUh-=<$tP)tXkcX|em2_yOaI z4hRtvdCSD)&3jwp@x#e(%kM@r{=QAqI)sbQT&h@D;6F;O9|`3|2?*aPgZui7W#m zoF7^ZBwqVT!I+I*5vlx}B1f4!`X`zC3aDe)$K4nZ7zY*f!t-3C)r`l1;5}dd~?lTK6;8rext1$4E@qRQ$bi6#@0 zbORIp*ghHZiLsQXvJpPHTi)jY6jQ!!E}5epk5wPV53HW^FRsEDcl2bR+b3~ew?=jnFOpMBJjn23 zjM`+p-ONYOOXThrKFTieII+v#xYwzsx*ycvY0q5%zqDCmnc0`1&ccLn5-UX++FwE25|JSTqy=bU(Fv$MY2jE$xd)K`V0{^RagbS zB%H>9l2!EJimsnxrDI4>DtVc2TjBlRw)#6&8V0ZZVk;LlnLILJXu^(FL@o2=+mmnA zT9{!UI)~_w`hKr{#b5NyED07-N2h!?zbQgifryugDEBZ-A$O+qezdBKCy(&6C3BXi zF1ld&F64u=a#cpD0lFB*x6-)ih9i7>euNK~euNL*tG4xRY-sL+edw=kcPv3vDU~2g z`m(Qj+fWC1Jq`3If%nAVjNdU+L+&}Q~w=Sau zS4B4SZ;XG=CCO{SaUgxuh<5Ba_UMQ0*d3d{h2Pk>L~)tFkhIv!-f=NNjcl=3SZb^hnM6ZRi5&!Tx?#Sn#fP{+CxK7F z?~trt3mAJfbauIljMfPP$;N8g(IRHhQ;8qS#?!=XSDNqGFd?{BIT;<2NuEDyOQ8;MpHo)(% z6NA@ifVq>R9mvt)>eO6-Znmls_+NvrX9p8_?xxF$3#cIA9L5A>{v*sHW`c`F2y_+{ z;)jygwi3SaTP1SvY#OSF8o*3jTo_=_4Pq{uY-N)d zR+{I>_cLsS^tAbT0XYhuwL4DK#Tyv#RNS>#Svx>_QM|lI`X7zg)?8nN(%H zV=uTnv>D}o9wUdB$CWJ#8J|w{ZTB*b0fXo2|}m4}?&O5C*= zgjGU@pq@8{%x6MU1?{D1#t*{#9Z`dQ_+b>R+Y&qan@rdsZ`Le6=$=K9giZEuPTdap zA&cVI0KesIUI|;qi^Lrc_^S+1 z#6JVypi5+ih;&SPRDy0T^H)G|2~rAoXZ)2#`pDn89H~2%XW(^EzX0;=4Iqz^t9>w-Q?=6>L#tc z(1xN+)!~qib1=)XqMMmz;b88EyRsexX4xt8nh75Pa}T5UHCnDXbUDt*`aTYBI9HA2 zx4a4F=VdTY1DGGe1n>EqgIVGDnxJm}HJG2VRA{7TPN-yW9eu?hi*D;&j?dw}7J3$| z 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 delta 36 pcmaEF``&hf4U3^^TH;2B*>WNvhMuvBfw_UXv7ug8v0iRs0RZTs3x5Cr diff --git a/priv/static/adminfe/static/js/chunk-15fa.34070731.js.map b/priv/static/adminfe/static/js/chunk-0558.75954137.js.map similarity index 99% rename from priv/static/adminfe/static/js/chunk-15fa.34070731.js.map rename to priv/static/adminfe/static/js/chunk-0558.75954137.js.map index d3830be7c7d904132753c3527505ebb70d324058..e9e2affb61fe6b9c7c3bab9917684ed7e47935f3 100644 GIT binary patch delta 28 jcmbQ&!8osjal>8?UISB83q5mFOH&g=WAn|YI6|xegUtwz delta 28 jcmbQ&!8osjal>8?UPIHgL_K2@19Jm&W5dm-I6|xeh_49Q diff --git a/priv/static/adminfe/static/js/chunk-0778.b17650df.js b/priv/static/adminfe/static/js/chunk-0778.b17650df.js new file mode 100644 index 0000000000000000000000000000000000000000..1a174cc1ef5d9abe1b66bbae42aefe917f05e8c5 GIT binary patch literal 9756 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 literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-876c.e4ceccca.js b/priv/static/adminfe/static/js/chunk-0961.ef33e81b.js similarity index 97% rename from priv/static/adminfe/static/js/chunk-876c.e4ceccca.js rename to priv/static/adminfe/static/js/chunk-0961.ef33e81b.js index 841ceb9dc9ef337eab98d10ec3de3a2333475895..e090bb93ca1c12523e6a62c72485fe31ec8dc23b 100644 GIT binary patch delta 36 pcmeyN{zH9&4U2)Lnc+rka%ysNa-v>Vv0iRs0RZiN3~K-Y diff --git a/priv/static/adminfe/static/js/chunk-876c.e4ceccca.js.map b/priv/static/adminfe/static/js/chunk-0961.ef33e81b.js.map similarity index 99% rename from priv/static/adminfe/static/js/chunk-876c.e4ceccca.js.map rename to priv/static/adminfe/static/js/chunk-0961.ef33e81b.js.map index 88976a4fe8716bf4460e6aa18912992041a7bd0a..97c6a4b5437165577654160d35e8437fcc055679 100644 GIT binary patch delta 28 kcmZ25i*dm$#tm^&yatwLhI*-K#>S}@hDn>VrM4OY0EhVrDgXcg delta 28 kcmZ25i*dm$#tm^&ycXtW$$F_K$*IZ7$%&h@rM4OY0FR#u>;M1& diff --git a/priv/static/adminfe/static/js/chunk-0d8f.6d50ff86.js b/priv/static/adminfe/static/js/chunk-0d8f.6d50ff86.js deleted file mode 100644 index 4b0945f5729d8c5a6c9b141cf3314925f2e7af7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33538 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 diff --git a/priv/static/adminfe/static/js/chunk-0d8f.6d50ff86.js.map b/priv/static/adminfe/static/js/chunk-0d8f.6d50ff86.js.map deleted file mode 100644 index da24cbef514e237fb624cf8b76413f22685aecec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116201 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 diff --git a/priv/static/adminfe/static/js/chunk-136a.c4719e3e.js b/priv/static/adminfe/static/js/chunk-136a.c4719e3e.js deleted file mode 100644 index 0c2f1a52e1a3a0bd0948aa0e09b76505a908fd99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19553 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 diff --git a/priv/static/adminfe/static/js/chunk-136a.c4719e3e.js.map b/priv/static/adminfe/static/js/chunk-136a.c4719e3e.js.map deleted file mode 100644 index 4b137fd49482a57fa3eafcdd8d7ffdc1e45f6d5b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69090 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 diff --git a/priv/static/adminfe/static/js/chunk-22d2.a0cf7976.js b/priv/static/adminfe/static/js/chunk-22d2.a0cf7976.js new file mode 100644 index 0000000000000000000000000000000000000000..903f553b00ab80354c8f06b642ed99455ddf6f16 GIT binary patch literal 30624 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 literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-22d2.a0cf7976.js.map b/priv/static/adminfe/static/js/chunk-22d2.a0cf7976.js.map new file mode 100644 index 0000000000000000000000000000000000000000..68735ed263baf97d446ac0485dd949a24a163d9a GIT binary patch literal 103450 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 K+qrh_^ZyUfCGxZY literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-2b9c.cf321c74.js b/priv/static/adminfe/static/js/chunk-2b9c.cf321c74.js deleted file mode 100644 index f06da02689e1b032bdc69066f1b2b402f65f48cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28194 zcmd^Idvn`3lK=lcg@(7aE1f0!l}R$nsb>AiYZAwf9cPlsrCbyVOSCCcLsIf_NxpgHwAvxflppME z;&)2FleJ_WzvCXwo3`2s0k1wB90NF!z@*iVdN;8*5?$v=_>(luuZ~2Xhw&iWO9C%) z+T%1CXWg4=n1%gFbZ_#jvFL6mNhG|u9f(tJ66M_=)^FQbc&eKB`)9(>i`Ifit(#Qj zlQh1$#Xs%9%RR$^qD_pvFnX4xqwY;CE}qigx{lKhv)73ifG|1P*vqnuBn^sw2MSQ> zii!MWG@j%l=-v>GJE;gnoQGbNRcCMH!!UFImgPw*+${HU;nJ9cG&v0;{%ws1?ol#{ z3AMFG+V#9QX||fN>$xK@J#XsPM&8uxY*6Dx>Wz!WX5P9vP15F*C#~!v%>7|AcgLxi z_Hs8CmuU1o$ktkydDviRZ=-FK9E91}qoK|-fj^GR>vh^Uap<4R{g$I>ZLS90ww}lt zHoCH{*aytc+t4ey5|J zRg-3Fd+A^@!d7J%-E6f-A|ECJWN|Wv=m?e!3&ofCPVJeV`fItL^={|B9wADoO3l_XdQjvnS$~DpX{r_r-lOj-cz%>*!oDq- z9by#XtjR{F{lgj*9xKSKgbTIn=o8<`lvU6fv032d zc?wnR^aZXg(P7HFxhsFPl@4*gtUzWo3Y3AiG;&w{0xLc-jcIb>$lqiBBl7wJCdwx) zYua@FD{iQNoE2IquFo&dFBK7(x>AgGTA$_rprZ+C0~F0n4rYZh3<~f{abX;Jz8EG^ z01Ie|N#*D_>QZ%DWJClaf{o=x6KGKD($F_=+xMcV4^!1hPS(1?RM-|Qv$$p2jvnE( zacj24B@BoxBh~5@or?S1xxHOYNsva_!>va-|9AoJQi(X`f9px;}s&m%iDl z{v^+n*l;LPwwpz(Tj;MgtQHT(WzhY>Zr4lsP1&T6b8Lx|6s8J?Awb_=lC^TPW^X`v|1@Df zPzE@J$H|7tMW-MLCV54~b>r+k_XR<>he=s4X03?3-POKHN$AVsosDp~W)&Z_+NhJm z>;~=kmIqD4YY`9f;TsrQzQ9DIFlI>iF^plYdT6i8gw>uzFA}MxdPv{W*}($Fs6kA@|#$-eA;_+se7A<%c{; z-$XO%l}eecQBHV`S+7o8rrbzw@P9tOpXxbKXup^CAx>iVKer(x@g$1OzgkZMHyM-Z zow+9`^u+De`vKhPM6f?&+6!D(S4d`(HX8y3@JN0n#i7X*h*dLlTe6P2`$=yV8Q$AB&ipwB=HA zXS`Ql4EQT-w}8H#EK5q?4z=!p%vB?9+gcG3gEfO_88-)vZ1z~#`sONZ^z>Nj5Nxf0#hCzFf1Y|mr zM~tjU?H`dgxD=}L(Xf{y37B(ydUTgqf^P^s6r*G+G*&5@WWOfyyJRqkgg%+pe%9kD zoKtsPsKjRJ09tl}1OHWvT_c-sEFW80^7<7F82f#7^40GvHdD)D_A{YROU` zj}1caa#K4Cui*%e;CB;MGikU!V>-x@BpZ=;bwZPpNl?ADNkaJ&=mhE(Ff!Y^gFJG8wWDX1N(#`HrKqvq^L(3Im2~7c=sLwTYCeszYk3Of>)xAP zhNQ1}!E^|XqxW~1ic<)mMkdLli@%MtHxPN(Iq63p`V+5gOS>{a9vAsQE1Uf_C!3B* zXUsu}x})uTX)wEn@)+tcS8?EQvu50g^lkvTvwcdM^NqPsj!>MMweHPA@BCbhhxF!<(c zS-26oH^>%kLIkgtWHog(H!$>@ie-g@r7kj?X*ldm*r(a|(lTcB6O5W@l z?bBT1X+Tam*z_fJRt-5=xJq03mHcJ0W_|nQVTAu5Q4#!r)$GIend5WM-9>I0M8<2} z?#lb17BQ6`&}x=<8WivdYBnezB#L+#@&yUYpEjKEHeI3 z_~-ou@uIS&!hr(z=M^+MEIiWR3|7xL7b>9y%N;N;dSG>-SB@POvzpAQvaZI$Od^TX zTy(8b*2>KdIb)?k>=l1ra~y0&rGz7aCkBNEsGkYGYNqmOC!0v)Szr<=WSuY9O?E(^3k~B@}{-0hdXmsN?UKN zz1+yj`*Cw?YQ3Ttrus$u+wV)Mey=VbN5=EEaIAkgcvBjC7!QA|jODDt8^>MsPT>!D zwVL|~_R!zlGjb3Z01^qEvv~gjH>aK88h~WI|I`3@hz&cxK&Q874}Q^|&M&x=4U4YO z>BYh3PYD$E)dUZXR*70T8+8 zPxs+hz`pbqtp<>wd2N)eaC5?=4S=@Idl{T^bIQ#IKzsbl`y=LRKjY>C;1fUBFMs1r z_Z2e@fJPr|ZQwl((tI`A03hei*2*PQ?oS!H0noNbKMEXT8m;!c00cDm?&Vu}Cea+I zxeb7Lo?qtK{cI?0W zSai}mV#5Y~VA}V*M;g?6hoW`U+q32g~ROY^VylA@DZoehiWX!O^2 z;ag!$u{s?FMiTm4Fi~ifgc<+|QTTDf;xDpJK>c^luK5s4058CXO=#46Kl+`g%{mh$ zeHM&I8Pp^okG9Wtc!-h?1CTqg`pX_SYxZlvDT(9R=@E}URpMv>A({u`d|Qq_4S8+@ zpfzn@J>!FPs(4@kbV}o^kF0x7(~jKfjngxD3&2$gV2mXg3G?pxIkTQRDPgu?Jj$S^ zGv^O0V6j6l9%x5E__HpK2XA90Ps6U zp47g(uTs`m0|jGD226YLVDJ4VV^Vuj0EQ&Jmk-A;Wb;sot^v?qY(8CQwKPhXi2y3mDls&hhT>P~r#`qYQwA zcl-T-mxs(=dDR*K32J{F@_iWQ*jEBvzG7V`0X)QlDS#ezMmxFv<>fSF0XbJk#Q-aTJC=0h`5yfXm8I85Saj8UO005R=b ze}9j+HCFp(0L0q;vva;OV#QhmAm*%OYm~?2uEtSE8f+U^=Pdpbz~ovm2AEOA!O7Dr zJgf+Z;$Q(7d&uKNkH@PkeCQ>BaTplUarQpoJ7lbFg#thZK@>L0O<5YAFfriIz0s-Bfa(8gSUJKW=d}v0I_*>^(Q{L znPRg6kOV*S-v1<7lqm@|0Fq#_;xPv^CBX(j%o)6Y|B6Q|<`}^5XudkwVF4DeG(`XUJ>80+4*X-?-$-bD_?VfzUf+|8n|J z&Yr7xh5^tm@^pWoW>>a?0Ysg#G$^h^)=)VCn1)>gqb}E*@A;0;Bh|q`XdiZy7ku~T zN|PACHEqiE`ZGQP`L)_+3qqI2#oKeW$m_yp$lq=9DIIbbLCK9}g+H z7^hYOxRZgARHoi*CU~Nx(g0{Z$K$umw24}e0g(0kI#I`Ma;*)Vt+x*!^OOwYNi8S? zijlDUaW@=2<3Uq(bPB*_XPk+NG>lh2{K#5M!x&Qmz9I#1dVRpU?n)_u0&qQKo_yFH za}Nn%95!r7Y&r7seYpyB8Y<4%u$;vGe1FUWi%z+ccnQ0GqEmMoA(f-alBr&bpSo^J zpz`px=tM0y;c4>+;U-P5owxK5u@tZyTBGBT1y^?CtL!zkYi1X8+yEv;E^YIMCUxiuZY+^3S)S3vX7|)6<)>F;3W# zttha(ZHF!*_(?Psy%Zi&m9E$e0S|+oLtYiQHObpjajx99$$?V?PM(XyIxuQ4E8zMf z(2HR85cwP^)0AbPsL|Awm(rVStKG<{0I|*{N{eILy5Wc}>s4G|OM3iUt1rLVzH> zI?>bhhhDmsH`iKjp2#rK4r&>jEkqnL)DDOy<r>r0Z<>c3`AAt( zUfxMYX?-YbJrXi$Vk+Q;l^Hu>geu&w0OKgjc4v~N@ZcZN7RVWBGi0%?P79=1#7mP5 zC_5?Uw&%%`>@=s5lIl>8BJ%1&_3@_RIJ;CTic@o_=ahWI zxHusPqKp*OpP`{tCONpFFl@_`k#`6P;zoo;fovXML^c$f1Q1k^Q3(57l7QEDj{qQi$p4W+}x zHmGiywgH(t$X0NDS=d`hom}P&DjDIe;*oq)XeeQlQgjXwQifbvX8|P?QsGmXm`)0Z zf|)?}i%H?WHb-V9bEiozvJ;<*pl{o2#VtYU6yoQ#?n<-NWmWvg`kFjo&%#R)$RmYp z)=a!Z&;p_{8e8NP^Mt6R&RZ^3WOxX|e8fMUy}i!vZsWy^?r1~_s5q8Eq{Q_IJ1tA{ zOSo8Axy+7*5G8G@BP2@J{lqc{l>GHj(+FJYg1bZ)+@WZ=)l5z7h541sy6C$V+;Ik- zj^`lgAop2??(4F-6wR`ULpdDm({Y?A!Lcb4M6>c=DOIl~HmGnGqZW7be7Vh)2;zLi zY6L|PLBJ4>w7U3KM=icC(8y;qQ(-SY7KneE%(>aLi}}RJTrwG7;$_3+K;eFz6VExR zqn0?;%V`J62q_ZuDTFXavf_((d#@?{L^U*Jgb*c}*Si2Is{4mX<(8}j3B}5tIKiQp zWO0z!3h$a}I5YIblcZNt7d6vo(iIhrlQf!}r&vTiipJNN>1^jlUUa$vhqsg^=@YxS7nyV_e)RyqgGk`VAb998na z)FD^7;j)9)88ZJ{35G(gGQokrjCcsYXYKh=<7Co#A;;x&p;3Q1Rs4>^tPw9I)SO20 z&qB6m*X{fHOp06O2!g@$^$R8Upp1%nppa+Uw40xkrLCBm-1}-8YoQ7?&QfAedADZM zl*)PiW!!$9g=|F5Sfn+%XPBp&(hsYDfE*>nEU4sGCRMODDDsAgJ2OcR9mT$m?xbWC zwFM!Pi|`PXr3tE3vz&2+1Y@XBsoKkB;JoFr9F;?(QS_iNm;^mMw5qk z>;*zx7c#9`COLJm#vvxHr2SbO>7eF*0-XA^$t$^F7anS}03?J~p5 ziv7ja&GwVUY%5YZTkRYECu`aPEhwwvU-+O1Xen_J%M581C< zF(-5Vt=*)FMOSg<1dz&Y56lU~J`-?ZapyM9PHe;7wH>>q~om#f}kEDHM zYo&V-Zljv3espRWC%}Hit05aFsFF@k=+gjnfTck|&l`O6EupIWQd+;(=hmQ^A|{;I z84p%DH&EY)<*SLt;7cs{@QQBNw~V|dQ4kQq5UKy}MRmq<-t7@^!%>@xs@k5Vlm$SO z@O??7bXZ-6AxT7m1S%xzlu&hr<(-lh9W&G_OIz{SoRyy9s_%f&b zUqN=1DKKAh{*~m$k`jp99bc$RzDx_->n;u#wnjcf!0A$hA}~46#Ya9`PZF(6itl?M z4ks>kwzJnuba)Ie5>&riPSZsnG^J=*DN~ugJG#tR74kxX#LSmLitv}Luwd8tGT#xk zgHtNvq`yik6WH-0w?Fj}X1gLg$0sQbv0Ae_0k=3*3ut}*fG%-C-=&0`c8W-l9bZDh z?}7Syi!20|b;<@c;!C#Ud0s6$oGsRTCTQ`z4!iVLE06aM2Vd|GOyoBZV(UYs#oYYi z5rdTojRSkA{Pq=@E>M;Vv-GtBYt33_@v&R>7*Qy?KWO_JuLw>MHe$ce|99^a`@1e4PTPXZcs*VhqgNYm%5)?qE*pCeAZc&}*RyDH0 zG5VYf_vAPJ!azssv%mjcQcd>auBm9-mZ7$$P?#$%C2r{eskM5GX<JG#% zi-BzPP)5;Y$xJDVmg*=PJ^|H2vPj_ozkd|X^0r}l$_R9ZAu0(_iOBv(%8w{H59|Gt zY~iUJLl%Qm445qVx;TzCF@GGQVuu%3x~^2jnJ@0V(lZt39vV_#OElxXJdxVIt+8(9 zswja#-fS|sP19fz^-niNs6c`~K0BfM@Pnm}8Fk$&Q9>RlEp}`bDUiYg3_7G!mHoIn z@L)e^<}*{OixNB8EGk=V_hKknR+_0Wu*w*10l1H!7y8)J=Xg>Pt6OSU?&VQo1zczf zg|h9)&jTPvZeGutvjtaaZrA>pfT{A#kVrMf*TW>S4)Mdt^8law$W=q}yj=7m|C3g% zKRap42lQvLqFHYj@^ny~AX7=^loM#x5 ziVf}ZbPKe;5o}4|8%bYrIHhy&%j;QauE@LxykEeV6Z%}vf;&_dt1r(~`cJHkPoy)E zxVn@CvF@{ZRmQRuv*eIHa$;J7vw&NrDgH8cu?(6R&%HTTL9`Up9j|VO?xy|KVi_5xt>TQ-KL~5xkv(A@#SA$E| zsg(Vr<_56H*D?Bep^UT=%23ZQD3@LJWmyx~NQ=0}?dR5$e_LJs_ePdXV2SO)lMl1| a`0#bl{1@F^|8#R>-GB4|WmRy_j{grC5!n_1 diff --git a/priv/static/adminfe/static/js/chunk-2b9c.cf321c74.js.map b/priv/static/adminfe/static/js/chunk-2b9c.cf321c74.js.map deleted file mode 100644 index 1ec750dd1ae7f39f7a2465b71d64335349c8f690..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95810 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 G@BcqRY}NJv diff --git a/priv/static/adminfe/static/js/chunk-3384.458ffaf1.js b/priv/static/adminfe/static/js/chunk-3384.458ffaf1.js new file mode 100644 index 0000000000000000000000000000000000000000..eb2b55d374b9df1ae2fa0120d4ec50d57db5ad70 GIT binary patch literal 23953 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 e;=O6eFjD;{_5tK+gP literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-3384.458ffaf1.js.map b/priv/static/adminfe/static/js/chunk-3384.458ffaf1.js.map new file mode 100644 index 0000000000000000000000000000000000000000..0bb577aab36f0734561caf482991fa82768972a3 GIT binary patch literal 85906 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 literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-4011.67fb1692.js.map b/priv/static/adminfe/static/js/chunk-4011.67fb1692.js.map new file mode 100644 index 0000000000000000000000000000000000000000..6df398cbc049afdc07b00eeb8831a50aed160b1e GIT binary patch literal 397967 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 JgBv&A|9|gX3akJC literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-46ef.671cac7d.js b/priv/static/adminfe/static/js/chunk-46ef.671cac7d.js deleted file mode 100644 index 805cdea13fb17f2bb8e378d39781dd66816f6f97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7765 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 diff --git a/priv/static/adminfe/static/js/chunk-6b68.fbc0f684.js b/priv/static/adminfe/static/js/chunk-6b68.fbc0f684.js new file mode 100644 index 0000000000000000000000000000000000000000..bfdf936f8720ace8cde0ea0fa02b82c8ebb69d3a GIT binary patch literal 14790 zcmd^GZFAeW5&qs^p`e)zIiVOQX;N1nHRGI<>D|?r8z=5`#?@#j5|VhP03Hb1ab^AY zJ^=V8l8R|N&Pi!9c`*rqi`@r{-F*P-GGqb2bT8>7_Wbjo63*gb%d_k2vytt_X)?FY z&WJxx*?Ir<*nxPWO z1$7hYN$PrW><08A^eIGKP&wxTX0^a$HNA>3O4m{k;Lu_1IURbIZ6&VfE%Vh=t0l(sl zdQ?lP&GE!6T~Hirvcric#&Q!D{WnX2m^#+Mp_9`5;VUPpO+6 z27#8HI7_T67@Rpm&qb^X4VSu@h%|<#%>&{9LQuzjRNY0`)L?SD%N0B2pMtT zi=I4rL|wrnnw*KzlPAT*4dm5K-7t7G1kS<$6Qx!Nm;w>N9zUl$Yt19LCTYa~?hJY- zdn#{m0WVkgW8zkj3TQq~&;?7v>Ac8GNAcBsV}bR`BG0s-_m=_~+q1&$6}HY?#rH53 z)_gh6Zkp<-(8CrROV9pdm0M*tCu8~ zTm&aHp_OdNfb8awtAI!^a~j$gY~4n1(lS|soH0*Gi%i7(L((Of!{=-oip8Pt^Azc7 zxh34$5-RM?M)j2MAIC_kLpIw^3;kf`ulMSA3ond{MYc^Y8>s*gY!}a9%?FVS^3Pe-LmU}uDxZe=$IynH>0|+J~Fbh13=kK(< zv%Xz~DiVjrhuQ`6*Q1Ng`r3erTK_I0*1FW>Qj5L0m)=^g<`7*(Grjb#)go3Vc;@ZP zmG_tAbVN{}3V784$G4l66 zQthHThxMMAScv9*8ibGymUPD#7WohBWxvQ%r4kFODh#oJs}|6jsa4tb)1o=CNBIan zpyEs4^WYXQ`--6KD|^4A5lqsL?>ue1X=?^q3o|4|}E+OGR7`Nd6L9 zN$L-jaw2UY zCroTeKROFp_J3e88`;S%L{xnrRJ^uyqqBT%oo{RFwWxye{v4%zq$o|`ns@=OqaG)q z?7bnZSPxlLJBfHwMIJhqXoL?_E`0h+GQGqk8u0@5HWTdhXM(43n-pvBjl4y#%8svN zGi<(LSNGSRJXu7`J7!wo76)kJq?X-WpX{j^Dr>lT%J&g|bCPxU379ckXE1V}+xky6 zKx>bn+M)LiaHh`i#m9(iy&VCX7I?fc67M9^?mUAXhnjW~rz{E+9KYNVv>CUS7DDeN z;O;Yt9mibav0%bK?+DroX?GH4cana`@s%CBInf7mK32}o-v>w!+12-f(8d|J-G=A=rqc46Od6qo_;JV(btR(7y!KV#r(d{~nDKFF|=663h!1S$q6;3T-V z#Ld+BF>42E%t-RL=G7!HDEYxUspspQo$WcVMk92}?;Dl(lnPx#Vs-VY?UEAg>8smp zhIwB&Eb<*iG1I`Q|WulN7r{+6gyIR67o6E?5_ literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-6b68.fbc0f684.js.map b/priv/static/adminfe/static/js/chunk-6b68.fbc0f684.js.map new file mode 100644 index 0000000000000000000000000000000000000000..d1d728b80195167c0b5ac2340fc506eb45cb146e GIT binary patch literal 40172 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 S^N0T6#WDPlh3$of5B~?s2iXt+ literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-4ffb.0e8f3772.js b/priv/static/adminfe/static/js/chunk-6e81.3733ace2.js similarity index 85% rename from priv/static/adminfe/static/js/chunk-4ffb.0e8f3772.js rename to priv/static/adminfe/static/js/chunk-6e81.3733ace2.js index 5a7aa9f595ee50688557bfb672fbcbaf2733abb1..c888ce03f978fc0f6b761341a244d9a743fc5605 100644 GIT binary patch delta 86 zcmZ1=us~pf4U1W-h2ca8FX2?%Obw+f_wpzuO`T%fOuamf)QNMA7>hSvIL0OjmUMD6 iF;vpD21`v|&Ymg)(yC`{Zfu;GoNA<(RjikrSO5TbP#PTo delta 86 zcmZ1=us~pf4U0)yTGB)ZFX3X_Obw+f_wpzuO`TNROuamf;)!#O7*jW1IL0OjmUMD6 iF;vpD21`v|&Ymg)(yC{WYLRAaZf>NPRjikrSO5T?92(F7 diff --git a/priv/static/adminfe/static/js/chunk-4ffb.0e8f3772.js.map b/priv/static/adminfe/static/js/chunk-6e81.3733ace2.js.map similarity index 98% rename from priv/static/adminfe/static/js/chunk-4ffb.0e8f3772.js.map rename to priv/static/adminfe/static/js/chunk-6e81.3733ace2.js.map index 7c020768c3c45075690a911d5c90e07486de6b8f..63128dd6755bb4b6ad03a988cc5b2f06502f51a5 100644 GIT binary patch delta 25 gcmZp2Z*t%8m5awL)xuEE*xcASF*$WJBX^?&0B`yS(EtDd delta 25 gcmZp2Z*t%8m5awDEiFmUAk`wx*xY9b&j~J|B0} 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

C>)Wc0 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 diff --git a/priv/static/adminfe/static/js/chunk-87b3.3c11ef09.js.map b/priv/static/adminfe/static/js/chunk-87b3.3c11ef09.js.map deleted file mode 100644 index 6c6a85667abeef21b70ee7f07125fef19a47b8aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 358904 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

sk|UiM-x(gS+*xuxr`@1!XWV6<-bJY7n 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 H=K22v0)?pf literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-d38a.a851004a.js.map b/priv/static/adminfe/static/js/chunk-d38a.a851004a.js.map new file mode 100644 index 0000000000000000000000000000000000000000..6779f6dc1e57a7e924a9af491da29c3cd3cb41ab GIT binary patch literal 81345 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 QTVLWO!?#v%-TM6h0LSrR$p8QV literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-e458.4e5aad44.js b/priv/static/adminfe/static/js/chunk-e458.4e5aad44.js new file mode 100644 index 0000000000000000000000000000000000000000..a02c83110f6e19f3d4b9281b8d4d2b77f8c9abec GIT binary patch literal 16756 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 M;L|}XQ}Gy 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Ν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 LnOmEi`}F?-th5^< literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/runtime.1b4f6ce0.js b/priv/static/adminfe/static/js/runtime.1b4f6ce0.js new file mode 100644 index 0000000000000000000000000000000000000000..6558531ba18c4cb854e2c1a9c609256d40dfd89c GIT binary patch literal 4032 zcmai1ZI9bF68?U_!pj2;5$19wzeutjAxMLKxS+irF1;`3GYXm_S4y;`OHti!ZTV1>l6fi8lbLJV&Gcz}`QrzZRc>-Vh_Dp#SdfIruGcz-U6PBoheRde9d-gSvt!kWanQ{h10>8fI;x59&xva^n-8 z1bhC*_UpJ?=Kzz51#S2KO_Edx2^e^=JixVqmZs&o$hq*;?JWr~5ef4cEnx?M14~+w zMcn|OTxz)FVk%|x2eI>OQa$Tw2mYW0b4JUhXFx#Q9pu_n{BhRCmV0-mP25m&$#;qr zyPJS?le#5-KCs({2-2RRr?5B8}A%0 zt~H-u5YH<0*B>!z!iO}hSOGoAILXxd$^;`L;4DB@t!UHiebyN&#GGP_)+ z%Sl(PpIsD%t7tOoZ$o!f-AF!BC{f~Z29Nb2FNHTipokqGjY+(V+jqSRyg(E!E-3o* z&v$5tRzVtaDSSjeez5PS{r_hF_+i?A1{Lx-_x&|!{v0#J*(v4Ar5MIr@DP)J8gF?z zjyEWxbSt7D_SrDr!ikp4D3)==hw&Cy_K>_$ki8wi3T3gZ>pXj^vDlh4$PpB*zJF3t;tW7g?%Zr>^3t(B7D8(Urn~-dvI`6 z+NVO4nGhBwNs?0|3ZNDVZF9Z4563+LD4;p#i`iev+?|JAwlxkIImL>`&wGzf?Gcph` zVauRuK3CK-13-^0S{i=6axkRx-4AZ7hkk^^a&5Tz@d1WTVVs`z{^DXf@0Z>1FnW^$7lHh>XE zgF(pXo{94@usyRmzx!O?p~Y+5DFP+}z6IZHxl?XWY`t;)mOJAxNaboZaz-0wkUVi; zhTn20i#Gv~>c}M>cSf7-W*tB*=sB;AKO42JQJJ6F+a#kg1w z;~jVM^_H>F$^D!=!$_V2pr>KHVlXT0`75I)M$ai;)qA=(1Rc5-*z8FCTDTL{t}cYZEW4JiT8 z;TRnuHjYj^cyd(~gcpLDU)s0iWiLN|m*qfs9XuSE1Dw}!A^1A*#9IWxxCCcLyLJEr zcfZO6AlM5u@Er=+0WnM6cX{2EJ(T z;^f|;&WR9dDQhQdAeUe%*3Rb!mg@o2Bi%S+dB!PnNG7}7gt|0Z!EuZ}Bm(|9uot80 zXcfqOUDm>=_MizNsLRY#A#)}AeB8~Ei%<{%4LcQL2YDc{>&`k+8J&zp!q1PJsaeH5oN z<6l0OTAg1Sa|I;Sz_P6?8{DMxPgm$dIwE1FY-+qVn{xJtQW>gb*=JO)N`_z$RdP#k xX_D<-LFz$ey8qkV-QQ=Wt_&AHL6!in@t=SHm~=%T4Nhwb4C~X+C4FG${{s(dAF2QV literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/runtime.1b4f6ce0.js.map b/priv/static/adminfe/static/js/runtime.1b4f6ce0.js.map new file mode 100644 index 0000000000000000000000000000000000000000..9295ac636662a5c452c5f9d36dad506c5e620b7f GIT binary patch literal 16879 zcmd^HTT|P}w*D&`KMbZ~jBN}y%$eFHgdv2G%aBa=Y@DKGSq2j$c`O-1GWqZOTbFLN zY%$5yc{mSeYH!@?UcGwV*HU*YUu*aABAcd3?O>--%hKf{inH3mW$hsz&BN%^!S?pH zHn&GtFt z_?%(rDgGQs%iQUhqH_^v>FgehHEOdsxz2CUm?l|{wc>F=NNH%k%xK{C=r)dWdS0Y? znm^8Cv~R-f^+WPzkN$%fo6n{Z(Ry{I;=WqMe=ets`05J1 zM5E=oAj5VAS!N}%SSI=Oj&Q}F=jkG+xxy(L#5N54IucKC?lSMUUafWbc(it_MU z;QTyaOh>S2JT79Ey`sLzA7`=Rp2;$Ri578~$BG@#YQJeROG6T2n!paz1zPdF5JN^1 zXGB&WEPLqphF`ef@dN-fN z%tOW<7>jPgMaHX(o4j1q29M%k`FRk#y1udd=uoDmNRnTaS6jZZNd*=U+DHE5`+j>TLqQ|! zoiO?nhJ8cBzF^kmz`%R{8}nZp{awic zX@11*F{72Gp99YsAv^YCMs{EpFtXox)h%i8F&x;lU~5&;g9cMA2N&x@;{&@ zz-(p*{eh~FKt3tXV}>6S&dwob6A~Z|7%7R1^d`C*Fgk`1+5k=hJQn;U6{0`zMfq;a$)O2{$e9f6|1d%n$cTEWwk+t7Ahys(ezfFiPTJBYAGL2H$!( zoE@=tNeFv~clz*wXOUbQE6v%VNI|;80^-M;QGsDpG^=}6&`+=Sfwjj}{$3#aAk9DE z*`qH>tGM`6^5r;=JjZj&c~F!K7}(V+ob9p@Dr ze$Wu&FN`5qaPUkP?=c5`hl5+96aG)*jQj|67R*R=-!3zAeTbDNB_i1iSBO*>d&5M& zZIB39z(NY;GIWGMHDFB)jAkin5WW-U`kov$F#dYV;X&D^2*+4NyOPBQ3?Uc>jDcc- z@57J@k4jFbof8Qxy?r5qscdPRQk_X}@6rAuF#~ae6hT(RXbJmUMt)M##|KP7R)JCa z{{{)c*&mj}mva$l%3nx<{ye$+^;s%Q(S02z{EunS06we-&X4usk64T(NBN%Qb zl>s8~uN941k+gCx)REu@nqW0-nq|l+DZp?>kc4UM9||LvQiZ<zQIv%>>Tv%g{D_OXQiUCp^9s7Fzfx_SdefuA1j{C^30=YIeA z_WJPg7&hShU#R97_;+GdtQIP~23m9dhh0U=C91aI3uN+ekr3?{Vtix|Qc}(ZjboG@ zMGOOwGD5N?6-KUOCR*H(SqQ{)@dTZU*={ z)o`StD<^7Cd{J#j82my%CmLJ3(#PxEOZ!27q>55eK9fETM}S~wJ!UGdPZ}|n-?6hH ztX6Q!@eV7I*onLsVEe2cC_>j1(Z%5{CEZ~q!baIK@D~#L%PRnanCJZYa1@B%Klp>s zM|l-EMe^wp!lv5w+uI|SitjJgG)Tr0ScniLKT3N{xfrj2>7f%(iqQMnMEnNK>DXSHZT>+>swJ!?FF?-;q^SPOn))3ajFfx`j|b2JZ@KpTX3E zFJj-s4{T3KAzd&%=S-&*#mbi2LBwn;U*e{~aQ&QllnMMk^5>!0BqQQry*O1lP_fw- z;`{Q$#`T#(kaDgT_E|DLSR{8LMmmR#B(d{?okQx!n*<4uG&4X6_Zs>UVw7wpn9Ph| z5c2T%)WiWbUM53d_{g~ZOp?KkaJT-Z+m(<+=6jMK-N=*4C**`Pk@A!x1C}It;XM#- z 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 HZG8PNKeSTC From 64bb72f98a91261158b36e63f6c9634ac9f423a6 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 13:57:47 +0200 Subject: [PATCH 024/156] Typo fix. --- lib/pleroma/web/activity_pub/utils.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/utils.ex b/lib/pleroma/web/activity_pub/utils.ex index 2d685ecc0..1a3b0b3c1 100644 --- a/lib/pleroma/web/activity_pub/utils.ex +++ b/lib/pleroma/web/activity_pub/utils.ex @@ -512,7 +512,7 @@ def get_latest_reaction(internal_activity_id, %{ap_id: ap_id}, emoji) do #### Announce-related helpers @doc """ - Retruns an existing announce activity if the notice has already been announced + Returns an existing announce activity if the notice has already been announced """ @spec get_existing_announce(String.t(), map()) :: Activity.t() | nil def get_existing_announce(actor, %{data: %{"id" => ap_id}}) do From 42ce7c5164326aa577bc7bd18e98c5d0a9d6fea5 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 14:13:08 +0200 Subject: [PATCH 025/156] ObjectValidator: Add actor fetcher. --- lib/pleroma/web/activity_pub/object_validator.ex | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex index f476c6f72..016f6e7a2 100644 --- a/lib/pleroma/web/activity_pub/object_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validator.ex @@ -46,8 +46,14 @@ def stringify_keys(object) do |> Map.new(fn {key, val} -> {to_string(key), val} end) end + def fetch_actor(object) do + with {:ok, actor} <- Types.ObjectID.cast(object["actor"]) do + User.get_or_fetch_by_ap_id(actor) + end + end + def fetch_actor_and_object(object) do - User.get_or_fetch_by_ap_id(object["actor"]) + fetch_actor(object) Object.normalize(object["object"]) :ok end From bd219ba7e884d694cc1c8747f0b48cd646821222 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 14:14:00 +0200 Subject: [PATCH 026/156] Transmogrifier Tests: Extract deletion tests. --- .../transmogrifier/delete_handling_test.exs | 106 ++++++++++++++++++ test/web/activity_pub/transmogrifier_test.exs | 77 ------------- 2 files changed, 106 insertions(+), 77 deletions(-) create mode 100644 test/web/activity_pub/transmogrifier/delete_handling_test.exs diff --git a/test/web/activity_pub/transmogrifier/delete_handling_test.exs b/test/web/activity_pub/transmogrifier/delete_handling_test.exs new file mode 100644 index 000000000..c15de5a95 --- /dev/null +++ b/test/web/activity_pub/transmogrifier/delete_handling_test.exs @@ -0,0 +1,106 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ActivityPub.Transmogrifier.DeleteHandlingTest do + use Oban.Testing, repo: Pleroma.Repo + use Pleroma.DataCase + + alias Pleroma.Activity + alias Pleroma.Object + alias Pleroma.Tests.ObanHelpers + alias Pleroma.User + alias Pleroma.Web.ActivityPub.Transmogrifier + + import Pleroma.Factory + import ExUnit.CaptureLog + + setup_all do + Tesla.Mock.mock_global(fn env -> apply(HttpRequestMock, :request, [env]) end) + :ok + end + + test "it works for incoming deletes" do + activity = insert(:note_activity) + deleting_user = insert(:user) + + data = + File.read!("test/fixtures/mastodon-delete.json") + |> Poison.decode!() + + object = + data["object"] + |> Map.put("id", activity.data["object"]) + + data = + data + |> Map.put("object", object) + |> Map.put("actor", deleting_user.ap_id) + + {:ok, %Activity{actor: actor, local: false, data: %{"id" => id}}} = + Transmogrifier.handle_incoming(data) + + assert id == data["id"] + + # We delete the Create activity because base our timelines on it. + # This should be changed after we unify objects and activities + refute Activity.get_by_id(activity.id) + assert actor == deleting_user.ap_id + + # Objects are replaced by a tombstone object. + object = Object.normalize(activity.data["object"]) + assert object.data["type"] == "Tombstone" + end + + test "it fails for incoming deletes with spoofed origin" do + activity = insert(:note_activity) + + data = + File.read!("test/fixtures/mastodon-delete.json") + |> Poison.decode!() + + object = + data["object"] + |> Map.put("id", activity.data["object"]) + + data = + data + |> Map.put("object", object) + + assert capture_log(fn -> + :error = Transmogrifier.handle_incoming(data) + end) =~ + "[error] Could not decode user at fetch http://mastodon.example.org/users/gargron, {:error, :nxdomain}" + + assert Activity.get_by_id(activity.id) + end + + @tag capture_log: true + test "it works for incoming user deletes" do + %{ap_id: ap_id} = insert(:user, ap_id: "http://mastodon.example.org/users/admin") + + data = + File.read!("test/fixtures/mastodon-delete-user.json") + |> Poison.decode!() + + {:ok, _} = Transmogrifier.handle_incoming(data) + ObanHelpers.perform_all() + + refute User.get_cached_by_ap_id(ap_id) + end + + test "it fails for incoming user deletes with spoofed origin" do + %{ap_id: ap_id} = insert(:user) + + data = + File.read!("test/fixtures/mastodon-delete-user.json") + |> Poison.decode!() + |> Map.put("actor", ap_id) + + assert capture_log(fn -> + assert :error == Transmogrifier.handle_incoming(data) + end) =~ "Object containment failed" + + assert User.get_cached_by_ap_id(ap_id) + end +end diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index 6057e360a..64e56d378 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -822,83 +822,6 @@ test "it works for incoming update activities which lock the account" do assert user.locked == true end - test "it works for incoming deletes" do - activity = insert(:note_activity) - deleting_user = insert(:user) - - data = - File.read!("test/fixtures/mastodon-delete.json") - |> Poison.decode!() - - object = - data["object"] - |> Map.put("id", activity.data["object"]) - - data = - data - |> Map.put("object", object) - |> Map.put("actor", deleting_user.ap_id) - - {:ok, %Activity{actor: actor, local: false, data: %{"id" => id}}} = - Transmogrifier.handle_incoming(data) - - assert id == data["id"] - refute Activity.get_by_id(activity.id) - assert actor == deleting_user.ap_id - end - - test "it fails for incoming deletes with spoofed origin" do - activity = insert(:note_activity) - - data = - File.read!("test/fixtures/mastodon-delete.json") - |> Poison.decode!() - - object = - data["object"] - |> Map.put("id", activity.data["object"]) - - data = - data - |> Map.put("object", object) - - assert capture_log(fn -> - :error = Transmogrifier.handle_incoming(data) - end) =~ - "[error] Could not decode user at fetch http://mastodon.example.org/users/gargron, {:error, :nxdomain}" - - assert Activity.get_by_id(activity.id) - end - - @tag capture_log: true - test "it works for incoming user deletes" do - %{ap_id: ap_id} = insert(:user, ap_id: "http://mastodon.example.org/users/admin") - - data = - File.read!("test/fixtures/mastodon-delete-user.json") - |> Poison.decode!() - - {:ok, _} = Transmogrifier.handle_incoming(data) - ObanHelpers.perform_all() - - refute User.get_cached_by_ap_id(ap_id) - end - - test "it fails for incoming user deletes with spoofed origin" do - %{ap_id: ap_id} = insert(:user) - - data = - File.read!("test/fixtures/mastodon-delete-user.json") - |> Poison.decode!() - |> Map.put("actor", ap_id) - - assert capture_log(fn -> - assert :error == Transmogrifier.handle_incoming(data) - end) =~ "Object containment failed" - - assert User.get_cached_by_ap_id(ap_id) - end - test "it works for incoming unannounces with an existing notice" do user = insert(:user) {:ok, activity} = CommonAPI.post(user, %{"status" => "hey"}) From 5839e67eb86d6d14b21222247ce8e113c3b26637 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Thu, 6 Feb 2020 18:01:12 +0300 Subject: [PATCH 027/156] return data only for updated emoji --- CHANGELOG.md | 7 +- docs/API/pleroma_api.md | 2 +- .../controllers/emoji_api_controller.ex | 93 +++++----- test/instance_static/add/shortcode.png | Bin 0 -> 95 bytes .../controllers/emoji_api_controller_test.exs | 162 ++++++++++-------- 5 files changed, 149 insertions(+), 115 deletions(-) create mode 100644 test/instance_static/add/shortcode.png diff --git a/CHANGELOG.md b/CHANGELOG.md index c0f1bcf57..a220c14f6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -125,13 +125,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

API Changes -- **Breaking** EmojiReactions: Change endpoints and responses to align with Mastodon -- **Breaking** Admin API: `PATCH /api/pleroma/admin/users/:nickname/force_password_reset` is now `PATCH /api/pleroma/admin/users/force_password_reset` (accepts `nicknames` array in the request body) +- **Breaking:** EmojiReactions: Change endpoints and responses to align with Mastodon +- **Breaking:** Admin API: `PATCH /api/pleroma/admin/users/:nickname/force_password_reset` is now `PATCH /api/pleroma/admin/users/force_password_reset` (accepts `nicknames` array in the request body) - **Breaking:** Admin API: Return link alongside with token on password reset - **Breaking:** Admin API: `PUT /api/pleroma/admin/reports/:id` is now `PATCH /api/pleroma/admin/reports`, see admin_api.md for details - **Breaking:** `/api/pleroma/admin/users/invite_token` now uses `POST`, changed accepted params and returns full invite in json instead of only token string. -- **Breaking** replying to reports is now "report notes", enpoint changed from `POST /api/pleroma/admin/reports/:id/respond` to `POST /api/pleroma/admin/reports/:id/notes` +- **Breaking:** replying to reports is now "report notes", endpoint changed from `POST /api/pleroma/admin/reports/:id/respond` to `POST /api/pleroma/admin/reports/:id/notes` - Mastodon API: stopped sanitizing display names, field names and subject fields since they are supposed to be treated as plaintext +- **Breaking:** Pleroma API: `/api/pleroma/emoji/packs/:name/update_file` endpoint returns only updated emoji data. - Admin API: Return `total` when querying for reports - Mastodon API: Return `pleroma.direct_conversation_id` when creating a direct message (`POST /api/v1/statuses`) - Admin API: Return link alongside with token on password reset diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index 90c43c356..a7c7731ce 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -357,7 +357,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * if the `action` is `update`, changes emoji shortcode (from `shortcode` to `new_shortcode` or moves the file (from the current filename to `new_filename`) * if the `action` is `remove`, removes the emoji named `shortcode` and it's associated file -* Response: JSON, updated "files" section of the pack and 200 status, 409 if the trying to use a shortcode +* Response: JSON, emoji shortcode with filename which was added/updated/deleted and 200 status, 409 if the trying to use a shortcode that is already taken, 400 if there was an error with the shortcode, filename or file (additional info in the "error" part of the response JSON) diff --git a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex index e01825b48..981bac4fa 100644 --- a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex @@ -385,23 +385,35 @@ defp update_metadata_and_send(conn, full_pack, new_data, pack_file_p) do json(conn, new_data) end - defp get_filename(%{"filename" => filename}), do: filename - - defp get_filename(%{"file" => file}) do - case file do - %Plug.Upload{filename: filename} -> filename - url when is_binary(url) -> Path.basename(url) - end - end + defp get_filename(%Plug.Upload{filename: filename}), do: filename + defp get_filename(url) when is_binary(url), do: Path.basename(url) defp empty?(str), do: String.trim(str) == "" - defp update_file_and_send(conn, updated_full_pack, pack_file_p) do - # Write the emoji pack file - File.write!(pack_file_p, Jason.encode!(updated_full_pack, pretty: true)) + defp update_pack_file(updated_full_pack, pack_file_p) do + content = Jason.encode!(updated_full_pack, pretty: true) - # Return the modified file list - json(conn, updated_full_pack["files"]) + File.write!(pack_file_p, content) + end + + defp create_subdirs(file_path) do + if String.contains?(file_path, "/") do + file_path + |> Path.dirname() + |> File.mkdir_p!() + end + end + + defp pack_info(pack_name) do + dir = Path.join(emoji_dir_path(), pack_name) + json_path = Path.join(dir, "pack.json") + + json = + json_path + |> File.read!() + |> Jason.decode!() + + {dir, json_path, json} end @doc """ @@ -422,23 +434,25 @@ defp update_file_and_send(conn, updated_full_pack, pack_file_p) do # Add def update_file( conn, - %{"pack_name" => pack_name, "action" => "add", "shortcode" => shortcode} = params + %{"pack_name" => pack_name, "action" => "add"} = params ) do - pack_dir = Path.join(emoji_dir_path(), pack_name) - pack_file_p = Path.join(pack_dir, "pack.json") + shortcode = + if params["shortcode"] do + params["shortcode"] + else + filename = get_filename(params["file"]) + Path.basename(filename, Path.extname(filename)) + end - full_pack = Jason.decode!(File.read!(pack_file_p)) + {pack_dir, pack_file_p, full_pack} = pack_info(pack_name) with {_, false} <- {:has_shortcode, Map.has_key?(full_pack["files"], shortcode)}, - filename <- get_filename(params), + filename <- params["filename"] || get_filename(params["file"]), false <- empty?(shortcode), - false <- empty?(filename) do - file_path = Path.join(pack_dir, filename) - + false <- empty?(filename), + file_path <- Path.join(pack_dir, filename) do # If the name contains directories, create them - if String.contains?(file_path, "/") do - File.mkdir_p!(Path.dirname(file_path)) - end + create_subdirs(file_path) case params["file"] do %Plug.Upload{path: upload_path} -> @@ -451,8 +465,11 @@ def update_file( File.write!(file_path, file_contents) end - updated_full_pack = put_in(full_pack, ["files", shortcode], filename) - update_file_and_send(conn, updated_full_pack, pack_file_p) + full_pack + |> put_in(["files", shortcode], filename) + |> update_pack_file(pack_file_p) + + json(conn, %{shortcode => filename}) else {:has_shortcode, _} -> conn @@ -472,10 +489,7 @@ def update_file(conn, %{ "action" => "remove", "shortcode" => shortcode }) do - pack_dir = Path.join(emoji_dir_path(), pack_name) - pack_file_p = Path.join(pack_dir, "pack.json") - - full_pack = Jason.decode!(File.read!(pack_file_p)) + {pack_dir, pack_file_p, full_pack} = pack_info(pack_name) if Map.has_key?(full_pack["files"], shortcode) do {emoji_file_path, updated_full_pack} = pop_in(full_pack, ["files", shortcode]) @@ -494,7 +508,8 @@ def update_file(conn, %{ end end - update_file_and_send(conn, updated_full_pack, pack_file_p) + update_pack_file(updated_full_pack, pack_file_p) + json(conn, %{shortcode => full_pack["files"][shortcode]}) else conn |> put_status(:bad_request) @@ -507,10 +522,7 @@ def update_file( conn, %{"pack_name" => pack_name, "action" => "update", "shortcode" => shortcode} = params ) do - pack_dir = Path.join(emoji_dir_path(), pack_name) - pack_file_p = Path.join(pack_dir, "pack.json") - - full_pack = Jason.decode!(File.read!(pack_file_p)) + {pack_dir, pack_file_p, full_pack} = pack_info(pack_name) with {_, true} <- {:has_shortcode, Map.has_key?(full_pack["files"], shortcode)}, %{"new_shortcode" => new_shortcode, "new_filename" => new_filename} <- params, @@ -522,9 +534,7 @@ def update_file( new_emoji_file_path = Path.join(pack_dir, new_filename) # If the name contains directories, create them - if String.contains?(new_emoji_file_path, "/") do - File.mkdir_p!(Path.dirname(new_emoji_file_path)) - end + create_subdirs(new_emoji_file_path) # Move/Rename the old filename to a new filename # These are probably on the same filesystem, so just rename should work @@ -540,8 +550,11 @@ def update_file( end # Then, put in the new shortcode with the new path - updated_full_pack = put_in(updated_full_pack, ["files", new_shortcode], new_filename) - update_file_and_send(conn, updated_full_pack, pack_file_p) + updated_full_pack + |> put_in(["files", new_shortcode], new_filename) + |> update_pack_file(pack_file_p) + + json(conn, %{new_shortcode => new_filename}) else {:has_shortcode, _} -> conn diff --git a/test/instance_static/add/shortcode.png b/test/instance_static/add/shortcode.png new file mode 100644 index 0000000000000000000000000000000000000000..8f50fa02340e7e09e562f86e00b6e4bd6ad1d565 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^4Is=2Bp6=1#-sr$rjj7PU - File.write!(pack_file, original_content) + on_exit(fn -> + File.write!(pack_file, original_content) + end) - File.rm_rf!("#{@emoji_dir_path}/test_pack/blank_url.png") - File.rm_rf!("#{@emoji_dir_path}/test_pack/dir") - File.rm_rf!("#{@emoji_dir_path}/test_pack/dir_2") - end) + admin = insert(:user, is_admin: true) + %{conn: conn} = oauth_access(["admin:write"], user: admin) + {:ok, conn: conn} + end - admin = insert(:user, is_admin: true) - %{conn: conn} = oauth_access(["admin:write"], user: admin) + test "update file without shortcode", %{conn: conn} do + on_exit(fn -> File.rm_rf!("#{@emoji_dir_path}/test_pack/shortcode.png") end) - same_name = %{ - "action" => "add", - "shortcode" => "blank", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ - filename: "blank.png", - path: "#{@emoji_dir_path}/test_pack/blank.png" + assert conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "file" => %Plug.Upload{ + filename: "shortcode.png", + path: "#{Pleroma.Config.get([:instance, :static_dir])}/add/shortcode.png" + } + }) + |> json_response(200) == %{"shortcode" => "shortcode.png"} + end + + test "updating pack files", %{conn: conn} do + on_exit(fn -> + File.rm_rf!("#{@emoji_dir_path}/test_pack/blank_url.png") + File.rm_rf!("#{@emoji_dir_path}/test_pack/dir") + File.rm_rf!("#{@emoji_dir_path}/test_pack/dir_2") + end) + + same_name = %{ + "action" => "add", + "shortcode" => "blank", + "filename" => "dir/blank.png", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_dir_path}/test_pack/blank.png" + } } - } - different_name = %{same_name | "shortcode" => "blank_2"} + different_name = %{same_name | "shortcode" => "blank_2"} - assert (conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), same_name) - |> json_response(:conflict))["error"] =~ "already exists" + assert (conn + |> post(emoji_api_path(conn, :update_file, "test_pack"), same_name) + |> json_response(:conflict))["error"] =~ "already exists" - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), different_name) - |> json_response(200) == %{"blank" => "blank.png", "blank_2" => "dir/blank.png"} + assert conn + |> post(emoji_api_path(conn, :update_file, "test_pack"), different_name) + |> json_response(200) == %{"blank_2" => "dir/blank.png"} - assert File.exists?("#{@emoji_dir_path}/test_pack/dir/blank.png") + assert File.exists?("#{@emoji_dir_path}/test_pack/dir/blank.png") - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ - "action" => "update", - "shortcode" => "blank_2", - "new_shortcode" => "blank_3", - "new_filename" => "dir_2/blank_3.png" - }) - |> json_response(200) == %{"blank" => "blank.png", "blank_3" => "dir_2/blank_3.png"} + assert conn + |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ + "action" => "update", + "shortcode" => "blank_2", + "new_shortcode" => "blank_3", + "new_filename" => "dir_2/blank_3.png" + }) + |> json_response(200) == %{"blank_3" => "dir_2/blank_3.png"} - refute File.exists?("#{@emoji_dir_path}/test_pack/dir/") - assert File.exists?("#{@emoji_dir_path}/test_pack/dir_2/blank_3.png") + refute File.exists?("#{@emoji_dir_path}/test_pack/dir/") + assert File.exists?("#{@emoji_dir_path}/test_pack/dir_2/blank_3.png") - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ - "action" => "remove", - "shortcode" => "blank_3" - }) - |> json_response(200) == %{"blank" => "blank.png"} + assert conn + |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ + "action" => "remove", + "shortcode" => "blank_3" + }) + |> json_response(200) == %{"blank_3" => "dir_2/blank_3.png"} - refute File.exists?("#{@emoji_dir_path}/test_pack/dir_2/") + refute File.exists?("#{@emoji_dir_path}/test_pack/dir_2/") - mock(fn - %{ - method: :get, - url: "https://test-blank/blank_url.png" - } -> - text(File.read!("#{@emoji_dir_path}/test_pack/blank.png")) - end) + mock(fn + %{ + method: :get, + url: "https://test-blank/blank_url.png" + } -> + text(File.read!("#{@emoji_dir_path}/test_pack/blank.png")) + end) - # The name should be inferred from the URL ending - from_url = %{ - "action" => "add", - "shortcode" => "blank_url", - "file" => "https://test-blank/blank_url.png" - } + # The name should be inferred from the URL ending + from_url = %{ + "action" => "add", + "shortcode" => "blank_url", + "file" => "https://test-blank/blank_url.png" + } - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), from_url) - |> json_response(200) == %{ - "blank" => "blank.png", - "blank_url" => "blank_url.png" - } + assert conn + |> post(emoji_api_path(conn, :update_file, "test_pack"), from_url) + |> json_response(200) == %{ + "blank_url" => "blank_url.png" + } - assert File.exists?("#{@emoji_dir_path}/test_pack/blank_url.png") + assert File.exists?("#{@emoji_dir_path}/test_pack/blank_url.png") - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ - "action" => "remove", - "shortcode" => "blank_url" - }) - |> json_response(200) == %{"blank" => "blank.png"} + assert conn + |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ + "action" => "remove", + "shortcode" => "blank_url" + }) + |> json_response(200) == %{"blank_url" => "blank_url.png"} - refute File.exists?("#{@emoji_dir_path}/test_pack/blank_url.png") + refute File.exists?("#{@emoji_dir_path}/test_pack/blank_url.png") + end end test "creating and deleting a pack" do From db184a8eb495865334f47a24f8c5b1fec65450b6 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 14:37:14 +0200 Subject: [PATCH 028/156] DeleteValidator: Mastodon sends unaddressed deletes. --- .../object_validators/delete_validator.ex | 1 - test/web/activity_pub/object_validator_test.exs | 14 -------------- 2 files changed, 15 deletions(-) diff --git a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex index 8dd5c19ad..0eb31451c 100644 --- a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex @@ -32,7 +32,6 @@ def validate_data(cng) do |> validate_inclusion(:type, ["Delete"]) |> validate_same_domain() |> validate_object_presence() - |> validate_recipients_presence() end def validate_same_domain(cng) do diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 64b9ee1ec..ab26d3501 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -59,20 +59,6 @@ test "it's invalid if the actor of the object and the actor of delete are from d assert {:actor, {"is not allowed to delete object", []}} in cng.errors end - - test "it's invalid if all the recipient fields are empty", %{ - valid_post_delete: valid_post_delete - } do - empty_recipients = - valid_post_delete - |> Map.put("to", []) - |> Map.put("cc", []) - - {:error, cng} = ObjectValidator.validate(empty_recipients, []) - - assert {:to, {"no recipients in any field", []}} in cng.errors - assert {:cc, {"no recipients in any field", []}} in cng.errors - end end describe "likes" do From 342f55fb92c723acf7f53de2dae390b72051c94b Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Sat, 28 Mar 2020 13:34:32 +0300 Subject: [PATCH 029/156] refactor emoji api with fixes --- lib/pleroma/emoji/pack.ex | 509 ++++++++++ .../controllers/emoji_api_controller.ex | 616 ++++-------- lib/pleroma/web/router.ex | 3 +- .../emoji/pack_bad_sha/blank.png | Bin 0 -> 95 bytes .../emoji/pack_bad_sha/pack.json | 13 + .../emoji/pack_bad_sha/pack_bad_sha.zip | Bin 0 -> 256 bytes .../instance_static/emoji/test_pack/pack.json | 16 +- .../emoji/test_pack_nonshared/pack.json | 5 +- .../controllers/emoji_api_controller_test.exs | 944 ++++++++++++------ 9 files changed, 1327 insertions(+), 779 deletions(-) create mode 100644 lib/pleroma/emoji/pack.ex create mode 100644 test/instance_static/emoji/pack_bad_sha/blank.png create mode 100644 test/instance_static/emoji/pack_bad_sha/pack.json create mode 100644 test/instance_static/emoji/pack_bad_sha/pack_bad_sha.zip diff --git a/lib/pleroma/emoji/pack.ex b/lib/pleroma/emoji/pack.ex new file mode 100644 index 000000000..21ed12c78 --- /dev/null +++ b/lib/pleroma/emoji/pack.ex @@ -0,0 +1,509 @@ +defmodule Pleroma.Emoji.Pack do + @derive {Jason.Encoder, only: [:files, :pack]} + defstruct files: %{}, + pack_file: nil, + path: nil, + pack: %{}, + name: nil + + @type t() :: %__MODULE__{ + files: %{String.t() => Path.t()}, + pack_file: Path.t(), + path: Path.t(), + pack: map(), + name: String.t() + } + + alias Pleroma.Emoji + + @spec emoji_path() :: Path.t() + def emoji_path do + static = Pleroma.Config.get!([:instance, :static_dir]) + Path.join(static, "emoji") + end + + @spec create(String.t()) :: :ok | {:error, File.posix()} | {:error, :empty_values} + def create(name) when byte_size(name) > 0 do + dir = Path.join(emoji_path(), name) + + with :ok <- File.mkdir(dir) do + %__MODULE__{ + pack_file: Path.join(dir, "pack.json") + } + |> save_pack() + end + end + + def create(_), do: {:error, :empty_values} + + @spec show(String.t()) :: {:ok, t()} | {:loaded, nil} | {:error, :empty_values} + def show(name) when byte_size(name) > 0 do + with {_, %__MODULE__{} = pack} <- {:loaded, load_pack(name)}, + {_, pack} <- validate_pack(pack) do + {:ok, pack} + end + end + + def show(_), do: {:error, :empty_values} + + @spec delete(String.t()) :: + {:ok, [binary()]} | {:error, File.posix(), binary()} | {:error, :empty_values} + def delete(name) when byte_size(name) > 0 do + emoji_path() + |> Path.join(name) + |> File.rm_rf() + end + + def delete(_), do: {:error, :empty_values} + + @spec add_file(String.t(), String.t(), Path.t(), Plug.Upload.t() | String.t()) :: + {:ok, t()} | {:error, File.posix()} | {:error, :empty_values} + def add_file(name, shortcode, filename, file) + when byte_size(name) > 0 and byte_size(shortcode) > 0 and byte_size(filename) > 0 do + with {_, nil} <- {:exists, Emoji.get(shortcode)}, + {_, %__MODULE__{} = pack} <- {:loaded, load_pack(name)} do + file_path = Path.join(pack.path, filename) + + create_subdirs(file_path) + + case file do + %Plug.Upload{path: upload_path} -> + # Copy the uploaded file from the temporary directory + File.copy!(upload_path, file_path) + + url when is_binary(url) -> + # Download and write the file + file_contents = Tesla.get!(url).body + File.write!(file_path, file_contents) + end + + files = Map.put(pack.files, shortcode, filename) + + updated_pack = %{pack | files: files} + + case save_pack(updated_pack) do + :ok -> + Emoji.reload() + {:ok, updated_pack} + + e -> + e + end + end + end + + def add_file(_, _, _, _), do: {:error, :empty_values} + + defp create_subdirs(file_path) do + if String.contains?(file_path, "/") do + file_path + |> Path.dirname() + |> File.mkdir_p!() + end + end + + @spec remove_file(String.t(), String.t()) :: + {:ok, t()} | {:error, File.posix()} | {:error, :empty_values} + def remove_file(name, shortcode) when byte_size(name) > 0 and byte_size(shortcode) > 0 do + with {_, %__MODULE__{} = pack} <- {:loaded, load_pack(name)}, + {_, {filename, files}} when not is_nil(filename) <- + {:exists, Map.pop(pack.files, shortcode)}, + emoji <- Path.join(pack.path, filename), + {_, true} <- {:exists, File.exists?(emoji)} do + emoji_dir = Path.dirname(emoji) + + File.rm!(emoji) + + if String.contains?(filename, "/") and File.ls!(emoji_dir) == [] do + File.rmdir!(emoji_dir) + end + + updated_pack = %{pack | files: files} + + case save_pack(updated_pack) do + :ok -> + Emoji.reload() + {:ok, updated_pack} + + e -> + e + end + end + end + + def remove_file(_, _), do: {:error, :empty_values} + + @spec update_file(String.t(), String.t(), String.t(), String.t(), boolean()) :: + {:ok, t()} | {:error, File.posix()} | {:error, :empty_values} + def update_file(name, shortcode, new_shortcode, new_filename, force) + when byte_size(name) > 0 and byte_size(shortcode) > 0 and byte_size(new_shortcode) > 0 and + byte_size(new_filename) > 0 do + with {_, %__MODULE__{} = pack} <- {:loaded, load_pack(name)}, + {_, {filename, files}} when not is_nil(filename) <- + {:exists, Map.pop(pack.files, shortcode)}, + {_, true} <- {:not_used, force or is_nil(Emoji.get(new_shortcode))} do + old_path = Path.join(pack.path, filename) + old_dir = Path.dirname(old_path) + new_path = Path.join(pack.path, new_filename) + + create_subdirs(new_path) + + :ok = File.rename(old_path, new_path) + + if String.contains?(filename, "/") and File.ls!(old_dir) == [] do + File.rmdir!(old_dir) + end + + files = Map.put(files, new_shortcode, new_filename) + + updated_pack = %{pack | files: files} + + case save_pack(updated_pack) do + :ok -> + Emoji.reload() + {:ok, updated_pack} + + e -> + e + end + end + end + + def update_file(_, _, _, _, _), do: {:error, :empty_values} + + @spec import_from_filesystem() :: {:ok, [String.t()]} | {:error, atom()} + def import_from_filesystem do + emoji_path = emoji_path() + + with {:ok, %{access: :read_write}} <- File.stat(emoji_path), + {:ok, results} <- File.ls(emoji_path) do + names = + results + |> Enum.map(&Path.join(emoji_path, &1)) + |> Enum.reject(fn path -> + File.dir?(path) and File.exists?(Path.join(path, "pack.json")) + end) + |> Enum.map(&write_pack_contents/1) + |> Enum.filter(& &1) + + {:ok, names} + else + {:ok, %{access: _}} -> {:error, :not_writable} + e -> e + end + end + + defp write_pack_contents(path) do + pack = %__MODULE__{ + files: files_from_path(path), + path: path, + pack_file: Path.join(path, "pack.json") + } + + case save_pack(pack) do + :ok -> Path.basename(path) + _ -> nil + end + end + + defp files_from_path(path) do + txt_path = Path.join(path, "emoji.txt") + + if File.exists?(txt_path) do + # There's an emoji.txt file, it's likely from a pack installed by the pack manager. + # Make a pack.json file from the contents of that emoji.txt file + + # FIXME: Copy-pasted from Pleroma.Emoji/load_from_file_stream/2 + + # Create a map of shortcodes to filenames from emoji.txt + File.read!(txt_path) + |> String.split("\n") + |> Enum.map(&String.trim/1) + |> Enum.map(fn line -> + case String.split(line, ~r/,\s*/) do + # This matches both strings with and without tags + # and we don't care about tags here + [name, file | _] -> + file_dir_name = Path.dirname(file) + + file = + if String.ends_with?(path, file_dir_name) do + Path.basename(file) + else + file + end + + {name, file} + + _ -> + nil + end + end) + |> Enum.filter(& &1) + |> Enum.into(%{}) + else + # If there's no emoji.txt, assume all files + # that are of certain extensions from the config are emojis and import them all + pack_extensions = Pleroma.Config.get!([:emoji, :pack_extensions]) + Emoji.Loader.make_shortcode_to_file_map(path, pack_extensions) + end + end + + @spec list_remote_packs(String.t()) :: {:ok, map()} + def list_remote_packs(url) do + uri = + url + |> String.trim() + |> URI.parse() + + with {_, true} <- {:shareable, shareable_packs_available?(uri)} do + packs = + uri + |> URI.merge("/api/pleroma/emoji/packs") + |> to_string() + |> Tesla.get!() + |> Map.get(:body) + |> Jason.decode!() + + {:ok, packs} + end + end + + @spec list_local_packs() :: {:ok, map()} + def list_local_packs do + emoji_path = emoji_path() + + # Create the directory first if it does not exist. This is probably the first request made + # with the API so it should be sufficient + with {:create_dir, :ok} <- {:create_dir, File.mkdir_p(emoji_path)}, + {:ls, {:ok, results}} <- {:ls, File.ls(emoji_path)} do + packs = + results + |> Enum.map(&load_pack/1) + |> Enum.filter(& &1) + |> Enum.map(&validate_pack/1) + |> Map.new() + + {:ok, packs} + end + end + + defp validate_pack(pack) do + if downloadable?(pack) do + archive = fetch_archive(pack) + archive_sha = :crypto.hash(:sha256, archive) |> Base.encode16() + + info = + pack.pack + |> Map.put("can-download", true) + |> Map.put("download-sha256", archive_sha) + + {pack.name, Map.put(pack, :pack, info)} + else + info = Map.put(pack.pack, "can-download", false) + {pack.name, Map.put(pack, :pack, info)} + end + end + + defp downloadable?(pack) do + # If the pack is set as shared, check if it can be downloaded + # That means that when asked, the pack can be packed and sent to the remote + # Otherwise, they'd have to download it from external-src + pack.pack["share-files"] && + Enum.all?(pack.files, fn {_, file} -> + File.exists?(Path.join(pack.path, file)) + end) + end + + @spec download(String.t()) :: {:ok, binary()} + def download(name) do + with {_, %__MODULE__{} = pack} <- {:exists?, load_pack(name)}, + {_, true} <- {:can_download?, downloadable?(pack)} do + {:ok, fetch_archive(pack)} + end + end + + defp fetch_archive(pack) do + hash = :crypto.hash(:md5, File.read!(pack.pack_file)) + + case Cachex.get!(:emoji_packs_cache, pack.name) do + %{hash: ^hash, pack_data: archive} -> + archive + + _ -> + create_archive_and_cache(pack, hash) + end + end + + defp create_archive_and_cache(pack, hash) do + files = ['pack.json' | Enum.map(pack.files, fn {_, file} -> to_charlist(file) end)] + + {:ok, {_, result}} = + :zip.zip('#{pack.name}.zip', files, [:memory, cwd: to_charlist(pack.path)]) + + ttl_per_file = Pleroma.Config.get!([:emoji, :shared_pack_cache_seconds_per_file]) + overall_ttl = :timer.seconds(ttl_per_file * Enum.count(files)) + + Cachex.put!( + :emoji_packs_cache, + pack.name, + # if pack.json MD5 changes, the cache is not valid anymore + %{hash: hash, pack_data: result}, + # Add a minute to cache time for every file in the pack + ttl: overall_ttl + ) + + result + end + + @spec download_from_source(String.t(), String.t(), String.t()) :: :ok + def download_from_source(name, url, as) do + uri = + url + |> String.trim() + |> URI.parse() + + with {_, true} <- {:shareable, shareable_packs_available?(uri)} do + # TODO: why do we load all packs, if we know the name of pack we need + remote_pack = + uri + |> URI.merge("/api/pleroma/emoji/packs/#{name}") + |> to_string() + |> Tesla.get!() + |> Map.get(:body) + |> Jason.decode!() + + result = + case remote_pack["pack"] do + %{"share-files" => true, "can-download" => true, "download-sha256" => sha} -> + {:ok, + %{ + sha: sha, + url: + URI.merge(uri, "/api/pleroma/emoji/packs/#{name}/download_shared") |> to_string() + }} + + %{"fallback-src" => src, "fallback-src-sha256" => sha} when is_binary(src) -> + {:ok, + %{ + sha: sha, + url: src, + fallback: true + }} + + _ -> + {:error, + "The pack was not set as shared and there is no fallback src to download from"} + end + + with {:ok, %{sha: sha, url: url} = pinfo} <- result, + %{body: archive} <- Tesla.get!(url), + {_, true} <- {:checksum, Base.decode16!(sha) == :crypto.hash(:sha256, archive)} do + local_name = as || name + + path = Path.join(emoji_path(), local_name) + + pack = %__MODULE__{ + name: local_name, + path: path, + files: remote_pack["files"], + pack_file: Path.join(path, "pack.json") + } + + File.mkdir_p!(pack.path) + + files = Enum.map(remote_pack["files"], fn {_, path} -> to_charlist(path) end) + # Fallback cannot contain a pack.json file + files = if pinfo[:fallback], do: files, else: ['pack.json' | files] + + {:ok, _} = :zip.unzip(archive, cwd: to_charlist(pack.path), file_list: files) + + # Fallback can't contain a pack.json file, since that would cause the fallback-src-sha256 + # in it to depend on itself + if pinfo[:fallback] do + save_pack(pack) + end + + :ok + end + end + end + + defp save_pack(pack), do: File.write(pack.pack_file, Jason.encode!(pack, pretty: true)) + + @spec save_metadata(map(), t()) :: {:ok, t()} | {:error, File.posix()} + def save_metadata(metadata, %__MODULE__{} = pack) do + pack = Map.put(pack, :pack, metadata) + + with :ok <- save_pack(pack) do + {:ok, pack} + end + end + + @spec update_metadata(String.t(), map()) :: {:ok, t()} | {:error, File.posix()} + def update_metadata(name, data) do + pack = load_pack(name) + + fb_sha_changed? = + not is_nil(data["fallback-src"]) and data["fallback-src"] != pack.pack["fallback-src"] + + with {_, true} <- {:update?, fb_sha_changed?}, + {:ok, %{body: zip}} <- Tesla.get(data["fallback-src"]), + {:ok, f_list} <- :zip.unzip(zip, [:memory]), + {_, true} <- {:has_all_files?, has_all_files?(pack.files, f_list)} do + fallback_sha = :crypto.hash(:sha256, zip) |> Base.encode16() + + data + |> Map.put("fallback-src-sha256", fallback_sha) + |> save_metadata(pack) + else + {:update?, _} -> save_metadata(data, pack) + e -> e + end + end + + # Check if all files from the pack.json are in the archive + defp has_all_files?(files, f_list) do + Enum.all?(files, fn {_, from_manifest} -> + List.keyfind(f_list, to_charlist(from_manifest), 0) + end) + end + + @spec load_pack(String.t()) :: t() | nil + def load_pack(name) do + pack_file = Path.join([emoji_path(), name, "pack.json"]) + + if File.exists?(pack_file) do + pack_file + |> File.read!() + |> from_json() + |> Map.put(:pack_file, pack_file) + |> Map.put(:path, Path.dirname(pack_file)) + |> Map.put(:name, name) + end + end + + defp from_json(json) do + map = Jason.decode!(json) + + struct(__MODULE__, %{files: map["files"], pack: map["pack"]}) + end + + defp shareable_packs_available?(uri) do + uri + |> URI.merge("/.well-known/nodeinfo") + |> to_string() + |> Tesla.get!() + |> Map.get(:body) + |> Jason.decode!() + |> Map.get("links") + |> List.last() + |> Map.get("href") + # Get the actual nodeinfo address and fetch it + |> Tesla.get!() + |> Map.get(:body) + |> Jason.decode!() + |> get_in(["metadata", "features"]) + |> Enum.member?("shareable_emoji_packs") + end +end diff --git a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex index 981bac4fa..9fa857474 100644 --- a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex @@ -1,18 +1,15 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIController do use Pleroma.Web, :controller - alias Pleroma.Plugs.ExpectPublicOrAuthenticatedCheckPlug - alias Pleroma.Plugs.OAuthScopesPlug - - require Logger + alias Pleroma.Emoji.Pack plug( - OAuthScopesPlug, + Pleroma.Plugs.OAuthScopesPlug, %{scopes: ["write"], admin: true} when action in [ :create, :delete, - :save_from, + :download_from, :import_from_fs, :update_file, :update_metadata @@ -21,17 +18,10 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIController do plug( :skip_plug, - [OAuthScopesPlug, ExpectPublicOrAuthenticatedCheckPlug] + [Pleroma.Plugs.OAuthScopesPlug, Pleroma.Plugs.ExpectPublicOrAuthenticatedCheckPlug] when action in [:download_shared, :list_packs, :list_from] ) - defp emoji_dir_path do - Path.join( - Pleroma.Config.get!([:instance, :static_dir]), - "emoji" - ) - end - @doc """ Lists packs from the remote instance. @@ -39,17 +29,13 @@ defp emoji_dir_path do be done by the server """ def list_from(conn, %{"instance_address" => address}) do - address = String.trim(address) - - if shareable_packs_available(address) do - list_resp = - "#{address}/api/pleroma/emoji/packs" |> Tesla.get!() |> Map.get(:body) |> Jason.decode!() - - json(conn, list_resp) + with {:ok, packs} <- Pack.list_remote_packs(address) do + json(conn, packs) else - conn - |> put_status(:internal_server_error) - |> json(%{error: "The requested instance does not support sharing emoji packs"}) + {:shareable, _} -> + conn + |> put_status(:internal_server_error) + |> json(%{error: "The requested instance does not support sharing emoji packs"}) end end @@ -60,113 +46,44 @@ def list_from(conn, %{"instance_address" => address}) do a map of "pack directory name" to pack.json contents. """ def list_packs(conn, _params) do - # Create the directory first if it does not exist. This is probably the first request made - # with the API so it should be sufficient - with {:create_dir, :ok} <- {:create_dir, File.mkdir_p(emoji_dir_path())}, - {:ls, {:ok, results}} <- {:ls, File.ls(emoji_dir_path())} do - pack_infos = - results - |> Enum.filter(&has_pack_json?/1) - |> Enum.map(&load_pack/1) - # Check if all the files are in place and can be sent - |> Enum.map(&validate_pack/1) - # Transform into a map of pack-name => pack-data - |> Enum.into(%{}) + emoji_path = + Path.join( + Pleroma.Config.get!([:instance, :static_dir]), + "emoji" + ) - json(conn, pack_infos) + with {:ok, packs} <- Pack.list_local_packs() do + json(conn, packs) else {:create_dir, {:error, e}} -> conn |> put_status(:internal_server_error) - |> json(%{error: "Failed to create the emoji pack directory at #{emoji_dir_path()}: #{e}"}) + |> json(%{error: "Failed to create the emoji pack directory at #{emoji_path}: #{e}"}) {:ls, {:error, e}} -> conn |> put_status(:internal_server_error) |> json(%{ - error: - "Failed to get the contents of the emoji pack directory at #{emoji_dir_path()}: #{e}" + error: "Failed to get the contents of the emoji pack directory at #{emoji_path}: #{e}" }) end end - defp has_pack_json?(file) do - dir_path = Path.join(emoji_dir_path(), file) - # Filter to only use the pack.json packs - File.dir?(dir_path) and File.exists?(Path.join(dir_path, "pack.json")) - end + def show(conn, %{"name" => name}) do + name = String.trim(name) - defp load_pack(pack_name) do - pack_path = Path.join(emoji_dir_path(), pack_name) - pack_file = Path.join(pack_path, "pack.json") - - {pack_name, Jason.decode!(File.read!(pack_file))} - end - - defp validate_pack({name, pack}) do - pack_path = Path.join(emoji_dir_path(), name) - - if can_download?(pack, pack_path) do - archive_for_sha = make_archive(name, pack, pack_path) - archive_sha = :crypto.hash(:sha256, archive_for_sha) |> Base.encode16() - - pack = - pack - |> put_in(["pack", "can-download"], true) - |> put_in(["pack", "download-sha256"], archive_sha) - - {name, pack} + with {:ok, pack} <- Pack.show(name) do + json(conn, pack) else - {name, put_in(pack, ["pack", "can-download"], false)} - end - end + {:loaded, _} -> + conn + |> put_status(:not_found) + |> json(%{error: "Pack #{name} does not exist"}) - defp can_download?(pack, pack_path) do - # If the pack is set as shared, check if it can be downloaded - # That means that when asked, the pack can be packed and sent to the remote - # Otherwise, they'd have to download it from external-src - pack["pack"]["share-files"] && - Enum.all?(pack["files"], fn {_, path} -> - File.exists?(Path.join(pack_path, path)) - end) - end - - defp create_archive_and_cache(name, pack, pack_dir, md5) do - files = - ['pack.json'] ++ - (pack["files"] |> Enum.map(fn {_, path} -> to_charlist(path) end)) - - {:ok, {_, zip_result}} = :zip.zip('#{name}.zip', files, [:memory, cwd: to_charlist(pack_dir)]) - - cache_seconds_per_file = Pleroma.Config.get!([:emoji, :shared_pack_cache_seconds_per_file]) - cache_ms = :timer.seconds(cache_seconds_per_file * Enum.count(files)) - - Cachex.put!( - :emoji_packs_cache, - name, - # if pack.json MD5 changes, the cache is not valid anymore - %{pack_json_md5: md5, pack_data: zip_result}, - # Add a minute to cache time for every file in the pack - ttl: cache_ms - ) - - Logger.debug("Created an archive for the '#{name}' emoji pack, \ -keeping it in cache for #{div(cache_ms, 1000)}s") - - zip_result - end - - defp make_archive(name, pack, pack_dir) do - # Having a different pack.json md5 invalidates cache - pack_file_md5 = :crypto.hash(:md5, File.read!(Path.join(pack_dir, "pack.json"))) - - case Cachex.get!(:emoji_packs_cache, name) do - %{pack_file_md5: ^pack_file_md5, pack_data: zip_result} -> - Logger.debug("Using cache for the '#{name}' shared emoji pack") - zip_result - - _ -> - create_archive_and_cache(name, pack, pack_dir, pack_file_md5) + {:error, :empty_values} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack name cannot be empty"}) end end @@ -175,21 +92,15 @@ defp make_archive(name, pack, pack_dir) do to download packs that the instance shares. """ def download_shared(conn, %{"name" => name}) do - pack_dir = Path.join(emoji_dir_path(), name) - pack_file = Path.join(pack_dir, "pack.json") - - with {_, true} <- {:exists?, File.exists?(pack_file)}, - pack = Jason.decode!(File.read!(pack_file)), - {_, true} <- {:can_download?, can_download?(pack, pack_dir)} do - zip_result = make_archive(name, pack, pack_dir) - send_download(conn, {:binary, zip_result}, filename: "#{name}.zip") + with {:ok, archive} <- Pack.download(name) do + send_download(conn, {:binary, archive}, filename: "#{name}.zip") else {:can_download?, _} -> conn |> put_status(:forbidden) |> json(%{ - error: "Pack #{name} cannot be downloaded from this instance, either pack sharing\ - was disabled for this pack or some files are missing" + error: + "Pack #{name} cannot be downloaded from this instance, either pack sharing was disabled for this pack or some files are missing" }) {:exists?, _} -> @@ -199,22 +110,6 @@ def download_shared(conn, %{"name" => name}) do end end - defp shareable_packs_available(address) do - "#{address}/.well-known/nodeinfo" - |> Tesla.get!() - |> Map.get(:body) - |> Jason.decode!() - |> Map.get("links") - |> List.last() - |> Map.get("href") - # Get the actual nodeinfo address and fetch it - |> Tesla.get!() - |> Map.get(:body) - |> Jason.decode!() - |> get_in(["metadata", "features"]) - |> Enum.member?("shareable_emoji_packs") - end - @doc """ An admin endpoint to request downloading and storing a pack named `pack_name` from the instance `instance_address`. @@ -222,74 +117,24 @@ defp shareable_packs_available(address) do If the requested instance's admin chose to share the pack, it will be downloaded from that instance, otherwise it will be downloaded from the fallback source, if there is one. """ - def save_from(conn, %{"instance_address" => address, "pack_name" => name} = data) do - address = String.trim(address) - - if shareable_packs_available(address) do - full_pack = - "#{address}/api/pleroma/emoji/packs/list" - |> Tesla.get!() - |> Map.get(:body) - |> Jason.decode!() - |> Map.get(name) - - pack_info_res = - case full_pack["pack"] do - %{"share-files" => true, "can-download" => true, "download-sha256" => sha} -> - {:ok, - %{ - sha: sha, - uri: "#{address}/api/pleroma/emoji/packs/download_shared/#{name}" - }} - - %{"fallback-src" => src, "fallback-src-sha256" => sha} when is_binary(src) -> - {:ok, - %{ - sha: sha, - uri: src, - fallback: true - }} - - _ -> - {:error, - "The pack was not set as shared and there is no fallback src to download from"} - end - - with {:ok, %{sha: sha, uri: uri} = pinfo} <- pack_info_res, - %{body: emoji_archive} <- Tesla.get!(uri), - {_, true} <- {:checksum, Base.decode16!(sha) == :crypto.hash(:sha256, emoji_archive)} do - local_name = data["as"] || name - pack_dir = Path.join(emoji_dir_path(), local_name) - File.mkdir_p!(pack_dir) - - files = Enum.map(full_pack["files"], fn {_, path} -> to_charlist(path) end) - # Fallback cannot contain a pack.json file - files = if pinfo[:fallback], do: files, else: ['pack.json'] ++ files - - {:ok, _} = :zip.unzip(emoji_archive, cwd: to_charlist(pack_dir), file_list: files) - - # Fallback can't contain a pack.json file, since that would cause the fallback-src-sha256 - # in it to depend on itself - if pinfo[:fallback] do - pack_file_path = Path.join(pack_dir, "pack.json") - - File.write!(pack_file_path, Jason.encode!(full_pack, pretty: true)) - end - - json(conn, "ok") - else - {:error, e} -> - conn |> put_status(:internal_server_error) |> json(%{error: e}) - - {:checksum, _} -> - conn - |> put_status(:internal_server_error) - |> json(%{error: "SHA256 for the pack doesn't match the one sent by the server"}) - end + def download_from(conn, %{"instance_address" => address, "pack_name" => name} = params) do + with :ok <- Pack.download_from_source(name, address, params["as"]) do + json(conn, "ok") else - conn - |> put_status(:internal_server_error) - |> json(%{error: "The requested instance does not support sharing emoji packs"}) + {:shareable, _} -> + conn + |> put_status(:internal_server_error) + |> json(%{error: "The requested instance does not support sharing emoji packs"}) + + {:checksum, _} -> + conn + |> put_status(:internal_server_error) + |> json(%{error: "SHA256 for the pack doesn't match the one sent by the server"}) + + {:error, e} -> + conn + |> put_status(:internal_server_error) + |> json(%{error: e}) end end @@ -297,23 +142,27 @@ def save_from(conn, %{"instance_address" => address, "pack_name" => name} = data Creates an empty pack named `name` which then can be updated via the admin UI. """ def create(conn, %{"name" => name}) do - pack_dir = Path.join(emoji_dir_path(), name) + name = String.trim(name) - if not File.exists?(pack_dir) do - File.mkdir_p!(pack_dir) - - pack_file_p = Path.join(pack_dir, "pack.json") - - File.write!( - pack_file_p, - Jason.encode!(%{pack: %{}, files: %{}}, pretty: true) - ) - - conn |> json("ok") + with :ok <- Pack.create(name) do + json(conn, "ok") else - conn - |> put_status(:conflict) - |> json(%{error: "A pack named \"#{name}\" already exists"}) + {:error, :eexist} -> + conn + |> put_status(:conflict) + |> json(%{error: "A pack named \"#{name}\" already exists"}) + + {:error, :empty_values} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack name cannot be empty"}) + + {:error, _} -> + render_error( + conn, + :internal_server_error, + "Unexpected error occurred while creating pack." + ) end end @@ -321,11 +170,20 @@ def create(conn, %{"name" => name}) do Deletes the pack `name` and all it's files. """ def delete(conn, %{"name" => name}) do - pack_dir = Path.join(emoji_dir_path(), name) + name = String.trim(name) - case File.rm_rf(pack_dir) do - {:ok, _} -> - conn |> json("ok") + with {:ok, deleted} when deleted != [] <- Pack.delete(name) do + json(conn, "ok") + else + {:ok, []} -> + conn + |> put_status(:not_found) + |> json(%{error: "Pack #{name} does not exist"}) + + {:error, :empty_values} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack name cannot be empty"}) {:error, _, _} -> conn @@ -340,82 +198,23 @@ def delete(conn, %{"name" => name}) do `new_data` is the new metadata for the pack, that will replace the old metadata. """ def update_metadata(conn, %{"pack_name" => name, "new_data" => new_data}) do - pack_file_p = Path.join([emoji_dir_path(), name, "pack.json"]) - - full_pack = Jason.decode!(File.read!(pack_file_p)) - - # The new fallback-src is in the new data and it's not the same as it was in the old data - should_update_fb_sha = - not is_nil(new_data["fallback-src"]) and - new_data["fallback-src"] != full_pack["pack"]["fallback-src"] - - with {_, true} <- {:should_update?, should_update_fb_sha}, - %{body: pack_arch} <- Tesla.get!(new_data["fallback-src"]), - {:ok, flist} <- :zip.unzip(pack_arch, [:memory]), - {_, true} <- {:has_all_files?, has_all_files?(full_pack, flist)} do - fallback_sha = :crypto.hash(:sha256, pack_arch) |> Base.encode16() - - new_data = Map.put(new_data, "fallback-src-sha256", fallback_sha) - update_metadata_and_send(conn, full_pack, new_data, pack_file_p) + with {:ok, pack} <- Pack.update_metadata(name, new_data) do + json(conn, pack.pack) else - {:should_update?, _} -> - update_metadata_and_send(conn, full_pack, new_data, pack_file_p) - {:has_all_files?, _} -> conn |> put_status(:bad_request) |> json(%{error: "The fallback archive does not have all files specified in pack.json"}) + + {:error, _} -> + render_error( + conn, + :internal_server_error, + "Unexpected error occurred while updating pack metadata." + ) end end - # Check if all files from the pack.json are in the archive - defp has_all_files?(%{"files" => files}, flist) do - Enum.all?(files, fn {_, from_manifest} -> - Enum.find(flist, fn {from_archive, _} -> - to_string(from_archive) == from_manifest - end) - end) - end - - defp update_metadata_and_send(conn, full_pack, new_data, pack_file_p) do - full_pack = Map.put(full_pack, "pack", new_data) - File.write!(pack_file_p, Jason.encode!(full_pack, pretty: true)) - - # Send new data back with fallback sha filled - json(conn, new_data) - end - - defp get_filename(%Plug.Upload{filename: filename}), do: filename - defp get_filename(url) when is_binary(url), do: Path.basename(url) - - defp empty?(str), do: String.trim(str) == "" - - defp update_pack_file(updated_full_pack, pack_file_p) do - content = Jason.encode!(updated_full_pack, pretty: true) - - File.write!(pack_file_p, content) - end - - defp create_subdirs(file_path) do - if String.contains?(file_path, "/") do - file_path - |> Path.dirname() - |> File.mkdir_p!() - end - end - - defp pack_info(pack_name) do - dir = Path.join(emoji_dir_path(), pack_name) - json_path = Path.join(dir, "pack.json") - - json = - json_path - |> File.read!() - |> Jason.decode!() - - {dir, json_path, json} - end - @doc """ Updates a file in a pack. @@ -436,50 +235,33 @@ def update_file( conn, %{"pack_name" => pack_name, "action" => "add"} = params ) do - shortcode = - if params["shortcode"] do - params["shortcode"] - else - filename = get_filename(params["file"]) - Path.basename(filename, Path.extname(filename)) - end + filename = params["filename"] || get_filename(params["file"]) + shortcode = params["shortcode"] || Path.basename(filename, Path.extname(filename)) - {pack_dir, pack_file_p, full_pack} = pack_info(pack_name) - - with {_, false} <- {:has_shortcode, Map.has_key?(full_pack["files"], shortcode)}, - filename <- params["filename"] || get_filename(params["file"]), - false <- empty?(shortcode), - false <- empty?(filename), - file_path <- Path.join(pack_dir, filename) do - # If the name contains directories, create them - create_subdirs(file_path) - - case params["file"] do - %Plug.Upload{path: upload_path} -> - # Copy the uploaded file from the temporary directory - File.copy!(upload_path, file_path) - - url when is_binary(url) -> - # Download and write the file - file_contents = Tesla.get!(url).body - File.write!(file_path, file_contents) - end - - full_pack - |> put_in(["files", shortcode], filename) - |> update_pack_file(pack_file_p) - - json(conn, %{shortcode => filename}) + with {:ok, pack} <- Pack.add_file(pack_name, shortcode, filename, params["file"]) do + json(conn, pack.files) else - {:has_shortcode, _} -> + {:exists, _} -> conn |> put_status(:conflict) |> json(%{error: "An emoji with the \"#{shortcode}\" shortcode already exists"}) - true -> + {:loaded, _} -> conn |> put_status(:bad_request) - |> json(%{error: "shortcode or filename cannot be empty"}) + |> json(%{error: "pack \"#{pack_name}\" is not found"}) + + {:error, :empty_values} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack name, shortcode or filename cannot be empty"}) + + {:error, _} -> + render_error( + conn, + :internal_server_error, + "Unexpected error occurred while adding file to pack." + ) end end @@ -489,87 +271,74 @@ def update_file(conn, %{ "action" => "remove", "shortcode" => shortcode }) do - {pack_dir, pack_file_p, full_pack} = pack_info(pack_name) - - if Map.has_key?(full_pack["files"], shortcode) do - {emoji_file_path, updated_full_pack} = pop_in(full_pack, ["files", shortcode]) - - emoji_file_path = Path.join(pack_dir, emoji_file_path) - - # Delete the emoji file - File.rm!(emoji_file_path) - - # If the old directory has no more files, remove it - if String.contains?(emoji_file_path, "/") do - dir = Path.dirname(emoji_file_path) - - if Enum.empty?(File.ls!(dir)) do - File.rmdir!(dir) - end - end - - update_pack_file(updated_full_pack, pack_file_p) - json(conn, %{shortcode => full_pack["files"][shortcode]}) + with {:ok, pack} <- Pack.remove_file(pack_name, shortcode) do + json(conn, pack.files) else - conn - |> put_status(:bad_request) - |> json(%{error: "Emoji \"#{shortcode}\" does not exist"}) + {:exists, _} -> + conn + |> put_status(:bad_request) + |> json(%{error: "Emoji \"#{shortcode}\" does not exist"}) + + {:loaded, _} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack \"#{pack_name}\" is not found"}) + + {:error, :empty_values} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack name or shortcode cannot be empty"}) + + {:error, _} -> + render_error( + conn, + :internal_server_error, + "Unexpected error occurred while removing file from pack." + ) end end # Update def update_file( conn, - %{"pack_name" => pack_name, "action" => "update", "shortcode" => shortcode} = params + %{"pack_name" => name, "action" => "update", "shortcode" => shortcode} = params ) do - {pack_dir, pack_file_p, full_pack} = pack_info(pack_name) + new_shortcode = params["new_shortcode"] + new_filename = params["new_filename"] + force = params["force"] == true - with {_, true} <- {:has_shortcode, Map.has_key?(full_pack["files"], shortcode)}, - %{"new_shortcode" => new_shortcode, "new_filename" => new_filename} <- params, - false <- empty?(new_shortcode), - false <- empty?(new_filename) do - # First, remove the old shortcode, saving the old path - {old_emoji_file_path, updated_full_pack} = pop_in(full_pack, ["files", shortcode]) - old_emoji_file_path = Path.join(pack_dir, old_emoji_file_path) - new_emoji_file_path = Path.join(pack_dir, new_filename) - - # If the name contains directories, create them - create_subdirs(new_emoji_file_path) - - # Move/Rename the old filename to a new filename - # These are probably on the same filesystem, so just rename should work - :ok = File.rename(old_emoji_file_path, new_emoji_file_path) - - # If the old directory has no more files, remove it - if String.contains?(old_emoji_file_path, "/") do - dir = Path.dirname(old_emoji_file_path) - - if Enum.empty?(File.ls!(dir)) do - File.rmdir!(dir) - end - end - - # Then, put in the new shortcode with the new path - updated_full_pack - |> put_in(["files", new_shortcode], new_filename) - |> update_pack_file(pack_file_p) - - json(conn, %{new_shortcode => new_filename}) + with {:ok, pack} <- Pack.update_file(name, shortcode, new_shortcode, new_filename, force) do + json(conn, pack.files) else - {:has_shortcode, _} -> + {:exists, _} -> conn |> put_status(:bad_request) |> json(%{error: "Emoji \"#{shortcode}\" does not exist"}) - true -> + {:not_used, _} -> + conn + |> put_status(:conflict) + |> json(%{ + error: + "New shortcode \"#{new_shortcode}\" is already used. If you want to override emoji use 'force' option" + }) + + {:loaded, _} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack \"#{name}\" is not found"}) + + {:error, :empty_values} -> conn |> put_status(:bad_request) |> json(%{error: "new_shortcode or new_filename cannot be empty"}) - _ -> - conn - |> put_status(:bad_request) - |> json(%{error: "new_shortcode or new_file were not specified"}) + {:error, _} -> + render_error( + conn, + :internal_server_error, + "Unexpected error occurred while updating file in pack." + ) end end @@ -589,23 +358,12 @@ def update_file(conn, %{"action" => action}) do neither, all the files with specific configured extenstions will be assumed to be emojis and stored in the new `pack.json` file. """ + def import_from_fs(conn, _params) do - emoji_path = emoji_dir_path() - - with {:ok, %{access: :read_write}} <- File.stat(emoji_path), - {:ok, results} <- File.ls(emoji_path) do - imported_pack_names = - results - |> Enum.filter(fn file -> - dir_path = Path.join(emoji_path, file) - # Find the directories that do NOT have pack.json - File.dir?(dir_path) and not File.exists?(Path.join(dir_path, "pack.json")) - end) - |> Enum.map(&write_pack_json_contents/1) - - json(conn, imported_pack_names) + with {:ok, names} <- Pack.import_from_filesystem() do + json(conn, names) else - {:ok, %{access: _}} -> + {:error, :not_writable} -> conn |> put_status(:internal_server_error) |> json(%{error: "Error: emoji pack directory must be writable"}) @@ -617,44 +375,6 @@ def import_from_fs(conn, _params) do end end - defp write_pack_json_contents(dir) do - dir_path = Path.join(emoji_dir_path(), dir) - emoji_txt_path = Path.join(dir_path, "emoji.txt") - - files_for_pack = files_for_pack(emoji_txt_path, dir_path) - pack_json_contents = Jason.encode!(%{pack: %{}, files: files_for_pack}) - - File.write!(Path.join(dir_path, "pack.json"), pack_json_contents) - - dir - end - - defp files_for_pack(emoji_txt_path, dir_path) do - if File.exists?(emoji_txt_path) do - # There's an emoji.txt file, it's likely from a pack installed by the pack manager. - # Make a pack.json file from the contents of that emoji.txt fileh - - # FIXME: Copy-pasted from Pleroma.Emoji/load_from_file_stream/2 - - # Create a map of shortcodes to filenames from emoji.txt - File.read!(emoji_txt_path) - |> String.split("\n") - |> Enum.map(&String.trim/1) - |> Enum.map(fn line -> - case String.split(line, ~r/,\s*/) do - # This matches both strings with and without tags - # and we don't care about tags here - [name, file | _] -> {name, file} - _ -> nil - end - end) - |> Enum.filter(fn x -> not is_nil(x) end) - |> Enum.into(%{}) - else - # If there's no emoji.txt, assume all files - # that are of certain extensions from the config are emojis and import them all - pack_extensions = Pleroma.Config.get!([:emoji, :pack_extensions]) - Pleroma.Emoji.Loader.make_shortcode_to_file_map(dir_path, pack_extensions) - end - end + defp get_filename(%Plug.Upload{filename: filename}), do: filename + defp get_filename(url) when is_binary(url), do: Path.basename(url) end diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index becce3098..0fcb517cf 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -221,12 +221,13 @@ defmodule Pleroma.Web.Router do delete("/:name", EmojiAPIController, :delete) # Note: /download_from downloads and saves to instance, not to requester - post("/download_from", EmojiAPIController, :save_from) + post("/download_from", EmojiAPIController, :download_from) end # Pack info / downloading scope "/packs" do get("/", EmojiAPIController, :list_packs) + get("/:name", EmojiAPIController, :show) get("/:name/download_shared/", EmojiAPIController, :download_shared) get("/list_from", EmojiAPIController, :list_from) diff --git a/test/instance_static/emoji/pack_bad_sha/blank.png b/test/instance_static/emoji/pack_bad_sha/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..8f50fa02340e7e09e562f86e00b6e4bd6ad1d565 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^4Is=2Bp6=1#-sr$rjj7PU7++V2?-CrektH&y2Pt+hC@XnZuhYzjGD_PDeO;RYuj`( zUAMu8(_j4f1g>LGSdR&<=@xdWn#IJs;|^bzfkATSK6P%elQ2Vo rHzSiAGcLzT0G$W{OBz8ml2chBPDOKOfHx}}NFgH-`UC0NAPxfnZrnv? literal 0 HcmV?d00001 diff --git a/test/instance_static/emoji/test_pack/pack.json b/test/instance_static/emoji/test_pack/pack.json index 5a8ee75f9..481891b08 100644 --- a/test/instance_static/emoji/test_pack/pack.json +++ b/test/instance_static/emoji/test_pack/pack.json @@ -1,13 +1,11 @@ { - "pack": { - "license": "Test license", - "homepage": "https://pleroma.social", - "description": "Test description", - - "share-files": true - }, - "files": { "blank": "blank.png" + }, + "pack": { + "description": "Test description", + "homepage": "https://pleroma.social", + "license": "Test license", + "share-files": true } -} +} \ No newline at end of file diff --git a/test/instance_static/emoji/test_pack_nonshared/pack.json b/test/instance_static/emoji/test_pack_nonshared/pack.json index b96781f81..93d643a5f 100644 --- a/test/instance_static/emoji/test_pack_nonshared/pack.json +++ b/test/instance_static/emoji/test_pack_nonshared/pack.json @@ -3,14 +3,11 @@ "license": "Test license", "homepage": "https://pleroma.social", "description": "Test description", - "fallback-src": "https://nonshared-pack", "fallback-src-sha256": "74409E2674DAA06C072729C6C8426C4CB3B7E0B85ED77792DB7A436E11D76DAF", - "share-files": false }, - "files": { "blank": "blank.png" } -} +} \ No newline at end of file diff --git a/test/web/pleroma_api/controllers/emoji_api_controller_test.exs b/test/web/pleroma_api/controllers/emoji_api_controller_test.exs index 6844601d7..6a0d7dd11 100644 --- a/test/web/pleroma_api/controllers/emoji_api_controller_test.exs +++ b/test/web/pleroma_api/controllers/emoji_api_controller_test.exs @@ -8,212 +8,309 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIControllerTest do import Tesla.Mock import Pleroma.Factory - @emoji_dir_path Path.join( - Pleroma.Config.get!([:instance, :static_dir]), - "emoji" - ) + @emoji_path Path.join( + Pleroma.Config.get!([:instance, :static_dir]), + "emoji" + ) setup do: clear_config([:auth, :enforce_oauth_admin_scope_usage], false) - test "shared & non-shared pack information in list_packs is ok" do - conn = build_conn() - resp = conn |> get(emoji_api_path(conn, :list_packs)) |> json_response(200) - - assert Map.has_key?(resp, "test_pack") - - pack = resp["test_pack"] - - assert Map.has_key?(pack["pack"], "download-sha256") - assert pack["pack"]["can-download"] - - assert pack["files"] == %{"blank" => "blank.png"} - - # Non-shared pack - - assert Map.has_key?(resp, "test_pack_nonshared") - - pack = resp["test_pack_nonshared"] - - refute pack["pack"]["shared"] - refute pack["pack"]["can-download"] - end - - test "listing remote packs" do - conn = build_conn() - - resp = - build_conn() - |> get(emoji_api_path(conn, :list_packs)) - |> json_response(200) - - mock(fn - %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> - json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) - - %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> - json(%{metadata: %{features: ["shareable_emoji_packs"]}}) - - %{method: :get, url: "https://example.com/api/pleroma/emoji/packs"} -> - json(resp) - end) - - assert conn - |> post(emoji_api_path(conn, :list_from), %{instance_address: "https://example.com"}) - |> json_response(200) == resp - end - - test "downloading a shared pack from download_shared" do - conn = build_conn() - - resp = - conn - |> get(emoji_api_path(conn, :download_shared, "test_pack")) - |> response(200) - - {:ok, arch} = :zip.unzip(resp, [:memory]) - - assert Enum.find(arch, fn {n, _} -> n == 'pack.json' end) - assert Enum.find(arch, fn {n, _} -> n == 'blank.png' end) - end - - test "downloading shared & unshared packs from another instance, deleting them" do - on_exit(fn -> - File.rm_rf!("#{@emoji_dir_path}/test_pack2") - File.rm_rf!("#{@emoji_dir_path}/test_pack_nonshared2") - end) - - mock(fn - %{method: :get, url: "https://old-instance/.well-known/nodeinfo"} -> - json(%{links: [%{href: "https://old-instance/nodeinfo/2.1.json"}]}) - - %{method: :get, url: "https://old-instance/nodeinfo/2.1.json"} -> - json(%{metadata: %{features: []}}) - - %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> - json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) - - %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> - json(%{metadata: %{features: ["shareable_emoji_packs"]}}) - - %{ - method: :get, - url: "https://example.com/api/pleroma/emoji/packs/list" - } -> - conn = build_conn() - - conn - |> get(emoji_api_path(conn, :list_packs)) - |> json_response(200) - |> json() - - %{ - method: :get, - url: "https://example.com/api/pleroma/emoji/packs/download_shared/test_pack" - } -> - conn = build_conn() - - conn - |> get(emoji_api_path(conn, :download_shared, "test_pack")) - |> response(200) - |> text() - - %{ - method: :get, - url: "https://nonshared-pack" - } -> - text(File.read!("#{@emoji_dir_path}/test_pack_nonshared/nonshared.zip")) - end) - + setup do admin = insert(:user, is_admin: true) + token = insert(:oauth_admin_token, user: admin) - conn = + admin_conn = build_conn() |> assign(:user, admin) - |> assign(:token, insert(:oauth_admin_token, user: admin, scopes: ["admin:write"])) + |> assign(:token, token) - assert (conn - |> put_req_header("content-type", "application/json") - |> post( - emoji_api_path( - conn, - :save_from - ), - %{ - instance_address: "https://old-instance", - pack_name: "test_pack", - as: "test_pack2" - } - |> Jason.encode!() - ) - |> json_response(500))["error"] =~ "does not support" + Pleroma.Emoji.reload() + {:ok, %{admin_conn: admin_conn}} + end - assert conn - |> put_req_header("content-type", "application/json") - |> post( - emoji_api_path( - conn, - :save_from - ), - %{ + test "GET /api/pleroma/emoji/packs", %{conn: conn} do + resp = conn |> get("/api/pleroma/emoji/packs") |> json_response(200) + + shared = resp["test_pack"] + assert shared["files"] == %{"blank" => "blank.png"} + assert Map.has_key?(shared["pack"], "download-sha256") + assert shared["pack"]["can-download"] + assert shared["pack"]["share-files"] + + non_shared = resp["test_pack_nonshared"] + assert non_shared["pack"]["share-files"] == false + assert non_shared["pack"]["can-download"] == false + end + + describe "POST /api/pleroma/emoji/packs/list_from" do + test "shareable instance", %{admin_conn: admin_conn, conn: conn} do + resp = + conn + |> get("/api/pleroma/emoji/packs") + |> json_response(200) + + mock(fn + %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> + json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) + + %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> + json(%{metadata: %{features: ["shareable_emoji_packs"]}}) + + %{method: :get, url: "https://example.com/api/pleroma/emoji/packs"} -> + json(resp) + end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/list_from", %{ + instance_address: "https://example.com" + }) + |> json_response(200) == resp + end + + test "non shareable instance", %{admin_conn: admin_conn} do + mock(fn + %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> + json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) + + %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> + json(%{metadata: %{features: []}}) + end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/list_from", %{ + instance_address: "https://example.com" + }) + |> json_response(500) == %{ + "error" => "The requested instance does not support sharing emoji packs" + } + end + end + + describe "GET /api/pleroma/emoji/packs/:name/download_shared" do + test "download shared pack", %{conn: conn} do + resp = + conn + |> get("/api/pleroma/emoji/packs/test_pack/download_shared") + |> response(200) + + {:ok, arch} = :zip.unzip(resp, [:memory]) + + assert Enum.find(arch, fn {n, _} -> n == 'pack.json' end) + assert Enum.find(arch, fn {n, _} -> n == 'blank.png' end) + end + + test "non existing pack", %{conn: conn} do + assert conn + |> get("/api/pleroma/emoji/packs/test_pack_for_import/download_shared") + |> json_response(:not_found) == %{ + "error" => "Pack test_pack_for_import does not exist" + } + end + + test "non downloadable pack", %{conn: conn} do + assert conn + |> get("/api/pleroma/emoji/packs/test_pack_nonshared/download_shared") + |> json_response(:forbidden) == %{ + "error" => + "Pack test_pack_nonshared cannot be downloaded from this instance, either pack sharing was disabled for this pack or some files are missing" + } + end + end + + describe "POST /api/pleroma/emoji/packs/download_from" do + test "shared pack from remote and non shared from fallback-src", %{ + admin_conn: admin_conn, + conn: conn + } do + mock(fn + %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> + json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) + + %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> + json(%{metadata: %{features: ["shareable_emoji_packs"]}}) + + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/test_pack" + } -> + conn + |> get("/api/pleroma/emoji/packs/test_pack") + |> json_response(200) + |> json() + + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/test_pack/download_shared" + } -> + conn + |> get("/api/pleroma/emoji/packs/test_pack/download_shared") + |> response(200) + |> text() + + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/test_pack_nonshared" + } -> + conn + |> get("/api/pleroma/emoji/packs/test_pack_nonshared") + |> json_response(200) + |> json() + + %{ + method: :get, + url: "https://nonshared-pack" + } -> + text(File.read!("#{@emoji_path}/test_pack_nonshared/nonshared.zip")) + end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/download_from", %{ instance_address: "https://example.com", pack_name: "test_pack", as: "test_pack2" + }) + |> json_response(200) == "ok" + + assert File.exists?("#{@emoji_path}/test_pack2/pack.json") + assert File.exists?("#{@emoji_path}/test_pack2/blank.png") + + assert admin_conn + |> delete("/api/pleroma/emoji/packs/test_pack2") + |> json_response(200) == "ok" + + refute File.exists?("#{@emoji_path}/test_pack2") + + assert admin_conn + |> post( + "/api/pleroma/emoji/packs/download_from", + %{ + instance_address: "https://example.com", + pack_name: "test_pack_nonshared", + as: "test_pack_nonshared2" + } + ) + |> json_response(200) == "ok" + + assert File.exists?("#{@emoji_path}/test_pack_nonshared2/pack.json") + assert File.exists?("#{@emoji_path}/test_pack_nonshared2/blank.png") + + assert admin_conn + |> delete("/api/pleroma/emoji/packs/test_pack_nonshared2") + |> json_response(200) == "ok" + + refute File.exists?("#{@emoji_path}/test_pack_nonshared2") + end + + test "nonshareable instance", %{admin_conn: admin_conn} do + mock(fn + %{method: :get, url: "https://old-instance/.well-known/nodeinfo"} -> + json(%{links: [%{href: "https://old-instance/nodeinfo/2.1.json"}]}) + + %{method: :get, url: "https://old-instance/nodeinfo/2.1.json"} -> + json(%{metadata: %{features: []}}) + end) + + assert admin_conn + |> post( + "/api/pleroma/emoji/packs/download_from", + %{ + instance_address: "https://old-instance", + pack_name: "test_pack", + as: "test_pack2" + } + ) + |> json_response(500) == %{ + "error" => "The requested instance does not support sharing emoji packs" } - |> Jason.encode!() - ) - |> json_response(200) == "ok" + end - assert File.exists?("#{@emoji_dir_path}/test_pack2/pack.json") - assert File.exists?("#{@emoji_dir_path}/test_pack2/blank.png") + test "checksum fail", %{admin_conn: admin_conn} do + mock(fn + %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> + json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) - assert conn - |> delete(emoji_api_path(conn, :delete, "test_pack2")) - |> json_response(200) == "ok" + %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> + json(%{metadata: %{features: ["shareable_emoji_packs"]}}) - refute File.exists?("#{@emoji_dir_path}/test_pack2") + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/pack_bad_sha" + } -> + %Tesla.Env{ + status: 200, + body: Pleroma.Emoji.Pack.load_pack("pack_bad_sha") |> Jason.encode!() + } - # non-shared, downloaded from the fallback URL + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/pack_bad_sha/download_shared" + } -> + %Tesla.Env{ + status: 200, + body: File.read!("test/instance_static/emoji/pack_bad_sha/pack_bad_sha.zip") + } + end) - assert conn - |> put_req_header("content-type", "application/json") - |> post( - emoji_api_path( - conn, - :save_from - ), - %{ + assert admin_conn + |> post("/api/pleroma/emoji/packs/download_from", %{ instance_address: "https://example.com", - pack_name: "test_pack_nonshared", - as: "test_pack_nonshared2" + pack_name: "pack_bad_sha", + as: "pack_bad_sha2" + }) + |> json_response(:internal_server_error) == %{ + "error" => "SHA256 for the pack doesn't match the one sent by the server" } - |> Jason.encode!() - ) - |> json_response(200) == "ok" + end - assert File.exists?("#{@emoji_dir_path}/test_pack_nonshared2/pack.json") - assert File.exists?("#{@emoji_dir_path}/test_pack_nonshared2/blank.png") + test "other error", %{admin_conn: admin_conn} do + mock(fn + %{method: :get, url: "https://example.com/.well-known/nodeinfo"} -> + json(%{links: [%{href: "https://example.com/nodeinfo/2.1.json"}]}) - assert conn - |> delete(emoji_api_path(conn, :delete, "test_pack_nonshared2")) - |> json_response(200) == "ok" + %{method: :get, url: "https://example.com/nodeinfo/2.1.json"} -> + json(%{metadata: %{features: ["shareable_emoji_packs"]}}) - refute File.exists?("#{@emoji_dir_path}/test_pack_nonshared2") + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/test_pack" + } -> + %Tesla.Env{ + status: 200, + body: %{"test_pack" => Pleroma.Emoji.Pack.load_pack("test_pack")} |> Jason.encode!() + } + + %{ + method: :get, + url: "https://example.com/api/pleroma/emoji/packs/test_pack/download_shared" + } -> + %Tesla.Env{ + status: 200, + body: File.read!("test/instance_static/emoji/test_pack/pack.json") + } + end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/download_from", %{ + instance_address: "https://example.com", + pack_name: "test_pack", + as: "test_pack2" + }) + |> json_response(:internal_server_error) == %{ + "error" => + "The pack was not set as shared and there is no fallback src to download from" + } + end end describe "updating pack metadata" do setup do - pack_file = "#{@emoji_dir_path}/test_pack/pack.json" + pack_file = "#{@emoji_path}/test_pack/pack.json" original_content = File.read!(pack_file) on_exit(fn -> File.write!(pack_file, original_content) end) - admin = insert(:user, is_admin: true) - %{conn: conn} = oauth_access(["admin:write"], user: admin) - {:ok, - admin: admin, - conn: conn, pack_file: pack_file, new_data: %{ "license" => "Test license changed", @@ -224,11 +321,9 @@ test "downloading shared & unshared packs from another instance, deleting them" end test "for a pack without a fallback source", ctx do - conn = ctx[:conn] - - assert conn + assert ctx[:admin_conn] |> post( - emoji_api_path(conn, :update_metadata, "test_pack"), + "/api/pleroma/emoji/packs/test_pack/update_metadata", %{ "new_data" => ctx[:new_data] } @@ -244,7 +339,7 @@ test "for a pack with a fallback source", ctx do method: :get, url: "https://nonshared-pack" } -> - text(File.read!("#{@emoji_dir_path}/test_pack_nonshared/nonshared.zip")) + text(File.read!("#{@emoji_path}/test_pack_nonshared/nonshared.zip")) end) new_data = Map.put(ctx[:new_data], "fallback-src", "https://nonshared-pack") @@ -256,11 +351,9 @@ test "for a pack with a fallback source", ctx do "74409E2674DAA06C072729C6C8426C4CB3B7E0B85ED77792DB7A436E11D76DAF" ) - conn = ctx[:conn] - - assert conn + assert ctx[:admin_conn] |> post( - emoji_api_path(conn, :update_metadata, "test_pack"), + "/api/pleroma/emoji/packs/test_pack/update_metadata", %{ "new_data" => new_data } @@ -282,37 +375,241 @@ test "when the fallback source doesn't have all the files", ctx do new_data = Map.put(ctx[:new_data], "fallback-src", "https://nonshared-pack") - conn = ctx[:conn] - - assert (conn - |> post( - emoji_api_path(conn, :update_metadata, "test_pack"), - %{ - "new_data" => new_data - } - ) - |> json_response(:bad_request))["error"] =~ "does not have all" + assert ctx[:admin_conn] + |> post( + "/api/pleroma/emoji/packs/test_pack/update_metadata", + %{ + "new_data" => new_data + } + ) + |> json_response(:bad_request) == %{ + "error" => "The fallback archive does not have all files specified in pack.json" + } end end - describe "update_file/2" do + describe "POST /api/pleroma/emoji/packs/:pack_name/update_file" do setup do - pack_file = "#{@emoji_dir_path}/test_pack/pack.json" + pack_file = "#{@emoji_path}/test_pack/pack.json" original_content = File.read!(pack_file) on_exit(fn -> File.write!(pack_file, original_content) end) - admin = insert(:user, is_admin: true) - %{conn: conn} = oauth_access(["admin:write"], user: admin) - {:ok, conn: conn} + :ok end - test "update file without shortcode", %{conn: conn} do - on_exit(fn -> File.rm_rf!("#{@emoji_dir_path}/test_pack/shortcode.png") end) + test "create shortcode exists", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "shortcode" => "blank", + "filename" => "dir/blank.png", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_path}/test_pack/blank.png" + } + }) + |> json_response(:conflict) == %{ + "error" => "An emoji with the \"blank\" shortcode already exists" + } + end - assert conn + test "don't rewrite old emoji", %{admin_conn: admin_conn} do + on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/dir/") end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "shortcode" => "blank2", + "filename" => "dir/blank.png", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_path}/test_pack/blank.png" + } + }) + |> json_response(200) == %{"blank" => "blank.png", "blank2" => "dir/blank.png"} + + assert File.exists?("#{@emoji_path}/test_pack/dir/blank.png") + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "update", + "shortcode" => "blank", + "new_shortcode" => "blank2", + "new_filename" => "dir_2/blank_3.png" + }) + |> json_response(:conflict) == %{ + "error" => + "New shortcode \"blank2\" is already used. If you want to override emoji use 'force' option" + } + end + + test "rewrite old emoji with force option", %{admin_conn: admin_conn} do + on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/dir_2/") end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "shortcode" => "blank2", + "filename" => "dir/blank.png", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_path}/test_pack/blank.png" + } + }) + |> json_response(200) == %{"blank" => "blank.png", "blank2" => "dir/blank.png"} + + assert File.exists?("#{@emoji_path}/test_pack/dir/blank.png") + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "update", + "shortcode" => "blank2", + "new_shortcode" => "blank3", + "new_filename" => "dir_2/blank_3.png", + "force" => true + }) + |> json_response(200) == %{ + "blank" => "blank.png", + "blank3" => "dir_2/blank_3.png" + } + + assert File.exists?("#{@emoji_path}/test_pack/dir_2/blank_3.png") + end + + test "with empty filename", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "shortcode" => "blank2", + "filename" => "", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_path}/test_pack/blank.png" + } + }) + |> json_response(:bad_request) == %{ + "error" => "pack name, shortcode or filename cannot be empty" + } + end + + test "add file with not loaded pack", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ + "action" => "add", + "shortcode" => "blank2", + "filename" => "dir/blank.png", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_path}/test_pack/blank.png" + } + }) + |> json_response(:bad_request) == %{ + "error" => "pack \"not_loaded\" is not found" + } + end + + test "remove file with not loaded pack", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ + "action" => "remove", + "shortcode" => "blank3" + }) + |> json_response(:bad_request) == %{"error" => "pack \"not_loaded\" is not found"} + end + + test "remove file with empty shortcode", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ + "action" => "remove", + "shortcode" => "" + }) + |> json_response(:bad_request) == %{ + "error" => "pack name or shortcode cannot be empty" + } + end + + test "update file with not loaded pack", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ + "action" => "update", + "shortcode" => "blank4", + "new_shortcode" => "blank3", + "new_filename" => "dir_2/blank_3.png" + }) + |> json_response(:bad_request) == %{"error" => "pack \"not_loaded\" is not found"} + end + + test "new with shortcode as file with update", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "shortcode" => "blank4", + "filename" => "dir/blank.png", + "file" => %Plug.Upload{ + filename: "blank.png", + path: "#{@emoji_path}/test_pack/blank.png" + } + }) + |> json_response(200) == %{"blank" => "blank.png", "blank4" => "dir/blank.png"} + + assert File.exists?("#{@emoji_path}/test_pack/dir/blank.png") + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "update", + "shortcode" => "blank4", + "new_shortcode" => "blank3", + "new_filename" => "dir_2/blank_3.png" + }) + |> json_response(200) == %{"blank3" => "dir_2/blank_3.png", "blank" => "blank.png"} + + refute File.exists?("#{@emoji_path}/test_pack/dir/") + assert File.exists?("#{@emoji_path}/test_pack/dir_2/blank_3.png") + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "remove", + "shortcode" => "blank3" + }) + |> json_response(200) == %{"blank" => "blank.png"} + + refute File.exists?("#{@emoji_path}/test_pack/dir_2/") + + on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/dir") end) + end + + test "new with shortcode from url", %{admin_conn: admin_conn} do + mock(fn + %{ + method: :get, + url: "https://test-blank/blank_url.png" + } -> + text(File.read!("#{@emoji_path}/test_pack/blank.png")) + end) + + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "add", + "shortcode" => "blank_url", + "file" => "https://test-blank/blank_url.png" + }) + |> json_response(200) == %{ + "blank_url" => "blank_url.png", + "blank" => "blank.png" + } + + assert File.exists?("#{@emoji_path}/test_pack/blank_url.png") + + on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/blank_url.png") end) + end + + test "new without shortcode", %{admin_conn: admin_conn} do + on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/shortcode.png") end) + + assert admin_conn |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ "action" => "add", "file" => %Plug.Upload{ @@ -320,163 +617,176 @@ test "update file without shortcode", %{conn: conn} do path: "#{Pleroma.Config.get([:instance, :static_dir])}/add/shortcode.png" } }) - |> json_response(200) == %{"shortcode" => "shortcode.png"} + |> json_response(200) == %{"shortcode" => "shortcode.png", "blank" => "blank.png"} end - test "updating pack files", %{conn: conn} do - on_exit(fn -> - File.rm_rf!("#{@emoji_dir_path}/test_pack/blank_url.png") - File.rm_rf!("#{@emoji_dir_path}/test_pack/dir") - File.rm_rf!("#{@emoji_dir_path}/test_pack/dir_2") - end) + test "remove non existing shortcode in pack.json", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "remove", + "shortcode" => "blank2" + }) + |> json_response(:bad_request) == %{"error" => "Emoji \"blank2\" does not exist"} + end - same_name = %{ - "action" => "add", - "shortcode" => "blank", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ - filename: "blank.png", - path: "#{@emoji_dir_path}/test_pack/blank.png" - } - } - - different_name = %{same_name | "shortcode" => "blank_2"} - - assert (conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), same_name) - |> json_response(:conflict))["error"] =~ "already exists" - - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), different_name) - |> json_response(200) == %{"blank_2" => "dir/blank.png"} - - assert File.exists?("#{@emoji_dir_path}/test_pack/dir/blank.png") - - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ + test "update non existing emoji", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ "action" => "update", - "shortcode" => "blank_2", - "new_shortcode" => "blank_3", + "shortcode" => "blank2", + "new_shortcode" => "blank3", "new_filename" => "dir_2/blank_3.png" }) - |> json_response(200) == %{"blank_3" => "dir_2/blank_3.png"} + |> json_response(:bad_request) == %{"error" => "Emoji \"blank2\" does not exist"} + end - refute File.exists?("#{@emoji_dir_path}/test_pack/dir/") - assert File.exists?("#{@emoji_dir_path}/test_pack/dir_2/blank_3.png") - - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ - "action" => "remove", - "shortcode" => "blank_3" + test "update with empty shortcode", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "update", + "shortcode" => "blank", + "new_filename" => "dir_2/blank_3.png" }) - |> json_response(200) == %{"blank_3" => "dir_2/blank_3.png"} - - refute File.exists?("#{@emoji_dir_path}/test_pack/dir_2/") - - mock(fn - %{ - method: :get, - url: "https://test-blank/blank_url.png" - } -> - text(File.read!("#{@emoji_dir_path}/test_pack/blank.png")) - end) - - # The name should be inferred from the URL ending - from_url = %{ - "action" => "add", - "shortcode" => "blank_url", - "file" => "https://test-blank/blank_url.png" - } - - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), from_url) - |> json_response(200) == %{ - "blank_url" => "blank_url.png" + |> json_response(:bad_request) == %{ + "error" => "new_shortcode or new_filename cannot be empty" } + end - assert File.exists?("#{@emoji_dir_path}/test_pack/blank_url.png") - - assert conn - |> post(emoji_api_path(conn, :update_file, "test_pack"), %{ - "action" => "remove", - "shortcode" => "blank_url" + test "undefined action", %{admin_conn: admin_conn} do + assert admin_conn + |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ + "action" => "undefined" }) - |> json_response(200) == %{"blank_url" => "blank_url.png"} - - refute File.exists?("#{@emoji_dir_path}/test_pack/blank_url.png") + |> json_response(:bad_request) == %{ + "error" => "Unknown action: undefined" + } end end - test "creating and deleting a pack" do - on_exit(fn -> - File.rm_rf!("#{@emoji_dir_path}/test_created") - end) + describe "PUT /api/pleroma/emoji/packs/:name" do + test "creating and deleting a pack", %{admin_conn: admin_conn} do + assert admin_conn + |> put("/api/pleroma/emoji/packs/test_created") + |> json_response(200) == "ok" - admin = insert(:user, is_admin: true) - %{conn: conn} = oauth_access(["admin:write"], user: admin) + assert File.exists?("#{@emoji_path}/test_created/pack.json") - assert conn - |> put_req_header("content-type", "application/json") - |> put( - emoji_api_path( - conn, - :create, - "test_created" - ) - ) - |> json_response(200) == "ok" + assert Jason.decode!(File.read!("#{@emoji_path}/test_created/pack.json")) == %{ + "pack" => %{}, + "files" => %{} + } - assert File.exists?("#{@emoji_dir_path}/test_created/pack.json") + assert admin_conn + |> delete("/api/pleroma/emoji/packs/test_created") + |> json_response(200) == "ok" - assert Jason.decode!(File.read!("#{@emoji_dir_path}/test_created/pack.json")) == %{ - "pack" => %{}, - "files" => %{} - } + refute File.exists?("#{@emoji_path}/test_created/pack.json") + end - assert conn - |> delete(emoji_api_path(conn, :delete, "test_created")) - |> json_response(200) == "ok" + test "if pack exists", %{admin_conn: admin_conn} do + path = Path.join(@emoji_path, "test_created") + File.mkdir(path) + pack_file = Jason.encode!(%{files: %{}, pack: %{}}) + File.write!(Path.join(path, "pack.json"), pack_file) - refute File.exists?("#{@emoji_dir_path}/test_created/pack.json") + assert admin_conn + |> put("/api/pleroma/emoji/packs/test_created") + |> json_response(:conflict) == %{ + "error" => "A pack named \"test_created\" already exists" + } + + on_exit(fn -> File.rm_rf(path) end) + end + + test "with empty name", %{admin_conn: admin_conn} do + assert admin_conn + |> put("/api/pleroma/emoji/packs/ ") + |> json_response(:bad_request) == %{"error" => "pack name cannot be empty"} + end end - test "filesystem import" do + test "deleting nonexisting pack", %{admin_conn: admin_conn} do + assert admin_conn + |> delete("/api/pleroma/emoji/packs/non_existing") + |> json_response(:not_found) == %{"error" => "Pack non_existing does not exist"} + end + + test "deleting with empty name", %{admin_conn: admin_conn} do + assert admin_conn + |> delete("/api/pleroma/emoji/packs/ ") + |> json_response(:bad_request) == %{"error" => "pack name cannot be empty"} + end + + test "filesystem import", %{admin_conn: admin_conn, conn: conn} do on_exit(fn -> - File.rm!("#{@emoji_dir_path}/test_pack_for_import/emoji.txt") - File.rm!("#{@emoji_dir_path}/test_pack_for_import/pack.json") + File.rm!("#{@emoji_path}/test_pack_for_import/emoji.txt") + File.rm!("#{@emoji_path}/test_pack_for_import/pack.json") end) - conn = build_conn() - resp = conn |> get(emoji_api_path(conn, :list_packs)) |> json_response(200) + resp = conn |> get("/api/pleroma/emoji/packs") |> json_response(200) refute Map.has_key?(resp, "test_pack_for_import") - admin = insert(:user, is_admin: true) - %{conn: conn} = oauth_access(["admin:write"], user: admin) - - assert conn - |> post(emoji_api_path(conn, :import_from_fs)) + assert admin_conn + |> post("/api/pleroma/emoji/packs/import_from_fs") |> json_response(200) == ["test_pack_for_import"] - resp = conn |> get(emoji_api_path(conn, :list_packs)) |> json_response(200) + resp = conn |> get("/api/pleroma/emoji/packs") |> json_response(200) assert resp["test_pack_for_import"]["files"] == %{"blank" => "blank.png"} - File.rm!("#{@emoji_dir_path}/test_pack_for_import/pack.json") - refute File.exists?("#{@emoji_dir_path}/test_pack_for_import/pack.json") + File.rm!("#{@emoji_path}/test_pack_for_import/pack.json") + refute File.exists?("#{@emoji_path}/test_pack_for_import/pack.json") - emoji_txt_content = "blank, blank.png, Fun\n\nblank2, blank.png" + emoji_txt_content = """ + blank, blank.png, Fun + blank2, blank.png + foo, /emoji/test_pack_for_import/blank.png + bar + """ - File.write!("#{@emoji_dir_path}/test_pack_for_import/emoji.txt", emoji_txt_content) + File.write!("#{@emoji_path}/test_pack_for_import/emoji.txt", emoji_txt_content) - assert conn - |> post(emoji_api_path(conn, :import_from_fs)) + assert admin_conn + |> post("/api/pleroma/emoji/packs/import_from_fs") |> json_response(200) == ["test_pack_for_import"] - resp = build_conn() |> get(emoji_api_path(conn, :list_packs)) |> json_response(200) + resp = conn |> get("/api/pleroma/emoji/packs") |> json_response(200) assert resp["test_pack_for_import"]["files"] == %{ "blank" => "blank.png", - "blank2" => "blank.png" + "blank2" => "blank.png", + "foo" => "blank.png" } end + + describe "GET /api/pleroma/emoji/packs/:name" do + test "shows pack.json", %{conn: conn} do + assert %{ + "files" => %{"blank" => "blank.png"}, + "pack" => %{ + "can-download" => true, + "description" => "Test description", + "download-sha256" => _, + "homepage" => "https://pleroma.social", + "license" => "Test license", + "share-files" => true + } + } = + conn + |> get("/api/pleroma/emoji/packs/test_pack") + |> json_response(200) + end + + test "non existing pack", %{conn: conn} do + assert conn + |> get("/api/pleroma/emoji/packs/non_existing") + |> json_response(:not_found) == %{"error" => "Pack non_existing does not exist"} + end + + test "error name", %{conn: conn} do + assert conn + |> get("/api/pleroma/emoji/packs/ ") + |> json_response(:bad_request) == %{"error" => "pack name cannot be empty"} + end + end end From 95759310abb597275335936efa4a59615b16da6e Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Sat, 28 Mar 2020 13:55:17 +0300 Subject: [PATCH 030/156] docs update --- docs/API/pleroma_api.md | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index a7c7731ce..49b75f5f9 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -330,6 +330,13 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Params: None * Response: JSON, "ok" and 200 status and the JSON hashmap of "pack name" to "pack contents" +## `GET /api/pleroma/emoji/packs/:name` +### Get pack.json for the pack +* Method `GET` +* Authentication: not required +* Params: None +* Response: JSON, pack json with `files` and `pack` keys with 200 status or 404 if the pack does not exist + ## `PUT /api/pleroma/emoji/packs/:name` ### Creates an empty custom emoji pack * Method `PUT` @@ -349,15 +356,17 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Method `POST` * Authentication: required * Params: - * if the `action` is `add`, adds an emoji named `shortcode` to the pack `pack_name`, - that means that the emoji file needs to be uploaded with the request + * if the `action` is `add`, adds an emoji file to the pack `pack_name`, (thus requiring it to be a multipart request) and be named `file`. + If `shortcode` is not specified, `shortcode` will be used from filename. There can also be an optional `filename` that will be the new emoji file name (if it's not there, the name will be taken from the uploaded file). * if the `action` is `update`, changes emoji shortcode - (from `shortcode` to `new_shortcode` or moves the file (from the current filename to `new_filename`) + (from `shortcode` to `new_shortcode` or moves the file (from the current filename to `new_filename`). + If new_shortcode is used in another emoji 409 status will be returned. If you want to override shortcode + pass `force` option with `true` value. * if the `action` is `remove`, removes the emoji named `shortcode` and it's associated file -* Response: JSON, emoji shortcode with filename which was added/updated/deleted and 200 status, 409 if the trying to use a shortcode +* Response: JSON, updated "files" section of the pack and 200 status, 409 if the trying to use a shortcode that is already taken, 400 if there was an error with the shortcode, filename or file (additional info in the "error" part of the response JSON) @@ -385,7 +394,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Method `POST` * Authentication: required * Params: - * `instance_address`: the address of the instance to download from + * `instance_address`: the address of the instance to get packs from * Response: JSON with the pack list, same as if the request was made to that instance's list endpoint directly + 200 status From f3070ddae5f4f7deda8365158e3750e5a575c222 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Sat, 28 Mar 2020 15:00:48 +0300 Subject: [PATCH 031/156] removing entry from changelog --- CHANGELOG.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a220c14f6..a8589bbdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -125,14 +125,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
API Changes -- **Breaking:** EmojiReactions: Change endpoints and responses to align with Mastodon -- **Breaking:** Admin API: `PATCH /api/pleroma/admin/users/:nickname/force_password_reset` is now `PATCH /api/pleroma/admin/users/force_password_reset` (accepts `nicknames` array in the request body) +- **Breaking** EmojiReactions: Change endpoints and responses to align with Mastodon +- **Breaking** Admin API: `PATCH /api/pleroma/admin/users/:nickname/force_password_reset` is now `PATCH /api/pleroma/admin/users/force_password_reset` (accepts `nicknames` array in the request body) - **Breaking:** Admin API: Return link alongside with token on password reset - **Breaking:** Admin API: `PUT /api/pleroma/admin/reports/:id` is now `PATCH /api/pleroma/admin/reports`, see admin_api.md for details - **Breaking:** `/api/pleroma/admin/users/invite_token` now uses `POST`, changed accepted params and returns full invite in json instead of only token string. -- **Breaking:** replying to reports is now "report notes", endpoint changed from `POST /api/pleroma/admin/reports/:id/respond` to `POST /api/pleroma/admin/reports/:id/notes` +- **Breaking** replying to reports is now "report notes", endpoint changed from `POST /api/pleroma/admin/reports/:id/respond` to `POST /api/pleroma/admin/reports/:id/notes` - Mastodon API: stopped sanitizing display names, field names and subject fields since they are supposed to be treated as plaintext -- **Breaking:** Pleroma API: `/api/pleroma/emoji/packs/:name/update_file` endpoint returns only updated emoji data. - Admin API: Return `total` when querying for reports - Mastodon API: Return `pleroma.direct_conversation_id` when creating a direct message (`POST /api/v1/statuses`) - Admin API: Return link alongside with token on password reset From ddb757f7434c7216eec1b6ba4fa8b0b7a54157c1 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Sat, 28 Mar 2020 21:15:14 +0300 Subject: [PATCH 032/156] emoji api packs changes in routes with docs update --- docs/API/pleroma_api.md | 114 ++++---- lib/pleroma/emoji/pack.ex | 26 +- .../controllers/emoji_api_controller.ex | 170 ++++-------- lib/pleroma/web/router.ex | 23 +- .../controllers/emoji_api_controller_test.exs | 254 +++++++----------- 5 files changed, 231 insertions(+), 356 deletions(-) diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index 49b75f5f9..65d22980b 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -323,27 +323,47 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Params: None * Response: JSON, returns a list of Mastodon Conversation entities that were marked as read (200 - healthy, 503 unhealthy). -## `GET /api/pleroma/emoji/packs` -### Lists the custom emoji packs on the server +## `GET /api/pleroma/emoji/packs/import` +### Imports packs from filesystem * Method `GET` -* Authentication: not required +* Authentication: required * Params: None -* Response: JSON, "ok" and 200 status and the JSON hashmap of "pack name" to "pack contents" +* Response: JSON, returns a list of imported packs. -## `GET /api/pleroma/emoji/packs/:name` -### Get pack.json for the pack +## `GET /api/pleroma/emoji/packs/remote` +### Make request to another instance for packs list * Method `GET` -* Authentication: not required -* Params: None -* Response: JSON, pack json with `files` and `pack` keys with 200 status or 404 if the pack does not exist +* Authentication: required +* Params: + * `url`: url of the instance to get packs from +* Response: JSON with the pack list, hashmap with pack name and pack contents -## `PUT /api/pleroma/emoji/packs/:name` -### Creates an empty custom emoji pack -* Method `PUT` +## `POST /api/pleroma/emoji/packs/download` +### Download pack from another instance +* Method `POST` +* Authentication: required +* Params: + * `url`: url of the instance to download from + * `name`: pack to download from that instance +* Response: JSON, "ok" with 200 status if the pack was downloaded, or 500 if there were + errors downloading the pack + +## `POST /api/pleroma/emoji/packs/:name` +### Creates an empty pack +* Method `POST` * Authentication: required * Params: None * Response: JSON, "ok" and 200 status or 409 if the pack with that name already exists +## `PATCH /api/pleroma/emoji/packs/:name` +### Updates (replaces) pack metadata +* Method `POST` +* Authentication: required +* Params: + * `metadata`: metadata to replace the old one +* Response: JSON, updated "metadata" section of the pack and 200 status or 400 if there was a + problem with the new metadata (the error is specified in the "error" part of the response JSON) + ## `DELETE /api/pleroma/emoji/packs/:name` ### Delete a custom emoji pack * Method `DELETE` @@ -351,54 +371,50 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Params: None * Response: JSON, "ok" and 200 status or 500 if there was an error deleting the pack -## `POST /api/pleroma/emoji/packs/:name/update_file` -### Update a file in a custom emoji pack +## `POST /api/pleroma/emoji/packs/:name/files` +### Add new file to the pack * Method `POST` * Authentication: required * Params: - * if the `action` is `add`, adds an emoji file to the pack `pack_name`, - (thus requiring it to be a multipart request) and be named `file`. - If `shortcode` is not specified, `shortcode` will be used from filename. - There can also be an optional `filename` that will be the new emoji file name - (if it's not there, the name will be taken from the uploaded file). - * if the `action` is `update`, changes emoji shortcode - (from `shortcode` to `new_shortcode` or moves the file (from the current filename to `new_filename`). - If new_shortcode is used in another emoji 409 status will be returned. If you want to override shortcode - pass `force` option with `true` value. - * if the `action` is `remove`, removes the emoji named `shortcode` and it's associated file -* Response: JSON, updated "files" section of the pack and 200 status, 409 if the trying to use a shortcode - that is already taken, 400 if there was an error with the shortcode, filename or file (additional info - in the "error" part of the response JSON) + * `file`: uploaded file or link to remote file. + * `shortcode`: (*optional*) shortcode for new emoji, must be uniq for all emoji. If not sended, shortcode will be taken from original filename. + * `filename`: (*optional*) new emoji file name. If not specified will be taken from original filename. +* Response: JSON, list of files for updated pack (hasmap -> shortcode => filename) with status 200, either error status with error message. -## `POST /api/pleroma/emoji/packs/:name/update_metadata` -### Updates (replaces) pack metadata -* Method `POST` +## `PATCH /api/pleroma/emoji/packs/:name/files` +### Update emoji file from pack +* Method `PATCH` * Authentication: required * Params: - * `new_data`: new metadata to replace the old one -* Response: JSON, updated "metadata" section of the pack and 200 status or 400 if there was a - problem with the new metadata (the error is specified in the "error" part of the response JSON) + * `shortcode`: emoji file shortcode + * `new_shortcode`: new emoji file shortcode + * `new_filename`: new filename for emoji file + * `force`: (*optional*) with true value to overwrite existing emoji with new shortcode +* Response: JSON, list with updated files for updated pack (hasmap -> shortcode => filename) with status 200, either error status with error message. -## `POST /api/pleroma/emoji/packs/download_from` -### Requests the instance to download the pack from another instance -* Method `POST` +## `DELETE /api/pleroma/emoji/packs/:name/files` +### Delete emoji file from pack +* Method `DELETE` * Authentication: required * Params: - * `instance_address`: the address of the instance to download from - * `pack_name`: the pack to download from that instance -* Response: JSON, "ok" and 200 status if the pack was downloaded, or 500 if there were - errors downloading the pack + * `shortcode`: emoji file shortcode +* Response: JSON, list with updated files for updated pack (hasmap -> shortcode => filename) with status 200, either error status with error message. -## `POST /api/pleroma/emoji/packs/list_from` -### Requests the instance to list the packs from another instance -* Method `POST` -* Authentication: required -* Params: - * `instance_address`: the address of the instance to get packs from -* Response: JSON with the pack list, same as if the request was made to that instance's - list endpoint directly + 200 status +## `GET /api/pleroma/emoji/packs` +### Lists local custom emoji packs +* Method `GET` +* Authentication: not required +* Params: None +* Response: JSON, "ok" and 200 status and the JSON hashmap of pack name to pack contents -## `GET /api/pleroma/emoji/packs/:name/download_shared` +## `GET /api/pleroma/emoji/packs/:name` +### Get pack.json for the pack +* Method `GET` +* Authentication: not required +* Params: None +* Response: JSON, pack json with `files` and `pack` keys with 200 status or 404 if the pack does not exist + +## `GET /api/pleroma/emoji/packs/:name/archive` ### Requests a local pack from the instance * Method `GET` * Authentication: not required diff --git a/lib/pleroma/emoji/pack.ex b/lib/pleroma/emoji/pack.ex index 21ed12c78..eb50e52fa 100644 --- a/lib/pleroma/emoji/pack.ex +++ b/lib/pleroma/emoji/pack.ex @@ -102,9 +102,9 @@ defp create_subdirs(file_path) do end end - @spec remove_file(String.t(), String.t()) :: + @spec delete_file(String.t(), String.t()) :: {:ok, t()} | {:error, File.posix()} | {:error, :empty_values} - def remove_file(name, shortcode) when byte_size(name) > 0 and byte_size(shortcode) > 0 do + def delete_file(name, shortcode) when byte_size(name) > 0 and byte_size(shortcode) > 0 do with {_, %__MODULE__{} = pack} <- {:loaded, load_pack(name)}, {_, {filename, files}} when not is_nil(filename) <- {:exists, Map.pop(pack.files, shortcode)}, @@ -131,7 +131,7 @@ def remove_file(name, shortcode) when byte_size(name) > 0 and byte_size(shortcod end end - def remove_file(_, _), do: {:error, :empty_values} + def delete_file(_, _), do: {:error, :empty_values} @spec update_file(String.t(), String.t(), String.t(), String.t(), boolean()) :: {:ok, t()} | {:error, File.posix()} | {:error, :empty_values} @@ -249,8 +249,8 @@ defp files_from_path(path) do end end - @spec list_remote_packs(String.t()) :: {:ok, map()} - def list_remote_packs(url) do + @spec list_remote(String.t()) :: {:ok, map()} + def list_remote(url) do uri = url |> String.trim() @@ -269,8 +269,8 @@ def list_remote_packs(url) do end end - @spec list_local_packs() :: {:ok, map()} - def list_local_packs do + @spec list_local() :: {:ok, map()} + def list_local do emoji_path = emoji_path() # Create the directory first if it does not exist. This is probably the first request made @@ -315,8 +315,8 @@ defp downloadable?(pack) do end) end - @spec download(String.t()) :: {:ok, binary()} - def download(name) do + @spec get_archive(String.t()) :: {:ok, binary()} + def get_archive(name) do with {_, %__MODULE__{} = pack} <- {:exists?, load_pack(name)}, {_, true} <- {:can_download?, downloadable?(pack)} do {:ok, fetch_archive(pack)} @@ -356,15 +356,14 @@ defp create_archive_and_cache(pack, hash) do result end - @spec download_from_source(String.t(), String.t(), String.t()) :: :ok - def download_from_source(name, url, as) do + @spec download(String.t(), String.t(), String.t()) :: :ok + def download(name, url, as) do uri = url |> String.trim() |> URI.parse() with {_, true} <- {:shareable, shareable_packs_available?(uri)} do - # TODO: why do we load all packs, if we know the name of pack we need remote_pack = uri |> URI.merge("/api/pleroma/emoji/packs/#{name}") @@ -379,8 +378,7 @@ def download_from_source(name, url, as) do {:ok, %{ sha: sha, - url: - URI.merge(uri, "/api/pleroma/emoji/packs/#{name}/download_shared") |> to_string() + url: URI.merge(uri, "/api/pleroma/emoji/packs/#{name}/archive") |> to_string() }} %{"fallback-src" => src, "fallback-src-sha256" => sha} when is_binary(src) -> diff --git a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex index 9fa857474..83a7f03e8 100644 --- a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex @@ -7,12 +7,15 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIController do Pleroma.Plugs.OAuthScopesPlug, %{scopes: ["write"], admin: true} when action in [ + :import, + :remote, + :download, :create, + :update, :delete, - :download_from, - :import_from_fs, + :add_file, :update_file, - :update_metadata + :delete_file ] ) @@ -22,14 +25,8 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIController do when action in [:download_shared, :list_packs, :list_from] ) - @doc """ - Lists packs from the remote instance. - - Since JS cannot ask remote instances for their packs due to CPS, it has to - be done by the server - """ - def list_from(conn, %{"instance_address" => address}) do - with {:ok, packs} <- Pack.list_remote_packs(address) do + def remote(conn, %{"url" => url}) do + with {:ok, packs} <- Pack.list_remote(url) do json(conn, packs) else {:shareable, _} -> @@ -39,20 +36,14 @@ def list_from(conn, %{"instance_address" => address}) do end end - @doc """ - Lists the packs available on the instance as JSON. - - The information is public and does not require authentication. The format is - a map of "pack directory name" to pack.json contents. - """ - def list_packs(conn, _params) do + def list(conn, _params) do emoji_path = Path.join( Pleroma.Config.get!([:instance, :static_dir]), "emoji" ) - with {:ok, packs} <- Pack.list_local_packs() do + with {:ok, packs} <- Pack.list_local() do json(conn, packs) else {:create_dir, {:error, e}} -> @@ -87,12 +78,8 @@ def show(conn, %{"name" => name}) do end end - @doc """ - An endpoint for other instances (via admin UI) or users (via browser) - to download packs that the instance shares. - """ - def download_shared(conn, %{"name" => name}) do - with {:ok, archive} <- Pack.download(name) do + def archive(conn, %{"name" => name}) do + with {:ok, archive} <- Pack.get_archive(name) do send_download(conn, {:binary, archive}, filename: "#{name}.zip") else {:can_download?, _} -> @@ -110,15 +97,8 @@ def download_shared(conn, %{"name" => name}) do end end - @doc """ - An admin endpoint to request downloading and storing a pack named `pack_name` from the instance - `instance_address`. - - If the requested instance's admin chose to share the pack, it will be downloaded - from that instance, otherwise it will be downloaded from the fallback source, if there is one. - """ - def download_from(conn, %{"instance_address" => address, "pack_name" => name} = params) do - with :ok <- Pack.download_from_source(name, address, params["as"]) do + def download(conn, %{"url" => url, "name" => name} = params) do + with :ok <- Pack.download(name, url, params["as"]) do json(conn, "ok") else {:shareable, _} -> @@ -138,9 +118,6 @@ def download_from(conn, %{"instance_address" => address, "pack_name" => name} = end end - @doc """ - Creates an empty pack named `name` which then can be updated via the admin UI. - """ def create(conn, %{"name" => name}) do name = String.trim(name) @@ -166,9 +143,6 @@ def create(conn, %{"name" => name}) do end end - @doc """ - Deletes the pack `name` and all it's files. - """ def delete(conn, %{"name" => name}) do name = String.trim(name) @@ -192,13 +166,8 @@ def delete(conn, %{"name" => name}) do end end - @doc """ - An endpoint to update `pack_names`'s metadata. - - `new_data` is the new metadata for the pack, that will replace the old metadata. - """ - def update_metadata(conn, %{"pack_name" => name, "new_data" => new_data}) do - with {:ok, pack} <- Pack.update_metadata(name, new_data) do + def update(conn, %{"name" => name, "metadata" => metadata}) do + with {:ok, pack} <- Pack.update_metadata(name, metadata) do json(conn, pack.pack) else {:has_all_files?, _} -> @@ -215,30 +184,11 @@ def update_metadata(conn, %{"pack_name" => name, "new_data" => new_data}) do end end - @doc """ - Updates a file in a pack. - - Updating can mean three things: - - - `add` adds an emoji named `shortcode` to the pack `pack_name`, - that means that the emoji file needs to be uploaded with the request - (thus requiring it to be a multipart request) and be named `file`. - There can also be an optional `filename` that will be the new emoji file name - (if it's not there, the name will be taken from the uploaded file). - - `update` changes emoji shortcode (from `shortcode` to `new_shortcode` or moves the file - (from the current filename to `new_filename`) - - `remove` removes the emoji named `shortcode` and it's associated file - """ - - # Add - def update_file( - conn, - %{"pack_name" => pack_name, "action" => "add"} = params - ) do + def add_file(conn, %{"name" => name} = params) do filename = params["filename"] || get_filename(params["file"]) shortcode = params["shortcode"] || Path.basename(filename, Path.extname(filename)) - with {:ok, pack} <- Pack.add_file(pack_name, shortcode, filename, params["file"]) do + with {:ok, pack} <- Pack.add_file(name, shortcode, filename, params["file"]) do json(conn, pack.files) else {:exists, _} -> @@ -249,7 +199,7 @@ def update_file( {:loaded, _} -> conn |> put_status(:bad_request) - |> json(%{error: "pack \"#{pack_name}\" is not found"}) + |> json(%{error: "pack \"#{name}\" is not found"}) {:error, :empty_values} -> conn @@ -265,44 +215,7 @@ def update_file( end end - # Remove - def update_file(conn, %{ - "pack_name" => pack_name, - "action" => "remove", - "shortcode" => shortcode - }) do - with {:ok, pack} <- Pack.remove_file(pack_name, shortcode) do - json(conn, pack.files) - else - {:exists, _} -> - conn - |> put_status(:bad_request) - |> json(%{error: "Emoji \"#{shortcode}\" does not exist"}) - - {:loaded, _} -> - conn - |> put_status(:bad_request) - |> json(%{error: "pack \"#{pack_name}\" is not found"}) - - {:error, :empty_values} -> - conn - |> put_status(:bad_request) - |> json(%{error: "pack name or shortcode cannot be empty"}) - - {:error, _} -> - render_error( - conn, - :internal_server_error, - "Unexpected error occurred while removing file from pack." - ) - end - end - - # Update - def update_file( - conn, - %{"pack_name" => name, "action" => "update", "shortcode" => shortcode} = params - ) do + def update_file(conn, %{"name" => name, "shortcode" => shortcode} = params) do new_shortcode = params["new_shortcode"] new_filename = params["new_filename"] force = params["force"] == true @@ -342,24 +255,35 @@ def update_file( end end - def update_file(conn, %{"action" => action}) do - conn - |> put_status(:bad_request) - |> json(%{error: "Unknown action: #{action}"}) + def delete_file(conn, %{"name" => name, "shortcode" => shortcode}) do + with {:ok, pack} <- Pack.delete_file(name, shortcode) do + json(conn, pack.files) + else + {:exists, _} -> + conn + |> put_status(:bad_request) + |> json(%{error: "Emoji \"#{shortcode}\" does not exist"}) + + {:loaded, _} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack \"#{name}\" is not found"}) + + {:error, :empty_values} -> + conn + |> put_status(:bad_request) + |> json(%{error: "pack name or shortcode cannot be empty"}) + + {:error, _} -> + render_error( + conn, + :internal_server_error, + "Unexpected error occurred while removing file from pack." + ) + end end - @doc """ - Imports emoji from the filesystem. - - Importing means checking all the directories in the - `$instance_static/emoji/` for directories which do not have - `pack.json`. If one has an emoji.txt file, that file will be used - to create a `pack.json` file with it's contents. If the directory has - neither, all the files with specific configured extenstions will be - assumed to be emojis and stored in the new `pack.json` file. - """ - - def import_from_fs(conn, _params) do + def import_from_filesystem(conn, _params) do with {:ok, names} <- Pack.import_from_filesystem() do json(conn, names) else diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index 0fcb517cf..a7e1f2f57 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -214,25 +214,24 @@ defmodule Pleroma.Web.Router do scope "/packs" do pipe_through(:admin_api) - post("/import_from_fs", EmojiAPIController, :import_from_fs) - post("/:pack_name/update_file", EmojiAPIController, :update_file) - post("/:pack_name/update_metadata", EmojiAPIController, :update_metadata) - put("/:name", EmojiAPIController, :create) + get("/import", EmojiAPIController, :import_from_filesystem) + get("/remote", EmojiAPIController, :remote) + post("/download", EmojiAPIController, :download) + + post("/:name", EmojiAPIController, :create) + patch("/:name", EmojiAPIController, :update) delete("/:name", EmojiAPIController, :delete) - # Note: /download_from downloads and saves to instance, not to requester - post("/download_from", EmojiAPIController, :download_from) + post("/:name/files", EmojiAPIController, :add_file) + patch("/:name/files", EmojiAPIController, :update_file) + delete("/:name/files", EmojiAPIController, :delete_file) end # Pack info / downloading scope "/packs" do - get("/", EmojiAPIController, :list_packs) + get("/", EmojiAPIController, :list) get("/:name", EmojiAPIController, :show) - get("/:name/download_shared/", EmojiAPIController, :download_shared) - get("/list_from", EmojiAPIController, :list_from) - - # Deprecated: POST /api/pleroma/emoji/packs/list_from (use GET instead) - post("/list_from", EmojiAPIController, :list_from) + get("/:name/archive", EmojiAPIController, :archive) end end diff --git a/test/web/pleroma_api/controllers/emoji_api_controller_test.exs b/test/web/pleroma_api/controllers/emoji_api_controller_test.exs index 6a0d7dd11..d343256fe 100644 --- a/test/web/pleroma_api/controllers/emoji_api_controller_test.exs +++ b/test/web/pleroma_api/controllers/emoji_api_controller_test.exs @@ -41,7 +41,7 @@ test "GET /api/pleroma/emoji/packs", %{conn: conn} do assert non_shared["pack"]["can-download"] == false end - describe "POST /api/pleroma/emoji/packs/list_from" do + describe "GET /api/pleroma/emoji/packs/remote" do test "shareable instance", %{admin_conn: admin_conn, conn: conn} do resp = conn @@ -60,8 +60,8 @@ test "shareable instance", %{admin_conn: admin_conn, conn: conn} do end) assert admin_conn - |> post("/api/pleroma/emoji/packs/list_from", %{ - instance_address: "https://example.com" + |> get("/api/pleroma/emoji/packs/remote", %{ + url: "https://example.com" }) |> json_response(200) == resp end @@ -76,20 +76,18 @@ test "non shareable instance", %{admin_conn: admin_conn} do end) assert admin_conn - |> post("/api/pleroma/emoji/packs/list_from", %{ - instance_address: "https://example.com" - }) + |> get("/api/pleroma/emoji/packs/remote", %{url: "https://example.com"}) |> json_response(500) == %{ "error" => "The requested instance does not support sharing emoji packs" } end end - describe "GET /api/pleroma/emoji/packs/:name/download_shared" do + describe "GET /api/pleroma/emoji/packs/:name/archive" do test "download shared pack", %{conn: conn} do resp = conn - |> get("/api/pleroma/emoji/packs/test_pack/download_shared") + |> get("/api/pleroma/emoji/packs/test_pack/archive") |> response(200) {:ok, arch} = :zip.unzip(resp, [:memory]) @@ -100,7 +98,7 @@ test "download shared pack", %{conn: conn} do test "non existing pack", %{conn: conn} do assert conn - |> get("/api/pleroma/emoji/packs/test_pack_for_import/download_shared") + |> get("/api/pleroma/emoji/packs/test_pack_for_import/archive") |> json_response(:not_found) == %{ "error" => "Pack test_pack_for_import does not exist" } @@ -108,7 +106,7 @@ test "non existing pack", %{conn: conn} do test "non downloadable pack", %{conn: conn} do assert conn - |> get("/api/pleroma/emoji/packs/test_pack_nonshared/download_shared") + |> get("/api/pleroma/emoji/packs/test_pack_nonshared/archive") |> json_response(:forbidden) == %{ "error" => "Pack test_pack_nonshared cannot be downloaded from this instance, either pack sharing was disabled for this pack or some files are missing" @@ -116,7 +114,7 @@ test "non downloadable pack", %{conn: conn} do end end - describe "POST /api/pleroma/emoji/packs/download_from" do + describe "POST /api/pleroma/emoji/packs/download" do test "shared pack from remote and non shared from fallback-src", %{ admin_conn: admin_conn, conn: conn @@ -139,10 +137,10 @@ test "shared pack from remote and non shared from fallback-src", %{ %{ method: :get, - url: "https://example.com/api/pleroma/emoji/packs/test_pack/download_shared" + url: "https://example.com/api/pleroma/emoji/packs/test_pack/archive" } -> conn - |> get("/api/pleroma/emoji/packs/test_pack/download_shared") + |> get("/api/pleroma/emoji/packs/test_pack/archive") |> response(200) |> text() @@ -163,9 +161,9 @@ test "shared pack from remote and non shared from fallback-src", %{ end) assert admin_conn - |> post("/api/pleroma/emoji/packs/download_from", %{ - instance_address: "https://example.com", - pack_name: "test_pack", + |> post("/api/pleroma/emoji/packs/download", %{ + url: "https://example.com", + name: "test_pack", as: "test_pack2" }) |> json_response(200) == "ok" @@ -181,10 +179,10 @@ test "shared pack from remote and non shared from fallback-src", %{ assert admin_conn |> post( - "/api/pleroma/emoji/packs/download_from", + "/api/pleroma/emoji/packs/download", %{ - instance_address: "https://example.com", - pack_name: "test_pack_nonshared", + url: "https://example.com", + name: "test_pack_nonshared", as: "test_pack_nonshared2" } ) @@ -211,10 +209,10 @@ test "nonshareable instance", %{admin_conn: admin_conn} do assert admin_conn |> post( - "/api/pleroma/emoji/packs/download_from", + "/api/pleroma/emoji/packs/download", %{ - instance_address: "https://old-instance", - pack_name: "test_pack", + url: "https://old-instance", + name: "test_pack", as: "test_pack2" } ) @@ -242,7 +240,7 @@ test "checksum fail", %{admin_conn: admin_conn} do %{ method: :get, - url: "https://example.com/api/pleroma/emoji/packs/pack_bad_sha/download_shared" + url: "https://example.com/api/pleroma/emoji/packs/pack_bad_sha/archive" } -> %Tesla.Env{ status: 200, @@ -251,9 +249,9 @@ test "checksum fail", %{admin_conn: admin_conn} do end) assert admin_conn - |> post("/api/pleroma/emoji/packs/download_from", %{ - instance_address: "https://example.com", - pack_name: "pack_bad_sha", + |> post("/api/pleroma/emoji/packs/download", %{ + url: "https://example.com", + name: "pack_bad_sha", as: "pack_bad_sha2" }) |> json_response(:internal_server_error) == %{ @@ -275,23 +273,14 @@ test "other error", %{admin_conn: admin_conn} do } -> %Tesla.Env{ status: 200, - body: %{"test_pack" => Pleroma.Emoji.Pack.load_pack("test_pack")} |> Jason.encode!() - } - - %{ - method: :get, - url: "https://example.com/api/pleroma/emoji/packs/test_pack/download_shared" - } -> - %Tesla.Env{ - status: 200, - body: File.read!("test/instance_static/emoji/test_pack/pack.json") + body: Pleroma.Emoji.Pack.load_pack("test_pack") |> Jason.encode!() } end) assert admin_conn - |> post("/api/pleroma/emoji/packs/download_from", %{ - instance_address: "https://example.com", - pack_name: "test_pack", + |> post("/api/pleroma/emoji/packs/download", %{ + url: "https://example.com", + name: "test_pack", as: "test_pack2" }) |> json_response(:internal_server_error) == %{ @@ -301,7 +290,7 @@ test "other error", %{admin_conn: admin_conn} do end end - describe "updating pack metadata" do + describe "PATCH /api/pleroma/emoji/packs/:name" do setup do pack_file = "#{@emoji_path}/test_pack/pack.json" original_content = File.read!(pack_file) @@ -322,12 +311,7 @@ test "other error", %{admin_conn: admin_conn} do test "for a pack without a fallback source", ctx do assert ctx[:admin_conn] - |> post( - "/api/pleroma/emoji/packs/test_pack/update_metadata", - %{ - "new_data" => ctx[:new_data] - } - ) + |> patch("/api/pleroma/emoji/packs/test_pack", %{"metadata" => ctx[:new_data]}) |> json_response(200) == ctx[:new_data] assert Jason.decode!(File.read!(ctx[:pack_file]))["pack"] == ctx[:new_data] @@ -352,12 +336,7 @@ test "for a pack with a fallback source", ctx do ) assert ctx[:admin_conn] - |> post( - "/api/pleroma/emoji/packs/test_pack/update_metadata", - %{ - "new_data" => new_data - } - ) + |> patch("/api/pleroma/emoji/packs/test_pack", %{metadata: new_data}) |> json_response(200) == new_data_with_sha assert Jason.decode!(File.read!(ctx[:pack_file]))["pack"] == new_data_with_sha @@ -376,19 +355,14 @@ test "when the fallback source doesn't have all the files", ctx do new_data = Map.put(ctx[:new_data], "fallback-src", "https://nonshared-pack") assert ctx[:admin_conn] - |> post( - "/api/pleroma/emoji/packs/test_pack/update_metadata", - %{ - "new_data" => new_data - } - ) + |> patch("/api/pleroma/emoji/packs/test_pack", %{metadata: new_data}) |> json_response(:bad_request) == %{ "error" => "The fallback archive does not have all files specified in pack.json" } end end - describe "POST /api/pleroma/emoji/packs/:pack_name/update_file" do + describe "POST/PATCH/DELETE /api/pleroma/emoji/packs/:name/files" do setup do pack_file = "#{@emoji_path}/test_pack/pack.json" original_content = File.read!(pack_file) @@ -402,11 +376,10 @@ test "when the fallback source doesn't have all the files", ctx do test "create shortcode exists", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "shortcode" => "blank", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank", + filename: "dir/blank.png", + file: %Plug.Upload{ filename: "blank.png", path: "#{@emoji_path}/test_pack/blank.png" } @@ -420,11 +393,10 @@ test "don't rewrite old emoji", %{admin_conn: admin_conn} do on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/dir/") end) assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "shortcode" => "blank2", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank2", + filename: "dir/blank.png", + file: %Plug.Upload{ filename: "blank.png", path: "#{@emoji_path}/test_pack/blank.png" } @@ -434,11 +406,10 @@ test "don't rewrite old emoji", %{admin_conn: admin_conn} do assert File.exists?("#{@emoji_path}/test_pack/dir/blank.png") assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "update", - "shortcode" => "blank", - "new_shortcode" => "blank2", - "new_filename" => "dir_2/blank_3.png" + |> patch("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank", + new_shortcode: "blank2", + new_filename: "dir_2/blank_3.png" }) |> json_response(:conflict) == %{ "error" => @@ -450,11 +421,10 @@ test "rewrite old emoji with force option", %{admin_conn: admin_conn} do on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/dir_2/") end) assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "shortcode" => "blank2", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank2", + filename: "dir/blank.png", + file: %Plug.Upload{ filename: "blank.png", path: "#{@emoji_path}/test_pack/blank.png" } @@ -464,12 +434,11 @@ test "rewrite old emoji with force option", %{admin_conn: admin_conn} do assert File.exists?("#{@emoji_path}/test_pack/dir/blank.png") assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "update", - "shortcode" => "blank2", - "new_shortcode" => "blank3", - "new_filename" => "dir_2/blank_3.png", - "force" => true + |> patch("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank2", + new_shortcode: "blank3", + new_filename: "dir_2/blank_3.png", + force: true }) |> json_response(200) == %{ "blank" => "blank.png", @@ -481,11 +450,10 @@ test "rewrite old emoji with force option", %{admin_conn: admin_conn} do test "with empty filename", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "shortcode" => "blank2", - "filename" => "", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank2", + filename: "", + file: %Plug.Upload{ filename: "blank.png", path: "#{@emoji_path}/test_pack/blank.png" } @@ -497,11 +465,10 @@ test "with empty filename", %{admin_conn: admin_conn} do test "add file with not loaded pack", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ - "action" => "add", - "shortcode" => "blank2", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/not_loaded/files", %{ + shortcode: "blank2", + filename: "dir/blank.png", + file: %Plug.Upload{ filename: "blank.png", path: "#{@emoji_path}/test_pack/blank.png" } @@ -513,19 +480,13 @@ test "add file with not loaded pack", %{admin_conn: admin_conn} do test "remove file with not loaded pack", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ - "action" => "remove", - "shortcode" => "blank3" - }) + |> delete("/api/pleroma/emoji/packs/not_loaded/files", %{shortcode: "blank3"}) |> json_response(:bad_request) == %{"error" => "pack \"not_loaded\" is not found"} end test "remove file with empty shortcode", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ - "action" => "remove", - "shortcode" => "" - }) + |> delete("/api/pleroma/emoji/packs/not_loaded/files", %{shortcode: ""}) |> json_response(:bad_request) == %{ "error" => "pack name or shortcode cannot be empty" } @@ -533,22 +494,20 @@ test "remove file with empty shortcode", %{admin_conn: admin_conn} do test "update file with not loaded pack", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/not_loaded/update_file", %{ - "action" => "update", - "shortcode" => "blank4", - "new_shortcode" => "blank3", - "new_filename" => "dir_2/blank_3.png" + |> patch("/api/pleroma/emoji/packs/not_loaded/files", %{ + shortcode: "blank4", + new_shortcode: "blank3", + new_filename: "dir_2/blank_3.png" }) |> json_response(:bad_request) == %{"error" => "pack \"not_loaded\" is not found"} end test "new with shortcode as file with update", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "shortcode" => "blank4", - "filename" => "dir/blank.png", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank4", + filename: "dir/blank.png", + file: %Plug.Upload{ filename: "blank.png", path: "#{@emoji_path}/test_pack/blank.png" } @@ -558,11 +517,10 @@ test "new with shortcode as file with update", %{admin_conn: admin_conn} do assert File.exists?("#{@emoji_path}/test_pack/dir/blank.png") assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "update", - "shortcode" => "blank4", - "new_shortcode" => "blank3", - "new_filename" => "dir_2/blank_3.png" + |> patch("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank4", + new_shortcode: "blank3", + new_filename: "dir_2/blank_3.png" }) |> json_response(200) == %{"blank3" => "dir_2/blank_3.png", "blank" => "blank.png"} @@ -570,10 +528,7 @@ test "new with shortcode as file with update", %{admin_conn: admin_conn} do assert File.exists?("#{@emoji_path}/test_pack/dir_2/blank_3.png") assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "remove", - "shortcode" => "blank3" - }) + |> delete("/api/pleroma/emoji/packs/test_pack/files", %{shortcode: "blank3"}) |> json_response(200) == %{"blank" => "blank.png"} refute File.exists?("#{@emoji_path}/test_pack/dir_2/") @@ -591,10 +546,9 @@ test "new with shortcode from url", %{admin_conn: admin_conn} do end) assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "shortcode" => "blank_url", - "file" => "https://test-blank/blank_url.png" + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank_url", + file: "https://test-blank/blank_url.png" }) |> json_response(200) == %{ "blank_url" => "blank_url.png", @@ -610,9 +564,8 @@ test "new without shortcode", %{admin_conn: admin_conn} do on_exit(fn -> File.rm_rf!("#{@emoji_path}/test_pack/shortcode.png") end) assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "add", - "file" => %Plug.Upload{ + |> post("/api/pleroma/emoji/packs/test_pack/files", %{ + file: %Plug.Upload{ filename: "shortcode.png", path: "#{Pleroma.Config.get([:instance, :static_dir])}/add/shortcode.png" } @@ -622,51 +575,36 @@ test "new without shortcode", %{admin_conn: admin_conn} do test "remove non existing shortcode in pack.json", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "remove", - "shortcode" => "blank2" - }) + |> delete("/api/pleroma/emoji/packs/test_pack/files", %{shortcode: "blank2"}) |> json_response(:bad_request) == %{"error" => "Emoji \"blank2\" does not exist"} end test "update non existing emoji", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "update", - "shortcode" => "blank2", - "new_shortcode" => "blank3", - "new_filename" => "dir_2/blank_3.png" + |> patch("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank2", + new_shortcode: "blank3", + new_filename: "dir_2/blank_3.png" }) |> json_response(:bad_request) == %{"error" => "Emoji \"blank2\" does not exist"} end test "update with empty shortcode", %{admin_conn: admin_conn} do assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "update", - "shortcode" => "blank", - "new_filename" => "dir_2/blank_3.png" + |> patch("/api/pleroma/emoji/packs/test_pack/files", %{ + shortcode: "blank", + new_filename: "dir_2/blank_3.png" }) |> json_response(:bad_request) == %{ "error" => "new_shortcode or new_filename cannot be empty" } end - - test "undefined action", %{admin_conn: admin_conn} do - assert admin_conn - |> post("/api/pleroma/emoji/packs/test_pack/update_file", %{ - "action" => "undefined" - }) - |> json_response(:bad_request) == %{ - "error" => "Unknown action: undefined" - } - end end - describe "PUT /api/pleroma/emoji/packs/:name" do + describe "POST/DELETE /api/pleroma/emoji/packs/:name" do test "creating and deleting a pack", %{admin_conn: admin_conn} do assert admin_conn - |> put("/api/pleroma/emoji/packs/test_created") + |> post("/api/pleroma/emoji/packs/test_created") |> json_response(200) == "ok" assert File.exists?("#{@emoji_path}/test_created/pack.json") @@ -690,7 +628,7 @@ test "if pack exists", %{admin_conn: admin_conn} do File.write!(Path.join(path, "pack.json"), pack_file) assert admin_conn - |> put("/api/pleroma/emoji/packs/test_created") + |> post("/api/pleroma/emoji/packs/test_created") |> json_response(:conflict) == %{ "error" => "A pack named \"test_created\" already exists" } @@ -700,7 +638,7 @@ test "if pack exists", %{admin_conn: admin_conn} do test "with empty name", %{admin_conn: admin_conn} do assert admin_conn - |> put("/api/pleroma/emoji/packs/ ") + |> post("/api/pleroma/emoji/packs/ ") |> json_response(:bad_request) == %{"error" => "pack name cannot be empty"} end end @@ -728,7 +666,7 @@ test "filesystem import", %{admin_conn: admin_conn, conn: conn} do refute Map.has_key?(resp, "test_pack_for_import") assert admin_conn - |> post("/api/pleroma/emoji/packs/import_from_fs") + |> get("/api/pleroma/emoji/packs/import") |> json_response(200) == ["test_pack_for_import"] resp = conn |> get("/api/pleroma/emoji/packs") |> json_response(200) @@ -747,7 +685,7 @@ test "filesystem import", %{admin_conn: admin_conn, conn: conn} do File.write!("#{@emoji_path}/test_pack_for_import/emoji.txt", emoji_txt_content) assert admin_conn - |> post("/api/pleroma/emoji/packs/import_from_fs") + |> get("/api/pleroma/emoji/packs/import") |> json_response(200) == ["test_pack_for_import"] resp = conn |> get("/api/pleroma/emoji/packs") |> json_response(200) From 9855018425f073dec11e35e624185c6e939f33fb Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Sat, 28 Mar 2020 21:21:23 +0300 Subject: [PATCH 033/156] changelog entry --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a8589bbdc..65dd1b9c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [unreleased] + +### Changed +
+ API Changes +- **Breaking:** Emoji API: changed methods and renamed routes. +
+ ### Removed - **Breaking:** removed `with_move` parameter from notifications timeline. From 36abeedf9fdd5f90c2c03a4366f8d2cc563f9386 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Mon, 30 Mar 2020 09:09:27 +0300 Subject: [PATCH 034/156] error rename --- lib/pleroma/emoji/pack.ex | 2 +- lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/emoji/pack.ex b/lib/pleroma/emoji/pack.ex index eb50e52fa..242344374 100644 --- a/lib/pleroma/emoji/pack.ex +++ b/lib/pleroma/emoji/pack.ex @@ -188,7 +188,7 @@ def import_from_filesystem do {:ok, names} else - {:ok, %{access: _}} -> {:error, :not_writable} + {:ok, %{access: _}} -> {:error, :no_read_write} e -> e end end diff --git a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex index 83a7f03e8..7af9d38a1 100644 --- a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex @@ -287,7 +287,7 @@ def import_from_filesystem(conn, _params) do with {:ok, names} <- Pack.import_from_filesystem() do json(conn, names) else - {:error, :not_writable} -> + {:error, :no_read_write} -> conn |> put_status(:internal_server_error) |> json(%{error: "Error: emoji pack directory must be writable"}) From 1c1b7e22afd25c5d1c4ff71d03a08ee39149fca1 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Mon, 30 Mar 2020 10:07:37 +0300 Subject: [PATCH 035/156] list of options for pack metadata --- docs/API/pleroma_api.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index 65d22980b..dc39c8b0b 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -361,6 +361,12 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Authentication: required * Params: * `metadata`: metadata to replace the old one + * `license`: Pack license + * `homepage`: Pack home page url + * `description`: Pack description + * `fallback-src`: Fallback url to download pack from + * `fallback-src-sha256`: SHA256 encoded for fallback pack archive + * `share-files`: is pack allowed for sharing (boolean) * Response: JSON, updated "metadata" section of the pack and 200 status or 400 if there was a problem with the new metadata (the error is specified in the "error" part of the response JSON) From 1fd40532aeac2c6988e2b439af1350cbf59cd697 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Tue, 31 Mar 2020 11:38:37 +0300 Subject: [PATCH 036/156] docs fix --- docs/API/pleroma_api.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index dc39c8b0b..0c4d5c797 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -345,6 +345,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Params: * `url`: url of the instance to download from * `name`: pack to download from that instance + * `as`: (*optional*) name how to save pack * Response: JSON, "ok" with 200 status if the pack was downloaded, or 500 if there were errors downloading the pack @@ -357,7 +358,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa ## `PATCH /api/pleroma/emoji/packs/:name` ### Updates (replaces) pack metadata -* Method `POST` +* Method `PATCH` * Authentication: required * Params: * `metadata`: metadata to replace the old one From 631e8c1febb32910a8e44c7c39790c9364620567 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Wed, 1 Apr 2020 13:57:27 +0300 Subject: [PATCH 037/156] docs update --- docs/API/pleroma_api.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index 0c4d5c797..b927be026 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -383,10 +383,10 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Method `POST` * Authentication: required * Params: - * `file`: uploaded file or link to remote file. + * `file`: file needs to be uploaded with the multipart request or link to remote file. * `shortcode`: (*optional*) shortcode for new emoji, must be uniq for all emoji. If not sended, shortcode will be taken from original filename. * `filename`: (*optional*) new emoji file name. If not specified will be taken from original filename. -* Response: JSON, list of files for updated pack (hasmap -> shortcode => filename) with status 200, either error status with error message. +* Response: JSON, list of files for updated pack (hashmap -> shortcode => filename) with status 200, either error status with error message. ## `PATCH /api/pleroma/emoji/packs/:name/files` ### Update emoji file from pack @@ -397,7 +397,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * `new_shortcode`: new emoji file shortcode * `new_filename`: new filename for emoji file * `force`: (*optional*) with true value to overwrite existing emoji with new shortcode -* Response: JSON, list with updated files for updated pack (hasmap -> shortcode => filename) with status 200, either error status with error message. +* Response: JSON, list with updated files for updated pack (hashmap -> shortcode => filename) with status 200, either error status with error message. ## `DELETE /api/pleroma/emoji/packs/:name/files` ### Delete emoji file from pack @@ -405,7 +405,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Authentication: required * Params: * `shortcode`: emoji file shortcode -* Response: JSON, list with updated files for updated pack (hasmap -> shortcode => filename) with status 200, either error status with error message. +* Response: JSON, list with updated files for updated pack (hashmap -> shortcode => filename) with status 200, either error status with error message. ## `GET /api/pleroma/emoji/packs` ### Lists local custom emoji packs @@ -422,7 +422,7 @@ The status posting endpoint takes an additional parameter, `in_reply_to_conversa * Response: JSON, pack json with `files` and `pack` keys with 200 status or 404 if the pack does not exist ## `GET /api/pleroma/emoji/packs/:name/archive` -### Requests a local pack from the instance +### Requests a local pack archive from the instance * Method `GET` * Authentication: not required * Params: None From 4dc5302f455e56d3c2cb669e8a70f52457690a86 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 15:26:23 +0200 Subject: [PATCH 038/156] Transmogrifier: Handle incoming deletes for non-user objects. --- .../web/activity_pub/object_validator.ex | 3 +- lib/pleroma/web/activity_pub/side_effects.ex | 12 ++++++++ .../web/activity_pub/transmogrifier.ex | 29 ++----------------- test/web/activity_pub/side_effects_test.exs | 23 +++++++++++++++ .../transmogrifier/delete_handling_test.exs | 6 ++-- 5 files changed, 42 insertions(+), 31 deletions(-) diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex index 016f6e7a2..32f606917 100644 --- a/lib/pleroma/web/activity_pub/object_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validator.ex @@ -11,8 +11,9 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidator do alias Pleroma.Object alias Pleroma.User - alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator alias Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator + alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator + alias Pleroma.Web.ActivityPub.ObjectValidators.Types @spec validate(map(), keyword()) :: {:ok, map(), keyword()} | {:error, any()} def validate(object, meta) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 5981e7545..93698a834 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -28,6 +28,18 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do result end + # Tasks this handles: + # - Delete create activity + # - Replace object with Tombstone + # - Set up notification + def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do + with %Object{} = deleted_object <- Object.normalize(deleted_object), + {:ok, _, _} <- Object.delete(deleted_object) do + Notification.create_notifications(object) + {:ok, object, meta} + end + end + # Nothing to do def handle(object, meta) do {:ok, object, meta} diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index 09119137b..855aab8d4 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -729,36 +729,13 @@ def handle_incoming( end end - # TODO: We presently assume that any actor on the same origin domain as the object being - # deleted has the rights to delete that object. A better way to validate whether or not - # the object should be deleted is to refetch the object URI, which should return either - # an error or a tombstone. This would allow us to verify that a deletion actually took - # place. def handle_incoming( - %{"type" => "Delete", "object" => object_id, "actor" => actor, "id" => id} = data, + %{"type" => "Delete"} = data, _options ) do - object_id = Utils.get_ap_id(object_id) - - with actor <- Containment.get_actor(data), - {:ok, %User{} = actor} <- User.get_or_fetch_by_ap_id(actor), - {:ok, object} <- get_obj_helper(object_id), - :ok <- Containment.contain_origin(actor.ap_id, object.data), - {:ok, activity} <- - ActivityPub.delete(object, local: false, activity_id: id, actor: actor.ap_id) do + with {:ok, %User{}} <- ObjectValidator.fetch_actor(data), + {:ok, activity, _} <- Pipeline.common_pipeline(data, local: false) do {:ok, activity} - else - nil -> - case User.get_cached_by_ap_id(object_id) do - %User{ap_id: ^actor} = user -> - User.delete(user) - - nil -> - :error - end - - _e -> - :error end end diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index 0b6b55156..eec9488e7 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -5,6 +5,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do use Pleroma.DataCase + alias Pleroma.Activity alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Repo @@ -15,6 +16,28 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do import Pleroma.Factory + describe "delete objects" do + setup do + user = insert(:user) + {:ok, post} = CommonAPI.post(user, %{"status" => "hey"}) + object = Object.normalize(post) + {:ok, delete_data, _meta} = Builder.delete(user, object.data["id"]) + {:ok, delete, _meta} = ActivityPub.persist(delete_data, local: true) + %{user: user, delete: delete, post: post, object: object} + end + + test "it handles object deletions", %{delete: delete, post: post, object: object} do + # In object deletions, the object is replaced by a tombstone and the + # create activity is deleted + + {:ok, _delete, _} = SideEffects.handle(delete) + + object = Object.get_by_id(object.id) + assert object.data["type"] == "Tombstone" + refute Activity.get_by_id(post.id) + end + end + describe "like objects" do setup do poster = insert(:user) diff --git a/test/web/activity_pub/transmogrifier/delete_handling_test.exs b/test/web/activity_pub/transmogrifier/delete_handling_test.exs index c15de5a95..64c908a05 100644 --- a/test/web/activity_pub/transmogrifier/delete_handling_test.exs +++ b/test/web/activity_pub/transmogrifier/delete_handling_test.exs @@ -68,7 +68,7 @@ test "it fails for incoming deletes with spoofed origin" do |> Map.put("object", object) assert capture_log(fn -> - :error = Transmogrifier.handle_incoming(data) + {:error, _} = Transmogrifier.handle_incoming(data) end) =~ "[error] Could not decode user at fetch http://mastodon.example.org/users/gargron, {:error, :nxdomain}" @@ -97,9 +97,7 @@ test "it fails for incoming user deletes with spoofed origin" do |> Poison.decode!() |> Map.put("actor", ap_id) - assert capture_log(fn -> - assert :error == Transmogrifier.handle_incoming(data) - end) =~ "Object containment failed" + assert match?({:error, _}, Transmogrifier.handle_incoming(data)) assert User.get_cached_by_ap_id(ap_id) end From 1fb383f368b861d7aea77770ba7be6e3dfe3468e Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 15:42:30 +0200 Subject: [PATCH 039/156] DeleteValidator: Deleting a user is valid. --- lib/pleroma/web/activity_pub/builder.ex | 15 +++++++++++++-- .../object_validators/common_validations.ex | 11 +++++++++++ .../object_validators/delete_validator.ex | 2 +- test/web/activity_pub/object_validator_test.exs | 7 ++++++- 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/lib/pleroma/web/activity_pub/builder.ex b/lib/pleroma/web/activity_pub/builder.ex index 5cc46c3ea..1345a3a3e 100644 --- a/lib/pleroma/web/activity_pub/builder.ex +++ b/lib/pleroma/web/activity_pub/builder.ex @@ -12,9 +12,20 @@ defmodule Pleroma.Web.ActivityPub.Builder do @spec delete(User.t(), String.t()) :: {:ok, map(), keyword()} def delete(actor, object_id) do - object = Object.normalize(object_id) + object = Object.normalize(object_id, false) - to = (object.data["to"] || []) ++ (object.data["cc"] || []) + user = !object && User.get_cached_by_ap_id(object_id) + + to = + case {object, user} do + {%Object{}, _} -> + # We are deleting an object, address everyone who was originally mentioned + (object.data["to"] || []) ++ (object.data["cc"] || []) + + {_, %User{follower_address: follower_address}} -> + # We are deleting a user, address the followers of that user + [follower_address] + end {:ok, %{ diff --git a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex index e115d9526..d9a629a34 100644 --- a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex +++ b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex @@ -49,4 +49,15 @@ def validate_object_presence(cng, field_name \\ :object) do end end) end + + def validate_object_or_user_presence(cng, field_name \\ :object) do + cng + |> validate_change(field_name, fn field_name, object -> + if Object.get_cached_by_ap_id(object) || User.get_cached_by_ap_id(object) do + [] + else + [{field_name, "can't find object"}] + end + end) + end end diff --git a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex index 0eb31451c..fa1713b50 100644 --- a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex @@ -31,7 +31,7 @@ def validate_data(cng) do |> validate_required([:id, :type, :actor, :to, :cc, :object]) |> validate_inclusion(:type, ["Delete"]) |> validate_same_domain() - |> validate_object_presence() + |> validate_object_or_user_presence() end def validate_same_domain(cng) do diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index ab26d3501..83b21a9bc 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -15,14 +15,19 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidatorTest do {:ok, post_activity} = CommonAPI.post(user, %{"status" => "cancel me daddy"}) {:ok, valid_post_delete, _} = Builder.delete(user, post_activity.data["object"]) + {:ok, valid_user_delete, _} = Builder.delete(user, user.ap_id) - %{user: user, valid_post_delete: valid_post_delete} + %{user: user, valid_post_delete: valid_post_delete, valid_user_delete: valid_user_delete} end test "it is valid for a post deletion", %{valid_post_delete: valid_post_delete} do assert match?({:ok, _, _}, ObjectValidator.validate(valid_post_delete, [])) end + test "it is valid for a user deletion", %{valid_user_delete: valid_user_delete} do + assert match?({:ok, _, _}, ObjectValidator.validate(valid_user_delete, [])) + end + test "it's invalid if the id is missing", %{valid_post_delete: valid_post_delete} do no_id = valid_post_delete From 417eed4a2b10b0a1fd916839ddb03d0345966123 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 15:57:27 +0200 Subject: [PATCH 040/156] SideEffects: Handle deletions. --- lib/pleroma/web/activity_pub/side_effects.ex | 22 ++++++++++++++++++-- test/web/activity_pub/side_effects_test.exs | 14 ++++++++++++- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 93698a834..ac1d4c222 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -7,6 +7,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do """ alias Pleroma.Notification alias Pleroma.Object + alias Pleroma.User alias Pleroma.Web.ActivityPub.Utils def handle(object, meta \\ []) @@ -33,10 +34,27 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do # - Replace object with Tombstone # - Set up notification def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do - with %Object{} = deleted_object <- Object.normalize(deleted_object), - {:ok, _, _} <- Object.delete(deleted_object) do + deleted_object = + Object.normalize(deleted_object, false) || User.get_cached_by_ap_id(deleted_object) + + result = + case deleted_object do + %Object{} -> + with {:ok, _, _} <- Object.delete(deleted_object) do + :ok + end + + %User{} -> + with {:ok, _} <- User.delete(deleted_object) do + :ok + end + end + + if result == :ok do Notification.create_notifications(object) {:ok, object, meta} + else + {:error, result} end end diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index eec9488e7..b3d0addc7 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -3,12 +3,15 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.ActivityPub.SideEffectsTest do + use Oban.Testing, repo: Pleroma.Repo use Pleroma.DataCase alias Pleroma.Activity alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Repo + alias Pleroma.User + alias Pleroma.Tests.ObanHelpers alias Pleroma.Web.ActivityPub.ActivityPub alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.ActivityPub.SideEffects @@ -22,8 +25,10 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do {:ok, post} = CommonAPI.post(user, %{"status" => "hey"}) object = Object.normalize(post) {:ok, delete_data, _meta} = Builder.delete(user, object.data["id"]) + {:ok, delete_user_data, _meta} = Builder.delete(user, user.ap_id) {:ok, delete, _meta} = ActivityPub.persist(delete_data, local: true) - %{user: user, delete: delete, post: post, object: object} + {:ok, delete_user, _meta} = ActivityPub.persist(delete_user_data, local: true) + %{user: user, delete: delete, post: post, object: object, delete_user: delete_user} end test "it handles object deletions", %{delete: delete, post: post, object: object} do @@ -36,6 +41,13 @@ test "it handles object deletions", %{delete: delete, post: post, object: object assert object.data["type"] == "Tombstone" refute Activity.get_by_id(post.id) end + + test "it handles user deletions", %{delete_user: delete, user: user} do + {:ok, _delete, _} = SideEffects.handle(delete) + ObanHelpers.perform_all() + + refute User.get_cached_by_ap_id(user.ap_id) + end end describe "like objects" do From c9bfa51ea9c0048ffa4c0d3e28c196da2f38e384 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 15:58:37 +0200 Subject: [PATCH 041/156] Credo fixes. --- test/web/activity_pub/side_effects_test.exs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index b3d0addc7..fffe0ca38 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -10,8 +10,8 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Repo - alias Pleroma.User alias Pleroma.Tests.ObanHelpers + alias Pleroma.User alias Pleroma.Web.ActivityPub.ActivityPub alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.ActivityPub.SideEffects From fdd8e7f27697a7128e4e92020cdff6389c999acc Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 16:15:38 +0200 Subject: [PATCH 042/156] CommonAPI: Use common pipeline for deletions. --- lib/pleroma/web/activity_pub/side_effects.ex | 6 ++++-- lib/pleroma/web/common_api/common_api.ex | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index ac1d4c222..ef58fa399 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -30,7 +30,7 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do end # Tasks this handles: - # - Delete create activity + # - Delete and unpins the create activity # - Replace object with Tombstone # - Set up notification def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do @@ -40,7 +40,9 @@ def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, result = case deleted_object do %Object{} -> - with {:ok, _, _} <- Object.delete(deleted_object) do + with {:ok, _, activity} <- Object.delete(deleted_object), + %User{} = user <- User.get_cached_by_ap_id(deleted_object.data["actor"]) do + User.remove_pinnned_activity(user, activity) :ok end diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index d1efe0c36..7cb8e47d0 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -77,8 +77,8 @@ def delete(activity_id, user) do {:find_activity, Activity.get_by_id_with_object(activity_id)}, %Object{} = object <- Object.normalize(activity), true <- User.superuser?(user) || user.ap_id == object.data["actor"], - {:ok, _} <- unpin(activity_id, user), - {:ok, delete} <- ActivityPub.delete(object) do + {:ok, delete_data, _} <- Builder.delete(user, object.data["id"]), + {:ok, delete, _} <- Pipeline.common_pipeline(delete_data, local: true) do {:ok, delete} else {:find_activity, _} -> {:error, :not_found} From 14c667219334c492ae0549ad0f1e062085d7d412 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 16:49:41 +0200 Subject: [PATCH 043/156] AP C2S: Use common pipelin for deletes. --- lib/pleroma/web/activity_pub/activity_pub_controller.ex | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/activity_pub_controller.ex b/lib/pleroma/web/activity_pub/activity_pub_controller.ex index d625530ec..e68d0763e 100644 --- a/lib/pleroma/web/activity_pub/activity_pub_controller.ex +++ b/lib/pleroma/web/activity_pub/activity_pub_controller.ex @@ -414,7 +414,8 @@ defp handle_user_activity(%User{} = user, %{"type" => "Create"} = params) do defp handle_user_activity(%User{} = user, %{"type" => "Delete"} = params) do with %Object{} = object <- Object.normalize(params["object"]), true <- user.is_moderator || user.ap_id == object.data["actor"], - {:ok, delete} <- ActivityPub.delete(object) do + {:ok, delete_data, _} <- Builder.delete(user, object.data["id"]), + {:ok, delete, _} <- Pipeline.common_pipeline(delete_data, local: true) do {:ok, delete} else _ -> {:error, dgettext("errors", "Can't delete object")} From 4a487e4d0b744edac0d83306b80e4bd0cdef5358 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Thu, 30 Apr 2020 17:50:57 +0300 Subject: [PATCH 044/156] fix for auth check --- .../web/pleroma_api/controllers/emoji_api_controller.ex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex index 7af9d38a1..d276b96a4 100644 --- a/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/emoji_api_controller.ex @@ -7,7 +7,7 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIController do Pleroma.Plugs.OAuthScopesPlug, %{scopes: ["write"], admin: true} when action in [ - :import, + :import_from_filesystem, :remote, :download, :create, @@ -22,7 +22,7 @@ defmodule Pleroma.Web.PleromaAPI.EmojiAPIController do plug( :skip_plug, [Pleroma.Plugs.OAuthScopesPlug, Pleroma.Plugs.ExpectPublicOrAuthenticatedCheckPlug] - when action in [:download_shared, :list_packs, :list_from] + when action in [:archive, :show, :list] ) def remote(conn, %{"url" => url}) do From 2c4844237f294d27f58737f9694f77b1cfcb10e7 Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Thu, 30 Apr 2020 18:19:51 +0300 Subject: [PATCH 045/156] Refactoring of :if_func / :unless_func plug options (general availability). Added tests for Pleroma.Web.Plug. --- .../plugs/ensure_authenticated_plug.ex | 17 +--- lib/pleroma/plugs/federating_plug.ex | 3 + .../activity_pub/activity_pub_controller.ex | 2 +- lib/pleroma/web/feed/user_controller.ex | 2 +- lib/pleroma/web/ostatus/ostatus_controller.ex | 2 +- .../web/static_fe/static_fe_controller.ex | 2 +- lib/pleroma/web/web.ex | 10 +- test/plugs/ensure_authenticated_plug_test.exs | 4 +- test/web/plugs/plug_test.exs | 91 +++++++++++++++++++ 9 files changed, 109 insertions(+), 24 deletions(-) create mode 100644 test/web/plugs/plug_test.exs diff --git a/lib/pleroma/plugs/ensure_authenticated_plug.ex b/lib/pleroma/plugs/ensure_authenticated_plug.ex index 9c8f5597f..9d5176e2b 100644 --- a/lib/pleroma/plugs/ensure_authenticated_plug.ex +++ b/lib/pleroma/plugs/ensure_authenticated_plug.ex @@ -19,22 +19,7 @@ def perform(%{assigns: %{user: %User{}}} = conn, _) do conn end - def perform(conn, options) do - perform = - cond do - options[:if_func] -> options[:if_func].() - options[:unless_func] -> !options[:unless_func].() - true -> true - end - - if perform do - fail(conn) - else - conn - end - end - - def fail(conn) do + def perform(conn, _) do conn |> render_error(:forbidden, "Invalid credentials.") |> halt() diff --git a/lib/pleroma/plugs/federating_plug.ex b/lib/pleroma/plugs/federating_plug.ex index 7d947339f..09038f3c6 100644 --- a/lib/pleroma/plugs/federating_plug.ex +++ b/lib/pleroma/plugs/federating_plug.ex @@ -19,6 +19,9 @@ def call(conn, _opts) do def federating?, do: Pleroma.Config.get([:instance, :federating]) + # Definition for the use in :if_func / :unless_func plug options + def federating?(_conn), do: federating?() + defp fail(conn) do conn |> put_status(404) diff --git a/lib/pleroma/web/activity_pub/activity_pub_controller.ex b/lib/pleroma/web/activity_pub/activity_pub_controller.ex index d625530ec..a909516be 100644 --- a/lib/pleroma/web/activity_pub/activity_pub_controller.ex +++ b/lib/pleroma/web/activity_pub/activity_pub_controller.ex @@ -34,7 +34,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubController do plug( EnsureAuthenticatedPlug, - [unless_func: &FederatingPlug.federating?/0] when action not in @federating_only_actions + [unless_func: &FederatingPlug.federating?/1] when action not in @federating_only_actions ) plug( diff --git a/lib/pleroma/web/feed/user_controller.ex b/lib/pleroma/web/feed/user_controller.ex index e27f85929..1b72e23dc 100644 --- a/lib/pleroma/web/feed/user_controller.ex +++ b/lib/pleroma/web/feed/user_controller.ex @@ -27,7 +27,7 @@ def feed_redirect(%{assigns: %{format: format}} = conn, _params) when format in ["json", "activity+json"] do with %{halted: false} = conn <- Pleroma.Plugs.EnsureAuthenticatedPlug.call(conn, - unless_func: &Pleroma.Web.FederatingPlug.federating?/0 + unless_func: &Pleroma.Web.FederatingPlug.federating?/1 ) do ActivityPubController.call(conn, :user) end diff --git a/lib/pleroma/web/ostatus/ostatus_controller.ex b/lib/pleroma/web/ostatus/ostatus_controller.ex index 6fd3cfce5..6971cd9f8 100644 --- a/lib/pleroma/web/ostatus/ostatus_controller.ex +++ b/lib/pleroma/web/ostatus/ostatus_controller.ex @@ -17,7 +17,7 @@ defmodule Pleroma.Web.OStatus.OStatusController do alias Pleroma.Web.Router plug(Pleroma.Plugs.EnsureAuthenticatedPlug, - unless_func: &Pleroma.Web.FederatingPlug.federating?/0 + unless_func: &Pleroma.Web.FederatingPlug.federating?/1 ) plug( diff --git a/lib/pleroma/web/static_fe/static_fe_controller.ex b/lib/pleroma/web/static_fe/static_fe_controller.ex index 7a35238d7..c3efb6651 100644 --- a/lib/pleroma/web/static_fe/static_fe_controller.ex +++ b/lib/pleroma/web/static_fe/static_fe_controller.ex @@ -18,7 +18,7 @@ defmodule Pleroma.Web.StaticFE.StaticFEController do plug(:assign_id) plug(Pleroma.Plugs.EnsureAuthenticatedPlug, - unless_func: &Pleroma.Web.FederatingPlug.federating?/0 + unless_func: &Pleroma.Web.FederatingPlug.federating?/1 ) @page_keys ["max_id", "min_id", "limit", "since_id", "order"] diff --git a/lib/pleroma/web/web.ex b/lib/pleroma/web/web.ex index 08e42a7e5..4f9281851 100644 --- a/lib/pleroma/web/web.ex +++ b/lib/pleroma/web/web.ex @@ -200,11 +200,17 @@ def skip_plug(conn) do @impl Plug @doc """ - If marked as skipped, returns `conn`, otherwise calls `perform/2`. + Before-plug hook that + * ensures the plug is not skipped + * processes `:if_func` / `:unless_func` functional pre-run conditions + * adds plug to the list of called plugs and calls `perform/2` if checks are passed + Note: multiple invocations of the same plug (with different or same options) are allowed. """ def call(%Plug.Conn{} = conn, options) do - if PlugHelper.plug_skipped?(conn, __MODULE__) do + if PlugHelper.plug_skipped?(conn, __MODULE__) || + (options[:if_func] && !options[:if_func].(conn)) || + (options[:unless_func] && options[:unless_func].(conn)) do conn else conn = diff --git a/test/plugs/ensure_authenticated_plug_test.exs b/test/plugs/ensure_authenticated_plug_test.exs index 689fe757f..4e6142aab 100644 --- a/test/plugs/ensure_authenticated_plug_test.exs +++ b/test/plugs/ensure_authenticated_plug_test.exs @@ -27,8 +27,8 @@ test "it continues if a user is assigned", %{conn: conn} do describe "with :if_func / :unless_func options" do setup do %{ - true_fn: fn -> true end, - false_fn: fn -> false end + true_fn: fn _conn -> true end, + false_fn: fn _conn -> false end } end diff --git a/test/web/plugs/plug_test.exs b/test/web/plugs/plug_test.exs new file mode 100644 index 000000000..943e484e7 --- /dev/null +++ b/test/web/plugs/plug_test.exs @@ -0,0 +1,91 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.PlugTest do + @moduledoc "Tests for the functionality added via `use Pleroma.Web, :plug`" + + alias Pleroma.Plugs.ExpectAuthenticatedCheckPlug + alias Pleroma.Plugs.ExpectPublicOrAuthenticatedCheckPlug + alias Pleroma.Plugs.PlugHelper + + import Mock + + use Pleroma.Web.ConnCase + + describe "when plug is skipped, " do + setup_with_mocks( + [ + {ExpectPublicOrAuthenticatedCheckPlug, [:passthrough], []} + ], + %{conn: conn} + ) do + conn = ExpectPublicOrAuthenticatedCheckPlug.skip_plug(conn) + %{conn: conn} + end + + test "it neither adds plug to called plugs list nor calls `perform/2`, " <> + "regardless of :if_func / :unless_func options", + %{conn: conn} do + for opts <- [%{}, %{if_func: fn _ -> true end}, %{unless_func: fn _ -> false end}] do + ret_conn = ExpectPublicOrAuthenticatedCheckPlug.call(conn, opts) + + refute called(ExpectPublicOrAuthenticatedCheckPlug.perform(:_, :_)) + refute PlugHelper.plug_called?(ret_conn, ExpectPublicOrAuthenticatedCheckPlug) + end + end + end + + describe "when plug is NOT skipped, " do + setup_with_mocks([{ExpectAuthenticatedCheckPlug, [:passthrough], []}]) do + :ok + end + + test "with no pre-run checks, adds plug to called plugs list and calls `perform/2`", %{ + conn: conn + } do + ret_conn = ExpectAuthenticatedCheckPlug.call(conn, %{}) + + assert called(ExpectAuthenticatedCheckPlug.perform(ret_conn, :_)) + assert PlugHelper.plug_called?(ret_conn, ExpectAuthenticatedCheckPlug) + end + + test "when :if_func option is given, calls the plug only if provided function evals tru-ish", + %{conn: conn} do + ret_conn = ExpectAuthenticatedCheckPlug.call(conn, %{if_func: fn _ -> false end}) + + refute called(ExpectAuthenticatedCheckPlug.perform(:_, :_)) + refute PlugHelper.plug_called?(ret_conn, ExpectAuthenticatedCheckPlug) + + ret_conn = ExpectAuthenticatedCheckPlug.call(conn, %{if_func: fn _ -> true end}) + + assert called(ExpectAuthenticatedCheckPlug.perform(ret_conn, :_)) + assert PlugHelper.plug_called?(ret_conn, ExpectAuthenticatedCheckPlug) + end + + test "if :unless_func option is given, calls the plug only if provided function evals falsy", + %{conn: conn} do + ret_conn = ExpectAuthenticatedCheckPlug.call(conn, %{unless_func: fn _ -> true end}) + + refute called(ExpectAuthenticatedCheckPlug.perform(:_, :_)) + refute PlugHelper.plug_called?(ret_conn, ExpectAuthenticatedCheckPlug) + + ret_conn = ExpectAuthenticatedCheckPlug.call(conn, %{unless_func: fn _ -> false end}) + + assert called(ExpectAuthenticatedCheckPlug.perform(ret_conn, :_)) + assert PlugHelper.plug_called?(ret_conn, ExpectAuthenticatedCheckPlug) + end + + test "allows a plug to be called multiple times (even if it's in called plugs list)", %{ + conn: conn + } do + conn = ExpectAuthenticatedCheckPlug.call(conn, %{an_option: :value1}) + assert called(ExpectAuthenticatedCheckPlug.perform(conn, %{an_option: :value1})) + + assert PlugHelper.plug_called?(conn, ExpectAuthenticatedCheckPlug) + + conn = ExpectAuthenticatedCheckPlug.call(conn, %{an_option: :value2}) + assert called(ExpectAuthenticatedCheckPlug.perform(conn, %{an_option: :value2})) + end + end +end From bef34568f0d005baabca266b99ac0f6e620e6899 Mon Sep 17 00:00:00 2001 From: eugenijm Date: Thu, 30 Apr 2020 15:02:35 +0300 Subject: [PATCH 046/156] Dismiss the follow request notification on rejection --- lib/pleroma/notification.ex | 10 ++++++++++ lib/pleroma/web/common_api/common_api.ex | 2 ++ test/notification_test.exs | 10 ++++++++++ 3 files changed, 22 insertions(+) diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index aaa675253..9a109dfab 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -261,6 +261,16 @@ def destroy_multiple(%{id: user_id} = _user, ids) do |> Repo.delete_all() end + def dismiss(%Pleroma.Activity{} = activity) do + Notification + |> where([n], n.activity_id == ^activity.id) + |> Repo.delete_all() + |> case do + {_, notifications} -> {:ok, notifications} + _ -> {:error, "Cannot dismiss notification"} + end + end + def dismiss(%{id: user_id} = _user, id) do notification = Repo.get(Notification, id) diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index d1efe0c36..4112e441a 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -7,6 +7,7 @@ defmodule Pleroma.Web.CommonAPI do alias Pleroma.ActivityExpiration alias Pleroma.Conversation.Participation alias Pleroma.FollowingRelationship + alias Pleroma.Notification alias Pleroma.Object alias Pleroma.ThreadMute alias Pleroma.User @@ -61,6 +62,7 @@ def reject_follow_request(follower, followed) do with %Activity{} = follow_activity <- Utils.fetch_latest_follow(follower, followed), {:ok, follow_activity} <- Utils.update_follow_state_for_all(follow_activity, "reject"), {:ok, _relationship} <- FollowingRelationship.update(follower, followed, :follow_reject), + {:ok, _notifications} <- Notification.dismiss(follow_activity), {:ok, _activity} <- ActivityPub.reject(%{ to: [follower.ap_id], diff --git a/test/notification_test.exs b/test/notification_test.exs index 6ad824c57..0e9ffcb18 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -362,6 +362,16 @@ test "it doesn't create a notification for follow-unfollow-follow chains" do notification_id = notification.id assert [%{id: ^notification_id}] = Notification.for_user(followed_user) end + + test "dismisses the notification on follow request rejection" do + clear_config([:notifications, :enable_follow_request_notifications], true) + user = insert(:user, locked: true) + follower = insert(:user) + {:ok, _, _, _follow_activity} = CommonAPI.follow(follower, user) + assert [notification] = Notification.for_user(user) + {:ok, _follower} = CommonAPI.reject_follow_request(follower, user) + assert [] = Notification.for_user(user) + end end describe "get notification" do From 143353432a562c49f4432e74a549321c5b43650d Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 17:52:29 +0200 Subject: [PATCH 047/156] StreamerTest: Separate deletion test. --- test/web/streamer/streamer_test.exs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/test/web/streamer/streamer_test.exs b/test/web/streamer/streamer_test.exs index 8b8d8af6c..3c0f240f5 100644 --- a/test/web/streamer/streamer_test.exs +++ b/test/web/streamer/streamer_test.exs @@ -210,6 +210,12 @@ test "it sends to public" do Worker.push_to_socket(topics, "public", activity) Task.await(task) + end + + test "works for deletions" do + user = insert(:user) + other_user = insert(:user) + {:ok, activity} = CommonAPI.post(other_user, %{"status" => "Test"}) task = Task.async(fn -> From 4500fdc04c528331f7289745dc08a34ce18d4da7 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 17:53:02 +0200 Subject: [PATCH 048/156] DeleteValidator: Add internal helper field after validation. --- .../object_validators/delete_validator.ex | 16 ++++++++++++++++ test/web/activity_pub/object_validator_test.exs | 4 +++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex index fa1713b50..951cc1414 100644 --- a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex @@ -5,6 +5,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator do use Ecto.Schema + alias Pleroma.Activity alias Pleroma.Web.ActivityPub.ObjectValidators.Types import Ecto.Changeset @@ -18,6 +19,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator do field(:actor, Types.ObjectID) field(:to, Types.Recipients, default: []) field(:cc, Types.Recipients, default: []) + field(:deleted_activity_id) field(:object, Types.ObjectID) end @@ -26,12 +28,26 @@ def cast_data(data) do |> cast(data, __schema__(:fields)) end + def add_deleted_activity_id(cng) do + object = + cng + |> get_field(:object) + + with %Activity{id: id} <- Activity.get_create_by_object_ap_id(object) do + cng + |> put_change(:deleted_activity_id, id) + else + _ -> cng + end + end + def validate_data(cng) do cng |> validate_required([:id, :type, :actor, :to, :cc, :object]) |> validate_inclusion(:type, ["Delete"]) |> validate_same_domain() |> validate_object_or_user_presence() + |> add_deleted_activity_id() end def validate_same_domain(cng) do diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 83b21a9bc..9e0589722 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -21,7 +21,9 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidatorTest do end test "it is valid for a post deletion", %{valid_post_delete: valid_post_delete} do - assert match?({:ok, _, _}, ObjectValidator.validate(valid_post_delete, [])) + {:ok, valid_post_delete_u, _} = ObjectValidator.validate(valid_post_delete, []) + + assert valid_post_delete_u["deleted_activity_id"] end test "it is valid for a user deletion", %{valid_user_delete: valid_user_delete} do From c832d96fc9fc0b93befdf3a7064a8c9236e96d07 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 17:58:09 +0200 Subject: [PATCH 049/156] SideEffects: Stream out deletes. --- lib/pleroma/web/activity_pub/side_effects.ex | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index ef58fa399..d260e0069 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -9,6 +9,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do alias Pleroma.Object alias Pleroma.User alias Pleroma.Web.ActivityPub.Utils + alias Pleroma.Web.ActivityPub.ActivityPub def handle(object, meta \\ []) @@ -40,9 +41,12 @@ def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, result = case deleted_object do %Object{} -> - with {:ok, _, activity} <- Object.delete(deleted_object), + with {:ok, deleted_object, activity} <- Object.delete(deleted_object), %User{} = user <- User.get_cached_by_ap_id(deleted_object.data["actor"]) do User.remove_pinnned_activity(user, activity) + + ActivityPub.stream_out(object) + ActivityPub.stream_out_participations(deleted_object, user) :ok end From 315b773dd9fa185aef75b115efd90ac92113e6c3 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 17:58:31 +0200 Subject: [PATCH 050/156] ObjectValidator: Refactor. --- test/web/activity_pub/object_validator_test.exs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 9e0589722..1d3646487 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -21,9 +21,9 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidatorTest do end test "it is valid for a post deletion", %{valid_post_delete: valid_post_delete} do - {:ok, valid_post_delete_u, _} = ObjectValidator.validate(valid_post_delete, []) + {:ok, valid_post_delete, _} = ObjectValidator.validate(valid_post_delete, []) - assert valid_post_delete_u["deleted_activity_id"] + assert valid_post_delete["deleted_activity_id"] end test "it is valid for a user deletion", %{valid_user_delete: valid_user_delete} do From 3d0dc58e2e0a84cb46df5339596205f7baceb0a4 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 18:10:36 +0200 Subject: [PATCH 051/156] SideEffectsTest: Test streaming. --- test/web/activity_pub/side_effects_test.exs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index fffe0ca38..f5c57d887 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -18,6 +18,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do alias Pleroma.Web.CommonAPI import Pleroma.Factory + import Mock describe "delete objects" do setup do @@ -33,9 +34,16 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do test "it handles object deletions", %{delete: delete, post: post, object: object} do # In object deletions, the object is replaced by a tombstone and the - # create activity is deleted + # create activity is deleted. - {:ok, _delete, _} = SideEffects.handle(delete) + with_mock Pleroma.Web.ActivityPub.ActivityPub, + stream_out: fn _ -> nil end, + stream_out_participations: fn _, _ -> nil end do + {:ok, delete, _} = SideEffects.handle(delete) + user = User.get_cached_by_ap_id(object.data["actor"]) + assert called(Pleroma.Web.ActivityPub.ActivityPub.stream_out(delete)) + assert called(Pleroma.Web.ActivityPub.ActivityPub.stream_out_participations(object, user)) + end object = Object.get_by_id(object.id) assert object.data["type"] == "Tombstone" From ab60ee17765ee9d7dcb69cbf9c0630b97d4f5a93 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 18:19:39 +0200 Subject: [PATCH 052/156] SideEffects: On deletion, reduce the User note count. --- lib/pleroma/web/activity_pub/side_effects.ex | 2 ++ test/web/activity_pub/side_effects_test.exs | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index d260e0069..4fec3a797 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -34,6 +34,7 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do # - Delete and unpins the create activity # - Replace object with Tombstone # - Set up notification + # - Reduce the user note count def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do deleted_object = Object.normalize(deleted_object, false) || User.get_cached_by_ap_id(deleted_object) @@ -45,6 +46,7 @@ def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, %User{} = user <- User.get_cached_by_ap_id(deleted_object.data["actor"]) do User.remove_pinnned_activity(user, activity) + {:ok, user} = ActivityPub.decrease_note_count_if_public(user, deleted_object) ActivityPub.stream_out(object) ActivityPub.stream_out_participations(deleted_object, user) :ok diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index f5c57d887..06b3400d8 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -32,15 +32,16 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do %{user: user, delete: delete, post: post, object: object, delete_user: delete_user} end - test "it handles object deletions", %{delete: delete, post: post, object: object} do + test "it handles object deletions", %{delete: delete, post: post, object: object, user: user} do # In object deletions, the object is replaced by a tombstone and the # create activity is deleted. - with_mock Pleroma.Web.ActivityPub.ActivityPub, + with_mock Pleroma.Web.ActivityPub.ActivityPub, [:passthrough], stream_out: fn _ -> nil end, stream_out_participations: fn _, _ -> nil end do {:ok, delete, _} = SideEffects.handle(delete) user = User.get_cached_by_ap_id(object.data["actor"]) + assert called(Pleroma.Web.ActivityPub.ActivityPub.stream_out(delete)) assert called(Pleroma.Web.ActivityPub.ActivityPub.stream_out_participations(object, user)) end @@ -48,6 +49,9 @@ test "it handles object deletions", %{delete: delete, post: post, object: object object = Object.get_by_id(object.id) assert object.data["type"] == "Tombstone" refute Activity.get_by_id(post.id) + + user = User.get_by_id(user.id) + assert user.note_count == 0 end test "it handles user deletions", %{delete_user: delete, user: user} do From 60db58a1c6a2f139960d3db19cba08a496e6ccf4 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 18:38:37 +0200 Subject: [PATCH 053/156] Credo fixes. --- lib/pleroma/web/activity_pub/side_effects.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 4fec3a797..cf31de120 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -8,8 +8,8 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do alias Pleroma.Notification alias Pleroma.Object alias Pleroma.User - alias Pleroma.Web.ActivityPub.Utils alias Pleroma.Web.ActivityPub.ActivityPub + alias Pleroma.Web.ActivityPub.Utils def handle(object, meta \\ []) From f1523f9acd61021d5026e8f8f991fa5c21f23b1f Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Thu, 30 Apr 2020 18:55:25 +0200 Subject: [PATCH 054/156] Increase tests on AP C2S Related: https://git.pleroma.social/pleroma/pleroma/-/issues/954 --- .../activity_pub_controller_test.exs | 70 ++++++++++++++----- 1 file changed, 53 insertions(+), 17 deletions(-) diff --git a/test/web/activity_pub/activity_pub_controller_test.exs b/test/web/activity_pub/activity_pub_controller_test.exs index eca526604..6b5913f95 100644 --- a/test/web/activity_pub/activity_pub_controller_test.exs +++ b/test/web/activity_pub/activity_pub_controller_test.exs @@ -765,51 +765,87 @@ test "it requires authentication if instance is NOT federating", %{ end end - describe "POST /users/:nickname/outbox" do - test "it rejects posts from other users / unauthenticated users", %{conn: conn} do - data = File.read!("test/fixtures/activitypub-client-post-activity.json") |> Poison.decode!() + describe "POST /users/:nickname/outbox (C2S)" do + setup do + [ + activity: %{ + "@context" => "https://www.w3.org/ns/activitystreams", + "type" => "Create", + "object" => %{"type" => "Note", "content" => "AP C2S test"}, + "to" => "https://www.w3.org/ns/activitystreams#Public", + "cc" => [] + } + ] + end + + test "it rejects posts from other users / unauthenticated users", %{ + conn: conn, + activity: activity + } do user = insert(:user) other_user = insert(:user) conn = put_req_header(conn, "content-type", "application/activity+json") conn - |> post("/users/#{user.nickname}/outbox", data) + |> post("/users/#{user.nickname}/outbox", activity) |> json_response(403) conn |> assign(:user, other_user) - |> post("/users/#{user.nickname}/outbox", data) + |> post("/users/#{user.nickname}/outbox", activity) |> json_response(403) end - test "it inserts an incoming create activity into the database", %{conn: conn} do - data = File.read!("test/fixtures/activitypub-client-post-activity.json") |> Poison.decode!() + test "it inserts an incoming create activity into the database", %{ + conn: conn, + activity: activity + } do user = insert(:user) - conn = + result = conn |> assign(:user, user) |> put_req_header("content-type", "application/activity+json") - |> post("/users/#{user.nickname}/outbox", data) - - result = json_response(conn, 201) + |> post("/users/#{user.nickname}/outbox", activity) + |> json_response(201) assert Activity.get_by_ap_id(result["id"]) + assert result["object"] + assert %Object{data: object} = Object.normalize(result["object"]) + assert object["content"] == activity["object"]["content"] end - test "it rejects an incoming activity with bogus type", %{conn: conn} do - data = File.read!("test/fixtures/activitypub-client-post-activity.json") |> Poison.decode!() + test "it inserts an incoming sensitive activity into the database", %{ + conn: conn, + activity: activity + } do user = insert(:user) + object = Map.put(activity["object"], "sensitive", true) + activity = Map.put(activity, "object", object) - data = - data - |> Map.put("type", "BadType") + result = + conn + |> assign(:user, user) + |> put_req_header("content-type", "application/activity+json") + |> post("/users/#{user.nickname}/outbox", activity) + |> json_response(201) + + assert Activity.get_by_ap_id(result["id"]) + assert result["object"] + assert %Object{data: object} = Object.normalize(result["object"]) + assert object["sensitive"] == activity["object"]["sensitive"] + assert object["content"] == activity["object"]["content"] + end + + test "it rejects an incoming activity with bogus type", %{conn: conn, activity: activity} do + user = insert(:user) + activity = Map.put(activity, "type", "BadType") conn = conn |> assign(:user, user) |> put_req_header("content-type", "application/activity+json") - |> post("/users/#{user.nickname}/outbox", data) + |> post("/users/#{user.nickname}/outbox", activity) assert json_response(conn, 400) end From 500f5ec14eb02cd1c5a07970a557756b590caab0 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 19:47:13 +0200 Subject: [PATCH 055/156] SideEffects: On deletion, reduce the reply count cache --- lib/pleroma/web/activity_pub/side_effects.ex | 6 ++++++ test/web/activity_pub/side_effects_test.exs | 22 ++++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index cf31de120..39b0f384b 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -35,6 +35,7 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do # - Replace object with Tombstone # - Set up notification # - Reduce the user note count + # - TODO: Reduce the reply count def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do deleted_object = Object.normalize(deleted_object, false) || User.get_cached_by_ap_id(deleted_object) @@ -47,6 +48,11 @@ def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, User.remove_pinnned_activity(user, activity) {:ok, user} = ActivityPub.decrease_note_count_if_public(user, deleted_object) + + if in_reply_to = deleted_object.data["inReplyTo"] do + Object.decrease_replies_count(in_reply_to) + end + ActivityPub.stream_out(object) ActivityPub.stream_out_participations(deleted_object, user) :ok diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index 06b3400d8..ce34eed4c 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -23,19 +23,25 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do describe "delete objects" do setup do user = insert(:user) - {:ok, post} = CommonAPI.post(user, %{"status" => "hey"}) + other_user = insert(:user) + + {:ok, op} = CommonAPI.post(other_user, %{"status" => "big oof"}) + {:ok, post} = CommonAPI.post(user, %{"status" => "hey", "in_reply_to_id" => op}) object = Object.normalize(post) {:ok, delete_data, _meta} = Builder.delete(user, object.data["id"]) {:ok, delete_user_data, _meta} = Builder.delete(user, user.ap_id) {:ok, delete, _meta} = ActivityPub.persist(delete_data, local: true) {:ok, delete_user, _meta} = ActivityPub.persist(delete_user_data, local: true) - %{user: user, delete: delete, post: post, object: object, delete_user: delete_user} + %{user: user, delete: delete, post: post, object: object, delete_user: delete_user, op: op} end - test "it handles object deletions", %{delete: delete, post: post, object: object, user: user} do - # In object deletions, the object is replaced by a tombstone and the - # create activity is deleted. - + test "it handles object deletions", %{ + delete: delete, + post: post, + object: object, + user: user, + op: op + } do with_mock Pleroma.Web.ActivityPub.ActivityPub, [:passthrough], stream_out: fn _ -> nil end, stream_out_participations: fn _, _ -> nil end do @@ -52,6 +58,10 @@ test "it handles object deletions", %{delete: delete, post: post, object: object user = User.get_by_id(user.id) assert user.note_count == 0 + + object = Object.normalize(op.data["object"], false) + + assert object.data["repliesCount"] == 0 end test "it handles user deletions", %{delete_user: delete, user: user} do From 5da08c2b73f9ce1f369434fbd2c11092007e4910 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 19:53:30 +0200 Subject: [PATCH 056/156] SideEffects: Fix comment --- lib/pleroma/web/activity_pub/side_effects.ex | 2 +- test/user_test.exs | 28 +------------------- 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 39b0f384b..139e609f4 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -35,7 +35,7 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do # - Replace object with Tombstone # - Set up notification # - Reduce the user note count - # - TODO: Reduce the reply count + # - Reduce the reply count def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do deleted_object = Object.normalize(deleted_object, false) || User.get_cached_by_ap_id(deleted_object) diff --git a/test/user_test.exs b/test/user_test.exs index 347c5be72..23afc605c 100644 --- a/test/user_test.exs +++ b/test/user_test.exs @@ -15,7 +15,6 @@ defmodule Pleroma.UserTest do use Pleroma.DataCase use Oban.Testing, repo: Pleroma.Repo - import Mock import Pleroma.Factory import ExUnit.CaptureLog @@ -1131,7 +1130,7 @@ test ".delete_user_activities deletes all create activities", %{user: user} do User.delete_user_activities(user) - # TODO: Remove favorites, repeats, delete activities. + # TODO: Test removal favorites, repeats, delete activities. refute Activity.get_by_id(activity.id) end @@ -1180,31 +1179,6 @@ test "it deletes a user, all follow relationships and all activities", %{user: u refute Activity.get_by_id(like_two.id) refute Activity.get_by_id(repeat.id) end - - test_with_mock "it sends out User Delete activity", - %{user: user}, - Pleroma.Web.ActivityPub.Publisher, - [:passthrough], - [] do - Pleroma.Config.put([:instance, :federating], true) - - {:ok, follower} = User.get_or_fetch_by_ap_id("http://mastodon.example.org/users/admin") - {:ok, _} = User.follow(follower, user) - - {:ok, job} = User.delete(user) - {:ok, _user} = ObanHelpers.perform(job) - - assert ObanHelpers.member?( - %{ - "op" => "publish_one", - "params" => %{ - "inbox" => "http://mastodon.example.org/inbox", - "id" => "pleroma:fakeid" - } - }, - all_enqueued(worker: Pleroma.Workers.PublisherWorker) - ) - end end test "get_public_key_for_ap_id fetches a user that's not in the db" do From 3b443cbc1dd79b0450e17192aa51a00282b54d2e Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 20:08:25 +0200 Subject: [PATCH 057/156] User: Use common pipeline to delete user activities --- lib/pleroma/user.ex | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index b451202b2..c780f99eb 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -29,7 +29,9 @@ defmodule Pleroma.User do alias Pleroma.UserRelationship alias Pleroma.Web alias Pleroma.Web.ActivityPub.ActivityPub + alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.ActivityPub.ObjectValidators.Types + alias Pleroma.Web.ActivityPub.Pipeline alias Pleroma.Web.ActivityPub.Utils alias Pleroma.Web.CommonAPI alias Pleroma.Web.CommonAPI.Utils, as: CommonUtils @@ -1427,8 +1429,6 @@ def perform(:force_password_reset, user), do: force_password_reset(user) @spec perform(atom(), User.t()) :: {:ok, User.t()} def perform(:delete, %User{} = user) do - {:ok, _user} = ActivityPub.delete(user) - # Remove all relationships user |> get_followers() @@ -1531,21 +1531,23 @@ def follow_import(%User{} = follower, followed_identifiers) }) end - def delete_user_activities(%User{ap_id: ap_id}) do + def delete_user_activities(%User{ap_id: ap_id} = user) do ap_id |> Activity.Queries.by_actor() |> RepoStreamer.chunk_stream(50) - |> Stream.each(fn activities -> Enum.each(activities, &delete_activity/1) end) + |> Stream.each(fn activities -> + Enum.each(activities, fn activity -> delete_activity(activity, user) end) + end) |> Stream.run() end - defp delete_activity(%{data: %{"type" => "Create"}} = activity) do - activity - |> Object.normalize() - |> ActivityPub.delete() + defp delete_activity(%{data: %{"type" => "Create", "object" => object}}, user) do + {:ok, delete_data, _} = Builder.delete(user, object) + + Pipeline.common_pipeline(delete_data, local: true) end - defp delete_activity(%{data: %{"type" => "Like"}} = activity) do + defp delete_activity(%{data: %{"type" => "Like"}} = activity, _user) do object = Object.normalize(activity) activity.actor @@ -1553,7 +1555,7 @@ defp delete_activity(%{data: %{"type" => "Like"}} = activity) do |> ActivityPub.unlike(object) end - defp delete_activity(%{data: %{"type" => "Announce"}} = activity) do + defp delete_activity(%{data: %{"type" => "Announce"}} = activity, _user) do object = Object.normalize(activity) activity.actor @@ -1561,7 +1563,7 @@ defp delete_activity(%{data: %{"type" => "Announce"}} = activity) do |> ActivityPub.unannounce(object) end - defp delete_activity(_activity), do: "Doing nothing" + defp delete_activity(_activity, _user), do: "Doing nothing" def html_filter_policy(%User{no_rich_text: true}) do Pleroma.HTML.Scrubber.TwitterText From 999d639873b70f75c340dbac3360d25bca27a998 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 20:13:47 +0200 Subject: [PATCH 058/156] ActivityPub: Remove `delete` function. This is handled by the common pipeline now. --- lib/pleroma/web/activity_pub/activity_pub.ex | 61 --------- test/web/activity_pub/activity_pub_test.exs | 137 ------------------- 2 files changed, 198 deletions(-) diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index 1f4a09370..51f002129 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -519,67 +519,6 @@ defp do_unfollow(follower, followed, activity_id, local) do end end - @spec delete(User.t() | Object.t(), keyword()) :: {:ok, User.t() | Object.t()} | {:error, any()} - def delete(entity, options \\ []) do - with {:ok, result} <- Repo.transaction(fn -> do_delete(entity, options) end) do - result - end - end - - defp do_delete(%User{ap_id: ap_id, follower_address: follower_address} = user, _) do - with data <- %{ - "to" => [follower_address], - "type" => "Delete", - "actor" => ap_id, - "object" => %{"type" => "Person", "id" => ap_id} - }, - {:ok, activity} <- insert(data, true, true, true), - :ok <- maybe_federate(activity) do - {:ok, user} - end - end - - defp do_delete(%Object{data: %{"id" => id, "actor" => actor}} = object, options) do - local = Keyword.get(options, :local, true) - activity_id = Keyword.get(options, :activity_id, nil) - actor = Keyword.get(options, :actor, actor) - - user = User.get_cached_by_ap_id(actor) - to = (object.data["to"] || []) ++ (object.data["cc"] || []) - - with create_activity <- Activity.get_create_by_object_ap_id(id), - data <- - %{ - "type" => "Delete", - "actor" => actor, - "object" => id, - "to" => to, - "deleted_activity_id" => create_activity && create_activity.id - } - |> maybe_put("id", activity_id), - {:ok, activity} <- insert(data, local, false), - {:ok, object, _create_activity} <- Object.delete(object), - stream_out_participations(object, user), - _ <- decrease_replies_count_if_reply(object), - {:ok, _actor} <- decrease_note_count_if_public(user, object), - :ok <- maybe_federate(activity) do - {:ok, activity} - else - {:error, error} -> - Repo.rollback(error) - end - end - - defp do_delete(%Object{data: %{"type" => "Tombstone", "id" => ap_id}}, _) do - activity = - ap_id - |> Activity.Queries.by_object_id() - |> Activity.Queries.by_type("Delete") - |> Repo.one() - - {:ok, activity} - end - @spec block(User.t(), User.t(), String.t() | nil, boolean()) :: {:ok, Activity.t()} | {:error, any()} def block(blocker, blocked, activity_id \\ nil, local \\ true) do diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index edd7dfb22..b93ee708e 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -1331,143 +1331,6 @@ test "creates an undo activity for the last block" do end end - describe "deletion" do - setup do: clear_config([:instance, :rewrite_policy]) - - test "it reverts deletion on error" do - note = insert(:note_activity) - object = Object.normalize(note) - - with_mock(Utils, [:passthrough], maybe_federate: fn _ -> {:error, :reverted} end) do - assert {:error, :reverted} = ActivityPub.delete(object) - end - - assert Repo.aggregate(Activity, :count, :id) == 1 - assert Repo.get(Object, object.id) == object - assert Activity.get_by_id(note.id) == note - end - - test "it creates a delete activity and deletes the original object" do - note = insert(:note_activity) - object = Object.normalize(note) - {:ok, delete} = ActivityPub.delete(object) - - assert delete.data["type"] == "Delete" - assert delete.data["actor"] == note.data["actor"] - assert delete.data["object"] == object.data["id"] - - assert Activity.get_by_id(delete.id) != nil - - assert Repo.get(Object, object.id).data["type"] == "Tombstone" - end - - test "it doesn't fail when an activity was already deleted" do - {:ok, delete} = insert(:note_activity) |> Object.normalize() |> ActivityPub.delete() - - assert {:ok, ^delete} = delete |> Object.normalize() |> ActivityPub.delete() - end - - test "decrements user note count only for public activities" do - user = insert(:user, note_count: 10) - - {:ok, a1} = - CommonAPI.post(User.get_cached_by_id(user.id), %{ - "status" => "yeah", - "visibility" => "public" - }) - - {:ok, a2} = - CommonAPI.post(User.get_cached_by_id(user.id), %{ - "status" => "yeah", - "visibility" => "unlisted" - }) - - {:ok, a3} = - CommonAPI.post(User.get_cached_by_id(user.id), %{ - "status" => "yeah", - "visibility" => "private" - }) - - {:ok, a4} = - CommonAPI.post(User.get_cached_by_id(user.id), %{ - "status" => "yeah", - "visibility" => "direct" - }) - - {:ok, _} = Object.normalize(a1) |> ActivityPub.delete() - {:ok, _} = Object.normalize(a2) |> ActivityPub.delete() - {:ok, _} = Object.normalize(a3) |> ActivityPub.delete() - {:ok, _} = Object.normalize(a4) |> ActivityPub.delete() - - user = User.get_cached_by_id(user.id) - assert user.note_count == 10 - end - - test "it creates a delete activity and checks that it is also sent to users mentioned by the deleted object" do - user = insert(:user) - note = insert(:note_activity) - object = Object.normalize(note) - - {:ok, object} = - object - |> Object.change(%{ - data: %{ - "actor" => object.data["actor"], - "id" => object.data["id"], - "to" => [user.ap_id], - "type" => "Note" - } - }) - |> Object.update_and_set_cache() - - {:ok, delete} = ActivityPub.delete(object) - - assert user.ap_id in delete.data["to"] - end - - test "decreases reply count" do - user = insert(:user) - user2 = insert(:user) - - {:ok, activity} = CommonAPI.post(user, %{"status" => "1", "visibility" => "public"}) - reply_data = %{"status" => "1", "in_reply_to_status_id" => activity.id} - ap_id = activity.data["id"] - - {:ok, public_reply} = CommonAPI.post(user2, Map.put(reply_data, "visibility", "public")) - {:ok, unlisted_reply} = CommonAPI.post(user2, Map.put(reply_data, "visibility", "unlisted")) - {:ok, private_reply} = CommonAPI.post(user2, Map.put(reply_data, "visibility", "private")) - {:ok, direct_reply} = CommonAPI.post(user2, Map.put(reply_data, "visibility", "direct")) - - _ = CommonAPI.delete(direct_reply.id, user2) - assert %{data: data, object: object} = Activity.get_by_ap_id_with_object(ap_id) - assert object.data["repliesCount"] == 2 - - _ = CommonAPI.delete(private_reply.id, user2) - assert %{data: data, object: object} = Activity.get_by_ap_id_with_object(ap_id) - assert object.data["repliesCount"] == 2 - - _ = CommonAPI.delete(public_reply.id, user2) - assert %{data: data, object: object} = Activity.get_by_ap_id_with_object(ap_id) - assert object.data["repliesCount"] == 1 - - _ = CommonAPI.delete(unlisted_reply.id, user2) - assert %{data: data, object: object} = Activity.get_by_ap_id_with_object(ap_id) - assert object.data["repliesCount"] == 0 - end - - test "it passes delete activity through MRF before deleting the object" do - Pleroma.Config.put([:instance, :rewrite_policy], Pleroma.Web.ActivityPub.MRF.DropPolicy) - - note = insert(:note_activity) - object = Object.normalize(note) - - {:error, {:reject, _}} = ActivityPub.delete(object) - - assert Activity.get_by_id(note.id) - assert Repo.get(Object, object.id).data["type"] == object.data["type"] - end - end - describe "timeline post-processing" do test "it filters broken threads" do user1 = insert(:user) From 32b8386edeec3e9b24123c3ccc81a22f1edd5a1c Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 30 Apr 2020 21:23:18 +0200 Subject: [PATCH 059/156] DeleteValidator: Don't federate local deletions of remote objects. Closes #1497 --- .../web/activity_pub/object_validator.ex | 8 +- .../object_validators/delete_validator.ex | 20 ++++- lib/pleroma/web/activity_pub/pipeline.ex | 4 +- .../activity_pub/object_validator_test.exs | 17 +++- test/web/common_api/common_api_test.exs | 80 +++++++++++++++++++ 5 files changed, 119 insertions(+), 10 deletions(-) diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex index 32f606917..479f922f5 100644 --- a/lib/pleroma/web/activity_pub/object_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validator.ex @@ -19,11 +19,11 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidator do def validate(object, meta) def validate(%{"type" => "Delete"} = object, meta) do - with {:ok, object} <- - object - |> DeleteValidator.cast_and_validate() - |> Ecto.Changeset.apply_action(:insert) do + with cng <- DeleteValidator.cast_and_validate(object), + do_not_federate <- DeleteValidator.do_not_federate?(cng), + {:ok, object} <- Ecto.Changeset.apply_action(cng, :insert) do object = stringify_keys(object) + meta = Keyword.put(meta, :do_not_federate, do_not_federate) {:ok, object, meta} end end diff --git a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex index 951cc1414..a2eff7b69 100644 --- a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex @@ -6,6 +6,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator do use Ecto.Schema alias Pleroma.Activity + alias Pleroma.User alias Pleroma.Web.ActivityPub.ObjectValidators.Types import Ecto.Changeset @@ -45,12 +46,17 @@ def validate_data(cng) do cng |> validate_required([:id, :type, :actor, :to, :cc, :object]) |> validate_inclusion(:type, ["Delete"]) - |> validate_same_domain() + |> validate_actor_presence() + |> validate_deletion_rights() |> validate_object_or_user_presence() |> add_deleted_activity_id() end - def validate_same_domain(cng) do + def do_not_federate?(cng) do + !same_domain?(cng) + end + + defp same_domain?(cng) do actor_domain = cng |> get_field(:actor) @@ -63,11 +69,17 @@ def validate_same_domain(cng) do |> URI.parse() |> (& &1.host).() - if object_domain != actor_domain do + object_domain == actor_domain + end + + def validate_deletion_rights(cng) do + actor = User.get_cached_by_ap_id(get_field(cng, :actor)) + + if User.superuser?(actor) || same_domain?(cng) do cng - |> add_error(:actor, "is not allowed to delete object") else cng + |> add_error(:actor, "is not allowed to delete object") end end diff --git a/lib/pleroma/web/activity_pub/pipeline.ex b/lib/pleroma/web/activity_pub/pipeline.ex index 7ccee54c9..017e39abb 100644 --- a/lib/pleroma/web/activity_pub/pipeline.ex +++ b/lib/pleroma/web/activity_pub/pipeline.ex @@ -29,7 +29,9 @@ def common_pipeline(object, meta) do defp maybe_federate(activity, meta) do with {:ok, local} <- Keyword.fetch(meta, :local) do - if local do + do_not_federate = meta[:do_not_federate] + + if !do_not_federate && local do Federator.publish(activity) {:ok, :federated} else diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 1d3646487..412db09ff 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -52,9 +52,11 @@ test "it's invalid if the object doesn't exist", %{valid_post_delete: valid_post test "it's invalid if the actor of the object and the actor of delete are from different domains", %{valid_post_delete: valid_post_delete} do + valid_user = insert(:user) + valid_other_actor = valid_post_delete - |> Map.put("actor", valid_post_delete["actor"] <> "1") + |> Map.put("actor", valid_user.ap_id) assert match?({:ok, _, _}, ObjectValidator.validate(valid_other_actor, [])) @@ -66,6 +68,19 @@ test "it's invalid if the actor of the object and the actor of delete are from d assert {:actor, {"is not allowed to delete object", []}} in cng.errors end + + test "it's valid if the actor of the object is a local superuser", + %{valid_post_delete: valid_post_delete} do + user = + insert(:user, local: true, is_moderator: true, ap_id: "https://gensokyo.2hu/users/raymoo") + + valid_other_actor = + valid_post_delete + |> Map.put("actor", user.ap_id) + + {:ok, _, meta} = ObjectValidator.validate(valid_other_actor, []) + assert meta[:do_not_federate] + end end describe "likes" do diff --git a/test/web/common_api/common_api_test.exs b/test/web/common_api/common_api_test.exs index 1758662b0..32d91ce02 100644 --- a/test/web/common_api/common_api_test.exs +++ b/test/web/common_api/common_api_test.exs @@ -9,11 +9,13 @@ defmodule Pleroma.Web.CommonAPITest do alias Pleroma.Object alias Pleroma.User alias Pleroma.Web.ActivityPub.ActivityPub + alias Pleroma.Web.ActivityPub.Transmogrifier alias Pleroma.Web.ActivityPub.Visibility alias Pleroma.Web.AdminAPI.AccountView alias Pleroma.Web.CommonAPI import Pleroma.Factory + import Mock require Pleroma.Constants @@ -21,6 +23,84 @@ defmodule Pleroma.Web.CommonAPITest do setup do: clear_config([:instance, :limit]) setup do: clear_config([:instance, :max_pinned_statuses]) + describe "deletion" do + test "it allows users to delete their posts" do + user = insert(:user) + + {:ok, post} = CommonAPI.post(user, %{"status" => "namu amida butsu"}) + + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + assert {:ok, delete} = CommonAPI.delete(post.id, user) + assert delete.local + assert called(Pleroma.Web.Federator.publish(delete)) + end + + refute Activity.get_by_id(post.id) + end + + test "it does not allow a user to delete their posts" do + user = insert(:user) + other_user = insert(:user) + + {:ok, post} = CommonAPI.post(user, %{"status" => "namu amida butsu"}) + + assert {:error, "Could not delete"} = CommonAPI.delete(post.id, other_user) + assert Activity.get_by_id(post.id) + end + + test "it allows moderators to delete other user's posts" do + user = insert(:user) + moderator = insert(:user, is_moderator: true) + + {:ok, post} = CommonAPI.post(user, %{"status" => "namu amida butsu"}) + + assert {:ok, delete} = CommonAPI.delete(post.id, moderator) + assert delete.local + + refute Activity.get_by_id(post.id) + end + + test "it allows admins to delete other user's posts" do + user = insert(:user) + moderator = insert(:user, is_admin: true) + + {:ok, post} = CommonAPI.post(user, %{"status" => "namu amida butsu"}) + + assert {:ok, delete} = CommonAPI.delete(post.id, moderator) + assert delete.local + + refute Activity.get_by_id(post.id) + end + + test "superusers deleting non-local posts won't federate the delete" do + # This is the user of the ingested activity + _user = + insert(:user, + local: false, + ap_id: "http://mastodon.example.org/users/admin", + last_refreshed_at: NaiveDateTime.utc_now() + ) + + moderator = insert(:user, is_admin: true) + + data = + File.read!("test/fixtures/mastodon-post-activity.json") + |> Jason.decode!() + + {:ok, post} = Transmogrifier.handle_incoming(data) + + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + assert {:ok, delete} = CommonAPI.delete(post.id, moderator) + assert delete.local + refute called(Pleroma.Web.Federator.publish(:_)) + end + + refute Activity.get_by_id(post.id) + end + end + test "favoriting race condition" do user = insert(:user) users_serial = insert_list(10, :user) From 92efb888c7b25692af205b1a4dbce0ae689c439b Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Fri, 1 May 2020 09:51:41 +0300 Subject: [PATCH 060/156] Made follow request notifications non-optional (removed config switch). --- CHANGELOG.md | 2 +- config/config.exs | 2 -- config/description.exs | 14 -------------- lib/pleroma/notification.ex | 11 +---------- test/notification_test.exs | 20 +------------------- 5 files changed, 3 insertions(+), 46 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 65dd1b9c2..97704917d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,7 +20,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Configuration: `:restrict_unauthenticated` setting, restrict access for unauthenticated users to timelines (public and federate), user profiles and statuses. - New HTTP adapter [gun](https://github.com/ninenines/gun). Gun adapter requires minimum OTP version of 22.2 otherwise Pleroma won’t start. For hackney OTP update is not required. - Mix task to create trusted OAuth App. -- Notifications: Added `follow_request` notification type (configurable, see `[:notifications, :enable_follow_request_notifications]` setting). +- Notifications: Added `follow_request` notification type. - Added `:reject_deletes` group to SimplePolicy
API Changes diff --git a/config/config.exs b/config/config.exs index 2e538c4be..a6c6d6f99 100644 --- a/config/config.exs +++ b/config/config.exs @@ -562,8 +562,6 @@ inactivity_threshold: 7 } -config :pleroma, :notifications, enable_follow_request_notifications: false - config :pleroma, :oauth2, token_expires_in: 600, issue_new_refresh_token: true, diff --git a/config/description.exs b/config/description.exs index 7fac1e561..9d8e3b93c 100644 --- a/config/description.exs +++ b/config/description.exs @@ -2273,20 +2273,6 @@ } ] }, - %{ - group: :pleroma, - key: :notifications, - type: :group, - description: "Notification settings", - children: [ - %{ - key: :enable_follow_request_notifications, - type: :boolean, - description: - "Enables notifications on new follow requests (causes issues with older PleromaFE versions)." - } - ] - }, %{ group: :pleroma, key: Pleroma.Emails.UserEmail, diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 9a109dfab..98289af08 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -293,17 +293,8 @@ def create_notifications(%Activity{data: %{"to" => _, "type" => "Create"}} = act end end - def create_notifications(%Activity{data: %{"type" => "Follow"}} = activity) do - if Pleroma.Config.get([:notifications, :enable_follow_request_notifications]) || - Activity.follow_accepted?(activity) do - do_create_notifications(activity) - else - {:ok, []} - end - end - def create_notifications(%Activity{data: %{"type" => type}} = activity) - when type in ["Like", "Announce", "Move", "EmojiReact"] do + when type in ["Follow", "Like", "Announce", "Move", "EmojiReact"] do do_create_notifications(activity) end diff --git a/test/notification_test.exs b/test/notification_test.exs index 0e9ffcb18..601a6c0ca 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -312,9 +312,7 @@ test "it creates `follow` notification for approved Follow activity" do }) end - test "if `follow_request` notifications are enabled, " <> - "it creates `follow_request` notification for pending Follow activity" do - clear_config([:notifications, :enable_follow_request_notifications], true) + test "it creates `follow_request` notification for pending Follow activity" do user = insert(:user) followed_user = insert(:user, locked: true) @@ -333,21 +331,6 @@ test "if `follow_request` notifications are enabled, " <> assert %{type: "follow"} = NotificationView.render("show.json", render_opts) end - test "if `follow_request` notifications are disabled, " <> - "it does NOT create `follow*` notification for pending Follow activity" do - clear_config([:notifications, :enable_follow_request_notifications], false) - user = insert(:user) - followed_user = insert(:user, locked: true) - - {:ok, _, _, _activity} = CommonAPI.follow(user, followed_user) - refute FollowingRelationship.following?(user, followed_user) - assert [] = Notification.for_user(followed_user) - - # After request is accepted, no new notifications are generated: - assert {:ok, _} = CommonAPI.accept_follow_request(user, followed_user) - assert [] = Notification.for_user(followed_user) - end - test "it doesn't create a notification for follow-unfollow-follow chains" do user = insert(:user) followed_user = insert(:user, locked: false) @@ -364,7 +347,6 @@ test "it doesn't create a notification for follow-unfollow-follow chains" do end test "dismisses the notification on follow request rejection" do - clear_config([:notifications, :enable_follow_request_notifications], true) user = insert(:user, locked: true) follower = insert(:user) {:ok, _, _, _follow_activity} = CommonAPI.follow(follower, user) From ecf37b46d2c06c701da390eba65239984afe683f Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Fri, 1 May 2020 14:31:24 +0300 Subject: [PATCH 061/156] pagination fix for service users filters --- lib/pleroma/user/query.ex | 11 +++--- .../web/admin_api/admin_api_controller.ex | 29 +++----------- lib/pleroma/web/admin_api/search.ex | 1 + .../admin_api/admin_api_controller_test.exs | 38 ++++++++++++++++++- 4 files changed, 49 insertions(+), 30 deletions(-) diff --git a/lib/pleroma/user/query.ex b/lib/pleroma/user/query.ex index ac77aab71..3a3b04793 100644 --- a/lib/pleroma/user/query.ex +++ b/lib/pleroma/user/query.ex @@ -45,6 +45,7 @@ defmodule Pleroma.User.Query do is_admin: boolean(), is_moderator: boolean(), super_users: boolean(), + exclude_service_users: boolean(), followers: User.t(), friends: User.t(), recipients_from_activity: [String.t()], @@ -88,6 +89,10 @@ defp compose_query({key, value}, query) where(query, [u], ilike(field(u, ^key), ^"%#{value}%")) end + defp compose_query({:exclude_service_users, _}, query) do + where(query, [u], not like(u.ap_id, "%/relay") and not like(u.ap_id, "%/internal/fetch")) + end + defp compose_query({key, value}, query) when key in @equal_criteria and not_empty_string(value) do where(query, [u], ^[{key, value}]) @@ -98,7 +103,7 @@ defp compose_query({key, values}, query) when key in @contains_criteria and is_l end defp compose_query({:tags, tags}, query) when is_list(tags) and length(tags) > 0 do - Enum.reduce(tags, query, &prepare_tag_criteria/2) + where(query, [u], fragment("? && ?", u.tags, ^tags)) end defp compose_query({:is_admin, _}, query) do @@ -192,10 +197,6 @@ defp compose_query({:limit, limit}, query) do defp compose_query(_unsupported_param, query), do: query - defp prepare_tag_criteria(tag, query) do - or_where(query, [u], fragment("? = any(?)", ^tag, u.tags)) - end - defp location_query(query, local) do where(query, [u], u.local == ^local) |> where([u], not is_nil(u.nickname)) diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index 816c11e01..bfcc81cb8 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -392,29 +392,12 @@ def list_users(conn, params) do email: params["email"] } - with {:ok, users, count} <- Search.user(Map.merge(search_params, filters)), - {:ok, users, count} <- filter_service_users(users, count), - do: - conn - |> json( - AccountView.render("index.json", - users: users, - count: count, - page_size: page_size - ) - ) - end - - defp filter_service_users(users, count) do - filtered_users = Enum.reject(users, &service_user?/1) - count = if Enum.any?(users, &service_user?/1), do: length(filtered_users), else: count - - {:ok, filtered_users, count} - end - - defp service_user?(user) do - String.match?(user.ap_id, ~r/.*\/relay$/) or - String.match?(user.ap_id, ~r/.*\/internal\/fetch$/) + with {:ok, users, count} <- Search.user(Map.merge(search_params, filters)) do + json( + conn, + AccountView.render("index.json", users: users, count: count, page_size: page_size) + ) + end end @filters ~w(local external active deactivated is_admin is_moderator) diff --git a/lib/pleroma/web/admin_api/search.ex b/lib/pleroma/web/admin_api/search.ex index 29cea1f44..c28efadd5 100644 --- a/lib/pleroma/web/admin_api/search.ex +++ b/lib/pleroma/web/admin_api/search.ex @@ -21,6 +21,7 @@ def user(params \\ %{}) do query = params |> Map.drop([:page, :page_size]) + |> Map.put(:exclude_service_users, true) |> User.Query.build() |> order_by([u], u.nickname) diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index f80dbf8dd..e3af01089 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -18,6 +18,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do alias Pleroma.ReportNote alias Pleroma.Tests.ObanHelpers alias Pleroma.User + alias Pleroma.Web alias Pleroma.UserInviteToken alias Pleroma.Web.ActivityPub.Relay alias Pleroma.Web.CommonAPI @@ -737,6 +738,39 @@ test "renders users array for the first page", %{conn: conn, admin: admin} do } end + test "pagination works correctly with service users", %{conn: conn} do + service1 = insert(:user, ap_id: Web.base_url() <> "/relay") + service2 = insert(:user, ap_id: Web.base_url() <> "/internal/fetch") + insert_list(25, :user) + + assert %{"count" => 26, "page_size" => 10, "users" => users1} = + conn + |> get("/api/pleroma/admin/users?page=1&filters=", %{page_size: "10"}) + |> json_response(200) + + assert Enum.count(users1) == 10 + assert service1 not in [users1] + assert service2 not in [users1] + + assert %{"count" => 26, "page_size" => 10, "users" => users2} = + conn + |> get("/api/pleroma/admin/users?page=2&filters=", %{page_size: "10"}) + |> json_response(200) + + assert Enum.count(users2) == 10 + assert service1 not in [users2] + assert service2 not in [users2] + + assert %{"count" => 26, "page_size" => 10, "users" => users3} = + conn + |> get("/api/pleroma/admin/users?page=3&filters=", %{page_size: "10"}) + |> json_response(200) + + assert Enum.count(users3) == 6 + assert service1 not in [users3] + assert service2 not in [users3] + end + test "renders empty array for the second page", %{conn: conn} do insert(:user) @@ -3526,7 +3560,7 @@ test "errors", %{conn: conn} do end test "success", %{conn: conn} do - base_url = Pleroma.Web.base_url() + base_url = Web.base_url() app_name = "Trusted app" response = @@ -3547,7 +3581,7 @@ test "success", %{conn: conn} do end test "with trusted", %{conn: conn} do - base_url = Pleroma.Web.base_url() + base_url = Web.base_url() app_name = "Trusted app" response = From 5f42e6629d862f0a8dcbbd1527998685b6932d52 Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 1 May 2020 13:34:47 +0200 Subject: [PATCH 062/156] DeleteValidator: Only allow deletion of certain types. --- .../object_validators/common_validations.ex | 48 ++++++++++++------- .../object_validators/delete_validator.ex | 12 ++++- lib/pleroma/web/activity_pub/side_effects.ex | 1 + .../activity_pub/object_validator_test.exs | 19 ++++++++ 4 files changed, 63 insertions(+), 17 deletions(-) diff --git a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex index d9a629a34..4e6ee2034 100644 --- a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex +++ b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex @@ -28,7 +28,9 @@ def validate_recipients_presence(cng, fields \\ [:to, :cc]) do end end - def validate_actor_presence(cng, field_name \\ :actor) do + def validate_actor_presence(cng, options \\ []) do + field_name = Keyword.get(options, :field_name, :actor) + cng |> validate_change(field_name, fn field_name, actor -> if User.get_cached_by_ap_id(actor) do @@ -39,25 +41,39 @@ def validate_actor_presence(cng, field_name \\ :actor) do end) end - def validate_object_presence(cng, field_name \\ :object) do + def validate_object_presence(cng, options \\ []) do + field_name = Keyword.get(options, :field_name, :object) + allowed_types = Keyword.get(options, :allowed_types, false) + cng - |> validate_change(field_name, fn field_name, object -> - if Object.get_cached_by_ap_id(object) do - [] - else - [{field_name, "can't find object"}] + |> validate_change(field_name, fn field_name, object_id -> + object = Object.get_cached_by_ap_id(object_id) + + cond do + !object -> + [{field_name, "can't find object"}] + + object && allowed_types && object.data["type"] not in allowed_types -> + [{field_name, "object not in allowed types"}] + + true -> + [] end end) end - def validate_object_or_user_presence(cng, field_name \\ :object) do - cng - |> validate_change(field_name, fn field_name, object -> - if Object.get_cached_by_ap_id(object) || User.get_cached_by_ap_id(object) do - [] - else - [{field_name, "can't find object"}] - end - end) + def validate_object_or_user_presence(cng, options \\ []) do + field_name = Keyword.get(options, :field_name, :object) + options = Keyword.put(options, :field_name, field_name) + + actor_cng = + cng + |> validate_actor_presence(options) + + object_cng = + cng + |> validate_object_presence(options) + + if actor_cng.valid?, do: actor_cng, else: object_cng end end diff --git a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex index a2eff7b69..256ac70b6 100644 --- a/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validators/delete_validator.ex @@ -42,13 +42,23 @@ def add_deleted_activity_id(cng) do end end + @deletable_types ~w{ + Answer + Article + Audio + Event + Note + Page + Question + Video + } def validate_data(cng) do cng |> validate_required([:id, :type, :actor, :to, :cc, :object]) |> validate_inclusion(:type, ["Delete"]) |> validate_actor_presence() |> validate_deletion_rights() - |> validate_object_or_user_presence() + |> validate_object_or_user_presence(allowed_types: @deletable_types) |> add_deleted_activity_id() end diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 139e609f4..52bd5179f 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -36,6 +36,7 @@ def handle(%{data: %{"type" => "Like"}} = object, meta) do # - Set up notification # - Reduce the user note count # - Reduce the reply count + # - Stream out the activity def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object, meta) do deleted_object = Object.normalize(deleted_object, false) || User.get_cached_by_ap_id(deleted_object) diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 412db09ff..7ab1c8ffb 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -1,6 +1,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidatorTest do use Pleroma.DataCase + alias Pleroma.Object alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.ActivityPub.ObjectValidator alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator @@ -26,6 +27,24 @@ test "it is valid for a post deletion", %{valid_post_delete: valid_post_delete} assert valid_post_delete["deleted_activity_id"] end + test "it is invalid if the object isn't in a list of certain types", %{ + valid_post_delete: valid_post_delete + } do + object = Object.get_by_ap_id(valid_post_delete["object"]) + + data = + object.data + |> Map.put("type", "Like") + + {:ok, _object} = + object + |> Ecto.Changeset.change(%{data: data}) + |> Object.update_and_set_cache() + + {:error, cng} = ObjectValidator.validate(valid_post_delete, []) + assert {:object, {"object not in allowed types", []}} in cng.errors + end + test "it is valid for a user deletion", %{valid_user_delete: valid_user_delete} do assert match?({:ok, _, _}, ObjectValidator.validate(valid_user_delete, [])) end From 51f1dbf0a2bf6b61fdef0be56fd8f20a40827100 Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 1 May 2020 14:05:25 +0200 Subject: [PATCH 063/156] User deletion mix task: Use common pipeline. --- lib/mix/tasks/pleroma/user.ex | 7 +++++-- test/tasks/user_test.exs | 18 +++++++++++++----- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/lib/mix/tasks/pleroma/user.ex b/lib/mix/tasks/pleroma/user.ex index 40dd9bdc0..da140ac86 100644 --- a/lib/mix/tasks/pleroma/user.ex +++ b/lib/mix/tasks/pleroma/user.ex @@ -8,6 +8,8 @@ defmodule Mix.Tasks.Pleroma.User do alias Ecto.Changeset alias Pleroma.User alias Pleroma.UserInviteToken + alias Pleroma.Web.ActivityPub.Builder + alias Pleroma.Web.ActivityPub.Pipeline @shortdoc "Manages Pleroma users" @moduledoc File.read!("docs/administration/CLI_tasks/user.md") @@ -96,8 +98,9 @@ def run(["new", nickname, email | rest]) do def run(["rm", nickname]) do start_pleroma() - with %User{local: true} = user <- User.get_cached_by_nickname(nickname) do - User.perform(:delete, user) + with %User{local: true} = user <- User.get_cached_by_nickname(nickname), + {:ok, delete_data, _} <- Builder.delete(user, user.ap_id), + {:ok, _delete, _} <- Pipeline.common_pipeline(delete_data, local: true) do shell_info("User #{nickname} deleted.") else _ -> shell_error("No local user #{nickname}") diff --git a/test/tasks/user_test.exs b/test/tasks/user_test.exs index 8df835b56..ab56f07c1 100644 --- a/test/tasks/user_test.exs +++ b/test/tasks/user_test.exs @@ -4,14 +4,17 @@ defmodule Mix.Tasks.Pleroma.UserTest do alias Pleroma.Repo + alias Pleroma.Tests.ObanHelpers alias Pleroma.User alias Pleroma.Web.OAuth.Authorization alias Pleroma.Web.OAuth.Token use Pleroma.DataCase + use Oban.Testing, repo: Pleroma.Repo - import Pleroma.Factory import ExUnit.CaptureIO + import Mock + import Pleroma.Factory setup_all do Mix.shell(Mix.Shell.Process) @@ -87,12 +90,17 @@ test "user is not created" do test "user is deleted" do user = insert(:user) - Mix.Tasks.Pleroma.User.run(["rm", user.nickname]) + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + Mix.Tasks.Pleroma.User.run(["rm", user.nickname]) + ObanHelpers.perform_all() - assert_received {:mix_shell, :info, [message]} - assert message =~ " deleted" + assert_received {:mix_shell, :info, [message]} + assert message =~ " deleted" + refute User.get_by_nickname(user.nickname) - refute User.get_by_nickname(user.nickname) + assert called(Pleroma.Web.Federator.publish(:_)) + end end test "no user to delete" do From ebbd9c7f369f986b7a66f66eddab91537c490c79 Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 1 May 2020 14:22:39 +0200 Subject: [PATCH 064/156] AdminAPIController: Refactor. --- lib/pleroma/web/admin_api/admin_api_controller.ex | 14 ++------------ test/web/admin_api/admin_api_controller_test.exs | 2 +- 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index 816c11e01..c09584fd1 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -133,18 +133,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do action_fallback(:errors) - def user_delete(%{assigns: %{user: admin}} = conn, %{"nickname" => nickname}) do - user = User.get_cached_by_nickname(nickname) - User.delete(user) - - ModerationLog.insert_log(%{ - actor: admin, - subject: [user], - action: "delete" - }) - - conn - |> json(nickname) + def user_delete(conn, %{"nickname" => nickname}) do + user_delete(conn, %{"nicknames" => [nickname]}) end def user_delete(%{assigns: %{user: admin}} = conn, %{"nicknames" => nicknames}) do diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index f80dbf8dd..c92715fab 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -156,7 +156,7 @@ test "single user", %{admin: admin, conn: conn} do assert ModerationLog.get_log_entry_message(log_entry) == "@#{admin.nickname} deleted users: @#{user.nickname}" - assert json_response(conn, 200) == user.nickname + assert json_response(conn, 200) == [user.nickname] end test "multiple users", %{admin: admin, conn: conn} do From 1ead5f49b8da941399fa2afadd40cd8beb8ccf8d Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 1 May 2020 14:30:39 +0200 Subject: [PATCH 065/156] AdminApiController: Use common pipeline for user deletion. --- .../web/admin_api/admin_api_controller.ex | 13 +++++++-- .../admin_api/admin_api_controller_test.exs | 28 +++++++++++++------ 2 files changed, 30 insertions(+), 11 deletions(-) diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index c09584fd1..9a12da027 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -17,6 +17,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do alias Pleroma.User alias Pleroma.UserInviteToken alias Pleroma.Web.ActivityPub.ActivityPub + alias Pleroma.Web.ActivityPub.Builder + alias Pleroma.Web.ActivityPub.Pipeline alias Pleroma.Web.ActivityPub.Relay alias Pleroma.Web.ActivityPub.Utils alias Pleroma.Web.AdminAPI.AccountView @@ -138,8 +140,15 @@ def user_delete(conn, %{"nickname" => nickname}) do end def user_delete(%{assigns: %{user: admin}} = conn, %{"nicknames" => nicknames}) do - users = nicknames |> Enum.map(&User.get_cached_by_nickname/1) - User.delete(users) + users = + nicknames + |> Enum.map(&User.get_cached_by_nickname/1) + + users + |> Enum.each(fn user -> + {:ok, delete_data, _} = Builder.delete(admin, user.ap_id) + Pipeline.common_pipeline(delete_data, local: true) + end) ModerationLog.insert_log(%{ actor: admin, diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index c92715fab..35001ab4a 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -6,8 +6,9 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do use Pleroma.Web.ConnCase use Oban.Testing, repo: Pleroma.Repo - import Pleroma.Factory import ExUnit.CaptureLog + import Mock + import Pleroma.Factory alias Pleroma.Activity alias Pleroma.Config @@ -146,17 +147,26 @@ test "GET /api/pleroma/admin/users/:nickname requires " <> test "single user", %{admin: admin, conn: conn} do user = insert(:user) - conn = - conn - |> put_req_header("accept", "application/json") - |> delete("/api/pleroma/admin/users?nickname=#{user.nickname}") + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + conn = + conn + |> put_req_header("accept", "application/json") + |> delete("/api/pleroma/admin/users?nickname=#{user.nickname}") - log_entry = Repo.one(ModerationLog) + ObanHelpers.perform_all() - assert ModerationLog.get_log_entry_message(log_entry) == - "@#{admin.nickname} deleted users: @#{user.nickname}" + refute User.get_by_nickname(user.nickname) - assert json_response(conn, 200) == [user.nickname] + log_entry = Repo.one(ModerationLog) + + assert ModerationLog.get_log_entry_message(log_entry) == + "@#{admin.nickname} deleted users: @#{user.nickname}" + + assert json_response(conn, 200) == [user.nickname] + + assert called(Pleroma.Web.Federator.publish(:_)) + end end test "multiple users", %{admin: admin, conn: conn} do From aea781cbd8fb43f906c6022a8d2e0bf896008203 Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Fri, 1 May 2020 16:31:05 +0300 Subject: [PATCH 066/156] credo fix --- test/web/admin_api/admin_api_controller_test.exs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index e3af01089..d798412e3 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -18,8 +18,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do alias Pleroma.ReportNote alias Pleroma.Tests.ObanHelpers alias Pleroma.User - alias Pleroma.Web alias Pleroma.UserInviteToken + alias Pleroma.Web alias Pleroma.Web.ActivityPub.Relay alias Pleroma.Web.CommonAPI alias Pleroma.Web.MediaProxy From a912f72a3674f80fe665db466295192b4dab82a9 Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 1 May 2020 15:54:38 +0200 Subject: [PATCH 067/156] Signature: Handle non-ap ids in key ids. Mastodon and Gab sometimes send the format `acct:name@server`. --- lib/pleroma/signature.ex | 18 +++++++++++++++--- test/signature_test.exs | 18 ++++++++++++++---- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/lib/pleroma/signature.ex b/lib/pleroma/signature.ex index 6b0b2c969..d01728361 100644 --- a/lib/pleroma/signature.ex +++ b/lib/pleroma/signature.ex @@ -8,6 +8,7 @@ defmodule Pleroma.Signature do alias Pleroma.Keys alias Pleroma.User alias Pleroma.Web.ActivityPub.ActivityPub + alias Pleroma.Web.ActivityPub.ObjectValidators.Types def key_id_to_actor_id(key_id) do uri = @@ -21,12 +22,23 @@ def key_id_to_actor_id(key_id) do uri end - URI.to_string(uri) + maybe_ap_id = URI.to_string(uri) + + case Types.ObjectID.cast(maybe_ap_id) do + {:ok, ap_id} -> + {:ok, ap_id} + + _ -> + case Pleroma.Web.WebFinger.finger(maybe_ap_id) do + %{"ap_id" => ap_id} -> {:ok, ap_id} + _ -> {:error, maybe_ap_id} + end + end end def fetch_public_key(conn) do with %{"keyId" => kid} <- HTTPSignatures.signature_for_conn(conn), - actor_id <- key_id_to_actor_id(kid), + {:ok, actor_id} <- key_id_to_actor_id(kid), {:ok, public_key} <- User.get_public_key_for_ap_id(actor_id) do {:ok, public_key} else @@ -37,7 +49,7 @@ def fetch_public_key(conn) do def refetch_public_key(conn) do with %{"keyId" => kid} <- HTTPSignatures.signature_for_conn(conn), - actor_id <- key_id_to_actor_id(kid), + {:ok, actor_id} <- key_id_to_actor_id(kid), {:ok, _user} <- ActivityPub.make_user_from_ap_id(actor_id), {:ok, public_key} <- User.get_public_key_for_ap_id(actor_id) do {:ok, public_key} diff --git a/test/signature_test.exs b/test/signature_test.exs index d5a2a62c4..a7a75aa4d 100644 --- a/test/signature_test.exs +++ b/test/signature_test.exs @@ -44,7 +44,8 @@ test "it returns key" do test "it returns error when not found user" do assert capture_log(fn -> - assert Signature.fetch_public_key(make_fake_conn("test-ap_id")) == {:error, :error} + assert Signature.fetch_public_key(make_fake_conn("https://test-ap-id")) == + {:error, :error} end) =~ "[error] Could not decode user" end @@ -64,7 +65,7 @@ test "it returns key" do test "it returns error when not found user" do assert capture_log(fn -> - {:error, _} = Signature.refetch_public_key(make_fake_conn("test-ap_id")) + {:error, _} = Signature.refetch_public_key(make_fake_conn("https://test-ap_id")) end) =~ "[error] Could not decode user" end end @@ -100,12 +101,21 @@ test "it returns error" do describe "key_id_to_actor_id/1" do test "it properly deduces the actor id for misskey" do assert Signature.key_id_to_actor_id("https://example.com/users/1234/publickey") == - "https://example.com/users/1234" + {:ok, "https://example.com/users/1234"} end test "it properly deduces the actor id for mastodon and pleroma" do assert Signature.key_id_to_actor_id("https://example.com/users/1234#main-key") == - "https://example.com/users/1234" + {:ok, "https://example.com/users/1234"} + end + + test "it calls webfinger for 'acct:' accounts" do + with_mock(Pleroma.Web.WebFinger, + finger: fn _ -> %{"ap_id" => "https://gensokyo.2hu/users/raymoo"} end + ) do + assert Signature.key_id_to_actor_id("acct:raymoo@gensokyo.2hu") == + {:ok, "https://gensokyo.2hu/users/raymoo"} + end end end From 3453e54e6b00ca2aced07746ad4cfc22ebc404fb Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 1 May 2020 15:58:47 +0200 Subject: [PATCH 068/156] MappedSignatureToIdentityPlug: Fix. --- lib/pleroma/plugs/mapped_signature_to_identity_plug.ex | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/plugs/mapped_signature_to_identity_plug.ex b/lib/pleroma/plugs/mapped_signature_to_identity_plug.ex index 84b7c5d83..f44d4dee5 100644 --- a/lib/pleroma/plugs/mapped_signature_to_identity_plug.ex +++ b/lib/pleroma/plugs/mapped_signature_to_identity_plug.ex @@ -13,8 +13,9 @@ defmodule Pleroma.Web.Plugs.MappedSignatureToIdentityPlug do def init(options), do: options defp key_id_from_conn(conn) do - with %{"keyId" => key_id} <- HTTPSignatures.signature_for_conn(conn) do - Signature.key_id_to_actor_id(key_id) + with %{"keyId" => key_id} <- HTTPSignatures.signature_for_conn(conn), + {:ok, ap_id} <- Signature.key_id_to_actor_id(key_id) do + ap_id else _ -> nil From 57b31e79c213e57b32b604c97a6d1555ed73bcdb Mon Sep 17 00:00:00 2001 From: Ivan Tashkinov Date: Fri, 1 May 2020 17:59:29 +0300 Subject: [PATCH 069/156] Updated PleromaFE bundle to prevent notifications loading issue due to unsupported parameter (`with_move`). --- priv/static/index.html | 2 +- .../static/css/app.1055039ce3f2fe4dd110.css | 108 ----------- .../css/app.1055039ce3f2fe4dd110.css.map | 1 - .../static/css/app.613cef07981cd95ccceb.css | 5 + .../css/app.613cef07981cd95ccceb.css.map | 1 + ...s => vendors~app.18fea621d430000acc27.css} | 31 ++- .../vendors~app.18fea621d430000acc27.css.map | 1 + .../vendors~app.b2603a50868c68a1c192.css.map | 1 - .../static/font/fontello.1587147224637.woff2 | Bin 11544 -> 0 bytes ...7224637.eot => fontello.1588344944597.eot} | Bin 22444 -> 22444 bytes ...7224637.svg => fontello.1588344944597.svg} | 0 ...7224637.ttf => fontello.1588344944597.ttf} | Bin 22276 -> 22276 bytes ...24637.woff => fontello.1588344944597.woff} | Bin 13656 -> 13656 bytes .../static/font/fontello.1588344944597.woff2 | Bin 0 -> 11536 bytes ...7224637.css => fontello.1588344944597.css} | 12 +- .../static/js/2.0bcc7512986083cd9ecf.js | Bin 0 -> 2190 bytes .../static/js/2.0bcc7512986083cd9ecf.js.map | Bin 0 -> 7763 bytes .../static/js/2.f158cbd2b8770e467dfe.js | Bin 2169 -> 0 bytes .../static/js/2.f158cbd2b8770e467dfe.js.map | Bin 7927 -> 0 bytes .../static/js/app.3de9191d7fd30b4bf68c.js | Bin 0 -> 1071665 bytes .../static/js/app.3de9191d7fd30b4bf68c.js.map | Bin 0 -> 1626532 bytes .../static/js/app.def6476e8bc9b214218b.js | Bin 1045614 -> 0 bytes .../static/js/app.def6476e8bc9b214218b.js.map | Bin 1658859 -> 0 bytes .../js/vendors~app.5b7c43d835cad9e56363.js | Bin 0 -> 411232 bytes .../vendors~app.5b7c43d835cad9e56363.js.map | Bin 0 -> 1737936 bytes .../js/vendors~app.c5bbd3734647f0cc7eef.js | Bin 377395 -> 0 bytes .../vendors~app.c5bbd3734647f0cc7eef.js.map | Bin 1737985 -> 0 bytes priv/static/static/static-fe.css | 183 ------------------ priv/static/sw-pleroma.js | Bin 31329 -> 31752 bytes priv/static/sw-pleroma.js.map | Bin 142358 -> 143966 bytes 30 files changed, 29 insertions(+), 316 deletions(-) delete mode 100644 priv/static/static/css/app.1055039ce3f2fe4dd110.css delete mode 100644 priv/static/static/css/app.1055039ce3f2fe4dd110.css.map create mode 100644 priv/static/static/css/app.613cef07981cd95ccceb.css create mode 100644 priv/static/static/css/app.613cef07981cd95ccceb.css.map rename priv/static/static/css/{vendors~app.b2603a50868c68a1c192.css => vendors~app.18fea621d430000acc27.css} (92%) create mode 100644 priv/static/static/css/vendors~app.18fea621d430000acc27.css.map delete mode 100644 priv/static/static/css/vendors~app.b2603a50868c68a1c192.css.map delete mode 100644 priv/static/static/font/fontello.1587147224637.woff2 rename priv/static/static/font/{fontello.1587147224637.eot => fontello.1588344944597.eot} (98%) rename priv/static/static/font/{fontello.1587147224637.svg => fontello.1588344944597.svg} (100%) rename priv/static/static/font/{fontello.1587147224637.ttf => fontello.1588344944597.ttf} (99%) rename priv/static/static/font/{fontello.1587147224637.woff => fontello.1588344944597.woff} (98%) create mode 100644 priv/static/static/font/fontello.1588344944597.woff2 rename priv/static/static/{fontello.1587147224637.css => fontello.1588344944597.css} (89%) create mode 100644 priv/static/static/js/2.0bcc7512986083cd9ecf.js create mode 100644 priv/static/static/js/2.0bcc7512986083cd9ecf.js.map delete mode 100644 priv/static/static/js/2.f158cbd2b8770e467dfe.js delete mode 100644 priv/static/static/js/2.f158cbd2b8770e467dfe.js.map create mode 100644 priv/static/static/js/app.3de9191d7fd30b4bf68c.js create mode 100644 priv/static/static/js/app.3de9191d7fd30b4bf68c.js.map delete mode 100644 priv/static/static/js/app.def6476e8bc9b214218b.js delete mode 100644 priv/static/static/js/app.def6476e8bc9b214218b.js.map create mode 100644 priv/static/static/js/vendors~app.5b7c43d835cad9e56363.js create mode 100644 priv/static/static/js/vendors~app.5b7c43d835cad9e56363.js.map delete mode 100644 priv/static/static/js/vendors~app.c5bbd3734647f0cc7eef.js delete mode 100644 priv/static/static/js/vendors~app.c5bbd3734647f0cc7eef.js.map delete mode 100644 priv/static/static/static-fe.css diff --git a/priv/static/index.html b/priv/static/index.html index 66c9b53de..6af441737 100644 --- a/priv/static/index.html +++ b/priv/static/index.html @@ -1 +1 @@ -Pleroma
\ No newline at end of file +Pleroma
\ No newline at end of file diff --git a/priv/static/static/css/app.1055039ce3f2fe4dd110.css b/priv/static/static/css/app.1055039ce3f2fe4dd110.css deleted file mode 100644 index 1867ca81a..000000000 --- a/priv/static/static/css/app.1055039ce3f2fe4dd110.css +++ /dev/null @@ -1,108 +0,0 @@ -.with-load-more-footer { - padding: 10px; - text-align: center; - border-top: 1px solid; - border-top-color: #222; - border-top-color: var(--border, #222); -} -.with-load-more-footer .error { - font-size: 14px; -} -.tab-switcher { - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - flex-direction: column; -} -.tab-switcher .contents { - -ms-flex: 1 0 auto; - flex: 1 0 auto; - min-height: 0px; -} -.tab-switcher .contents .hidden { - display: none; -} -.tab-switcher .contents.scrollable-tabs { - -ms-flex-preferred-size: 0; - flex-basis: 0; - overflow-y: auto; -} -.tab-switcher .tabs { - display: -ms-flexbox; - display: flex; - position: relative; - width: 100%; - overflow-y: hidden; - overflow-x: auto; - padding-top: 5px; - box-sizing: border-box; -} -.tab-switcher .tabs::after, .tab-switcher .tabs::before { - display: block; - content: ""; - -ms-flex: 1 1 auto; - flex: 1 1 auto; - border-bottom: 1px solid; - border-bottom-color: #222; - border-bottom-color: var(--border, #222); -} -.tab-switcher .tabs .tab-wrapper { - height: 28px; - position: relative; - display: -ms-flexbox; - display: flex; - -ms-flex: 0 0 auto; - flex: 0 0 auto; -} -.tab-switcher .tabs .tab-wrapper .tab { - width: 100%; - min-width: 1px; - position: relative; - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - padding: 6px 1em; - padding-bottom: 99px; - margin-bottom: -93px; - white-space: nowrap; - color: #b9b9ba; - color: var(--tabText, #b9b9ba); - background-color: #182230; - background-color: var(--tab, #182230); -} -.tab-switcher .tabs .tab-wrapper .tab:not(.active) { - z-index: 4; -} -.tab-switcher .tabs .tab-wrapper .tab:not(.active):hover { - z-index: 6; -} -.tab-switcher .tabs .tab-wrapper .tab.active { - background: transparent; - z-index: 5; - color: #b9b9ba; - color: var(--tabActiveText, #b9b9ba); -} -.tab-switcher .tabs .tab-wrapper .tab img { - max-height: 26px; - vertical-align: top; - margin-top: -5px; -} -.tab-switcher .tabs .tab-wrapper:not(.active)::after { - content: ""; - position: absolute; - left: 0; - right: 0; - bottom: 0; - z-index: 7; - border-bottom: 1px solid; - border-bottom-color: #222; - border-bottom-color: var(--border, #222); -} -.with-subscription-loading { - padding: 10px; - text-align: center; -} -.with-subscription-loading .error { - font-size: 14px; -} - -/*# sourceMappingURL=app.1055039ce3f2fe4dd110.css.map*/ \ No newline at end of file diff --git a/priv/static/static/css/app.1055039ce3f2fe4dd110.css.map b/priv/static/static/css/app.1055039ce3f2fe4dd110.css.map deleted file mode 100644 index 861ee8313..000000000 --- a/priv/static/static/css/app.1055039ce3f2fe4dd110.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/hocs/with_load_more/with_load_more.scss","webpack:///./src/components/tab_switcher/tab_switcher.scss","webpack:///./src/hocs/with_subscription/with_subscription.scss"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA,C","file":"static/css/app.1055039ce3f2fe4dd110.css","sourcesContent":[".with-load-more-footer {\n padding: 10px;\n text-align: center;\n border-top: 1px solid;\n border-top-color: #222;\n border-top-color: var(--border, #222);\n}\n.with-load-more-footer .error {\n font-size: 14px;\n}",".tab-switcher {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n.tab-switcher .contents {\n -ms-flex: 1 0 auto;\n flex: 1 0 auto;\n min-height: 0px;\n}\n.tab-switcher .contents .hidden {\n display: none;\n}\n.tab-switcher .contents.scrollable-tabs {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n overflow-y: auto;\n}\n.tab-switcher .tabs {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n width: 100%;\n overflow-y: hidden;\n overflow-x: auto;\n padding-top: 5px;\n box-sizing: border-box;\n}\n.tab-switcher .tabs::after, .tab-switcher .tabs::before {\n display: block;\n content: \"\";\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n border-bottom: 1px solid;\n border-bottom-color: #222;\n border-bottom-color: var(--border, #222);\n}\n.tab-switcher .tabs .tab-wrapper {\n height: 28px;\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n}\n.tab-switcher .tabs .tab-wrapper .tab {\n width: 100%;\n min-width: 1px;\n position: relative;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 6px 1em;\n padding-bottom: 99px;\n margin-bottom: -93px;\n white-space: nowrap;\n color: #b9b9ba;\n color: var(--tabText, #b9b9ba);\n background-color: #182230;\n background-color: var(--tab, #182230);\n}\n.tab-switcher .tabs .tab-wrapper .tab:not(.active) {\n z-index: 4;\n}\n.tab-switcher .tabs .tab-wrapper .tab:not(.active):hover {\n z-index: 6;\n}\n.tab-switcher .tabs .tab-wrapper .tab.active {\n background: transparent;\n z-index: 5;\n color: #b9b9ba;\n color: var(--tabActiveText, #b9b9ba);\n}\n.tab-switcher .tabs .tab-wrapper .tab img {\n max-height: 26px;\n vertical-align: top;\n margin-top: -5px;\n}\n.tab-switcher .tabs .tab-wrapper:not(.active)::after {\n content: \"\";\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 7;\n border-bottom: 1px solid;\n border-bottom-color: #222;\n border-bottom-color: var(--border, #222);\n}",".with-subscription-loading {\n padding: 10px;\n text-align: center;\n}\n.with-subscription-loading .error {\n font-size: 14px;\n}"],"sourceRoot":""} \ No newline at end of file diff --git a/priv/static/static/css/app.613cef07981cd95ccceb.css b/priv/static/static/css/app.613cef07981cd95ccceb.css new file mode 100644 index 000000000..c1d5f8188 --- /dev/null +++ b/priv/static/static/css/app.613cef07981cd95ccceb.css @@ -0,0 +1,5 @@ +.with-load-more-footer{padding:10px;text-align:center;border-top:1px solid;border-top-color:#222;border-top-color:var(--border, #222)}.with-load-more-footer .error{font-size:14px} +.tab-switcher{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.tab-switcher .contents{-ms-flex:1 0 auto;flex:1 0 auto;min-height:0px}.tab-switcher .contents .hidden{display:none}.tab-switcher .contents.scrollable-tabs{-ms-flex-preferred-size:0;flex-basis:0;overflow-y:auto}.tab-switcher .tabs{display:-ms-flexbox;display:flex;position:relative;width:100%;overflow-y:hidden;overflow-x:auto;padding-top:5px;box-sizing:border-box}.tab-switcher .tabs::after,.tab-switcher .tabs::before{display:block;content:"";-ms-flex:1 1 auto;flex:1 1 auto;border-bottom:1px solid;border-bottom-color:#222;border-bottom-color:var(--border, #222)}.tab-switcher .tabs .tab-wrapper{height:28px;position:relative;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto}.tab-switcher .tabs .tab-wrapper .tab{width:100%;min-width:1px;position:relative;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:6px 1em;padding-bottom:99px;margin-bottom:-93px;white-space:nowrap;color:#b9b9ba;color:var(--tabText, #b9b9ba);background-color:#182230;background-color:var(--tab, #182230)}.tab-switcher .tabs .tab-wrapper .tab:not(.active){z-index:4}.tab-switcher .tabs .tab-wrapper .tab:not(.active):hover{z-index:6}.tab-switcher .tabs .tab-wrapper .tab.active{background:transparent;z-index:5;color:#b9b9ba;color:var(--tabActiveText, #b9b9ba)}.tab-switcher .tabs .tab-wrapper .tab img{max-height:26px;vertical-align:top;margin-top:-5px}.tab-switcher .tabs .tab-wrapper:not(.active)::after{content:"";position:absolute;left:0;right:0;bottom:0;z-index:7;border-bottom:1px solid;border-bottom-color:#222;border-bottom-color:var(--border, #222)} +.with-subscription-loading{padding:10px;text-align:center}.with-subscription-loading .error{font-size:14px} + +/*# sourceMappingURL=app.613cef07981cd95ccceb.css.map*/ \ No newline at end of file diff --git a/priv/static/static/css/app.613cef07981cd95ccceb.css.map b/priv/static/static/css/app.613cef07981cd95ccceb.css.map new file mode 100644 index 000000000..556e0bb0b --- /dev/null +++ b/priv/static/static/css/app.613cef07981cd95ccceb.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/hocs/with_load_more/with_load_more.scss","webpack:///./src/components/tab_switcher/tab_switcher.scss","webpack:///./src/hocs/with_subscription/with_subscription.scss"],"names":[],"mappings":"AAAA,uBAAuB,aAAa,kBAAkB,qBAAqB,sBAAsB,qCAAqC,8BAA8B,e;ACApK,cAAc,oBAAoB,aAAa,0BAA0B,sBAAsB,wBAAwB,kBAAkB,cAAc,eAAe,gCAAgC,aAAa,wCAAwC,0BAA0B,aAAa,gBAAgB,oBAAoB,oBAAoB,aAAa,kBAAkB,WAAW,kBAAkB,gBAAgB,gBAAgB,sBAAsB,uDAAuD,cAAc,WAAW,kBAAkB,cAAc,wBAAwB,yBAAyB,wCAAwC,iCAAiC,YAAY,kBAAkB,oBAAoB,aAAa,kBAAkB,cAAc,sCAAsC,WAAW,cAAc,kBAAkB,4BAA4B,6BAA6B,gBAAgB,oBAAoB,oBAAoB,mBAAmB,cAAc,8BAA8B,yBAAyB,qCAAqC,mDAAmD,UAAU,yDAAyD,UAAU,6CAA6C,uBAAuB,UAAU,cAAc,oCAAoC,0CAA0C,gBAAgB,mBAAmB,gBAAgB,qDAAqD,WAAW,kBAAkB,OAAO,QAAQ,SAAS,UAAU,wBAAwB,yBAAyB,wC;ACAtlD,2BAA2B,aAAa,kBAAkB,kCAAkC,e","file":"static/css/app.613cef07981cd95ccceb.css","sourcesContent":[".with-load-more-footer{padding:10px;text-align:center;border-top:1px solid;border-top-color:#222;border-top-color:var(--border, #222)}.with-load-more-footer .error{font-size:14px}",".tab-switcher{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.tab-switcher .contents{-ms-flex:1 0 auto;flex:1 0 auto;min-height:0px}.tab-switcher .contents .hidden{display:none}.tab-switcher .contents.scrollable-tabs{-ms-flex-preferred-size:0;flex-basis:0;overflow-y:auto}.tab-switcher .tabs{display:-ms-flexbox;display:flex;position:relative;width:100%;overflow-y:hidden;overflow-x:auto;padding-top:5px;box-sizing:border-box}.tab-switcher .tabs::after,.tab-switcher .tabs::before{display:block;content:\"\";-ms-flex:1 1 auto;flex:1 1 auto;border-bottom:1px solid;border-bottom-color:#222;border-bottom-color:var(--border, #222)}.tab-switcher .tabs .tab-wrapper{height:28px;position:relative;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto}.tab-switcher .tabs .tab-wrapper .tab{width:100%;min-width:1px;position:relative;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:6px 1em;padding-bottom:99px;margin-bottom:-93px;white-space:nowrap;color:#b9b9ba;color:var(--tabText, #b9b9ba);background-color:#182230;background-color:var(--tab, #182230)}.tab-switcher .tabs .tab-wrapper .tab:not(.active){z-index:4}.tab-switcher .tabs .tab-wrapper .tab:not(.active):hover{z-index:6}.tab-switcher .tabs .tab-wrapper .tab.active{background:transparent;z-index:5;color:#b9b9ba;color:var(--tabActiveText, #b9b9ba)}.tab-switcher .tabs .tab-wrapper .tab img{max-height:26px;vertical-align:top;margin-top:-5px}.tab-switcher .tabs .tab-wrapper:not(.active)::after{content:\"\";position:absolute;left:0;right:0;bottom:0;z-index:7;border-bottom:1px solid;border-bottom-color:#222;border-bottom-color:var(--border, #222)}",".with-subscription-loading{padding:10px;text-align:center}.with-subscription-loading .error{font-size:14px}"],"sourceRoot":""} \ No newline at end of file diff --git a/priv/static/static/css/vendors~app.b2603a50868c68a1c192.css b/priv/static/static/css/vendors~app.18fea621d430000acc27.css similarity index 92% rename from priv/static/static/css/vendors~app.b2603a50868c68a1c192.css rename to priv/static/static/css/vendors~app.18fea621d430000acc27.css index a2e625f5e..ef783cbb3 100644 --- a/priv/static/static/css/vendors~app.b2603a50868c68a1c192.css +++ b/priv/static/static/css/vendors~app.18fea621d430000acc27.css @@ -1,11 +1,11 @@ /*! - * Cropper.js v1.4.3 + * Cropper.js v1.5.6 * https://fengyuanchen.github.io/cropperjs * * Copyright 2015-present Chen Fengyuan * Released under the MIT license * - * Date: 2018-10-24T13:07:11.429Z + * Date: 2019-10-04T04:33:44.164Z */ .cropper-container { @@ -16,7 +16,6 @@ .cropper-container { -ms-touch-action: none; touch-action: none; -webkit-user-select: none; - -moz-user-select: none; -ms-user-select: none; user-select: none; } @@ -56,14 +55,14 @@ .cropper-drag-box { .cropper-modal { background-color: #000; - opacity: .5; + opacity: 0.5; } .cropper-view-box { display: block; height: 100%; - outline-color: rgba(51, 153, 255, 0.75); outline: 1px solid #39f; + outline-color: rgba(51, 153, 255, 0.75); overflow: hidden; width: 100%; } @@ -71,7 +70,7 @@ .cropper-view-box { .cropper-dashed { border: 0 dashed #eee; display: block; - opacity: .5; + opacity: 0.5; position: absolute; } @@ -97,28 +96,28 @@ .cropper-center { display: block; height: 0; left: 50%; - opacity: .75; + opacity: 0.75; position: absolute; top: 50%; width: 0; } -.cropper-center:before, -.cropper-center:after { +.cropper-center::before, +.cropper-center::after { background-color: #eee; content: ' '; display: block; position: absolute; } -.cropper-center:before { +.cropper-center::before { height: 1px; left: -3px; top: 0; width: 7px; } -.cropper-center:after { +.cropper-center::after { height: 7px; left: 0; top: -3px; @@ -130,7 +129,7 @@ .cropper-line, .cropper-point { display: block; height: 100%; - opacity: .1; + opacity: 0.1; position: absolute; width: 100%; } @@ -176,7 +175,7 @@ .cropper-line.line-s { .cropper-point { background-color: #39f; height: 5px; - opacity: .75; + opacity: 0.75; width: 5px; } @@ -252,12 +251,12 @@ @media (min-width: 992px) { @media (min-width: 1200px) { .cropper-point.point-se { height: 5px; - opacity: .75; + opacity: 0.75; width: 5px; } } -.cropper-point.point-se:before { +.cropper-point.point-se::before { background-color: #39f; bottom: -50%; content: ' '; @@ -304,4 +303,4 @@ .cropper-disabled .cropper-point { } -/*# sourceMappingURL=vendors~app.b2603a50868c68a1c192.css.map*/ \ No newline at end of file +/*# sourceMappingURL=vendors~app.18fea621d430000acc27.css.map*/ \ No newline at end of file diff --git a/priv/static/static/css/vendors~app.18fea621d430000acc27.css.map b/priv/static/static/css/vendors~app.18fea621d430000acc27.css.map new file mode 100644 index 000000000..057d67d6a --- /dev/null +++ b/priv/static/static/css/vendors~app.18fea621d430000acc27.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./node_modules/cropperjs/dist/cropper.css"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wCAAwC;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA","file":"static/css/vendors~app.18fea621d430000acc27.css","sourcesContent":["/*!\n * Cropper.js v1.5.6\n * https://fengyuanchen.github.io/cropperjs\n *\n * Copyright 2015-present Chen Fengyuan\n * Released under the MIT license\n *\n * Date: 2019-10-04T04:33:44.164Z\n */\n\n.cropper-container {\n direction: ltr;\n font-size: 0;\n line-height: 0;\n position: relative;\n -ms-touch-action: none;\n touch-action: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.cropper-container img {\n display: block;\n height: 100%;\n image-orientation: 0deg;\n max-height: none !important;\n max-width: none !important;\n min-height: 0 !important;\n min-width: 0 !important;\n width: 100%;\n}\n\n.cropper-wrap-box,\n.cropper-canvas,\n.cropper-drag-box,\n.cropper-crop-box,\n.cropper-modal {\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.cropper-wrap-box,\n.cropper-canvas {\n overflow: hidden;\n}\n\n.cropper-drag-box {\n background-color: #fff;\n opacity: 0;\n}\n\n.cropper-modal {\n background-color: #000;\n opacity: 0.5;\n}\n\n.cropper-view-box {\n display: block;\n height: 100%;\n outline: 1px solid #39f;\n outline-color: rgba(51, 153, 255, 0.75);\n overflow: hidden;\n width: 100%;\n}\n\n.cropper-dashed {\n border: 0 dashed #eee;\n display: block;\n opacity: 0.5;\n position: absolute;\n}\n\n.cropper-dashed.dashed-h {\n border-bottom-width: 1px;\n border-top-width: 1px;\n height: calc(100% / 3);\n left: 0;\n top: calc(100% / 3);\n width: 100%;\n}\n\n.cropper-dashed.dashed-v {\n border-left-width: 1px;\n border-right-width: 1px;\n height: 100%;\n left: calc(100% / 3);\n top: 0;\n width: calc(100% / 3);\n}\n\n.cropper-center {\n display: block;\n height: 0;\n left: 50%;\n opacity: 0.75;\n position: absolute;\n top: 50%;\n width: 0;\n}\n\n.cropper-center::before,\n.cropper-center::after {\n background-color: #eee;\n content: ' ';\n display: block;\n position: absolute;\n}\n\n.cropper-center::before {\n height: 1px;\n left: -3px;\n top: 0;\n width: 7px;\n}\n\n.cropper-center::after {\n height: 7px;\n left: 0;\n top: -3px;\n width: 1px;\n}\n\n.cropper-face,\n.cropper-line,\n.cropper-point {\n display: block;\n height: 100%;\n opacity: 0.1;\n position: absolute;\n width: 100%;\n}\n\n.cropper-face {\n background-color: #fff;\n left: 0;\n top: 0;\n}\n\n.cropper-line {\n background-color: #39f;\n}\n\n.cropper-line.line-e {\n cursor: ew-resize;\n right: -3px;\n top: 0;\n width: 5px;\n}\n\n.cropper-line.line-n {\n cursor: ns-resize;\n height: 5px;\n left: 0;\n top: -3px;\n}\n\n.cropper-line.line-w {\n cursor: ew-resize;\n left: -3px;\n top: 0;\n width: 5px;\n}\n\n.cropper-line.line-s {\n bottom: -3px;\n cursor: ns-resize;\n height: 5px;\n left: 0;\n}\n\n.cropper-point {\n background-color: #39f;\n height: 5px;\n opacity: 0.75;\n width: 5px;\n}\n\n.cropper-point.point-e {\n cursor: ew-resize;\n margin-top: -3px;\n right: -3px;\n top: 50%;\n}\n\n.cropper-point.point-n {\n cursor: ns-resize;\n left: 50%;\n margin-left: -3px;\n top: -3px;\n}\n\n.cropper-point.point-w {\n cursor: ew-resize;\n left: -3px;\n margin-top: -3px;\n top: 50%;\n}\n\n.cropper-point.point-s {\n bottom: -3px;\n cursor: s-resize;\n left: 50%;\n margin-left: -3px;\n}\n\n.cropper-point.point-ne {\n cursor: nesw-resize;\n right: -3px;\n top: -3px;\n}\n\n.cropper-point.point-nw {\n cursor: nwse-resize;\n left: -3px;\n top: -3px;\n}\n\n.cropper-point.point-sw {\n bottom: -3px;\n cursor: nesw-resize;\n left: -3px;\n}\n\n.cropper-point.point-se {\n bottom: -3px;\n cursor: nwse-resize;\n height: 20px;\n opacity: 1;\n right: -3px;\n width: 20px;\n}\n\n@media (min-width: 768px) {\n .cropper-point.point-se {\n height: 15px;\n width: 15px;\n }\n}\n\n@media (min-width: 992px) {\n .cropper-point.point-se {\n height: 10px;\n width: 10px;\n }\n}\n\n@media (min-width: 1200px) {\n .cropper-point.point-se {\n height: 5px;\n opacity: 0.75;\n width: 5px;\n }\n}\n\n.cropper-point.point-se::before {\n background-color: #39f;\n bottom: -50%;\n content: ' ';\n display: block;\n height: 200%;\n opacity: 0;\n position: absolute;\n right: -50%;\n width: 200%;\n}\n\n.cropper-invisible {\n opacity: 0;\n}\n\n.cropper-bg {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC');\n}\n\n.cropper-hide {\n display: block;\n height: 0;\n position: absolute;\n width: 0;\n}\n\n.cropper-hidden {\n display: none !important;\n}\n\n.cropper-move {\n cursor: move;\n}\n\n.cropper-crop {\n cursor: crosshair;\n}\n\n.cropper-disabled .cropper-drag-box,\n.cropper-disabled .cropper-face,\n.cropper-disabled .cropper-line,\n.cropper-disabled .cropper-point {\n cursor: not-allowed;\n}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/priv/static/static/css/vendors~app.b2603a50868c68a1c192.css.map b/priv/static/static/css/vendors~app.b2603a50868c68a1c192.css.map deleted file mode 100644 index e7013b291..000000000 --- a/priv/static/static/css/vendors~app.b2603a50868c68a1c192.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/cropperjs/dist/cropper.css"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wCAAwC;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA","file":"static/css/vendors~app.b2603a50868c68a1c192.css","sourcesContent":["/*!\n * Cropper.js v1.4.3\n * https://fengyuanchen.github.io/cropperjs\n *\n * Copyright 2015-present Chen Fengyuan\n * Released under the MIT license\n *\n * Date: 2018-10-24T13:07:11.429Z\n */\n\n.cropper-container {\n direction: ltr;\n font-size: 0;\n line-height: 0;\n position: relative;\n -ms-touch-action: none;\n touch-action: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.cropper-container img {\n display: block;\n height: 100%;\n image-orientation: 0deg;\n max-height: none !important;\n max-width: none !important;\n min-height: 0 !important;\n min-width: 0 !important;\n width: 100%;\n}\n\n.cropper-wrap-box,\n.cropper-canvas,\n.cropper-drag-box,\n.cropper-crop-box,\n.cropper-modal {\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.cropper-wrap-box,\n.cropper-canvas {\n overflow: hidden;\n}\n\n.cropper-drag-box {\n background-color: #fff;\n opacity: 0;\n}\n\n.cropper-modal {\n background-color: #000;\n opacity: .5;\n}\n\n.cropper-view-box {\n display: block;\n height: 100%;\n outline-color: rgba(51, 153, 255, 0.75);\n outline: 1px solid #39f;\n overflow: hidden;\n width: 100%;\n}\n\n.cropper-dashed {\n border: 0 dashed #eee;\n display: block;\n opacity: .5;\n position: absolute;\n}\n\n.cropper-dashed.dashed-h {\n border-bottom-width: 1px;\n border-top-width: 1px;\n height: calc(100% / 3);\n left: 0;\n top: calc(100% / 3);\n width: 100%;\n}\n\n.cropper-dashed.dashed-v {\n border-left-width: 1px;\n border-right-width: 1px;\n height: 100%;\n left: calc(100% / 3);\n top: 0;\n width: calc(100% / 3);\n}\n\n.cropper-center {\n display: block;\n height: 0;\n left: 50%;\n opacity: .75;\n position: absolute;\n top: 50%;\n width: 0;\n}\n\n.cropper-center:before,\n.cropper-center:after {\n background-color: #eee;\n content: ' ';\n display: block;\n position: absolute;\n}\n\n.cropper-center:before {\n height: 1px;\n left: -3px;\n top: 0;\n width: 7px;\n}\n\n.cropper-center:after {\n height: 7px;\n left: 0;\n top: -3px;\n width: 1px;\n}\n\n.cropper-face,\n.cropper-line,\n.cropper-point {\n display: block;\n height: 100%;\n opacity: .1;\n position: absolute;\n width: 100%;\n}\n\n.cropper-face {\n background-color: #fff;\n left: 0;\n top: 0;\n}\n\n.cropper-line {\n background-color: #39f;\n}\n\n.cropper-line.line-e {\n cursor: ew-resize;\n right: -3px;\n top: 0;\n width: 5px;\n}\n\n.cropper-line.line-n {\n cursor: ns-resize;\n height: 5px;\n left: 0;\n top: -3px;\n}\n\n.cropper-line.line-w {\n cursor: ew-resize;\n left: -3px;\n top: 0;\n width: 5px;\n}\n\n.cropper-line.line-s {\n bottom: -3px;\n cursor: ns-resize;\n height: 5px;\n left: 0;\n}\n\n.cropper-point {\n background-color: #39f;\n height: 5px;\n opacity: .75;\n width: 5px;\n}\n\n.cropper-point.point-e {\n cursor: ew-resize;\n margin-top: -3px;\n right: -3px;\n top: 50%;\n}\n\n.cropper-point.point-n {\n cursor: ns-resize;\n left: 50%;\n margin-left: -3px;\n top: -3px;\n}\n\n.cropper-point.point-w {\n cursor: ew-resize;\n left: -3px;\n margin-top: -3px;\n top: 50%;\n}\n\n.cropper-point.point-s {\n bottom: -3px;\n cursor: s-resize;\n left: 50%;\n margin-left: -3px;\n}\n\n.cropper-point.point-ne {\n cursor: nesw-resize;\n right: -3px;\n top: -3px;\n}\n\n.cropper-point.point-nw {\n cursor: nwse-resize;\n left: -3px;\n top: -3px;\n}\n\n.cropper-point.point-sw {\n bottom: -3px;\n cursor: nesw-resize;\n left: -3px;\n}\n\n.cropper-point.point-se {\n bottom: -3px;\n cursor: nwse-resize;\n height: 20px;\n opacity: 1;\n right: -3px;\n width: 20px;\n}\n\n@media (min-width: 768px) {\n .cropper-point.point-se {\n height: 15px;\n width: 15px;\n }\n}\n\n@media (min-width: 992px) {\n .cropper-point.point-se {\n height: 10px;\n width: 10px;\n }\n}\n\n@media (min-width: 1200px) {\n .cropper-point.point-se {\n height: 5px;\n opacity: .75;\n width: 5px;\n }\n}\n\n.cropper-point.point-se:before {\n background-color: #39f;\n bottom: -50%;\n content: ' ';\n display: block;\n height: 200%;\n opacity: 0;\n position: absolute;\n right: -50%;\n width: 200%;\n}\n\n.cropper-invisible {\n opacity: 0;\n}\n\n.cropper-bg {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC');\n}\n\n.cropper-hide {\n display: block;\n height: 0;\n position: absolute;\n width: 0;\n}\n\n.cropper-hidden {\n display: none !important;\n}\n\n.cropper-move {\n cursor: move;\n}\n\n.cropper-crop {\n cursor: crosshair;\n}\n\n.cropper-disabled .cropper-drag-box,\n.cropper-disabled .cropper-face,\n.cropper-disabled .cropper-line,\n.cropper-disabled .cropper-point {\n cursor: not-allowed;\n}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/priv/static/static/font/fontello.1587147224637.woff2 b/priv/static/static/font/fontello.1587147224637.woff2 deleted file mode 100644 index 6192c0f22c3638fc635ae06c158a6345731ceb33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11544 zcmV+zE$7mAPew8T0RR9104*2*4*&oF09OP604%)#0RR9100000000000000000000 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

#Q+1u7#+kOX?5ZfA%NRPB+(1qD&?5%2@# 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 delta 57 zcmZ3po^j23#tAme*Y(#-w136S-I29fhq2aKdX4_|cz&C&4BX5w7=Yl`{zY*xdh-#N G7eWAhM-|-w diff --git a/priv/static/static/font/fontello.1587147224637.svg b/priv/static/static/font/fontello.1588344944597.svg similarity index 100% rename from priv/static/static/font/fontello.1587147224637.svg rename to priv/static/static/font/fontello.1588344944597.svg diff --git a/priv/static/static/font/fontello.1587147224637.ttf b/priv/static/static/font/fontello.1588344944597.ttf similarity index 99% rename from priv/static/static/font/fontello.1587147224637.ttf rename to priv/static/static/font/fontello.1588344944597.ttf index ec6f7f9b47ead3494c58b530b7582b99b1062fff..b990cea9a4cc5969818f885dd184f4acf28ab775 100644 GIT binary patch delta 49 xcmZo!$JnxtaY7@rfk@QGmRe`&WbyCu{5D@1xS3xt0Ku(`FT!B-W*L_kLIAiO5)J?W delta 49 xcmZo!$JnxtaY7?AcSqL7mRe`&HTu`%`E9;3a5KMP0D@cl7sbKo%`z@8gaF5t5)J?W diff --git a/priv/static/static/font/fontello.1587147224637.woff b/priv/static/static/font/fontello.1588344944597.woff similarity index 98% rename from priv/static/static/font/fontello.1587147224637.woff rename to priv/static/static/font/fontello.1588344944597.woff index da56c9221a28baa37ae1cc647fb95d65e4bd9f42..93d102c6f40332c7aecb94b0b1ec83f3f24ba7a7 100644 GIT binary patch delta 67 zcmV-J0KEU$YS?O!!wE6~001@_Fcey`%(gEn diff --git a/priv/static/static/font/fontello.1588344944597.woff2 b/priv/static/static/font/fontello.1588344944597.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..bc4d4dadaa88771c738116e37935c8db40f6a930 GIT binary patch literal 11536 zcmV+rE$`BIPew8T0RR9104)#z4*&oF09OP604%rw0RR9100000000000000000000 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 Cq(3qM literal 0 HcmV?d00001 diff --git a/priv/static/static/fontello.1587147224637.css b/priv/static/static/fontello.1588344944597.css similarity index 89% rename from priv/static/static/fontello.1587147224637.css rename to priv/static/static/fontello.1588344944597.css index 48e6a5b3c..000c1207a 100644 --- a/priv/static/static/fontello.1587147224637.css +++ b/priv/static/static/fontello.1588344944597.css @@ -1,11 +1,11 @@ @font-face { font-family: "Icons"; - src: url("./font/fontello.1587147224637.eot"); - src: url("./font/fontello.1587147224637.eot") format("embedded-opentype"), - url("./font/fontello.1587147224637.woff2") format("woff2"), - url("./font/fontello.1587147224637.woff") format("woff"), - url("./font/fontello.1587147224637.ttf") format("truetype"), - url("./font/fontello.1587147224637.svg") format("svg"); + src: url("./font/fontello.1588344944597.eot"); + src: url("./font/fontello.1588344944597.eot") format("embedded-opentype"), + url("./font/fontello.1588344944597.woff2") format("woff2"), + url("./font/fontello.1588344944597.woff") format("woff"), + url("./font/fontello.1588344944597.ttf") format("truetype"), + url("./font/fontello.1588344944597.svg") format("svg"); font-weight: normal; font-style: normal; } diff --git a/priv/static/static/js/2.0bcc7512986083cd9ecf.js b/priv/static/static/js/2.0bcc7512986083cd9ecf.js new file mode 100644 index 0000000000000000000000000000000000000000..680c9f82a190572e8e90864044065dd174b83eb0 GIT binary patch literal 2190 zcmbVNZExE)5dOYjp|Dv;q7);$apFkOr?vw&tk|%ZPli#@6m7AgNr9x}1d9Iqj-1OUO+i=r|^4%PbOr9ALAqD zgA&)$rA`0W?o}1)e3E6~ch8m*Caek41mA9zNo%P#b;zf)thxQ?t;sVd>ENTSly5Y@ z%hRn-*IM4L>}@gH;&(AFq}bP* zp$K&yjZSw#R(Ts|_T}j$)XK9{AFPu=L>?ql2L6qRpFQDy9B6O_acWxuIH4tX$F6!G z5k~n02H*e(j~ik14}-7Dcmi@h3SO)wq>BS#p_T^YN5LR%U@L7`__d{2LtYxWPkvNd z;zd}3zQFVW8jzA4sV(2gvj)VaBh(!>TDScOr7RrdO(RW(5%gLj%A?3|wrjNI)n{2L zjv*f?Om66UIF!5YH5iJW%B>0*9S+M1(LktTeW@^k*iRCI5%*S0w&%`Z^nsfnLc&Af zq6UuiMMr?;cvJ7~NsM&O0W}0dgXAFyGyb4m9Mm;Ckj$0G)r_Kh4m9=UudA<81k4#H z*c>4|bSWIVB+I}~g_A&yPg-sx<)MGOh|AezdNseu=I=#y NCB>S3^=!+VzX4z(2IK$$ literal 0 HcmV?d00001 diff --git a/priv/static/static/js/2.0bcc7512986083cd9ecf.js.map b/priv/static/static/js/2.0bcc7512986083cd9ecf.js.map new file mode 100644 index 0000000000000000000000000000000000000000..488843d6a2002b4a186b3e693d6cb5923b91b1ff GIT binary patch literal 7763 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


_D*3SQ4?fwN-TNddmy2 zWd+Pr|LI|I#FbofQnpG1ZW>!8jQa$gVZGIc?W}b`IAb4E{IBO$=GR@BRrPZVffewz z!MbZ#|259nIW^O7L9^~B;}Q1GYH1stRB`|r!BZ4N=hkRtwkf|Q`j`RL6H-kvnWqVs(Xl~v)~She;| zpd{D6K*%KQ$R_;x1t@xh)K$Kv)Q?Np>>nO!=cWB)xUyVhw8<@!ZukIvA;`U4ZrQ3H zAt4XJ6*jhjcHm?8?t@hqRe~Gfgd@^j*3JY4iq*4h_6L3ZE6(ZG&E|AA$|an5#f(DQ z*nlBI2-jS~ztR^7 zu|zQL{cLhk)y+L-S$l^<&Pvi`{Yu+Py`L_`P4%WQG_IBG6^n~YGaHs_H~L(3`?T1L zI{S`gO3a6qlyJ%RfI;F1$dWl^WNviKz%V*s5f417yfcqyg9xb@1B8Yw_}6qG#@lfi zTE6JP6?cv>KqH^;?9a9a1#UX;y)!L|_C#>cR6EwFGfHIQ$s^ zX5*J}erScY?(PxL2_h2<5YFM3!~N+yd*^p;TGQV7)|QH8Cxhhh{D@GF?vg&A+`i4_ z;IC#8trSGUh0X@;bf7do#$Vg*{r=q_ zx7$Cy-s*h)_OATLdU)rES48x1 zDB5S8eQq1ZKiglTS$||6qdCf;;rS3B?a%qj{vMj0>E1cgZzk-&zt|cKuefAHvI#Ws z@(P299#?Pz(?M`t{M){?}MtjEg?~i+=$m z>_dY?I1q~>7niWb=IAb6p)Cnq9Q@WDhTnee`Dz^9-Dab&BSiOsqT)YeVcnh}BZx20 zrV{$sjvj$mC6iW>wP1W;5s{W2#FpIq#`GCR^P9N8>M0JXfT4Uw

!{G+gz<7h4h3 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 literal 0 HcmV?d00001 diff --git a/priv/static/static/js/app.3de9191d7fd30b4bf68c.js.map b/priv/static/static/js/app.3de9191d7fd30b4bf68c.js.map new file mode 100644 index 0000000000000000000000000000000000000000..0643ca253157cd9e649282b518e1ad7a2b95e7d5 GIT binary patch literal 1626532 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

qLsxVGvVeEd6Nc&;tUnKYD?L)y2V6T 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

%X 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 Vg1_ClU5Jo?#+SGEZr}d+e*pp{8t?!B literal 0 HcmV?d00001 diff --git a/priv/static/static/js/app.def6476e8bc9b214218b.js b/priv/static/static/js/app.def6476e8bc9b214218b.js deleted file mode 100644 index 1e6ced42d00cf29dd616d2a7b1725cb5098c99ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1045614 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쫍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⁡c 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 Sf3(%Tz16*U1PuvQN&f@3L{&im diff --git a/priv/static/static/js/app.def6476e8bc9b214218b.js.map b/priv/static/static/js/app.def6476e8bc9b214218b.js.map deleted file mode 100644 index a03cad2581e5778e348727271bf6ac11c0e30edd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1658859 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�TW{d&zMieVk|?+s$97Mm^~$Jx!9~A47C8mZ=$R$ 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�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�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 MxsY#k6Rl4XHaG!{y1iubeM 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�d&gPV01eI@HBHEXU$(#WzPgL> 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

  • 9%W6QV^*U-UoSZ=wr=PT< zU$+&i>THN2bJ2G57#sjca6s&G+hEUr*f&q?EE8(ftt{0uDPjux5>2r)#hti(P3Tav zB5s!0-W$7CtnuE(vFV$-FoaO=r$!P`E@vXrYjRTE^QZrCQ7o?T;2)P2$8=ivbM=UN zr-!skJNJY(dt77T@3ywwjjXiXyq-)d>*vVdCbYs-4QTwJ;Va=G6t8(cD?eyaIybd7 zy&#ZRsLRb>Hh-$9rscR=#!4#1&s|z5e*DQCSDa#ZKWbxyM}qduHt~~2+vKMxcDTpTyvY4a?cl8Ol^K^CpSx4A`VhvbJ30@bz5AcRL6mVdX! z4MAX*Sc&iSS({Oh#)4y(UIIUmQA|XTZ}1e2&aGH)lPk#x4~xbUYXo?|0k^;JQN6GS zefsY;Mhht#N7LBp-f7xtXZr`D$aq8Yl=r*vNW~xP(GkA+cRJz%dkx9&4bN9~|0KUt z`H*)#o_Flin}k(~o8sp!ATxJOzEehzVd7)o-ym9Z!cH zvwpOQ4sC!sU-t|ku6Xwtz3^WVTu=_32WY$&_t!7KC?ine`&XqCVHUU4TY6GALA%q& z*w=vTktwCP4uAquL&oqDT6CtdH--F*QRt65C&a(u+y471Kfk<)RsJcy;;uXRe*F<) zmM$AhBRRdxZ0h2}r3b99LTaOcXJ_WpGq*wxgtr0tr3Z{i8yRxK%MNS<2?BAHZNm9| z=l?h|zww>%oLM@nZyNBZ0C6-E@?Oq(s(TWb(#Yt0$Ig?gMXI;tn*4^)OCML^wxbsD z51jfU8H}nVRlYA(Q{;T!SYsCO%Y`_%1a8&o=li&9LH!GZ&)E%6*_Ay_av$8B)j{ z_?Gg!eC{zA*DsAV$cF$so%t(67nz6$q6n(~63U9nh#g>oXvjG5*jB59=*YHy3y#>$S2)Y& z0xIq=<4LU-cyXOu;xE#n0wJ^JF1?95QflTR`_P!%*U!{CEEuU==q@86a6%S=<&M-4 z2v8VD%BKr#!yUD2^70^otcu+ghv^t*D+#Tp7=5jxboLZfh)nSWB1OS%VqBkw=fy>N zkUaAm`w($b*-*Jr3(f~s79l1+5!X3;U>PqzO)PMxSGdXo9Y*VU;(9KbH-C+iX+!tOSqMwE4OeMQpRZlt*^>;GTO?Y=xZh>j0)4yOt<6B6CSnhZ2xSA ze;W{1%~-lGh$;**eRU)<4KKU-{8v-D7{2biqMbi?-&HX`DwP*>i>y&yTleup&P`~Y z@xo-`a5oQ|-4>~Sfb^?TUU)HILi`6kBq;_ou=6?;XzZ=yJpRc#f*BW)DKIA6$Jc(X zr%d153;lHLofgwMWyg-VmE>li7l;->x|O_0(Oxv4x*;%i|E9pjtsj7PD|+nR4z~V- z+rdaJAHv{Y-Lhl{(RFdg`9Bpq!t48pVS>8dAL7Q37GXBlDogrq9Pb55KLWb3>l9!Yc=mcgDDUgR~uz zZ-zRPfysts-nJFG@*H(ga0Te0i{hQP5`50A4f(bbJP3lz<}P%Z(Cc%r_KOle8QsI( zMeY8bU~HZjqRLE7Xs*N2M&-XWbmJ~mMMNp-p6oHG@)vkf?9~Q~1HK)G)C8%|F8h~b zi%>L~Zpe{uzHBpf+WlaOBf%hto}!gz9o|`KFHS^FH9so`LyU-sxP$E&s`^oHKby)@ zpzL4em#&K7$>T=}(p+WKp}t=I-AH{J^%Fae#n3N{pXGd86g%&zE>~Qg{SrT!P|_S5 zS94fzT+L}-;9ij^a^`N9E!crNbc5|v%^zOaL4%wHha1(nc?bFZ+vdmRJL#roz zfFP2_&FC>k6bT`0D)VU!3nqyWr{}k?hoC%o)i_%Fsi3XadHxG`fK0;nNjAd%9Uz_f zb3bK{<7@!f!ac`^8nwjU>D>8{)ntS0vJWcf!Z!XiO=E+@Cw==G=^XarV!`E|T^^>x z9^NCihGW5Y<(Jx}a*o30Lb$wLNO>N|87QYV@4$n?-IQk0jmPhV56qpnn3!q`{R^@A z8p1aH@Dn%EXDxixwvqb}kB}gZn$&y`_*qRO2BF24eeht2lH0d+K7p2NNCfPd&ZBqz zXrn?dym0$VC%CXW24YAFQ?zZDuj-T}4V0J06j~E+ptkg9+de933SqNfOvAl8Ed1a} z+#~_SC+;e%jlH^@pzKhKnG0dgocE$J6B+)lIO4sPbxUV$7evguj-ms&C{s$NmYDK` zvvleiBdH^kkOMiSHBJJJ&62ncSLH_6=+zd}7K@9=Kw^v*CZufvwm;*kXxgW|HB=v4 zO#Pmp*PKLUM#O;EaRB=75BNz&NzOBwKNpkIFyQ2c9j4qSK3ArEzsb=?`}s;91HUsM zXPmk`vjb&7F3@dnX3=_Rk6HLAeGuRr9Ft9OE1hyyLO}Xx{gUNr>^~ z+U{_jL>Uv5WeuYW7bu!E(B!MNpxu2%Se&NDyVA#_h{X8C?m z=8l(vD{;o(1^Iv?yn1_;ITrk^4JKWy@A*H2whtC?#>4&1=~BiRT(UB1zK%{U^If_# zaEUPn?4x^vnnp$y1D~YrVYDE=gHp-Xq1fv?jN#CRxyL=`o-izp?re0L+L9kO=p+7I zUTtIlk&i}Bo=10Ti$s1V;h*{NbaMdv^(^vxsZYb#6aRV~-K*+}S3M3NkNo4S zS3L?<`;qn8^N)lJA*FLsqfPFCK6lf$33L|17A*N1)I9DANVC`mJSF20fSLJ`x{N3& zKN&D3bC=wHY8gCyPiKm@sq05M;{lDOKda#i;CjZbN39`Lf;CUv$R`~mDo&1Gg~M_F z#FUdUIU@P_RQ!tjO(bB^6WiInUfS>Y`Z>I}hM$TzFZR29N5h{=>K07CJT~O3JL5WY zOccRlDDacF10ut<@sy^DAcL(7k~8yprw$>QK=5)mXgRHU0y7bb-Ph6pi@VS~xjvNK z>d;BC42fQRgkj4)Sje9e8bitYv&&=MEP@lGA4f7V0|QTjHubIB$cFJ_qUV-gED`WB z%RXN^unAU-3RPcFBc9{=G<-R0DyFcn<=8{y+X?(T<%=P*#up*`7M|YB+SLdK?Gw zvvnHEZT#6B@5+%-g;QY({K^AI>`ul&BonfhbZFG9?#^o&xd_Su_JY$YEZ9ZpA|!My zp8*Uq_O0U)YXt%&7AFba?pidqM;;@$E;amu+I;0DsMQ{b;^wfD9|PM%zoh(Yuy^2S zXFOGg#qjQqd{~vf_k~ZNj}>D6kZ3&1+=NsyEbu%!cF9&YIt^~dxo$1Z5t4$Q(?eUF z?KbW?_i7}8UBVMHehzfxX9Gy+ zh;5jvcV7y(|Ad%;=E4RY-`EuD$A(f}Q(5A5H1J@~C8;D>-1^YYrjwJ!udS^;+JxA& zu4T2J{8`VU-(KPIl7Rg!f9Be1BP%r-s$pC0eNWs=EUOp_^5wu`*L2twZf$rK8Ein6 zZ^6LV^04Zfdz$_(a1>vQP*his%f77VtUa)A>raqN*M86JR?zPL-VH;9je;#f23(n; zw{hTYHebR`(4L#aFWF#cAb>~!yko};u|nze2;Sb&*?sSd&PD1b2V|3vy0G^$SH(z)PD-sZV z_cK=Sfgrfgx6)YWG`euEk?NhZwl=Mr_nv*f_X9V9w-0%4d*>QMOIUnWGK25?zMdKP zP+dSr1Ubq79<92Pm=44Pq2gpQ-&0YkcnTiesxETN342qx;XR}jX`QyIT1B0$=0E#g zKj$94^F2uNs`3~e*cRB@e?98YV#1b1SKzBC11LZ>qH5`0F|Ih&=aHMGtLNmq*4Gyg z6sbJ(gc|juEFWwGEQ73m?uJk2oF*HeMvsoMCT_4R5OUWpO7iSLI zL^p%z(9F@WAqu_34RPQVTB`p*UR(tYSx_!vRRC;{T<{A@wYHx+rO_u_B0(C5*6E<2e+1bYQebF1Ns@OZl~R zxk-0vE(`1N)$1RH`njc1+}4=-?zknNi}if)78SdP(bD8R-+sx#{{iRLn0-SDp+N{+ zj(o{^n$d&0eaD1O0SeZYiW);j<2?17U5dYW3!&uG;ksb^^zqE9){^(iq=px|wF*tV z&f<@Rp~SaqcREkFIYwim#qRy7OG`#G+-5L~&RyaNQj8|Ak=eYT{73cl#IK||;mOBp z7FmY@*3SF{0-<=}CQF{MO*>=2Rk)${IhH{J4Odp|!R#x;GA_Pc_7eZ|EKIGF`cuZ&7t3M8Le5oK3AJsa>>= z8rX4S*;+e7Zvl#QOo%1T2Ii#<7N^nJO$I6MwVzgE-&%EZE$z1P6g{&AY07jKhleF= zAc>BTDh-c$n5#_*5Ta4pc1Xix7RspX4j!vF@Mx=v*3!#17G5@i$Kf74q(tq*e^?#?sGEY>RHK zGAEdhv-hfG3*7e;AhX1F{EV!}x8}l}H*6-`_iGZZNFd=8MmUdAX&rmf`jI~yFXv`s zt3UJ9qM(!EHp6L3&E~lurXu?h^uUkBm+Yd?y5ohF`k6htL=VUamX}?rFFsYACaGsN zE}f{pv>zI=wyN!xI)-%&)ONdDGelaep*kVGB-SS^PDOK$B~4wkMr*EI+0L&K6%08r zg@L$Ymr&RuPRI0BU_9r24FXGYj`7h>i16c=yDJ)52esu4BplV+lf|F`0LKn8(QE~m zl4#5k);Q{YRt-?$%g&6-SQ~r4YDgwb7tvMI!kggwLlB=9jtD#P=>&c>PYw9gQGxtS zP9Rd#LlCsHl;lt{CY?fuYvp=lyq&{9-FqA~#a0_kqMZ>L9W|W+PhMkXcRjlvq8(dO zrC@RM=*d5HT@4mXv5e^HAP^R3=R*sU>zVgE@J-WFB08<&xeu$AbllCycr%wn4%-1G2}O;|i1vdt!UIf-lMp z=bXs%)!uXjg6$SuvBRe+B75P0Kia?TI9PLZ+c7XtLe8}Z#GkYb6F|x!Hj!>SBizvzK@U3e_nlWxeKE@VkdYxezCO_nt(oh-8KHU_o6fAeI&Awyzq%2fkkhbvx+9pTz3af)+nasZ-|<;nNE(8Tt8 zxZ|rnbOT!bktgLK-QE{<%NhJ1+VV#b0xj4vPk>xKbH7M=bZqAxYCV!k>U-akN?y^D zM)1T}-qx+%VE(gmW#c>6I(T!Rw3azF9P}8s96zWmCusbTK_sQ$%8`qvgA+Hb{?MDd+_HRX501?Qg?Y z5^NWY4HhjQfItBe^K*_yj4KjZ2+g&ota8iMj8sDy1m9~2r3jd!A80!b{q#<`=TDji zCbz>QYpl}Kz2dQ3Wv|8$>8{Tf(00cG@jZ@CvTlv>ZKt?;9obc6U7}^nnW36O} z;&}}l`u|%H$UFQWaw?|&Z5i%Wj*%i6vQaqfQodihCL!8kvUy}uRomS=3h{-F8w6Ya zN~-v-fmvw4{L`TU6CgN>%fgXMo4tdrL}+Y`r|V3}$ZS`vEY1KGm94?4`Dp>hc}4^n zYC5G9-?K^d9mSYm;gV_wr~)>?@9vAQ`(EaTHfT~GdP${*X(zm*=Gs#Wrkj3&?NX|1 zG=$zn%)GZcqv1=-8oR(Zs>W<)yrQwCHi#o_9p2CZXp-1gA1 zMSFA1cWu$7wnN_FhVix6N)v#}nQUb!np-)e&5 znNy?Yxhqw6sTtqOXO=4is3Rem!2adP?ys@aB=HyBeFi3nUleAAxs0!jRW+V|zB%?g zlzx>kB9_Rk#c=#YK(Vy2OD{~{xHQ;nm5b%WC)amnV3fhEcp6`bj*;8JjgD4NgSh5~ z3Qo-aE#!GO3K@>sKsJhEzQBnO`h!9CApWgKjuiluorMBYKEl;!$-*@h!2;7)6LZ#8 zmRRi{hL?-tZ}iZT&?jLb!>m;3u*2f#R~Ej#tRC3JP@yra=WnqLFop?vS@@-}d!HHA z86AHIQN}_5$q#NjmWED@KTuw++7-0)$G=!8t;v(`YH}0#J#wYqy{Zx~lb(W@HG`J$>|2I(#-TF*4;5x<$63Q?-v5 zhiOpcHWYB92>mu*FCYEbMmy9lE6a{X88WgbzZ+v)oo^VEjbBx_8c#qLV`3Oa^459#|YcNpscz6(|WDp^nU>^cr1+Mb^xO1rp^CVvuMa>2~+O z4+npBC&*4N9|J*`|BS8htHS{9O;)Rz{U?rs@M@2b3ueUGD)MzV`t;`z zr<5k4pSL8mlqR8M&;5A*88spL3Fh4X86xVK^W&QFehLX?1DRk#Sc#7=y(C;(k}OF_ zQAGlL&Y1J90aUB|9^hFSL>Fy1ZBz3&BKV19`q?xit>K&KPR`e^apBJj_hmp1l*%eZ z85|k$;aVM6Lu*nNS-hTEmV|b5tlFxwuqRo_#%X-yK!IHemB3=*bM0tCGp9hPYJkEM zXIHZ{&*;V6;VMGC5htb%!NWJCy8ZdVhv@%4DWy7)QC{7ORAHt|6?ar-*wu@Ra1R0Y zOjOw&!~~TCK2m5RfakBZI>7*8Lsj~DZ4dsE4_(N*gf8}(_MahiKjO)RpuxS(Jwoh7 zH@(voiDGb3CyRju+S3@B1D0@Ko!cXk1Z7C85w0p?sBkuo7cBBK7M!n2K{vID9(P?X9Rct-pnm^H{zwi&KPaQV$Pii4*l*{UQv4xeh|wj z>{p~$m9R07p|Yyx(I5p5U)Yt1slpEXQX+a=LdxvM2ZJaH5@qlY4qe#zRY_teuqFHJ zEq@>{-yRBG2mXK}z8jPvlURp-h5}p+_1kktkSQ-Msk$=*!1{;GfaNfLwWU|O+?to= zsplQm5(xm`M@0^h2}=J(=N}lOp-Etd|JCRJH}abH+l>xx@AwBRZCcrOAyXV*n`?lE zP$#97$&jV9aMmxe(7D{SLGp|AX{=s!SkeuMv;vCZvg_zz@$lei7uqUJ$9 zohMISldLZ8)gC$xAWeYF5*9}L<#V14zCI4^J{enr z)*7yydwgY6?kq6RWb1N(S~G*mz-Sh`v=RL6-05YQAIwK*_6sWwPkOsLE87syENuy~ zLfA_P1_e@vqc73dKWY5>Q4;?DK5}sM{eL4zgfjMzM~=oD!tpJLxEnUx8y-Kf0}1(` z?O7N>uXc>lOD zekR^y{&_R?8A&8Wiqb}gl-)-z&#m1D+TzkZrWu;~2bg*eO>=0hT8X58^}@e^_@6K7 zFFJ2Q@dqX_fg)%+Cg}ZxtzH2Xn7e|~bG7E*KLLtA_7#|E@(2s*Khrk(i^CvP{U^iN zTyjXlOg^Pd&iGo0HWjOjLTFOQkQip#<`8udt7NWEuHo~u62Sy^;=8q_XeMyKG5lQVe7`%K>6-EeCTm@gFx$bG{ssj!m#U+n+(DzjM$+1 zXepiRn_xkR4{bjZN~GQAA3PBK{?Lq~C1a}FdEucPBRf*q+=TL_w22d)I7QlZY{8yv zPGmLpsC<{yX@$Dg;muz@{^emX>i*^5{<2uMmxIpXaB=w39p6vpi~pxRo&Ia)F55Xf zz0aLyI_>+5Zsz>-{PbUk3#u(9&+|@q5l_a;?s)l^fBV1wa`-wo)Dn0)xHdi~*f(fv@Y zpBx=$K0I{W%jbD_@nJCjuOA2hrV|I%G|y3^%{hspfI)8zhn)Ls1df3?Q0RmNX^ z;J@~V`SW-=cPfleGpy7Fm8`Nth#s8cIQ!}oqxD{9^a3;jNw1V-Su=bUw*jnKD3`ljPZHg zSq>)S597)FsXZFJcH?cg|MDN>4<8nt`Cz&%TCK%Ly_o~??%e+MW%y<BEYxo z&L>lSd1=o-EH~3Gwe^@h>^JhS0eUJrc=+%yUi9Dp{lkBo+-a8oO}*@1CJ^~=VSsOd z`gVxv)^{VldG7vecMbO5gBat*a{k;|f?r`d-;8}S)tWATGW-w!uAy#6rCEIV@PEFU zVrarY{@eb?E%^Rl_P&LyjbmB&uZ+F3g8(r|yo_-a$8nr&-{VKF?PMnb76=$Xv5?pr z37bo}zx{q+J$iaZBa9#WJl4AVoS0ERtE;Q4s;jH3l@tOI<&F?d55u*#QY+pu64JIk zvqDS6iY)R#UFG6?Tpn0$M;zp6k}g&&HtEJRZ;{eV_+zo9baV1>=GaR3ilRh21$le(^TY)Gz z3@*|;K6(y87j+%uzr(cwcA0^VW=F-6Wi#GFr%q%z!a#&9E3=?85OMNc_@9>`STSFW zrVubk3^V17$UHP1hE@S%!{qREGI)!Qj-rKI|@P~FTs3c$+UZP)R-dk$}ns+m{|y}qvYT+0f_-b&?LleArc`y zjaVrT4>HKw?C}WV*am?H1{uZ2Nj7HDJ~)MT<@{z34Zm`Hb;4S_PO?6FnmILGvs}Rytx|1pHZjdG*xUz6S_YwX-jm&=(ucL~aNy0n%JM2Om0Yh_5KZ3i z9cD*1oCXHoOnOEYhTJkTSVUBrx?zU;P<3WQAD61Y*C3{6%wq{sPUG?dW@Y^R>6_#k z#xMYTJ{^zGx0aXRy?d8p5e#%wn+``O%N!+2?KMHvehXPbZj>uLSD;8 z`+4_Vki0V{QT4$*F!$TLLS{Q-;rYTX*|g+hho#M8Qw(tpV6ejhGb8*gkdBA1B?0Yt zcZsJ_+_K=#*rrrO>{<7`5sEf2ooAt#f+aj0DrtxPaj5|6bM*Pfx{^9g>LJCTI0E#u zgKes0Z?Eh|tp)&g?tXWc9re1&&fR2@i|Pyo@wIdJN>aRQrd;pb4XqYJL3;@eT7{yZ z!f`#H{yFRou&9ml$JZ>@CTsn0`{G8w-%!9-Vr%9cbqmET+Rj_QD~sqNYfjj1682B6$FT3axr)L+unI% z5ZFXwF=|;yFN%@SncdIMu(?t_0V#vwIBB<9e^0Q|kFf<5&FWp&8=(my%YSh~sc0NP zff7?e)M)bVG=sWfz0ppkltchvGU}nXghs1eH(p1*W9%QqOcmPhWqBI6_!N2rtSJI6 zO;@Iy4-XF~qonZ<$ZO5&UczpboOUm=B!@MsA52$yAgY4;WLdR#6Ykh{?)nUJ8+vEf z+;JhccFRi^4HiVs{plTBuMsuLinmpaDdRY0O@t}i8HasC)Y{AzcJ5-yRyf1F81^*1 z=s}pqe8eKqlVjEv?)fA?RsI&hu_E$E*N<^Vu5^@=v_asGx95M#Xt@lXg>{s@wReg5 zxj6wr^7GvIDTrJ!x~ddT4ebtkwA_FrgD~cFgddBGHDWF-Mg-l#AB>0Hia9GZNGMc9 z7J!V0*tv48G$IHLZAJNCUOl7AR1`_Iojg4&2^CEZ9R_Yax4iH->l#gU<}is@Q zbZr73bFgvF>C9fMK1QN5q-+~jfi*;AW%uOw6rIk`>u}lJQFjdTNajK=ga!Mly z$iwt2s9uoH`S2_QOQZsXMzU@Wqd4@Pv_^VjO%>Zl`=|VZ;N~b16dwbGQ z!y2sZq72BysFhm{QozynF1IE`+8}#p)hKm2TX~vI(wtw8=6MY;3~P zDUpqD7pWM$C%2=*DyppfN|X_1(`&6pnHVWmx+`rS#*(A0#7EC%w#6yy6+5^bn^FJ} z5~SBHU0j$pLhO6F*ApG&T3%eVy9 zCI7S|J#b@K9mo!PgCjDq4BDC=6u_WI+ZPx|sS~K%m~yc#f-bP(19Kuq5?SbK9PvfN z1*6Iom|5avDdvE0qT)Y;-oCZXY_%!od2?7>STwRVkoIhSMJZuLZ6yzF4?!lXC$Quu zO1@7AKR^;;#Sr);0sT9iyIa28i!@uhqwE;n>u@Yd*34F-1ELk_;Z}?W!akpLzD+KM zy(0`zR?@<lG@SlY$%iTw5-^ufR6ozZzkJg@dC@(~8gnc*HxFeL zYgWdHDeGtB;lRqG3vQVznU9A!F9rc&n_>2v9L6k25wQ?rYmDP;7{J-!U^qNSxgejp zNyZ?UWfswL7y0Pv(SJY@hqRqq2-72o09uexfYR@83HJHl$aDg;+`n{Bu)7$`aW=L)eXK58 zIzeH+2}FUjmA8tVD`B<4lRW0^T+)jIZj2CHj}+xGza);*mYhKWnvJe!t6F! zKbh$h1M=}RYM~7k;wn#FrdQw))*oPfGsIeH=(>^71^aZMhsimn8NLeOX3xN71CL{e zXWh$J+1U`gFxLy}bpY*PYLBauiVc|_pyh%lpt``(@JtYkJ~Uqz_%^GgkZnW_|L4VU zczm2MEqQVPQKg@k5;U0b(}R-g_*@*L+gQ3p==2)i)hw(Mx~h2Akwj?2l4H3#4XPMI zofCK-O~y!%Fzt0^9u`feM>GHN=npN*ED`y#IQ&jBD5_Ap z!Xg^_tx*sYyL16U2P~%1D;sO#+=UuQJLvZcvX6;l#5evwS_p@7j{TZz$+ZDBaVz;s zzn;-46b-Fr8I3t9HYYO|*GNTKgOsPw$TGAuh3*uxL4VDu9R}N*V&e)EHDCGiXs_v3#BNVacp_kTM(cbSInAwsy@gO!;mVC$sVxb;Ak%!p-p$dE%>>N0Q*G}b0II_TrN zcNgUcMp@a6le>t=4(+j*fShJnZsAk*&i@$-shMd~m878&Rk}NXzaP3g$}VV*E%igj zM>7GM?ZSAGJjUh(zp(e18>1OI{Mlv|^8B2wl(q=&4xuoU)>Io?iYh@j8@RrvZg%g6 zqqj&s7IjXr$y%@x`xr3F9FMJ;Pq5-@ig)pb@kKD%QR%r zCgJ2^$K%|7!7Y*oW<_f}sbo9Q(q0f(+Wri3Ht8h`Piez6%`p2I3G_wNccGZe1c)Gi z`sBWK9w_!Hc3tm5uc{rRv}x)t2VxlGVz!cKJ8guzo(K!%6ekdEmE$)3t&`A-bqTG| zHxSrjq%i9rHT1|O?zyQ{EWkE(vtXRv=HfG295*?VK*+SB-;!rQTNWwyeE@q zPL?77u!EK18S2Y)!3N0pU7wT&@Q*A=E~`-n-{HgT4WtxkAUer4C|HIf>^0pyD+XI4?joNgV@Qrr z?pQ;nOka8O3?_0}pe)E}U8rn~IXq#psh9FpE0|7OZwZ#ekfRu;zvlx2`QYw0%#6~HeE(XrKwnrvX*=aIDynr2bfotC@{wn zwWBSdF3h{?OSY~hS-#l?@f}vJ)d{}~ijndGA*DINDafNSjCRmJV62jYbLI@7^uTU7 zQSMzQYS=B>a&=8e97>wE=IsSALt9je;P;Zl@dauS{1tJiogRv^gQKrACXTTd^JUOs zzWitRqN`UHmX5N6$q76Jd4_`jp&dD7KI^^(4QfBsjHu+~Jy5bBK$Re>In?pc6;wIM zDOIktAqhF2X<# zmBkh_f>~7+mly%bpj0ScsyDGQr&6>5$1Ku4hy(YD@)V~0^u@~`p6oq&@v9z07h3~& z9*44nJ3x`op8MkAgac;Q)Gh&$0?vkmlnvn4689}JhCZ?tEDLW$fSy@>=Puk#Gh8^L zQFX~+QFkJ7Leq0h!1+G8SWQ<`Se|ht**Kg}R$42q#7}l4^*eJt1LDKC z?_lqS?;1|1ain}8_qn2N0-T`HY$qXvXlFd+K0K9FITuOla!@|t&sl94tD>Q>=0msR znMKmVL62LKVUAE=55gO4&8flS%$q-TNGt@$Uq@E(H;7BhVqihKsC!8pLjnso8jJ5M zSXCa%vkJixEs1~hlso}F0WF4P`V&VEh;kgB;a&>a^tg*#3S`(oCClYv!&NNnc@Zo? z?lA12i95b_PHHPqLvav%@C`f=LM|Gm?lwV|TC*hUSRk4PZAYtxa|*|pC1Y}`H?D|{ zhYk)jHZ%E_zz5M>sv%P=3eEA=Hd#D#N9IO6we*z_df~A->&gPw{dEm%54kqZNbPDHc zQ7#OG=$CXwyLZS>Gn{laco_VCiv$XNNxQ5mIviNR@d&LEW9h(~f%8G+K3gj)ilg#kvn){Q{Ogt|Mkr2Rql}k&zXA6MaCU>cF`%|AXIh!adu*XIS+1Aj17m>BTW#@Ym??WO ztihqEUv3f!QA_xhVn(1ARCs5(K};MrZgOAks7He=Xf!{uhGm^|5+#Sjuexx+-%_OA zE?h{V@3Ly)CK2#}c^>xwUE>(dgC5Fohhl{-$*m9rTn0Fav`0Dh{+@pJ;xz_$2b|r@ zoXcXJ^V{J(E;xLPQ*iaM6+3U&H)Num&_8U5D{W+y&qcwEl?6*_jJmuo4eb*K5WQ+{ zpo`41BviC7Sx69pugN*EN1{EM+Ba;fvRFWpvWZIfLUJcj5=nLUFIGpD^`RZEE4{4c zKE+BL<}JXrr(QzPi%zhhaMz~jD2#wm`e+1BjvOh%1>;P}OYk%lVI#AF0IsEA=t_Q} zA@>z3+Aa|wH29=H-%>jnwz3NqrE$KWRCX&(xR$Zm4Y9ojYuEG5sqxP;&wwCFIKq^e@sS! z82ld7nUEZMn9)nLX^T6Gli8Q`VQ0%a8mBwyYIYAm&D1zTTGY1Ts;2Fkz~h8ws_Bq6 z-89AleYLV`W;Pxy+F@2LrC7-&%-2mWP+FG^Wa*Bf$W$p>T;Z(}jOCXav@~grQcU(@ zMU$={%x*N4C^Z{WXElu3gV}XEQf^_*e|<)%ZaFB9PJB z%^m$DBLSdcj;%?{D7vEfs?Ldx$$*gq@1PaTD(rB{zUyY-9tBr2-$og5mT@z1MjW>T z&I*47aL-NotifH#x*5PgX14<|6t4l rx2Dek>AOd1zV6|&s-`-K=#9la3VkB7MJ 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

    < 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�-nllT!0@0Fy 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

    ^KA8#j8ePwqIDNCj!vyvLoX9{L0 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

  • Jc?)Jr7vY0>qSrdZr|DJ!+$(Le~i+ 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

    eRJLL8|l3~2_U;?2N!lwgn-0nc7^v8zL zk(x~eHb{H`pNxFyRt~#lw6h)0mAISS*{{}KUWcSB5D-)0u$9j&PT1_*aM2bjBWaR* zS*Bln)Z9O&iLv}=|1MuOi6{P9Pjel0GC+(O(iShVi21$DTDgjoL(BU={V6FakCit% z^T6|plO~`7G)ObKKe9RFyxAjnuc7m=hOnLGluXUe&hbAIH*|8^oE>AO1nea1HrbWo z8e5@CgAhBZ7wjbLA95&M-*PM2fXvnb4)z&_bNx(2Ejtm~Ocmgmnve`D^PS}H5DQHo zL?Qd09$lM$WNXzF8v}G4?X=D?S2DN$0!)WQc8+f0)clKS;d&1}WPcOr)^qUFTdA3D z`e2PEadzR`pqHzZP1=dN^@YdO`PGUxxtF>^-n6j!l zN{}P%etyjUpsUWH-;+-fR(K}Bm=<{=+cWAw4}|mztfl+WZXg!skuDJdspLB_Cf1!b z9v)mu=>n%vF2gVu?p45y-N$ z-jy=?d4-At9;a|hoy4_(p$P7Umdsg}TWknuX%%`LkSD|78|%dVcXmiiv!YX*$$YU> z5Z`@gl}HS~&n_(;7-RXg0@6es>TD|GO5aBi*KExtw_7a8YYhOb)812QT=tqfI=0iq znK{j%7lFcOXKqtffr6174$O*;WxU(l+~$(IK>Fc!VJuV-9@C!;JttxA9nWL#%Fs}# zd-z!Ht_f+TA7hOoCD4568|7?ko(7Gvva<$J5iC99Rq-PXB|Gn7)o`K?d2Sa>Xri|! z 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

    ### Fixed diff --git a/docs/API/admin_api.md b/docs/API/admin_api.md index 6202c5a1a..23af08961 100644 --- a/docs/API/admin_api.md +++ b/docs/API/admin_api.md @@ -755,6 +755,17 @@ Note: Available `:permission_group` is currently moderator and admin. 404 is ret - 400 Bad Request `"Invalid parameters"` when `status` is missing - On success: `204`, empty response +## `GET /api/pleroma/admin/statuses/:id` + +### Show status by id + +- Params: + - `id`: required, status id +- Response: + - On failure: + - 404 Not Found `"Not Found"` + - On success: JSON, Mastodon Status entity + ## `PUT /api/pleroma/admin/statuses/:id` ### Change the scope of an individual reported status diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index 816c11e01..ac661e515 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -93,7 +93,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do plug( OAuthScopesPlug, %{scopes: ["read:statuses"], admin: true} - when action in [:list_statuses, :list_user_statuses, :list_instance_statuses] + when action in [:list_statuses, :list_user_statuses, :list_instance_statuses, :status_show] ) plug( @@ -837,6 +837,16 @@ def list_statuses(%{assigns: %{user: _admin}} = conn, params) do |> render("index.json", %{activities: activities, as: :activity, skip_relationships: false}) end + def status_show(conn, %{"id" => id}) do + with %Activity{} = activity <- Activity.get_by_id(id) do + conn + |> put_view(StatusView) + |> render("show.json", %{activity: activity}) + else + _ -> errors(conn, {:error, :not_found}) + end + end + def status_update(%{assigns: %{user: admin}} = conn, %{"id" => id} = params) do with {:ok, activity} <- CommonAPI.update_activity_scope(id, params) do {:ok, sensitive} = Ecto.Type.cast(:boolean, params["sensitive"]) diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index 5b00243e9..ef2239d59 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -188,6 +188,7 @@ defmodule Pleroma.Web.Router do post("/reports/:id/notes", AdminAPIController, :report_notes_create) delete("/reports/:report_id/notes/:id", AdminAPIController, :report_notes_delete) + get("/statuses/:id", AdminAPIController, :status_show) put("/statuses/:id", AdminAPIController, :status_update) delete("/statuses/:id", AdminAPIController, :status_delete) get("/statuses", AdminAPIController, :list_statuses) diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index 1862a9589..c3f3ad051 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -1620,6 +1620,25 @@ test "returns 403 when requested by anonymous" do end end + describe "GET /api/pleroma/admin/statuses/:id" do + test "not found", %{conn: conn} do + assert conn + |> get("/api/pleroma/admin/statuses/not_found") + |> json_response(:not_found) + end + + test "shows activity", %{conn: conn} do + activity = insert(:note_activity) + + response = + conn + |> get("/api/pleroma/admin/statuses/#{activity.id}") + |> json_response(200) + + assert response["id"] == activity.id + end + end + describe "PUT /api/pleroma/admin/statuses/:id" do setup do activity = insert(:note_activity) From 88a14da8172cde6316926b5fbaa2f55b6da6f080 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 5 May 2020 17:24:16 +0400 Subject: [PATCH 121/156] Add OpenAPI spec for InstanceController --- lib/pleroma/stats.ex | 2 +- .../api_spec/operations/instance_operation.ex | 169 ++++++++++++++++++ .../controllers/instance_controller.ex | 4 + .../controllers/instance_controller_test.exs | 6 +- 4 files changed, 177 insertions(+), 4 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/instance_operation.ex diff --git a/lib/pleroma/stats.ex b/lib/pleroma/stats.ex index 8d2809bbb..6b3a8a41f 100644 --- a/lib/pleroma/stats.ex +++ b/lib/pleroma/stats.ex @@ -91,7 +91,7 @@ def calculate_stat_data do peers: peers, stats: %{ domain_count: domain_count, - status_count: status_count, + status_count: status_count || 0, user_count: user_count } } diff --git a/lib/pleroma/web/api_spec/operations/instance_operation.ex b/lib/pleroma/web/api_spec/operations/instance_operation.ex new file mode 100644 index 000000000..36a1a9043 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/instance_operation.ex @@ -0,0 +1,169 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.InstanceOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def show_operation do + %Operation{ + tags: ["Instance"], + summary: "Fetch instance", + description: "Information about the server", + operationId: "InstanceController.show", + responses: %{ + 200 => Operation.response("Instance", "application/json", instance()) + } + } + end + + def peers_operation do + %Operation{ + tags: ["Instance"], + summary: "List of connected domains", + operationId: "InstanceController.peers", + responses: %{ + 200 => Operation.response("Array of domains", "application/json", array_of_domains()) + } + } + end + + defp instance do + %Schema{ + type: :object, + properties: %{ + uri: %Schema{type: :string, description: "The domain name of the instance"}, + title: %Schema{type: :string, description: "The title of the website"}, + description: %Schema{ + type: :string, + description: "Admin-defined description of the Mastodon site" + }, + version: %Schema{ + type: :string, + description: "The version of Mastodon installed on the instance" + }, + email: %Schema{ + type: :string, + description: "An email that may be contacted for any inquiries", + format: :email + }, + urls: %Schema{ + type: :object, + description: "URLs of interest for clients apps", + properties: %{ + streaming_api: %Schema{ + type: :string, + description: "Websockets address for push streaming" + } + } + }, + stats: %Schema{ + type: :object, + description: "Statistics about how much information the instance contains", + properties: %{ + user_count: %Schema{ + type: :integer, + description: "Users registered on this instance" + }, + status_count: %Schema{ + type: :integer, + description: "Statuses authored by users on instance" + }, + domain_count: %Schema{ + type: :integer, + description: "Domains federated with this instance" + } + } + }, + thumbnail: %Schema{ + type: :string, + description: "Banner image for the website", + nullable: true + }, + languages: %Schema{ + type: :array, + items: %Schema{type: :string}, + description: "Primary langauges of the website and its staff" + }, + registrations: %Schema{type: :boolean, description: "Whether registrations are enabled"}, + # Extra (not present in Mastodon): + max_toot_chars: %Schema{ + type: :integer, + description: ": Posts character limit (CW/Subject included in the counter)" + }, + poll_limits: %Schema{ + type: :object, + description: "A map with poll limits for local polls", + properties: %{ + max_options: %Schema{ + type: :integer, + description: "Maximum number of options." + }, + max_option_chars: %Schema{ + type: :integer, + description: "Maximum number of characters per option." + }, + min_expiration: %Schema{ + type: :integer, + description: "Minimum expiration time (in seconds)." + }, + max_expiration: %Schema{ + type: :integer, + description: "Maximum expiration time (in seconds)." + } + } + }, + upload_limit: %Schema{ + type: :integer, + description: "File size limit of uploads (except for avatar, background, banner)" + }, + avatar_upload_limit: %Schema{type: :integer, description: "The title of the website"}, + background_upload_limit: %Schema{type: :integer, description: "The title of the website"}, + banner_upload_limit: %Schema{type: :integer, description: "The title of the website"} + }, + example: %{ + "avatar_upload_limit" => 2_000_000, + "background_upload_limit" => 4_000_000, + "banner_upload_limit" => 4_000_000, + "description" => "A Pleroma instance, an alternative fediverse server", + "email" => "lain@lain.com", + "languages" => ["en"], + "max_toot_chars" => 5000, + "poll_limits" => %{ + "max_expiration" => 31_536_000, + "max_option_chars" => 200, + "max_options" => 20, + "min_expiration" => 0 + }, + "registrations" => false, + "stats" => %{ + "domain_count" => 2996, + "status_count" => 15_802, + "user_count" => 5 + }, + "thumbnail" => "https://lain.com/instance/thumbnail.jpeg", + "title" => "lain.com", + "upload_limit" => 16_000_000, + "uri" => "https://lain.com", + "urls" => %{ + "streaming_api" => "wss://lain.com" + }, + "version" => "2.7.2 (compatible; Pleroma 2.0.50-536-g25eec6d7-develop)" + } + } + end + + defp array_of_domains do + %Schema{ + type: :array, + items: %Schema{type: :string}, + example: ["pleroma.site", "lain.com", "bikeshed.party"] + } + end +end diff --git a/lib/pleroma/web/mastodon_api/controllers/instance_controller.ex b/lib/pleroma/web/mastodon_api/controllers/instance_controller.ex index 237f85677..d8859731d 100644 --- a/lib/pleroma/web/mastodon_api/controllers/instance_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/instance_controller.ex @@ -5,12 +5,16 @@ defmodule Pleroma.Web.MastodonAPI.InstanceController do use Pleroma.Web, :controller + plug(OpenApiSpex.Plug.CastAndValidate) + plug( :skip_plug, [Pleroma.Plugs.OAuthScopesPlug, Pleroma.Plugs.EnsurePublicOrAuthenticatedPlug] when action in [:show, :peers] ) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.InstanceOperation + @doc "GET /api/v1/instance" def show(conn, _params) do render(conn, "show.json") diff --git a/test/web/mastodon_api/controllers/instance_controller_test.exs b/test/web/mastodon_api/controllers/instance_controller_test.exs index 2c7fd9fd0..90840d5ab 100644 --- a/test/web/mastodon_api/controllers/instance_controller_test.exs +++ b/test/web/mastodon_api/controllers/instance_controller_test.exs @@ -10,7 +10,7 @@ defmodule Pleroma.Web.MastodonAPI.InstanceControllerTest do test "get instance information", %{conn: conn} do conn = get(conn, "/api/v1/instance") - assert result = json_response(conn, 200) + assert result = json_response_and_validate_schema(conn, 200) email = Pleroma.Config.get([:instance, :email]) # Note: not checking for "max_toot_chars" since it's optional @@ -56,7 +56,7 @@ test "get instance stats", %{conn: conn} do conn = get(conn, "/api/v1/instance") - assert result = json_response(conn, 200) + assert result = json_response_and_validate_schema(conn, 200) stats = result["stats"] @@ -74,7 +74,7 @@ test "get peers", %{conn: conn} do conn = get(conn, "/api/v1/instance/peers") - assert result = json_response(conn, 200) + assert result = json_response_and_validate_schema(conn, 200) assert ["peer1.com", "peer2.com"] == Enum.sort(result) end From b5189d2c50929aa67293e2e39ca020bad43f5f8b Mon Sep 17 00:00:00 2001 From: minibikini Date: Thu, 30 Apr 2020 17:45:48 +0000 Subject: [PATCH 122/156] Apply suggestion to lib/pleroma/web/api_spec/operations/instance_operation.ex --- lib/pleroma/web/api_spec/operations/instance_operation.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/api_spec/operations/instance_operation.ex b/lib/pleroma/web/api_spec/operations/instance_operation.ex index 36a1a9043..9407fa74d 100644 --- a/lib/pleroma/web/api_spec/operations/instance_operation.ex +++ b/lib/pleroma/web/api_spec/operations/instance_operation.ex @@ -26,7 +26,7 @@ def show_operation do def peers_operation do %Operation{ tags: ["Instance"], - summary: "List of connected domains", + summary: "List of known hosts", operationId: "InstanceController.peers", responses: %{ 200 => Operation.response("Array of domains", "application/json", array_of_domains()) From 3817f179d777058259324d2e300780da06cce460 Mon Sep 17 00:00:00 2001 From: minibikini Date: Fri, 1 May 2020 12:46:53 +0000 Subject: [PATCH 123/156] Apply suggestion to lib/pleroma/web/api_spec/operations/instance_operation.ex --- lib/pleroma/web/api_spec/operations/instance_operation.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/api_spec/operations/instance_operation.ex b/lib/pleroma/web/api_spec/operations/instance_operation.ex index 9407fa74d..5644cb54d 100644 --- a/lib/pleroma/web/api_spec/operations/instance_operation.ex +++ b/lib/pleroma/web/api_spec/operations/instance_operation.ex @@ -46,7 +46,7 @@ defp instance do }, version: %Schema{ type: :string, - description: "The version of Mastodon installed on the instance" + description: "The version of Pleroma installed on the instance" }, email: %Schema{ type: :string, From 42a4a863f159b863ec4617fc47697e11f92ff956 Mon Sep 17 00:00:00 2001 From: minibikini Date: Fri, 1 May 2020 12:46:56 +0000 Subject: [PATCH 124/156] Apply suggestion to lib/pleroma/web/api_spec/operations/instance_operation.ex --- lib/pleroma/web/api_spec/operations/instance_operation.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/api_spec/operations/instance_operation.ex b/lib/pleroma/web/api_spec/operations/instance_operation.ex index 5644cb54d..880bd3f1b 100644 --- a/lib/pleroma/web/api_spec/operations/instance_operation.ex +++ b/lib/pleroma/web/api_spec/operations/instance_operation.ex @@ -42,7 +42,7 @@ defp instance do title: %Schema{type: :string, description: "The title of the website"}, description: %Schema{ type: :string, - description: "Admin-defined description of the Mastodon site" + description: "Admin-defined description of the Pleroma site" }, version: %Schema{ type: :string, From ec1e4b4f1acb81fc36b396e7f58f67928dc6a0df Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 5 May 2020 17:40:00 +0400 Subject: [PATCH 125/156] Add OpenAPI spec for FollowRequestController --- .../operations/follow_request_operation.ex | 65 +++++++++++++++++++ .../controllers/follow_request_controller.ex | 5 +- .../follow_request_controller_test.exs | 6 +- 3 files changed, 72 insertions(+), 4 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/follow_request_operation.ex diff --git a/lib/pleroma/web/api_spec/operations/follow_request_operation.ex b/lib/pleroma/web/api_spec/operations/follow_request_operation.ex new file mode 100644 index 000000000..ac4aee6da --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/follow_request_operation.ex @@ -0,0 +1,65 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.FollowRequestOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.Account + alias Pleroma.Web.ApiSpec.Schemas.AccountRelationship + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def index_operation do + %Operation{ + tags: ["Follow Requests"], + summary: "Pending Follows", + security: [%{"oAuth" => ["read:follows", "follow"]}], + operationId: "FollowRequestController.index", + responses: %{ + 200 => + Operation.response("Array of Account", "application/json", %Schema{ + type: :array, + items: Account, + example: [Account.schema().example] + }) + } + } + end + + def authorize_operation do + %Operation{ + tags: ["Follow Requests"], + summary: "Accept Follow", + operationId: "FollowRequestController.authorize", + parameters: [id_param()], + security: [%{"oAuth" => ["follow", "write:follows"]}], + responses: %{ + 200 => Operation.response("Relationship", "application/json", AccountRelationship) + } + } + end + + def reject_operation do + %Operation{ + tags: ["Follow Requests"], + summary: "Reject Follow", + operationId: "FollowRequestController.reject", + parameters: [id_param()], + security: [%{"oAuth" => ["follow", "write:follows"]}], + responses: %{ + 200 => Operation.response("Relationship", "application/json", AccountRelationship) + } + } + end + + defp id_param do + Operation.parameter(:id, :path, :string, "Conversation ID", + example: "123", + required: true + ) + end +end diff --git a/lib/pleroma/web/mastodon_api/controllers/follow_request_controller.ex b/lib/pleroma/web/mastodon_api/controllers/follow_request_controller.ex index 25f2269b9..748b6b475 100644 --- a/lib/pleroma/web/mastodon_api/controllers/follow_request_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/follow_request_controller.ex @@ -10,6 +10,7 @@ defmodule Pleroma.Web.MastodonAPI.FollowRequestController do alias Pleroma.Web.CommonAPI plug(:put_view, Pleroma.Web.MastodonAPI.AccountView) + plug(Pleroma.Web.ApiSpec.CastAndValidate) plug(:assign_follower when action != :index) action_fallback(:errors) @@ -21,6 +22,8 @@ defmodule Pleroma.Web.MastodonAPI.FollowRequestController do %{scopes: ["follow", "write:follows"]} when action != :index ) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.FollowRequestOperation + @doc "GET /api/v1/follow_requests" def index(%{assigns: %{user: followed}} = conn, _params) do follow_requests = User.get_follow_requests(followed) @@ -42,7 +45,7 @@ def reject(%{assigns: %{user: followed, follower: follower}} = conn, _params) do end end - defp assign_follower(%{params: %{"id" => id}} = conn, _) do + defp assign_follower(%{params: %{id: id}} = conn, _) do case User.get_cached_by_id(id) do %User{} = follower -> assign(conn, :follower, follower) nil -> Pleroma.Web.MastodonAPI.FallbackController.call(conn, {:error, :not_found}) |> halt() diff --git a/test/web/mastodon_api/controllers/follow_request_controller_test.exs b/test/web/mastodon_api/controllers/follow_request_controller_test.exs index d8dbe4800..44e12d15a 100644 --- a/test/web/mastodon_api/controllers/follow_request_controller_test.exs +++ b/test/web/mastodon_api/controllers/follow_request_controller_test.exs @@ -27,7 +27,7 @@ test "/api/v1/follow_requests works", %{user: user, conn: conn} do conn = get(conn, "/api/v1/follow_requests") - assert [relationship] = json_response(conn, 200) + assert [relationship] = json_response_and_validate_schema(conn, 200) assert to_string(other_user.id) == relationship["id"] end @@ -44,7 +44,7 @@ test "/api/v1/follow_requests/:id/authorize works", %{user: user, conn: conn} do conn = post(conn, "/api/v1/follow_requests/#{other_user.id}/authorize") - assert relationship = json_response(conn, 200) + assert relationship = json_response_and_validate_schema(conn, 200) assert to_string(other_user.id) == relationship["id"] user = User.get_cached_by_id(user.id) @@ -62,7 +62,7 @@ test "/api/v1/follow_requests/:id/reject works", %{user: user, conn: conn} do conn = post(conn, "/api/v1/follow_requests/#{other_user.id}/reject") - assert relationship = json_response(conn, 200) + assert relationship = json_response_and_validate_schema(conn, 200) assert to_string(other_user.id) == relationship["id"] user = User.get_cached_by_id(user.id) From 7e7a3e15449792581412be002f287c504e3449a6 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 14 Apr 2020 18:36:32 +0400 Subject: [PATCH 126/156] Add OpenAPI spec for FilterController --- lib/pleroma/filter.ex | 9 +- .../api_spec/operations/filter_operation.ex | 89 +++++++++++++++++++ lib/pleroma/web/api_spec/schemas/filter.ex | 51 +++++++++++ .../api_spec/schemas/filter_create_request.ex | 30 +++++++ .../api_spec/schemas/filter_update_request.ex | 41 +++++++++ .../web/api_spec/schemas/filters_response.ex | 40 +++++++++ .../controllers/filter_controller.ex | 54 +++++------ .../web/mastodon_api/views/filter_view.ex | 6 +- test/filter_test.exs | 10 +-- .../controllers/filter_controller_test.exs | 55 ++++++++++-- 10 files changed, 340 insertions(+), 45 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/filter_operation.ex create mode 100644 lib/pleroma/web/api_spec/schemas/filter.ex create mode 100644 lib/pleroma/web/api_spec/schemas/filter_create_request.ex create mode 100644 lib/pleroma/web/api_spec/schemas/filter_update_request.ex create mode 100644 lib/pleroma/web/api_spec/schemas/filters_response.ex diff --git a/lib/pleroma/filter.ex b/lib/pleroma/filter.ex index 7cb49360f..4d61b3650 100644 --- a/lib/pleroma/filter.ex +++ b/lib/pleroma/filter.ex @@ -89,11 +89,10 @@ def delete(%Pleroma.Filter{id: filter_key} = filter) when is_nil(filter_key) do |> Repo.delete() end - def update(%Pleroma.Filter{} = filter) do - destination = Map.from_struct(filter) - - Pleroma.Filter.get(filter.filter_id, %{id: filter.user_id}) - |> cast(destination, [:phrase, :context, :hide, :expires_at, :whole_word]) + def update(%Pleroma.Filter{} = filter, params) do + filter + |> cast(params, [:phrase, :context, :hide, :expires_at, :whole_word]) + |> validate_required([:phrase, :context]) |> Repo.update() end end diff --git a/lib/pleroma/web/api_spec/operations/filter_operation.ex b/lib/pleroma/web/api_spec/operations/filter_operation.ex new file mode 100644 index 000000000..0d673f566 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/filter_operation.ex @@ -0,0 +1,89 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.FilterOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Helpers + alias Pleroma.Web.ApiSpec.Schemas.Filter + alias Pleroma.Web.ApiSpec.Schemas.FilterCreateRequest + alias Pleroma.Web.ApiSpec.Schemas.FiltersResponse + alias Pleroma.Web.ApiSpec.Schemas.FilterUpdateRequest + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def index_operation do + %Operation{ + tags: ["apps"], + summary: "View all filters", + operationId: "FilterController.index", + security: [%{"oAuth" => ["read:filters"]}], + responses: %{ + 200 => Operation.response("Filters", "application/json", FiltersResponse) + } + } + end + + def create_operation do + %Operation{ + tags: ["apps"], + summary: "Create a filter", + operationId: "FilterController.create", + requestBody: Helpers.request_body("Parameters", FilterCreateRequest, required: true), + security: [%{"oAuth" => ["write:filters"]}], + responses: %{200 => Operation.response("Filter", "application/json", Filter)} + } + end + + def show_operation do + %Operation{ + tags: ["apps"], + summary: "View all filters", + parameters: [id_param()], + operationId: "FilterController.show", + security: [%{"oAuth" => ["read:filters"]}], + responses: %{ + 200 => Operation.response("Filter", "application/json", Filter) + } + } + end + + def update_operation do + %Operation{ + tags: ["apps"], + summary: "Update a filter", + parameters: [id_param()], + operationId: "FilterController.update", + requestBody: Helpers.request_body("Parameters", FilterUpdateRequest, required: true), + security: [%{"oAuth" => ["write:filters"]}], + responses: %{ + 200 => Operation.response("Filter", "application/json", Filter) + } + } + end + + def delete_operation do + %Operation{ + tags: ["apps"], + summary: "Remove a filter", + parameters: [id_param()], + operationId: "FilterController.delete", + security: [%{"oAuth" => ["write:filters"]}], + responses: %{ + 200 => + Operation.response("Filter", "application/json", %Schema{ + type: :object, + description: "Empty object" + }) + } + } + end + + defp id_param do + Operation.parameter(:id, :path, :string, "Filter ID", example: "123", required: true) + end +end diff --git a/lib/pleroma/web/api_spec/schemas/filter.ex b/lib/pleroma/web/api_spec/schemas/filter.ex new file mode 100644 index 000000000..fc5480b71 --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/filter.ex @@ -0,0 +1,51 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.Filter do + alias OpenApiSpex.Schema + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "Filter", + type: :object, + properties: %{ + id: %Schema{type: :string}, + phrase: %Schema{type: :string, description: "The text to be filtered"}, + context: %Schema{ + type: :array, + items: %Schema{type: :string, enum: ["home", "notifications", "public", "thread"]}, + description: "The contexts in which the filter should be applied." + }, + expires_at: %Schema{ + type: :string, + format: :"date-time", + description: + "When the filter should no longer be applied. String (ISO 8601 Datetime), or null if the filter does not expire.", + nullable: true + }, + irreversible: %Schema{ + type: :boolean, + description: + "Should matching entities in home and notifications be dropped by the server?" + }, + whole_word: %Schema{ + type: :boolean, + description: "Should the filter consider word boundaries?" + } + }, + example: %{ + "id" => "5580", + "phrase" => "@twitter.com", + "context" => [ + "home", + "notifications", + "public", + "thread" + ], + "whole_word" => false, + "expires_at" => nil, + "irreversible" => true + } + }) +end diff --git a/lib/pleroma/web/api_spec/schemas/filter_create_request.ex b/lib/pleroma/web/api_spec/schemas/filter_create_request.ex new file mode 100644 index 000000000..f2a475b12 --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/filter_create_request.ex @@ -0,0 +1,30 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.FilterCreateRequest do + alias OpenApiSpex.Schema + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "FilterCreateRequest", + allOf: [ + %OpenApiSpex.Reference{"$ref": "#/components/schemas/FilterUpdateRequest"}, + %Schema{ + type: :object, + properties: %{ + irreversible: %Schema{ + type: :bolean, + description: + "Should the server irreversibly drop matching entities from home and notifications?", + default: false + } + } + } + ], + example: %{ + "phrase" => "knights", + "context" => ["home"] + } + }) +end diff --git a/lib/pleroma/web/api_spec/schemas/filter_update_request.ex b/lib/pleroma/web/api_spec/schemas/filter_update_request.ex new file mode 100644 index 000000000..e703db0ce --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/filter_update_request.ex @@ -0,0 +1,41 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.FilterUpdateRequest do + alias OpenApiSpex.Schema + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "FilterUpdateRequest", + type: :object, + properties: %{ + phrase: %Schema{type: :string, description: "The text to be filtered"}, + context: %Schema{ + type: :array, + items: %Schema{type: :string, enum: ["home", "notifications", "public", "thread"]}, + description: + "Array of enumerable strings `home`, `notifications`, `public`, `thread`. At least one context must be specified." + }, + irreversible: %Schema{ + type: :bolean, + description: + "Should the server irreversibly drop matching entities from home and notifications?" + }, + whole_word: %Schema{type: :bolean, description: "Consider word boundaries?", default: true} + # TODO: probably should implement filter expiration + # expires_in: %Schema{ + # type: :string, + # format: :"date-time", + # description: + # "ISO 8601 Datetime for when the filter expires. Otherwise, + # null for a filter that doesn't expire." + # } + }, + required: [:phrase, :context], + example: %{ + "phrase" => "knights", + "context" => ["home"] + } + }) +end diff --git a/lib/pleroma/web/api_spec/schemas/filters_response.ex b/lib/pleroma/web/api_spec/schemas/filters_response.ex new file mode 100644 index 000000000..8c56c5982 --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/filters_response.ex @@ -0,0 +1,40 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.FiltersResponse do + require OpenApiSpex + alias Pleroma.Web.ApiSpec.Schemas.Filter + + OpenApiSpex.schema(%{ + title: "FiltersResponse", + description: "Array of Filters", + type: :array, + items: Filter, + example: [ + %{ + "id" => "5580", + "phrase" => "@twitter.com", + "context" => [ + "home", + "notifications", + "public", + "thread" + ], + "whole_word" => false, + "expires_at" => nil, + "irreversible" => true + }, + %{ + "id" => "6191", + "phrase" => ":eurovision2019:", + "context" => [ + "home" + ], + "whole_word" => true, + "expires_at" => "2019-05-21T13:47:31.333Z", + "irreversible" => false + } + ] + }) +end diff --git a/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex b/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex index 7fd0562c9..dd13a8a09 100644 --- a/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex @@ -10,67 +10,69 @@ defmodule Pleroma.Web.MastodonAPI.FilterController do @oauth_read_actions [:show, :index] + plug(Pleroma.Web.ApiSpec.CastAndValidate) plug(OAuthScopesPlug, %{scopes: ["read:filters"]} when action in @oauth_read_actions) plug( OAuthScopesPlug, %{scopes: ["write:filters"]} when action not in @oauth_read_actions ) + + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.FilterOperation @doc "GET /api/v1/filters" def index(%{assigns: %{user: user}} = conn, _) do filters = Filter.get_filters(user) - render(conn, "filters.json", filters: filters) + render(conn, "index.json", filters: filters) end @doc "POST /api/v1/filters" - def create( - %{assigns: %{user: user}} = conn, - %{"phrase" => phrase, "context" => context} = params - ) do + def create(%{assigns: %{user: user}, body_params: params} = conn, _) do query = %Filter{ user_id: user.id, - phrase: phrase, - context: context, - hide: Map.get(params, "irreversible", false), - whole_word: Map.get(params, "boolean", true) + phrase: params.phrase, + context: params.context, + hide: params.irreversible, + whole_word: params.whole_word # expires_at } {:ok, response} = Filter.create(query) - render(conn, "filter.json", filter: response) + render(conn, "show.json", filter: response) end @doc "GET /api/v1/filters/:id" - def show(%{assigns: %{user: user}} = conn, %{"id" => filter_id}) do + def show(%{assigns: %{user: user}} = conn, %{id: filter_id}) do filter = Filter.get(filter_id, user) - render(conn, "filter.json", filter: filter) + render(conn, "show.json", filter: filter) end @doc "PUT /api/v1/filters/:id" def update( - %{assigns: %{user: user}} = conn, - %{"phrase" => phrase, "context" => context, "id" => filter_id} = params + %{assigns: %{user: user}, body_params: params} = conn, + %{id: filter_id} ) do - query = %Filter{ - user_id: user.id, - filter_id: filter_id, - phrase: phrase, - context: context, - hide: Map.get(params, "irreversible", nil), - whole_word: Map.get(params, "boolean", true) - # expires_at - } + params = + params + |> Map.from_struct() + |> Map.delete(:irreversible) + |> Map.put(:hide, params.irreversible) + |> Enum.reject(fn {_key, value} -> is_nil(value) end) + |> Map.new() - {:ok, response} = Filter.update(query) - render(conn, "filter.json", filter: response) + # TODO: add expires_in -> expires_at + + with %Filter{} = filter <- Filter.get(filter_id, user), + {:ok, %Filter{} = filter} <- Filter.update(filter, params) do + render(conn, "show.json", filter: filter) + end end @doc "DELETE /api/v1/filters/:id" - def delete(%{assigns: %{user: user}} = conn, %{"id" => filter_id}) do + def delete(%{assigns: %{user: user}} = conn, %{id: filter_id}) do query = %Filter{ user_id: user.id, filter_id: filter_id diff --git a/lib/pleroma/web/mastodon_api/views/filter_view.ex b/lib/pleroma/web/mastodon_api/views/filter_view.ex index 97fd1e83f..8d5c381ec 100644 --- a/lib/pleroma/web/mastodon_api/views/filter_view.ex +++ b/lib/pleroma/web/mastodon_api/views/filter_view.ex @@ -7,11 +7,11 @@ defmodule Pleroma.Web.MastodonAPI.FilterView do alias Pleroma.Web.CommonAPI.Utils alias Pleroma.Web.MastodonAPI.FilterView - def render("filters.json", %{filters: filters} = opts) do - render_many(filters, FilterView, "filter.json", opts) + def render("index.json", %{filters: filters} = opts) do + render_many(filters, FilterView, "show.json", opts) end - def render("filter.json", %{filter: filter}) do + def render("show.json", %{filter: filter}) do expires_at = if filter.expires_at do Utils.to_masto_date(filter.expires_at) diff --git a/test/filter_test.exs b/test/filter_test.exs index b2a8330ee..63a30c736 100644 --- a/test/filter_test.exs +++ b/test/filter_test.exs @@ -141,17 +141,15 @@ test "updating a filter" do context: ["home"] } - query_two = %Pleroma.Filter{ - user_id: user.id, - filter_id: 1, + changes = %{ phrase: "who", context: ["home", "timeline"] } {:ok, filter_one} = Pleroma.Filter.create(query_one) - {:ok, filter_two} = Pleroma.Filter.update(query_two) + {:ok, filter_two} = Pleroma.Filter.update(filter_one, changes) assert filter_one != filter_two - assert filter_two.phrase == query_two.phrase - assert filter_two.context == query_two.context + assert filter_two.phrase == changes.phrase + assert filter_two.context == changes.context end end diff --git a/test/web/mastodon_api/controllers/filter_controller_test.exs b/test/web/mastodon_api/controllers/filter_controller_test.exs index 97ab005e0..41a290eb2 100644 --- a/test/web/mastodon_api/controllers/filter_controller_test.exs +++ b/test/web/mastodon_api/controllers/filter_controller_test.exs @@ -5,8 +5,15 @@ defmodule Pleroma.Web.MastodonAPI.FilterControllerTest do use Pleroma.Web.ConnCase + alias Pleroma.Web.ApiSpec + alias Pleroma.Web.ApiSpec.Schemas.Filter + alias Pleroma.Web.ApiSpec.Schemas.FilterCreateRequest + alias Pleroma.Web.ApiSpec.Schemas.FiltersResponse + alias Pleroma.Web.ApiSpec.Schemas.FilterUpdateRequest alias Pleroma.Web.MastodonAPI.FilterView + import OpenApiSpex.TestAssertions + test "creating a filter" do %{conn: conn} = oauth_access(["write:filters"]) @@ -15,7 +22,10 @@ test "creating a filter" do context: ["home"] } - conn = post(conn, "/api/v1/filters", %{"phrase" => filter.phrase, context: filter.context}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/filters", %{"phrase" => filter.phrase, context: filter.context}) assert response = json_response(conn, 200) assert response["phrase"] == filter.phrase @@ -23,6 +33,7 @@ test "creating a filter" do assert response["irreversible"] == false assert response["id"] != nil assert response["id"] != "" + assert_schema(response, "Filter", ApiSpec.spec()) end test "fetching a list of filters" do @@ -53,9 +64,11 @@ test "fetching a list of filters" do assert response == render_json( FilterView, - "filters.json", + "index.json", filters: [filter_two, filter_one] ) + + assert_schema(response, "FiltersResponse", ApiSpec.spec()) end test "get a filter" do @@ -72,7 +85,8 @@ test "get a filter" do conn = get(conn, "/api/v1/filters/#{filter.filter_id}") - assert _response = json_response(conn, 200) + assert response = json_response(conn, 200) + assert_schema(response, "Filter", ApiSpec.spec()) end test "update a filter" do @@ -82,7 +96,8 @@ test "update a filter" do user_id: user.id, filter_id: 2, phrase: "knight", - context: ["home"] + context: ["home"], + hide: true } {:ok, _filter} = Pleroma.Filter.create(query) @@ -93,7 +108,9 @@ test "update a filter" do } conn = - put(conn, "/api/v1/filters/#{query.filter_id}", %{ + conn + |> put_req_header("content-type", "application/json") + |> put("/api/v1/filters/#{query.filter_id}", %{ phrase: new.phrase, context: new.context }) @@ -101,6 +118,8 @@ test "update a filter" do assert response = json_response(conn, 200) assert response["phrase"] == new.phrase assert response["context"] == new.context + assert response["irreversible"] == true + assert_schema(response, "Filter", ApiSpec.spec()) end test "delete a filter" do @@ -120,4 +139,30 @@ test "delete a filter" do assert response = json_response(conn, 200) assert response == %{} end + + describe "OpenAPI" do + test "Filter example matches schema" do + api_spec = ApiSpec.spec() + schema = Filter.schema() + assert_schema(schema.example, "Filter", api_spec) + end + + test "FiltersResponse example matches schema" do + api_spec = ApiSpec.spec() + schema = FiltersResponse.schema() + assert_schema(schema.example, "FiltersResponse", api_spec) + end + + test "FilterCreateRequest example matches schema" do + api_spec = ApiSpec.spec() + schema = FilterCreateRequest.schema() + assert_schema(schema.example, "FilterCreateRequest", api_spec) + end + + test "FilterUpdateRequest example matches schema" do + api_spec = ApiSpec.spec() + schema = FilterUpdateRequest.schema() + assert_schema(schema.example, "FilterUpdateRequest", api_spec) + end + end end From 46aae346f8530d4b9933b8e718e9578a96447f0a Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Mon, 27 Apr 2020 23:54:11 +0400 Subject: [PATCH 127/156] Move single used schemas to Filter operation schema --- .../api_spec/operations/filter_operation.ex | 158 ++++++++++++++++-- lib/pleroma/web/api_spec/schemas/filter.ex | 51 ------ .../api_spec/schemas/filter_create_request.ex | 30 ---- .../api_spec/schemas/filter_update_request.ex | 41 ----- .../web/api_spec/schemas/filters_response.ex | 40 ----- .../controllers/filter_controller.ex | 7 +- .../web/mastodon_api/views/filter_view.ex | 4 +- .../controllers/filter_controller_test.exs | 49 +----- 8 files changed, 158 insertions(+), 222 deletions(-) delete mode 100644 lib/pleroma/web/api_spec/schemas/filter.ex delete mode 100644 lib/pleroma/web/api_spec/schemas/filter_create_request.ex delete mode 100644 lib/pleroma/web/api_spec/schemas/filter_update_request.ex delete mode 100644 lib/pleroma/web/api_spec/schemas/filters_response.ex diff --git a/lib/pleroma/web/api_spec/operations/filter_operation.ex b/lib/pleroma/web/api_spec/operations/filter_operation.ex index 0d673f566..53e57b46b 100644 --- a/lib/pleroma/web/api_spec/operations/filter_operation.ex +++ b/lib/pleroma/web/api_spec/operations/filter_operation.ex @@ -6,10 +6,6 @@ defmodule Pleroma.Web.ApiSpec.FilterOperation do alias OpenApiSpex.Operation alias OpenApiSpex.Schema alias Pleroma.Web.ApiSpec.Helpers - alias Pleroma.Web.ApiSpec.Schemas.Filter - alias Pleroma.Web.ApiSpec.Schemas.FilterCreateRequest - alias Pleroma.Web.ApiSpec.Schemas.FiltersResponse - alias Pleroma.Web.ApiSpec.Schemas.FilterUpdateRequest def open_api_operation(action) do operation = String.to_existing_atom("#{action}_operation") @@ -23,7 +19,7 @@ def index_operation do operationId: "FilterController.index", security: [%{"oAuth" => ["read:filters"]}], responses: %{ - 200 => Operation.response("Filters", "application/json", FiltersResponse) + 200 => Operation.response("Filters", "application/json", array_of_filters()) } } end @@ -33,9 +29,9 @@ def create_operation do tags: ["apps"], summary: "Create a filter", operationId: "FilterController.create", - requestBody: Helpers.request_body("Parameters", FilterCreateRequest, required: true), + requestBody: Helpers.request_body("Parameters", create_request(), required: true), security: [%{"oAuth" => ["write:filters"]}], - responses: %{200 => Operation.response("Filter", "application/json", Filter)} + responses: %{200 => Operation.response("Filter", "application/json", filter())} } end @@ -47,7 +43,7 @@ def show_operation do operationId: "FilterController.show", security: [%{"oAuth" => ["read:filters"]}], responses: %{ - 200 => Operation.response("Filter", "application/json", Filter) + 200 => Operation.response("Filter", "application/json", filter()) } } end @@ -58,10 +54,10 @@ def update_operation do summary: "Update a filter", parameters: [id_param()], operationId: "FilterController.update", - requestBody: Helpers.request_body("Parameters", FilterUpdateRequest, required: true), + requestBody: Helpers.request_body("Parameters", update_request(), required: true), security: [%{"oAuth" => ["write:filters"]}], responses: %{ - 200 => Operation.response("Filter", "application/json", Filter) + 200 => Operation.response("Filter", "application/json", filter()) } } end @@ -86,4 +82,146 @@ def delete_operation do defp id_param do Operation.parameter(:id, :path, :string, "Filter ID", example: "123", required: true) end + + defp filter do + %Schema{ + title: "Filter", + type: :object, + properties: %{ + id: %Schema{type: :string}, + phrase: %Schema{type: :string, description: "The text to be filtered"}, + context: %Schema{ + type: :array, + items: %Schema{type: :string, enum: ["home", "notifications", "public", "thread"]}, + description: "The contexts in which the filter should be applied." + }, + expires_at: %Schema{ + type: :string, + format: :"date-time", + description: + "When the filter should no longer be applied. String (ISO 8601 Datetime), or null if the filter does not expire.", + nullable: true + }, + irreversible: %Schema{ + type: :boolean, + description: + "Should matching entities in home and notifications be dropped by the server?" + }, + whole_word: %Schema{ + type: :boolean, + description: "Should the filter consider word boundaries?" + } + }, + example: %{ + "id" => "5580", + "phrase" => "@twitter.com", + "context" => [ + "home", + "notifications", + "public", + "thread" + ], + "whole_word" => false, + "expires_at" => nil, + "irreversible" => true + } + } + end + + defp array_of_filters do + %Schema{ + title: "ArrayOfFilters", + description: "Array of Filters", + type: :array, + items: filter(), + example: [ + %{ + "id" => "5580", + "phrase" => "@twitter.com", + "context" => [ + "home", + "notifications", + "public", + "thread" + ], + "whole_word" => false, + "expires_at" => nil, + "irreversible" => true + }, + %{ + "id" => "6191", + "phrase" => ":eurovision2019:", + "context" => [ + "home" + ], + "whole_word" => true, + "expires_at" => "2019-05-21T13:47:31.333Z", + "irreversible" => false + } + ] + } + end + + defp create_request do + %Schema{ + title: "FilterCreateRequest", + allOf: [ + update_request(), + %Schema{ + type: :object, + properties: %{ + irreversible: %Schema{ + type: :bolean, + description: + "Should the server irreversibly drop matching entities from home and notifications?", + default: false + } + } + } + ], + example: %{ + "phrase" => "knights", + "context" => ["home"] + } + } + end + + defp update_request do + %Schema{ + title: "FilterUpdateRequest", + type: :object, + properties: %{ + phrase: %Schema{type: :string, description: "The text to be filtered"}, + context: %Schema{ + type: :array, + items: %Schema{type: :string, enum: ["home", "notifications", "public", "thread"]}, + description: + "Array of enumerable strings `home`, `notifications`, `public`, `thread`. At least one context must be specified." + }, + irreversible: %Schema{ + type: :bolean, + description: + "Should the server irreversibly drop matching entities from home and notifications?" + }, + whole_word: %Schema{ + type: :bolean, + description: "Consider word boundaries?", + default: true + } + # TODO: probably should implement filter expiration + # expires_in: %Schema{ + # type: :string, + # format: :"date-time", + # description: + # "ISO 8601 Datetime for when the filter expires. Otherwise, + # null for a filter that doesn't expire." + # } + }, + required: [:phrase, :context], + example: %{ + "phrase" => "knights", + "context" => ["home"] + } + } + end end diff --git a/lib/pleroma/web/api_spec/schemas/filter.ex b/lib/pleroma/web/api_spec/schemas/filter.ex deleted file mode 100644 index fc5480b71..000000000 --- a/lib/pleroma/web/api_spec/schemas/filter.ex +++ /dev/null @@ -1,51 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.ApiSpec.Schemas.Filter do - alias OpenApiSpex.Schema - require OpenApiSpex - - OpenApiSpex.schema(%{ - title: "Filter", - type: :object, - properties: %{ - id: %Schema{type: :string}, - phrase: %Schema{type: :string, description: "The text to be filtered"}, - context: %Schema{ - type: :array, - items: %Schema{type: :string, enum: ["home", "notifications", "public", "thread"]}, - description: "The contexts in which the filter should be applied." - }, - expires_at: %Schema{ - type: :string, - format: :"date-time", - description: - "When the filter should no longer be applied. String (ISO 8601 Datetime), or null if the filter does not expire.", - nullable: true - }, - irreversible: %Schema{ - type: :boolean, - description: - "Should matching entities in home and notifications be dropped by the server?" - }, - whole_word: %Schema{ - type: :boolean, - description: "Should the filter consider word boundaries?" - } - }, - example: %{ - "id" => "5580", - "phrase" => "@twitter.com", - "context" => [ - "home", - "notifications", - "public", - "thread" - ], - "whole_word" => false, - "expires_at" => nil, - "irreversible" => true - } - }) -end diff --git a/lib/pleroma/web/api_spec/schemas/filter_create_request.ex b/lib/pleroma/web/api_spec/schemas/filter_create_request.ex deleted file mode 100644 index f2a475b12..000000000 --- a/lib/pleroma/web/api_spec/schemas/filter_create_request.ex +++ /dev/null @@ -1,30 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.ApiSpec.Schemas.FilterCreateRequest do - alias OpenApiSpex.Schema - require OpenApiSpex - - OpenApiSpex.schema(%{ - title: "FilterCreateRequest", - allOf: [ - %OpenApiSpex.Reference{"$ref": "#/components/schemas/FilterUpdateRequest"}, - %Schema{ - type: :object, - properties: %{ - irreversible: %Schema{ - type: :bolean, - description: - "Should the server irreversibly drop matching entities from home and notifications?", - default: false - } - } - } - ], - example: %{ - "phrase" => "knights", - "context" => ["home"] - } - }) -end diff --git a/lib/pleroma/web/api_spec/schemas/filter_update_request.ex b/lib/pleroma/web/api_spec/schemas/filter_update_request.ex deleted file mode 100644 index e703db0ce..000000000 --- a/lib/pleroma/web/api_spec/schemas/filter_update_request.ex +++ /dev/null @@ -1,41 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.ApiSpec.Schemas.FilterUpdateRequest do - alias OpenApiSpex.Schema - require OpenApiSpex - - OpenApiSpex.schema(%{ - title: "FilterUpdateRequest", - type: :object, - properties: %{ - phrase: %Schema{type: :string, description: "The text to be filtered"}, - context: %Schema{ - type: :array, - items: %Schema{type: :string, enum: ["home", "notifications", "public", "thread"]}, - description: - "Array of enumerable strings `home`, `notifications`, `public`, `thread`. At least one context must be specified." - }, - irreversible: %Schema{ - type: :bolean, - description: - "Should the server irreversibly drop matching entities from home and notifications?" - }, - whole_word: %Schema{type: :bolean, description: "Consider word boundaries?", default: true} - # TODO: probably should implement filter expiration - # expires_in: %Schema{ - # type: :string, - # format: :"date-time", - # description: - # "ISO 8601 Datetime for when the filter expires. Otherwise, - # null for a filter that doesn't expire." - # } - }, - required: [:phrase, :context], - example: %{ - "phrase" => "knights", - "context" => ["home"] - } - }) -end diff --git a/lib/pleroma/web/api_spec/schemas/filters_response.ex b/lib/pleroma/web/api_spec/schemas/filters_response.ex deleted file mode 100644 index 8c56c5982..000000000 --- a/lib/pleroma/web/api_spec/schemas/filters_response.ex +++ /dev/null @@ -1,40 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.ApiSpec.Schemas.FiltersResponse do - require OpenApiSpex - alias Pleroma.Web.ApiSpec.Schemas.Filter - - OpenApiSpex.schema(%{ - title: "FiltersResponse", - description: "Array of Filters", - type: :array, - items: Filter, - example: [ - %{ - "id" => "5580", - "phrase" => "@twitter.com", - "context" => [ - "home", - "notifications", - "public", - "thread" - ], - "whole_word" => false, - "expires_at" => nil, - "irreversible" => true - }, - %{ - "id" => "6191", - "phrase" => ":eurovision2019:", - "context" => [ - "home" - ], - "whole_word" => true, - "expires_at" => "2019-05-21T13:47:31.333Z", - "irreversible" => false - } - ] - }) -end diff --git a/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex b/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex index dd13a8a09..21dc374cd 100644 --- a/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex @@ -35,7 +35,7 @@ def create(%{assigns: %{user: user}, body_params: params} = conn, _) do context: params.context, hide: params.irreversible, whole_word: params.whole_word - # expires_at + # TODO: support `expires_in` parameter (as in Mastodon API) } {:ok, response} = Filter.create(query) @@ -57,13 +57,12 @@ def update( ) do params = params - |> Map.from_struct() |> Map.delete(:irreversible) - |> Map.put(:hide, params.irreversible) + |> Map.put(:hide, params[:irreversible]) |> Enum.reject(fn {_key, value} -> is_nil(value) end) |> Map.new() - # TODO: add expires_in -> expires_at + # TODO: support `expires_in` parameter (as in Mastodon API) with %Filter{} = filter <- Filter.get(filter_id, user), {:ok, %Filter{} = filter} <- Filter.update(filter, params) do diff --git a/lib/pleroma/web/mastodon_api/views/filter_view.ex b/lib/pleroma/web/mastodon_api/views/filter_view.ex index 8d5c381ec..aeff646f5 100644 --- a/lib/pleroma/web/mastodon_api/views/filter_view.ex +++ b/lib/pleroma/web/mastodon_api/views/filter_view.ex @@ -7,8 +7,8 @@ defmodule Pleroma.Web.MastodonAPI.FilterView do alias Pleroma.Web.CommonAPI.Utils alias Pleroma.Web.MastodonAPI.FilterView - def render("index.json", %{filters: filters} = opts) do - render_many(filters, FilterView, "show.json", opts) + def render("index.json", %{filters: filters}) do + render_many(filters, FilterView, "show.json") end def render("show.json", %{filter: filter}) do diff --git a/test/web/mastodon_api/controllers/filter_controller_test.exs b/test/web/mastodon_api/controllers/filter_controller_test.exs index 41a290eb2..f29547d13 100644 --- a/test/web/mastodon_api/controllers/filter_controller_test.exs +++ b/test/web/mastodon_api/controllers/filter_controller_test.exs @@ -5,15 +5,8 @@ defmodule Pleroma.Web.MastodonAPI.FilterControllerTest do use Pleroma.Web.ConnCase - alias Pleroma.Web.ApiSpec - alias Pleroma.Web.ApiSpec.Schemas.Filter - alias Pleroma.Web.ApiSpec.Schemas.FilterCreateRequest - alias Pleroma.Web.ApiSpec.Schemas.FiltersResponse - alias Pleroma.Web.ApiSpec.Schemas.FilterUpdateRequest alias Pleroma.Web.MastodonAPI.FilterView - import OpenApiSpex.TestAssertions - test "creating a filter" do %{conn: conn} = oauth_access(["write:filters"]) @@ -27,13 +20,12 @@ test "creating a filter" do |> put_req_header("content-type", "application/json") |> post("/api/v1/filters", %{"phrase" => filter.phrase, context: filter.context}) - assert response = json_response(conn, 200) + assert response = json_response_and_validate_schema(conn, 200) assert response["phrase"] == filter.phrase assert response["context"] == filter.context assert response["irreversible"] == false assert response["id"] != nil assert response["id"] != "" - assert_schema(response, "Filter", ApiSpec.spec()) end test "fetching a list of filters" do @@ -59,7 +51,7 @@ test "fetching a list of filters" do response = conn |> get("/api/v1/filters") - |> json_response(200) + |> json_response_and_validate_schema(200) assert response == render_json( @@ -67,8 +59,6 @@ test "fetching a list of filters" do "index.json", filters: [filter_two, filter_one] ) - - assert_schema(response, "FiltersResponse", ApiSpec.spec()) end test "get a filter" do @@ -85,8 +75,7 @@ test "get a filter" do conn = get(conn, "/api/v1/filters/#{filter.filter_id}") - assert response = json_response(conn, 200) - assert_schema(response, "Filter", ApiSpec.spec()) + assert response = json_response_and_validate_schema(conn, 200) end test "update a filter" do @@ -115,11 +104,10 @@ test "update a filter" do context: new.context }) - assert response = json_response(conn, 200) + assert response = json_response_and_validate_schema(conn, 200) assert response["phrase"] == new.phrase assert response["context"] == new.context assert response["irreversible"] == true - assert_schema(response, "Filter", ApiSpec.spec()) end test "delete a filter" do @@ -136,33 +124,6 @@ test "delete a filter" do conn = delete(conn, "/api/v1/filters/#{filter.filter_id}") - assert response = json_response(conn, 200) - assert response == %{} - end - - describe "OpenAPI" do - test "Filter example matches schema" do - api_spec = ApiSpec.spec() - schema = Filter.schema() - assert_schema(schema.example, "Filter", api_spec) - end - - test "FiltersResponse example matches schema" do - api_spec = ApiSpec.spec() - schema = FiltersResponse.schema() - assert_schema(schema.example, "FiltersResponse", api_spec) - end - - test "FilterCreateRequest example matches schema" do - api_spec = ApiSpec.spec() - schema = FilterCreateRequest.schema() - assert_schema(schema.example, "FilterCreateRequest", api_spec) - end - - test "FilterUpdateRequest example matches schema" do - api_spec = ApiSpec.spec() - schema = FilterUpdateRequest.schema() - assert_schema(schema.example, "FilterUpdateRequest", api_spec) - end + assert json_response_and_validate_schema(conn, 200) == %{} end end From 32ca9f2c59369c15905f665bee3c759ae963ff91 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 28 Apr 2020 16:25:13 +0400 Subject: [PATCH 128/156] Render mastodon-like errors in FilterController --- lib/pleroma/web/mastodon_api/controllers/filter_controller.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex b/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex index 21dc374cd..abbf0ce02 100644 --- a/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/filter_controller.ex @@ -17,7 +17,7 @@ defmodule Pleroma.Web.MastodonAPI.FilterController do OAuthScopesPlug, %{scopes: ["write:filters"]} when action not in @oauth_read_actions ) - + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.FilterOperation @doc "GET /api/v1/filters" From 3a45952a3a324e5fb823e9bdf3ffe19fb3923cb3 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 5 May 2020 17:44:46 +0400 Subject: [PATCH 129/156] Add OpenAPI spec for ConversationController --- lib/pleroma/conversation/participation.ex | 4 +- .../operations/conversation_operation.ex | 61 +++++++++++++++++++ .../web/api_spec/schemas/conversation.ex | 41 +++++++++++++ lib/pleroma/web/api_spec/schemas/status.ex | 7 ++- .../controllers/conversation_controller.ex | 5 +- .../conversation_controller_test.exs | 22 +++---- 6 files changed, 125 insertions(+), 15 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/conversation_operation.ex create mode 100644 lib/pleroma/web/api_spec/schemas/conversation.ex diff --git a/lib/pleroma/conversation/participation.ex b/lib/pleroma/conversation/participation.ex index 215265fc9..51bb1bda9 100644 --- a/lib/pleroma/conversation/participation.ex +++ b/lib/pleroma/conversation/participation.ex @@ -128,7 +128,7 @@ def for_user(user, params \\ %{}) do |> Pleroma.Pagination.fetch_paginated(params) end - def restrict_recipients(query, user, %{"recipients" => user_ids}) do + def restrict_recipients(query, user, %{recipients: user_ids}) do user_binary_ids = [user.id | user_ids] |> Enum.uniq() @@ -172,7 +172,7 @@ def for_user_with_last_activity_id(user, params \\ %{}) do | last_activity_id: activity_id } end) - |> Enum.filter(& &1.last_activity_id) + |> Enum.reject(&is_nil(&1.last_activity_id)) end def get(_, _ \\ []) diff --git a/lib/pleroma/web/api_spec/operations/conversation_operation.ex b/lib/pleroma/web/api_spec/operations/conversation_operation.ex new file mode 100644 index 000000000..475468893 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/conversation_operation.ex @@ -0,0 +1,61 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.ConversationOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.Conversation + alias Pleroma.Web.ApiSpec.Schemas.FlakeID + + import Pleroma.Web.ApiSpec.Helpers + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def index_operation do + %Operation{ + tags: ["Conversations"], + summary: "Show conversation", + security: [%{"oAuth" => ["read:statuses"]}], + operationId: "ConversationController.index", + parameters: [ + Operation.parameter( + :recipients, + :query, + %Schema{type: :array, items: FlakeID}, + "Only return conversations with the given recipients (a list of user ids)" + ) + | pagination_params() + ], + responses: %{ + 200 => + Operation.response("Array of Conversation", "application/json", %Schema{ + type: :array, + items: Conversation, + example: [Conversation.schema().example] + }) + } + } + end + + def mark_as_read_operation do + %Operation{ + tags: ["Conversations"], + summary: "Mark as read", + operationId: "ConversationController.mark_as_read", + parameters: [ + Operation.parameter(:id, :path, :string, "Conversation ID", + example: "123", + required: true + ) + ], + security: [%{"oAuth" => ["write:conversations"]}], + responses: %{ + 200 => Operation.response("Conversation", "application/json", Conversation) + } + } + end +end diff --git a/lib/pleroma/web/api_spec/schemas/conversation.ex b/lib/pleroma/web/api_spec/schemas/conversation.ex new file mode 100644 index 000000000..d8ff5ba26 --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/conversation.ex @@ -0,0 +1,41 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.Conversation do + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.Account + alias Pleroma.Web.ApiSpec.Schemas.Status + + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "Conversation", + description: "Represents a conversation with \"direct message\" visibility.", + type: :object, + required: [:id, :accounts, :unread], + properties: %{ + id: %Schema{type: :string}, + accounts: %Schema{ + type: :array, + items: Account, + description: "Participants in the conversation" + }, + unread: %Schema{ + type: :boolean, + description: "Is the conversation currently marked as unread?" + }, + # last_status: Status + last_status: %Schema{ + allOf: [Status], + description: "The last status in the conversation, to be used for optional display" + } + }, + example: %{ + "id" => "418450", + "unread" => true, + "accounts" => [Account.schema().example], + "last_status" => Status.schema().example + } + }) +end diff --git a/lib/pleroma/web/api_spec/schemas/status.ex b/lib/pleroma/web/api_spec/schemas/status.ex index aef0588d4..42e9dae19 100644 --- a/lib/pleroma/web/api_spec/schemas/status.ex +++ b/lib/pleroma/web/api_spec/schemas/status.ex @@ -86,7 +86,12 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do properties: %{ content: %Schema{type: :object, additionalProperties: %Schema{type: :string}}, conversation_id: %Schema{type: :integer}, - direct_conversation_id: %Schema{type: :string, nullable: true}, + direct_conversation_id: %Schema{ + type: :integer, + nullable: true, + description: + "The ID of the Mastodon direct message conversation the status is associated with (if any)" + }, emoji_reactions: %Schema{ type: :array, items: %Schema{ diff --git a/lib/pleroma/web/mastodon_api/controllers/conversation_controller.ex b/lib/pleroma/web/mastodon_api/controllers/conversation_controller.ex index c44641526..f35ec3596 100644 --- a/lib/pleroma/web/mastodon_api/controllers/conversation_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/conversation_controller.ex @@ -13,9 +13,12 @@ defmodule Pleroma.Web.MastodonAPI.ConversationController do action_fallback(Pleroma.Web.MastodonAPI.FallbackController) + plug(Pleroma.Web.ApiSpec.CastAndValidate) plug(OAuthScopesPlug, %{scopes: ["read:statuses"]} when action == :index) plug(OAuthScopesPlug, %{scopes: ["write:conversations"]} when action != :index) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.ConversationOperation + @doc "GET /api/v1/conversations" def index(%{assigns: %{user: user}} = conn, params) do participations = Participation.for_user_with_last_activity_id(user, params) @@ -26,7 +29,7 @@ def index(%{assigns: %{user: user}} = conn, params) do end @doc "POST /api/v1/conversations/:id/read" - def mark_as_read(%{assigns: %{user: user}} = conn, %{"id" => participation_id}) do + def mark_as_read(%{assigns: %{user: user}} = conn, %{id: participation_id}) do with %Participation{} = participation <- Repo.get_by(Participation, id: participation_id, user_id: user.id), {:ok, participation} <- Participation.mark_as_read(participation) do diff --git a/test/web/mastodon_api/controllers/conversation_controller_test.exs b/test/web/mastodon_api/controllers/conversation_controller_test.exs index 801b0259b..04695572e 100644 --- a/test/web/mastodon_api/controllers/conversation_controller_test.exs +++ b/test/web/mastodon_api/controllers/conversation_controller_test.exs @@ -36,7 +36,7 @@ test "returns a list of conversations", %{user: user_one, conn: conn} do res_conn = get(conn, "/api/v1/conversations") - assert response = json_response(res_conn, 200) + assert response = json_response_and_validate_schema(res_conn, 200) assert [ %{ @@ -91,18 +91,18 @@ test "filters conversations by recipients", %{user: user_one, conn: conn} do "visibility" => "direct" }) - [conversation1, conversation2] = - conn - |> get("/api/v1/conversations", %{"recipients" => [user_two.id]}) - |> json_response(200) + assert [conversation1, conversation2] = + conn + |> get("/api/v1/conversations?recipients[]=#{user_two.id}") + |> json_response_and_validate_schema(200) assert conversation1["last_status"]["id"] == direct5.id assert conversation2["last_status"]["id"] == direct1.id [conversation1] = conn - |> get("/api/v1/conversations", %{"recipients" => [user_two.id, user_three.id]}) - |> json_response(200) + |> get("/api/v1/conversations?recipients[]=#{user_two.id}&recipients[]=#{user_three.id}") + |> json_response_and_validate_schema(200) assert conversation1["last_status"]["id"] == direct3.id end @@ -126,7 +126,7 @@ test "updates the last_status on reply", %{user: user_one, conn: conn} do [%{"last_status" => res_last_status}] = conn |> get("/api/v1/conversations") - |> json_response(200) + |> json_response_and_validate_schema(200) assert res_last_status["id"] == direct_reply.id end @@ -154,12 +154,12 @@ test "the user marks a conversation as read", %{user: user_one, conn: conn} do [%{"id" => direct_conversation_id, "unread" => true}] = user_two_conn |> get("/api/v1/conversations") - |> json_response(200) + |> json_response_and_validate_schema(200) %{"unread" => false} = user_two_conn |> post("/api/v1/conversations/#{direct_conversation_id}/read") - |> json_response(200) + |> json_response_and_validate_schema(200) assert User.get_cached_by_id(user_one.id).unread_conversation_count == 0 assert User.get_cached_by_id(user_two.id).unread_conversation_count == 0 @@ -175,7 +175,7 @@ test "the user marks a conversation as read", %{user: user_one, conn: conn} do [%{"unread" => true}] = conn |> get("/api/v1/conversations") - |> json_response(200) + |> json_response_and_validate_schema(200) assert User.get_cached_by_id(user_one.id).unread_conversation_count == 1 assert User.get_cached_by_id(user_two.id).unread_conversation_count == 0 From b34debe61540cf845ccf4ac93066e45a1d9c8f85 Mon Sep 17 00:00:00 2001 From: lain Date: Tue, 5 May 2020 16:17:09 +0200 Subject: [PATCH 130/156] Undoing: Move undoing reactions to the pipeline everywhere. --- lib/pleroma/web/activity_pub/activity_pub.ex | 25 --------- lib/pleroma/web/activity_pub/side_effects.ex | 8 +++ .../web/activity_pub/transmogrifier.ex | 27 +-------- lib/pleroma/web/common_api/common_api.ex | 8 ++- .../controllers/pleroma_api_controller.ex | 3 +- test/web/activity_pub/activity_pub_test.exs | 56 ------------------- test/web/activity_pub/side_effects_test.exs | 30 +++++++++- test/web/common_api/common_api_test.exs | 3 +- .../pleroma_api_controller_test.exs | 10 +++- 9 files changed, 57 insertions(+), 113 deletions(-) diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index daad4d751..c94af3b5f 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -373,31 +373,6 @@ defp do_react_with_emoji(user, object, emoji, options) do end end - @spec unreact_with_emoji(User.t(), String.t(), keyword()) :: - {:ok, Activity.t(), Object.t()} | {:error, any()} - def unreact_with_emoji(user, reaction_id, options \\ []) do - with {:ok, result} <- - Repo.transaction(fn -> do_unreact_with_emoji(user, reaction_id, options) end) do - result - end - end - - defp do_unreact_with_emoji(user, reaction_id, options) do - with local <- Keyword.get(options, :local, true), - activity_id <- Keyword.get(options, :activity_id, nil), - user_ap_id <- user.ap_id, - %Activity{actor: ^user_ap_id} = reaction_activity <- Activity.get_by_ap_id(reaction_id), - object <- Object.normalize(reaction_activity), - unreact_data <- make_undo_data(user, reaction_activity, activity_id), - {:ok, activity} <- insert(unreact_data, local), - {:ok, object} <- remove_emoji_reaction_from_object(reaction_activity, object), - :ok <- maybe_federate(activity) do - {:ok, activity, object} - else - {:error, error} -> Repo.rollback(error) - end - end - @spec announce(User.t(), Object.t(), String.t() | nil, boolean(), boolean()) :: {:ok, Activity.t(), Object.t()} | {:error, any()} def announce( diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 8ed91e257..d58df9394 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -45,5 +45,13 @@ def handle_undoing(%{data: %{"type" => "Like"}} = object) do end end + def handle_undoing(%{data: %{"type" => "EmojiReact"}} = object) do + with %Object{} = reacted_object <- Object.get_by_ap_id(object.data["object"]), + {:ok, _} <- Utils.remove_emoji_reaction_from_object(object, reacted_object), + {:ok, _} <- Repo.delete(object) do + :ok + end + end + def handle_undoing(object), do: {:error, ["don't know how to handle", object]} end diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index a60b27bea..94849b5f5 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -806,28 +806,6 @@ def handle_incoming( end end - def handle_incoming( - %{ - "type" => "Undo", - "object" => %{"type" => "EmojiReact", "id" => reaction_activity_id}, - "actor" => _actor, - "id" => id - } = data, - _options - ) do - with actor <- Containment.get_actor(data), - {:ok, %User{} = actor} <- User.get_or_fetch_by_ap_id(actor), - {:ok, activity, _} <- - ActivityPub.unreact_with_emoji(actor, reaction_activity_id, - activity_id: id, - local: false - ) do - {:ok, activity} - else - _e -> :error - end - end - def handle_incoming( %{ "type" => "Undo", @@ -865,10 +843,11 @@ def handle_incoming( def handle_incoming( %{ "type" => "Undo", - "object" => %{"type" => "Like"} + "object" => %{"type" => type} } = data, _options - ) do + ) + when type in ["Like", "EmojiReact"] do with {:ok, activity, _} <- Pipeline.common_pipeline(data, local: false) do {:ok, activity} end diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index a670ea5bc..067ac875e 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -170,7 +170,7 @@ def unfavorite(id, user) do %Object{} = note <- Object.normalize(activity, false), %Activity{} = like <- Utils.get_existing_like(user.ap_id, note), {:ok, undo, _} <- Builder.undo(user, like), - {:ok, activity, _} <- Pipeline.common_pipeline(undo, local: false) do + {:ok, activity, _} <- Pipeline.common_pipeline(undo, local: true) do {:ok, activity} else {:find_activity, _} -> {:error, :not_found} @@ -189,8 +189,10 @@ def react_with_emoji(id, user, emoji) do end def unreact_with_emoji(id, user, emoji) do - with %Activity{} = reaction_activity <- Utils.get_latest_reaction(id, user, emoji) do - ActivityPub.unreact_with_emoji(user, reaction_activity.data["id"]) + with %Activity{} = reaction_activity <- Utils.get_latest_reaction(id, user, emoji), + {:ok, undo, _} <- Builder.undo(user, reaction_activity), + {:ok, activity, _} <- Pipeline.common_pipeline(undo, local: true) do + {:ok, activity} else _ -> {:error, dgettext("errors", "Could not remove reaction emoji")} diff --git a/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex index 1bdb3aa4d..4aa5c1dd8 100644 --- a/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex @@ -98,7 +98,8 @@ def unreact_with_emoji(%{assigns: %{user: user}} = conn, %{ "id" => activity_id, "emoji" => emoji }) do - with {:ok, _activity, _object} <- CommonAPI.unreact_with_emoji(activity_id, user, emoji), + with {:ok, _activity} <- + CommonAPI.unreact_with_emoji(activity_id, user, emoji), activity <- Activity.get_by_id(activity_id) do conn |> put_view(StatusView) diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index 797af66a0..cb2d41f0b 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -939,62 +939,6 @@ test "reverts emoji reaction on error" do end end - describe "unreacting to an object" do - test_with_mock "sends an activity to federation", Federator, [:passthrough], [] do - Config.put([:instance, :federating], true) - user = insert(:user) - reactor = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "YASSSS queen slay"}) - assert object = Object.normalize(activity) - - {:ok, reaction_activity, _object} = ActivityPub.react_with_emoji(reactor, object, "🔥") - - assert called(Federator.publish(reaction_activity)) - - {:ok, unreaction_activity, _object} = - ActivityPub.unreact_with_emoji(reactor, reaction_activity.data["id"]) - - assert called(Federator.publish(unreaction_activity)) - end - - test "adds an undo activity to the db" do - user = insert(:user) - reactor = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "YASSSS queen slay"}) - assert object = Object.normalize(activity) - - {:ok, reaction_activity, _object} = ActivityPub.react_with_emoji(reactor, object, "🔥") - - {:ok, unreaction_activity, _object} = - ActivityPub.unreact_with_emoji(reactor, reaction_activity.data["id"]) - - assert unreaction_activity.actor == reactor.ap_id - assert unreaction_activity.data["object"] == reaction_activity.data["id"] - - object = Object.get_by_ap_id(object.data["id"]) - assert object.data["reaction_count"] == 0 - assert object.data["reactions"] == [] - end - - test "reverts emoji unreact on error" do - [user, reactor] = insert_list(2, :user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "Status"}) - object = Object.normalize(activity) - - {:ok, reaction_activity, _object} = ActivityPub.react_with_emoji(reactor, object, "😀") - - with_mock(Utils, [:passthrough], maybe_federate: fn _ -> {:error, :reverted} end) do - assert {:error, :reverted} = - ActivityPub.unreact_with_emoji(reactor, reaction_activity.data["id"]) - end - - object = Object.get_by_ap_id(object.data["id"]) - - assert object.data["reaction_count"] == 1 - assert object.data["reactions"] == [["😀", [reactor.ap_id]]] - end - end - describe "announcing an object" do test "adds an announce activity to the db" do note_activity = insert(:note_activity) diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index 61ef72742..abcfdfa2f 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -23,10 +23,38 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do {:ok, post} = CommonAPI.post(poster, %{"status" => "hey"}) {:ok, like} = CommonAPI.favorite(user, post.id) + {:ok, reaction, _} = CommonAPI.react_with_emoji(post.id, user, "👍") + {:ok, undo_data, _meta} = Builder.undo(user, like) {:ok, like_undo, _meta} = ActivityPub.persist(undo_data, local: true) - %{like_undo: like_undo, post: post, like: like} + {:ok, undo_data, _meta} = Builder.undo(user, reaction) + {:ok, reaction_undo, _meta} = ActivityPub.persist(undo_data, local: true) + + %{ + like_undo: like_undo, + post: post, + like: like, + reaction_undo: reaction_undo, + reaction: reaction + } + end + + test "a reaction undo removes the reaction from the object", %{ + reaction_undo: reaction_undo, + post: post + } do + {:ok, _reaction_undo, _} = SideEffects.handle(reaction_undo) + + object = Object.get_by_ap_id(post.data["object"]) + + assert object.data["reaction_count"] == 0 + assert object.data["reactions"] == [] + end + + test "deletes the original reaction", %{reaction_undo: reaction_undo, reaction: reaction} do + {:ok, _reaction_undo, _} = SideEffects.handle(reaction_undo) + refute Activity.get_by_id(reaction.id) end test "a like undo removes the like from the object", %{like_undo: like_undo, post: post} do diff --git a/test/web/common_api/common_api_test.exs b/test/web/common_api/common_api_test.exs index bc0c1a791..0664b7f90 100644 --- a/test/web/common_api/common_api_test.exs +++ b/test/web/common_api/common_api_test.exs @@ -295,10 +295,11 @@ test "unreacting to a status with an emoji" do {:ok, activity} = CommonAPI.post(other_user, %{"status" => "cofe"}) {:ok, reaction, _} = CommonAPI.react_with_emoji(activity.id, user, "👍") - {:ok, unreaction, _} = CommonAPI.unreact_with_emoji(activity.id, user, "👍") + {:ok, unreaction} = CommonAPI.unreact_with_emoji(activity.id, user, "👍") assert unreaction.data["type"] == "Undo" assert unreaction.data["object"] == reaction.data["id"] + assert unreaction.local end test "repeating a status" do diff --git a/test/web/pleroma_api/controllers/pleroma_api_controller_test.exs b/test/web/pleroma_api/controllers/pleroma_api_controller_test.exs index 61a1689b9..299dbad41 100644 --- a/test/web/pleroma_api/controllers/pleroma_api_controller_test.exs +++ b/test/web/pleroma_api/controllers/pleroma_api_controller_test.exs @@ -3,12 +3,14 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.PleromaAPI.PleromaAPIControllerTest do + use Oban.Testing, repo: Pleroma.Repo use Pleroma.Web.ConnCase alias Pleroma.Conversation.Participation alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Repo + alias Pleroma.Tests.ObanHelpers alias Pleroma.User alias Pleroma.Web.CommonAPI @@ -41,7 +43,9 @@ test "DELETE /api/v1/pleroma/statuses/:id/reactions/:emoji", %{conn: conn} do other_user = insert(:user) {:ok, activity} = CommonAPI.post(user, %{"status" => "#cofe"}) - {:ok, activity, _object} = CommonAPI.react_with_emoji(activity.id, other_user, "☕") + {:ok, _reaction, _object} = CommonAPI.react_with_emoji(activity.id, other_user, "☕") + + ObanHelpers.perform_all() result = conn @@ -52,7 +56,9 @@ test "DELETE /api/v1/pleroma/statuses/:id/reactions/:emoji", %{conn: conn} do assert %{"id" => id} = json_response(result, 200) assert to_string(activity.id) == id - object = Object.normalize(activity) + ObanHelpers.perform_all() + + object = Object.get_by_ap_id(activity.data["object"]) assert object.data["reaction_count"] == 0 end From a3bb2e5474ee068bf375b24df8906e51654c9699 Mon Sep 17 00:00:00 2001 From: lain Date: Tue, 5 May 2020 16:42:34 +0200 Subject: [PATCH 131/156] Undoing: Move undoing announcements to the pipeline everywhere. --- lib/pleroma/user.ex | 10 +--- lib/pleroma/web/activity_pub/activity_pub.ex | 28 ----------- lib/pleroma/web/activity_pub/side_effects.ex | 8 ++++ .../web/activity_pub/transmogrifier.ex | 21 +-------- lib/pleroma/web/common_api/common_api.ex | 9 ++-- .../controllers/status_controller.ex | 6 +-- test/notification_test.exs | 2 +- test/web/activity_pub/activity_pub_test.exs | 46 ------------------- test/web/activity_pub/side_effects_test.exs | 26 ++++++++++- .../transmogrifier/undo_handling_test.exs | 5 +- 10 files changed, 45 insertions(+), 116 deletions(-) diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 0136ba119..aa675a521 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -1554,7 +1554,7 @@ defp delete_activity(%{data: %{"type" => "Create"}} = activity) do |> ActivityPub.delete() end - defp delete_activity(%{data: %{"type" => "Like"}} = activity) do + defp delete_activity(%{data: %{"type" => type}} = activity) when type in ["Like", "Announce"] do actor = activity.actor |> get_cached_by_ap_id() @@ -1564,14 +1564,6 @@ defp delete_activity(%{data: %{"type" => "Like"}} = activity) do Pipeline.common_pipeline(undo, local: true) end - defp delete_activity(%{data: %{"type" => "Announce"}} = activity) do - object = Object.normalize(activity) - - activity.actor - |> get_cached_by_ap_id() - |> ActivityPub.unannounce(object) - end - defp delete_activity(_activity), do: "Doing nothing" def html_filter_policy(%User{no_rich_text: true}) do diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index c94af3b5f..be3d72c82 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -402,34 +402,6 @@ defp do_announce(user, object, activity_id, local, public) do end end - @spec unannounce(User.t(), Object.t(), String.t() | nil, boolean()) :: - {:ok, Activity.t(), Object.t()} | {:ok, Object.t()} | {:error, any()} - def unannounce( - %User{} = actor, - %Object{} = object, - activity_id \\ nil, - local \\ true - ) do - with {:ok, result} <- - Repo.transaction(fn -> do_unannounce(actor, object, activity_id, local) end) do - result - end - end - - defp do_unannounce(actor, object, activity_id, local) do - with %Activity{} = announce_activity <- get_existing_announce(actor.ap_id, object), - unannounce_data <- make_unannounce_data(actor, announce_activity, activity_id), - {:ok, unannounce_activity} <- insert(unannounce_data, local), - :ok <- maybe_federate(unannounce_activity), - {:ok, _activity} <- Repo.delete(announce_activity), - {:ok, object} <- remove_announce_from_object(announce_activity, object) do - {:ok, unannounce_activity, object} - else - nil -> {:ok, object} - {:error, error} -> Repo.rollback(error) - end - end - @spec follow(User.t(), User.t(), String.t() | nil, boolean()) :: {:ok, Activity.t()} | {:error, any()} def follow(follower, followed, activity_id \\ nil, local \\ true) do diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index d58df9394..146d30ac1 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -53,5 +53,13 @@ def handle_undoing(%{data: %{"type" => "EmojiReact"}} = object) do end end + def handle_undoing(%{data: %{"type" => "Announce"}} = object) do + with %Object{} = liked_object <- Object.get_by_ap_id(object.data["object"]), + {:ok, _} <- Utils.remove_announce_from_object(object, liked_object), + {:ok, _} <- Repo.delete(object) do + :ok + end + end + def handle_undoing(object), do: {:error, ["don't know how to handle", object]} end diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index 94849b5f5..afa171448 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -768,25 +768,6 @@ def handle_incoming( end end - def handle_incoming( - %{ - "type" => "Undo", - "object" => %{"type" => "Announce", "object" => object_id}, - "actor" => _actor, - "id" => id - } = data, - _options - ) do - with actor <- Containment.get_actor(data), - {:ok, %User{} = actor} <- User.get_or_fetch_by_ap_id(actor), - {:ok, object} <- get_obj_helper(object_id), - {:ok, activity, _} <- ActivityPub.unannounce(actor, object, id, false) do - {:ok, activity} - else - _e -> :error - end - end - def handle_incoming( %{ "type" => "Undo", @@ -847,7 +828,7 @@ def handle_incoming( } = data, _options ) - when type in ["Like", "EmojiReact"] do + when type in ["Like", "EmojiReact", "Announce"] do with {:ok, activity, _} <- Pipeline.common_pipeline(data, local: false) do {:ok, activity} end diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index 067ac875e..fc8246871 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -107,9 +107,12 @@ def repeat(id, user, params \\ %{}) do def unrepeat(id, user) do with {_, %Activity{data: %{"type" => "Create"}} = activity} <- - {:find_activity, Activity.get_by_id(id)} do - object = Object.normalize(activity) - ActivityPub.unannounce(user, object) + {:find_activity, Activity.get_by_id(id)}, + %Object{} = note <- Object.normalize(activity, false), + %Activity{} = announce <- Utils.get_existing_announce(user.ap_id, note), + {:ok, undo, _} <- Builder.undo(user, announce), + {:ok, activity, _} <- Pipeline.common_pipeline(undo, local: true) do + {:ok, activity} else {:find_activity, _} -> {:error, :not_found} _ -> {:error, dgettext("errors", "Could not unrepeat")} diff --git a/lib/pleroma/web/mastodon_api/controllers/status_controller.ex b/lib/pleroma/web/mastodon_api/controllers/status_controller.ex index 2a5eac9d9..12e3ba15e 100644 --- a/lib/pleroma/web/mastodon_api/controllers/status_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/status_controller.ex @@ -206,9 +206,9 @@ def reblog(%{assigns: %{user: user}} = conn, %{"id" => ap_id_or_id} = params) do end @doc "POST /api/v1/statuses/:id/unreblog" - def unreblog(%{assigns: %{user: user}} = conn, %{"id" => ap_id_or_id}) do - with {:ok, _unannounce, %{data: %{"id" => id}}} <- CommonAPI.unrepeat(ap_id_or_id, user), - %Activity{} = activity <- Activity.get_create_by_object_ap_id_with_object(id) do + def unreblog(%{assigns: %{user: user}} = conn, %{"id" => activity_id}) do + with {:ok, _unannounce} <- CommonAPI.unrepeat(activity_id, user), + %Activity{} = activity <- Activity.get_by_id(activity_id) do try_render(conn, "show.json", %{activity: activity, for: user, as: :activity}) end end diff --git a/test/notification_test.exs b/test/notification_test.exs index 7d5b82993..09714f4c5 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -758,7 +758,7 @@ test "repeating an activity results in 1 notification, then 0 if the activity is assert length(Notification.for_user(user)) == 1 - {:ok, _, _} = CommonAPI.unrepeat(activity.id, other_user) + {:ok, _} = CommonAPI.unrepeat(activity.id, other_user) assert Enum.empty?(Notification.for_user(user)) end diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index cb2d41f0b..2c3d354f2 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -1008,52 +1008,6 @@ test "does not add an announce activity to the db if the announcer is not the au end end - describe "unannouncing an object" do - test "unannouncing a previously announced object" do - note_activity = insert(:note_activity) - object = Object.normalize(note_activity) - user = insert(:user) - - # Unannouncing an object that is not announced does nothing - {:ok, object} = ActivityPub.unannounce(user, object) - refute object.data["announcement_count"] - - {:ok, announce_activity, object} = ActivityPub.announce(user, object) - assert object.data["announcement_count"] == 1 - - {:ok, unannounce_activity, object} = ActivityPub.unannounce(user, object) - assert object.data["announcement_count"] == 0 - - assert unannounce_activity.data["to"] == [ - User.ap_followers(user), - object.data["actor"] - ] - - assert unannounce_activity.data["type"] == "Undo" - assert unannounce_activity.data["object"] == announce_activity.data - assert unannounce_activity.data["actor"] == user.ap_id - assert unannounce_activity.data["context"] == announce_activity.data["context"] - - assert Activity.get_by_id(announce_activity.id) == nil - end - - test "reverts unannouncing on error" do - note_activity = insert(:note_activity) - object = Object.normalize(note_activity) - user = insert(:user) - - {:ok, _announce_activity, object} = ActivityPub.announce(user, object) - assert object.data["announcement_count"] == 1 - - with_mock(Utils, [:passthrough], maybe_federate: fn _ -> {:error, :reverted} end) do - assert {:error, :reverted} = ActivityPub.unannounce(user, object) - end - - object = Object.get_by_ap_id(object.data["id"]) - assert object.data["announcement_count"] == 1 - end - end - describe "uploading files" do test "copies the file to the configured folder" do file = %Plug.Upload{ diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index abcfdfa2f..00241320b 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -22,8 +22,8 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do user = insert(:user) {:ok, post} = CommonAPI.post(poster, %{"status" => "hey"}) {:ok, like} = CommonAPI.favorite(user, post.id) - {:ok, reaction, _} = CommonAPI.react_with_emoji(post.id, user, "👍") + {:ok, announce, _} = CommonAPI.repeat(post.id, user) {:ok, undo_data, _meta} = Builder.undo(user, like) {:ok, like_undo, _meta} = ActivityPub.persist(undo_data, local: true) @@ -31,15 +31,37 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do {:ok, undo_data, _meta} = Builder.undo(user, reaction) {:ok, reaction_undo, _meta} = ActivityPub.persist(undo_data, local: true) + {:ok, undo_data, _meta} = Builder.undo(user, announce) + {:ok, announce_undo, _meta} = ActivityPub.persist(undo_data, local: true) + %{ like_undo: like_undo, post: post, like: like, reaction_undo: reaction_undo, - reaction: reaction + reaction: reaction, + announce_undo: announce_undo, + announce: announce } end + test "an announce undo removes the announce from the object", %{ + announce_undo: announce_undo, + post: post + } do + {:ok, _announce_undo, _} = SideEffects.handle(announce_undo) + + object = Object.get_by_ap_id(post.data["object"]) + + assert object.data["announcement_count"] == 0 + assert object.data["announcements"] == [] + end + + test "deletes the original announce", %{announce_undo: announce_undo, announce: announce} do + {:ok, _announce_undo, _} = SideEffects.handle(announce_undo) + refute Activity.get_by_id(announce.id) + end + test "a reaction undo removes the reaction from the object", %{ reaction_undo: reaction_undo, post: post diff --git a/test/web/activity_pub/transmogrifier/undo_handling_test.exs b/test/web/activity_pub/transmogrifier/undo_handling_test.exs index bf2a6bc5b..281cf5b0d 100644 --- a/test/web/activity_pub/transmogrifier/undo_handling_test.exs +++ b/test/web/activity_pub/transmogrifier/undo_handling_test.exs @@ -125,11 +125,8 @@ test "it works for incoming unannounces with an existing notice" do {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) assert data["type"] == "Undo" - assert object_data = data["object"] - assert object_data["type"] == "Announce" - assert object_data["object"] == activity.data["object"] - assert object_data["id"] == + assert data["object"] == "http://mastodon.example.org/users/admin/statuses/99542391527669785/activity" end From 92caae592338a3ca307686e7644f2de18bb57ce5 Mon Sep 17 00:00:00 2001 From: lain Date: Tue, 5 May 2020 18:00:37 +0200 Subject: [PATCH 132/156] Undoing: Move undoing blocks to the pipeline everywhere. --- lib/pleroma/web/activity_pub/activity_pub.ex | 21 -------- lib/pleroma/web/activity_pub/side_effects.ex | 12 +++++ .../web/activity_pub/transmogrifier.ex | 51 ++++++------------- lib/pleroma/web/activity_pub/utils.ex | 49 ------------------ lib/pleroma/web/common_api/common_api.ex | 8 +++ .../controllers/account_controller.ex | 3 +- test/web/activity_pub/activity_pub_test.exs | 34 +------------ test/web/activity_pub/side_effects_test.exs | 25 ++++++++- .../transmogrifier/undo_handling_test.exs | 4 +- test/web/activity_pub/utils_test.exs | 28 ---------- 10 files changed, 63 insertions(+), 172 deletions(-) diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index be3d72c82..78e8c0cbe 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -532,27 +532,6 @@ defp do_block(blocker, blocked, activity_id, local) do end end - @spec unblock(User.t(), User.t(), String.t() | nil, boolean()) :: - {:ok, Activity.t()} | {:error, any()} | nil - def unblock(blocker, blocked, activity_id \\ nil, local \\ true) do - with {:ok, result} <- - Repo.transaction(fn -> do_unblock(blocker, blocked, activity_id, local) end) do - result - end - end - - defp do_unblock(blocker, blocked, activity_id, local) do - with %Activity{} = block_activity <- fetch_latest_block(blocker, blocked), - unblock_data <- make_unblock_data(blocker, blocked, block_activity, activity_id), - {:ok, activity} <- insert(unblock_data, local), - :ok <- maybe_federate(activity) do - {:ok, activity} - else - nil -> nil - {:error, error} -> Repo.rollback(error) - end - end - @spec flag(map()) :: {:ok, Activity.t()} | {:error, any()} def flag( %{ diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 146d30ac1..3fad6e4d8 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -9,6 +9,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Repo + alias Pleroma.User alias Pleroma.Web.ActivityPub.Utils def handle(object, meta \\ []) @@ -61,5 +62,16 @@ def handle_undoing(%{data: %{"type" => "Announce"}} = object) do end end + def handle_undoing( + %{data: %{"type" => "Block", "actor" => blocker, "object" => blocked}} = object + ) do + with %User{} = blocker <- User.get_cached_by_ap_id(blocker), + %User{} = blocked <- User.get_cached_by_ap_id(blocked), + {:ok, _} <- User.unblock(blocker, blocked), + {:ok, _} <- Repo.delete(object) do + :ok + end + end + def handle_undoing(object), do: {:error, ["don't know how to handle", object]} end diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index afa171448..65ae643ed 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -787,40 +787,6 @@ def handle_incoming( end end - def handle_incoming( - %{ - "type" => "Undo", - "object" => %{"type" => "Block", "object" => blocked}, - "actor" => blocker, - "id" => id - } = _data, - _options - ) do - with %User{local: true} = blocked <- User.get_cached_by_ap_id(blocked), - {:ok, %User{} = blocker} <- User.get_or_fetch_by_ap_id(blocker), - {:ok, activity} <- ActivityPub.unblock(blocker, blocked, id, false) do - User.unblock(blocker, blocked) - {:ok, activity} - else - _e -> :error - end - end - - def handle_incoming( - %{"type" => "Block", "object" => blocked, "actor" => blocker, "id" => id} = _data, - _options - ) do - with %User{local: true} = blocked = User.get_cached_by_ap_id(blocked), - {:ok, %User{} = blocker} = User.get_or_fetch_by_ap_id(blocker), - {:ok, activity} <- ActivityPub.block(blocker, blocked, id, false) do - User.unfollow(blocker, blocked) - User.block(blocker, blocked) - {:ok, activity} - else - _e -> :error - end - end - def handle_incoming( %{ "type" => "Undo", @@ -828,7 +794,7 @@ def handle_incoming( } = data, _options ) - when type in ["Like", "EmojiReact", "Announce"] do + when type in ["Like", "EmojiReact", "Announce", "Block"] do with {:ok, activity, _} <- Pipeline.common_pipeline(data, local: false) do {:ok, activity} end @@ -852,6 +818,21 @@ def handle_incoming( end end + def handle_incoming( + %{"type" => "Block", "object" => blocked, "actor" => blocker, "id" => id} = _data, + _options + ) do + with %User{local: true} = blocked = User.get_cached_by_ap_id(blocked), + {:ok, %User{} = blocker} = User.get_or_fetch_by_ap_id(blocker), + {:ok, activity} <- ActivityPub.block(blocker, blocked, id, false) do + User.unfollow(blocker, blocked) + User.block(blocker, blocked) + {:ok, activity} + else + _e -> :error + end + end + def handle_incoming( %{ "type" => "Move", diff --git a/lib/pleroma/web/activity_pub/utils.ex b/lib/pleroma/web/activity_pub/utils.ex index 2d685ecc0..95fb382f0 100644 --- a/lib/pleroma/web/activity_pub/utils.ex +++ b/lib/pleroma/web/activity_pub/utils.ex @@ -562,45 +562,6 @@ def make_announce_data( |> maybe_put("id", activity_id) end - @doc """ - Make unannounce activity data for the given actor and object - """ - def make_unannounce_data( - %User{ap_id: ap_id} = user, - %Activity{data: %{"context" => context, "object" => object}} = activity, - activity_id - ) do - object = Object.normalize(object) - - %{ - "type" => "Undo", - "actor" => ap_id, - "object" => activity.data, - "to" => [user.follower_address, object.data["actor"]], - "cc" => [Pleroma.Constants.as_public()], - "context" => context - } - |> maybe_put("id", activity_id) - end - - def make_unlike_data( - %User{ap_id: ap_id} = user, - %Activity{data: %{"context" => context, "object" => object}} = activity, - activity_id - ) do - object = Object.normalize(object) - - %{ - "type" => "Undo", - "actor" => ap_id, - "object" => activity.data, - "to" => [user.follower_address, object.data["actor"]], - "cc" => [Pleroma.Constants.as_public()], - "context" => context - } - |> maybe_put("id", activity_id) - end - def make_undo_data( %User{ap_id: actor, follower_address: follower_address}, %Activity{ @@ -688,16 +649,6 @@ def make_block_data(blocker, blocked, activity_id) do |> maybe_put("id", activity_id) end - def make_unblock_data(blocker, blocked, block_activity, activity_id) do - %{ - "type" => "Undo", - "actor" => blocker.ap_id, - "to" => [blocked.ap_id], - "object" => block_activity.data - } - |> maybe_put("id", activity_id) - end - #### Create-related helpers def make_create_data(params, additional) do diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index fc8246871..2a1eb7f37 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -24,6 +24,14 @@ defmodule Pleroma.Web.CommonAPI do require Pleroma.Constants require Logger + def unblock(blocker, blocked) do + with %Activity{} = block <- Utils.fetch_latest_block(blocker, blocked), + {:ok, unblock_data, _} <- Builder.undo(blocker, block), + {:ok, unblock, _} <- Pipeline.common_pipeline(unblock_data, local: true) do + {:ok, unblock} + end + end + def follow(follower, followed) do timeout = Pleroma.Config.get([:activitypub, :follow_handshake_timeout]) diff --git a/lib/pleroma/web/mastodon_api/controllers/account_controller.ex b/lib/pleroma/web/mastodon_api/controllers/account_controller.ex index 61b0e2f63..2b208ddab 100644 --- a/lib/pleroma/web/mastodon_api/controllers/account_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/account_controller.ex @@ -356,8 +356,7 @@ def block(%{assigns: %{user: blocker, account: blocked}} = conn, _params) do @doc "POST /api/v1/accounts/:id/unblock" def unblock(%{assigns: %{user: blocker, account: blocked}} = conn, _params) do - with {:ok, _user_block} <- User.unblock(blocker, blocked), - {:ok, _activity} <- ActivityPub.unblock(blocker, blocked) do + with {:ok, _activity} <- CommonAPI.unblock(blocker, blocked) do render(conn, "relationship.json", user: blocker, target: blocked) else {:error, message} -> json_response(conn, :forbidden, %{error: message}) diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index 2c3d354f2..7824095c7 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -1114,7 +1114,7 @@ test "creates an undo activity for a pending follow request" do end end - describe "blocking / unblocking" do + describe "blocking" do test "reverts block activity on error" do [blocker, blocked] = insert_list(2, :user) @@ -1136,38 +1136,6 @@ test "creates a block activity" do assert activity.data["actor"] == blocker.ap_id assert activity.data["object"] == blocked.ap_id end - - test "reverts unblock activity on error" do - [blocker, blocked] = insert_list(2, :user) - {:ok, block_activity} = ActivityPub.block(blocker, blocked) - - with_mock(Utils, [:passthrough], maybe_federate: fn _ -> {:error, :reverted} end) do - assert {:error, :reverted} = ActivityPub.unblock(blocker, blocked) - end - - assert block_activity.data["type"] == "Block" - assert block_activity.data["actor"] == blocker.ap_id - - assert Repo.aggregate(Activity, :count, :id) == 1 - assert Repo.aggregate(Object, :count, :id) == 1 - end - - test "creates an undo activity for the last block" do - blocker = insert(:user) - blocked = insert(:user) - - {:ok, block_activity} = ActivityPub.block(blocker, blocked) - {:ok, activity} = ActivityPub.unblock(blocker, blocked) - - assert activity.data["type"] == "Undo" - assert activity.data["actor"] == blocker.ap_id - - embedded_object = activity.data["object"] - assert is_map(embedded_object) - assert embedded_object["type"] == "Block" - assert embedded_object["object"] == blocked.ap_id - assert embedded_object["id"] == block_activity.data["id"] - end end describe "deletion" do diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index 00241320b..f41a7f3c1 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -9,6 +9,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Repo + alias Pleroma.User alias Pleroma.Web.ActivityPub.ActivityPub alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.ActivityPub.SideEffects @@ -24,6 +25,8 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do {:ok, like} = CommonAPI.favorite(user, post.id) {:ok, reaction, _} = CommonAPI.react_with_emoji(post.id, user, "👍") {:ok, announce, _} = CommonAPI.repeat(post.id, user) + {:ok, block} = ActivityPub.block(user, poster) + User.block(user, poster) {:ok, undo_data, _meta} = Builder.undo(user, like) {:ok, like_undo, _meta} = ActivityPub.persist(undo_data, local: true) @@ -34,6 +37,9 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do {:ok, undo_data, _meta} = Builder.undo(user, announce) {:ok, announce_undo, _meta} = ActivityPub.persist(undo_data, local: true) + {:ok, undo_data, _meta} = Builder.undo(user, block) + {:ok, block_undo, _meta} = ActivityPub.persist(undo_data, local: true) + %{ like_undo: like_undo, post: post, @@ -41,10 +47,27 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do reaction_undo: reaction_undo, reaction: reaction, announce_undo: announce_undo, - announce: announce + announce: announce, + block_undo: block_undo, + block: block, + poster: poster, + user: user } end + test "deletes the original block", %{block_undo: block_undo, block: block} do + {:ok, _block_undo, _} = SideEffects.handle(block_undo) + refute Activity.get_by_id(block.id) + end + + test "unblocks the blocked user", %{block_undo: block_undo, block: block} do + blocker = User.get_by_ap_id(block.data["actor"]) + blocked = User.get_by_ap_id(block.data["object"]) + + {:ok, _block_undo, _} = SideEffects.handle(block_undo) + refute User.blocks?(blocker, blocked) + end + test "an announce undo removes the announce from the object", %{ announce_undo: announce_undo, post: post diff --git a/test/web/activity_pub/transmogrifier/undo_handling_test.exs b/test/web/activity_pub/transmogrifier/undo_handling_test.exs index 281cf5b0d..6f5e61ac3 100644 --- a/test/web/activity_pub/transmogrifier/undo_handling_test.exs +++ b/test/web/activity_pub/transmogrifier/undo_handling_test.exs @@ -176,9 +176,7 @@ test "it works for incoming unblocks with an existing block" do {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) assert data["type"] == "Undo" - assert data["object"]["type"] == "Block" - assert data["object"]["object"] == user.ap_id - assert data["actor"] == "http://mastodon.example.org/users/admin" + assert data["object"] == block_data["id"] blocker = User.get_cached_by_ap_id(data["actor"]) diff --git a/test/web/activity_pub/utils_test.exs b/test/web/activity_pub/utils_test.exs index b0bfed917..b8d811c73 100644 --- a/test/web/activity_pub/utils_test.exs +++ b/test/web/activity_pub/utils_test.exs @@ -102,34 +102,6 @@ test "works with an object has tags as map" do end end - describe "make_unlike_data/3" do - test "returns data for unlike activity" do - user = insert(:user) - like_activity = insert(:like_activity, data_attrs: %{"context" => "test context"}) - - object = Object.normalize(like_activity.data["object"]) - - assert Utils.make_unlike_data(user, like_activity, nil) == %{ - "type" => "Undo", - "actor" => user.ap_id, - "object" => like_activity.data, - "to" => [user.follower_address, object.data["actor"]], - "cc" => [Pleroma.Constants.as_public()], - "context" => like_activity.data["context"] - } - - assert Utils.make_unlike_data(user, like_activity, "9mJEZK0tky1w2xD2vY") == %{ - "type" => "Undo", - "actor" => user.ap_id, - "object" => like_activity.data, - "to" => [user.follower_address, object.data["actor"]], - "cc" => [Pleroma.Constants.as_public()], - "context" => like_activity.data["context"], - "id" => "9mJEZK0tky1w2xD2vY" - } - end - end - describe "make_like_data" do setup do user = insert(:user) From 0a1394cc1a38ce66b1b30d728856ae891aa3d7b0 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 5 May 2020 20:14:22 +0400 Subject: [PATCH 133/156] Add OpenAPI spec for PollController --- .../web/api_spec/operations/poll_operation.ex | 76 +++++++++++++++++++ lib/pleroma/web/api_spec/schemas/poll.ex | 62 +++++++++++++-- .../controllers/poll_controller.ex | 8 +- .../controllers/poll_controller_test.exs | 38 +++++++--- 4 files changed, 162 insertions(+), 22 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/poll_operation.ex diff --git a/lib/pleroma/web/api_spec/operations/poll_operation.ex b/lib/pleroma/web/api_spec/operations/poll_operation.ex new file mode 100644 index 000000000..b953323e9 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/poll_operation.ex @@ -0,0 +1,76 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.PollOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.ApiError + alias Pleroma.Web.ApiSpec.Schemas.FlakeID + alias Pleroma.Web.ApiSpec.Schemas.Poll + + import Pleroma.Web.ApiSpec.Helpers + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def show_operation do + %Operation{ + tags: ["Polls"], + summary: "View a poll", + security: [%{"oAuth" => ["read:statuses"]}], + parameters: [id_param()], + operationId: "PollController.show", + responses: %{ + 200 => Operation.response("Poll", "application/json", Poll), + 404 => Operation.response("Error", "application/json", ApiError) + } + } + end + + def vote_operation do + %Operation{ + tags: ["Polls"], + summary: "Block a domain", + parameters: [id_param()], + operationId: "PollController.vote", + requestBody: vote_request(), + security: [%{"oAuth" => ["write:statuses"]}], + responses: %{ + 200 => Operation.response("Poll", "application/json", Poll), + 422 => Operation.response("Error", "application/json", ApiError), + 404 => Operation.response("Error", "application/json", ApiError) + } + } + end + + defp id_param do + Operation.parameter(:id, :path, FlakeID, "Poll ID", + example: "123", + required: true + ) + end + + defp vote_request do + request_body( + "Parameters", + %Schema{ + type: :object, + properties: %{ + choices: %Schema{ + type: :array, + items: %Schema{type: :integer}, + description: "Array of own votes containing index for each option (starting from 0)" + } + }, + required: [:choices] + }, + required: true, + example: %{ + "choices" => [0, 1, 2] + } + ) + end +end diff --git a/lib/pleroma/web/api_spec/schemas/poll.ex b/lib/pleroma/web/api_spec/schemas/poll.ex index 0474b550b..c62096db0 100644 --- a/lib/pleroma/web/api_spec/schemas/poll.ex +++ b/lib/pleroma/web/api_spec/schemas/poll.ex @@ -11,26 +11,72 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Poll do OpenApiSpex.schema(%{ title: "Poll", - description: "Response schema for account custom fields", + description: "Represents a poll attached to a status", type: :object, properties: %{ id: FlakeID, - expires_at: %Schema{type: :string, format: "date-time"}, - expired: %Schema{type: :boolean}, - multiple: %Schema{type: :boolean}, - votes_count: %Schema{type: :integer}, - voted: %Schema{type: :boolean}, - emojis: %Schema{type: :array, items: Emoji}, + expires_at: %Schema{ + type: :string, + format: :"date-time", + nullable: true, + description: "When the poll ends" + }, + expired: %Schema{type: :boolean, description: "Is the poll currently expired?"}, + multiple: %Schema{ + type: :boolean, + description: "Does the poll allow multiple-choice answers?" + }, + votes_count: %Schema{ + type: :integer, + nullable: true, + description: "How many votes have been received. Number, or null if `multiple` is false." + }, + voted: %Schema{ + type: :boolean, + nullable: true, + description: + "When called with a user token, has the authorized user voted? Boolean, or null if no current user." + }, + emojis: %Schema{ + type: :array, + items: Emoji, + description: "Custom emoji to be used for rendering poll options." + }, options: %Schema{ type: :array, items: %Schema{ + title: "PollOption", type: :object, properties: %{ title: %Schema{type: :string}, votes_count: %Schema{type: :integer} } - } + }, + description: "Possible answers for the poll." } + }, + example: %{ + id: "34830", + expires_at: "2019-12-05T04:05:08.302Z", + expired: true, + multiple: false, + votes_count: 10, + voters_count: nil, + voted: true, + own_votes: [ + 1 + ], + options: [ + %{ + title: "accept", + votes_count: 6 + }, + %{ + title: "deny", + votes_count: 4 + } + ], + emojis: [] } }) end diff --git a/lib/pleroma/web/mastodon_api/controllers/poll_controller.ex b/lib/pleroma/web/mastodon_api/controllers/poll_controller.ex index af9b66eff..db46ffcfc 100644 --- a/lib/pleroma/web/mastodon_api/controllers/poll_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/poll_controller.ex @@ -15,6 +15,8 @@ defmodule Pleroma.Web.MastodonAPI.PollController do action_fallback(Pleroma.Web.MastodonAPI.FallbackController) + plug(Pleroma.Web.ApiSpec.CastAndValidate) + plug( OAuthScopesPlug, %{scopes: ["read:statuses"], fallback: :proceed_unauthenticated} when action == :show @@ -22,8 +24,10 @@ defmodule Pleroma.Web.MastodonAPI.PollController do plug(OAuthScopesPlug, %{scopes: ["write:statuses"]} when action == :vote) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.PollOperation + @doc "GET /api/v1/polls/:id" - def show(%{assigns: %{user: user}} = conn, %{"id" => id}) do + def show(%{assigns: %{user: user}} = conn, %{id: id}) do with %Object{} = object <- Object.get_by_id_and_maybe_refetch(id, interval: 60), %Activity{} = activity <- Activity.get_create_by_object_ap_id(object.data["id"]), true <- Visibility.visible_for_user?(activity, user) do @@ -35,7 +39,7 @@ def show(%{assigns: %{user: user}} = conn, %{"id" => id}) do end @doc "POST /api/v1/polls/:id/votes" - def vote(%{assigns: %{user: user}} = conn, %{"id" => id, "choices" => choices}) do + def vote(%{assigns: %{user: user}, body_params: %{choices: choices}} = conn, %{id: id}) do with %Object{data: %{"type" => "Question"}} = object <- Object.get_by_id(id), %Activity{} = activity <- Activity.get_create_by_object_ap_id(object.data["id"]), true <- Visibility.visible_for_user?(activity, user), diff --git a/test/web/mastodon_api/controllers/poll_controller_test.exs b/test/web/mastodon_api/controllers/poll_controller_test.exs index 88b13a25a..d8f34aa86 100644 --- a/test/web/mastodon_api/controllers/poll_controller_test.exs +++ b/test/web/mastodon_api/controllers/poll_controller_test.exs @@ -24,7 +24,7 @@ test "returns poll entity for object id", %{user: user, conn: conn} do conn = get(conn, "/api/v1/polls/#{object.id}") - response = json_response(conn, 200) + response = json_response_and_validate_schema(conn, 200) id = to_string(object.id) assert %{"id" => ^id, "expired" => false, "multiple" => false} = response end @@ -43,7 +43,7 @@ test "does not expose polls for private statuses", %{conn: conn} do conn = get(conn, "/api/v1/polls/#{object.id}") - assert json_response(conn, 404) + assert json_response_and_validate_schema(conn, 404) end end @@ -65,9 +65,12 @@ test "votes are added to the poll", %{conn: conn} do object = Object.normalize(activity) - conn = post(conn, "/api/v1/polls/#{object.id}/votes", %{"choices" => [0, 1, 2]}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/polls/#{object.id}/votes", %{"choices" => [0, 1, 2]}) - assert json_response(conn, 200) + assert json_response_and_validate_schema(conn, 200) object = Object.get_by_id(object.id) assert Enum.all?(object.data["anyOf"], fn %{"replies" => %{"totalItems" => total_items}} -> @@ -85,8 +88,9 @@ test "author can't vote", %{user: user, conn: conn} do object = Object.normalize(activity) assert conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/polls/#{object.id}/votes", %{"choices" => [1]}) - |> json_response(422) == %{"error" => "Poll's author can't vote"} + |> json_response_and_validate_schema(422) == %{"error" => "Poll's author can't vote"} object = Object.get_by_id(object.id) @@ -105,8 +109,9 @@ test "does not allow multiple choices on a single-choice question", %{conn: conn object = Object.normalize(activity) assert conn + |> put_req_header("content-type", "application/json") |> post("/api/v1/polls/#{object.id}/votes", %{"choices" => [0, 1]}) - |> json_response(422) == %{"error" => "Too many choices"} + |> json_response_and_validate_schema(422) == %{"error" => "Too many choices"} object = Object.get_by_id(object.id) @@ -126,15 +131,21 @@ test "does not allow choice index to be greater than options count", %{conn: con object = Object.normalize(activity) - conn = post(conn, "/api/v1/polls/#{object.id}/votes", %{"choices" => [2]}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/polls/#{object.id}/votes", %{"choices" => [2]}) - assert json_response(conn, 422) == %{"error" => "Invalid indices"} + assert json_response_and_validate_schema(conn, 422) == %{"error" => "Invalid indices"} end test "returns 404 error when object is not exist", %{conn: conn} do - conn = post(conn, "/api/v1/polls/1/votes", %{"choices" => [0]}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/polls/1/votes", %{"choices" => [0]}) - assert json_response(conn, 404) == %{"error" => "Record not found"} + assert json_response_and_validate_schema(conn, 404) == %{"error" => "Record not found"} end test "returns 404 when poll is private and not available for user", %{conn: conn} do @@ -149,9 +160,12 @@ test "returns 404 when poll is private and not available for user", %{conn: conn object = Object.normalize(activity) - conn = post(conn, "/api/v1/polls/#{object.id}/votes", %{"choices" => [0]}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/polls/#{object.id}/votes", %{"choices" => [0]}) - assert json_response(conn, 404) == %{"error" => "Record not found"} + assert json_response_and_validate_schema(conn, 404) == %{"error" => "Record not found"} end end end From 6ba25d11973e56008e5d674313421197ff418d6d Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 5 May 2020 23:19:16 +0400 Subject: [PATCH 134/156] Add Attachment schema --- .../web/api_spec/schemas/attachment.ex | 68 +++++++++++++++++++ .../web/api_spec/schemas/scheduled_status.ex | 53 +++++++++++++++ lib/pleroma/web/api_spec/schemas/status.ex | 18 +---- 3 files changed, 123 insertions(+), 16 deletions(-) create mode 100644 lib/pleroma/web/api_spec/schemas/attachment.ex create mode 100644 lib/pleroma/web/api_spec/schemas/scheduled_status.ex diff --git a/lib/pleroma/web/api_spec/schemas/attachment.ex b/lib/pleroma/web/api_spec/schemas/attachment.ex new file mode 100644 index 000000000..c146c416e --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/attachment.ex @@ -0,0 +1,68 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.Attachment do + alias OpenApiSpex.Schema + + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "Attachment", + description: "Represents a file or media attachment that can be added to a status.", + type: :object, + requried: [:id, :url, :preview_url], + properties: %{ + id: %Schema{type: :string}, + url: %Schema{ + type: :string, + format: :uri, + description: "The location of the original full-size attachment" + }, + remote_url: %Schema{ + type: :string, + format: :uri, + description: + "The location of the full-size original attachment on the remote website. String (URL), or null if the attachment is local", + nullable: true + }, + preview_url: %Schema{ + type: :string, + format: :uri, + description: "The location of a scaled-down preview of the attachment" + }, + text_url: %Schema{ + type: :string, + format: :uri, + description: "A shorter URL for the attachment" + }, + description: %Schema{ + type: :string, + nullable: true, + description: + "Alternate text that describes what is in the media attachment, to be used for the visually impaired or when media attachments do not load" + }, + type: %Schema{ + type: :string, + enum: ["image", "video", "audio", "unknown"], + description: "The type of the attachment" + }, + pleroma: %Schema{ + type: :object, + properties: %{ + mime_type: %Schema{type: :string, description: "mime type of the attachment"} + } + } + }, + example: %{ + id: "1638338801", + type: "image", + url: "someurl", + remote_url: "someurl", + preview_url: "someurl", + text_url: "someurl", + description: nil, + pleroma: %{mime_type: "image/png"} + } + }) +end diff --git a/lib/pleroma/web/api_spec/schemas/scheduled_status.ex b/lib/pleroma/web/api_spec/schemas/scheduled_status.ex new file mode 100644 index 000000000..f0bc4ee3c --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/scheduled_status.ex @@ -0,0 +1,53 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.ScheduledStatus do + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.VisibilityScope + alias Pleroma.Web.ApiSpec.Schemas.Poll + + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "ScheduledStatus", + description: "Represents a status that will be published at a future scheduled date.", + type: :object, + required: [:id, :scheduled_at, :params], + properties: %{ + id: %Schema{type: :string}, + scheduled_at: %Schema{type: :string, format: :"date-time"}, + media_attachments: %Schema{type: :array, format: :"date-time"}, + params: %Schema{ + type: :object, + required: [:text, :visibility], + properties: %{ + text: %Schema{type: :string, nullable: true}, + media_ids: %Schema{type: :array, nullable: true, items: %Schema{type: :string}}, + sensitive: %Schema{type: :boolean, nullable: true}, + spoiler_text: %Schema{type: :string, nullable: true}, + visibility: %Schema{type: VisibilityScope, nullable: true}, + scheduled_at: %Schema{type: :string, format: :"date-time", nullable: true}, + poll: %Schema{type: Poll, nullable: true}, + in_reply_to_id: %Schema{type: :string, nullable: true} + } + } + }, + example: %{ + id: "3221", + scheduled_at: "2019-12-05T12:33:01.000Z", + params: %{ + text: "test content", + media_ids: nil, + sensitive: nil, + spoiler_text: nil, + visibility: nil, + scheduled_at: nil, + poll: nil, + idempotency: nil, + in_reply_to_id: nil + }, + media_attachments: [] + } + }) +end diff --git a/lib/pleroma/web/api_spec/schemas/status.ex b/lib/pleroma/web/api_spec/schemas/status.ex index aef0588d4..d44636a48 100644 --- a/lib/pleroma/web/api_spec/schemas/status.ex +++ b/lib/pleroma/web/api_spec/schemas/status.ex @@ -5,6 +5,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do alias OpenApiSpex.Schema alias Pleroma.Web.ApiSpec.Schemas.Account + alias Pleroma.Web.ApiSpec.Schemas.Attachment alias Pleroma.Web.ApiSpec.Schemas.Emoji alias Pleroma.Web.ApiSpec.Schemas.FlakeID alias Pleroma.Web.ApiSpec.Schemas.Poll @@ -50,22 +51,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do language: %Schema{type: :string, nullable: true}, media_attachments: %Schema{ type: :array, - items: %Schema{ - type: :object, - properties: %{ - id: %Schema{type: :string}, - url: %Schema{type: :string, format: :uri}, - remote_url: %Schema{type: :string, format: :uri}, - preview_url: %Schema{type: :string, format: :uri}, - text_url: %Schema{type: :string, format: :uri}, - description: %Schema{type: :string}, - type: %Schema{type: :string, enum: ["image", "video", "audio", "unknown"]}, - pleroma: %Schema{ - type: :object, - properties: %{mime_type: %Schema{type: :string}} - } - } - } + items: Attachment }, mentions: %Schema{ type: :array, From 332e016bcdbda5dca90d916bc62a9c67544b5323 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Tue, 5 May 2020 23:42:18 +0400 Subject: [PATCH 135/156] Add OpenAPI spec for ScheduledActivityController --- .../scheduled_activity_operation.ex | 96 +++++++++++++++++++ .../web/api_spec/schemas/scheduled_status.ex | 7 +- .../scheduled_activity_controller.ex | 12 ++- test/support/helpers.ex | 8 +- .../scheduled_activity_controller_test.exs | 34 ++++--- .../mastodon_api/views/status_view_test.exs | 8 +- 6 files changed, 144 insertions(+), 21 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/scheduled_activity_operation.ex diff --git a/lib/pleroma/web/api_spec/operations/scheduled_activity_operation.ex b/lib/pleroma/web/api_spec/operations/scheduled_activity_operation.ex new file mode 100644 index 000000000..fe675a923 --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/scheduled_activity_operation.ex @@ -0,0 +1,96 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.ScheduledActivityOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.Schemas.ApiError + alias Pleroma.Web.ApiSpec.Schemas.FlakeID + alias Pleroma.Web.ApiSpec.Schemas.ScheduledStatus + + import Pleroma.Web.ApiSpec.Helpers + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def index_operation do + %Operation{ + tags: ["Scheduled Statuses"], + summary: "View scheduled statuses", + security: [%{"oAuth" => ["read:statuses"]}], + parameters: pagination_params(), + operationId: "ScheduledActivity.index", + responses: %{ + 200 => + Operation.response("Array of ScheduledStatus", "application/json", %Schema{ + type: :array, + items: ScheduledStatus + }) + } + } + end + + def show_operation do + %Operation{ + tags: ["Scheduled Statuses"], + summary: "View a single scheduled status", + security: [%{"oAuth" => ["read:statuses"]}], + parameters: [id_param()], + operationId: "ScheduledActivity.show", + responses: %{ + 200 => Operation.response("Scheduled Status", "application/json", ScheduledStatus), + 404 => Operation.response("Error", "application/json", ApiError) + } + } + end + + def update_operation do + %Operation{ + tags: ["Scheduled Statuses"], + summary: "Schedule a status", + operationId: "ScheduledActivity.update", + security: [%{"oAuth" => ["write:statuses"]}], + parameters: [id_param()], + requestBody: + request_body("Parameters", %Schema{ + type: :object, + properties: %{ + scheduled_at: %Schema{ + type: :string, + format: :"date-time", + description: + "ISO 8601 Datetime at which the status will be published. Must be at least 5 minutes into the future." + } + } + }), + responses: %{ + 200 => Operation.response("Scheduled Status", "application/json", ScheduledStatus), + 404 => Operation.response("Error", "application/json", ApiError) + } + } + end + + def delete_operation do + %Operation{ + tags: ["Scheduled Statuses"], + summary: "Cancel a scheduled status", + security: [%{"oAuth" => ["write:statuses"]}], + parameters: [id_param()], + operationId: "ScheduledActivity.delete", + responses: %{ + 200 => Operation.response("Empty object", "application/json", %Schema{type: :object}), + 404 => Operation.response("Error", "application/json", ApiError) + } + } + end + + defp id_param do + Operation.parameter(:id, :path, FlakeID, "Poll ID", + example: "123", + required: true + ) + end +end diff --git a/lib/pleroma/web/api_spec/schemas/scheduled_status.ex b/lib/pleroma/web/api_spec/schemas/scheduled_status.ex index f0bc4ee3c..0520d0848 100644 --- a/lib/pleroma/web/api_spec/schemas/scheduled_status.ex +++ b/lib/pleroma/web/api_spec/schemas/scheduled_status.ex @@ -4,8 +4,9 @@ defmodule Pleroma.Web.ApiSpec.Schemas.ScheduledStatus do alias OpenApiSpex.Schema - alias Pleroma.Web.ApiSpec.Schemas.VisibilityScope + alias Pleroma.Web.ApiSpec.Schemas.Attachment alias Pleroma.Web.ApiSpec.Schemas.Poll + alias Pleroma.Web.ApiSpec.Schemas.VisibilityScope require OpenApiSpex @@ -17,7 +18,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.ScheduledStatus do properties: %{ id: %Schema{type: :string}, scheduled_at: %Schema{type: :string, format: :"date-time"}, - media_attachments: %Schema{type: :array, format: :"date-time"}, + media_attachments: %Schema{type: :array, items: Attachment}, params: %Schema{ type: :object, required: [:text, :visibility], @@ -47,7 +48,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.ScheduledStatus do idempotency: nil, in_reply_to_id: nil }, - media_attachments: [] + media_attachments: [Attachment.schema().example] } }) end diff --git a/lib/pleroma/web/mastodon_api/controllers/scheduled_activity_controller.ex b/lib/pleroma/web/mastodon_api/controllers/scheduled_activity_controller.ex index 899b78873..1719c67ea 100644 --- a/lib/pleroma/web/mastodon_api/controllers/scheduled_activity_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/scheduled_activity_controller.ex @@ -11,17 +11,21 @@ defmodule Pleroma.Web.MastodonAPI.ScheduledActivityController do alias Pleroma.ScheduledActivity alias Pleroma.Web.MastodonAPI.MastodonAPI - plug(:assign_scheduled_activity when action != :index) - @oauth_read_actions [:show, :index] + plug(Pleroma.Web.ApiSpec.CastAndValidate) plug(OAuthScopesPlug, %{scopes: ["read:statuses"]} when action in @oauth_read_actions) plug(OAuthScopesPlug, %{scopes: ["write:statuses"]} when action not in @oauth_read_actions) + plug(:assign_scheduled_activity when action != :index) action_fallback(Pleroma.Web.MastodonAPI.FallbackController) + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.ScheduledActivityOperation + @doc "GET /api/v1/scheduled_statuses" def index(%{assigns: %{user: user}} = conn, params) do + params = Map.new(params, fn {key, value} -> {to_string(key), value} end) + with scheduled_activities <- MastodonAPI.get_scheduled_activities(user, params) do conn |> add_link_headers(scheduled_activities) @@ -35,7 +39,7 @@ def show(%{assigns: %{scheduled_activity: scheduled_activity}} = conn, _params) end @doc "PUT /api/v1/scheduled_statuses/:id" - def update(%{assigns: %{scheduled_activity: scheduled_activity}} = conn, params) do + def update(%{assigns: %{scheduled_activity: scheduled_activity}, body_params: params} = conn, _) do with {:ok, scheduled_activity} <- ScheduledActivity.update(scheduled_activity, params) do render(conn, "show.json", scheduled_activity: scheduled_activity) end @@ -48,7 +52,7 @@ def delete(%{assigns: %{scheduled_activity: scheduled_activity}} = conn, _params end end - defp assign_scheduled_activity(%{assigns: %{user: user}, params: %{"id" => id}} = conn, _) do + defp assign_scheduled_activity(%{assigns: %{user: user}, params: %{id: id}} = conn, _) do case ScheduledActivity.get(user, id) do %ScheduledActivity{} = activity -> assign(conn, :scheduled_activity, activity) nil -> Pleroma.Web.MastodonAPI.FallbackController.call(conn, {:error, :not_found}) |> halt() diff --git a/test/support/helpers.ex b/test/support/helpers.ex index e68e9bfd2..26281b45e 100644 --- a/test/support/helpers.ex +++ b/test/support/helpers.ex @@ -40,12 +40,18 @@ defmacro __using__(_opts) do clear_config: 2 ] - def to_datetime(naive_datetime) do + def to_datetime(%NaiveDateTime{} = naive_datetime) do naive_datetime |> DateTime.from_naive!("Etc/UTC") |> DateTime.truncate(:second) end + def to_datetime(datetime) when is_binary(datetime) do + datetime + |> NaiveDateTime.from_iso8601!() + |> to_datetime() + end + def collect_ids(collection) do collection |> Enum.map(& &1.id) diff --git a/test/web/mastodon_api/controllers/scheduled_activity_controller_test.exs b/test/web/mastodon_api/controllers/scheduled_activity_controller_test.exs index f86274d57..1ff871c89 100644 --- a/test/web/mastodon_api/controllers/scheduled_activity_controller_test.exs +++ b/test/web/mastodon_api/controllers/scheduled_activity_controller_test.exs @@ -24,19 +24,19 @@ test "shows scheduled activities" do # min_id conn_res = get(conn, "/api/v1/scheduled_statuses?limit=2&min_id=#{scheduled_activity_id1}") - result = json_response(conn_res, 200) + result = json_response_and_validate_schema(conn_res, 200) assert [%{"id" => ^scheduled_activity_id3}, %{"id" => ^scheduled_activity_id2}] = result # since_id conn_res = get(conn, "/api/v1/scheduled_statuses?limit=2&since_id=#{scheduled_activity_id1}") - result = json_response(conn_res, 200) + result = json_response_and_validate_schema(conn_res, 200) assert [%{"id" => ^scheduled_activity_id4}, %{"id" => ^scheduled_activity_id3}] = result # max_id conn_res = get(conn, "/api/v1/scheduled_statuses?limit=2&max_id=#{scheduled_activity_id4}") - result = json_response(conn_res, 200) + result = json_response_and_validate_schema(conn_res, 200) assert [%{"id" => ^scheduled_activity_id3}, %{"id" => ^scheduled_activity_id2}] = result end @@ -46,12 +46,12 @@ test "shows a scheduled activity" do res_conn = get(conn, "/api/v1/scheduled_statuses/#{scheduled_activity.id}") - assert %{"id" => scheduled_activity_id} = json_response(res_conn, 200) + assert %{"id" => scheduled_activity_id} = json_response_and_validate_schema(res_conn, 200) assert scheduled_activity_id == scheduled_activity.id |> to_string() res_conn = get(conn, "/api/v1/scheduled_statuses/404") - assert %{"error" => "Record not found"} = json_response(res_conn, 404) + assert %{"error" => "Record not found"} = json_response_and_validate_schema(res_conn, 404) end test "updates a scheduled activity" do @@ -74,22 +74,32 @@ test "updates a scheduled activity" do assert job.args == %{"activity_id" => scheduled_activity.id} assert DateTime.truncate(job.scheduled_at, :second) == to_datetime(scheduled_at) - new_scheduled_at = Timex.shift(NaiveDateTime.utc_now(), minutes: 120) + new_scheduled_at = + NaiveDateTime.utc_now() + |> Timex.shift(minutes: 120) + |> Timex.format!("%Y-%m-%dT%H:%M:%S.%fZ", :strftime) res_conn = - put(conn, "/api/v1/scheduled_statuses/#{scheduled_activity.id}", %{ + conn + |> put_req_header("content-type", "application/json") + |> put("/api/v1/scheduled_statuses/#{scheduled_activity.id}", %{ scheduled_at: new_scheduled_at }) - assert %{"scheduled_at" => expected_scheduled_at} = json_response(res_conn, 200) + assert %{"scheduled_at" => expected_scheduled_at} = + json_response_and_validate_schema(res_conn, 200) + assert expected_scheduled_at == Pleroma.Web.CommonAPI.Utils.to_masto_date(new_scheduled_at) job = refresh_record(job) assert DateTime.truncate(job.scheduled_at, :second) == to_datetime(new_scheduled_at) - res_conn = put(conn, "/api/v1/scheduled_statuses/404", %{scheduled_at: new_scheduled_at}) + res_conn = + conn + |> put_req_header("content-type", "application/json") + |> put("/api/v1/scheduled_statuses/404", %{scheduled_at: new_scheduled_at}) - assert %{"error" => "Record not found"} = json_response(res_conn, 404) + assert %{"error" => "Record not found"} = json_response_and_validate_schema(res_conn, 404) end test "deletes a scheduled activity" do @@ -115,7 +125,7 @@ test "deletes a scheduled activity" do |> assign(:user, user) |> delete("/api/v1/scheduled_statuses/#{scheduled_activity.id}") - assert %{} = json_response(res_conn, 200) + assert %{} = json_response_and_validate_schema(res_conn, 200) refute Repo.get(ScheduledActivity, scheduled_activity.id) refute Repo.get(Oban.Job, job.id) @@ -124,6 +134,6 @@ test "deletes a scheduled activity" do |> assign(:user, user) |> delete("/api/v1/scheduled_statuses/#{scheduled_activity.id}") - assert %{"error" => "Record not found"} = json_response(res_conn, 404) + assert %{"error" => "Record not found"} = json_response_and_validate_schema(res_conn, 404) end end diff --git a/test/web/mastodon_api/views/status_view_test.exs b/test/web/mastodon_api/views/status_view_test.exs index 6791c2fb0..451723e60 100644 --- a/test/web/mastodon_api/views/status_view_test.exs +++ b/test/web/mastodon_api/views/status_view_test.exs @@ -402,11 +402,17 @@ test "attachments" do pleroma: %{mime_type: "image/png"} } + api_spec = Pleroma.Web.ApiSpec.spec() + assert expected == StatusView.render("attachment.json", %{attachment: object}) + OpenApiSpex.TestAssertions.assert_schema(expected, "Attachment", api_spec) # If theres a "id", use that instead of the generated one object = Map.put(object, "id", 2) - assert %{id: "2"} = StatusView.render("attachment.json", %{attachment: object}) + result = StatusView.render("attachment.json", %{attachment: object}) + + assert %{id: "2"} = result + OpenApiSpex.TestAssertions.assert_schema(result, "Attachment", api_spec) end test "put the url advertised in the Activity in to the url attribute" do From 06c69c0a0a03d7797213fc520b6bf24fab65a7e3 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Wed, 6 May 2020 14:18:19 +0400 Subject: [PATCH 136/156] Fix description --- lib/pleroma/web/api_spec/operations/poll_operation.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/api_spec/operations/poll_operation.ex b/lib/pleroma/web/api_spec/operations/poll_operation.ex index b953323e9..e15c7dc95 100644 --- a/lib/pleroma/web/api_spec/operations/poll_operation.ex +++ b/lib/pleroma/web/api_spec/operations/poll_operation.ex @@ -33,7 +33,7 @@ def show_operation do def vote_operation do %Operation{ tags: ["Polls"], - summary: "Block a domain", + summary: "Vote on a poll", parameters: [id_param()], operationId: "PollController.vote", requestBody: vote_request(), From bd261309cc27ebf5d2f78ea3c1474fe71ae8046d Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Wed, 6 May 2020 15:08:38 +0300 Subject: [PATCH 137/156] added `unread_notifications_count` for `/api/v1/accounts/verify_credentials` --- docs/API/differences_in_mastoapi_responses.md | 1 + lib/pleroma/notification.ex | 8 +++++ .../web/mastodon_api/views/account_view.ex | 29 ++++++++++++++++--- .../controllers/account_controller_test.exs | 3 ++ .../mastodon_api/views/account_view_test.exs | 18 ++++++++++++ 5 files changed, 55 insertions(+), 4 deletions(-) diff --git a/docs/API/differences_in_mastoapi_responses.md b/docs/API/differences_in_mastoapi_responses.md index 8d1da936f..6d37d9008 100644 --- a/docs/API/differences_in_mastoapi_responses.md +++ b/docs/API/differences_in_mastoapi_responses.md @@ -61,6 +61,7 @@ Has these additional fields under the `pleroma` object: - `deactivated`: boolean, true when the user is deactivated - `allow_following_move`: boolean, true when the user allows automatically follow moved following accounts - `unread_conversation_count`: The count of unread conversations. Only returned to the account owner. +- `unread_notifications_count`: The count of unread notifications. Only returned to the account owner. ### Source diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 7fd1b2ff6..c135306ca 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -36,6 +36,14 @@ defmodule Pleroma.Notification do timestamps() end + @spec unread_notifications_count(User.t()) :: integer() + def unread_notifications_count(%User{id: user_id}) do + from(q in __MODULE__, + where: q.user_id == ^user_id and q.seen == false + ) + |> Repo.aggregate(:count, :id) + end + def changeset(%Notification{} = notification, attrs) do notification |> cast(attrs, [:seen]) diff --git a/lib/pleroma/web/mastodon_api/views/account_view.ex b/lib/pleroma/web/mastodon_api/views/account_view.ex index b4b61e74c..420bd586f 100644 --- a/lib/pleroma/web/mastodon_api/views/account_view.ex +++ b/lib/pleroma/web/mastodon_api/views/account_view.ex @@ -36,9 +36,11 @@ def render("index.json", %{users: users} = opts) do end def render("show.json", %{user: user} = opts) do - if User.visible_for?(user, opts[:for]), - do: do_render("show.json", opts), - else: %{} + if User.visible_for?(user, opts[:for]) do + do_render("show.json", opts) + else + %{} + end end def render("mention.json", %{user: user}) do @@ -221,7 +223,7 @@ defp do_render("show.json", %{user: user} = opts) do fields: user.fields, bot: bot, source: %{ - note: (user.bio || "") |> String.replace(~r(
    ), "\n") |> Pleroma.HTML.strip_tags(), + note: prepare_user_bio(user), sensitive: false, fields: user.raw_fields, pleroma: %{ @@ -253,8 +255,17 @@ defp do_render("show.json", %{user: user} = opts) do |> maybe_put_follow_requests_count(user, opts[:for]) |> maybe_put_allow_following_move(user, opts[:for]) |> maybe_put_unread_conversation_count(user, opts[:for]) + |> maybe_put_unread_notification_count(user, opts[:for]) end + defp prepare_user_bio(%User{bio: ""}), do: "" + + defp prepare_user_bio(%User{bio: bio}) when is_binary(bio) do + bio |> String.replace(~r(
    ), "\n") |> Pleroma.HTML.strip_tags() + end + + defp prepare_user_bio(_), do: "" + defp username_from_nickname(string) when is_binary(string) do hd(String.split(string, "@")) end @@ -350,6 +361,16 @@ defp maybe_put_unread_conversation_count(data, %User{id: user_id} = user, %User{ defp maybe_put_unread_conversation_count(data, _, _), do: data + defp maybe_put_unread_notification_count(data, %User{id: user_id}, %User{id: user_id} = user) do + Kernel.put_in( + data, + [:pleroma, :unread_notifications_count], + Pleroma.Notification.unread_notifications_count(user) + ) + end + + defp maybe_put_unread_notification_count(data, _, _), do: data + defp image_url(%{"url" => [%{"href" => href} | _]}), do: href defp image_url(_), do: nil end diff --git a/test/web/mastodon_api/controllers/account_controller_test.exs b/test/web/mastodon_api/controllers/account_controller_test.exs index b9da7e924..256a8b304 100644 --- a/test/web/mastodon_api/controllers/account_controller_test.exs +++ b/test/web/mastodon_api/controllers/account_controller_test.exs @@ -1196,12 +1196,15 @@ test "returns lists to which the account belongs" do describe "verify_credentials" do test "verify_credentials" do %{user: user, conn: conn} = oauth_access(["read:accounts"]) + [notification | _] = insert_list(7, :notification, user: user) + Pleroma.Notification.set_read_up_to(user, notification.id) conn = get(conn, "/api/v1/accounts/verify_credentials") response = json_response_and_validate_schema(conn, 200) assert %{"id" => id, "source" => %{"privacy" => "public"}} = response assert response["pleroma"]["chat_token"] + assert response["pleroma"]["unread_notifications_count"] == 6 assert id == to_string(user.id) end diff --git a/test/web/mastodon_api/views/account_view_test.exs b/test/web/mastodon_api/views/account_view_test.exs index 85fa4f6a2..5fb162141 100644 --- a/test/web/mastodon_api/views/account_view_test.exs +++ b/test/web/mastodon_api/views/account_view_test.exs @@ -466,6 +466,24 @@ test "shows unread_conversation_count only to the account owner" do :unread_conversation_count ] == 1 end + + test "shows unread_count only to the account owner" do + user = insert(:user) + insert_list(7, :notification, user: user) + other_user = insert(:user) + + user = User.get_cached_by_ap_id(user.ap_id) + + assert AccountView.render( + "show.json", + %{user: user, for: other_user} + )[:pleroma][:unread_notifications_count] == nil + + assert AccountView.render( + "show.json", + %{user: user, for: user} + )[:pleroma][:unread_notifications_count] == 7 + end end describe "follow requests counter" do From 3c42caa85c51b4eaa447d6aafcfaa0bfceaa9beb Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Wed, 6 May 2020 16:20:47 +0300 Subject: [PATCH 138/156] apache chain issue fix --- installation/pleroma-apache.conf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/installation/pleroma-apache.conf b/installation/pleroma-apache.conf index b5640ac3d..0d627f2d7 100644 --- a/installation/pleroma-apache.conf +++ b/installation/pleroma-apache.conf @@ -32,9 +32,8 @@ CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on - SSLCertificateFile /etc/letsencrypt/live/${servername}/cert.pem + SSLCertificateFile /etc/letsencrypt/live/${servername}/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/${servername}/privkey.pem - SSLCertificateChainFile /etc/letsencrypt/live/${servername}/fullchain.pem # Mozilla modern configuration, tweak to your needs SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 From d7537a37c77dfef469106f12f0dd3649aad197da Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 6 May 2020 08:55:09 -0500 Subject: [PATCH 139/156] Add :chat to cheatsheet --- docs/configuration/cheatsheet.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/configuration/cheatsheet.md b/docs/configuration/cheatsheet.md index 705c4c15e..2524918d4 100644 --- a/docs/configuration/cheatsheet.md +++ b/docs/configuration/cheatsheet.md @@ -8,6 +8,10 @@ For from source installations Pleroma configuration works by first importing the To add configuration to your config file, you can copy it from the base config. The latest version of it can be viewed [here](https://git.pleroma.social/pleroma/pleroma/blob/develop/config/config.exs). You can also use this file if you don't know how an option is supposed to be formatted. +## :chat + +* `enabled` - Enables the backend chat. Defaults to `true`. + ## :instance * `name`: The instance’s name. * `email`: Email used to reach an Administrator/Moderator of the instance. From 4b00eb93fe2cef97a5570b9cc6e6844898d31b9a Mon Sep 17 00:00:00 2001 From: Alexander Strizhakov Date: Wed, 6 May 2020 18:04:16 +0300 Subject: [PATCH 140/156] fix for syslog compile with updated rebar3 --- mix.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mix.lock b/mix.lock index ee9d93bfb..28287cf97 100644 --- a/mix.lock +++ b/mix.lock @@ -37,7 +37,7 @@ "ex_const": {:hex, :ex_const, "0.2.4", "d06e540c9d834865b012a17407761455efa71d0ce91e5831e86881b9c9d82448", [:mix], [], "hexpm", "96fd346610cc992b8f896ed26a98be82ac4efb065a0578f334a32d60a3ba9767"}, "ex_doc": {:hex, :ex_doc, "0.21.3", "857ec876b35a587c5d9148a2512e952e24c24345552259464b98bfbb883c7b42", [:mix], [{:earmark, "~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "0db1ee8d1547ab4877c5b5dffc6604ef9454e189928d5ba8967d4a58a801f161"}, "ex_machina": {:hex, :ex_machina, "2.3.0", "92a5ad0a8b10ea6314b876a99c8c9e3f25f4dde71a2a835845b136b9adaf199a", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:ecto_sql, "~> 3.0", [hex: :ecto_sql, repo: "hexpm", optional: true]}], "hexpm", "b84f6af156264530b312a8ab98ac6088f6b77ae5fe2058305c81434aa01fbaf9"}, - "ex_syslogger": {:hex, :ex_syslogger, "1.5.0", "bc936ee3fd13d9e592cb4c3a1e8a55fccd33b05e3aa7b185f211f3ed263ff8f0", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.0.5", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "f3b4b184dcdd5f356b7c26c6cd72ab0918ba9dfb4061ccfaf519e562942af87b"}, + "ex_syslogger": {:hex, :ex_syslogger, "1.5.2", "72b6aa2d47a236e999171f2e1ec18698740f40af0bd02c8c650bf5f1fd1bac79", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.1.0", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "ab9fab4136dbc62651ec6f16fa4842f10cf02ab4433fa3d0976c01be99398399"}, "excoveralls": {:hex, :excoveralls, "0.12.2", "a513defac45c59e310ac42fcf2b8ae96f1f85746410f30b1ff2b710a4b6cd44b", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "151c476331d49b45601ffc45f43cb3a8beb396b02a34e3777fea0ad34ae57d89"}, "fast_html": {:hex, :fast_html, "1.0.3", "2cc0d4b68496266a1530e0c852cafeaede0bd10cfdee26fda50dc696c203162f", [:make, :mix], [], "hexpm", "ab3d782b639d3c4655fbaec0f9d032c91f8cab8dd791ac7469c2381bc7c32f85"}, "fast_sanitize": {:hex, :fast_sanitize, "0.1.7", "2a7cd8734c88a2de6de55022104f8a3b87f1fdbe8bbf131d9049764b53d50d0d", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "f39fe8ea08fbac17487c30bf09b7d9f3e12472e51fb07a88ffeb8fd17da8ab67"}, @@ -102,7 +102,7 @@ "ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.5", "6eaf7ad16cb568bb01753dbbd7a95ff8b91c7979482b95f38443fe2c8852a79b", [:make, :mix, :rebar3], [], "hexpm", "13104d7897e38ed7f044c4de953a6c28597d1c952075eb2e328bc6d6f2bfc496"}, "sweet_xml": {:hex, :sweet_xml, "0.6.6", "fc3e91ec5dd7c787b6195757fbcf0abc670cee1e4172687b45183032221b66b8", [:mix], [], "hexpm", "2e1ec458f892ffa81f9f8386e3f35a1af6db7a7a37748a64478f13163a1f3573"}, "swoosh": {:hex, :swoosh, "0.23.5", "bfd9404bbf5069b1be2ffd317923ce57e58b332e25dbca2a35dedd7820dfee5a", [:mix], [{:cowboy, "~> 1.0.1 or ~> 1.1 or ~> 2.4", [hex: :cowboy, repo: "hexpm", optional: true]}, {:gen_smtp, "~> 0.13", [hex: :gen_smtp, repo: "hexpm", optional: true]}, {:hackney, "~> 1.9", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:mail, "~> 0.2", [hex: :mail, repo: "hexpm", optional: true]}, {:mime, "~> 1.1", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_cowboy, ">= 1.0.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}], "hexpm", "e3928e1d2889a308aaf3e42755809ac21cffd77cb58eef01cbfdab4ce2fd1e21"}, - "syslog": {:hex, :syslog, "1.0.6", "995970c9aa7feb380ac493302138e308d6e04fd57da95b439a6df5bb3bf75076", [:rebar3], [], "hexpm", "769ddfabd0d2a16f3f9c17eb7509951e0ca4f68363fb26f2ee51a8ec4a49881a"}, + "syslog": {:hex, :syslog, "1.1.0", "6419a232bea84f07b56dc575225007ffe34d9fdc91abe6f1b2f254fd71d8efc2", [:rebar3], [], "hexpm", "4c6a41373c7e20587be33ef841d3de6f3beba08519809329ecc4d27b15b659e1"}, "telemetry": {:hex, :telemetry, "0.4.1", "ae2718484892448a24470e6aa341bc847c3277bfb8d4e9289f7474d752c09c7f", [:rebar3], [], "hexpm", "4738382e36a0a9a2b6e25d67c960e40e1a2c95560b9f936d8e29de8cd858480f"}, "tesla": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/tesla.git", "61b7503cef33f00834f78ddfafe0d5d9dec2270b", [ref: "61b7503cef33f00834f78ddfafe0d5d9dec2270b"]}, "timex": {:hex, :timex, "3.6.1", "efdf56d0e67a6b956cc57774353b0329c8ab7726766a11547e529357ffdc1d56", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 0.1.8 or ~> 0.5 or ~> 1.0.0", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm", "f354efb2400dd7a80fd9eb6c8419068c4f632da4ac47f3d8822d6e33f08bc852"}, From 57736c18332b0017e01d90e56547af1f5f830b7a Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 6 May 2020 16:30:05 -0500 Subject: [PATCH 141/156] Privacy option affects all push notifications, not just Direct Messages --- lib/pleroma/web/push/impl.ex | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/pleroma/web/push/impl.ex b/lib/pleroma/web/push/impl.ex index a9f893f7b..7f80bb0c9 100644 --- a/lib/pleroma/web/push/impl.ex +++ b/lib/pleroma/web/push/impl.ex @@ -106,14 +106,13 @@ def build_content(notification, actor, object, mastodon_type \\ nil) def build_content( %{ - activity: %{data: %{"directMessage" => true}}, user: %{notification_settings: %{privacy_option: true}} - }, + } = notification, actor, _object, - _mastodon_type + mastodon_type ) do - %{title: "New Direct Message", body: "@#{actor.nickname}"} + %{title: format_title(notification, mastodon_type), body: "@#{actor.nickname}"} end def build_content(notification, actor, object, mastodon_type) do From a2580adc91ac757e47b88839f5fb723fb15305b1 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 6 May 2020 16:42:27 -0500 Subject: [PATCH 142/156] Hide the sender when privacy option is enabled --- lib/pleroma/web/push/impl.ex | 4 ++-- test/web/push/impl_test.exs | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/pleroma/web/push/impl.ex b/lib/pleroma/web/push/impl.ex index 7f80bb0c9..691725702 100644 --- a/lib/pleroma/web/push/impl.ex +++ b/lib/pleroma/web/push/impl.ex @@ -108,11 +108,11 @@ def build_content( %{ user: %{notification_settings: %{privacy_option: true}} } = notification, - actor, + _actor, _object, mastodon_type ) do - %{title: format_title(notification, mastodon_type), body: "@#{actor.nickname}"} + %{body: format_title(notification, mastodon_type)} end def build_content(notification, actor, object, mastodon_type) do diff --git a/test/web/push/impl_test.exs b/test/web/push/impl_test.exs index b2664bf28..3de911810 100644 --- a/test/web/push/impl_test.exs +++ b/test/web/push/impl_test.exs @@ -209,8 +209,7 @@ test "returns info content for direct message with enabled privacy option" do object = Object.normalize(activity) assert Impl.build_content(notif, actor, object) == %{ - body: "@Bob", - title: "New Direct Message" + body: "New Direct Message" } end From 3d0c567fbc3506770fdac5f1269c45b244928747 Mon Sep 17 00:00:00 2001 From: Maksim Date: Thu, 7 May 2020 08:14:54 +0000 Subject: [PATCH 143/156] Pleroma.Web.TwitterAPI.TwoFactorAuthenticationController -> Pleroma.Web.PleromaAPI.TwoFactorAuthenticationController --- config/config.exs | 13 +- config/description.exs | 56 ++++ config/test.exs | 13 + docs/API/admin_api.md | 9 + docs/API/pleroma_api.md | 44 ++- docs/configuration/cheatsheet.md | 9 +- lib/pleroma/mfa.ex | 156 +++++++++ lib/pleroma/mfa/backup_codes.ex | 31 ++ lib/pleroma/mfa/changeset.ex | 64 ++++ lib/pleroma/mfa/settings.ex | 24 ++ lib/pleroma/mfa/token.ex | 106 ++++++ lib/pleroma/mfa/totp.ex | 86 +++++ .../plugs/ensure_authenticated_plug.ex | 14 + lib/pleroma/user.ex | 8 + .../web/admin_api/admin_api_controller.ex | 14 + lib/pleroma/web/auth/pleroma_authenticator.ex | 4 +- lib/pleroma/web/auth/totp_authenticator.ex | 45 +++ lib/pleroma/web/common_api/utils.ex | 1 + lib/pleroma/web/oauth/mfa_controller.ex | 97 ++++++ lib/pleroma/web/oauth/mfa_view.ex | 8 + lib/pleroma/web/oauth/oauth_controller.ex | 48 ++- lib/pleroma/web/oauth/token/clean_worker.ex | 38 +++ lib/pleroma/web/oauth/token/response.ex | 9 + .../two_factor_authentication_controller.ex | 133 ++++++++ lib/pleroma/web/router.ex | 15 + .../templates/o_auth/mfa/recovery.html.eex | 24 ++ .../web/templates/o_auth/mfa/totp.html.eex | 24 ++ .../remote_follow/follow_mfa.html.eex | 13 + .../controllers/remote_follow_controller.ex | 47 ++- mix.exs | 1 + mix.lock | 33 +- ...factor_authentication_settings_to_user.exs | 9 + .../20190508193213_create_mfa_tokens.exs | 16 + .../static/fonts/element-icons.535877f.woff | Bin 28200 -> 0 bytes .../static/fonts/element-icons.732389d.ttf | Bin 55956 -> 0 bytes test/mfa/backup_codes_test.exs | 11 + test/mfa/totp_test.exs | 17 + test/mfa_test.exs | 53 +++ test/plugs/ensure_authenticated_plug_test.exs | 25 ++ test/support/builders/user_builder.ex | 1 + test/support/factory.ex | 12 +- test/user_search_test.exs | 1 + .../admin_api/admin_api_controller_test.exs | 33 ++ test/web/auth/pleroma_authenticator_test.exs | 43 +++ test/web/auth/totp_authenticator_test.exs | 51 +++ test/web/oauth/mfa_controller_test.exs | 306 ++++++++++++++++++ test/web/oauth/oauth_controller_test.exs | 77 +++++ ..._factor_authentication_controller_test.exs | 260 +++++++++++++++ .../remote_follow_controller_test.exs | 116 +++++++ 49 files changed, 2184 insertions(+), 34 deletions(-) create mode 100644 lib/pleroma/mfa.ex create mode 100644 lib/pleroma/mfa/backup_codes.ex create mode 100644 lib/pleroma/mfa/changeset.ex create mode 100644 lib/pleroma/mfa/settings.ex create mode 100644 lib/pleroma/mfa/token.ex create mode 100644 lib/pleroma/mfa/totp.ex create mode 100644 lib/pleroma/web/auth/totp_authenticator.ex create mode 100644 lib/pleroma/web/oauth/mfa_controller.ex create mode 100644 lib/pleroma/web/oauth/mfa_view.ex create mode 100644 lib/pleroma/web/oauth/token/clean_worker.ex create mode 100644 lib/pleroma/web/pleroma_api/controllers/two_factor_authentication_controller.ex create mode 100644 lib/pleroma/web/templates/o_auth/mfa/recovery.html.eex create mode 100644 lib/pleroma/web/templates/o_auth/mfa/totp.html.eex create mode 100644 lib/pleroma/web/templates/twitter_api/remote_follow/follow_mfa.html.eex create mode 100644 priv/repo/migrations/20190506054542_add_multi_factor_authentication_settings_to_user.exs create mode 100644 priv/repo/migrations/20190508193213_create_mfa_tokens.exs delete mode 100644 priv/static/adminfe/static/fonts/element-icons.535877f.woff delete mode 100644 priv/static/adminfe/static/fonts/element-icons.732389d.ttf create mode 100644 test/mfa/backup_codes_test.exs create mode 100644 test/mfa/totp_test.exs create mode 100644 test/mfa_test.exs create mode 100644 test/web/auth/pleroma_authenticator_test.exs create mode 100644 test/web/auth/totp_authenticator_test.exs create mode 100644 test/web/oauth/mfa_controller_test.exs create mode 100644 test/web/pleroma_api/controllers/two_factor_authentication_controller_test.exs diff --git a/config/config.exs b/config/config.exs index ca9bbab64..e703c1632 100644 --- a/config/config.exs +++ b/config/config.exs @@ -238,7 +238,18 @@ account_field_value_length: 2048, external_user_synchronization: true, extended_nickname_format: true, - cleanup_attachments: false + cleanup_attachments: false, + multi_factor_authentication: [ + totp: [ + # digits 6 or 8 + digits: 6, + period: 30 + ], + backup_codes: [ + number: 5, + length: 16 + ] + ] config :pleroma, :extensions, output_relationships_in_statuses_by_default: true diff --git a/config/description.exs b/config/description.exs index 1b2afebef..39e094082 100644 --- a/config/description.exs +++ b/config/description.exs @@ -919,6 +919,62 @@ key: :external_user_synchronization, type: :boolean, description: "Enabling following/followers counters synchronization for external users" + }, + %{ + key: :multi_factor_authentication, + type: :keyword, + description: "Multi-factor authentication settings", + suggestions: [ + [ + totp: [digits: 6, period: 30], + backup_codes: [number: 5, length: 16] + ] + ], + children: [ + %{ + key: :totp, + type: :keyword, + description: "TOTP settings", + suggestions: [digits: 6, period: 30], + children: [ + %{ + key: :digits, + type: :integer, + suggestions: [6], + description: + "Determines the length of a one-time pass-code, in characters. Defaults to 6 characters." + }, + %{ + key: :period, + type: :integer, + suggestions: [30], + description: + "a period for which the TOTP code will be valid, in seconds. Defaults to 30 seconds." + } + ] + }, + %{ + key: :backup_codes, + type: :keyword, + description: "MFA backup codes settings", + suggestions: [number: 5, length: 16], + children: [ + %{ + key: :number, + type: :integer, + suggestions: [5], + description: "number of backup codes to generate." + }, + %{ + key: :length, + type: :integer, + suggestions: [16], + description: + "Determines the length of backup one-time pass-codes, in characters. Defaults to 16 characters." + } + ] + } + ] } ] }, diff --git a/config/test.exs b/config/test.exs index cbf775109..e38b9967d 100644 --- a/config/test.exs +++ b/config/test.exs @@ -56,6 +56,19 @@ ignore_hosts: [], ignore_tld: ["local", "localdomain", "lan"] +config :pleroma, :instance, + multi_factor_authentication: [ + totp: [ + # digits 6 or 8 + digits: 6, + period: 30 + ], + backup_codes: [ + number: 2, + length: 6 + ] + ] + config :web_push_encryption, :vapid_details, subject: "mailto:administrator@example.com", public_key: diff --git a/docs/API/admin_api.md b/docs/API/admin_api.md index 23af08961..c455047cc 100644 --- a/docs/API/admin_api.md +++ b/docs/API/admin_api.md @@ -409,6 +409,7 @@ Note: Available `:permission_group` is currently moderator and admin. 404 is ret ### Get a password reset token for a given nickname + - Params: none - Response: @@ -427,6 +428,14 @@ Note: Available `:permission_group` is currently moderator and admin. 404 is ret - `nicknames` - Response: none (code `204`) +## PUT `/api/pleroma/admin/users/disable_mfa` + +### Disable mfa for user's account. + +- Params: + - `nickname` +- Response: User’s nickname + ## `GET /api/pleroma/admin/users/:nickname/credentials` ### Get the user's email, password, display and settings-related fields diff --git a/docs/API/pleroma_api.md b/docs/API/pleroma_api.md index b927be026..5895613a3 100644 --- a/docs/API/pleroma_api.md +++ b/docs/API/pleroma_api.md @@ -70,7 +70,49 @@ Request parameters can be passed via [query strings](https://en.wikipedia.org/wi * Response: JSON. Returns `{"status": "success"}` if the account was successfully disabled, `{"error": "[error message]"}` otherwise * Example response: `{"error": "Invalid password."}` -## `/api/pleroma/admin/`… +## `/api/pleroma/accounts/mfa` +#### Gets current MFA settings +* method: `GET` +* Authentication: required +* OAuth scope: `read:security` +* Response: JSON. Returns `{"enabled": "false", "totp": false }` + +## `/api/pleroma/accounts/mfa/setup/totp` +#### Pre-setup the MFA/TOTP method +* method: `GET` +* Authentication: required +* OAuth scope: `write:security` +* Response: JSON. Returns `{"key": [secret_key], "provisioning_uri": "[qr code uri]" }` when successful, otherwise returns HTTP 422 `{"error": "error_msg"}` + +## `/api/pleroma/accounts/mfa/confirm/totp` +#### Confirms & enables MFA/TOTP support for user account. +* method: `POST` +* Authentication: required +* OAuth scope: `write:security` +* Params: + * `password`: user's password + * `code`: token from TOTP App +* Response: JSON. Returns `{}` if the enable was successful, HTTP 422 `{"error": "[error message]"}` otherwise + + +## `/api/pleroma/accounts/mfa/totp` +#### Disables MFA/TOTP method for user account. +* method: `DELETE` +* Authentication: required +* OAuth scope: `write:security` +* Params: + * `password`: user's password +* Response: JSON. Returns `{}` if the disable was successful, HTTP 422 `{"error": "[error message]"}` otherwise +* Example response: `{"error": "Invalid password."}` + +## `/api/pleroma/accounts/mfa/backup_codes` +#### Generstes backup codes MFA for user account. +* method: `GET` +* Authentication: required +* OAuth scope: `write:security` +* Response: JSON. Returns `{"codes": codes}`when successful, otherwise HTTP 422 `{"error": "[error message]"}` + +## `/api/pleroma/admin/` See [Admin-API](admin_api.md) ## `/api/v1/pleroma/notifications/read` diff --git a/docs/configuration/cheatsheet.md b/docs/configuration/cheatsheet.md index 2524918d4..707d7fdbd 100644 --- a/docs/configuration/cheatsheet.md +++ b/docs/configuration/cheatsheet.md @@ -907,12 +907,18 @@ config :auto_linker, * `runtime_dir`: A path to custom Elixir modules (such as MRF policies). - ## :configurable_from_database Boolean, enables/disables in-database configuration. Read [Transfering the config to/from the database](../administration/CLI_tasks/config.md) for more information. +### Multi-factor authentication - :two_factor_authentication +* `totp` - a list containing TOTP configuration + - `digits` - Determines the length of a one-time pass-code in characters. Defaults to 6 characters. + - `period` - a period for which the TOTP code will be valid in seconds. Defaults to 30 seconds. +* `backup_codes` - a list containing backup codes configuration + - `number` - number of backup codes to generate. + - `length` - backup code length. Defaults to 16 characters. ## Restrict entities access for unauthenticated users @@ -930,6 +936,7 @@ Restrict access for unauthenticated users to timelines (public and federate), us * `local` * `remote` + ## Pleroma.Web.ApiSpec.CastAndValidate * `:strict` a boolean, enables strict input validation (useful in development, not recommended in production). Defaults to `false`. diff --git a/lib/pleroma/mfa.ex b/lib/pleroma/mfa.ex new file mode 100644 index 000000000..d353a4dad --- /dev/null +++ b/lib/pleroma/mfa.ex @@ -0,0 +1,156 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFA do + @moduledoc """ + The MFA context. + """ + + alias Comeonin.Pbkdf2 + alias Pleroma.User + + alias Pleroma.MFA.BackupCodes + alias Pleroma.MFA.Changeset + alias Pleroma.MFA.Settings + alias Pleroma.MFA.TOTP + + @doc """ + Returns MFA methods the user has enabled. + + ## Examples + + iex> Pleroma.MFA.supported_method(User) + "totp, u2f" + """ + @spec supported_methods(User.t()) :: String.t() + def supported_methods(user) do + settings = fetch_settings(user) + + Settings.mfa_methods() + |> Enum.reduce([], fn m, acc -> + if method_enabled?(m, settings) do + acc ++ [m] + else + acc + end + end) + |> Enum.join(",") + end + + @doc "Checks that user enabled MFA" + def require?(user) do + fetch_settings(user).enabled + end + + @doc """ + Display MFA settings of user + """ + def mfa_settings(user) do + settings = fetch_settings(user) + + Settings.mfa_methods() + |> Enum.map(fn m -> [m, method_enabled?(m, settings)] end) + |> Enum.into(%{enabled: settings.enabled}, fn [a, b] -> {a, b} end) + end + + @doc false + def fetch_settings(%User{} = user) do + user.multi_factor_authentication_settings || %Settings{} + end + + @doc "clears backup codes" + def invalidate_backup_code(%User{} = user, hash_code) do + %{backup_codes: codes} = fetch_settings(user) + + user + |> Changeset.cast_backup_codes(codes -- [hash_code]) + |> User.update_and_set_cache() + end + + @doc "generates backup codes" + @spec generate_backup_codes(User.t()) :: {:ok, list(binary)} | {:error, String.t()} + def generate_backup_codes(%User{} = user) do + with codes <- BackupCodes.generate(), + hashed_codes <- Enum.map(codes, &Pbkdf2.hashpwsalt/1), + changeset <- Changeset.cast_backup_codes(user, hashed_codes), + {:ok, _} <- User.update_and_set_cache(changeset) do + {:ok, codes} + else + {:error, msg} -> + %{error: msg} + end + end + + @doc """ + Generates secret key and set delivery_type to 'app' for TOTP method. + """ + @spec setup_totp(User.t()) :: {:ok, User.t()} | {:error, Ecto.Changeset.t()} + def setup_totp(user) do + user + |> Changeset.setup_totp(%{secret: TOTP.generate_secret(), delivery_type: "app"}) + |> User.update_and_set_cache() + end + + @doc """ + Confirms the TOTP method for user. + + `attrs`: + `password` - current user password + `code` - TOTP token + """ + @spec confirm_totp(User.t(), map()) :: {:ok, User.t()} | {:error, Ecto.Changeset.t() | atom()} + def confirm_totp(%User{} = user, attrs) do + with settings <- user.multi_factor_authentication_settings.totp, + {:ok, :pass} <- TOTP.validate_token(settings.secret, attrs["code"]) do + user + |> Changeset.confirm_totp() + |> User.update_and_set_cache() + end + end + + @doc """ + Disables the TOTP method for user. + + `attrs`: + `password` - current user password + """ + @spec disable_totp(User.t()) :: {:ok, User.t()} | {:error, Ecto.Changeset.t()} + def disable_totp(%User{} = user) do + user + |> Changeset.disable_totp() + |> Changeset.disable() + |> User.update_and_set_cache() + end + + @doc """ + Force disables all MFA methods for user. + """ + @spec disable(User.t()) :: {:ok, User.t()} | {:error, Ecto.Changeset.t()} + def disable(%User{} = user) do + user + |> Changeset.disable_totp() + |> Changeset.disable(true) + |> User.update_and_set_cache() + end + + @doc """ + Checks if the user has MFA method enabled. + """ + def method_enabled?(method, settings) do + with {:ok, %{confirmed: true} = _} <- Map.fetch(settings, method) do + true + else + _ -> false + end + end + + @doc """ + Checks if the user has enabled at least one MFA method. + """ + def enabled?(settings) do + Settings.mfa_methods() + |> Enum.map(fn m -> method_enabled?(m, settings) end) + |> Enum.any?() + end +end diff --git a/lib/pleroma/mfa/backup_codes.ex b/lib/pleroma/mfa/backup_codes.ex new file mode 100644 index 000000000..2b5ec34f8 --- /dev/null +++ b/lib/pleroma/mfa/backup_codes.ex @@ -0,0 +1,31 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFA.BackupCodes do + @moduledoc """ + This module contains functions for generating backup codes. + """ + alias Pleroma.Config + + @config_ns [:instance, :multi_factor_authentication, :backup_codes] + + @doc """ + Generates backup codes. + """ + @spec generate(Keyword.t()) :: list(String.t()) + def generate(opts \\ []) do + number_of_codes = Keyword.get(opts, :number_of_codes, default_backup_codes_number()) + code_length = Keyword.get(opts, :length, default_backup_codes_code_length()) + + Enum.map(1..number_of_codes, fn _ -> + :crypto.strong_rand_bytes(div(code_length, 2)) + |> Base.encode16(case: :lower) + end) + end + + defp default_backup_codes_number, do: Config.get(@config_ns ++ [:number], 5) + + defp default_backup_codes_code_length, + do: Config.get(@config_ns ++ [:length], 16) +end diff --git a/lib/pleroma/mfa/changeset.ex b/lib/pleroma/mfa/changeset.ex new file mode 100644 index 000000000..9b020aa8e --- /dev/null +++ b/lib/pleroma/mfa/changeset.ex @@ -0,0 +1,64 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFA.Changeset do + alias Pleroma.MFA + alias Pleroma.MFA.Settings + alias Pleroma.User + + def disable(%Ecto.Changeset{} = changeset, force \\ false) do + settings = + changeset + |> Ecto.Changeset.apply_changes() + |> MFA.fetch_settings() + + if force || not MFA.enabled?(settings) do + put_change(changeset, %Settings{settings | enabled: false}) + else + changeset + end + end + + def disable_totp(%User{multi_factor_authentication_settings: settings} = user) do + user + |> put_change(%Settings{settings | totp: %Settings.TOTP{}}) + end + + def confirm_totp(%User{multi_factor_authentication_settings: settings} = user) do + totp_settings = %Settings.TOTP{settings.totp | confirmed: true} + + user + |> put_change(%Settings{settings | totp: totp_settings, enabled: true}) + end + + def setup_totp(%User{} = user, attrs) do + mfa_settings = MFA.fetch_settings(user) + + totp_settings = + %Settings.TOTP{} + |> Ecto.Changeset.cast(attrs, [:secret, :delivery_type]) + + user + |> put_change(%Settings{mfa_settings | totp: Ecto.Changeset.apply_changes(totp_settings)}) + end + + def cast_backup_codes(%User{} = user, codes) do + user + |> put_change(%Settings{ + user.multi_factor_authentication_settings + | backup_codes: codes + }) + end + + defp put_change(%User{} = user, settings) do + user + |> Ecto.Changeset.change() + |> put_change(settings) + end + + defp put_change(%Ecto.Changeset{} = changeset, settings) do + changeset + |> Ecto.Changeset.put_change(:multi_factor_authentication_settings, settings) + end +end diff --git a/lib/pleroma/mfa/settings.ex b/lib/pleroma/mfa/settings.ex new file mode 100644 index 000000000..2764b889c --- /dev/null +++ b/lib/pleroma/mfa/settings.ex @@ -0,0 +1,24 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFA.Settings do + use Ecto.Schema + + @primary_key false + + @mfa_methods [:totp] + embedded_schema do + field(:enabled, :boolean, default: false) + field(:backup_codes, {:array, :string}, default: []) + + embeds_one :totp, TOTP, on_replace: :delete, primary_key: false do + field(:secret, :string) + # app | sms + field(:delivery_type, :string, default: "app") + field(:confirmed, :boolean, default: false) + end + end + + def mfa_methods, do: @mfa_methods +end diff --git a/lib/pleroma/mfa/token.ex b/lib/pleroma/mfa/token.ex new file mode 100644 index 000000000..25ff7fb29 --- /dev/null +++ b/lib/pleroma/mfa/token.ex @@ -0,0 +1,106 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFA.Token do + use Ecto.Schema + import Ecto.Query + import Ecto.Changeset + + alias Pleroma.Repo + alias Pleroma.User + alias Pleroma.Web.OAuth.Authorization + alias Pleroma.Web.OAuth.Token, as: OAuthToken + + @expires 300 + + schema "mfa_tokens" do + field(:token, :string) + field(:valid_until, :naive_datetime_usec) + + belongs_to(:user, User, type: FlakeId.Ecto.CompatType) + belongs_to(:authorization, Authorization) + + timestamps() + end + + def get_by_token(token) do + from( + t in __MODULE__, + where: t.token == ^token, + preload: [:user, :authorization] + ) + |> Repo.find_resource() + end + + def validate(token) do + with {:fetch_token, {:ok, token}} <- {:fetch_token, get_by_token(token)}, + {:expired, false} <- {:expired, is_expired?(token)} do + {:ok, token} + else + {:expired, _} -> {:error, :expired_token} + {:fetch_token, _} -> {:error, :not_found} + error -> {:error, error} + end + end + + def create_token(%User{} = user) do + %__MODULE__{} + |> change + |> assign_user(user) + |> put_token + |> put_valid_until + |> Repo.insert() + end + + def create_token(user, authorization) do + %__MODULE__{} + |> change + |> assign_user(user) + |> assign_authorization(authorization) + |> put_token + |> put_valid_until + |> Repo.insert() + end + + defp assign_user(changeset, user) do + changeset + |> put_assoc(:user, user) + |> validate_required([:user]) + end + + defp assign_authorization(changeset, authorization) do + changeset + |> put_assoc(:authorization, authorization) + |> validate_required([:authorization]) + end + + defp put_token(changeset) do + changeset + |> change(%{token: OAuthToken.Utils.generate_token()}) + |> validate_required([:token]) + |> unique_constraint(:token) + end + + defp put_valid_until(changeset) do + expires_in = NaiveDateTime.add(NaiveDateTime.utc_now(), @expires) + + changeset + |> change(%{valid_until: expires_in}) + |> validate_required([:valid_until]) + end + + def is_expired?(%__MODULE__{valid_until: valid_until}) do + NaiveDateTime.diff(NaiveDateTime.utc_now(), valid_until) > 0 + end + + def is_expired?(_), do: false + + def delete_expired_tokens do + from( + q in __MODULE__, + where: fragment("?", q.valid_until) < ^Timex.now() + ) + |> Repo.delete_all() + end +end diff --git a/lib/pleroma/mfa/totp.ex b/lib/pleroma/mfa/totp.ex new file mode 100644 index 000000000..1407afc57 --- /dev/null +++ b/lib/pleroma/mfa/totp.ex @@ -0,0 +1,86 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFA.TOTP do + @moduledoc """ + This module represents functions to create secrets for + TOTP Application as well as validate them with a time based token. + """ + alias Pleroma.Config + + @config_ns [:instance, :multi_factor_authentication, :totp] + + @doc """ + https://github.com/google/google-authenticator/wiki/Key-Uri-Format + """ + def provisioning_uri(secret, label, opts \\ []) do + query = + %{ + secret: secret, + issuer: Keyword.get(opts, :issuer, default_issuer()), + digits: Keyword.get(opts, :digits, default_digits()), + period: Keyword.get(opts, :period, default_period()) + } + |> Enum.filter(fn {_, v} -> not is_nil(v) end) + |> Enum.into(%{}) + |> URI.encode_query() + + %URI{scheme: "otpauth", host: "totp", path: "/" <> label, query: query} + |> URI.to_string() + end + + defp default_period, do: Config.get(@config_ns ++ [:period]) + defp default_digits, do: Config.get(@config_ns ++ [:digits]) + + defp default_issuer, + do: Config.get(@config_ns ++ [:issuer], Config.get([:instance, :name])) + + @doc "Creates a random Base 32 encoded string" + def generate_secret do + Base.encode32(:crypto.strong_rand_bytes(10)) + end + + @doc "Generates a valid token based on a secret" + def generate_token(secret) do + :pot.totp(secret) + end + + @doc """ + Validates a given token based on a secret. + + optional parameters: + `token_length` default `6` + `interval_length` default `30` + `window` default 0 + + Returns {:ok, :pass} if the token is valid and + {:error, :invalid_token} if it is not. + """ + @spec validate_token(String.t(), String.t()) :: + {:ok, :pass} | {:error, :invalid_token | :invalid_secret_and_token} + def validate_token(secret, token) + when is_binary(secret) and is_binary(token) do + opts = [ + token_length: default_digits(), + interval_length: default_period() + ] + + validate_token(secret, token, opts) + end + + def validate_token(_, _), do: {:error, :invalid_secret_and_token} + + @doc "See `validate_token/2`" + @spec validate_token(String.t(), String.t(), Keyword.t()) :: + {:ok, :pass} | {:error, :invalid_token | :invalid_secret_and_token} + def validate_token(secret, token, options) + when is_binary(secret) and is_binary(token) do + case :pot.valid_totp(token, secret, options) do + true -> {:ok, :pass} + false -> {:error, :invalid_token} + end + end + + def validate_token(_, _, _), do: {:error, :invalid_secret_and_token} +end diff --git a/lib/pleroma/plugs/ensure_authenticated_plug.ex b/lib/pleroma/plugs/ensure_authenticated_plug.ex index 9d5176e2b..3fe550806 100644 --- a/lib/pleroma/plugs/ensure_authenticated_plug.ex +++ b/lib/pleroma/plugs/ensure_authenticated_plug.ex @@ -15,6 +15,20 @@ def init(options) do end @impl true + def perform( + %{ + assigns: %{ + auth_credentials: %{password: _}, + user: %User{multi_factor_authentication_settings: %{enabled: true}} + } + } = conn, + _ + ) do + conn + |> render_error(:forbidden, "Two-factor authentication enabled, you must use a access token.") + |> halt() + end + def perform(%{assigns: %{user: %User{}}} = conn, _) do conn end diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 323eb2a41..a6f51f0be 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -20,6 +20,7 @@ defmodule Pleroma.User do alias Pleroma.Formatter alias Pleroma.HTML alias Pleroma.Keys + alias Pleroma.MFA alias Pleroma.Notification alias Pleroma.Object alias Pleroma.Registration @@ -190,6 +191,12 @@ defmodule Pleroma.User do # `:subscribers` is deprecated (replaced with `subscriber_users` relation) field(:subscribers, {:array, :string}, default: []) + embeds_one( + :multi_factor_authentication_settings, + MFA.Settings, + on_replace: :delete + ) + timestamps() end @@ -927,6 +934,7 @@ def get_cached_by_nickname_or_id(nickname_or_id, opts \\ []) do end end + @spec get_by_nickname(String.t()) :: User.t() | nil def get_by_nickname(nickname) do Repo.get_by(User, nickname: nickname) || if Regex.match?(~r(@#{Pleroma.Web.Endpoint.host()})i, nickname) do diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index 80a4ebaac..9f1fd3aeb 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -10,6 +10,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do alias Pleroma.Activity alias Pleroma.Config alias Pleroma.ConfigDB + alias Pleroma.MFA alias Pleroma.ModerationLog alias Pleroma.Plugs.OAuthScopesPlug alias Pleroma.ReportNote @@ -61,6 +62,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do :right_add, :right_add_multiple, :right_delete, + :disable_mfa, :right_delete_multiple, :update_user_credentials ] @@ -674,6 +676,18 @@ def force_password_reset(%{assigns: %{user: admin}} = conn, %{"nicknames" => nic json_response(conn, :no_content, "") end + @doc "Disable mfa for user's account." + def disable_mfa(conn, %{"nickname" => nickname}) do + case User.get_by_nickname(nickname) do + %User{} = user -> + MFA.disable(user) + json(conn, nickname) + + _ -> + {:error, :not_found} + end + end + @doc "Show a given user's credentials" def show_user_credentials(%{assigns: %{user: admin}} = conn, %{"nickname" => nickname}) do with %User{} = user <- User.get_cached_by_nickname_or_id(nickname) do diff --git a/lib/pleroma/web/auth/pleroma_authenticator.ex b/lib/pleroma/web/auth/pleroma_authenticator.ex index cb09664ce..a8f554aa3 100644 --- a/lib/pleroma/web/auth/pleroma_authenticator.ex +++ b/lib/pleroma/web/auth/pleroma_authenticator.ex @@ -19,8 +19,8 @@ def get_user(%Plug.Conn{} = conn) do {_, true} <- {:checkpw, AuthenticationPlug.checkpw(password, user.password_hash)} do {:ok, user} else - error -> - {:error, error} + {:error, _reason} = error -> error + error -> {:error, error} end end diff --git a/lib/pleroma/web/auth/totp_authenticator.ex b/lib/pleroma/web/auth/totp_authenticator.ex new file mode 100644 index 000000000..98aca9a51 --- /dev/null +++ b/lib/pleroma/web/auth/totp_authenticator.ex @@ -0,0 +1,45 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.Auth.TOTPAuthenticator do + alias Comeonin.Pbkdf2 + alias Pleroma.MFA + alias Pleroma.MFA.TOTP + alias Pleroma.User + + @doc "Verify code or check backup code." + @spec verify(String.t(), User.t()) :: + {:ok, :pass} | {:error, :invalid_token | :invalid_secret_and_token} + def verify( + token, + %User{ + multi_factor_authentication_settings: + %{enabled: true, totp: %{secret: secret, confirmed: true}} = _ + } = _user + ) + when is_binary(token) and byte_size(token) > 0 do + TOTP.validate_token(secret, token) + end + + def verify(_, _), do: {:error, :invalid_token} + + @spec verify_recovery_code(User.t(), String.t()) :: + {:ok, :pass} | {:error, :invalid_token} + def verify_recovery_code( + %User{multi_factor_authentication_settings: %{enabled: true, backup_codes: codes}} = user, + code + ) + when is_list(codes) and is_binary(code) do + hash_code = Enum.find(codes, fn hash -> Pbkdf2.checkpw(code, hash) end) + + if hash_code do + MFA.invalidate_backup_code(user, hash_code) + {:ok, :pass} + else + {:error, :invalid_token} + end + end + + def verify_recovery_code(_, _), do: {:error, :invalid_token} +end diff --git a/lib/pleroma/web/common_api/utils.ex b/lib/pleroma/web/common_api/utils.ex index 6540fa5d1..793f2e7f8 100644 --- a/lib/pleroma/web/common_api/utils.ex +++ b/lib/pleroma/web/common_api/utils.ex @@ -402,6 +402,7 @@ defp shortname(name) do end end + @spec confirm_current_password(User.t(), String.t()) :: {:ok, User.t()} | {:error, String.t()} def confirm_current_password(user, password) do with %User{local: true} = db_user <- User.get_cached_by_id(user.id), true <- AuthenticationPlug.checkpw(password, db_user.password_hash) do diff --git a/lib/pleroma/web/oauth/mfa_controller.ex b/lib/pleroma/web/oauth/mfa_controller.ex new file mode 100644 index 000000000..e52cccd85 --- /dev/null +++ b/lib/pleroma/web/oauth/mfa_controller.ex @@ -0,0 +1,97 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.OAuth.MFAController do + @moduledoc """ + The model represents api to use Multi Factor authentications. + """ + + use Pleroma.Web, :controller + + alias Pleroma.MFA + alias Pleroma.Web.Auth.TOTPAuthenticator + alias Pleroma.Web.OAuth.MFAView, as: View + alias Pleroma.Web.OAuth.OAuthController + alias Pleroma.Web.OAuth.Token + + plug(:fetch_session when action in [:show, :verify]) + plug(:fetch_flash when action in [:show, :verify]) + + @doc """ + Display form to input mfa code or recovery code. + """ + def show(conn, %{"mfa_token" => mfa_token} = params) do + template = Map.get(params, "challenge_type", "totp") + + conn + |> put_view(View) + |> render("#{template}.html", %{ + mfa_token: mfa_token, + redirect_uri: params["redirect_uri"], + state: params["state"] + }) + end + + @doc """ + Verification code and continue authorization. + """ + def verify(conn, %{"mfa" => %{"mfa_token" => mfa_token} = mfa_params} = _) do + with {:ok, %{user: user, authorization: auth}} <- MFA.Token.validate(mfa_token), + {:ok, _} <- validates_challenge(user, mfa_params) do + conn + |> OAuthController.after_create_authorization(auth, %{ + "authorization" => %{ + "redirect_uri" => mfa_params["redirect_uri"], + "state" => mfa_params["state"] + } + }) + else + _ -> + conn + |> put_flash(:error, "Two-factor authentication failed.") + |> put_status(:unauthorized) + |> show(mfa_params) + end + end + + @doc """ + Verification second step of MFA (or recovery) and returns access token. + + ## Endpoint + POST /oauth/mfa/challenge + + params: + `client_id` + `client_secret` + `mfa_token` - access token to check second step of mfa + `challenge_type` - 'totp' or 'recovery' + `code` + + """ + def challenge(conn, %{"mfa_token" => mfa_token} = params) do + with {:ok, app} <- Token.Utils.fetch_app(conn), + {:ok, %{user: user, authorization: auth}} <- MFA.Token.validate(mfa_token), + {:ok, _} <- validates_challenge(user, params), + {:ok, token} <- Token.exchange_token(app, auth) do + json(conn, Token.Response.build(user, token)) + else + _error -> + conn + |> put_status(400) + |> json(%{error: "Invalid code"}) + end + end + + # Verify TOTP Code + defp validates_challenge(user, %{"challenge_type" => "totp", "code" => code} = _) do + TOTPAuthenticator.verify(code, user) + end + + # Verify Recovery Code + defp validates_challenge(user, %{"challenge_type" => "recovery", "code" => code} = _) do + TOTPAuthenticator.verify_recovery_code(user, code) + end + + defp validates_challenge(_, _), do: {:error, :unsupported_challenge_type} +end diff --git a/lib/pleroma/web/oauth/mfa_view.ex b/lib/pleroma/web/oauth/mfa_view.ex new file mode 100644 index 000000000..e88e7066b --- /dev/null +++ b/lib/pleroma/web/oauth/mfa_view.ex @@ -0,0 +1,8 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.OAuth.MFAView do + use Pleroma.Web, :view + import Phoenix.HTML.Form +end diff --git a/lib/pleroma/web/oauth/oauth_controller.ex b/lib/pleroma/web/oauth/oauth_controller.ex index 685269877..7c804233c 100644 --- a/lib/pleroma/web/oauth/oauth_controller.ex +++ b/lib/pleroma/web/oauth/oauth_controller.ex @@ -6,6 +6,7 @@ defmodule Pleroma.Web.OAuth.OAuthController do use Pleroma.Web, :controller alias Pleroma.Helpers.UriHelper + alias Pleroma.MFA alias Pleroma.Plugs.RateLimiter alias Pleroma.Registration alias Pleroma.Repo @@ -14,6 +15,7 @@ defmodule Pleroma.Web.OAuth.OAuthController do alias Pleroma.Web.ControllerHelper alias Pleroma.Web.OAuth.App alias Pleroma.Web.OAuth.Authorization + alias Pleroma.Web.OAuth.MFAController alias Pleroma.Web.OAuth.Scopes alias Pleroma.Web.OAuth.Token alias Pleroma.Web.OAuth.Token.Strategy.RefreshToken @@ -121,7 +123,8 @@ def create_authorization( %{"authorization" => _} = params, opts \\ [] ) do - with {:ok, auth} <- do_create_authorization(conn, params, opts[:user]) do + with {:ok, auth, user} <- do_create_authorization(conn, params, opts[:user]), + {:mfa_required, _, _, false} <- {:mfa_required, user, auth, MFA.require?(user)} do after_create_authorization(conn, auth, params) else error -> @@ -179,6 +182,22 @@ defp handle_create_authorization_error( |> authorize(params) end + defp handle_create_authorization_error( + %Plug.Conn{} = conn, + {:mfa_required, user, auth, _}, + params + ) do + {:ok, token} = MFA.Token.create_token(user, auth) + + data = %{ + "mfa_token" => token.token, + "redirect_uri" => params["authorization"]["redirect_uri"], + "state" => params["authorization"]["state"] + } + + MFAController.show(conn, data) + end + defp handle_create_authorization_error( %Plug.Conn{} = conn, {:account_status, :password_reset_pending}, @@ -231,7 +250,8 @@ def token_exchange(%Plug.Conn{} = conn, %{"grant_type" => "authorization_code"} json(conn, Token.Response.build(user, token, response_attrs)) else - _error -> render_invalid_credentials_error(conn) + error -> + handle_token_exchange_error(conn, error) end end @@ -244,6 +264,7 @@ def token_exchange( {:account_status, :active} <- {:account_status, User.account_status(user)}, {:ok, scopes} <- validate_scopes(app, params), {:ok, auth} <- Authorization.create_authorization(app, user, scopes), + {:mfa_required, _, _, false} <- {:mfa_required, user, auth, MFA.require?(user)}, {:ok, token} <- Token.exchange_token(app, auth) do json(conn, Token.Response.build(user, token)) else @@ -270,13 +291,20 @@ def token_exchange(%Plug.Conn{} = conn, %{"grant_type" => "client_credentials"} {:ok, token} <- Token.exchange_token(app, auth) do json(conn, Token.Response.build_for_client_credentials(token)) else - _error -> render_invalid_credentials_error(conn) + _error -> + handle_token_exchange_error(conn, :invalid_credentails) end end # Bad request def token_exchange(%Plug.Conn{} = conn, params), do: bad_request(conn, params) + defp handle_token_exchange_error(%Plug.Conn{} = conn, {:mfa_required, user, auth, _}) do + conn + |> put_status(:forbidden) + |> json(build_and_response_mfa_token(user, auth)) + end + defp handle_token_exchange_error(%Plug.Conn{} = conn, {:account_status, :deactivated}) do render_error( conn, @@ -434,7 +462,8 @@ def registration_details(%Plug.Conn{} = conn, %{"authorization" => auth_attrs}) def register(%Plug.Conn{} = conn, %{"authorization" => _, "op" => "connect"} = params) do with registration_id when not is_nil(registration_id) <- get_session_registration_id(conn), %Registration{} = registration <- Repo.get(Registration, registration_id), - {_, {:ok, auth}} <- {:create_authorization, do_create_authorization(conn, params)}, + {_, {:ok, auth, _user}} <- + {:create_authorization, do_create_authorization(conn, params)}, %User{} = user <- Repo.preload(auth, :user).user, {:ok, _updated_registration} <- Registration.bind_to_user(registration, user) do conn @@ -500,8 +529,9 @@ defp do_create_authorization( %App{} = app <- Repo.get_by(App, client_id: client_id), true <- redirect_uri in String.split(app.redirect_uris), {:ok, scopes} <- validate_scopes(app, auth_attrs), - {:account_status, :active} <- {:account_status, User.account_status(user)} do - Authorization.create_authorization(app, user, scopes) + {:account_status, :active} <- {:account_status, User.account_status(user)}, + {:ok, auth} <- Authorization.create_authorization(app, user, scopes) do + {:ok, auth, user} end end @@ -515,6 +545,12 @@ defp get_session_registration_id(%Plug.Conn{} = conn), do: get_session(conn, :re defp put_session_registration_id(%Plug.Conn{} = conn, registration_id), do: put_session(conn, :registration_id, registration_id) + defp build_and_response_mfa_token(user, auth) do + with {:ok, token} <- MFA.Token.create_token(user, auth) do + Token.Response.build_for_mfa_token(user, token) + end + end + @spec validate_scopes(App.t(), map()) :: {:ok, list()} | {:error, :missing_scopes | :unsupported_scopes} defp validate_scopes(%App{} = app, params) do diff --git a/lib/pleroma/web/oauth/token/clean_worker.ex b/lib/pleroma/web/oauth/token/clean_worker.ex new file mode 100644 index 000000000..2c3bb9ded --- /dev/null +++ b/lib/pleroma/web/oauth/token/clean_worker.ex @@ -0,0 +1,38 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.OAuth.Token.CleanWorker do + @moduledoc """ + The module represents functions to clean an expired OAuth and MFA tokens. + """ + use GenServer + + @ten_seconds 10_000 + @one_day 86_400_000 + + alias Pleroma.MFA + alias Pleroma.Web.OAuth + alias Pleroma.Workers.BackgroundWorker + + def start_link(_), do: GenServer.start_link(__MODULE__, %{}) + + def init(_) do + Process.send_after(self(), :perform, @ten_seconds) + {:ok, nil} + end + + @doc false + def handle_info(:perform, state) do + BackgroundWorker.enqueue("clean_expired_tokens", %{}) + interval = Pleroma.Config.get([:oauth2, :clean_expired_tokens_interval], @one_day) + + Process.send_after(self(), :perform, interval) + {:noreply, state} + end + + def perform(:clean) do + OAuth.Token.delete_expired_tokens() + MFA.Token.delete_expired_tokens() + end +end diff --git a/lib/pleroma/web/oauth/token/response.ex b/lib/pleroma/web/oauth/token/response.ex index 6f4713dee..0e72c31e9 100644 --- a/lib/pleroma/web/oauth/token/response.ex +++ b/lib/pleroma/web/oauth/token/response.ex @@ -5,6 +5,7 @@ defmodule Pleroma.Web.OAuth.Token.Response do @moduledoc false + alias Pleroma.MFA alias Pleroma.User alias Pleroma.Web.OAuth.Token.Utils @@ -32,5 +33,13 @@ def build_for_client_credentials(token) do } end + def build_for_mfa_token(user, mfa_token) do + %{ + error: "mfa_required", + mfa_token: mfa_token.token, + supported_challenge_types: MFA.supported_methods(user) + } + end + defp expires_in, do: Pleroma.Config.get([:oauth2, :token_expires_in], 600) end diff --git a/lib/pleroma/web/pleroma_api/controllers/two_factor_authentication_controller.ex b/lib/pleroma/web/pleroma_api/controllers/two_factor_authentication_controller.ex new file mode 100644 index 000000000..eb9989cdf --- /dev/null +++ b/lib/pleroma/web/pleroma_api/controllers/two_factor_authentication_controller.ex @@ -0,0 +1,133 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.PleromaAPI.TwoFactorAuthenticationController do + @moduledoc "The module represents actions to manage MFA" + use Pleroma.Web, :controller + + import Pleroma.Web.ControllerHelper, only: [json_response: 3] + + alias Pleroma.MFA + alias Pleroma.MFA.TOTP + alias Pleroma.Plugs.OAuthScopesPlug + alias Pleroma.Web.CommonAPI.Utils + + plug(OAuthScopesPlug, %{scopes: ["read:security"]} when action in [:settings]) + + plug( + OAuthScopesPlug, + %{scopes: ["write:security"]} when action in [:setup, :confirm, :disable, :backup_codes] + ) + + @doc """ + Gets user multi factor authentication settings + + ## Endpoint + GET /api/pleroma/accounts/mfa + + """ + def settings(%{assigns: %{user: user}} = conn, _params) do + json(conn, %{settings: MFA.mfa_settings(user)}) + end + + @doc """ + Prepare setup mfa method + + ## Endpoint + GET /api/pleroma/accounts/mfa/setup/[:method] + + """ + def setup(%{assigns: %{user: user}} = conn, %{"method" => "totp"} = _params) do + with {:ok, user} <- MFA.setup_totp(user), + %{secret: secret} = _ <- user.multi_factor_authentication_settings.totp do + provisioning_uri = TOTP.provisioning_uri(secret, "#{user.email}") + + json(conn, %{provisioning_uri: provisioning_uri, key: secret}) + else + {:error, message} -> + json_response(conn, :unprocessable_entity, %{error: message}) + end + end + + def setup(conn, _params) do + json_response(conn, :bad_request, %{error: "undefined method"}) + end + + @doc """ + Confirms setup and enable mfa method + + ## Endpoint + POST /api/pleroma/accounts/mfa/confirm/:method + + - params: + `code` - confirmation code + `password` - current password + """ + def confirm( + %{assigns: %{user: user}} = conn, + %{"method" => "totp", "password" => _, "code" => _} = params + ) do + with {:ok, _user} <- Utils.confirm_current_password(user, params["password"]), + {:ok, _user} <- MFA.confirm_totp(user, params) do + json(conn, %{}) + else + {:error, message} -> + json_response(conn, :unprocessable_entity, %{error: message}) + end + end + + def confirm(conn, _) do + json_response(conn, :bad_request, %{error: "undefined mfa method"}) + end + + @doc """ + Disable mfa method and disable mfa if need. + """ + def disable(%{assigns: %{user: user}} = conn, %{"method" => "totp"} = params) do + with {:ok, user} <- Utils.confirm_current_password(user, params["password"]), + {:ok, _user} <- MFA.disable_totp(user) do + json(conn, %{}) + else + {:error, message} -> + json_response(conn, :unprocessable_entity, %{error: message}) + end + end + + def disable(%{assigns: %{user: user}} = conn, %{"method" => "mfa"} = params) do + with {:ok, user} <- Utils.confirm_current_password(user, params["password"]), + {:ok, _user} <- MFA.disable(user) do + json(conn, %{}) + else + {:error, message} -> + json_response(conn, :unprocessable_entity, %{error: message}) + end + end + + def disable(conn, _) do + json_response(conn, :bad_request, %{error: "undefined mfa method"}) + end + + @doc """ + Generates backup codes. + + ## Endpoint + GET /api/pleroma/accounts/mfa/backup_codes + + ## Response + ### Success + `{codes: [codes]}` + + ### Error + `{error: [error_message]}` + + """ + def backup_codes(%{assigns: %{user: user}} = conn, _params) do + with {:ok, codes} <- MFA.generate_backup_codes(user) do + json(conn, %{codes: codes}) + else + {:error, message} -> + json_response(conn, :unprocessable_entity, %{error: message}) + end + end +end diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index 281516bb8..7a171f9fb 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -132,6 +132,7 @@ defmodule Pleroma.Web.Router do post("/users/follow", AdminAPIController, :user_follow) post("/users/unfollow", AdminAPIController, :user_unfollow) + put("/users/disable_mfa", AdminAPIController, :disable_mfa) delete("/users", AdminAPIController, :user_delete) post("/users", AdminAPIController, :users_create) patch("/users/:nickname/toggle_activation", AdminAPIController, :user_toggle_activation) @@ -258,6 +259,16 @@ defmodule Pleroma.Web.Router do post("/follow_import", UtilController, :follow_import) end + scope "/api/pleroma", Pleroma.Web.PleromaAPI do + pipe_through(:authenticated_api) + + get("/accounts/mfa", TwoFactorAuthenticationController, :settings) + get("/accounts/mfa/backup_codes", TwoFactorAuthenticationController, :backup_codes) + get("/accounts/mfa/setup/:method", TwoFactorAuthenticationController, :setup) + post("/accounts/mfa/confirm/:method", TwoFactorAuthenticationController, :confirm) + delete("/accounts/mfa/:method", TwoFactorAuthenticationController, :disable) + end + scope "/oauth", Pleroma.Web.OAuth do scope [] do pipe_through(:oauth) @@ -269,6 +280,10 @@ defmodule Pleroma.Web.Router do post("/revoke", OAuthController, :token_revoke) get("/registration_details", OAuthController, :registration_details) + post("/mfa/challenge", MFAController, :challenge) + post("/mfa/verify", MFAController, :verify, as: :mfa_verify) + get("/mfa", MFAController, :show) + scope [] do pipe_through(:browser) diff --git a/lib/pleroma/web/templates/o_auth/mfa/recovery.html.eex b/lib/pleroma/web/templates/o_auth/mfa/recovery.html.eex new file mode 100644 index 000000000..750f65386 --- /dev/null +++ b/lib/pleroma/web/templates/o_auth/mfa/recovery.html.eex @@ -0,0 +1,24 @@ +<%= if get_flash(@conn, :info) do %> + +<% end %> +<%= if get_flash(@conn, :error) do %> + +<% end %> + +

    Two-factor recovery

    + +<%= form_for @conn, mfa_verify_path(@conn, :verify), [as: "mfa"], fn f -> %> +
    + <%= label f, :code, "Recovery code" %> + <%= text_input f, :code %> + <%= hidden_input f, :mfa_token, value: @mfa_token %> + <%= hidden_input f, :state, value: @state %> + <%= hidden_input f, :redirect_uri, value: @redirect_uri %> + <%= hidden_input f, :challenge_type, value: "recovery" %> +
    + +<%= submit "Verify" %> +<% end %> +
    "> + Enter a two-factor code + diff --git a/lib/pleroma/web/templates/o_auth/mfa/totp.html.eex b/lib/pleroma/web/templates/o_auth/mfa/totp.html.eex new file mode 100644 index 000000000..af6e546b0 --- /dev/null +++ b/lib/pleroma/web/templates/o_auth/mfa/totp.html.eex @@ -0,0 +1,24 @@ +<%= if get_flash(@conn, :info) do %> + +<% end %> +<%= if get_flash(@conn, :error) do %> + +<% end %> + +

    Two-factor authentication

    + +<%= form_for @conn, mfa_verify_path(@conn, :verify), [as: "mfa"], fn f -> %> +
    + <%= label f, :code, "Authentication code" %> + <%= text_input f, :code %> + <%= hidden_input f, :mfa_token, value: @mfa_token %> + <%= hidden_input f, :state, value: @state %> + <%= hidden_input f, :redirect_uri, value: @redirect_uri %> + <%= hidden_input f, :challenge_type, value: "totp" %> +
    + +<%= submit "Verify" %> +<% end %> +"> + Enter a two-factor recovery code + diff --git a/lib/pleroma/web/templates/twitter_api/remote_follow/follow_mfa.html.eex b/lib/pleroma/web/templates/twitter_api/remote_follow/follow_mfa.html.eex new file mode 100644 index 000000000..adc3a3e3d --- /dev/null +++ b/lib/pleroma/web/templates/twitter_api/remote_follow/follow_mfa.html.eex @@ -0,0 +1,13 @@ +<%= if @error do %> +

    <%= @error %>

    +<% end %> +

    Two-factor authentication

    +

    <%= @followee.nickname %>

    + +<%= form_for @conn, remote_follow_path(@conn, :do_follow), [as: "mfa"], fn f -> %> +<%= text_input f, :code, placeholder: "Authentication code", required: true %> +
    +<%= hidden_input f, :id, value: @followee.id %> +<%= hidden_input f, :token, value: @mfa_token %> +<%= submit "Authorize" %> +<% end %> diff --git a/lib/pleroma/web/twitter_api/controllers/remote_follow_controller.ex b/lib/pleroma/web/twitter_api/controllers/remote_follow_controller.ex index 89da760da..521dc9322 100644 --- a/lib/pleroma/web/twitter_api/controllers/remote_follow_controller.ex +++ b/lib/pleroma/web/twitter_api/controllers/remote_follow_controller.ex @@ -8,10 +8,12 @@ defmodule Pleroma.Web.TwitterAPI.RemoteFollowController do require Logger alias Pleroma.Activity + alias Pleroma.MFA alias Pleroma.Object.Fetcher alias Pleroma.Plugs.OAuthScopesPlug alias Pleroma.User alias Pleroma.Web.Auth.Authenticator + alias Pleroma.Web.Auth.TOTPAuthenticator alias Pleroma.Web.CommonAPI @status_types ["Article", "Event", "Note", "Video", "Page", "Question"] @@ -68,6 +70,8 @@ defp is_status?(acct) do # POST /ostatus_subscribe # + # adds a remote account in followers if user already is signed in. + # def do_follow(%{assigns: %{user: %User{} = user}} = conn, %{"user" => %{"id" => id}}) do with {:fetch_user, %User{} = followee} <- {:fetch_user, User.get_cached_by_id(id)}, {:ok, _, _, _} <- CommonAPI.follow(user, followee) do @@ -78,9 +82,33 @@ def do_follow(%{assigns: %{user: %User{} = user}} = conn, %{"user" => %{"id" => end end + # POST /ostatus_subscribe + # + # step 1. + # checks login\password and displays step 2 form of MFA if need. + # def do_follow(conn, %{"authorization" => %{"name" => _, "password" => _, "id" => id}}) do - with {:fetch_user, %User{} = followee} <- {:fetch_user, User.get_cached_by_id(id)}, + with {_, %User{} = followee} <- {:fetch_user, User.get_cached_by_id(id)}, {_, {:ok, user}, _} <- {:auth, Authenticator.get_user(conn), followee}, + {_, _, _, false} <- {:mfa_required, followee, user, MFA.require?(user)}, + {:ok, _, _, _} <- CommonAPI.follow(user, followee) do + redirect(conn, to: "/users/#{followee.id}") + else + error -> + handle_follow_error(conn, error) + end + end + + # POST /ostatus_subscribe + # + # step 2 + # checks TOTP code. otherwise displays form with errors + # + def do_follow(conn, %{"mfa" => %{"code" => code, "token" => token, "id" => id}}) do + with {_, %User{} = followee} <- {:fetch_user, User.get_cached_by_id(id)}, + {_, _, {:ok, %{user: user}}} <- {:mfa_token, followee, MFA.Token.validate(token)}, + {_, _, _, {:ok, _}} <- + {:verify_mfa_code, followee, token, TOTPAuthenticator.verify(code, user)}, {:ok, _, _, _} <- CommonAPI.follow(user, followee) do redirect(conn, to: "/users/#{followee.id}") else @@ -94,6 +122,23 @@ def do_follow(%{assigns: %{user: nil}} = conn, _) do render(conn, "followed.html", %{error: "Insufficient permissions: follow | write:follows."}) end + defp handle_follow_error(conn, {:mfa_token, followee, _} = _) do + render(conn, "follow_login.html", %{error: "Wrong username or password", followee: followee}) + end + + defp handle_follow_error(conn, {:verify_mfa_code, followee, token, _} = _) do + render(conn, "follow_mfa.html", %{ + error: "Wrong authentication code", + followee: followee, + mfa_token: token + }) + end + + defp handle_follow_error(conn, {:mfa_required, followee, user, _} = _) do + {:ok, %{token: token}} = MFA.Token.create_token(user) + render(conn, "follow_mfa.html", %{followee: followee, mfa_token: token, error: false}) + end + defp handle_follow_error(conn, {:auth, _, followee} = _) do render(conn, "follow_login.html", %{error: "Wrong username or password", followee: followee}) end diff --git a/mix.exs b/mix.exs index beb05aab9..6d65e18d4 100644 --- a/mix.exs +++ b/mix.exs @@ -176,6 +176,7 @@ defp deps do {:quack, "~> 0.1.1"}, {:joken, "~> 2.0"}, {:benchee, "~> 1.0"}, + {:pot, "~> 0.10.2"}, {:esshd, "~> 0.1.0", runtime: Application.get_env(:esshd, :enabled, false)}, {:ex_const, "~> 0.2"}, {:plug_static_index_html, "~> 1.0.0"}, diff --git a/mix.lock b/mix.lock index 28287cf97..4792249d7 100644 --- a/mix.lock +++ b/mix.lock @@ -2,8 +2,7 @@ "accept": {:hex, :accept, "0.3.5", "b33b127abca7cc948bbe6caa4c263369abf1347cfa9d8e699c6d214660f10cd1", [:rebar3], [], "hexpm", "11b18c220bcc2eab63b5470c038ef10eb6783bcb1fcdb11aa4137defa5ac1bb8"}, "auto_linker": {:git, "https://git.pleroma.social/pleroma/auto_linker.git", "95e8188490e97505c56636c1379ffdf036c1fdde", [ref: "95e8188490e97505c56636c1379ffdf036c1fdde"]}, "base62": {:hex, :base62, "1.2.1", "4866763e08555a7b3917064e9eef9194c41667276c51b59de2bc42c6ea65f806", [:mix], [{:custom_base, "~> 0.2.1", [hex: :custom_base, repo: "hexpm", optional: false]}], "hexpm", "3b29948de2013d3f93aa898c884a9dff847e7aec75d9d6d8c1dc4c61c2716c42"}, - "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm"}, - "bbcode": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/bbcode.git", "f2d267675e9a7e1ad1ea9beb4cc23382762b66c2", [ref: "v0.2.0"]}, + "bbcode": {:hex, :bbcode, "0.1.1", "0023e2c7814119b2e620b7add67182e3f6019f92bfec9a22da7e99821aceba70", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5a981b98ac7d366a9b6bf40eac389aaf4d6e623c631e6b6f8a6b571efaafd338"}, "bbcode_pleroma": {:hex, :bbcode_pleroma, "0.2.0", "d36f5bca6e2f62261c45be30fa9b92725c0655ad45c99025cb1c3e28e25803ef", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "19851074419a5fedb4ef49e1f01b30df504bb5dbb6d6adfc135238063bebd1c3"}, "benchee": {:hex, :benchee, "1.0.1", "66b211f9bfd84bd97e6d1beaddf8fc2312aaabe192f776e8931cb0c16f53a521", [:mix], [{:deep_merge, "~> 1.0", [hex: :deep_merge, repo: "hexpm", optional: false]}], "hexpm", "3ad58ae787e9c7c94dd7ceda3b587ec2c64604563e049b2a0e8baafae832addb"}, "bunt": {:hex, :bunt, "0.2.0", "951c6e801e8b1d2cbe58ebbd3e616a869061ddadcc4863d0a2182541acae9a38", [:mix], [], "hexpm", "7af5c7e09fe1d40f76c8e4f9dd2be7cebd83909f31fee7cd0e9eadc567da8353"}, @@ -19,38 +18,33 @@ "cowboy": {:hex, :cowboy, "2.7.0", "91ed100138a764355f43316b1d23d7ff6bdb0de4ea618cb5d8677c93a7a2f115", [:rebar3], [{:cowlib, "~> 2.8.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "~> 1.7.1", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "04fd8c6a39edc6aaa9c26123009200fc61f92a3a94f3178c527b70b767c6e605"}, "cowlib": {:hex, :cowlib, "2.8.0", "fd0ff1787db84ac415b8211573e9a30a3ebe71b5cbff7f720089972b2319c8a4", [:rebar3], [], "hexpm", "79f954a7021b302186a950a32869dbc185523d99d3e44ce430cd1f3289f41ed4"}, "credo": {:hex, :credo, "1.1.5", "caec7a3cadd2e58609d7ee25b3931b129e739e070539ad1a0cd7efeeb47014f4", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "d0bbd3222607ccaaac5c0340f7f525c627ae4d7aee6c8c8c108922620c5b6446"}, - "crontab": {:hex, :crontab, "1.1.8", "2ce0e74777dfcadb28a1debbea707e58b879e6aa0ffbf9c9bb540887bce43617", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm"}, "crypt": {:git, "https://github.com/msantos/crypt", "1f2b58927ab57e72910191a7ebaeff984382a1d3", [ref: "1f2b58927ab57e72910191a7ebaeff984382a1d3"]}, "custom_base": {:hex, :custom_base, "0.2.1", "4a832a42ea0552299d81652aa0b1f775d462175293e99dfbe4d7dbaab785a706", [:mix], [], "hexpm", "8df019facc5ec9603e94f7270f1ac73ddf339f56ade76a721eaa57c1493ba463"}, "db_connection": {:hex, :db_connection, "2.2.1", "caee17725495f5129cb7faebde001dc4406796f12a62b8949f4ac69315080566", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}], "hexpm", "2b02ece62d9f983fcd40954e443b7d9e6589664380e5546b2b9b523cd0fb59e1"}, "decimal": {:hex, :decimal, "1.8.1", "a4ef3f5f3428bdbc0d35374029ffcf4ede8533536fa79896dd450168d9acdf3c", [:mix], [], "hexpm", "3cb154b00225ac687f6cbd4acc4b7960027c757a5152b369923ead9ddbca7aec"}, "deep_merge": {:hex, :deep_merge, "1.0.0", "b4aa1a0d1acac393bdf38b2291af38cb1d4a52806cf7a4906f718e1feb5ee961", [:mix], [], "hexpm", "ce708e5f094b9cd4e8f2be4f00d2f4250c4095be93f8cd6d018c753894885430"}, "earmark": {:hex, :earmark, "1.4.3", "364ca2e9710f6bff494117dbbd53880d84bebb692dafc3a78eb50aa3183f2bfd", [:mix], [], "hexpm", "8cf8a291ebf1c7b9539e3cddb19e9cef066c2441b1640f13c34c1d3cfc825fec"}, - "ecto": {:hex, :ecto, "3.4.0", "a7a83ab8359bf816ce729e5e65981ce25b9fc5adfc89c2ea3980f4fed0bfd7c1", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "5eed18252f5b5bbadec56a24112b531343507dbe046273133176b12190ce19cc"}, + "ecto": {:hex, :ecto, "3.4.2", "6890af71025769bd27ef62b1ed1925cfe23f7f0460bcb3041da4b705215ff23e", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "b3959b8a83e086202a4bd86b4b5e6e71f9f1840813de14a57d502d3fc2ef7132"}, "ecto_enum": {:hex, :ecto_enum, "1.4.0", "d14b00e04b974afc69c251632d1e49594d899067ee2b376277efd8233027aec8", [:mix], [{:ecto, ">= 3.0.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:ecto_sql, "> 3.0.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:mariaex, ">= 0.0.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: true]}], "hexpm", "8fb55c087181c2b15eee406519dc22578fa60dd82c088be376d0010172764ee4"}, "ecto_sql": {:hex, :ecto_sql, "3.3.4", "aa18af12eb875fbcda2f75e608b3bd534ebf020fc4f6448e4672fcdcbb081244", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.4 or ~> 3.3.3", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.3.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "5eccbdbf92e3c6f213007a82d5dbba4cd9bb659d1a21331f89f408e4c0efd7a8"}, "esshd": {:hex, :esshd, "0.1.1", "d4dd4c46698093a40a56afecce8a46e246eb35463c457c246dacba2e056f31b5", [:mix], [], "hexpm", "d73e341e3009d390aa36387dc8862860bf9f874c94d9fd92ade2926376f49981"}, "eternal": {:hex, :eternal, "1.2.1", "d5b6b2499ba876c57be2581b5b999ee9bdf861c647401066d3eeed111d096bc4", [:mix], [], "hexpm", "b14f1dc204321429479c569cfbe8fb287541184ed040956c8862cb7a677b8406"}, - "ex2ms": {:hex, :ex2ms, "1.5.0", "19e27f9212be9a96093fed8cdfbef0a2b56c21237196d26760f11dfcfae58e97", [:mix], [], "hexpm"}, "ex_aws": {:hex, :ex_aws, "2.1.1", "1e4de2106cfbf4e837de41be41cd15813eabc722315e388f0d6bb3732cec47cd", [:mix], [{:configparser_ex, "~> 4.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "1.6.3 or 1.6.5 or 1.7.1 or 1.8.6 or ~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:poison, ">= 1.2.0", [hex: :poison, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "06b6fde12b33bb6d65d5d3493e903ba5a56d57a72350c15285a4298338089e10"}, "ex_aws_s3": {:hex, :ex_aws_s3, "2.0.2", "c0258bbdfea55de4f98f0b2f0ca61fe402cc696f573815134beb1866e778f47b", [:mix], [{:ex_aws, "~> 2.0", [hex: :ex_aws, repo: "hexpm", optional: false]}, {:sweet_xml, ">= 0.0.0", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "0569f5b211b1a3b12b705fe2a9d0e237eb1360b9d76298028df2346cad13097a"}, "ex_const": {:hex, :ex_const, "0.2.4", "d06e540c9d834865b012a17407761455efa71d0ce91e5831e86881b9c9d82448", [:mix], [], "hexpm", "96fd346610cc992b8f896ed26a98be82ac4efb065a0578f334a32d60a3ba9767"}, - "ex_doc": {:hex, :ex_doc, "0.21.3", "857ec876b35a587c5d9148a2512e952e24c24345552259464b98bfbb883c7b42", [:mix], [{:earmark, "~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "0db1ee8d1547ab4877c5b5dffc6604ef9454e189928d5ba8967d4a58a801f161"}, + "ex_doc": {:hex, :ex_doc, "0.21.2", "caca5bc28ed7b3bdc0b662f8afe2bee1eedb5c3cf7b322feeeb7c6ebbde089d6", [:mix], [{:earmark, "~> 1.3.3 or ~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "f1155337ae17ff7a1255217b4c1ceefcd1860b7ceb1a1874031e7a861b052e39"}, "ex_machina": {:hex, :ex_machina, "2.3.0", "92a5ad0a8b10ea6314b876a99c8c9e3f25f4dde71a2a835845b136b9adaf199a", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:ecto_sql, "~> 3.0", [hex: :ecto_sql, repo: "hexpm", optional: true]}], "hexpm", "b84f6af156264530b312a8ab98ac6088f6b77ae5fe2058305c81434aa01fbaf9"}, "ex_syslogger": {:hex, :ex_syslogger, "1.5.2", "72b6aa2d47a236e999171f2e1ec18698740f40af0bd02c8c650bf5f1fd1bac79", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.1.0", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "ab9fab4136dbc62651ec6f16fa4842f10cf02ab4433fa3d0976c01be99398399"}, "excoveralls": {:hex, :excoveralls, "0.12.2", "a513defac45c59e310ac42fcf2b8ae96f1f85746410f30b1ff2b710a4b6cd44b", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "151c476331d49b45601ffc45f43cb3a8beb396b02a34e3777fea0ad34ae57d89"}, - "fast_html": {:hex, :fast_html, "1.0.3", "2cc0d4b68496266a1530e0c852cafeaede0bd10cfdee26fda50dc696c203162f", [:make, :mix], [], "hexpm", "ab3d782b639d3c4655fbaec0f9d032c91f8cab8dd791ac7469c2381bc7c32f85"}, - "fast_sanitize": {:hex, :fast_sanitize, "0.1.7", "2a7cd8734c88a2de6de55022104f8a3b87f1fdbe8bbf131d9049764b53d50d0d", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "f39fe8ea08fbac17487c30bf09b7d9f3e12472e51fb07a88ffeb8fd17da8ab67"}, + "fast_html": {:hex, :fast_html, "1.0.1", "5bc7df4dc4607ec2c314c16414e4111d79a209956c4f5df96602d194c61197f9", [:make, :mix], [], "hexpm", "18e627dd62051a375ef94b197f41e8027c3e8eef0180ab8f81e0543b3dc6900a"}, + "fast_sanitize": {:hex, :fast_sanitize, "0.1.6", "60a5ae96879956dea409a91a77f5dd2994c24cc10f80eefd8f9892ee4c0c7b25", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b73f50f0cb522dd0331ea8e8c90b408de42c50f37641219d6364f0e3e7efd22c"}, "flake_id": {:hex, :flake_id, "0.1.0", "7716b086d2e405d09b647121a166498a0d93d1a623bead243e1f74216079ccb3", [:mix], [{:base62, "~> 1.2", [hex: :base62, repo: "hexpm", optional: false]}, {:ecto, ">= 2.0.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "31fc8090fde1acd267c07c36ea7365b8604055f897d3a53dd967658c691bd827"}, - "floki": {:hex, :floki, "0.25.0", "b1c9ddf5f32a3a90b43b76f3386ca054325dc2478af020e87b5111c19f2284ac", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "631f4e627c46d5ecd347df5a2accdaf0621c77c3693c5b75a8ad58e84c61f242"}, + "floki": {:hex, :floki, "0.26.0", "4df88977e2e357c6720e1b650f613444bfb48c5acfc6a0c646ab007d08ad13bf", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "e7b66ce7feef5518a9cd9fc7b52dd62a64028bd9cb6d6ad282a0f0fc90a4ae52"}, "gen_smtp": {:hex, :gen_smtp, "0.15.0", "9f51960c17769b26833b50df0b96123605a8024738b62db747fece14eb2fbfcc", [:rebar3], [], "hexpm", "29bd14a88030980849c7ed2447b8db6d6c9278a28b11a44cafe41b791205440f"}, - "gen_stage": {:hex, :gen_stage, "0.14.3", "d0c66f1c87faa301c1a85a809a3ee9097a4264b2edf7644bf5c123237ef732bf", [:mix], [], "hexpm"}, - "gen_state_machine": {:hex, :gen_state_machine, "2.0.5", "9ac15ec6e66acac994cc442dcc2c6f9796cf380ec4b08267223014be1c728a95", [:mix], [], "hexpm"}, "gettext": {:hex, :gettext, "0.17.4", "f13088e1ec10ce01665cf25f5ff779e7df3f2dc71b37084976cf89d1aa124d5c", [:mix], [], "hexpm", "3c75b5ea8288e2ee7ea503ff9e30dfe4d07ad3c054576a6e60040e79a801e14d"}, "gun": {:git, "https://github.com/ninenines/gun.git", "e1a69b36b180a574c0ac314ced9613fdd52312cc", [ref: "e1a69b36b180a574c0ac314ced9613fdd52312cc"]}, "hackney": {:hex, :hackney, "1.15.2", "07e33c794f8f8964ee86cebec1a8ed88db5070e52e904b8f12209773c1036085", [:rebar3], [{:certifi, "2.5.1", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.5", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "e0100f8ef7d1124222c11ad362c857d3df7cb5f4204054f9f0f4a728666591fc"}, "html_entities": {:hex, :html_entities, "0.5.1", "1c9715058b42c35a2ab65edc5b36d0ea66dd083767bef6e3edb57870ef556549", [:mix], [], "hexpm", "30efab070904eb897ff05cd52fa61c1025d7f8ef3a9ca250bc4e6513d16c32de"}, - "html_sanitize_ex": {:hex, :html_sanitize_ex, "1.3.0", "f005ad692b717691203f940c686208aa3d8ffd9dd4bb3699240096a51fa9564e", [:mix], [{:mochiweb, "~> 2.15", [hex: :mochiweb, repo: "hexpm", optional: false]}], "hexpm"}, "http_signatures": {:git, "https://git.pleroma.social/pleroma/http_signatures.git", "293d77bb6f4a67ac8bde1428735c3b42f22cbb30", [ref: "293d77bb6f4a67ac8bde1428735c3b42f22cbb30"]}, "httpoison": {:hex, :httpoison, "1.6.2", "ace7c8d3a361cebccbed19c283c349b3d26991eff73a1eaaa8abae2e3c8089b6", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "aa2c74bd271af34239a3948779612f87df2422c2fdcfdbcec28d9c105f0773fe"}, "idna": {:hex, :idna, "6.0.0", "689c46cbcdf3524c44d5f3dde8001f364cd7608a99556d8fbd8239a5798d4c10", [:rebar3], [{:unicode_util_compat, "0.4.1", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "4bdd305eb64e18b0273864920695cb18d7a2021f31a11b9c5fbcd9a253f936e2"}, @@ -59,37 +53,34 @@ "joken": {:hex, :joken, "2.2.0", "2daa1b12be05184aff7b5ace1d43ca1f81345962285fff3f88db74927c954d3a", [:mix], [{:jose, "~> 1.9", [hex: :jose, repo: "hexpm", optional: false]}], "hexpm", "b4f92e30388206f869dd25d1af628a1d99d7586e5cf0672f64d4df84c4d2f5e9"}, "jose": {:hex, :jose, "1.10.1", "16d8e460dae7203c6d1efa3f277e25b5af8b659febfc2f2eb4bacf87f128b80a", [:mix, :rebar3], [], "hexpm", "3c7ddc8a9394b92891db7c2771da94bf819834a1a4c92e30857b7d582e2f8257"}, "jumper": {:hex, :jumper, "1.0.1", "3c00542ef1a83532b72269fab9f0f0c82bf23a35e27d278bfd9ed0865cecabff", [:mix], [], "hexpm", "318c59078ac220e966d27af3646026db9b5a5e6703cb2aa3e26bcfaba65b7433"}, - "libring": {:hex, :libring, "1.4.0", "41246ba2f3fbc76b3971f6bce83119dfec1eee17e977a48d8a9cfaaf58c2a8d6", [:mix], [], "hexpm"}, "makeup": {:hex, :makeup, "1.0.0", "671df94cf5a594b739ce03b0d0316aa64312cee2574b6a44becb83cd90fb05dc", [:mix], [{:nimble_parsec, "~> 0.5.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "a10c6eb62cca416019663129699769f0c2ccf39428b3bb3c0cb38c718a0c186d"}, "makeup_elixir": {:hex, :makeup_elixir, "0.14.0", "cf8b7c66ad1cff4c14679698d532f0b5d45a3968ffbcbfd590339cb57742f1ae", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "d4b316c7222a85bbaa2fd7c6e90e37e953257ad196dc229505137c5e505e9eff"}, "meck": {:hex, :meck, "0.8.13", "ffedb39f99b0b99703b8601c6f17c7f76313ee12de6b646e671e3188401f7866", [:rebar3], [], "hexpm", "d34f013c156db51ad57cc556891b9720e6a1c1df5fe2e15af999c84d6cebeb1a"}, "metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm", "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16"}, "mime": {:hex, :mime, "1.3.1", "30ce04ab3175b6ad0bdce0035cba77bba68b813d523d1aac73d9781b4d193cf8", [:mix], [], "hexpm", "6cbe761d6a0ca5a31a0931bf4c63204bceb64538e664a8ecf784a9a6f3b875f1"}, "mimerl": {:hex, :mimerl, "1.2.0", "67e2d3f571088d5cfd3e550c383094b47159f3eee8ffa08e64106cdf5e981be3", [:rebar3], [], "hexpm", "f278585650aa581986264638ebf698f8bb19df297f66ad91b18910dfc6e19323"}, - "mochiweb": {:hex, :mochiweb, "2.18.0", "eb55f1db3e6e960fac4e6db4e2db9ec3602cc9f30b86cd1481d56545c3145d2e", [:rebar3], [], "hexpm"}, "mock": {:hex, :mock, "0.3.4", "c5862eb3b8c64237f45f586cf00c9d892ba07bb48305a43319d428ce3c2897dd", [:mix], [{:meck, "~> 0.8.13", [hex: :meck, repo: "hexpm", optional: false]}], "hexpm", "e6d886252f1a41f4ba06ecf2b4c8d38760b34b1c08a11c28f7397b2e03995964"}, "mogrify": {:hex, :mogrify, "0.6.1", "de1b527514f2d95a7bbe9642eb556061afb337e220cf97adbf3a4e6438ed70af", [:mix], [], "hexpm", "3bc928d817974fa10cc11e6c89b9a9361e37e96dbbf3d868c41094ec05745dcd"}, "mox": {:hex, :mox, "0.5.1", "f86bb36026aac1e6f924a4b6d024b05e9adbed5c63e8daa069bd66fb3292165b", [:mix], [], "hexpm", "052346cf322311c49a0f22789f3698eea030eec09b8c47367f0686ef2634ae14"}, - "myhtmlex": {:git, "https://git.pleroma.social/pleroma/myhtmlex.git", "ad0097e2f61d4953bfef20fb6abddf23b87111e6", [ref: "ad0097e2f61d4953bfef20fb6abddf23b87111e6", submodules: true]}, "nimble_parsec": {:hex, :nimble_parsec, "0.5.3", "def21c10a9ed70ce22754fdeea0810dafd53c2db3219a0cd54cf5526377af1c6", [:mix], [], "hexpm", "589b5af56f4afca65217a1f3eb3fee7e79b09c40c742fddc1c312b3ac0b3399f"}, - "nodex": {:git, "https://git.pleroma.social/pleroma/nodex", "cb6730f943cfc6aad674c92161be23a8411f15d1", [ref: "cb6730f943cfc6aad674c92161be23a8411f15d1"]}, "oban": {:hex, :oban, "1.2.0", "7cca94d341be43d220571e28f69131c4afc21095b25257397f50973d3fc59b07", [:mix], [{:ecto_sql, "~> 3.1", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:postgrex, "~> 0.14", [hex: :postgrex, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ba5f8b3f7d76967b3e23cf8014f6a13e4ccb33431e4808f036709a7f822362ee"}, "open_api_spex": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/open_api_spex.git", "b862ebd78de0df95875cf46feb6e9607130dc2a8", [ref: "b862ebd78de0df95875cf46feb6e9607130dc2a8"]}, "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm", "17ef63abde837ad30680ea7f857dd9e7ced9476cdd7b0394432af4bfc241b960"}, "pbkdf2_elixir": {:hex, :pbkdf2_elixir, "0.12.4", "8dd29ed783f2e12195d7e0a4640effc0a7c37e6537da491f1db01839eee6d053", [:mix], [], "hexpm", "595d09db74cb093b1903381c9de423276a931a2480a46a1a5dc7f932a2a6375b"}, - "phoenix": {:hex, :phoenix, "1.4.13", "67271ad69b51f3719354604f4a3f968f83aa61c19199343656c9caee057ff3b8", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ab765a0feddb81fc62e2116c827b5f068df85159c162bee760745276ad7ddc1b"}, + "phoenix": {:hex, :phoenix, "1.4.12", "b86fa85a2ba336f5de068549de5ccceec356fd413264a9637e7733395d6cc4ea", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "58331ade6d77e1312a3d976f0fa41803b8f004b2b5f489193425bc46aea3ed30"}, "phoenix_ecto": {:hex, :phoenix_ecto, "4.1.0", "a044d0756d0464c5a541b4a0bf4bcaf89bffcaf92468862408290682c73ae50d", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "c5e666a341ff104d0399d8f0e4ff094559b2fde13a5985d4cb5023b2c2ac558b"}, "phoenix_html": {:hex, :phoenix_html, "2.14.0", "d8c6bc28acc8e65f8ea0080ee05aa13d912c8758699283b8d3427b655aabe284", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b0bb30eda478a06dbfbe96728061a93833db3861a49ccb516f839ecb08493fbb"}, "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.2", "496c303bdf1b2e98a9d26e89af5bba3ab487ba3a3735f74bf1f4064d2a845a3e", [:mix], [], "hexpm", "1f13f9f0f3e769a667a6b6828d29dec37497a082d195cc52dbef401a9b69bf38"}, "phoenix_swoosh": {:hex, :phoenix_swoosh, "0.2.0", "a7e0b32077cd6d2323ae15198839b05d9caddfa20663fd85787479e81f89520e", [:mix], [{:phoenix, "~> 1.0", [hex: :phoenix, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.2", [hex: :phoenix_html, repo: "hexpm", optional: false]}, {:swoosh, "~> 0.1", [hex: :swoosh, repo: "hexpm", optional: false]}], "hexpm", "ebf1bfa7b3c1c850c04929afe02e2e0d7ab135e0706332c865de03e761676b1f"}, - "plug": {:hex, :plug, "1.9.0", "8d7c4e26962283ff9f8f3347bd73838e2413fbc38b7bb5467d5924f68f3a5a4a", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "9902eda2c52ada2a096434682e99a2493f5d06a94d6ac6bcfff9805f952350f1"}, - "plug_cowboy": {:hex, :plug_cowboy, "2.1.2", "8b0addb5908c5238fac38e442e81b6fcd32788eaa03246b4d55d147c47c5805e", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "7d722581ce865a237e14da6d946f92704101740a256bd13ec91e63c0b122fc70"}, - "plug_crypto": {:hex, :plug_crypto, "1.1.2", "bdd187572cc26dbd95b87136290425f2b580a116d3fb1f564216918c9730d227", [:mix], [], "hexpm", "6b8b608f895b6ffcfad49c37c7883e8df98ae19c6a28113b02aa1e9c5b22d6b5"}, + "plug": {:hex, :plug, "1.8.3", "12d5f9796dc72e8ac9614e94bda5e51c4c028d0d428e9297650d09e15a684478", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "164baaeb382d19beee0ec484492aa82a9c8685770aee33b24ec727a0971b34d0"}, + "plug_cowboy": {:hex, :plug_cowboy, "2.1.1", "a196e4f428d7f5d6dba5ded314cc55cd0fbddf1110af620f75c0190e77844b33", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "15a3c34ffaccef8a0b575b8d39ab1b9044586d7dab917292cdc44cf2737df7f2"}, + "plug_crypto": {:hex, :plug_crypto, "1.0.0", "18e49317d3fa343f24620ed22795ec29d4a5e602d52d1513ccea0b07d8ea7d4d", [:mix], [], "hexpm", "73c1682f0e414cfb5d9b95c8e8cd6ffcfdae699e3b05e1db744e58b7be857759"}, "plug_static_index_html": {:hex, :plug_static_index_html, "1.0.0", "840123d4d3975585133485ea86af73cb2600afd7f2a976f9f5fd8b3808e636a0", [:mix], [{:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "79fd4fcf34d110605c26560cbae8f23c603ec4158c08298bd4360fdea90bb5cf"}, "poison": {:hex, :poison, "3.1.0", "d9eb636610e096f86f25d9a46f35a9facac35609a7591b3be3326e99a0484665", [:mix], [], "hexpm", "fec8660eb7733ee4117b85f55799fd3833eb769a6df71ccf8903e8dc5447cfce"}, "poolboy": {:hex, :poolboy, "1.5.2", "392b007a1693a64540cead79830443abf5762f5d30cf50bc95cb2c1aaafa006b", [:rebar3], [], "hexpm", "dad79704ce5440f3d5a3681c8590b9dc25d1a561e8f5a9c995281012860901e3"}, "postgrex": {:hex, :postgrex, "0.15.3", "5806baa8a19a68c4d07c7a624ccdb9b57e89cbc573f1b98099e3741214746ae4", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "4737ce62a31747b4c63c12b20c62307e51bb4fcd730ca0c32c280991e0606c90"}, - "prometheus": {:hex, :prometheus, "4.5.0", "8f4a2246fe0beb50af0f77c5e0a5bb78fe575c34a9655d7f8bc743aad1c6bf76", [:mix, :rebar3], [], "hexpm", "679b5215480fff612b8351f45c839d995a07ce403e42ff02f1c6b20960d41a4e"}, + "pot": {:hex, :pot, "0.10.2", "9895c83bcff8cd22d9f5bc79dfc88a188176b261b618ad70d93faf5c5ca36e67", [:rebar3], [], "hexpm", "ac589a8e296b7802681e93cd0a436faec117ea63e9916709c628df31e17e91e2"}, + "prometheus": {:hex, :prometheus, "4.4.1", "1e96073b3ed7788053768fea779cbc896ddc3bdd9ba60687f2ad50b252ac87d6", [:mix, :rebar3], [], "hexpm", "d39f2ce1f3f29f3bf04f915aa3cf9c7cd4d2cee2f975e05f526e06cae9b7c902"}, "prometheus_ecto": {:hex, :prometheus_ecto, "1.4.3", "3dd4da1812b8e0dbee81ea58bb3b62ed7588f2eae0c9e97e434c46807ff82311", [:mix], [{:ecto, "~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "8d66289f77f913b37eda81fd287340c17e61a447549deb28efc254532b2bed82"}, "prometheus_ex": {:hex, :prometheus_ex, "3.0.5", "fa58cfd983487fc5ead331e9a3e0aa622c67232b3ec71710ced122c4c453a02f", [:mix], [{:prometheus, "~> 4.0", [hex: :prometheus, repo: "hexpm", optional: false]}], "hexpm", "9fd13404a48437e044b288b41f76e64acd9735fb8b0e3809f494811dfa66d0fb"}, "prometheus_phoenix": {:hex, :prometheus_phoenix, "1.3.0", "c4b527e0b3a9ef1af26bdcfbfad3998f37795b9185d475ca610fe4388fdd3bb5", [:mix], [{:phoenix, "~> 1.4", [hex: :phoenix, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.3 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "c4d1404ac4e9d3d963da601db2a7d8ea31194f0017057fabf0cfb9bf5a6c8c75"}, diff --git a/priv/repo/migrations/20190506054542_add_multi_factor_authentication_settings_to_user.exs b/priv/repo/migrations/20190506054542_add_multi_factor_authentication_settings_to_user.exs new file mode 100644 index 000000000..8b653c61f --- /dev/null +++ b/priv/repo/migrations/20190506054542_add_multi_factor_authentication_settings_to_user.exs @@ -0,0 +1,9 @@ +defmodule Pleroma.Repo.Migrations.AddMultiFactorAuthenticationSettingsToUser do + use Ecto.Migration + + def change do + alter table(:users) do + add(:multi_factor_authentication_settings, :map, default: %{}) + end + end +end diff --git a/priv/repo/migrations/20190508193213_create_mfa_tokens.exs b/priv/repo/migrations/20190508193213_create_mfa_tokens.exs new file mode 100644 index 000000000..da9f8fabe --- /dev/null +++ b/priv/repo/migrations/20190508193213_create_mfa_tokens.exs @@ -0,0 +1,16 @@ +defmodule Pleroma.Repo.Migrations.CreateMfaTokens do + use Ecto.Migration + + def change do + create table(:mfa_tokens) do + add(:user_id, references(:users, type: :uuid, on_delete: :delete_all)) + add(:authorization_id, references(:oauth_authorizations, on_delete: :delete_all)) + add(:token, :string) + add(:valid_until, :naive_datetime_usec) + + timestamps() + end + + create(unique_index(:mfa_tokens, :token)) + end +end diff --git a/priv/static/adminfe/static/fonts/element-icons.535877f.woff b/priv/static/adminfe/static/fonts/element-icons.535877f.woff deleted file mode 100644 index 02b9a2539e425a7a8c244faba92527602be76212..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28200 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
    %#5t+7yTm^Z{)9pPFdh-)p? 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, <<_::bytes-size(4)>>] = codes + end +end diff --git a/test/mfa/totp_test.exs b/test/mfa/totp_test.exs new file mode 100644 index 000000000..50153d208 --- /dev/null +++ b/test/mfa/totp_test.exs @@ -0,0 +1,17 @@ +defmodule Pleroma.MFA.TOTPTest do + use Pleroma.DataCase + + alias Pleroma.MFA.TOTP + + test "create provisioning_uri to generate qrcode" do + uri = + TOTP.provisioning_uri("test-secrcet", "test@example.com", + issuer: "Plerome-42", + digits: 8, + period: 60 + ) + + assert uri == + "otpauth://totp/test@example.com?digits=8&issuer=Plerome-42&period=60&secret=test-secrcet" + end +end diff --git a/test/mfa_test.exs b/test/mfa_test.exs new file mode 100644 index 000000000..94bc48c26 --- /dev/null +++ b/test/mfa_test.exs @@ -0,0 +1,53 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2018 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.MFATest do + use Pleroma.DataCase + + import Pleroma.Factory + alias Comeonin.Pbkdf2 + alias Pleroma.MFA + + describe "mfa_settings" do + test "returns settings user's" do + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: "xx", confirmed: true} + } + ) + + settings = MFA.mfa_settings(user) + assert match?(^settings, %{enabled: true, totp: true}) + end + end + + describe "generate backup codes" do + test "returns backup codes" do + user = insert(:user) + + {:ok, [code1, code2]} = MFA.generate_backup_codes(user) + updated_user = refresh_record(user) + [hash1, hash2] = updated_user.multi_factor_authentication_settings.backup_codes + assert Pbkdf2.checkpw(code1, hash1) + assert Pbkdf2.checkpw(code2, hash2) + end + end + + describe "invalidate_backup_code" do + test "invalid used code" do + user = insert(:user) + + {:ok, _} = MFA.generate_backup_codes(user) + user = refresh_record(user) + assert length(user.multi_factor_authentication_settings.backup_codes) == 2 + [hash_code | _] = user.multi_factor_authentication_settings.backup_codes + + {:ok, user} = MFA.invalidate_backup_code(user, hash_code) + + assert length(user.multi_factor_authentication_settings.backup_codes) == 1 + end + end +end diff --git a/test/plugs/ensure_authenticated_plug_test.exs b/test/plugs/ensure_authenticated_plug_test.exs index 4e6142aab..a0667c5e0 100644 --- a/test/plugs/ensure_authenticated_plug_test.exs +++ b/test/plugs/ensure_authenticated_plug_test.exs @@ -24,6 +24,31 @@ test "it continues if a user is assigned", %{conn: conn} do end end + test "it halts if user is assigned and MFA enabled", %{conn: conn} do + conn = + conn + |> assign(:user, %User{multi_factor_authentication_settings: %{enabled: true}}) + |> assign(:auth_credentials, %{password: "xd-42"}) + |> EnsureAuthenticatedPlug.call(%{}) + + assert conn.status == 403 + assert conn.halted == true + + assert conn.resp_body == + "{\"error\":\"Two-factor authentication enabled, you must use a access token.\"}" + end + + test "it continues if user is assigned and MFA disabled", %{conn: conn} do + conn = + conn + |> assign(:user, %User{multi_factor_authentication_settings: %{enabled: false}}) + |> assign(:auth_credentials, %{password: "xd-42"}) + |> EnsureAuthenticatedPlug.call(%{}) + + refute conn.status == 403 + refute conn.halted + end + describe "with :if_func / :unless_func options" do setup do %{ diff --git a/test/support/builders/user_builder.ex b/test/support/builders/user_builder.ex index fcfea666f..0d0490714 100644 --- a/test/support/builders/user_builder.ex +++ b/test/support/builders/user_builder.ex @@ -11,6 +11,7 @@ def build(data \\ %{}) do bio: "A tester.", ap_id: "some id", last_digest_emailed_at: NaiveDateTime.truncate(NaiveDateTime.utc_now(), :second), + multi_factor_authentication_settings: %Pleroma.MFA.Settings{}, notification_settings: %Pleroma.User.NotificationSetting{} } diff --git a/test/support/factory.ex b/test/support/factory.ex index 495764782..c8c45e2a7 100644 --- a/test/support/factory.ex +++ b/test/support/factory.ex @@ -33,7 +33,8 @@ def user_factory do bio: sequence(:bio, &"Tester Number #{&1}"), last_digest_emailed_at: NaiveDateTime.utc_now(), last_refreshed_at: NaiveDateTime.utc_now(), - notification_settings: %Pleroma.User.NotificationSetting{} + notification_settings: %Pleroma.User.NotificationSetting{}, + multi_factor_authentication_settings: %Pleroma.MFA.Settings{} } %{ @@ -422,4 +423,13 @@ def marker_factory do last_read_id: "1" } end + + def mfa_token_factory do + %Pleroma.MFA.Token{ + token: :crypto.strong_rand_bytes(32) |> Base.url_encode64(padding: false), + authorization: build(:oauth_authorization), + valid_until: NaiveDateTime.add(NaiveDateTime.utc_now(), 60 * 10), + user: build(:user) + } + end end diff --git a/test/user_search_test.exs b/test/user_search_test.exs index cb847b516..17c63322a 100644 --- a/test/user_search_test.exs +++ b/test/user_search_test.exs @@ -172,6 +172,7 @@ test "works with URIs" do |> Map.put(:search_rank, nil) |> Map.put(:search_type, nil) |> Map.put(:last_digest_emailed_at, nil) + |> Map.put(:multi_factor_authentication_settings, nil) |> Map.put(:notification_settings, nil) assert user == expected diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index 7ab7cc15c..4697af50e 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -14,6 +14,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do alias Pleroma.Config alias Pleroma.ConfigDB alias Pleroma.HTML + alias Pleroma.MFA alias Pleroma.ModerationLog alias Pleroma.Repo alias Pleroma.ReportNote @@ -1278,6 +1279,38 @@ test "PATCH /api/pleroma/admin/users/:nickname/toggle_activation", %{admin: admi "@#{admin.nickname} deactivated users: @#{user.nickname}" end + describe "PUT disable_mfa" do + test "returns 200 and disable 2fa", %{conn: conn} do + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: "otp_secret", confirmed: true} + } + ) + + response = + conn + |> put("/api/pleroma/admin/users/disable_mfa", %{nickname: user.nickname}) + |> json_response(200) + + assert response == user.nickname + mfa_settings = refresh_record(user).multi_factor_authentication_settings + + refute mfa_settings.enabled + refute mfa_settings.totp.confirmed + end + + test "returns 404 if user not found", %{conn: conn} do + response = + conn + |> put("/api/pleroma/admin/users/disable_mfa", %{nickname: "nickname"}) + |> json_response(404) + + assert response == "Not found" + end + end + describe "POST /api/pleroma/admin/users/invite_token" do test "without options", %{conn: conn} do conn = post(conn, "/api/pleroma/admin/users/invite_token") diff --git a/test/web/auth/pleroma_authenticator_test.exs b/test/web/auth/pleroma_authenticator_test.exs new file mode 100644 index 000000000..7125c5081 --- /dev/null +++ b/test/web/auth/pleroma_authenticator_test.exs @@ -0,0 +1,43 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.Auth.PleromaAuthenticatorTest do + use Pleroma.Web.ConnCase + + alias Pleroma.Web.Auth.PleromaAuthenticator + import Pleroma.Factory + + setup do + password = "testpassword" + name = "AgentSmith" + user = insert(:user, nickname: name, password_hash: Comeonin.Pbkdf2.hashpwsalt(password)) + {:ok, [user: user, name: name, password: password]} + end + + test "get_user/authorization", %{user: user, name: name, password: password} do + params = %{"authorization" => %{"name" => name, "password" => password}} + res = PleromaAuthenticator.get_user(%Plug.Conn{params: params}) + + assert {:ok, user} == res + end + + test "get_user/authorization with invalid password", %{name: name} do + params = %{"authorization" => %{"name" => name, "password" => "password"}} + res = PleromaAuthenticator.get_user(%Plug.Conn{params: params}) + + assert {:error, {:checkpw, false}} == res + end + + test "get_user/grant_type_password", %{user: user, name: name, password: password} do + params = %{"grant_type" => "password", "username" => name, "password" => password} + res = PleromaAuthenticator.get_user(%Plug.Conn{params: params}) + + assert {:ok, user} == res + end + + test "error credintails" do + res = PleromaAuthenticator.get_user(%Plug.Conn{params: %{}}) + assert {:error, :invalid_credentials} == res + end +end diff --git a/test/web/auth/totp_authenticator_test.exs b/test/web/auth/totp_authenticator_test.exs new file mode 100644 index 000000000..e08069490 --- /dev/null +++ b/test/web/auth/totp_authenticator_test.exs @@ -0,0 +1,51 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.Auth.TOTPAuthenticatorTest do + use Pleroma.Web.ConnCase + + alias Pleroma.MFA + alias Pleroma.MFA.BackupCodes + alias Pleroma.MFA.TOTP + alias Pleroma.Web.Auth.TOTPAuthenticator + + import Pleroma.Factory + + test "verify token" do + otp_secret = TOTP.generate_secret() + otp_token = TOTP.generate_token(otp_secret) + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + assert TOTPAuthenticator.verify(otp_token, user) == {:ok, :pass} + assert TOTPAuthenticator.verify(nil, user) == {:error, :invalid_token} + assert TOTPAuthenticator.verify("", user) == {:error, :invalid_token} + end + + test "checks backup codes" do + [code | _] = backup_codes = BackupCodes.generate() + + hashed_codes = + backup_codes + |> Enum.map(&Comeonin.Pbkdf2.hashpwsalt(&1)) + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + backup_codes: hashed_codes, + totp: %MFA.Settings.TOTP{secret: "otp_secret", confirmed: true} + } + ) + + assert TOTPAuthenticator.verify_recovery_code(user, code) == {:ok, :pass} + refute TOTPAuthenticator.verify_recovery_code(code, refresh_record(user)) == {:ok, :pass} + end +end diff --git a/test/web/oauth/mfa_controller_test.exs b/test/web/oauth/mfa_controller_test.exs new file mode 100644 index 000000000..ce4a07320 --- /dev/null +++ b/test/web/oauth/mfa_controller_test.exs @@ -0,0 +1,306 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2018 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.OAuth.MFAControllerTest do + use Pleroma.Web.ConnCase + import Pleroma.Factory + + alias Pleroma.MFA + alias Pleroma.MFA.BackupCodes + alias Pleroma.MFA.TOTP + alias Pleroma.Repo + alias Pleroma.Web.OAuth.Authorization + alias Pleroma.Web.OAuth.OAuthController + + setup %{conn: conn} do + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + backup_codes: [Comeonin.Pbkdf2.hashpwsalt("test-code")], + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + app = insert(:oauth_app) + {:ok, conn: conn, user: user, app: app} + end + + describe "show" do + setup %{conn: conn, user: user, app: app} do + mfa_token = + insert(:mfa_token, + user: user, + authorization: build(:oauth_authorization, app: app, scopes: ["write"]) + ) + + {:ok, conn: conn, mfa_token: mfa_token} + end + + test "GET /oauth/mfa renders mfa forms", %{conn: conn, mfa_token: mfa_token} do + conn = + get( + conn, + "/oauth/mfa", + %{ + "mfa_token" => mfa_token.token, + "state" => "a_state", + "redirect_uri" => "http://localhost:8080/callback" + } + ) + + assert response = html_response(conn, 200) + assert response =~ "Two-factor authentication" + assert response =~ mfa_token.token + assert response =~ "http://localhost:8080/callback" + end + + test "GET /oauth/mfa renders mfa recovery forms", %{conn: conn, mfa_token: mfa_token} do + conn = + get( + conn, + "/oauth/mfa", + %{ + "mfa_token" => mfa_token.token, + "state" => "a_state", + "redirect_uri" => "http://localhost:8080/callback", + "challenge_type" => "recovery" + } + ) + + assert response = html_response(conn, 200) + assert response =~ "Two-factor recovery" + assert response =~ mfa_token.token + assert response =~ "http://localhost:8080/callback" + end + end + + describe "verify" do + setup %{conn: conn, user: user, app: app} do + mfa_token = + insert(:mfa_token, + user: user, + authorization: build(:oauth_authorization, app: app, scopes: ["write"]) + ) + + {:ok, conn: conn, user: user, mfa_token: mfa_token, app: app} + end + + test "POST /oauth/mfa/verify, verify totp code", %{ + conn: conn, + user: user, + mfa_token: mfa_token, + app: app + } do + otp_token = TOTP.generate_token(user.multi_factor_authentication_settings.totp.secret) + + conn = + conn + |> post("/oauth/mfa/verify", %{ + "mfa" => %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "totp", + "code" => otp_token, + "state" => "a_state", + "redirect_uri" => OAuthController.default_redirect_uri(app) + } + }) + + target = redirected_to(conn) + target_url = %URI{URI.parse(target) | query: nil} |> URI.to_string() + query = URI.parse(target).query |> URI.query_decoder() |> Map.new() + assert %{"state" => "a_state", "code" => code} = query + assert target_url == OAuthController.default_redirect_uri(app) + auth = Repo.get_by(Authorization, token: code) + assert auth.scopes == ["write"] + end + + test "POST /oauth/mfa/verify, verify recovery code", %{ + conn: conn, + mfa_token: mfa_token, + app: app + } do + conn = + conn + |> post("/oauth/mfa/verify", %{ + "mfa" => %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "recovery", + "code" => "test-code", + "state" => "a_state", + "redirect_uri" => OAuthController.default_redirect_uri(app) + } + }) + + target = redirected_to(conn) + target_url = %URI{URI.parse(target) | query: nil} |> URI.to_string() + query = URI.parse(target).query |> URI.query_decoder() |> Map.new() + assert %{"state" => "a_state", "code" => code} = query + assert target_url == OAuthController.default_redirect_uri(app) + auth = Repo.get_by(Authorization, token: code) + assert auth.scopes == ["write"] + end + end + + describe "challenge/totp" do + test "returns access token with valid code", %{conn: conn, user: user, app: app} do + otp_token = TOTP.generate_token(user.multi_factor_authentication_settings.totp.secret) + + mfa_token = + insert(:mfa_token, + user: user, + authorization: build(:oauth_authorization, app: app, scopes: ["write"]) + ) + + response = + conn + |> post("/oauth/mfa/challenge", %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "totp", + "code" => otp_token, + "client_id" => app.client_id, + "client_secret" => app.client_secret + }) + |> json_response(:ok) + + ap_id = user.ap_id + + assert match?( + %{ + "access_token" => _, + "expires_in" => 600, + "me" => ^ap_id, + "refresh_token" => _, + "scope" => "write", + "token_type" => "Bearer" + }, + response + ) + end + + test "returns errors when mfa token invalid", %{conn: conn, user: user, app: app} do + otp_token = TOTP.generate_token(user.multi_factor_authentication_settings.totp.secret) + + response = + conn + |> post("/oauth/mfa/challenge", %{ + "mfa_token" => "XXX", + "challenge_type" => "totp", + "code" => otp_token, + "client_id" => app.client_id, + "client_secret" => app.client_secret + }) + |> json_response(400) + + assert response == %{"error" => "Invalid code"} + end + + test "returns error when otp code is invalid", %{conn: conn, user: user, app: app} do + mfa_token = insert(:mfa_token, user: user) + + response = + conn + |> post("/oauth/mfa/challenge", %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "totp", + "code" => "XXX", + "client_id" => app.client_id, + "client_secret" => app.client_secret + }) + |> json_response(400) + + assert response == %{"error" => "Invalid code"} + end + + test "returns error when client credentails is wrong ", %{conn: conn, user: user} do + otp_token = TOTP.generate_token(user.multi_factor_authentication_settings.totp.secret) + mfa_token = insert(:mfa_token, user: user) + + response = + conn + |> post("/oauth/mfa/challenge", %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "totp", + "code" => otp_token, + "client_id" => "xxx", + "client_secret" => "xxx" + }) + |> json_response(400) + + assert response == %{"error" => "Invalid code"} + end + end + + describe "challenge/recovery" do + setup %{conn: conn} do + app = insert(:oauth_app) + {:ok, conn: conn, app: app} + end + + test "returns access token with valid code", %{conn: conn, app: app} do + otp_secret = TOTP.generate_secret() + + [code | _] = backup_codes = BackupCodes.generate() + + hashed_codes = + backup_codes + |> Enum.map(&Comeonin.Pbkdf2.hashpwsalt(&1)) + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + backup_codes: hashed_codes, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + mfa_token = + insert(:mfa_token, + user: user, + authorization: build(:oauth_authorization, app: app, scopes: ["write"]) + ) + + response = + conn + |> post("/oauth/mfa/challenge", %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "recovery", + "code" => code, + "client_id" => app.client_id, + "client_secret" => app.client_secret + }) + |> json_response(:ok) + + ap_id = user.ap_id + + assert match?( + %{ + "access_token" => _, + "expires_in" => 600, + "me" => ^ap_id, + "refresh_token" => _, + "scope" => "write", + "token_type" => "Bearer" + }, + response + ) + + error_response = + conn + |> post("/oauth/mfa/challenge", %{ + "mfa_token" => mfa_token.token, + "challenge_type" => "recovery", + "code" => code, + "client_id" => app.client_id, + "client_secret" => app.client_secret + }) + |> json_response(400) + + assert error_response == %{"error" => "Invalid code"} + end + end +end diff --git a/test/web/oauth/oauth_controller_test.exs b/test/web/oauth/oauth_controller_test.exs index f2f98d768..7a107584d 100644 --- a/test/web/oauth/oauth_controller_test.exs +++ b/test/web/oauth/oauth_controller_test.exs @@ -6,6 +6,8 @@ defmodule Pleroma.Web.OAuth.OAuthControllerTest do use Pleroma.Web.ConnCase import Pleroma.Factory + alias Pleroma.MFA + alias Pleroma.MFA.TOTP alias Pleroma.Repo alias Pleroma.User alias Pleroma.Web.OAuth.Authorization @@ -604,6 +606,41 @@ test "redirects with oauth authorization, " <> end end + test "redirect to on two-factor auth page" do + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + app = insert(:oauth_app, scopes: ["read", "write", "follow"]) + + conn = + build_conn() + |> post("/oauth/authorize", %{ + "authorization" => %{ + "name" => user.nickname, + "password" => "test", + "client_id" => app.client_id, + "redirect_uri" => app.redirect_uris, + "scope" => "read write", + "state" => "statepassed" + } + }) + + result = html_response(conn, 200) + + mfa_token = Repo.get_by(MFA.Token, user_id: user.id) + assert result =~ app.redirect_uris + assert result =~ "statepassed" + assert result =~ mfa_token.token + assert result =~ "Two-factor authentication" + end + test "returns 401 for wrong credentials", %{conn: conn} do user = insert(:user) app = insert(:oauth_app) @@ -735,6 +772,46 @@ test "issues a token for `password` grant_type with valid credentials, with full assert token.scopes == app.scopes end + test "issues a mfa token for `password` grant_type, when MFA enabled" do + password = "testpassword" + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + password_hash: Comeonin.Pbkdf2.hashpwsalt(password), + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + app = insert(:oauth_app, scopes: ["read", "write"]) + + response = + build_conn() + |> post("/oauth/token", %{ + "grant_type" => "password", + "username" => user.nickname, + "password" => password, + "client_id" => app.client_id, + "client_secret" => app.client_secret + }) + |> json_response(403) + + assert match?( + %{ + "supported_challenge_types" => "totp", + "mfa_token" => _, + "error" => "mfa_required" + }, + response + ) + + token = Repo.get_by(MFA.Token, token: response["mfa_token"]) + assert token.user_id == user.id + assert token.authorization_id + end + test "issues a token for request with HTTP basic auth client credentials" do user = insert(:user) app = insert(:oauth_app, scopes: ["scope1", "scope2", "scope3"]) diff --git a/test/web/pleroma_api/controllers/two_factor_authentication_controller_test.exs b/test/web/pleroma_api/controllers/two_factor_authentication_controller_test.exs new file mode 100644 index 000000000..d23d08a00 --- /dev/null +++ b/test/web/pleroma_api/controllers/two_factor_authentication_controller_test.exs @@ -0,0 +1,260 @@ +defmodule Pleroma.Web.PleromaAPI.TwoFactorAuthenticationControllerTest do + use Pleroma.Web.ConnCase + + import Pleroma.Factory + alias Pleroma.MFA.Settings + alias Pleroma.MFA.TOTP + + describe "GET /api/pleroma/accounts/mfa/settings" do + test "returns user mfa settings for new user", %{conn: conn} do + token = insert(:oauth_token, scopes: ["read", "follow"]) + token2 = insert(:oauth_token, scopes: ["write"]) + + assert conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> get("/api/pleroma/accounts/mfa") + |> json_response(:ok) == %{ + "settings" => %{"enabled" => false, "totp" => false} + } + + assert conn + |> put_req_header("authorization", "Bearer #{token2.token}") + |> get("/api/pleroma/accounts/mfa") + |> json_response(403) == %{ + "error" => "Insufficient permissions: read:security." + } + end + + test "returns user mfa settings with enabled totp", %{conn: conn} do + user = + insert(:user, + multi_factor_authentication_settings: %Settings{ + enabled: true, + totp: %Settings.TOTP{secret: "XXX", delivery_type: "app", confirmed: true} + } + ) + + token = insert(:oauth_token, scopes: ["read", "follow"], user: user) + + assert conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> get("/api/pleroma/accounts/mfa") + |> json_response(:ok) == %{ + "settings" => %{"enabled" => true, "totp" => true} + } + end + end + + describe "GET /api/pleroma/accounts/mfa/backup_codes" do + test "returns backup codes", %{conn: conn} do + user = + insert(:user, + multi_factor_authentication_settings: %Settings{ + backup_codes: ["1", "2", "3"], + totp: %Settings.TOTP{secret: "secret"} + } + ) + + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + token2 = insert(:oauth_token, scopes: ["read"]) + + response = + conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> get("/api/pleroma/accounts/mfa/backup_codes") + |> json_response(:ok) + + assert [<<_::bytes-size(6)>>, <<_::bytes-size(6)>>] = response["codes"] + user = refresh_record(user) + mfa_settings = user.multi_factor_authentication_settings + assert mfa_settings.totp.secret == "secret" + refute mfa_settings.backup_codes == ["1", "2", "3"] + refute mfa_settings.backup_codes == [] + + assert conn + |> put_req_header("authorization", "Bearer #{token2.token}") + |> get("/api/pleroma/accounts/mfa/backup_codes") + |> json_response(403) == %{ + "error" => "Insufficient permissions: write:security." + } + end + end + + describe "GET /api/pleroma/accounts/mfa/setup/totp" do + test "return errors when method is invalid", %{conn: conn} do + user = insert(:user) + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + + response = + conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> get("/api/pleroma/accounts/mfa/setup/torf") + |> json_response(400) + + assert response == %{"error" => "undefined method"} + end + + test "returns key and provisioning_uri", %{conn: conn} do + user = + insert(:user, + multi_factor_authentication_settings: %Settings{backup_codes: ["1", "2", "3"]} + ) + + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + token2 = insert(:oauth_token, scopes: ["read"]) + + response = + conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> get("/api/pleroma/accounts/mfa/setup/totp") + |> json_response(:ok) + + user = refresh_record(user) + mfa_settings = user.multi_factor_authentication_settings + secret = mfa_settings.totp.secret + refute mfa_settings.enabled + assert mfa_settings.backup_codes == ["1", "2", "3"] + + assert response == %{ + "key" => secret, + "provisioning_uri" => TOTP.provisioning_uri(secret, "#{user.email}") + } + + assert conn + |> put_req_header("authorization", "Bearer #{token2.token}") + |> get("/api/pleroma/accounts/mfa/setup/totp") + |> json_response(403) == %{ + "error" => "Insufficient permissions: write:security." + } + end + end + + describe "GET /api/pleroma/accounts/mfa/confirm/totp" do + test "returns success result", %{conn: conn} do + secret = TOTP.generate_secret() + code = TOTP.generate_token(secret) + + user = + insert(:user, + multi_factor_authentication_settings: %Settings{ + backup_codes: ["1", "2", "3"], + totp: %Settings.TOTP{secret: secret} + } + ) + + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + token2 = insert(:oauth_token, scopes: ["read"]) + + assert conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> post("/api/pleroma/accounts/mfa/confirm/totp", %{password: "test", code: code}) + |> json_response(:ok) + + settings = refresh_record(user).multi_factor_authentication_settings + assert settings.enabled + assert settings.totp.secret == secret + assert settings.totp.confirmed + assert settings.backup_codes == ["1", "2", "3"] + + assert conn + |> put_req_header("authorization", "Bearer #{token2.token}") + |> post("/api/pleroma/accounts/mfa/confirm/totp", %{password: "test", code: code}) + |> json_response(403) == %{ + "error" => "Insufficient permissions: write:security." + } + end + + test "returns error if password incorrect", %{conn: conn} do + secret = TOTP.generate_secret() + code = TOTP.generate_token(secret) + + user = + insert(:user, + multi_factor_authentication_settings: %Settings{ + backup_codes: ["1", "2", "3"], + totp: %Settings.TOTP{secret: secret} + } + ) + + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + + response = + conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> post("/api/pleroma/accounts/mfa/confirm/totp", %{password: "xxx", code: code}) + |> json_response(422) + + settings = refresh_record(user).multi_factor_authentication_settings + refute settings.enabled + refute settings.totp.confirmed + assert settings.backup_codes == ["1", "2", "3"] + assert response == %{"error" => "Invalid password."} + end + + test "returns error if code incorrect", %{conn: conn} do + secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %Settings{ + backup_codes: ["1", "2", "3"], + totp: %Settings.TOTP{secret: secret} + } + ) + + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + token2 = insert(:oauth_token, scopes: ["read"]) + + response = + conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> post("/api/pleroma/accounts/mfa/confirm/totp", %{password: "test", code: "code"}) + |> json_response(422) + + settings = refresh_record(user).multi_factor_authentication_settings + refute settings.enabled + refute settings.totp.confirmed + assert settings.backup_codes == ["1", "2", "3"] + assert response == %{"error" => "invalid_token"} + + assert conn + |> put_req_header("authorization", "Bearer #{token2.token}") + |> post("/api/pleroma/accounts/mfa/confirm/totp", %{password: "test", code: "code"}) + |> json_response(403) == %{ + "error" => "Insufficient permissions: write:security." + } + end + end + + describe "DELETE /api/pleroma/accounts/mfa/totp" do + test "returns success result", %{conn: conn} do + user = + insert(:user, + multi_factor_authentication_settings: %Settings{ + backup_codes: ["1", "2", "3"], + totp: %Settings.TOTP{secret: "secret"} + } + ) + + token = insert(:oauth_token, scopes: ["write", "follow"], user: user) + token2 = insert(:oauth_token, scopes: ["read"]) + + assert conn + |> put_req_header("authorization", "Bearer #{token.token}") + |> delete("/api/pleroma/accounts/mfa/totp", %{password: "test"}) + |> json_response(:ok) + + settings = refresh_record(user).multi_factor_authentication_settings + refute settings.enabled + assert settings.totp.secret == nil + refute settings.totp.confirmed + + assert conn + |> put_req_header("authorization", "Bearer #{token2.token}") + |> delete("/api/pleroma/accounts/mfa/totp", %{password: "test"}) + |> json_response(403) == %{ + "error" => "Insufficient permissions: write:security." + } + end + end +end diff --git a/test/web/twitter_api/remote_follow_controller_test.exs b/test/web/twitter_api/remote_follow_controller_test.exs index 5ff8694a8..f7e54c26a 100644 --- a/test/web/twitter_api/remote_follow_controller_test.exs +++ b/test/web/twitter_api/remote_follow_controller_test.exs @@ -6,11 +6,14 @@ defmodule Pleroma.Web.TwitterAPI.RemoteFollowControllerTest do use Pleroma.Web.ConnCase alias Pleroma.Config + alias Pleroma.MFA + alias Pleroma.MFA.TOTP alias Pleroma.User alias Pleroma.Web.CommonAPI import ExUnit.CaptureLog import Pleroma.Factory + import Ecto.Query setup do Tesla.Mock.mock(fn env -> apply(HttpRequestMock, :request, [env]) end) @@ -160,6 +163,119 @@ test "returns success result when user already in followers", %{conn: conn} do end end + describe "POST /ostatus_subscribe - follow/2 with enabled Two-Factor Auth " do + test "render the MFA login form", %{conn: conn} do + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + user2 = insert(:user) + + response = + conn + |> post(remote_follow_path(conn, :do_follow), %{ + "authorization" => %{"name" => user.nickname, "password" => "test", "id" => user2.id} + }) + |> response(200) + + mfa_token = Pleroma.Repo.one(from(q in Pleroma.MFA.Token, where: q.user_id == ^user.id)) + + assert response =~ "Two-factor authentication" + assert response =~ "Authentication code" + assert response =~ mfa_token.token + refute user2.follower_address in User.following(user) + end + + test "returns error when password is incorrect", %{conn: conn} do + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + user2 = insert(:user) + + response = + conn + |> post(remote_follow_path(conn, :do_follow), %{ + "authorization" => %{"name" => user.nickname, "password" => "test1", "id" => user2.id} + }) + |> response(200) + + assert response =~ "Wrong username or password" + refute user2.follower_address in User.following(user) + end + + test "follows", %{conn: conn} do + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + {:ok, %{token: token}} = MFA.Token.create_token(user) + + user2 = insert(:user) + otp_token = TOTP.generate_token(otp_secret) + + conn = + conn + |> post( + remote_follow_path(conn, :do_follow), + %{ + "mfa" => %{"code" => otp_token, "token" => token, "id" => user2.id} + } + ) + + assert redirected_to(conn) == "/users/#{user2.id}" + assert user2.follower_address in User.following(user) + end + + test "returns error when auth code is incorrect", %{conn: conn} do + otp_secret = TOTP.generate_secret() + + user = + insert(:user, + multi_factor_authentication_settings: %MFA.Settings{ + enabled: true, + totp: %MFA.Settings.TOTP{secret: otp_secret, confirmed: true} + } + ) + + {:ok, %{token: token}} = MFA.Token.create_token(user) + + user2 = insert(:user) + otp_token = TOTP.generate_token(TOTP.generate_secret()) + + response = + conn + |> post( + remote_follow_path(conn, :do_follow), + %{ + "mfa" => %{"code" => otp_token, "token" => token, "id" => user2.id} + } + ) + |> response(200) + + assert response =~ "Wrong authentication code" + refute user2.follower_address in User.following(user) + end + end + describe "POST /ostatus_subscribe - follow/2 without assigned user " do test "follows", %{conn: conn} do user = insert(:user) From 9491ba3e49450e80cd1c21358c01e4e06e3d881d Mon Sep 17 00:00:00 2001 From: href Date: Thu, 7 May 2020 09:13:32 +0000 Subject: [PATCH 144/156] Streamer rework --- lib/pleroma/application.ex | 9 +- lib/pleroma/web/activity_pub/activity_pub.ex | 32 +- .../web/mastodon_api/websocket_handler.ex | 47 +- lib/pleroma/web/streamer/ping.ex | 37 -- lib/pleroma/web/streamer/state.ex | 82 --- lib/pleroma/web/streamer/streamer.ex | 250 ++++++- lib/pleroma/web/streamer/streamer_socket.ex | 35 - lib/pleroma/web/streamer/supervisor.ex | 37 -- lib/pleroma/web/streamer/worker.ex | 208 ------ test/integration/mastodon_websocket_test.exs | 7 +- test/notification_test.exs | 18 +- test/support/builders/activity_builder.ex | 10 +- test/support/conn_case.ex | 6 +- test/support/data_case.ex | 6 +- test/web/streamer/ping_test.exs | 36 - test/web/streamer/state_test.exs | 54 -- test/web/streamer/streamer_test.exs | 618 +++++++----------- 17 files changed, 535 insertions(+), 957 deletions(-) delete mode 100644 lib/pleroma/web/streamer/ping.ex delete mode 100644 lib/pleroma/web/streamer/state.ex delete mode 100644 lib/pleroma/web/streamer/streamer_socket.ex delete mode 100644 lib/pleroma/web/streamer/supervisor.ex delete mode 100644 lib/pleroma/web/streamer/worker.ex delete mode 100644 test/web/streamer/ping_test.exs delete mode 100644 test/web/streamer/state_test.exs diff --git a/lib/pleroma/application.ex b/lib/pleroma/application.ex index 308d8cffa..a00bc0624 100644 --- a/lib/pleroma/application.ex +++ b/lib/pleroma/application.ex @@ -173,7 +173,14 @@ defp chat_enabled?, do: Config.get([:chat, :enabled]) defp streamer_child(env) when env in [:test, :benchmark], do: [] defp streamer_child(_) do - [Pleroma.Web.Streamer.supervisor()] + [ + {Registry, + [ + name: Pleroma.Web.Streamer.registry(), + keys: :duplicate, + partitions: System.schedulers_online() + ]} + ] end defp chat_child(_env, true) do diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index 099df5879..8baaf97ac 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -170,12 +170,6 @@ def insert(map, local \\ true, fake \\ false, bypass_actor_check \\ false) when BackgroundWorker.enqueue("fetch_data_for_activity", %{"activity_id" => activity.id}) - Notification.create_notifications(activity) - - conversation = create_or_bump_conversation(activity, map["actor"]) - participations = get_participations(conversation) - stream_out(activity) - stream_out_participations(participations) {:ok, activity} else %Activity{} = activity -> @@ -198,6 +192,15 @@ def insert(map, local \\ true, fake \\ false, bypass_actor_check \\ false) when end end + def notify_and_stream(activity) do + Notification.create_notifications(activity) + + conversation = create_or_bump_conversation(activity, activity.actor) + participations = get_participations(conversation) + stream_out(activity) + stream_out_participations(participations) + end + defp create_or_bump_conversation(activity, actor) do with {:ok, conversation} <- Conversation.create_or_bump_for(activity), %User{} = user <- User.get_cached_by_ap_id(actor), @@ -274,6 +277,7 @@ defp do_create(%{to: to, actor: actor, context: context, object: object} = param _ <- increase_poll_votes_if_vote(create_data), {:quick_insert, false, activity} <- {:quick_insert, quick_insert?, activity}, {:ok, _actor} <- increase_note_count_if_public(actor, activity), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} else @@ -301,6 +305,7 @@ def listen(%{to: to, actor: actor, context: context, object: object} = params) d additional ), {:ok, activity} <- insert(listen_data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} end @@ -325,6 +330,7 @@ def accept_or_reject(type, %{to: to, actor: actor, object: object} = params) do %{"to" => to, "type" => type, "actor" => actor.ap_id, "object" => object} |> Utils.maybe_put("id", activity_id), {:ok, activity} <- insert(data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} end @@ -344,6 +350,7 @@ def update(%{to: to, cc: cc, actor: actor, object: object} = params) do }, data <- Utils.maybe_put(data, "id", activity_id), {:ok, activity} <- insert(data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} end @@ -365,6 +372,7 @@ defp do_react_with_emoji(user, object, emoji, options) do reaction_data <- make_emoji_reaction_data(user, object, emoji, activity_id), {:ok, activity} <- insert(reaction_data, local), {:ok, object} <- add_emoji_reaction_to_object(activity, object), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity, object} else @@ -391,6 +399,7 @@ defp do_unreact_with_emoji(user, reaction_id, options) do unreact_data <- make_undo_data(user, reaction_activity, activity_id), {:ok, activity} <- insert(unreact_data, local), {:ok, object} <- remove_emoji_reaction_from_object(reaction_activity, object), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity, object} else @@ -413,6 +422,7 @@ defp do_unlike(actor, object, activity_id, local) do {:ok, unlike_activity} <- insert(unlike_data, local), {:ok, _activity} <- Repo.delete(like_activity), {:ok, object} <- remove_like_from_object(like_activity, object), + _ <- notify_and_stream(unlike_activity), :ok <- maybe_federate(unlike_activity) do {:ok, unlike_activity, like_activity, object} else @@ -442,6 +452,7 @@ defp do_announce(user, object, activity_id, local, public) do announce_data <- make_announce_data(user, object, activity_id, public), {:ok, activity} <- insert(announce_data, local), {:ok, object} <- add_announce_to_object(activity, object), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity, object} else @@ -468,6 +479,7 @@ defp do_unannounce(actor, object, activity_id, local) do with %Activity{} = announce_activity <- get_existing_announce(actor.ap_id, object), unannounce_data <- make_unannounce_data(actor, announce_activity, activity_id), {:ok, unannounce_activity} <- insert(unannounce_data, local), + _ <- notify_and_stream(unannounce_activity), :ok <- maybe_federate(unannounce_activity), {:ok, _activity} <- Repo.delete(announce_activity), {:ok, object} <- remove_announce_from_object(announce_activity, object) do @@ -490,6 +502,7 @@ def follow(follower, followed, activity_id \\ nil, local \\ true) do defp do_follow(follower, followed, activity_id, local) do with data <- make_follow_data(follower, followed, activity_id), {:ok, activity} <- insert(data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} else @@ -511,6 +524,7 @@ defp do_unfollow(follower, followed, activity_id, local) do {:ok, follow_activity} <- update_follow_state(follow_activity, "cancelled"), unfollow_data <- make_unfollow_data(follower, followed, follow_activity, activity_id), {:ok, activity} <- insert(unfollow_data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} else @@ -540,6 +554,7 @@ defp do_block(blocker, blocked, activity_id, local) do with true <- outgoing_blocks, block_data <- make_block_data(blocker, blocked, activity_id), {:ok, activity} <- insert(block_data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} else @@ -560,6 +575,7 @@ defp do_unblock(blocker, blocked, activity_id, local) do with %Activity{} = block_activity <- fetch_latest_block(blocker, blocked), unblock_data <- make_unblock_data(blocker, blocked, block_activity, activity_id), {:ok, activity} <- insert(unblock_data, local), + _ <- notify_and_stream(activity), :ok <- maybe_federate(activity) do {:ok, activity} else @@ -594,6 +610,7 @@ def flag( with flag_data <- make_flag_data(params, additional), {:ok, activity} <- insert(flag_data, local), {:ok, stripped_activity} <- strip_report_status_data(activity), + _ <- notify_and_stream(activity), :ok <- maybe_federate(stripped_activity) do User.all_superusers() |> Enum.filter(fn user -> not is_nil(user.email) end) @@ -617,7 +634,8 @@ def move(%User{} = origin, %User{} = target, local \\ true) do } with true <- origin.ap_id in target.also_known_as, - {:ok, activity} <- insert(params, local) do + {:ok, activity} <- insert(params, local), + _ <- notify_and_stream(activity) do maybe_federate(activity) BackgroundWorker.enqueue("move_following", %{ diff --git a/lib/pleroma/web/mastodon_api/websocket_handler.ex b/lib/pleroma/web/mastodon_api/websocket_handler.ex index 5652a37c1..6ef3fe2dd 100644 --- a/lib/pleroma/web/mastodon_api/websocket_handler.ex +++ b/lib/pleroma/web/mastodon_api/websocket_handler.ex @@ -12,6 +12,11 @@ defmodule Pleroma.Web.MastodonAPI.WebsocketHandler do @behaviour :cowboy_websocket + # Cowboy timeout period. + @timeout :timer.seconds(30) + # Hibernate every X messages + @hibernate_every 100 + @streams [ "public", "public:local", @@ -25,9 +30,6 @@ defmodule Pleroma.Web.MastodonAPI.WebsocketHandler do ] @anonymous_streams ["public", "public:local", "hashtag"] - # Handled by periodic keepalive in Pleroma.Web.Streamer.Ping. - @timeout :infinity - def init(%{qs: qs} = req, state) do with params <- :cow_qs.parse_qs(qs), sec_websocket <- :cowboy_req.header("sec-websocket-protocol", req, nil), @@ -42,7 +44,7 @@ def init(%{qs: qs} = req, state) do req end - {:cowboy_websocket, req, %{user: user, topic: topic}, %{idle_timeout: @timeout}} + {:cowboy_websocket, req, %{user: user, topic: topic, count: 0}, %{idle_timeout: @timeout}} else {:error, code} -> Logger.debug("#{__MODULE__} denied connection: #{inspect(code)} - #{inspect(req)}") @@ -57,7 +59,13 @@ def init(%{qs: qs} = req, state) do end def websocket_init(state) do - send(self(), :subscribe) + Logger.debug( + "#{__MODULE__} accepted websocket connection for user #{ + (state.user || %{id: "anonymous"}).id + }, topic #{state.topic}" + ) + + Streamer.add_socket(state.topic, state.user) {:ok, state} end @@ -66,19 +74,24 @@ def websocket_handle(_frame, state) do {:ok, state} end - def websocket_info(:subscribe, state) do - Logger.debug( - "#{__MODULE__} accepted websocket connection for user #{ - (state.user || %{id: "anonymous"}).id - }, topic #{state.topic}" - ) + def websocket_info({:render_with_user, view, template, item}, state) do + user = %User{} = User.get_cached_by_ap_id(state.user.ap_id) - Streamer.add_socket(state.topic, streamer_socket(state)) - {:ok, state} + unless Streamer.filtered_by_user?(user, item) do + websocket_info({:text, view.render(template, user, item)}, %{state | user: user}) + else + {:ok, state} + end end def websocket_info({:text, message}, state) do - {:reply, {:text, message}, state} + # If the websocket processed X messages, force an hibernate/GC. + # We don't hibernate at every message to balance CPU usage/latency with RAM usage. + if state.count > @hibernate_every do + {:reply, {:text, message}, %{state | count: 0}, :hibernate} + else + {:reply, {:text, message}, %{state | count: state.count + 1}} + end end def terminate(reason, _req, state) do @@ -88,7 +101,7 @@ def terminate(reason, _req, state) do }, topic #{state.topic || "?"}: #{inspect(reason)}" ) - Streamer.remove_socket(state.topic, streamer_socket(state)) + Streamer.remove_socket(state.topic) :ok end @@ -136,8 +149,4 @@ defp expand_topic("list", params) do end defp expand_topic(topic, _), do: topic - - defp streamer_socket(state) do - %{transport_pid: self(), assigns: state} - end end diff --git a/lib/pleroma/web/streamer/ping.ex b/lib/pleroma/web/streamer/ping.ex deleted file mode 100644 index 7a08202a9..000000000 --- a/lib/pleroma/web/streamer/ping.ex +++ /dev/null @@ -1,37 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.Streamer.Ping do - use GenServer - require Logger - - alias Pleroma.Web.Streamer.State - alias Pleroma.Web.Streamer.StreamerSocket - - @keepalive_interval :timer.seconds(30) - - def start_link(opts) do - ping_interval = Keyword.get(opts, :ping_interval, @keepalive_interval) - GenServer.start_link(__MODULE__, %{ping_interval: ping_interval}, name: __MODULE__) - end - - def init(%{ping_interval: ping_interval} = args) do - Process.send_after(self(), :ping, ping_interval) - {:ok, args} - end - - def handle_info(:ping, %{ping_interval: ping_interval} = state) do - State.get_sockets() - |> Map.values() - |> List.flatten() - |> Enum.each(fn %StreamerSocket{transport_pid: transport_pid} -> - Logger.debug("Sending keepalive ping") - send(transport_pid, {:text, ""}) - end) - - Process.send_after(self(), :ping, ping_interval) - - {:noreply, state} - end -end diff --git a/lib/pleroma/web/streamer/state.ex b/lib/pleroma/web/streamer/state.ex deleted file mode 100644 index 999550b88..000000000 --- a/lib/pleroma/web/streamer/state.ex +++ /dev/null @@ -1,82 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.Streamer.State do - use GenServer - require Logger - - alias Pleroma.Web.Streamer.StreamerSocket - - @env Mix.env() - - def start_link(_) do - GenServer.start_link(__MODULE__, %{sockets: %{}}, name: __MODULE__) - end - - def add_socket(topic, socket) do - GenServer.call(__MODULE__, {:add, topic, socket}) - end - - def remove_socket(topic, socket) do - do_remove_socket(@env, topic, socket) - end - - def get_sockets do - %{sockets: stream_sockets} = GenServer.call(__MODULE__, :get_state) - stream_sockets - end - - def init(init_arg) do - {:ok, init_arg} - end - - def handle_call(:get_state, _from, state) do - {:reply, state, state} - end - - def handle_call({:add, topic, socket}, _from, %{sockets: sockets} = state) do - internal_topic = internal_topic(topic, socket) - stream_socket = StreamerSocket.from_socket(socket) - - sockets_for_topic = - sockets - |> Map.get(internal_topic, []) - |> List.insert_at(0, stream_socket) - |> Enum.uniq() - - state = put_in(state, [:sockets, internal_topic], sockets_for_topic) - Logger.debug("Got new conn for #{topic}") - {:reply, state, state} - end - - def handle_call({:remove, topic, socket}, _from, %{sockets: sockets} = state) do - internal_topic = internal_topic(topic, socket) - stream_socket = StreamerSocket.from_socket(socket) - - sockets_for_topic = - sockets - |> Map.get(internal_topic, []) - |> List.delete(stream_socket) - - state = Kernel.put_in(state, [:sockets, internal_topic], sockets_for_topic) - {:reply, state, state} - end - - defp do_remove_socket(:test, _, _) do - :ok - end - - defp do_remove_socket(_env, topic, socket) do - GenServer.call(__MODULE__, {:remove, topic, socket}) - end - - defp internal_topic(topic, socket) - when topic in ~w[user user:notification direct] do - "#{topic}:#{socket.assigns[:user].id}" - end - - defp internal_topic(topic, _) do - topic - end -end diff --git a/lib/pleroma/web/streamer/streamer.ex b/lib/pleroma/web/streamer/streamer.ex index 814d5a729..5ad4aa936 100644 --- a/lib/pleroma/web/streamer/streamer.ex +++ b/lib/pleroma/web/streamer/streamer.ex @@ -3,53 +3,241 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.Streamer do - alias Pleroma.Web.Streamer.State - alias Pleroma.Web.Streamer.Worker + require Logger + + alias Pleroma.Activity + alias Pleroma.Config + alias Pleroma.Conversation.Participation + alias Pleroma.Notification + alias Pleroma.Object + alias Pleroma.User + alias Pleroma.Web.ActivityPub.ActivityPub + alias Pleroma.Web.ActivityPub.Visibility + alias Pleroma.Web.CommonAPI + alias Pleroma.Web.StreamerView - @timeout 60_000 @mix_env Mix.env() + @registry Pleroma.Web.StreamerRegistry - def add_socket(topic, socket) do - State.add_socket(topic, socket) + def registry, do: @registry + + def add_socket(topic, %User{} = user) do + if should_env_send?(), do: Registry.register(@registry, user_topic(topic, user), true) end - def remove_socket(topic, socket) do - State.remove_socket(topic, socket) + def add_socket(topic, _) do + if should_env_send?(), do: Registry.register(@registry, topic, false) end - def get_sockets do - State.get_sockets() + def remove_socket(topic) do + if should_env_send?(), do: Registry.unregister(@registry, topic) end - def stream(topics, items) do - if should_send?() do - Task.async(fn -> - :poolboy.transaction( - :streamer_worker, - &Worker.stream(&1, topics, items), - @timeout - ) + def stream(topics, item) when is_list(topics) do + if should_env_send?() do + Enum.each(topics, fn t -> + spawn(fn -> do_stream(t, item) end) end) end + + :ok end - def supervisor, do: Pleroma.Web.Streamer.Supervisor + def stream(topic, items) when is_list(items) do + if should_env_send?() do + Enum.each(items, fn i -> + spawn(fn -> do_stream(topic, i) end) + end) - defp should_send? do - handle_should_send(@mix_env) - end - - defp handle_should_send(:test) do - case Process.whereis(:streamer_worker) do - nil -> - false - - pid -> - Process.alive?(pid) + :ok end end - defp handle_should_send(:benchmark), do: false + def stream(topic, item) do + if should_env_send?() do + spawn(fn -> do_stream(topic, item) end) + end - defp handle_should_send(_), do: true + :ok + end + + def filtered_by_user?(%User{} = user, %Activity{} = item) do + %{block: blocked_ap_ids, mute: muted_ap_ids, reblog_mute: reblog_muted_ap_ids} = + User.outgoing_relationships_ap_ids(user, [:block, :mute, :reblog_mute]) + + recipient_blocks = MapSet.new(blocked_ap_ids ++ muted_ap_ids) + recipients = MapSet.new(item.recipients) + domain_blocks = Pleroma.Web.ActivityPub.MRF.subdomains_regex(user.domain_blocks) + + with parent <- Object.normalize(item) || item, + true <- + Enum.all?([blocked_ap_ids, muted_ap_ids], &(item.actor not in &1)), + true <- item.data["type"] != "Announce" || item.actor not in reblog_muted_ap_ids, + true <- Enum.all?([blocked_ap_ids, muted_ap_ids], &(parent.data["actor"] not in &1)), + true <- MapSet.disjoint?(recipients, recipient_blocks), + %{host: item_host} <- URI.parse(item.actor), + %{host: parent_host} <- URI.parse(parent.data["actor"]), + false <- Pleroma.Web.ActivityPub.MRF.subdomain_match?(domain_blocks, item_host), + false <- Pleroma.Web.ActivityPub.MRF.subdomain_match?(domain_blocks, parent_host), + true <- thread_containment(item, user), + false <- CommonAPI.thread_muted?(user, item) do + false + else + _ -> true + end + end + + def filtered_by_user?(%User{} = user, %Notification{activity: activity}) do + filtered_by_user?(user, activity) + end + + defp do_stream("direct", item) do + recipient_topics = + User.get_recipients_from_activity(item) + |> Enum.map(fn %{id: id} -> "direct:#{id}" end) + + Enum.each(recipient_topics, fn user_topic -> + Logger.debug("Trying to push direct message to #{user_topic}\n\n") + push_to_socket(user_topic, item) + end) + end + + defp do_stream("participation", participation) do + user_topic = "direct:#{participation.user_id}" + Logger.debug("Trying to push a conversation participation to #{user_topic}\n\n") + + push_to_socket(user_topic, participation) + end + + defp do_stream("list", item) do + # filter the recipient list if the activity is not public, see #270. + recipient_lists = + case Visibility.is_public?(item) do + true -> + Pleroma.List.get_lists_from_activity(item) + + _ -> + Pleroma.List.get_lists_from_activity(item) + |> Enum.filter(fn list -> + owner = User.get_cached_by_id(list.user_id) + + Visibility.visible_for_user?(item, owner) + end) + end + + recipient_topics = + recipient_lists + |> Enum.map(fn %{id: id} -> "list:#{id}" end) + + Enum.each(recipient_topics, fn list_topic -> + Logger.debug("Trying to push message to #{list_topic}\n\n") + push_to_socket(list_topic, item) + end) + end + + defp do_stream(topic, %Notification{} = item) + when topic in ["user", "user:notification"] do + Registry.dispatch(@registry, "#{topic}:#{item.user_id}", fn list -> + Enum.each(list, fn {pid, _auth} -> + send(pid, {:render_with_user, StreamerView, "notification.json", item}) + end) + end) + end + + defp do_stream("user", item) do + Logger.debug("Trying to push to users") + + recipient_topics = + User.get_recipients_from_activity(item) + |> Enum.map(fn %{id: id} -> "user:#{id}" end) + + Enum.each(recipient_topics, fn topic -> + push_to_socket(topic, item) + end) + end + + defp do_stream(topic, item) do + Logger.debug("Trying to push to #{topic}") + Logger.debug("Pushing item to #{topic}") + push_to_socket(topic, item) + end + + defp push_to_socket(topic, %Participation{} = participation) do + rendered = StreamerView.render("conversation.json", participation) + + Registry.dispatch(@registry, topic, fn list -> + Enum.each(list, fn {pid, _} -> + send(pid, {:text, rendered}) + end) + end) + end + + defp push_to_socket(topic, %Activity{ + data: %{"type" => "Delete", "deleted_activity_id" => deleted_activity_id} + }) do + rendered = Jason.encode!(%{event: "delete", payload: to_string(deleted_activity_id)}) + + Registry.dispatch(@registry, topic, fn list -> + Enum.each(list, fn {pid, _} -> + send(pid, {:text, rendered}) + end) + end) + end + + defp push_to_socket(_topic, %Activity{data: %{"type" => "Delete"}}), do: :noop + + defp push_to_socket(topic, item) do + anon_render = StreamerView.render("update.json", item) + + Registry.dispatch(@registry, topic, fn list -> + Enum.each(list, fn {pid, auth?} -> + if auth? do + send(pid, {:render_with_user, StreamerView, "update.json", item}) + else + send(pid, {:text, anon_render}) + end + end) + end) + end + + defp thread_containment(_activity, %User{skip_thread_containment: true}), do: true + + defp thread_containment(activity, user) do + if Config.get([:instance, :skip_thread_containment]) do + true + else + ActivityPub.contain_activity(activity, user) + end + end + + # In test environement, only return true if the registry is started. + # In benchmark environment, returns false. + # In any other environment, always returns true. + cond do + @mix_env == :test -> + def should_env_send? do + case Process.whereis(@registry) do + nil -> + false + + pid -> + Process.alive?(pid) + end + end + + @mix_env == :benchmark -> + def should_env_send?, do: false + + true -> + def should_env_send?, do: true + end + + defp user_topic(topic, user) + when topic in ~w[user user:notification direct] do + "#{topic}:#{user.id}" + end + + defp user_topic(topic, _) do + topic + end end diff --git a/lib/pleroma/web/streamer/streamer_socket.ex b/lib/pleroma/web/streamer/streamer_socket.ex deleted file mode 100644 index 7d5dcd34e..000000000 --- a/lib/pleroma/web/streamer/streamer_socket.ex +++ /dev/null @@ -1,35 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.Streamer.StreamerSocket do - defstruct transport_pid: nil, user: nil - - alias Pleroma.User - alias Pleroma.Web.Streamer.StreamerSocket - - def from_socket(%{ - transport_pid: transport_pid, - assigns: %{user: nil} - }) do - %StreamerSocket{ - transport_pid: transport_pid - } - end - - def from_socket(%{ - transport_pid: transport_pid, - assigns: %{user: %User{} = user} - }) do - %StreamerSocket{ - transport_pid: transport_pid, - user: user - } - end - - def from_socket(%{transport_pid: transport_pid}) do - %StreamerSocket{ - transport_pid: transport_pid - } - end -end diff --git a/lib/pleroma/web/streamer/supervisor.ex b/lib/pleroma/web/streamer/supervisor.ex deleted file mode 100644 index bd9029bc0..000000000 --- a/lib/pleroma/web/streamer/supervisor.ex +++ /dev/null @@ -1,37 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.Streamer.Supervisor do - use Supervisor - - def start_link(opts) do - Supervisor.start_link(__MODULE__, opts, name: __MODULE__) - end - - def init(args) do - children = [ - {Pleroma.Web.Streamer.State, args}, - {Pleroma.Web.Streamer.Ping, args}, - :poolboy.child_spec(:streamer_worker, poolboy_config()) - ] - - opts = [strategy: :one_for_one, name: Pleroma.Web.Streamer.Supervisor] - Supervisor.init(children, opts) - end - - defp poolboy_config do - opts = - Pleroma.Config.get(:streamer, - workers: 3, - overflow_workers: 2 - ) - - [ - {:name, {:local, :streamer_worker}}, - {:worker_module, Pleroma.Web.Streamer.Worker}, - {:size, opts[:workers]}, - {:max_overflow, opts[:overflow_workers]} - ] - end -end diff --git a/lib/pleroma/web/streamer/worker.ex b/lib/pleroma/web/streamer/worker.ex deleted file mode 100644 index f6160fa4d..000000000 --- a/lib/pleroma/web/streamer/worker.ex +++ /dev/null @@ -1,208 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.Streamer.Worker do - use GenServer - - require Logger - - alias Pleroma.Activity - alias Pleroma.Config - alias Pleroma.Conversation.Participation - alias Pleroma.Notification - alias Pleroma.Object - alias Pleroma.User - alias Pleroma.Web.ActivityPub.ActivityPub - alias Pleroma.Web.ActivityPub.Visibility - alias Pleroma.Web.CommonAPI - alias Pleroma.Web.Streamer.State - alias Pleroma.Web.Streamer.StreamerSocket - alias Pleroma.Web.StreamerView - - def start_link(_) do - GenServer.start_link(__MODULE__, %{}, []) - end - - def init(init_arg) do - {:ok, init_arg} - end - - def stream(pid, topics, items) do - GenServer.call(pid, {:stream, topics, items}) - end - - def handle_call({:stream, topics, item}, _from, state) when is_list(topics) do - Enum.each(topics, fn t -> - do_stream(%{topic: t, item: item}) - end) - - {:reply, state, state} - end - - def handle_call({:stream, topic, items}, _from, state) when is_list(items) do - Enum.each(items, fn i -> - do_stream(%{topic: topic, item: i}) - end) - - {:reply, state, state} - end - - def handle_call({:stream, topic, item}, _from, state) do - do_stream(%{topic: topic, item: item}) - - {:reply, state, state} - end - - defp do_stream(%{topic: "direct", item: item}) do - recipient_topics = - User.get_recipients_from_activity(item) - |> Enum.map(fn %{id: id} -> "direct:#{id}" end) - - Enum.each(recipient_topics, fn user_topic -> - Logger.debug("Trying to push direct message to #{user_topic}\n\n") - push_to_socket(State.get_sockets(), user_topic, item) - end) - end - - defp do_stream(%{topic: "participation", item: participation}) do - user_topic = "direct:#{participation.user_id}" - Logger.debug("Trying to push a conversation participation to #{user_topic}\n\n") - - push_to_socket(State.get_sockets(), user_topic, participation) - end - - defp do_stream(%{topic: "list", item: item}) do - # filter the recipient list if the activity is not public, see #270. - recipient_lists = - case Visibility.is_public?(item) do - true -> - Pleroma.List.get_lists_from_activity(item) - - _ -> - Pleroma.List.get_lists_from_activity(item) - |> Enum.filter(fn list -> - owner = User.get_cached_by_id(list.user_id) - - Visibility.visible_for_user?(item, owner) - end) - end - - recipient_topics = - recipient_lists - |> Enum.map(fn %{id: id} -> "list:#{id}" end) - - Enum.each(recipient_topics, fn list_topic -> - Logger.debug("Trying to push message to #{list_topic}\n\n") - push_to_socket(State.get_sockets(), list_topic, item) - end) - end - - defp do_stream(%{topic: topic, item: %Notification{} = item}) - when topic in ["user", "user:notification"] do - State.get_sockets() - |> Map.get("#{topic}:#{item.user_id}", []) - |> Enum.each(fn %StreamerSocket{transport_pid: transport_pid, user: socket_user} -> - with %User{} = user <- User.get_cached_by_ap_id(socket_user.ap_id), - true <- should_send?(user, item) do - send(transport_pid, {:text, StreamerView.render("notification.json", socket_user, item)}) - end - end) - end - - defp do_stream(%{topic: "user", item: item}) do - Logger.debug("Trying to push to users") - - recipient_topics = - User.get_recipients_from_activity(item) - |> Enum.map(fn %{id: id} -> "user:#{id}" end) - - Enum.each(recipient_topics, fn topic -> - push_to_socket(State.get_sockets(), topic, item) - end) - end - - defp do_stream(%{topic: topic, item: item}) do - Logger.debug("Trying to push to #{topic}") - Logger.debug("Pushing item to #{topic}") - push_to_socket(State.get_sockets(), topic, item) - end - - defp should_send?(%User{} = user, %Activity{} = item) do - %{block: blocked_ap_ids, mute: muted_ap_ids, reblog_mute: reblog_muted_ap_ids} = - User.outgoing_relationships_ap_ids(user, [:block, :mute, :reblog_mute]) - - recipient_blocks = MapSet.new(blocked_ap_ids ++ muted_ap_ids) - recipients = MapSet.new(item.recipients) - domain_blocks = Pleroma.Web.ActivityPub.MRF.subdomains_regex(user.domain_blocks) - - with parent <- Object.normalize(item) || item, - true <- - Enum.all?([blocked_ap_ids, muted_ap_ids], &(item.actor not in &1)), - true <- item.data["type"] != "Announce" || item.actor not in reblog_muted_ap_ids, - true <- Enum.all?([blocked_ap_ids, muted_ap_ids], &(parent.data["actor"] not in &1)), - true <- MapSet.disjoint?(recipients, recipient_blocks), - %{host: item_host} <- URI.parse(item.actor), - %{host: parent_host} <- URI.parse(parent.data["actor"]), - false <- Pleroma.Web.ActivityPub.MRF.subdomain_match?(domain_blocks, item_host), - false <- Pleroma.Web.ActivityPub.MRF.subdomain_match?(domain_blocks, parent_host), - true <- thread_containment(item, user), - false <- CommonAPI.thread_muted?(user, item) do - true - else - _ -> false - end - end - - defp should_send?(%User{} = user, %Notification{activity: activity}) do - should_send?(user, activity) - end - - def push_to_socket(topics, topic, %Participation{} = participation) do - Enum.each(topics[topic] || [], fn %StreamerSocket{transport_pid: transport_pid} -> - send(transport_pid, {:text, StreamerView.render("conversation.json", participation)}) - end) - end - - def push_to_socket(topics, topic, %Activity{ - data: %{"type" => "Delete", "deleted_activity_id" => deleted_activity_id} - }) do - Enum.each(topics[topic] || [], fn %StreamerSocket{transport_pid: transport_pid} -> - send( - transport_pid, - {:text, %{event: "delete", payload: to_string(deleted_activity_id)} |> Jason.encode!()} - ) - end) - end - - def push_to_socket(_topics, _topic, %Activity{data: %{"type" => "Delete"}}), do: :noop - - def push_to_socket(topics, topic, item) do - Enum.each(topics[topic] || [], fn %StreamerSocket{ - transport_pid: transport_pid, - user: socket_user - } -> - # Get the current user so we have up-to-date blocks etc. - if socket_user do - user = User.get_cached_by_ap_id(socket_user.ap_id) - - if should_send?(user, item) do - send(transport_pid, {:text, StreamerView.render("update.json", item, user)}) - end - else - send(transport_pid, {:text, StreamerView.render("update.json", item)}) - end - end) - end - - @spec thread_containment(Activity.t(), User.t()) :: boolean() - defp thread_containment(_activity, %User{skip_thread_containment: true}), do: true - - defp thread_containment(activity, user) do - if Config.get([:instance, :skip_thread_containment]) do - true - else - ActivityPub.contain_activity(activity, user) - end - end -end diff --git a/test/integration/mastodon_websocket_test.exs b/test/integration/mastodon_websocket_test.exs index bd229c55f..109c7b4cb 100644 --- a/test/integration/mastodon_websocket_test.exs +++ b/test/integration/mastodon_websocket_test.exs @@ -12,17 +12,14 @@ defmodule Pleroma.Integration.MastodonWebsocketTest do alias Pleroma.Web.CommonAPI alias Pleroma.Web.OAuth + @moduletag needs_streamer: true, capture_log: true + @path Pleroma.Web.Endpoint.url() |> URI.parse() |> Map.put(:scheme, "ws") |> Map.put(:path, "/api/v1/streaming") |> URI.to_string() - setup_all do - start_supervised(Pleroma.Web.Streamer.supervisor()) - :ok - end - def start_socket(qs \\ nil, headers \\ []) do path = case qs do diff --git a/test/notification_test.exs b/test/notification_test.exs index 601a6c0ca..5c85f3368 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -162,14 +162,18 @@ test "does not create a notification for subscribed users if status is a reply" @tag needs_streamer: true test "it creates a notification for user and send to the 'user' and the 'user:notification' stream" do user = insert(:user) - task = Task.async(fn -> assert_receive {:text, _}, 4_000 end) - task_user_notification = Task.async(fn -> assert_receive {:text, _}, 4_000 end) - Streamer.add_socket("user", %{transport_pid: task.pid, assigns: %{user: user}}) - Streamer.add_socket( - "user:notification", - %{transport_pid: task_user_notification.pid, assigns: %{user: user}} - ) + task = + Task.async(fn -> + Streamer.add_socket("user", user) + assert_receive {:render_with_user, _, _, _}, 4_000 + end) + + task_user_notification = + Task.async(fn -> + Streamer.add_socket("user:notification", user) + assert_receive {:render_with_user, _, _, _}, 4_000 + end) activity = insert(:note_activity) diff --git a/test/support/builders/activity_builder.ex b/test/support/builders/activity_builder.ex index 6e5a8e059..7c4950bfa 100644 --- a/test/support/builders/activity_builder.ex +++ b/test/support/builders/activity_builder.ex @@ -21,7 +21,15 @@ def build(data \\ %{}, opts \\ %{}) do def insert(data \\ %{}, opts \\ %{}) do activity = build(data, opts) - ActivityPub.insert(activity) + + case ActivityPub.insert(activity) do + ok = {:ok, activity} -> + ActivityPub.notify_and_stream(activity) + ok + + error -> + error + end end def insert_list(times, data \\ %{}, opts \\ %{}) do diff --git a/test/support/conn_case.ex b/test/support/conn_case.ex index 91c03b1a8..b23918dd1 100644 --- a/test/support/conn_case.ex +++ b/test/support/conn_case.ex @@ -139,7 +139,11 @@ defp ensure_federating_or_authenticated(conn, url, user) do end if tags[:needs_streamer] do - start_supervised(Pleroma.Web.Streamer.supervisor()) + start_supervised(%{ + id: Pleroma.Web.Streamer.registry(), + start: + {Registry, :start_link, [[keys: :duplicate, name: Pleroma.Web.Streamer.registry()]]} + }) end {:ok, conn: Phoenix.ConnTest.build_conn()} diff --git a/test/support/data_case.ex b/test/support/data_case.ex index 1669f2520..ba8848952 100644 --- a/test/support/data_case.ex +++ b/test/support/data_case.ex @@ -40,7 +40,11 @@ defmodule Pleroma.DataCase do end if tags[:needs_streamer] do - start_supervised(Pleroma.Web.Streamer.supervisor()) + start_supervised(%{ + id: Pleroma.Web.Streamer.registry(), + start: + {Registry, :start_link, [[keys: :duplicate, name: Pleroma.Web.Streamer.registry()]]} + }) end :ok diff --git a/test/web/streamer/ping_test.exs b/test/web/streamer/ping_test.exs deleted file mode 100644 index 5df6c1cc3..000000000 --- a/test/web/streamer/ping_test.exs +++ /dev/null @@ -1,36 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.PingTest do - use Pleroma.DataCase - - import Pleroma.Factory - alias Pleroma.Web.Streamer - - setup do - start_supervised({Streamer.supervisor(), [ping_interval: 30]}) - - :ok - end - - describe "sockets" do - setup do - user = insert(:user) - {:ok, %{user: user}} - end - - test "it sends pings", %{user: user} do - task = - Task.async(fn -> - assert_receive {:text, received_event}, 40 - assert_receive {:text, received_event}, 40 - assert_receive {:text, received_event}, 40 - end) - - Streamer.add_socket("public", %{transport_pid: task.pid, assigns: %{user: user}}) - - Task.await(task) - end - end -end diff --git a/test/web/streamer/state_test.exs b/test/web/streamer/state_test.exs deleted file mode 100644 index a755e75c0..000000000 --- a/test/web/streamer/state_test.exs +++ /dev/null @@ -1,54 +0,0 @@ -# Pleroma: A lightweight social networking server -# Copyright © 2017-2020 Pleroma Authors -# SPDX-License-Identifier: AGPL-3.0-only - -defmodule Pleroma.Web.StateTest do - use Pleroma.DataCase - - import Pleroma.Factory - alias Pleroma.Web.Streamer - alias Pleroma.Web.Streamer.StreamerSocket - - @moduletag needs_streamer: true - - describe "sockets" do - setup do - user = insert(:user) - user2 = insert(:user) - {:ok, %{user: user, user2: user2}} - end - - test "it can add a socket", %{user: user} do - Streamer.add_socket("public", %{transport_pid: 1, assigns: %{user: user}}) - - assert(%{"public" => [%StreamerSocket{transport_pid: 1}]} = Streamer.get_sockets()) - end - - test "it can add multiple sockets per user", %{user: user} do - Streamer.add_socket("public", %{transport_pid: 1, assigns: %{user: user}}) - Streamer.add_socket("public", %{transport_pid: 2, assigns: %{user: user}}) - - assert( - %{ - "public" => [ - %StreamerSocket{transport_pid: 2}, - %StreamerSocket{transport_pid: 1} - ] - } = Streamer.get_sockets() - ) - end - - test "it will not add a duplicate socket", %{user: user} do - Streamer.add_socket("activity", %{transport_pid: 1, assigns: %{user: user}}) - Streamer.add_socket("activity", %{transport_pid: 1, assigns: %{user: user}}) - - assert( - %{ - "activity" => [ - %StreamerSocket{transport_pid: 1} - ] - } = Streamer.get_sockets() - ) - end - end -end diff --git a/test/web/streamer/streamer_test.exs b/test/web/streamer/streamer_test.exs index 3c0f240f5..ee530f4e9 100644 --- a/test/web/streamer/streamer_test.exs +++ b/test/web/streamer/streamer_test.exs @@ -12,13 +12,9 @@ defmodule Pleroma.Web.StreamerTest do alias Pleroma.User alias Pleroma.Web.CommonAPI alias Pleroma.Web.Streamer - alias Pleroma.Web.Streamer.StreamerSocket - alias Pleroma.Web.Streamer.Worker @moduletag needs_streamer: true, capture_log: true - @streamer_timeout 150 - @streamer_start_wait 10 setup do: clear_config([:instance, :skip_thread_containment]) describe "user streams" do @@ -29,69 +25,35 @@ defmodule Pleroma.Web.StreamerTest do end test "it streams the user's post in the 'user' stream", %{user: user} do - task = - Task.async(fn -> - assert_receive {:text, _}, @streamer_timeout - end) - - Streamer.add_socket( - "user", - %{transport_pid: task.pid, assigns: %{user: user}} - ) - + Streamer.add_socket("user", user) {:ok, activity} = CommonAPI.post(user, %{"status" => "hey"}) - - Streamer.stream("user", activity) - Task.await(task) + assert_receive {:render_with_user, _, _, ^activity} + refute Streamer.filtered_by_user?(user, activity) end test "it streams boosts of the user in the 'user' stream", %{user: user} do - task = - Task.async(fn -> - assert_receive {:text, _}, @streamer_timeout - end) - - Streamer.add_socket( - "user", - %{transport_pid: task.pid, assigns: %{user: user}} - ) + Streamer.add_socket("user", user) other_user = insert(:user) {:ok, activity} = CommonAPI.post(other_user, %{"status" => "hey"}) {:ok, announce, _} = CommonAPI.repeat(activity.id, user) - Streamer.stream("user", announce) - Task.await(task) + assert_receive {:render_with_user, Pleroma.Web.StreamerView, "update.json", ^announce} + refute Streamer.filtered_by_user?(user, announce) end test "it sends notify to in the 'user' stream", %{user: user, notify: notify} do - task = - Task.async(fn -> - assert_receive {:text, _}, @streamer_timeout - end) - - Streamer.add_socket( - "user", - %{transport_pid: task.pid, assigns: %{user: user}} - ) - + Streamer.add_socket("user", user) Streamer.stream("user", notify) - Task.await(task) + assert_receive {:render_with_user, _, _, ^notify} + refute Streamer.filtered_by_user?(user, notify) end test "it sends notify to in the 'user:notification' stream", %{user: user, notify: notify} do - task = - Task.async(fn -> - assert_receive {:text, _}, @streamer_timeout - end) - - Streamer.add_socket( - "user:notification", - %{transport_pid: task.pid, assigns: %{user: user}} - ) - + Streamer.add_socket("user:notification", user) Streamer.stream("user:notification", notify) - Task.await(task) + assert_receive {:render_with_user, _, _, ^notify} + refute Streamer.filtered_by_user?(user, notify) end test "it doesn't send notify to the 'user:notification' stream when a user is blocked", %{ @@ -100,18 +62,12 @@ test "it doesn't send notify to the 'user:notification' stream when a user is bl blocked = insert(:user) {:ok, _user_relationship} = User.block(user, blocked) - task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end) - - Streamer.add_socket( - "user:notification", - %{transport_pid: task.pid, assigns: %{user: user}} - ) + Streamer.add_socket("user:notification", user) {:ok, activity} = CommonAPI.post(user, %{"status" => ":("}) - {:ok, notif} = CommonAPI.favorite(blocked, activity.id) + {:ok, _} = CommonAPI.favorite(blocked, activity.id) - Streamer.stream("user:notification", notif) - Task.await(task) + refute_receive _ end test "it doesn't send notify to the 'user:notification' stream when a thread is muted", %{ @@ -119,45 +75,50 @@ test "it doesn't send notify to the 'user:notification' stream when a thread is } do user2 = insert(:user) - task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end) - - Streamer.add_socket( - "user:notification", - %{transport_pid: task.pid, assigns: %{user: user}} - ) - {:ok, activity} = CommonAPI.post(user, %{"status" => "super hot take"}) - {:ok, activity} = CommonAPI.add_mute(user, activity) - {:ok, notif} = CommonAPI.favorite(user2, activity.id) + {:ok, _} = CommonAPI.add_mute(user, activity) - Streamer.stream("user:notification", notif) - Task.await(task) + Streamer.add_socket("user:notification", user) + + {:ok, favorite_activity} = CommonAPI.favorite(user2, activity.id) + + refute_receive _ + assert Streamer.filtered_by_user?(user, favorite_activity) end - test "it doesn't send notify to the 'user:notification' stream' when a domain is blocked", %{ + test "it sends favorite to 'user:notification' stream'", %{ user: user } do user2 = insert(:user, %{ap_id: "https://hecking-lewd-place.com/user/meanie"}) - task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end) + {:ok, activity} = CommonAPI.post(user, %{"status" => "super hot take"}) + Streamer.add_socket("user:notification", user) + {:ok, favorite_activity} = CommonAPI.favorite(user2, activity.id) - Streamer.add_socket( - "user:notification", - %{transport_pid: task.pid, assigns: %{user: user}} - ) + assert_receive {:render_with_user, _, "notification.json", notif} + assert notif.activity.id == favorite_activity.id + refute Streamer.filtered_by_user?(user, notif) + end + + test "it doesn't send the 'user:notification' stream' when a domain is blocked", %{ + user: user + } do + user2 = insert(:user, %{ap_id: "https://hecking-lewd-place.com/user/meanie"}) {:ok, user} = User.block_domain(user, "hecking-lewd-place.com") {:ok, activity} = CommonAPI.post(user, %{"status" => "super hot take"}) - {:ok, notif} = CommonAPI.favorite(user2, activity.id) + Streamer.add_socket("user:notification", user) + {:ok, favorite_activity} = CommonAPI.favorite(user2, activity.id) - Streamer.stream("user:notification", notif) - Task.await(task) + refute_receive _ + assert Streamer.filtered_by_user?(user, favorite_activity) end test "it sends follow activities to the 'user:notification' stream", %{ user: user } do user_url = user.ap_id + user2 = insert(:user) body = File.read!("test/fixtures/users_mock/localhost.json") @@ -169,47 +130,24 @@ test "it sends follow activities to the 'user:notification' stream", %{ %Tesla.Env{status: 200, body: body} end) - user2 = insert(:user) - task = Task.async(fn -> assert_receive {:text, _}, @streamer_timeout end) + Streamer.add_socket("user:notification", user) + {:ok, _follower, _followed, follow_activity} = CommonAPI.follow(user2, user) - Process.sleep(@streamer_start_wait) - - Streamer.add_socket( - "user:notification", - %{transport_pid: task.pid, assigns: %{user: user}} - ) - - {:ok, _follower, _followed, _activity} = CommonAPI.follow(user2, user) - - # We don't directly pipe the notification to the streamer as it's already - # generated as a side effect of CommonAPI.follow(). - Task.await(task) + assert_receive {:render_with_user, _, "notification.json", notif} + assert notif.activity.id == follow_activity.id + refute Streamer.filtered_by_user?(user, notif) end end - test "it sends to public" do + test "it sends to public authenticated" do user = insert(:user) other_user = insert(:user) - task = - Task.async(fn -> - assert_receive {:text, _}, @streamer_timeout - end) + Streamer.add_socket("public", other_user) - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user - } - - {:ok, activity} = CommonAPI.post(other_user, %{"status" => "Test"}) - - topics = %{ - "public" => [fake_socket] - } - - Worker.push_to_socket(topics, "public", activity) - - Task.await(task) + {:ok, activity} = CommonAPI.post(user, %{"status" => "Test"}) + assert_receive {:render_with_user, _, _, ^activity} + refute Streamer.filtered_by_user?(user, activity) end test "works for deletions" do @@ -217,37 +155,32 @@ test "works for deletions" do other_user = insert(:user) {:ok, activity} = CommonAPI.post(other_user, %{"status" => "Test"}) - task = - Task.async(fn -> - expected_event = - %{ - "event" => "delete", - "payload" => activity.id - } - |> Jason.encode!() + Streamer.add_socket("public", user) - assert_receive {:text, received_event}, @streamer_timeout - assert received_event == expected_event - end) + {:ok, _} = CommonAPI.delete(activity.id, other_user) + activity_id = activity.id + assert_receive {:text, event} + assert %{"event" => "delete", "payload" => ^activity_id} = Jason.decode!(event) + end - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user - } + test "it sends to public unauthenticated" do + user = insert(:user) - {:ok, activity} = CommonAPI.delete(activity.id, other_user) + Streamer.add_socket("public", nil) - topics = %{ - "public" => [fake_socket] - } + {:ok, activity} = CommonAPI.post(user, %{"status" => "Test"}) + activity_id = activity.id + assert_receive {:text, event} + assert %{"event" => "update", "payload" => payload} = Jason.decode!(event) + assert %{"id" => ^activity_id} = Jason.decode!(payload) - Worker.push_to_socket(topics, "public", activity) - - Task.await(task) + {:ok, _} = CommonAPI.delete(activity.id, user) + assert_receive {:text, event} + assert %{"event" => "delete", "payload" => ^activity_id} = Jason.decode!(event) end describe "thread_containment" do - test "it doesn't send to user if recipients invalid and thread containment is enabled" do + test "it filters to user if recipients invalid and thread containment is enabled" do Pleroma.Config.put([:instance, :skip_thread_containment], false) author = insert(:user) user = insert(:user) @@ -262,12 +195,10 @@ test "it doesn't send to user if recipients invalid and thread containment is en ) ) - task = Task.async(fn -> refute_receive {:text, _}, 1_000 end) - fake_socket = %StreamerSocket{transport_pid: task.pid, user: user} - topics = %{"public" => [fake_socket]} - Worker.push_to_socket(topics, "public", activity) - - Task.await(task) + Streamer.add_socket("public", user) + Streamer.stream("public", activity) + assert_receive {:render_with_user, _, _, ^activity} + assert Streamer.filtered_by_user?(user, activity) end test "it sends message if recipients invalid and thread containment is disabled" do @@ -285,12 +216,11 @@ test "it sends message if recipients invalid and thread containment is disabled" ) ) - task = Task.async(fn -> assert_receive {:text, _}, 1_000 end) - fake_socket = %StreamerSocket{transport_pid: task.pid, user: user} - topics = %{"public" => [fake_socket]} - Worker.push_to_socket(topics, "public", activity) + Streamer.add_socket("public", user) + Streamer.stream("public", activity) - Task.await(task) + assert_receive {:render_with_user, _, _, ^activity} + refute Streamer.filtered_by_user?(user, activity) end test "it sends message if recipients invalid and thread containment is enabled but user's thread containment is disabled" do @@ -308,255 +238,168 @@ test "it sends message if recipients invalid and thread containment is enabled b ) ) - task = Task.async(fn -> assert_receive {:text, _}, 1_000 end) - fake_socket = %StreamerSocket{transport_pid: task.pid, user: user} - topics = %{"public" => [fake_socket]} - Worker.push_to_socket(topics, "public", activity) + Streamer.add_socket("public", user) + Streamer.stream("public", activity) - Task.await(task) + assert_receive {:render_with_user, _, _, ^activity} + refute Streamer.filtered_by_user?(user, activity) end end describe "blocks" do - test "it doesn't send messages involving blocked users" do + test "it filters messages involving blocked users" do user = insert(:user) blocked_user = insert(:user) {:ok, _user_relationship} = User.block(user, blocked_user) + Streamer.add_socket("public", user) {:ok, activity} = CommonAPI.post(blocked_user, %{"status" => "Test"}) - - task = - Task.async(fn -> - refute_receive {:text, _}, 1_000 - end) - - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user - } - - topics = %{ - "public" => [fake_socket] - } - - Worker.push_to_socket(topics, "public", activity) - - Task.await(task) + assert_receive {:render_with_user, _, _, ^activity} + assert Streamer.filtered_by_user?(user, activity) end - test "it doesn't send messages transitively involving blocked users" do + test "it filters messages transitively involving blocked users" do blocker = insert(:user) blockee = insert(:user) friend = insert(:user) - task = - Task.async(fn -> - refute_receive {:text, _}, 1_000 - end) - - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: blocker - } - - topics = %{ - "public" => [fake_socket] - } + Streamer.add_socket("public", blocker) {:ok, _user_relationship} = User.block(blocker, blockee) {:ok, activity_one} = CommonAPI.post(friend, %{"status" => "hey! @#{blockee.nickname}"}) - Worker.push_to_socket(topics, "public", activity_one) + assert_receive {:render_with_user, _, _, ^activity_one} + assert Streamer.filtered_by_user?(blocker, activity_one) {:ok, activity_two} = CommonAPI.post(blockee, %{"status" => "hey! @#{friend.nickname}"}) - Worker.push_to_socket(topics, "public", activity_two) + assert_receive {:render_with_user, _, _, ^activity_two} + assert Streamer.filtered_by_user?(blocker, activity_two) {:ok, activity_three} = CommonAPI.post(blockee, %{"status" => "hey! @#{blocker.nickname}"}) - Worker.push_to_socket(topics, "public", activity_three) - - Task.await(task) + assert_receive {:render_with_user, _, _, ^activity_three} + assert Streamer.filtered_by_user?(blocker, activity_three) end end - test "it doesn't send unwanted DMs to list" do - user_a = insert(:user) - user_b = insert(:user) - user_c = insert(:user) + describe "lists" do + test "it doesn't send unwanted DMs to list" do + user_a = insert(:user) + user_b = insert(:user) + user_c = insert(:user) - {:ok, user_a} = User.follow(user_a, user_b) + {:ok, user_a} = User.follow(user_a, user_b) - {:ok, list} = List.create("Test", user_a) - {:ok, list} = List.follow(list, user_b) + {:ok, list} = List.create("Test", user_a) + {:ok, list} = List.follow(list, user_b) - {:ok, activity} = - CommonAPI.post(user_b, %{ - "status" => "@#{user_c.nickname} Test", - "visibility" => "direct" - }) + Streamer.add_socket("list:#{list.id}", user_a) - task = - Task.async(fn -> - refute_receive {:text, _}, 1_000 - end) + {:ok, _activity} = + CommonAPI.post(user_b, %{ + "status" => "@#{user_c.nickname} Test", + "visibility" => "direct" + }) - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user_a - } + refute_receive _ + end - topics = %{ - "list:#{list.id}" => [fake_socket] - } + test "it doesn't send unwanted private posts to list" do + user_a = insert(:user) + user_b = insert(:user) - Worker.handle_call({:stream, "list", activity}, self(), topics) + {:ok, list} = List.create("Test", user_a) + {:ok, list} = List.follow(list, user_b) - Task.await(task) + Streamer.add_socket("list:#{list.id}", user_a) + + {:ok, _activity} = + CommonAPI.post(user_b, %{ + "status" => "Test", + "visibility" => "private" + }) + + refute_receive _ + end + + test "it sends wanted private posts to list" do + user_a = insert(:user) + user_b = insert(:user) + + {:ok, user_a} = User.follow(user_a, user_b) + + {:ok, list} = List.create("Test", user_a) + {:ok, list} = List.follow(list, user_b) + + Streamer.add_socket("list:#{list.id}", user_a) + + {:ok, activity} = + CommonAPI.post(user_b, %{ + "status" => "Test", + "visibility" => "private" + }) + + assert_receive {:render_with_user, _, _, ^activity} + refute Streamer.filtered_by_user?(user_a, activity) + end end - test "it doesn't send unwanted private posts to list" do - user_a = insert(:user) - user_b = insert(:user) + describe "muted reblogs" do + test "it filters muted reblogs" do + user1 = insert(:user) + user2 = insert(:user) + user3 = insert(:user) + CommonAPI.follow(user1, user2) + CommonAPI.hide_reblogs(user1, user2) - {:ok, list} = List.create("Test", user_a) - {:ok, list} = List.follow(list, user_b) + {:ok, create_activity} = CommonAPI.post(user3, %{"status" => "I'm kawen"}) - {:ok, activity} = - CommonAPI.post(user_b, %{ - "status" => "Test", - "visibility" => "private" - }) + Streamer.add_socket("user", user1) + {:ok, announce_activity, _} = CommonAPI.repeat(create_activity.id, user2) + assert_receive {:render_with_user, _, _, ^announce_activity} + assert Streamer.filtered_by_user?(user1, announce_activity) + end - task = - Task.async(fn -> - refute_receive {:text, _}, 1_000 - end) + test "it filters reblog notification for reblog-muted actors" do + user1 = insert(:user) + user2 = insert(:user) + CommonAPI.follow(user1, user2) + CommonAPI.hide_reblogs(user1, user2) - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user_a - } + {:ok, create_activity} = CommonAPI.post(user1, %{"status" => "I'm kawen"}) + Streamer.add_socket("user", user1) + {:ok, _favorite_activity, _} = CommonAPI.repeat(create_activity.id, user2) - topics = %{ - "list:#{list.id}" => [fake_socket] - } + assert_receive {:render_with_user, _, "notification.json", notif} + assert Streamer.filtered_by_user?(user1, notif) + end - Worker.handle_call({:stream, "list", activity}, self(), topics) + test "it send non-reblog notification for reblog-muted actors" do + user1 = insert(:user) + user2 = insert(:user) + CommonAPI.follow(user1, user2) + CommonAPI.hide_reblogs(user1, user2) - Task.await(task) + {:ok, create_activity} = CommonAPI.post(user1, %{"status" => "I'm kawen"}) + Streamer.add_socket("user", user1) + {:ok, _favorite_activity} = CommonAPI.favorite(user2, create_activity.id) + + assert_receive {:render_with_user, _, "notification.json", notif} + refute Streamer.filtered_by_user?(user1, notif) + end end - test "it sends wanted private posts to list" do - user_a = insert(:user) - user_b = insert(:user) - - {:ok, user_a} = User.follow(user_a, user_b) - - {:ok, list} = List.create("Test", user_a) - {:ok, list} = List.follow(list, user_b) - - {:ok, activity} = - CommonAPI.post(user_b, %{ - "status" => "Test", - "visibility" => "private" - }) - - task = - Task.async(fn -> - assert_receive {:text, _}, 1_000 - end) - - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user_a - } - - Streamer.add_socket( - "list:#{list.id}", - fake_socket - ) - - Worker.handle_call({:stream, "list", activity}, self(), %{}) - - Task.await(task) - end - - test "it doesn't send muted reblogs" do - user1 = insert(:user) - user2 = insert(:user) - user3 = insert(:user) - CommonAPI.hide_reblogs(user1, user2) - - {:ok, create_activity} = CommonAPI.post(user3, %{"status" => "I'm kawen"}) - {:ok, announce_activity, _} = CommonAPI.repeat(create_activity.id, user2) - - task = - Task.async(fn -> - refute_receive {:text, _}, 1_000 - end) - - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user1 - } - - topics = %{ - "public" => [fake_socket] - } - - Worker.push_to_socket(topics, "public", announce_activity) - - Task.await(task) - end - - test "it does send non-reblog notification for reblog-muted actors" do - user1 = insert(:user) - user2 = insert(:user) - user3 = insert(:user) - CommonAPI.hide_reblogs(user1, user2) - - {:ok, create_activity} = CommonAPI.post(user3, %{"status" => "I'm kawen"}) - {:ok, favorite_activity} = CommonAPI.favorite(user2, create_activity.id) - - task = - Task.async(fn -> - assert_receive {:text, _}, 1_000 - end) - - fake_socket = %StreamerSocket{ - transport_pid: task.pid, - user: user1 - } - - topics = %{ - "public" => [fake_socket] - } - - Worker.push_to_socket(topics, "public", favorite_activity) - - Task.await(task) - end - - test "it doesn't send posts from muted threads" do + test "it filters posts from muted threads" do user = insert(:user) user2 = insert(:user) + Streamer.add_socket("user", user2) {:ok, user2, user, _activity} = CommonAPI.follow(user2, user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "super hot take"}) - - {:ok, activity} = CommonAPI.add_mute(user2, activity) - - task = Task.async(fn -> refute_receive {:text, _}, @streamer_timeout end) - - Streamer.add_socket( - "user", - %{transport_pid: task.pid, assigns: %{user: user2}} - ) - - Streamer.stream("user", activity) - Task.await(task) + {:ok, _} = CommonAPI.add_mute(user2, activity) + assert_receive {:render_with_user, _, _, ^activity} + assert Streamer.filtered_by_user?(user2, activity) end describe "direct streams" do @@ -568,22 +411,7 @@ test "it sends conversation update to the 'direct' stream", %{} do user = insert(:user) another_user = insert(:user) - task = - Task.async(fn -> - assert_receive {:text, received_event}, @streamer_timeout - - assert %{"event" => "conversation", "payload" => received_payload} = - Jason.decode!(received_event) - - assert %{"last_status" => last_status} = Jason.decode!(received_payload) - [participation] = Participation.for_user(user) - assert last_status["pleroma"]["direct_conversation_id"] == participation.id - end) - - Streamer.add_socket( - "direct", - %{transport_pid: task.pid, assigns: %{user: user}} - ) + Streamer.add_socket("direct", user) {:ok, _create_activity} = CommonAPI.post(another_user, %{ @@ -591,42 +419,47 @@ test "it sends conversation update to the 'direct' stream", %{} do "visibility" => "direct" }) - Task.await(task) + assert_receive {:text, received_event} + + assert %{"event" => "conversation", "payload" => received_payload} = + Jason.decode!(received_event) + + assert %{"last_status" => last_status} = Jason.decode!(received_payload) + [participation] = Participation.for_user(user) + assert last_status["pleroma"]["direct_conversation_id"] == participation.id end test "it doesn't send conversation update to the 'direct' stream when the last message in the conversation is deleted" do user = insert(:user) another_user = insert(:user) + Streamer.add_socket("direct", user) + {:ok, create_activity} = CommonAPI.post(another_user, %{ "status" => "hi @#{user.nickname}", "visibility" => "direct" }) - task = - Task.async(fn -> - assert_receive {:text, received_event}, @streamer_timeout - assert %{"event" => "delete", "payload" => _} = Jason.decode!(received_event) + create_activity_id = create_activity.id + assert_receive {:render_with_user, _, _, ^create_activity} + assert_receive {:text, received_conversation1} + assert %{"event" => "conversation", "payload" => _} = Jason.decode!(received_conversation1) - refute_receive {:text, _}, @streamer_timeout - end) + {:ok, _} = CommonAPI.delete(create_activity_id, another_user) - Process.sleep(@streamer_start_wait) + assert_receive {:text, received_event} - Streamer.add_socket( - "direct", - %{transport_pid: task.pid, assigns: %{user: user}} - ) + assert %{"event" => "delete", "payload" => ^create_activity_id} = + Jason.decode!(received_event) - {:ok, _} = CommonAPI.delete(create_activity.id, another_user) - - Task.await(task) + refute_receive _ end test "it sends conversation update to the 'direct' stream when a message is deleted" do user = insert(:user) another_user = insert(:user) + Streamer.add_socket("direct", user) {:ok, create_activity} = CommonAPI.post(another_user, %{ @@ -636,35 +469,30 @@ test "it sends conversation update to the 'direct' stream when a message is dele {:ok, create_activity2} = CommonAPI.post(another_user, %{ - "status" => "hi @#{user.nickname}", + "status" => "hi @#{user.nickname} 2", "in_reply_to_status_id" => create_activity.id, "visibility" => "direct" }) - task = - Task.async(fn -> - assert_receive {:text, received_event}, @streamer_timeout - assert %{"event" => "delete", "payload" => _} = Jason.decode!(received_event) - - assert_receive {:text, received_event}, @streamer_timeout - - assert %{"event" => "conversation", "payload" => received_payload} = - Jason.decode!(received_event) - - assert %{"last_status" => last_status} = Jason.decode!(received_payload) - assert last_status["id"] == to_string(create_activity.id) - end) - - Process.sleep(@streamer_start_wait) - - Streamer.add_socket( - "direct", - %{transport_pid: task.pid, assigns: %{user: user}} - ) + assert_receive {:render_with_user, _, _, ^create_activity} + assert_receive {:render_with_user, _, _, ^create_activity2} + assert_receive {:text, received_conversation1} + assert %{"event" => "conversation", "payload" => _} = Jason.decode!(received_conversation1) + assert_receive {:text, received_conversation1} + assert %{"event" => "conversation", "payload" => _} = Jason.decode!(received_conversation1) {:ok, _} = CommonAPI.delete(create_activity2.id, another_user) - Task.await(task) + assert_receive {:text, received_event} + assert %{"event" => "delete", "payload" => _} = Jason.decode!(received_event) + + assert_receive {:text, received_event} + + assert %{"event" => "conversation", "payload" => received_payload} = + Jason.decode!(received_event) + + assert %{"last_status" => last_status} = Jason.decode!(received_payload) + assert last_status["id"] == to_string(create_activity.id) end end end From cdca62e8d4772240c513acc08a627d2f0ee0eed4 Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Wed, 6 May 2020 19:20:26 +0400 Subject: [PATCH 145/156] Add schema for Tag --- lib/pleroma/web/api_spec/schemas/status.ex | 12 ++-------- lib/pleroma/web/api_spec/schemas/tag.ex | 27 ++++++++++++++++++++++ 2 files changed, 29 insertions(+), 10 deletions(-) create mode 100644 lib/pleroma/web/api_spec/schemas/tag.ex diff --git a/lib/pleroma/web/api_spec/schemas/status.ex b/lib/pleroma/web/api_spec/schemas/status.ex index 7a804461f..2572c9641 100644 --- a/lib/pleroma/web/api_spec/schemas/status.ex +++ b/lib/pleroma/web/api_spec/schemas/status.ex @@ -9,6 +9,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do alias Pleroma.Web.ApiSpec.Schemas.Emoji alias Pleroma.Web.ApiSpec.Schemas.FlakeID alias Pleroma.Web.ApiSpec.Schemas.Poll + alias Pleroma.Web.ApiSpec.Schemas.Tag alias Pleroma.Web.ApiSpec.Schemas.VisibilityScope require OpenApiSpex @@ -106,16 +107,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do replies_count: %Schema{type: :integer}, sensitive: %Schema{type: :boolean}, spoiler_text: %Schema{type: :string}, - tags: %Schema{ - type: :array, - items: %Schema{ - type: :object, - properties: %{ - name: %Schema{type: :string}, - url: %Schema{type: :string, format: :uri} - } - } - }, + tags: %Schema{type: :array, items: Tag}, uri: %Schema{type: :string, format: :uri}, url: %Schema{type: :string, nullable: true, format: :uri}, visibility: VisibilityScope diff --git a/lib/pleroma/web/api_spec/schemas/tag.ex b/lib/pleroma/web/api_spec/schemas/tag.ex new file mode 100644 index 000000000..e693fb83e --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/tag.ex @@ -0,0 +1,27 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.Tag do + alias OpenApiSpex.Schema + + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "Tag", + description: "Represents a hashtag used within the content of a status", + type: :object, + properties: %{ + name: %Schema{type: :string, description: "The value of the hashtag after the # sign"}, + url: %Schema{ + type: :string, + format: :uri, + description: "A link to the hashtag on the instance" + } + }, + example: %{ + name: "cofe", + url: "https://lain.com/tag/cofe" + } + }) +end From dc4a448f4863e7d69c55d39273575fb3463c6c3c Mon Sep 17 00:00:00 2001 From: Egor Kislitsyn Date: Thu, 7 May 2020 14:04:48 +0400 Subject: [PATCH 146/156] Add OpenAPI spec for SearchController --- .../api_spec/operations/account_operation.ex | 5 +- .../api_spec/operations/search_operation.ex | 207 ++++++++++++++++++ .../controllers/search_controller.ex | 24 +- .../controllers/search_controller_test.exs | 78 +++---- 4 files changed, 264 insertions(+), 50 deletions(-) create mode 100644 lib/pleroma/web/api_spec/operations/search_operation.ex diff --git a/lib/pleroma/web/api_spec/operations/account_operation.ex b/lib/pleroma/web/api_spec/operations/account_operation.ex index 470fc0215..70069d6f9 100644 --- a/lib/pleroma/web/api_spec/operations/account_operation.ex +++ b/lib/pleroma/web/api_spec/operations/account_operation.ex @@ -556,11 +556,12 @@ defp update_creadentials_request do } end - defp array_of_accounts do + def array_of_accounts do %Schema{ title: "ArrayOfAccounts", type: :array, - items: Account + items: Account, + example: [Account.schema().example] } end diff --git a/lib/pleroma/web/api_spec/operations/search_operation.ex b/lib/pleroma/web/api_spec/operations/search_operation.ex new file mode 100644 index 000000000..ec1ae5dcf --- /dev/null +++ b/lib/pleroma/web/api_spec/operations/search_operation.ex @@ -0,0 +1,207 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.SearchOperation do + alias OpenApiSpex.Operation + alias OpenApiSpex.Schema + alias Pleroma.Web.ApiSpec.AccountOperation + alias Pleroma.Web.ApiSpec.Schemas.Account + alias Pleroma.Web.ApiSpec.Schemas.BooleanLike + alias Pleroma.Web.ApiSpec.Schemas.FlakeID + alias Pleroma.Web.ApiSpec.Schemas.Status + alias Pleroma.Web.ApiSpec.Schemas.Tag + + import Pleroma.Web.ApiSpec.Helpers + + def open_api_operation(action) do + operation = String.to_existing_atom("#{action}_operation") + apply(__MODULE__, operation, []) + end + + def account_search_operation do + %Operation{ + tags: ["Search"], + summary: "Search for matching accounts by username or display name", + operationId: "SearchController.account_search", + parameters: [ + Operation.parameter(:q, :query, %Schema{type: :string}, "What to search for", + required: true + ), + Operation.parameter( + :limit, + :query, + %Schema{type: :integer, default: 40}, + "Maximum number of results" + ), + Operation.parameter( + :resolve, + :query, + %Schema{allOf: [BooleanLike], default: false}, + "Attempt WebFinger lookup. Use this when `q` is an exact address." + ), + Operation.parameter( + :following, + :query, + %Schema{allOf: [BooleanLike], default: false}, + "Only who the user is following." + ) + ], + responses: %{ + 200 => + Operation.response( + "Array of Account", + "application/json", + AccountOperation.array_of_accounts() + ) + } + } + end + + def search_operation do + %Operation{ + tags: ["Search"], + summary: "Search results", + security: [%{"oAuth" => ["read:search"]}], + operationId: "SearchController.search", + deprecated: true, + parameters: [ + Operation.parameter( + :account_id, + :query, + FlakeID, + "If provided, statuses returned will be authored only by this account" + ), + Operation.parameter( + :type, + :query, + %Schema{type: :string, enum: ["accounts", "hashtags", "statuses"]}, + "Search type" + ), + Operation.parameter(:q, :query, %Schema{type: :string}, "The search query", required: true), + Operation.parameter( + :resolve, + :query, + %Schema{allOf: [BooleanLike], default: false}, + "Attempt WebFinger lookup" + ), + Operation.parameter( + :following, + :query, + %Schema{allOf: [BooleanLike], default: false}, + "Only include accounts that the user is following" + ), + Operation.parameter( + :offset, + :query, + %Schema{type: :integer}, + "Offset" + ) + | pagination_params() + ], + responses: %{ + 200 => Operation.response("Results", "application/json", results()) + } + } + end + + def search2_operation do + %Operation{ + tags: ["Search"], + summary: "Search results", + security: [%{"oAuth" => ["read:search"]}], + operationId: "SearchController.search2", + parameters: [ + Operation.parameter( + :account_id, + :query, + FlakeID, + "If provided, statuses returned will be authored only by this account" + ), + Operation.parameter( + :type, + :query, + %Schema{type: :string, enum: ["accounts", "hashtags", "statuses"]}, + "Search type" + ), + Operation.parameter(:q, :query, %Schema{type: :string}, "What to search for", + required: true + ), + Operation.parameter( + :resolve, + :query, + %Schema{allOf: [BooleanLike], default: false}, + "Attempt WebFinger lookup" + ), + Operation.parameter( + :following, + :query, + %Schema{allOf: [BooleanLike], default: false}, + "Only include accounts that the user is following" + ) + | pagination_params() + ], + responses: %{ + 200 => Operation.response("Results", "application/json", results2()) + } + } + end + + defp results2 do + %Schema{ + title: "SearchResults", + type: :object, + properties: %{ + accounts: %Schema{ + type: :array, + items: Account, + description: "Accounts which match the given query" + }, + statuses: %Schema{ + type: :array, + items: Status, + description: "Statuses which match the given query" + }, + hashtags: %Schema{ + type: :array, + items: Tag, + description: "Hashtags which match the given query" + } + }, + example: %{ + "accounts" => [Account.schema().example], + "statuses" => [Status.schema().example], + "hashtags" => [Tag.schema().example] + } + } + end + + defp results do + %Schema{ + title: "SearchResults", + type: :object, + properties: %{ + accounts: %Schema{ + type: :array, + items: Account, + description: "Accounts which match the given query" + }, + statuses: %Schema{ + type: :array, + items: Status, + description: "Statuses which match the given query" + }, + hashtags: %Schema{ + type: :array, + items: %Schema{type: :string}, + description: "Hashtags which match the given query" + } + }, + example: %{ + "accounts" => [Account.schema().example], + "statuses" => [Status.schema().example], + "hashtags" => ["cofe"] + } + } + end +end diff --git a/lib/pleroma/web/mastodon_api/controllers/search_controller.ex b/lib/pleroma/web/mastodon_api/controllers/search_controller.ex index cd49da6ad..0e0d54ba4 100644 --- a/lib/pleroma/web/mastodon_api/controllers/search_controller.ex +++ b/lib/pleroma/web/mastodon_api/controllers/search_controller.ex @@ -5,7 +5,7 @@ defmodule Pleroma.Web.MastodonAPI.SearchController do use Pleroma.Web, :controller - import Pleroma.Web.ControllerHelper, only: [fetch_integer_param: 2, skip_relationships?: 1] + import Pleroma.Web.ControllerHelper, only: [skip_relationships?: 1] alias Pleroma.Activity alias Pleroma.Plugs.OAuthScopesPlug @@ -18,6 +18,8 @@ defmodule Pleroma.Web.MastodonAPI.SearchController do require Logger + plug(Pleroma.Web.ApiSpec.CastAndValidate) + # Note: Mastodon doesn't allow unauthenticated access (requires read:accounts / read:search) plug(OAuthScopesPlug, %{scopes: ["read:search"], fallback: :proceed_unauthenticated}) @@ -25,7 +27,9 @@ defmodule Pleroma.Web.MastodonAPI.SearchController do plug(RateLimiter, [name: :search] when action in [:search, :search2, :account_search]) - def account_search(%{assigns: %{user: user}} = conn, %{"q" => query} = params) do + defdelegate open_api_operation(action), to: Pleroma.Web.ApiSpec.SearchOperation + + def account_search(%{assigns: %{user: user}} = conn, %{q: query} = params) do accounts = User.search(query, search_options(params, user)) conn @@ -36,7 +40,7 @@ def account_search(%{assigns: %{user: user}} = conn, %{"q" => query} = params) d def search2(conn, params), do: do_search(:v2, conn, params) def search(conn, params), do: do_search(:v1, conn, params) - defp do_search(version, %{assigns: %{user: user}} = conn, %{"q" => query} = params) do + defp do_search(version, %{assigns: %{user: user}} = conn, %{q: query} = params) do options = search_options(params, user) timeout = Keyword.get(Repo.config(), :timeout, 15_000) default_values = %{"statuses" => [], "accounts" => [], "hashtags" => []} @@ -44,7 +48,7 @@ defp do_search(version, %{assigns: %{user: user}} = conn, %{"q" => query} = para result = default_values |> Enum.map(fn {resource, default_value} -> - if params["type"] in [nil, resource] do + if params[:type] in [nil, resource] do {resource, fn -> resource_search(version, resource, query, options) end} else {resource, fn -> default_value end} @@ -68,11 +72,11 @@ defp do_search(version, %{assigns: %{user: user}} = conn, %{"q" => query} = para defp search_options(params, user) do [ skip_relationships: skip_relationships?(params), - resolve: params["resolve"] == "true", - following: params["following"] == "true", - limit: fetch_integer_param(params, "limit"), - offset: fetch_integer_param(params, "offset"), - type: params["type"], + resolve: params[:resolve], + following: params[:following], + limit: params[:limit], + offset: params[:offset], + type: params[:type], author: get_author(params), for_user: user ] @@ -135,7 +139,7 @@ defp with_fallback(f, fallback \\ []) do end end - defp get_author(%{"account_id" => account_id}) when is_binary(account_id), + defp get_author(%{account_id: account_id}) when is_binary(account_id), do: User.get_cached_by_id(account_id) defp get_author(_params), do: nil diff --git a/test/web/mastodon_api/controllers/search_controller_test.exs b/test/web/mastodon_api/controllers/search_controller_test.exs index 11133ff66..02476acb6 100644 --- a/test/web/mastodon_api/controllers/search_controller_test.exs +++ b/test/web/mastodon_api/controllers/search_controller_test.exs @@ -27,8 +27,8 @@ test "it returns empty result if user or status search return undefined error", capture_log(fn -> results = conn - |> get("/api/v2/search", %{"q" => "2hu"}) - |> json_response(200) + |> get("/api/v2/search?q=2hu") + |> json_response_and_validate_schema(200) assert results["accounts"] == [] assert results["statuses"] == [] @@ -54,8 +54,8 @@ test "search", %{conn: conn} do results = conn - |> get("/api/v2/search", %{"q" => "2hu #private"}) - |> json_response(200) + |> get("/api/v2/search?#{URI.encode_query(%{q: "2hu #private"})}") + |> json_response_and_validate_schema(200) [account | _] = results["accounts"] assert account["id"] == to_string(user_three.id) @@ -68,8 +68,8 @@ test "search", %{conn: conn} do assert status["id"] == to_string(activity.id) results = - get(conn, "/api/v2/search", %{"q" => "天子"}) - |> json_response(200) + get(conn, "/api/v2/search?q=天子") + |> json_response_and_validate_schema(200) [status] = results["statuses"] assert status["id"] == to_string(activity.id) @@ -89,8 +89,8 @@ test "excludes a blocked users from search results", %{conn: conn} do conn |> assign(:user, user) |> assign(:token, insert(:oauth_token, user: user, scopes: ["read"])) - |> get("/api/v2/search", %{"q" => "Agent"}) - |> json_response(200) + |> get("/api/v2/search?q=Agent") + |> json_response_and_validate_schema(200) status_ids = Enum.map(results["statuses"], fn g -> g["id"] end) @@ -107,8 +107,8 @@ test "account search", %{conn: conn} do results = conn - |> get("/api/v1/accounts/search", %{"q" => "shp"}) - |> json_response(200) + |> get("/api/v1/accounts/search?q=shp") + |> json_response_and_validate_schema(200) result_ids = for result <- results, do: result["acct"] @@ -117,8 +117,8 @@ test "account search", %{conn: conn} do results = conn - |> get("/api/v1/accounts/search", %{"q" => "2hu"}) - |> json_response(200) + |> get("/api/v1/accounts/search?q=2hu") + |> json_response_and_validate_schema(200) result_ids = for result <- results, do: result["acct"] @@ -130,8 +130,8 @@ test "returns account if query contains a space", %{conn: conn} do results = conn - |> get("/api/v1/accounts/search", %{"q" => "shp@shitposter.club xxx "}) - |> json_response(200) + |> get("/api/v1/accounts/search?q=shp@shitposter.club xxx") + |> json_response_and_validate_schema(200) assert length(results) == 1 end @@ -146,8 +146,8 @@ test "it returns empty result if user or status search return undefined error", capture_log(fn -> results = conn - |> get("/api/v1/search", %{"q" => "2hu"}) - |> json_response(200) + |> get("/api/v1/search?q=2hu") + |> json_response_and_validate_schema(200) assert results["accounts"] == [] assert results["statuses"] == [] @@ -173,8 +173,8 @@ test "search", %{conn: conn} do results = conn - |> get("/api/v1/search", %{"q" => "2hu"}) - |> json_response(200) + |> get("/api/v1/search?q=2hu") + |> json_response_and_validate_schema(200) [account | _] = results["accounts"] assert account["id"] == to_string(user_three.id) @@ -194,8 +194,8 @@ test "search fetches remote statuses and prefers them over other results", %{con results = conn - |> get("/api/v1/search", %{"q" => "https://shitposter.club/notice/2827873"}) - |> json_response(200) + |> get("/api/v1/search?q=https://shitposter.club/notice/2827873") + |> json_response_and_validate_schema(200) [status, %{"id" => ^activity_id}] = results["statuses"] @@ -212,10 +212,12 @@ test "search doesn't show statuses that it shouldn't", %{conn: conn} do }) capture_log(fn -> + q = Object.normalize(activity).data["id"] + results = conn - |> get("/api/v1/search", %{"q" => Object.normalize(activity).data["id"]}) - |> json_response(200) + |> get("/api/v1/search?q=#{q}") + |> json_response_and_validate_schema(200) [] = results["statuses"] end) @@ -228,8 +230,8 @@ test "search fetches remote accounts", %{conn: conn} do conn |> assign(:user, user) |> assign(:token, insert(:oauth_token, user: user, scopes: ["read"])) - |> get("/api/v1/search", %{"q" => "mike@osada.macgirvin.com", "resolve" => "true"}) - |> json_response(200) + |> get("/api/v1/search?q=mike@osada.macgirvin.com&resolve=true") + |> json_response_and_validate_schema(200) [account] = results["accounts"] assert account["acct"] == "mike@osada.macgirvin.com" @@ -238,8 +240,8 @@ test "search fetches remote accounts", %{conn: conn} do test "search doesn't fetch remote accounts if resolve is false", %{conn: conn} do results = conn - |> get("/api/v1/search", %{"q" => "mike@osada.macgirvin.com", "resolve" => "false"}) - |> json_response(200) + |> get("/api/v1/search?q=mike@osada.macgirvin.com&resolve=false") + |> json_response_and_validate_schema(200) assert [] == results["accounts"] end @@ -254,16 +256,16 @@ test "search with limit and offset", %{conn: conn} do result = conn - |> get("/api/v1/search", %{"q" => "2hu", "limit" => 1}) + |> get("/api/v1/search?q=2hu&limit=1") - assert results = json_response(result, 200) + assert results = json_response_and_validate_schema(result, 200) assert [%{"id" => activity_id1}] = results["statuses"] assert [_] = results["accounts"] results = conn - |> get("/api/v1/search", %{"q" => "2hu", "limit" => 1, "offset" => 1}) - |> json_response(200) + |> get("/api/v1/search?q=2hu&limit=1&offset=1") + |> json_response_and_validate_schema(200) assert [%{"id" => activity_id2}] = results["statuses"] assert [] = results["accounts"] @@ -279,13 +281,13 @@ test "search returns results only for the given type", %{conn: conn} do assert %{"statuses" => [_activity], "accounts" => [], "hashtags" => []} = conn - |> get("/api/v1/search", %{"q" => "2hu", "type" => "statuses"}) - |> json_response(200) + |> get("/api/v1/search?q=2hu&type=statuses") + |> json_response_and_validate_schema(200) assert %{"statuses" => [], "accounts" => [_user_two], "hashtags" => []} = conn - |> get("/api/v1/search", %{"q" => "2hu", "type" => "accounts"}) - |> json_response(200) + |> get("/api/v1/search?q=2hu&type=accounts") + |> json_response_and_validate_schema(200) end test "search uses account_id to filter statuses by the author", %{conn: conn} do @@ -297,8 +299,8 @@ test "search uses account_id to filter statuses by the author", %{conn: conn} do results = conn - |> get("/api/v1/search", %{"q" => "2hu", "account_id" => user.id}) - |> json_response(200) + |> get("/api/v1/search?q=2hu&account_id=#{user.id}") + |> json_response_and_validate_schema(200) assert [%{"id" => activity_id1}] = results["statuses"] assert activity_id1 == activity1.id @@ -306,8 +308,8 @@ test "search uses account_id to filter statuses by the author", %{conn: conn} do results = conn - |> get("/api/v1/search", %{"q" => "2hu", "account_id" => user_two.id}) - |> json_response(200) + |> get("/api/v1/search?q=2hu&account_id=#{user_two.id}") + |> json_response_and_validate_schema(200) assert [%{"id" => activity_id2}] = results["statuses"] assert activity_id2 == activity2.id From 3f867d8e9bf970e180153b411d5924f15c490046 Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 7 May 2020 10:48:09 +0000 Subject: [PATCH 147/156] Apply suggestion to lib/pleroma/web/api_spec/operations/search_operation.ex --- lib/pleroma/web/api_spec/operations/search_operation.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/api_spec/operations/search_operation.ex b/lib/pleroma/web/api_spec/operations/search_operation.ex index ec1ae5dcf..6ea00a9a8 100644 --- a/lib/pleroma/web/api_spec/operations/search_operation.ex +++ b/lib/pleroma/web/api_spec/operations/search_operation.ex @@ -44,7 +44,7 @@ def account_search_operation do :following, :query, %Schema{allOf: [BooleanLike], default: false}, - "Only who the user is following." + "Only include accounts that the user is following" ) ], responses: %{ From 9c3c142c32b027addd7b729229820f8b2bf76994 Mon Sep 17 00:00:00 2001 From: rinpatch Date: Thu, 7 May 2020 14:35:29 +0300 Subject: [PATCH 148/156] Restore mix.lock after 2FA merge It downgraded a bunch of deps, including plug. Which resulted in errors since pleroma was using a feature plug didn't support at the time. --- mix.lock | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/mix.lock b/mix.lock index 4792249d7..c400202b7 100644 --- a/mix.lock +++ b/mix.lock @@ -2,7 +2,8 @@ "accept": {:hex, :accept, "0.3.5", "b33b127abca7cc948bbe6caa4c263369abf1347cfa9d8e699c6d214660f10cd1", [:rebar3], [], "hexpm", "11b18c220bcc2eab63b5470c038ef10eb6783bcb1fcdb11aa4137defa5ac1bb8"}, "auto_linker": {:git, "https://git.pleroma.social/pleroma/auto_linker.git", "95e8188490e97505c56636c1379ffdf036c1fdde", [ref: "95e8188490e97505c56636c1379ffdf036c1fdde"]}, "base62": {:hex, :base62, "1.2.1", "4866763e08555a7b3917064e9eef9194c41667276c51b59de2bc42c6ea65f806", [:mix], [{:custom_base, "~> 0.2.1", [hex: :custom_base, repo: "hexpm", optional: false]}], "hexpm", "3b29948de2013d3f93aa898c884a9dff847e7aec75d9d6d8c1dc4c61c2716c42"}, - "bbcode": {:hex, :bbcode, "0.1.1", "0023e2c7814119b2e620b7add67182e3f6019f92bfec9a22da7e99821aceba70", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5a981b98ac7d366a9b6bf40eac389aaf4d6e623c631e6b6f8a6b571efaafd338"}, + "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm"}, + "bbcode": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/bbcode.git", "f2d267675e9a7e1ad1ea9beb4cc23382762b66c2", [ref: "v0.2.0"]}, "bbcode_pleroma": {:hex, :bbcode_pleroma, "0.2.0", "d36f5bca6e2f62261c45be30fa9b92725c0655ad45c99025cb1c3e28e25803ef", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "19851074419a5fedb4ef49e1f01b30df504bb5dbb6d6adfc135238063bebd1c3"}, "benchee": {:hex, :benchee, "1.0.1", "66b211f9bfd84bd97e6d1beaddf8fc2312aaabe192f776e8931cb0c16f53a521", [:mix], [{:deep_merge, "~> 1.0", [hex: :deep_merge, repo: "hexpm", optional: false]}], "hexpm", "3ad58ae787e9c7c94dd7ceda3b587ec2c64604563e049b2a0e8baafae832addb"}, "bunt": {:hex, :bunt, "0.2.0", "951c6e801e8b1d2cbe58ebbd3e616a869061ddadcc4863d0a2182541acae9a38", [:mix], [], "hexpm", "7af5c7e09fe1d40f76c8e4f9dd2be7cebd83909f31fee7cd0e9eadc567da8353"}, @@ -18,33 +19,38 @@ "cowboy": {:hex, :cowboy, "2.7.0", "91ed100138a764355f43316b1d23d7ff6bdb0de4ea618cb5d8677c93a7a2f115", [:rebar3], [{:cowlib, "~> 2.8.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "~> 1.7.1", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "04fd8c6a39edc6aaa9c26123009200fc61f92a3a94f3178c527b70b767c6e605"}, "cowlib": {:hex, :cowlib, "2.8.0", "fd0ff1787db84ac415b8211573e9a30a3ebe71b5cbff7f720089972b2319c8a4", [:rebar3], [], "hexpm", "79f954a7021b302186a950a32869dbc185523d99d3e44ce430cd1f3289f41ed4"}, "credo": {:hex, :credo, "1.1.5", "caec7a3cadd2e58609d7ee25b3931b129e739e070539ad1a0cd7efeeb47014f4", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "d0bbd3222607ccaaac5c0340f7f525c627ae4d7aee6c8c8c108922620c5b6446"}, + "crontab": {:hex, :crontab, "1.1.8", "2ce0e74777dfcadb28a1debbea707e58b879e6aa0ffbf9c9bb540887bce43617", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm"}, "crypt": {:git, "https://github.com/msantos/crypt", "1f2b58927ab57e72910191a7ebaeff984382a1d3", [ref: "1f2b58927ab57e72910191a7ebaeff984382a1d3"]}, "custom_base": {:hex, :custom_base, "0.2.1", "4a832a42ea0552299d81652aa0b1f775d462175293e99dfbe4d7dbaab785a706", [:mix], [], "hexpm", "8df019facc5ec9603e94f7270f1ac73ddf339f56ade76a721eaa57c1493ba463"}, "db_connection": {:hex, :db_connection, "2.2.1", "caee17725495f5129cb7faebde001dc4406796f12a62b8949f4ac69315080566", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}], "hexpm", "2b02ece62d9f983fcd40954e443b7d9e6589664380e5546b2b9b523cd0fb59e1"}, "decimal": {:hex, :decimal, "1.8.1", "a4ef3f5f3428bdbc0d35374029ffcf4ede8533536fa79896dd450168d9acdf3c", [:mix], [], "hexpm", "3cb154b00225ac687f6cbd4acc4b7960027c757a5152b369923ead9ddbca7aec"}, "deep_merge": {:hex, :deep_merge, "1.0.0", "b4aa1a0d1acac393bdf38b2291af38cb1d4a52806cf7a4906f718e1feb5ee961", [:mix], [], "hexpm", "ce708e5f094b9cd4e8f2be4f00d2f4250c4095be93f8cd6d018c753894885430"}, "earmark": {:hex, :earmark, "1.4.3", "364ca2e9710f6bff494117dbbd53880d84bebb692dafc3a78eb50aa3183f2bfd", [:mix], [], "hexpm", "8cf8a291ebf1c7b9539e3cddb19e9cef066c2441b1640f13c34c1d3cfc825fec"}, - "ecto": {:hex, :ecto, "3.4.2", "6890af71025769bd27ef62b1ed1925cfe23f7f0460bcb3041da4b705215ff23e", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "b3959b8a83e086202a4bd86b4b5e6e71f9f1840813de14a57d502d3fc2ef7132"}, + "ecto": {:hex, :ecto, "3.4.0", "a7a83ab8359bf816ce729e5e65981ce25b9fc5adfc89c2ea3980f4fed0bfd7c1", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "5eed18252f5b5bbadec56a24112b531343507dbe046273133176b12190ce19cc"}, "ecto_enum": {:hex, :ecto_enum, "1.4.0", "d14b00e04b974afc69c251632d1e49594d899067ee2b376277efd8233027aec8", [:mix], [{:ecto, ">= 3.0.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:ecto_sql, "> 3.0.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:mariaex, ">= 0.0.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: true]}], "hexpm", "8fb55c087181c2b15eee406519dc22578fa60dd82c088be376d0010172764ee4"}, "ecto_sql": {:hex, :ecto_sql, "3.3.4", "aa18af12eb875fbcda2f75e608b3bd534ebf020fc4f6448e4672fcdcbb081244", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.4 or ~> 3.3.3", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.3.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "5eccbdbf92e3c6f213007a82d5dbba4cd9bb659d1a21331f89f408e4c0efd7a8"}, "esshd": {:hex, :esshd, "0.1.1", "d4dd4c46698093a40a56afecce8a46e246eb35463c457c246dacba2e056f31b5", [:mix], [], "hexpm", "d73e341e3009d390aa36387dc8862860bf9f874c94d9fd92ade2926376f49981"}, "eternal": {:hex, :eternal, "1.2.1", "d5b6b2499ba876c57be2581b5b999ee9bdf861c647401066d3eeed111d096bc4", [:mix], [], "hexpm", "b14f1dc204321429479c569cfbe8fb287541184ed040956c8862cb7a677b8406"}, + "ex2ms": {:hex, :ex2ms, "1.5.0", "19e27f9212be9a96093fed8cdfbef0a2b56c21237196d26760f11dfcfae58e97", [:mix], [], "hexpm"}, "ex_aws": {:hex, :ex_aws, "2.1.1", "1e4de2106cfbf4e837de41be41cd15813eabc722315e388f0d6bb3732cec47cd", [:mix], [{:configparser_ex, "~> 4.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "1.6.3 or 1.6.5 or 1.7.1 or 1.8.6 or ~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:poison, ">= 1.2.0", [hex: :poison, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "06b6fde12b33bb6d65d5d3493e903ba5a56d57a72350c15285a4298338089e10"}, "ex_aws_s3": {:hex, :ex_aws_s3, "2.0.2", "c0258bbdfea55de4f98f0b2f0ca61fe402cc696f573815134beb1866e778f47b", [:mix], [{:ex_aws, "~> 2.0", [hex: :ex_aws, repo: "hexpm", optional: false]}, {:sweet_xml, ">= 0.0.0", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "0569f5b211b1a3b12b705fe2a9d0e237eb1360b9d76298028df2346cad13097a"}, "ex_const": {:hex, :ex_const, "0.2.4", "d06e540c9d834865b012a17407761455efa71d0ce91e5831e86881b9c9d82448", [:mix], [], "hexpm", "96fd346610cc992b8f896ed26a98be82ac4efb065a0578f334a32d60a3ba9767"}, - "ex_doc": {:hex, :ex_doc, "0.21.2", "caca5bc28ed7b3bdc0b662f8afe2bee1eedb5c3cf7b322feeeb7c6ebbde089d6", [:mix], [{:earmark, "~> 1.3.3 or ~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "f1155337ae17ff7a1255217b4c1ceefcd1860b7ceb1a1874031e7a861b052e39"}, + "ex_doc": {:hex, :ex_doc, "0.21.3", "857ec876b35a587c5d9148a2512e952e24c24345552259464b98bfbb883c7b42", [:mix], [{:earmark, "~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "0db1ee8d1547ab4877c5b5dffc6604ef9454e189928d5ba8967d4a58a801f161"}, "ex_machina": {:hex, :ex_machina, "2.3.0", "92a5ad0a8b10ea6314b876a99c8c9e3f25f4dde71a2a835845b136b9adaf199a", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:ecto_sql, "~> 3.0", [hex: :ecto_sql, repo: "hexpm", optional: true]}], "hexpm", "b84f6af156264530b312a8ab98ac6088f6b77ae5fe2058305c81434aa01fbaf9"}, "ex_syslogger": {:hex, :ex_syslogger, "1.5.2", "72b6aa2d47a236e999171f2e1ec18698740f40af0bd02c8c650bf5f1fd1bac79", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.1.0", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "ab9fab4136dbc62651ec6f16fa4842f10cf02ab4433fa3d0976c01be99398399"}, "excoveralls": {:hex, :excoveralls, "0.12.2", "a513defac45c59e310ac42fcf2b8ae96f1f85746410f30b1ff2b710a4b6cd44b", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "151c476331d49b45601ffc45f43cb3a8beb396b02a34e3777fea0ad34ae57d89"}, - "fast_html": {:hex, :fast_html, "1.0.1", "5bc7df4dc4607ec2c314c16414e4111d79a209956c4f5df96602d194c61197f9", [:make, :mix], [], "hexpm", "18e627dd62051a375ef94b197f41e8027c3e8eef0180ab8f81e0543b3dc6900a"}, - "fast_sanitize": {:hex, :fast_sanitize, "0.1.6", "60a5ae96879956dea409a91a77f5dd2994c24cc10f80eefd8f9892ee4c0c7b25", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b73f50f0cb522dd0331ea8e8c90b408de42c50f37641219d6364f0e3e7efd22c"}, + "fast_html": {:hex, :fast_html, "1.0.3", "2cc0d4b68496266a1530e0c852cafeaede0bd10cfdee26fda50dc696c203162f", [:make, :mix], [], "hexpm", "ab3d782b639d3c4655fbaec0f9d032c91f8cab8dd791ac7469c2381bc7c32f85"}, + "fast_sanitize": {:hex, :fast_sanitize, "0.1.7", "2a7cd8734c88a2de6de55022104f8a3b87f1fdbe8bbf131d9049764b53d50d0d", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "f39fe8ea08fbac17487c30bf09b7d9f3e12472e51fb07a88ffeb8fd17da8ab67"}, "flake_id": {:hex, :flake_id, "0.1.0", "7716b086d2e405d09b647121a166498a0d93d1a623bead243e1f74216079ccb3", [:mix], [{:base62, "~> 1.2", [hex: :base62, repo: "hexpm", optional: false]}, {:ecto, ">= 2.0.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "31fc8090fde1acd267c07c36ea7365b8604055f897d3a53dd967658c691bd827"}, - "floki": {:hex, :floki, "0.26.0", "4df88977e2e357c6720e1b650f613444bfb48c5acfc6a0c646ab007d08ad13bf", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "e7b66ce7feef5518a9cd9fc7b52dd62a64028bd9cb6d6ad282a0f0fc90a4ae52"}, + "floki": {:hex, :floki, "0.25.0", "b1c9ddf5f32a3a90b43b76f3386ca054325dc2478af020e87b5111c19f2284ac", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "631f4e627c46d5ecd347df5a2accdaf0621c77c3693c5b75a8ad58e84c61f242"}, "gen_smtp": {:hex, :gen_smtp, "0.15.0", "9f51960c17769b26833b50df0b96123605a8024738b62db747fece14eb2fbfcc", [:rebar3], [], "hexpm", "29bd14a88030980849c7ed2447b8db6d6c9278a28b11a44cafe41b791205440f"}, + "gen_stage": {:hex, :gen_stage, "0.14.3", "d0c66f1c87faa301c1a85a809a3ee9097a4264b2edf7644bf5c123237ef732bf", [:mix], [], "hexpm"}, + "gen_state_machine": {:hex, :gen_state_machine, "2.0.5", "9ac15ec6e66acac994cc442dcc2c6f9796cf380ec4b08267223014be1c728a95", [:mix], [], "hexpm"}, "gettext": {:hex, :gettext, "0.17.4", "f13088e1ec10ce01665cf25f5ff779e7df3f2dc71b37084976cf89d1aa124d5c", [:mix], [], "hexpm", "3c75b5ea8288e2ee7ea503ff9e30dfe4d07ad3c054576a6e60040e79a801e14d"}, "gun": {:git, "https://github.com/ninenines/gun.git", "e1a69b36b180a574c0ac314ced9613fdd52312cc", [ref: "e1a69b36b180a574c0ac314ced9613fdd52312cc"]}, "hackney": {:hex, :hackney, "1.15.2", "07e33c794f8f8964ee86cebec1a8ed88db5070e52e904b8f12209773c1036085", [:rebar3], [{:certifi, "2.5.1", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.5", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "e0100f8ef7d1124222c11ad362c857d3df7cb5f4204054f9f0f4a728666591fc"}, "html_entities": {:hex, :html_entities, "0.5.1", "1c9715058b42c35a2ab65edc5b36d0ea66dd083767bef6e3edb57870ef556549", [:mix], [], "hexpm", "30efab070904eb897ff05cd52fa61c1025d7f8ef3a9ca250bc4e6513d16c32de"}, + "html_sanitize_ex": {:hex, :html_sanitize_ex, "1.3.0", "f005ad692b717691203f940c686208aa3d8ffd9dd4bb3699240096a51fa9564e", [:mix], [{:mochiweb, "~> 2.15", [hex: :mochiweb, repo: "hexpm", optional: false]}], "hexpm"}, "http_signatures": {:git, "https://git.pleroma.social/pleroma/http_signatures.git", "293d77bb6f4a67ac8bde1428735c3b42f22cbb30", [ref: "293d77bb6f4a67ac8bde1428735c3b42f22cbb30"]}, "httpoison": {:hex, :httpoison, "1.6.2", "ace7c8d3a361cebccbed19c283c349b3d26991eff73a1eaaa8abae2e3c8089b6", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "aa2c74bd271af34239a3948779612f87df2422c2fdcfdbcec28d9c105f0773fe"}, "idna": {:hex, :idna, "6.0.0", "689c46cbcdf3524c44d5f3dde8001f364cd7608a99556d8fbd8239a5798d4c10", [:rebar3], [{:unicode_util_compat, "0.4.1", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "4bdd305eb64e18b0273864920695cb18d7a2021f31a11b9c5fbcd9a253f936e2"}, @@ -53,34 +59,38 @@ "joken": {:hex, :joken, "2.2.0", "2daa1b12be05184aff7b5ace1d43ca1f81345962285fff3f88db74927c954d3a", [:mix], [{:jose, "~> 1.9", [hex: :jose, repo: "hexpm", optional: false]}], "hexpm", "b4f92e30388206f869dd25d1af628a1d99d7586e5cf0672f64d4df84c4d2f5e9"}, "jose": {:hex, :jose, "1.10.1", "16d8e460dae7203c6d1efa3f277e25b5af8b659febfc2f2eb4bacf87f128b80a", [:mix, :rebar3], [], "hexpm", "3c7ddc8a9394b92891db7c2771da94bf819834a1a4c92e30857b7d582e2f8257"}, "jumper": {:hex, :jumper, "1.0.1", "3c00542ef1a83532b72269fab9f0f0c82bf23a35e27d278bfd9ed0865cecabff", [:mix], [], "hexpm", "318c59078ac220e966d27af3646026db9b5a5e6703cb2aa3e26bcfaba65b7433"}, + "libring": {:hex, :libring, "1.4.0", "41246ba2f3fbc76b3971f6bce83119dfec1eee17e977a48d8a9cfaaf58c2a8d6", [:mix], [], "hexpm"}, "makeup": {:hex, :makeup, "1.0.0", "671df94cf5a594b739ce03b0d0316aa64312cee2574b6a44becb83cd90fb05dc", [:mix], [{:nimble_parsec, "~> 0.5.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "a10c6eb62cca416019663129699769f0c2ccf39428b3bb3c0cb38c718a0c186d"}, "makeup_elixir": {:hex, :makeup_elixir, "0.14.0", "cf8b7c66ad1cff4c14679698d532f0b5d45a3968ffbcbfd590339cb57742f1ae", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "d4b316c7222a85bbaa2fd7c6e90e37e953257ad196dc229505137c5e505e9eff"}, "meck": {:hex, :meck, "0.8.13", "ffedb39f99b0b99703b8601c6f17c7f76313ee12de6b646e671e3188401f7866", [:rebar3], [], "hexpm", "d34f013c156db51ad57cc556891b9720e6a1c1df5fe2e15af999c84d6cebeb1a"}, "metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm", "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16"}, "mime": {:hex, :mime, "1.3.1", "30ce04ab3175b6ad0bdce0035cba77bba68b813d523d1aac73d9781b4d193cf8", [:mix], [], "hexpm", "6cbe761d6a0ca5a31a0931bf4c63204bceb64538e664a8ecf784a9a6f3b875f1"}, "mimerl": {:hex, :mimerl, "1.2.0", "67e2d3f571088d5cfd3e550c383094b47159f3eee8ffa08e64106cdf5e981be3", [:rebar3], [], "hexpm", "f278585650aa581986264638ebf698f8bb19df297f66ad91b18910dfc6e19323"}, + "mochiweb": {:hex, :mochiweb, "2.18.0", "eb55f1db3e6e960fac4e6db4e2db9ec3602cc9f30b86cd1481d56545c3145d2e", [:rebar3], [], "hexpm"}, "mock": {:hex, :mock, "0.3.4", "c5862eb3b8c64237f45f586cf00c9d892ba07bb48305a43319d428ce3c2897dd", [:mix], [{:meck, "~> 0.8.13", [hex: :meck, repo: "hexpm", optional: false]}], "hexpm", "e6d886252f1a41f4ba06ecf2b4c8d38760b34b1c08a11c28f7397b2e03995964"}, "mogrify": {:hex, :mogrify, "0.6.1", "de1b527514f2d95a7bbe9642eb556061afb337e220cf97adbf3a4e6438ed70af", [:mix], [], "hexpm", "3bc928d817974fa10cc11e6c89b9a9361e37e96dbbf3d868c41094ec05745dcd"}, "mox": {:hex, :mox, "0.5.1", "f86bb36026aac1e6f924a4b6d024b05e9adbed5c63e8daa069bd66fb3292165b", [:mix], [], "hexpm", "052346cf322311c49a0f22789f3698eea030eec09b8c47367f0686ef2634ae14"}, + "myhtmlex": {:git, "https://git.pleroma.social/pleroma/myhtmlex.git", "ad0097e2f61d4953bfef20fb6abddf23b87111e6", [ref: "ad0097e2f61d4953bfef20fb6abddf23b87111e6", submodules: true]}, "nimble_parsec": {:hex, :nimble_parsec, "0.5.3", "def21c10a9ed70ce22754fdeea0810dafd53c2db3219a0cd54cf5526377af1c6", [:mix], [], "hexpm", "589b5af56f4afca65217a1f3eb3fee7e79b09c40c742fddc1c312b3ac0b3399f"}, + "nodex": {:git, "https://git.pleroma.social/pleroma/nodex", "cb6730f943cfc6aad674c92161be23a8411f15d1", [ref: "cb6730f943cfc6aad674c92161be23a8411f15d1"]}, "oban": {:hex, :oban, "1.2.0", "7cca94d341be43d220571e28f69131c4afc21095b25257397f50973d3fc59b07", [:mix], [{:ecto_sql, "~> 3.1", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:postgrex, "~> 0.14", [hex: :postgrex, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ba5f8b3f7d76967b3e23cf8014f6a13e4ccb33431e4808f036709a7f822362ee"}, "open_api_spex": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/open_api_spex.git", "b862ebd78de0df95875cf46feb6e9607130dc2a8", [ref: "b862ebd78de0df95875cf46feb6e9607130dc2a8"]}, "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm", "17ef63abde837ad30680ea7f857dd9e7ced9476cdd7b0394432af4bfc241b960"}, "pbkdf2_elixir": {:hex, :pbkdf2_elixir, "0.12.4", "8dd29ed783f2e12195d7e0a4640effc0a7c37e6537da491f1db01839eee6d053", [:mix], [], "hexpm", "595d09db74cb093b1903381c9de423276a931a2480a46a1a5dc7f932a2a6375b"}, - "phoenix": {:hex, :phoenix, "1.4.12", "b86fa85a2ba336f5de068549de5ccceec356fd413264a9637e7733395d6cc4ea", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "58331ade6d77e1312a3d976f0fa41803b8f004b2b5f489193425bc46aea3ed30"}, + "phoenix": {:hex, :phoenix, "1.4.13", "67271ad69b51f3719354604f4a3f968f83aa61c19199343656c9caee057ff3b8", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ab765a0feddb81fc62e2116c827b5f068df85159c162bee760745276ad7ddc1b"}, "phoenix_ecto": {:hex, :phoenix_ecto, "4.1.0", "a044d0756d0464c5a541b4a0bf4bcaf89bffcaf92468862408290682c73ae50d", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "c5e666a341ff104d0399d8f0e4ff094559b2fde13a5985d4cb5023b2c2ac558b"}, "phoenix_html": {:hex, :phoenix_html, "2.14.0", "d8c6bc28acc8e65f8ea0080ee05aa13d912c8758699283b8d3427b655aabe284", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b0bb30eda478a06dbfbe96728061a93833db3861a49ccb516f839ecb08493fbb"}, "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.2", "496c303bdf1b2e98a9d26e89af5bba3ab487ba3a3735f74bf1f4064d2a845a3e", [:mix], [], "hexpm", "1f13f9f0f3e769a667a6b6828d29dec37497a082d195cc52dbef401a9b69bf38"}, "phoenix_swoosh": {:hex, :phoenix_swoosh, "0.2.0", "a7e0b32077cd6d2323ae15198839b05d9caddfa20663fd85787479e81f89520e", [:mix], [{:phoenix, "~> 1.0", [hex: :phoenix, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.2", [hex: :phoenix_html, repo: "hexpm", optional: false]}, {:swoosh, "~> 0.1", [hex: :swoosh, repo: "hexpm", optional: false]}], "hexpm", "ebf1bfa7b3c1c850c04929afe02e2e0d7ab135e0706332c865de03e761676b1f"}, - "plug": {:hex, :plug, "1.8.3", "12d5f9796dc72e8ac9614e94bda5e51c4c028d0d428e9297650d09e15a684478", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "164baaeb382d19beee0ec484492aa82a9c8685770aee33b24ec727a0971b34d0"}, - "plug_cowboy": {:hex, :plug_cowboy, "2.1.1", "a196e4f428d7f5d6dba5ded314cc55cd0fbddf1110af620f75c0190e77844b33", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "15a3c34ffaccef8a0b575b8d39ab1b9044586d7dab917292cdc44cf2737df7f2"}, - "plug_crypto": {:hex, :plug_crypto, "1.0.0", "18e49317d3fa343f24620ed22795ec29d4a5e602d52d1513ccea0b07d8ea7d4d", [:mix], [], "hexpm", "73c1682f0e414cfb5d9b95c8e8cd6ffcfdae699e3b05e1db744e58b7be857759"}, + "plug": {:hex, :plug, "1.9.0", "8d7c4e26962283ff9f8f3347bd73838e2413fbc38b7bb5467d5924f68f3a5a4a", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "9902eda2c52ada2a096434682e99a2493f5d06a94d6ac6bcfff9805f952350f1"}, + "plug_cowboy": {:hex, :plug_cowboy, "2.1.2", "8b0addb5908c5238fac38e442e81b6fcd32788eaa03246b4d55d147c47c5805e", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "7d722581ce865a237e14da6d946f92704101740a256bd13ec91e63c0b122fc70"}, + "plug_crypto": {:hex, :plug_crypto, "1.1.2", "bdd187572cc26dbd95b87136290425f2b580a116d3fb1f564216918c9730d227", [:mix], [], "hexpm", "6b8b608f895b6ffcfad49c37c7883e8df98ae19c6a28113b02aa1e9c5b22d6b5"}, "plug_static_index_html": {:hex, :plug_static_index_html, "1.0.0", "840123d4d3975585133485ea86af73cb2600afd7f2a976f9f5fd8b3808e636a0", [:mix], [{:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "79fd4fcf34d110605c26560cbae8f23c603ec4158c08298bd4360fdea90bb5cf"}, "poison": {:hex, :poison, "3.1.0", "d9eb636610e096f86f25d9a46f35a9facac35609a7591b3be3326e99a0484665", [:mix], [], "hexpm", "fec8660eb7733ee4117b85f55799fd3833eb769a6df71ccf8903e8dc5447cfce"}, "poolboy": {:hex, :poolboy, "1.5.2", "392b007a1693a64540cead79830443abf5762f5d30cf50bc95cb2c1aaafa006b", [:rebar3], [], "hexpm", "dad79704ce5440f3d5a3681c8590b9dc25d1a561e8f5a9c995281012860901e3"}, "postgrex": {:hex, :postgrex, "0.15.3", "5806baa8a19a68c4d07c7a624ccdb9b57e89cbc573f1b98099e3741214746ae4", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "4737ce62a31747b4c63c12b20c62307e51bb4fcd730ca0c32c280991e0606c90"}, "pot": {:hex, :pot, "0.10.2", "9895c83bcff8cd22d9f5bc79dfc88a188176b261b618ad70d93faf5c5ca36e67", [:rebar3], [], "hexpm", "ac589a8e296b7802681e93cd0a436faec117ea63e9916709c628df31e17e91e2"}, - "prometheus": {:hex, :prometheus, "4.4.1", "1e96073b3ed7788053768fea779cbc896ddc3bdd9ba60687f2ad50b252ac87d6", [:mix, :rebar3], [], "hexpm", "d39f2ce1f3f29f3bf04f915aa3cf9c7cd4d2cee2f975e05f526e06cae9b7c902"}, + "prometheus": {:hex, :prometheus, "4.5.0", "8f4a2246fe0beb50af0f77c5e0a5bb78fe575c34a9655d7f8bc743aad1c6bf76", [:mix, :rebar3], [], "hexpm", "679b5215480fff612b8351f45c839d995a07ce403e42ff02f1c6b20960d41a4e"}, "prometheus_ecto": {:hex, :prometheus_ecto, "1.4.3", "3dd4da1812b8e0dbee81ea58bb3b62ed7588f2eae0c9e97e434c46807ff82311", [:mix], [{:ecto, "~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "8d66289f77f913b37eda81fd287340c17e61a447549deb28efc254532b2bed82"}, "prometheus_ex": {:hex, :prometheus_ex, "3.0.5", "fa58cfd983487fc5ead331e9a3e0aa622c67232b3ec71710ced122c4c453a02f", [:mix], [{:prometheus, "~> 4.0", [hex: :prometheus, repo: "hexpm", optional: false]}], "hexpm", "9fd13404a48437e044b288b41f76e64acd9735fb8b0e3809f494811dfa66d0fb"}, "prometheus_phoenix": {:hex, :prometheus_phoenix, "1.3.0", "c4b527e0b3a9ef1af26bdcfbfad3998f37795b9185d475ca610fe4388fdd3bb5", [:mix], [{:phoenix, "~> 1.4", [hex: :phoenix, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.3 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "c4d1404ac4e9d3d963da601db2a7d8ea31194f0017057fabf0cfb9bf5a6c8c75"}, From 788b7e7bbd2732e2af72adad1a660cf363486c6b Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 7 May 2020 14:52:37 +0200 Subject: [PATCH 149/156] Merge fixes. --- lib/pleroma/user.ex | 13 +-- .../web/activity_pub/object_validator.ex | 6 +- .../object_validators/common_validations.ex | 2 +- .../activity_pub/object_validator_test.exs | 1 - test/web/activity_pub/transmogrifier_test.exs | 107 ------------------ 5 files changed, 10 insertions(+), 119 deletions(-) diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 921bdd93a..2a6a23fec 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -1557,16 +1557,13 @@ def delete_user_activities(%User{ap_id: ap_id} = user) do defp delete_activity(%{data: %{"type" => "Create", "object" => object}}, user) do {:ok, delete_data, _} = Builder.delete(user, object) - Pipeline.common_pipeline(delete_data, local: true) + Pipeline.common_pipeline(delete_data, local: user.local) end - defp delete_activity(%{data: %{"type" => type}} = activity) when type in ["Like", "Announce"] do - actor = - activity.actor - |> get_cached_by_ap_id() - - {:ok, undo, _} = Builder.undo(actor, activity) - Pipeline.common_pipeline(undo, local: true) + defp delete_activity(%{data: %{"type" => type}} = activity, user) + when type in ["Like", "Announce"] do + {:ok, undo, _} = Builder.undo(user, activity) + Pipeline.common_pipeline(undo, local: user.local) end defp delete_activity(_activity, _user), do: "Doing nothing" diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex index 8e043287d..1f0431b36 100644 --- a/lib/pleroma/web/activity_pub/object_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validator.ex @@ -21,8 +21,10 @@ def validate(object, meta) def validate(%{"type" => "Undo"} = object, meta) do with {:ok, object} <- - object |> UndoValidator.cast_and_validate() |> Ecto.Changeset.apply_action(:insert) do - object = stringify_keys(object |> Map.from_struct()) + object + |> UndoValidator.cast_and_validate() + |> Ecto.Changeset.apply_action(:insert) do + object = stringify_keys(object) {:ok, object, meta} end end diff --git a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex index 2ada9f09e..aeef31945 100644 --- a/lib/pleroma/web/activity_pub/object_validators/common_validations.ex +++ b/lib/pleroma/web/activity_pub/object_validators/common_validations.ex @@ -48,7 +48,7 @@ def validate_object_presence(cng, options \\ []) do cng |> validate_change(field_name, fn field_name, object_id -> - object = Object.get_cached_by_ap_id(object_id) || Activity.get_by_ap_id(object) + object = Object.get_cached_by_ap_id(object_id) || Activity.get_by_ap_id(object_id) cond do !object -> diff --git a/test/web/activity_pub/object_validator_test.exs b/test/web/activity_pub/object_validator_test.exs index 4d90a0cf3..174be5ec6 100644 --- a/test/web/activity_pub/object_validator_test.exs +++ b/test/web/activity_pub/object_validator_test.exs @@ -107,7 +107,6 @@ test "it's invalid if the object doesn't exist", %{valid_post_delete: valid_post {:error, cng} = ObjectValidator.validate(missing_object, []) assert {:object, {"can't find object", []}} in cng.errors - assert length(cng.errors) == 1 end test "it's invalid if the actor of the object and the actor of delete are from different domains", diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index ae5d3bf92..4fd6c8b00 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -685,113 +685,6 @@ test "it works for incoming update activities which lock the account" do assert user.locked == true end - test "it works for incoming deletes" do - activity = insert(:note_activity) - deleting_user = insert(:user) - - data = - File.read!("test/fixtures/mastodon-delete.json") - |> Poison.decode!() - - object = - data["object"] - |> Map.put("id", activity.data["object"]) - - data = - data - |> Map.put("object", object) - |> Map.put("actor", deleting_user.ap_id) - - {:ok, %Activity{actor: actor, local: false, data: %{"id" => id}}} = - Transmogrifier.handle_incoming(data) - - assert id == data["id"] - refute Activity.get_by_id(activity.id) - assert actor == deleting_user.ap_id - end - - test "it fails for incoming deletes with spoofed origin" do - activity = insert(:note_activity) - - data = - File.read!("test/fixtures/mastodon-delete.json") - |> Poison.decode!() - - object = - data["object"] - |> Map.put("id", activity.data["object"]) - - data = - data - |> Map.put("object", object) - - assert capture_log(fn -> - :error = Transmogrifier.handle_incoming(data) - end) =~ - "[error] Could not decode user at fetch http://mastodon.example.org/users/gargron, {:error, :nxdomain}" - - assert Activity.get_by_id(activity.id) - end - - @tag capture_log: true - test "it works for incoming user deletes" do - %{ap_id: ap_id} = - insert(:user, ap_id: "http://mastodon.example.org/users/admin", local: false) - - data = - File.read!("test/fixtures/mastodon-delete-user.json") - |> Poison.decode!() - - {:ok, _} = Transmogrifier.handle_incoming(data) - ObanHelpers.perform_all() - - refute User.get_cached_by_ap_id(ap_id) - end - - test "it fails for incoming user deletes with spoofed origin" do - %{ap_id: ap_id} = insert(:user) - - data = - File.read!("test/fixtures/mastodon-delete-user.json") - |> Poison.decode!() - |> Map.put("actor", ap_id) - - assert capture_log(fn -> - assert :error == Transmogrifier.handle_incoming(data) - end) =~ "Object containment failed" - - assert User.get_cached_by_ap_id(ap_id) - end - - test "it works for incoming unannounces with an existing notice" do - user = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "hey"}) - - announce_data = - File.read!("test/fixtures/mastodon-announce.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - {:ok, %Activity{data: announce_data, local: false}} = - Transmogrifier.handle_incoming(announce_data) - - data = - File.read!("test/fixtures/mastodon-undo-announce.json") - |> Poison.decode!() - |> Map.put("object", announce_data) - |> Map.put("actor", announce_data["actor"]) - - {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) - - assert data["type"] == "Undo" - assert object_data = data["object"] - assert object_data["type"] == "Announce" - assert object_data["object"] == activity.data["object"] - - assert object_data["id"] == - "http://mastodon.example.org/users/admin/statuses/99542391527669785/activity" - end - test "it works for incomming unfollows with an existing follow" do user = insert(:user) From d11eea62b139ce16d7dffbd574947b2550df238f Mon Sep 17 00:00:00 2001 From: lain Date: Thu, 7 May 2020 15:09:37 +0200 Subject: [PATCH 150/156] Credo fixes --- lib/pleroma/web/activity_pub/object_validator.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex index 1f0431b36..4782cd8f3 100644 --- a/lib/pleroma/web/activity_pub/object_validator.ex +++ b/lib/pleroma/web/activity_pub/object_validator.ex @@ -13,8 +13,8 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidator do alias Pleroma.User alias Pleroma.Web.ActivityPub.ObjectValidators.DeleteValidator alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator - alias Pleroma.Web.ActivityPub.ObjectValidators.UndoValidator alias Pleroma.Web.ActivityPub.ObjectValidators.Types + alias Pleroma.Web.ActivityPub.ObjectValidators.UndoValidator @spec validate(map(), keyword()) :: {:ok, map(), keyword()} | {:error, any()} def validate(object, meta) From eb1f2fcbc62735a6e1a24c7c5591061d9391e808 Mon Sep 17 00:00:00 2001 From: rinpatch Date: Thu, 7 May 2020 16:13:24 +0300 Subject: [PATCH 151/156] Streamer: Fix wrong argument order when rendering activities to authenticated user Closes #1747 --- lib/pleroma/web/mastodon_api/websocket_handler.ex | 2 +- lib/pleroma/web/views/streamer_view.ex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/web/mastodon_api/websocket_handler.ex b/lib/pleroma/web/mastodon_api/websocket_handler.ex index 6ef3fe2dd..e2ffd02d0 100644 --- a/lib/pleroma/web/mastodon_api/websocket_handler.ex +++ b/lib/pleroma/web/mastodon_api/websocket_handler.ex @@ -78,7 +78,7 @@ def websocket_info({:render_with_user, view, template, item}, state) do user = %User{} = User.get_cached_by_ap_id(state.user.ap_id) unless Streamer.filtered_by_user?(user, item) do - websocket_info({:text, view.render(template, user, item)}, %{state | user: user}) + websocket_info({:text, view.render(template, item, user)}, %{state | user: user}) else {:ok, state} end diff --git a/lib/pleroma/web/views/streamer_view.ex b/lib/pleroma/web/views/streamer_view.ex index 443868878..237b29ded 100644 --- a/lib/pleroma/web/views/streamer_view.ex +++ b/lib/pleroma/web/views/streamer_view.ex @@ -25,7 +25,7 @@ def render("update.json", %Activity{} = activity, %User{} = user) do |> Jason.encode!() end - def render("notification.json", %User{} = user, %Notification{} = notify) do + def render("notification.json", %Notification{} = notify, %User{} = user) do %{ event: "notification", payload: From ea01e647df4466975b9382f123f0a2aa35ebfe76 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Thu, 7 May 2020 09:13:43 -0500 Subject: [PATCH 152/156] Test Direct, Public, and Favorite notifications with privacy option --- test/web/push/impl_test.exs | 60 +++++++++++++++++++++++++++++++++++-- 1 file changed, 58 insertions(+), 2 deletions(-) diff --git a/test/web/push/impl_test.exs b/test/web/push/impl_test.exs index 3de911810..b855d72ba 100644 --- a/test/web/push/impl_test.exs +++ b/test/web/push/impl_test.exs @@ -193,7 +193,7 @@ test "renders title for create activity with direct visibility" do end describe "build_content/3" do - test "returns info content for direct message with enabled privacy option" do + test "hides details for notifications when privacy option enabled" do user = insert(:user, nickname: "Bob") user2 = insert(:user, nickname: "Rob", notification_settings: %{privacy_option: true}) @@ -211,9 +211,35 @@ test "returns info content for direct message with enabled privacy option" do assert Impl.build_content(notif, actor, object) == %{ body: "New Direct Message" } + + {:ok, activity} = + CommonAPI.post(user, %{ + "visibility" => "public", + "status" => " "public", + "status" => + "Lorem ipsum dolor sit amet, consectetur :firefox: adipiscing elit. Fusce sagittis finibus turpis." + }) + + notif = insert(:notification, user: user2, activity: activity) + + actor = User.get_cached_by_ap_id(notif.activity.data["actor"]) + object = Object.normalize(activity) + + assert Impl.build_content(notif, actor, object) == %{ + body: + "@Bob: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce sagittis fini...", + title: "New Mention" + } + + {:ok, activity} = CommonAPI.favorite(user, activity.id) + + notif = insert(:notification, user: user2, activity: activity) + + actor = User.get_cached_by_ap_id(notif.activity.data["actor"]) + object = Object.normalize(activity) + + assert Impl.build_content(notif, actor, object) == %{ + body: "@Bob has favorited your post", + title: "New Favorite" + } end end end From a081135365c2b9d7bc81ee84baffbc3c2be68e8c Mon Sep 17 00:00:00 2001 From: Maksim Pechnikov Date: Fri, 8 May 2020 12:06:24 +0300 Subject: [PATCH 153/156] revert mix.lock --- mix.lock | 54 ++++++++++++++++++++++++++---------------------------- 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/mix.lock b/mix.lock index 11234ae14..c400202b7 100644 --- a/mix.lock +++ b/mix.lock @@ -2,8 +2,8 @@ "accept": {:hex, :accept, "0.3.5", "b33b127abca7cc948bbe6caa4c263369abf1347cfa9d8e699c6d214660f10cd1", [:rebar3], [], "hexpm", "11b18c220bcc2eab63b5470c038ef10eb6783bcb1fcdb11aa4137defa5ac1bb8"}, "auto_linker": {:git, "https://git.pleroma.social/pleroma/auto_linker.git", "95e8188490e97505c56636c1379ffdf036c1fdde", [ref: "95e8188490e97505c56636c1379ffdf036c1fdde"]}, "base62": {:hex, :base62, "1.2.1", "4866763e08555a7b3917064e9eef9194c41667276c51b59de2bc42c6ea65f806", [:mix], [{:custom_base, "~> 0.2.1", [hex: :custom_base, repo: "hexpm", optional: false]}], "hexpm", "3b29948de2013d3f93aa898c884a9dff847e7aec75d9d6d8c1dc4c61c2716c42"}, - "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm", "fab09b20e3f5db886725544cbcf875b8e73ec93363954eb8a1a9ed834aa8c1f9"}, - "bbcode": {:hex, :bbcode, "0.1.1", "0023e2c7814119b2e620b7add67182e3f6019f92bfec9a22da7e99821aceba70", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5a981b98ac7d366a9b6bf40eac389aaf4d6e623c631e6b6f8a6b571efaafd338"}, + "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm"}, + "bbcode": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/bbcode.git", "f2d267675e9a7e1ad1ea9beb4cc23382762b66c2", [ref: "v0.2.0"]}, "bbcode_pleroma": {:hex, :bbcode_pleroma, "0.2.0", "d36f5bca6e2f62261c45be30fa9b92725c0655ad45c99025cb1c3e28e25803ef", [:mix], [{:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "19851074419a5fedb4ef49e1f01b30df504bb5dbb6d6adfc135238063bebd1c3"}, "benchee": {:hex, :benchee, "1.0.1", "66b211f9bfd84bd97e6d1beaddf8fc2312aaabe192f776e8931cb0c16f53a521", [:mix], [{:deep_merge, "~> 1.0", [hex: :deep_merge, repo: "hexpm", optional: false]}], "hexpm", "3ad58ae787e9c7c94dd7ceda3b587ec2c64604563e049b2a0e8baafae832addb"}, "bunt": {:hex, :bunt, "0.2.0", "951c6e801e8b1d2cbe58ebbd3e616a869061ddadcc4863d0a2182541acae9a38", [:mix], [], "hexpm", "7af5c7e09fe1d40f76c8e4f9dd2be7cebd83909f31fee7cd0e9eadc567da8353"}, @@ -19,47 +19,47 @@ "cowboy": {:hex, :cowboy, "2.7.0", "91ed100138a764355f43316b1d23d7ff6bdb0de4ea618cb5d8677c93a7a2f115", [:rebar3], [{:cowlib, "~> 2.8.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "~> 1.7.1", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "04fd8c6a39edc6aaa9c26123009200fc61f92a3a94f3178c527b70b767c6e605"}, "cowlib": {:hex, :cowlib, "2.8.0", "fd0ff1787db84ac415b8211573e9a30a3ebe71b5cbff7f720089972b2319c8a4", [:rebar3], [], "hexpm", "79f954a7021b302186a950a32869dbc185523d99d3e44ce430cd1f3289f41ed4"}, "credo": {:hex, :credo, "1.1.5", "caec7a3cadd2e58609d7ee25b3931b129e739e070539ad1a0cd7efeeb47014f4", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "d0bbd3222607ccaaac5c0340f7f525c627ae4d7aee6c8c8c108922620c5b6446"}, - "crontab": {:hex, :crontab, "1.1.8", "2ce0e74777dfcadb28a1debbea707e58b879e6aa0ffbf9c9bb540887bce43617", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "48e513299cd28b12c77266c0ed5b1c844368e5c1823724994ae84834f43d6bbe"}, + "crontab": {:hex, :crontab, "1.1.8", "2ce0e74777dfcadb28a1debbea707e58b879e6aa0ffbf9c9bb540887bce43617", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm"}, "crypt": {:git, "https://github.com/msantos/crypt", "1f2b58927ab57e72910191a7ebaeff984382a1d3", [ref: "1f2b58927ab57e72910191a7ebaeff984382a1d3"]}, "custom_base": {:hex, :custom_base, "0.2.1", "4a832a42ea0552299d81652aa0b1f775d462175293e99dfbe4d7dbaab785a706", [:mix], [], "hexpm", "8df019facc5ec9603e94f7270f1ac73ddf339f56ade76a721eaa57c1493ba463"}, "db_connection": {:hex, :db_connection, "2.2.1", "caee17725495f5129cb7faebde001dc4406796f12a62b8949f4ac69315080566", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}], "hexpm", "2b02ece62d9f983fcd40954e443b7d9e6589664380e5546b2b9b523cd0fb59e1"}, "decimal": {:hex, :decimal, "1.8.1", "a4ef3f5f3428bdbc0d35374029ffcf4ede8533536fa79896dd450168d9acdf3c", [:mix], [], "hexpm", "3cb154b00225ac687f6cbd4acc4b7960027c757a5152b369923ead9ddbca7aec"}, "deep_merge": {:hex, :deep_merge, "1.0.0", "b4aa1a0d1acac393bdf38b2291af38cb1d4a52806cf7a4906f718e1feb5ee961", [:mix], [], "hexpm", "ce708e5f094b9cd4e8f2be4f00d2f4250c4095be93f8cd6d018c753894885430"}, - "earmark": {:hex, :earmark, "1.4.2", "3aa0bd23bc4c61cf2f1e5d752d1bb470560a6f8539974f767a38923bb20e1d7f", [:mix], [], "hexpm", "5e8806285d8a3a8999bd38e4a73c58d28534c856bc38c44818e5ba85bbda16fb"}, - "ecto": {:hex, :ecto, "3.4.2", "6890af71025769bd27ef62b1ed1925cfe23f7f0460bcb3041da4b705215ff23e", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "b3959b8a83e086202a4bd86b4b5e6e71f9f1840813de14a57d502d3fc2ef7132"}, + "earmark": {:hex, :earmark, "1.4.3", "364ca2e9710f6bff494117dbbd53880d84bebb692dafc3a78eb50aa3183f2bfd", [:mix], [], "hexpm", "8cf8a291ebf1c7b9539e3cddb19e9cef066c2441b1640f13c34c1d3cfc825fec"}, + "ecto": {:hex, :ecto, "3.4.0", "a7a83ab8359bf816ce729e5e65981ce25b9fc5adfc89c2ea3980f4fed0bfd7c1", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "5eed18252f5b5bbadec56a24112b531343507dbe046273133176b12190ce19cc"}, "ecto_enum": {:hex, :ecto_enum, "1.4.0", "d14b00e04b974afc69c251632d1e49594d899067ee2b376277efd8233027aec8", [:mix], [{:ecto, ">= 3.0.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:ecto_sql, "> 3.0.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:mariaex, ">= 0.0.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: true]}], "hexpm", "8fb55c087181c2b15eee406519dc22578fa60dd82c088be376d0010172764ee4"}, "ecto_sql": {:hex, :ecto_sql, "3.3.4", "aa18af12eb875fbcda2f75e608b3bd534ebf020fc4f6448e4672fcdcbb081244", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.4 or ~> 3.3.3", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.3.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "5eccbdbf92e3c6f213007a82d5dbba4cd9bb659d1a21331f89f408e4c0efd7a8"}, - "esshd": {:hex, :esshd, "0.1.0", "6f93a2062adb43637edad0ea7357db2702a4b80dd9683482fe00f5134e97f4c1", [:mix], [], "hexpm", "98d0f3c6f4b8a0333170df770c6fe772b3d04564fb514c1a09504cf5ab2f48a5"}, + "esshd": {:hex, :esshd, "0.1.1", "d4dd4c46698093a40a56afecce8a46e246eb35463c457c246dacba2e056f31b5", [:mix], [], "hexpm", "d73e341e3009d390aa36387dc8862860bf9f874c94d9fd92ade2926376f49981"}, "eternal": {:hex, :eternal, "1.2.1", "d5b6b2499ba876c57be2581b5b999ee9bdf861c647401066d3eeed111d096bc4", [:mix], [], "hexpm", "b14f1dc204321429479c569cfbe8fb287541184ed040956c8862cb7a677b8406"}, "ex2ms": {:hex, :ex2ms, "1.5.0", "19e27f9212be9a96093fed8cdfbef0a2b56c21237196d26760f11dfcfae58e97", [:mix], [], "hexpm"}, "ex_aws": {:hex, :ex_aws, "2.1.1", "1e4de2106cfbf4e837de41be41cd15813eabc722315e388f0d6bb3732cec47cd", [:mix], [{:configparser_ex, "~> 4.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "1.6.3 or 1.6.5 or 1.7.1 or 1.8.6 or ~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:poison, ">= 1.2.0", [hex: :poison, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "06b6fde12b33bb6d65d5d3493e903ba5a56d57a72350c15285a4298338089e10"}, "ex_aws_s3": {:hex, :ex_aws_s3, "2.0.2", "c0258bbdfea55de4f98f0b2f0ca61fe402cc696f573815134beb1866e778f47b", [:mix], [{:ex_aws, "~> 2.0", [hex: :ex_aws, repo: "hexpm", optional: false]}, {:sweet_xml, ">= 0.0.0", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "0569f5b211b1a3b12b705fe2a9d0e237eb1360b9d76298028df2346cad13097a"}, "ex_const": {:hex, :ex_const, "0.2.4", "d06e540c9d834865b012a17407761455efa71d0ce91e5831e86881b9c9d82448", [:mix], [], "hexpm", "96fd346610cc992b8f896ed26a98be82ac4efb065a0578f334a32d60a3ba9767"}, - "ex_doc": {:hex, :ex_doc, "0.21.2", "caca5bc28ed7b3bdc0b662f8afe2bee1eedb5c3cf7b322feeeb7c6ebbde089d6", [:mix], [{:earmark, "~> 1.3.3 or ~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "f1155337ae17ff7a1255217b4c1ceefcd1860b7ceb1a1874031e7a861b052e39"}, + "ex_doc": {:hex, :ex_doc, "0.21.3", "857ec876b35a587c5d9148a2512e952e24c24345552259464b98bfbb883c7b42", [:mix], [{:earmark, "~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "0db1ee8d1547ab4877c5b5dffc6604ef9454e189928d5ba8967d4a58a801f161"}, "ex_machina": {:hex, :ex_machina, "2.3.0", "92a5ad0a8b10ea6314b876a99c8c9e3f25f4dde71a2a835845b136b9adaf199a", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:ecto_sql, "~> 3.0", [hex: :ecto_sql, repo: "hexpm", optional: true]}], "hexpm", "b84f6af156264530b312a8ab98ac6088f6b77ae5fe2058305c81434aa01fbaf9"}, - "ex_syslogger": {:hex, :ex_syslogger, "1.5.0", "bc936ee3fd13d9e592cb4c3a1e8a55fccd33b05e3aa7b185f211f3ed263ff8f0", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.0.5", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "f3b4b184dcdd5f356b7c26c6cd72ab0918ba9dfb4061ccfaf519e562942af87b"}, + "ex_syslogger": {:hex, :ex_syslogger, "1.5.2", "72b6aa2d47a236e999171f2e1ec18698740f40af0bd02c8c650bf5f1fd1bac79", [:mix], [{:poison, ">= 1.5.0", [hex: :poison, repo: "hexpm", optional: true]}, {:syslog, "~> 1.1.0", [hex: :syslog, repo: "hexpm", optional: false]}], "hexpm", "ab9fab4136dbc62651ec6f16fa4842f10cf02ab4433fa3d0976c01be99398399"}, "excoveralls": {:hex, :excoveralls, "0.12.2", "a513defac45c59e310ac42fcf2b8ae96f1f85746410f30b1ff2b710a4b6cd44b", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "151c476331d49b45601ffc45f43cb3a8beb396b02a34e3777fea0ad34ae57d89"}, - "fast_html": {:hex, :fast_html, "1.0.1", "5bc7df4dc4607ec2c314c16414e4111d79a209956c4f5df96602d194c61197f9", [:make, :mix], [], "hexpm", "18e627dd62051a375ef94b197f41e8027c3e8eef0180ab8f81e0543b3dc6900a"}, - "fast_sanitize": {:hex, :fast_sanitize, "0.1.6", "60a5ae96879956dea409a91a77f5dd2994c24cc10f80eefd8f9892ee4c0c7b25", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b73f50f0cb522dd0331ea8e8c90b408de42c50f37641219d6364f0e3e7efd22c"}, + "fast_html": {:hex, :fast_html, "1.0.3", "2cc0d4b68496266a1530e0c852cafeaede0bd10cfdee26fda50dc696c203162f", [:make, :mix], [], "hexpm", "ab3d782b639d3c4655fbaec0f9d032c91f8cab8dd791ac7469c2381bc7c32f85"}, + "fast_sanitize": {:hex, :fast_sanitize, "0.1.7", "2a7cd8734c88a2de6de55022104f8a3b87f1fdbe8bbf131d9049764b53d50d0d", [:mix], [{:fast_html, "~> 1.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "f39fe8ea08fbac17487c30bf09b7d9f3e12472e51fb07a88ffeb8fd17da8ab67"}, "flake_id": {:hex, :flake_id, "0.1.0", "7716b086d2e405d09b647121a166498a0d93d1a623bead243e1f74216079ccb3", [:mix], [{:base62, "~> 1.2", [hex: :base62, repo: "hexpm", optional: false]}, {:ecto, ">= 2.0.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "31fc8090fde1acd267c07c36ea7365b8604055f897d3a53dd967658c691bd827"}, - "floki": {:hex, :floki, "0.26.0", "4df88977e2e357c6720e1b650f613444bfb48c5acfc6a0c646ab007d08ad13bf", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "e7b66ce7feef5518a9cd9fc7b52dd62a64028bd9cb6d6ad282a0f0fc90a4ae52"}, + "floki": {:hex, :floki, "0.25.0", "b1c9ddf5f32a3a90b43b76f3386ca054325dc2478af020e87b5111c19f2284ac", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "631f4e627c46d5ecd347df5a2accdaf0621c77c3693c5b75a8ad58e84c61f242"}, "gen_smtp": {:hex, :gen_smtp, "0.15.0", "9f51960c17769b26833b50df0b96123605a8024738b62db747fece14eb2fbfcc", [:rebar3], [], "hexpm", "29bd14a88030980849c7ed2447b8db6d6c9278a28b11a44cafe41b791205440f"}, - "gen_stage": {:hex, :gen_stage, "0.14.3", "d0c66f1c87faa301c1a85a809a3ee9097a4264b2edf7644bf5c123237ef732bf", [:mix], [], "hexpm", "8453e2289d94c3199396eb517d65d6715ef26bcae0ee83eb5ff7a84445458d76"}, - "gen_state_machine": {:hex, :gen_state_machine, "2.0.5", "9ac15ec6e66acac994cc442dcc2c6f9796cf380ec4b08267223014be1c728a95", [:mix], [], "hexpm", "5cacd405e72b2609a7e1f891bddb80c53d0b3b7b0036d1648e7382ca108c41c8"}, - "gettext": {:hex, :gettext, "0.17.1", "8baab33482df4907b3eae22f719da492cee3981a26e649b9c2be1c0192616962", [:mix], [], "hexpm", "f7d97341e536f95b96eef2988d6d4230f7262cf239cda0e2e63123ee0b717222"}, + "gen_stage": {:hex, :gen_stage, "0.14.3", "d0c66f1c87faa301c1a85a809a3ee9097a4264b2edf7644bf5c123237ef732bf", [:mix], [], "hexpm"}, + "gen_state_machine": {:hex, :gen_state_machine, "2.0.5", "9ac15ec6e66acac994cc442dcc2c6f9796cf380ec4b08267223014be1c728a95", [:mix], [], "hexpm"}, + "gettext": {:hex, :gettext, "0.17.4", "f13088e1ec10ce01665cf25f5ff779e7df3f2dc71b37084976cf89d1aa124d5c", [:mix], [], "hexpm", "3c75b5ea8288e2ee7ea503ff9e30dfe4d07ad3c054576a6e60040e79a801e14d"}, "gun": {:git, "https://github.com/ninenines/gun.git", "e1a69b36b180a574c0ac314ced9613fdd52312cc", [ref: "e1a69b36b180a574c0ac314ced9613fdd52312cc"]}, "hackney": {:hex, :hackney, "1.15.2", "07e33c794f8f8964ee86cebec1a8ed88db5070e52e904b8f12209773c1036085", [:rebar3], [{:certifi, "2.5.1", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.5", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "e0100f8ef7d1124222c11ad362c857d3df7cb5f4204054f9f0f4a728666591fc"}, "html_entities": {:hex, :html_entities, "0.5.1", "1c9715058b42c35a2ab65edc5b36d0ea66dd083767bef6e3edb57870ef556549", [:mix], [], "hexpm", "30efab070904eb897ff05cd52fa61c1025d7f8ef3a9ca250bc4e6513d16c32de"}, "html_sanitize_ex": {:hex, :html_sanitize_ex, "1.3.0", "f005ad692b717691203f940c686208aa3d8ffd9dd4bb3699240096a51fa9564e", [:mix], [{:mochiweb, "~> 2.15", [hex: :mochiweb, repo: "hexpm", optional: false]}], "hexpm"}, "http_signatures": {:git, "https://git.pleroma.social/pleroma/http_signatures.git", "293d77bb6f4a67ac8bde1428735c3b42f22cbb30", [ref: "293d77bb6f4a67ac8bde1428735c3b42f22cbb30"]}, - "httpoison": {:hex, :httpoison, "1.6.1", "2ce5bf6e535cd0ab02e905ba8c276580bab80052c5c549f53ddea52d72e81f33", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "89149056039084024a284cd703b2d1900d584958dba432132cb21ef35aed7487"}, + "httpoison": {:hex, :httpoison, "1.6.2", "ace7c8d3a361cebccbed19c283c349b3d26991eff73a1eaaa8abae2e3c8089b6", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "aa2c74bd271af34239a3948779612f87df2422c2fdcfdbcec28d9c105f0773fe"}, "idna": {:hex, :idna, "6.0.0", "689c46cbcdf3524c44d5f3dde8001f364cd7608a99556d8fbd8239a5798d4c10", [:rebar3], [{:unicode_util_compat, "0.4.1", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "4bdd305eb64e18b0273864920695cb18d7a2021f31a11b9c5fbcd9a253f936e2"}, "inet_cidr": {:hex, :inet_cidr, "1.0.4", "a05744ab7c221ca8e395c926c3919a821eb512e8f36547c062f62c4ca0cf3d6e", [:mix], [], "hexpm", "64a2d30189704ae41ca7dbdd587f5291db5d1dda1414e0774c29ffc81088c1bc"}, "jason": {:hex, :jason, "1.2.0", "10043418c42d2493d0ee212d3fddd25d7ffe484380afad769a0a38795938e448", [:mix], [{:decimal, "~> 1.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "116747dbe057794c3a3e4e143b7c8390b29f634e16c78a7f59ba75bfa6852e7f"}, - "joken": {:hex, :joken, "2.1.0", "bf21a73105d82649f617c5e59a7f8919aa47013d2519ebcc39d998d8d12adda9", [:mix], [{:jose, "~> 1.9", [hex: :jose, repo: "hexpm", optional: false]}], "hexpm", "eb02df7d5526df13063397e051b926b7006d5986d66f399eefc474f560cdad6a"}, - "jose": {:hex, :jose, "1.9.0", "4167c5f6d06ffaebffd15cdb8da61a108445ef5e85ab8f5a7ad926fdf3ada154", [:mix, :rebar3], [{:base64url, "~> 0.0.1", [hex: :base64url, repo: "hexpm", optional: false]}], "hexpm", "6429c4fee52b2dda7861ee19a4f09c8c1ffa213bee3a1ec187828fde95d447ed"}, + "joken": {:hex, :joken, "2.2.0", "2daa1b12be05184aff7b5ace1d43ca1f81345962285fff3f88db74927c954d3a", [:mix], [{:jose, "~> 1.9", [hex: :jose, repo: "hexpm", optional: false]}], "hexpm", "b4f92e30388206f869dd25d1af628a1d99d7586e5cf0672f64d4df84c4d2f5e9"}, + "jose": {:hex, :jose, "1.10.1", "16d8e460dae7203c6d1efa3f277e25b5af8b659febfc2f2eb4bacf87f128b80a", [:mix, :rebar3], [], "hexpm", "3c7ddc8a9394b92891db7c2771da94bf819834a1a4c92e30857b7d582e2f8257"}, "jumper": {:hex, :jumper, "1.0.1", "3c00542ef1a83532b72269fab9f0f0c82bf23a35e27d278bfd9ed0865cecabff", [:mix], [], "hexpm", "318c59078ac220e966d27af3646026db9b5a5e6703cb2aa3e26bcfaba65b7433"}, - "libring": {:hex, :libring, "1.4.0", "41246ba2f3fbc76b3971f6bce83119dfec1eee17e977a48d8a9cfaaf58c2a8d6", [:mix], [], "hexpm", "1feaf05ee886815ad047cad7ede17d6910710986148ae09cf73eee2989717b81"}, + "libring": {:hex, :libring, "1.4.0", "41246ba2f3fbc76b3971f6bce83119dfec1eee17e977a48d8a9cfaaf58c2a8d6", [:mix], [], "hexpm"}, "makeup": {:hex, :makeup, "1.0.0", "671df94cf5a594b739ce03b0d0316aa64312cee2574b6a44becb83cd90fb05dc", [:mix], [{:nimble_parsec, "~> 0.5.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "a10c6eb62cca416019663129699769f0c2ccf39428b3bb3c0cb38c718a0c186d"}, "makeup_elixir": {:hex, :makeup_elixir, "0.14.0", "cf8b7c66ad1cff4c14679698d532f0b5d45a3968ffbcbfd590339cb57742f1ae", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "d4b316c7222a85bbaa2fd7c6e90e37e953257ad196dc229505137c5e505e9eff"}, "meck": {:hex, :meck, "0.8.13", "ffedb39f99b0b99703b8601c6f17c7f76313ee12de6b646e671e3188401f7866", [:rebar3], [], "hexpm", "d34f013c156db51ad57cc556891b9720e6a1c1df5fe2e15af999c84d6cebeb1a"}, @@ -71,41 +71,39 @@ "mogrify": {:hex, :mogrify, "0.6.1", "de1b527514f2d95a7bbe9642eb556061afb337e220cf97adbf3a4e6438ed70af", [:mix], [], "hexpm", "3bc928d817974fa10cc11e6c89b9a9361e37e96dbbf3d868c41094ec05745dcd"}, "mox": {:hex, :mox, "0.5.1", "f86bb36026aac1e6f924a4b6d024b05e9adbed5c63e8daa069bd66fb3292165b", [:mix], [], "hexpm", "052346cf322311c49a0f22789f3698eea030eec09b8c47367f0686ef2634ae14"}, "myhtmlex": {:git, "https://git.pleroma.social/pleroma/myhtmlex.git", "ad0097e2f61d4953bfef20fb6abddf23b87111e6", [ref: "ad0097e2f61d4953bfef20fb6abddf23b87111e6", submodules: true]}, - "nimble_parsec": {:hex, :nimble_parsec, "0.5.1", "c90796ecee0289dbb5ad16d3ad06f957b0cd1199769641c961cfe0b97db190e0", [:mix], [], "hexpm", "00e3ebdc821fb3a36957320d49e8f4bfa310d73ea31c90e5f925dc75e030da8f"}, + "nimble_parsec": {:hex, :nimble_parsec, "0.5.3", "def21c10a9ed70ce22754fdeea0810dafd53c2db3219a0cd54cf5526377af1c6", [:mix], [], "hexpm", "589b5af56f4afca65217a1f3eb3fee7e79b09c40c742fddc1c312b3ac0b3399f"}, "nodex": {:git, "https://git.pleroma.social/pleroma/nodex", "cb6730f943cfc6aad674c92161be23a8411f15d1", [ref: "cb6730f943cfc6aad674c92161be23a8411f15d1"]}, "oban": {:hex, :oban, "1.2.0", "7cca94d341be43d220571e28f69131c4afc21095b25257397f50973d3fc59b07", [:mix], [{:ecto_sql, "~> 3.1", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:postgrex, "~> 0.14", [hex: :postgrex, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ba5f8b3f7d76967b3e23cf8014f6a13e4ccb33431e4808f036709a7f822362ee"}, "open_api_spex": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/open_api_spex.git", "b862ebd78de0df95875cf46feb6e9607130dc2a8", [ref: "b862ebd78de0df95875cf46feb6e9607130dc2a8"]}, "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm", "17ef63abde837ad30680ea7f857dd9e7ced9476cdd7b0394432af4bfc241b960"}, "pbkdf2_elixir": {:hex, :pbkdf2_elixir, "0.12.4", "8dd29ed783f2e12195d7e0a4640effc0a7c37e6537da491f1db01839eee6d053", [:mix], [], "hexpm", "595d09db74cb093b1903381c9de423276a931a2480a46a1a5dc7f932a2a6375b"}, - "phoenix": {:hex, :phoenix, "1.4.10", "619e4a545505f562cd294df52294372d012823f4fd9d34a6657a8b242898c255", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "256ad7a140efadc3f0290470369da5bd3de985ec7c706eba07c2641b228974be"}, - "phoenix_ecto": {:hex, :phoenix_ecto, "4.0.0", "c43117a136e7399ea04ecaac73f8f23ee0ffe3e07acfcb8062fe5f4c9f0f6531", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "fe15d9fee5b82f5e64800502011ffe530650d42e1710ae9b14bc4c9be38bf303"}, - "phoenix_html": {:hex, :phoenix_html, "2.13.3", "850e292ff6e204257f5f9c4c54a8cb1f6fbc16ed53d360c2b780a3d0ba333867", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "8b01b3d6d39731ab18aa548d928b5796166d2500755f553725cfe967bafba7d9"}, + "phoenix": {:hex, :phoenix, "1.4.13", "67271ad69b51f3719354604f4a3f968f83aa61c19199343656c9caee057ff3b8", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ab765a0feddb81fc62e2116c827b5f068df85159c162bee760745276ad7ddc1b"}, + "phoenix_ecto": {:hex, :phoenix_ecto, "4.1.0", "a044d0756d0464c5a541b4a0bf4bcaf89bffcaf92468862408290682c73ae50d", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "c5e666a341ff104d0399d8f0e4ff094559b2fde13a5985d4cb5023b2c2ac558b"}, + "phoenix_html": {:hex, :phoenix_html, "2.14.0", "d8c6bc28acc8e65f8ea0080ee05aa13d912c8758699283b8d3427b655aabe284", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "b0bb30eda478a06dbfbe96728061a93833db3861a49ccb516f839ecb08493fbb"}, "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.2", "496c303bdf1b2e98a9d26e89af5bba3ab487ba3a3735f74bf1f4064d2a845a3e", [:mix], [], "hexpm", "1f13f9f0f3e769a667a6b6828d29dec37497a082d195cc52dbef401a9b69bf38"}, "phoenix_swoosh": {:hex, :phoenix_swoosh, "0.2.0", "a7e0b32077cd6d2323ae15198839b05d9caddfa20663fd85787479e81f89520e", [:mix], [{:phoenix, "~> 1.0", [hex: :phoenix, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.2", [hex: :phoenix_html, repo: "hexpm", optional: false]}, {:swoosh, "~> 0.1", [hex: :swoosh, repo: "hexpm", optional: false]}], "hexpm", "ebf1bfa7b3c1c850c04929afe02e2e0d7ab135e0706332c865de03e761676b1f"}, "plug": {:hex, :plug, "1.9.0", "8d7c4e26962283ff9f8f3347bd73838e2413fbc38b7bb5467d5924f68f3a5a4a", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "9902eda2c52ada2a096434682e99a2493f5d06a94d6ac6bcfff9805f952350f1"}, - "plug_cowboy": {:hex, :plug_cowboy, "2.1.0", "b75768153c3a8a9e8039d4b25bb9b14efbc58e9c4a6e6a270abff1cd30cbe320", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "6cd8ddd1bd1fbfa54d3fc61d4719c2057dae67615395d58d40437a919a46f132"}, - "plug_crypto": {:hex, :plug_crypto, "1.0.0", "18e49317d3fa343f24620ed22795ec29d4a5e602d52d1513ccea0b07d8ea7d4d", [:mix], [], "hexpm", "73c1682f0e414cfb5d9b95c8e8cd6ffcfdae699e3b05e1db744e58b7be857759"}, + "plug_cowboy": {:hex, :plug_cowboy, "2.1.2", "8b0addb5908c5238fac38e442e81b6fcd32788eaa03246b4d55d147c47c5805e", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "7d722581ce865a237e14da6d946f92704101740a256bd13ec91e63c0b122fc70"}, + "plug_crypto": {:hex, :plug_crypto, "1.1.2", "bdd187572cc26dbd95b87136290425f2b580a116d3fb1f564216918c9730d227", [:mix], [], "hexpm", "6b8b608f895b6ffcfad49c37c7883e8df98ae19c6a28113b02aa1e9c5b22d6b5"}, "plug_static_index_html": {:hex, :plug_static_index_html, "1.0.0", "840123d4d3975585133485ea86af73cb2600afd7f2a976f9f5fd8b3808e636a0", [:mix], [{:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "79fd4fcf34d110605c26560cbae8f23c603ec4158c08298bd4360fdea90bb5cf"}, "poison": {:hex, :poison, "3.1.0", "d9eb636610e096f86f25d9a46f35a9facac35609a7591b3be3326e99a0484665", [:mix], [], "hexpm", "fec8660eb7733ee4117b85f55799fd3833eb769a6df71ccf8903e8dc5447cfce"}, "poolboy": {:hex, :poolboy, "1.5.2", "392b007a1693a64540cead79830443abf5762f5d30cf50bc95cb2c1aaafa006b", [:rebar3], [], "hexpm", "dad79704ce5440f3d5a3681c8590b9dc25d1a561e8f5a9c995281012860901e3"}, "postgrex": {:hex, :postgrex, "0.15.3", "5806baa8a19a68c4d07c7a624ccdb9b57e89cbc573f1b98099e3741214746ae4", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "4737ce62a31747b4c63c12b20c62307e51bb4fcd730ca0c32c280991e0606c90"}, "pot": {:hex, :pot, "0.10.2", "9895c83bcff8cd22d9f5bc79dfc88a188176b261b618ad70d93faf5c5ca36e67", [:rebar3], [], "hexpm", "ac589a8e296b7802681e93cd0a436faec117ea63e9916709c628df31e17e91e2"}, - "prometheus": {:hex, :prometheus, "4.4.1", "1e96073b3ed7788053768fea779cbc896ddc3bdd9ba60687f2ad50b252ac87d6", [:mix, :rebar3], [], "hexpm", "d39f2ce1f3f29f3bf04f915aa3cf9c7cd4d2cee2f975e05f526e06cae9b7c902"}, + "prometheus": {:hex, :prometheus, "4.5.0", "8f4a2246fe0beb50af0f77c5e0a5bb78fe575c34a9655d7f8bc743aad1c6bf76", [:mix, :rebar3], [], "hexpm", "679b5215480fff612b8351f45c839d995a07ce403e42ff02f1c6b20960d41a4e"}, "prometheus_ecto": {:hex, :prometheus_ecto, "1.4.3", "3dd4da1812b8e0dbee81ea58bb3b62ed7588f2eae0c9e97e434c46807ff82311", [:mix], [{:ecto, "~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "8d66289f77f913b37eda81fd287340c17e61a447549deb28efc254532b2bed82"}, "prometheus_ex": {:hex, :prometheus_ex, "3.0.5", "fa58cfd983487fc5ead331e9a3e0aa622c67232b3ec71710ced122c4c453a02f", [:mix], [{:prometheus, "~> 4.0", [hex: :prometheus, repo: "hexpm", optional: false]}], "hexpm", "9fd13404a48437e044b288b41f76e64acd9735fb8b0e3809f494811dfa66d0fb"}, "prometheus_phoenix": {:hex, :prometheus_phoenix, "1.3.0", "c4b527e0b3a9ef1af26bdcfbfad3998f37795b9185d475ca610fe4388fdd3bb5", [:mix], [{:phoenix, "~> 1.4", [hex: :phoenix, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.3 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}], "hexpm", "c4d1404ac4e9d3d963da601db2a7d8ea31194f0017057fabf0cfb9bf5a6c8c75"}, "prometheus_plugs": {:hex, :prometheus_plugs, "1.1.5", "25933d48f8af3a5941dd7b621c889749894d8a1082a6ff7c67cc99dec26377c5", [:mix], [{:accept, "~> 0.1", [hex: :accept, repo: "hexpm", optional: false]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}, {:prometheus_process_collector, "~> 1.1", [hex: :prometheus_process_collector, repo: "hexpm", optional: true]}], "hexpm", "0273a6483ccb936d79ca19b0ab629aef0dba958697c94782bb728b920dfc6a79"}, "quack": {:hex, :quack, "0.1.1", "cca7b4da1a233757fdb44b3334fce80c94785b3ad5a602053b7a002b5a8967bf", [:mix], [{:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: false]}, {:tesla, "~> 1.2.0", [hex: :tesla, repo: "hexpm", optional: false]}], "hexpm", "d736bfa7444112eb840027bb887832a0e403a4a3437f48028c3b29a2dbbd2543"}, - "quantum": {:hex, :quantum, "2.3.4", "72a0e8855e2adc101459eac8454787cb74ab4169de6ca50f670e72142d4960e9", [:mix], [{:calendar, "~> 0.17", [hex: :calendar, repo: "hexpm", optional: true]}, {:crontab, "~> 1.1", [hex: :crontab, repo: "hexpm", optional: false]}, {:gen_stage, "~> 0.12", [hex: :gen_stage, repo: "hexpm", optional: false]}, {:swarm, "~> 3.3", [hex: :swarm, repo: "hexpm", optional: false]}, {:timex, "~> 3.1", [hex: :timex, repo: "hexpm", optional: true]}], "hexpm", "6de553ba9ac0668d3728b699d5065543f3e40c854154017461ee8c09038752da"}, "ranch": {:hex, :ranch, "1.7.1", "6b1fab51b49196860b733a49c07604465a47bdb78aa10c1c16a3d199f7f8c881", [:rebar3], [], "hexpm", "451d8527787df716d99dc36162fca05934915db0b6141bbdac2ea8d3c7afc7d7"}, "recon": {:hex, :recon, "2.5.0", "2f7fcbec2c35034bade2f9717f77059dc54eb4e929a3049ca7ba6775c0bd66cd", [:mix, :rebar3], [], "hexpm", "72f3840fedd94f06315c523f6cecf5b4827233bed7ae3fe135b2a0ebeab5e196"}, "remote_ip": {:git, "https://git.pleroma.social/pleroma/remote_ip.git", "b647d0deecaa3acb140854fe4bda5b7e1dc6d1c8", [ref: "b647d0deecaa3acb140854fe4bda5b7e1dc6d1c8"]}, "sleeplocks": {:hex, :sleeplocks, "1.1.1", "3d462a0639a6ef36cc75d6038b7393ae537ab394641beb59830a1b8271faeed3", [:rebar3], [], "hexpm", "84ee37aeff4d0d92b290fff986d6a95ac5eedf9b383fadfd1d88e9b84a1c02e1"}, "ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.5", "6eaf7ad16cb568bb01753dbbd7a95ff8b91c7979482b95f38443fe2c8852a79b", [:make, :mix, :rebar3], [], "hexpm", "13104d7897e38ed7f044c4de953a6c28597d1c952075eb2e328bc6d6f2bfc496"}, - "swarm": {:hex, :swarm, "3.4.0", "64f8b30055d74640d2186c66354b33b999438692a91be275bb89cdc7e401f448", [:mix], [{:gen_state_machine, "~> 2.0", [hex: :gen_state_machine, repo: "hexpm", optional: false]}, {:libring, "~> 1.0", [hex: :libring, repo: "hexpm", optional: false]}], "hexpm", "94884f84783fc1ba027aba8fe8a7dae4aad78c98e9f9c76667ec3471585c08c6"}, "sweet_xml": {:hex, :sweet_xml, "0.6.6", "fc3e91ec5dd7c787b6195757fbcf0abc670cee1e4172687b45183032221b66b8", [:mix], [], "hexpm", "2e1ec458f892ffa81f9f8386e3f35a1af6db7a7a37748a64478f13163a1f3573"}, "swoosh": {:hex, :swoosh, "0.23.5", "bfd9404bbf5069b1be2ffd317923ce57e58b332e25dbca2a35dedd7820dfee5a", [:mix], [{:cowboy, "~> 1.0.1 or ~> 1.1 or ~> 2.4", [hex: :cowboy, repo: "hexpm", optional: true]}, {:gen_smtp, "~> 0.13", [hex: :gen_smtp, repo: "hexpm", optional: true]}, {:hackney, "~> 1.9", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:mail, "~> 0.2", [hex: :mail, repo: "hexpm", optional: true]}, {:mime, "~> 1.1", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_cowboy, ">= 1.0.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}], "hexpm", "e3928e1d2889a308aaf3e42755809ac21cffd77cb58eef01cbfdab4ce2fd1e21"}, - "syslog": {:hex, :syslog, "1.0.6", "995970c9aa7feb380ac493302138e308d6e04fd57da95b439a6df5bb3bf75076", [:rebar3], [], "hexpm", "769ddfabd0d2a16f3f9c17eb7509951e0ca4f68363fb26f2ee51a8ec4a49881a"}, + "syslog": {:hex, :syslog, "1.1.0", "6419a232bea84f07b56dc575225007ffe34d9fdc91abe6f1b2f254fd71d8efc2", [:rebar3], [], "hexpm", "4c6a41373c7e20587be33ef841d3de6f3beba08519809329ecc4d27b15b659e1"}, "telemetry": {:hex, :telemetry, "0.4.1", "ae2718484892448a24470e6aa341bc847c3277bfb8d4e9289f7474d752c09c7f", [:rebar3], [], "hexpm", "4738382e36a0a9a2b6e25d67c960e40e1a2c95560b9f936d8e29de8cd858480f"}, "tesla": {:git, "https://git.pleroma.social/pleroma/elixir-libraries/tesla.git", "61b7503cef33f00834f78ddfafe0d5d9dec2270b", [ref: "61b7503cef33f00834f78ddfafe0d5d9dec2270b"]}, "timex": {:hex, :timex, "3.6.1", "efdf56d0e67a6b956cc57774353b0329c8ab7726766a11547e529357ffdc1d56", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 0.1.8 or ~> 0.5 or ~> 1.0.0", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm", "f354efb2400dd7a80fd9eb6c8419068c4f632da4ac47f3d8822d6e33f08bc852"}, From 6acbe45eb211286e747143f6bd6edaa5c2126657 Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 8 May 2020 11:30:31 +0200 Subject: [PATCH 154/156] Builder: Extract common features of likes and reactions. --- lib/pleroma/web/activity_pub/builder.ex | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/pleroma/web/activity_pub/builder.ex b/lib/pleroma/web/activity_pub/builder.ex index f6544d3f5..922a444a9 100644 --- a/lib/pleroma/web/activity_pub/builder.ex +++ b/lib/pleroma/web/activity_pub/builder.ex @@ -12,7 +12,7 @@ defmodule Pleroma.Web.ActivityPub.Builder do @spec emoji_react(User.t(), Object.t(), String.t()) :: {:ok, map(), keyword()} def emoji_react(actor, object, emoji) do - with {:ok, data, meta} <- like(actor, object) do + with {:ok, data, meta} <- object_action(actor, object) do data = data |> Map.put("content", emoji) @@ -64,6 +64,17 @@ def delete(actor, object_id) do @spec like(User.t(), Object.t()) :: {:ok, map(), keyword()} def like(actor, object) do + with {:ok, data, meta} <- object_action(actor, object) do + data = + data + |> Map.put("type", "Like") + + {:ok, data, meta} + end + end + + @spec object_action(User.t(), Object.t()) :: {:ok, map(), keyword()} + defp object_action(actor, object) do object_actor = User.get_cached_by_ap_id(object.data["actor"]) # Address the actor of the object, and our actor's follower collection if the post is public. @@ -85,7 +96,6 @@ def like(actor, object) do %{ "id" => Utils.generate_activity_id(), "actor" => actor.ap_id, - "type" => "Like", "object" => object.data["id"], "to" => to, "cc" => cc, From f1274c3326207ecba5086ee28f721b43a29eb14c Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 8 May 2020 11:41:13 +0200 Subject: [PATCH 155/156] Transmogrifier tests: Remove double tests. --- test/web/activity_pub/transmogrifier_test.exs | 81 ------------------- 1 file changed, 81 deletions(-) diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index 14c0f57ae..d783f57d2 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -325,87 +325,6 @@ test "it cleans up incoming notices which are not really DMs" do assert object_data["cc"] == to end - test "it works for incoming emoji reaction undos" do - user = insert(:user) - - {:ok, activity} = CommonAPI.post(user, %{"status" => "hello"}) - {:ok, reaction_activity} = CommonAPI.react_with_emoji(activity.id, user, "👌") - - data = - File.read!("test/fixtures/mastodon-undo-like.json") - |> Poison.decode!() - |> Map.put("object", reaction_activity.data["id"]) - |> Map.put("actor", user.ap_id) - - {:ok, activity} = Transmogrifier.handle_incoming(data) - - assert activity.actor == user.ap_id - assert activity.data["id"] == data["id"] - assert activity.data["type"] == "Undo" - end - - test "it returns an error for incoming unlikes wihout a like activity" do - user = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "leave a like pls"}) - - data = - File.read!("test/fixtures/mastodon-undo-like.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - assert Transmogrifier.handle_incoming(data) == :error - end - - test "it works for incoming unlikes with an existing like activity" do - user = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "leave a like pls"}) - - like_data = - File.read!("test/fixtures/mastodon-like.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - {:ok, %Activity{data: like_data, local: false}} = Transmogrifier.handle_incoming(like_data) - - data = - File.read!("test/fixtures/mastodon-undo-like.json") - |> Poison.decode!() - |> Map.put("object", like_data) - |> Map.put("actor", like_data["actor"]) - - {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) - - assert data["actor"] == "http://mastodon.example.org/users/admin" - assert data["type"] == "Undo" - assert data["id"] == "http://mastodon.example.org/users/admin#likes/2/undo" - assert data["object"] == "http://mastodon.example.org/users/admin#likes/2" - end - - test "it works for incoming unlikes with an existing like activity and a compact object" do - user = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "leave a like pls"}) - - like_data = - File.read!("test/fixtures/mastodon-like.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - {:ok, %Activity{data: like_data, local: false}} = Transmogrifier.handle_incoming(like_data) - - data = - File.read!("test/fixtures/mastodon-undo-like.json") - |> Poison.decode!() - |> Map.put("object", like_data["id"]) - |> Map.put("actor", like_data["actor"]) - - {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) - - assert data["actor"] == "http://mastodon.example.org/users/admin" - assert data["type"] == "Undo" - assert data["id"] == "http://mastodon.example.org/users/admin#likes/2/undo" - assert data["object"] == "http://mastodon.example.org/users/admin#likes/2" - end - test "it works for incoming emoji reactions" do user = insert(:user) {:ok, activity} = CommonAPI.post(user, %{"status" => "hello"}) From 7e9aaa0d0221311d831161d977c8b0e2a55b3439 Mon Sep 17 00:00:00 2001 From: lain Date: Fri, 8 May 2020 11:43:07 +0200 Subject: [PATCH 156/156] Transmogrifier tests: Remove more double tests. --- test/web/activity_pub/transmogrifier_test.exs | 37 ------------------- 1 file changed, 37 deletions(-) diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index d783f57d2..2914c90ea 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -325,43 +325,6 @@ test "it cleans up incoming notices which are not really DMs" do assert object_data["cc"] == to end - test "it works for incoming emoji reactions" do - user = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "hello"}) - - data = - File.read!("test/fixtures/emoji-reaction.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) - - assert data["actor"] == "http://mastodon.example.org/users/admin" - assert data["type"] == "EmojiReact" - assert data["id"] == "http://mastodon.example.org/users/admin#reactions/2" - assert data["object"] == activity.data["object"] - assert data["content"] == "👌" - end - - test "it reject invalid emoji reactions" do - user = insert(:user) - {:ok, activity} = CommonAPI.post(user, %{"status" => "hello"}) - - data = - File.read!("test/fixtures/emoji-reaction-too-long.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - assert {:error, _} = Transmogrifier.handle_incoming(data) - - data = - File.read!("test/fixtures/emoji-reaction-no-emoji.json") - |> Poison.decode!() - |> Map.put("object", activity.data["object"]) - - assert {:error, _} = Transmogrifier.handle_incoming(data) - end - test "it works for incoming announces" do data = File.read!("test/fixtures/mastodon-announce.json") |> Poison.decode!()

    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 adeO6AmhXr=_a5B&@$OxG9j!A7rvC$uV~I8Z diff --git a/priv/static/adminfe/static/js/chunk-88c9.e3583744.js.map b/priv/static/adminfe/static/js/chunk-88c9.e3583744.js.map deleted file mode 100644 index 20e503d0c633b4e7eda94948db6a3f78d548fc31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92387 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 diff --git a/priv/static/adminfe/static/js/chunk-970d.2457e066.js b/priv/static/adminfe/static/js/chunk-970d.2457e066.js new file mode 100644 index 0000000000000000000000000000000000000000..0f99d835e6fabf9afe148ffddff88e4a9552a5d7 GIT binary patch literal 26608 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 literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-970d.2457e066.js.map b/priv/static/adminfe/static/js/chunk-970d.2457e066.js.map new file mode 100644 index 0000000000000000000000000000000000000000..6896407b0d80225bf8a6f452960bbc462aa7981b GIT binary patch literal 100000 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 B<^%u$ literal 0 HcmV?d00001 diff --git a/priv/static/adminfe/static/js/chunk-cf57.3e45f57f.js b/priv/static/adminfe/static/js/chunk-cf57.3e45f57f.js deleted file mode 100644 index 2b4fd918f45d545b6ff3ab7f795810df2c9a5ae2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29728 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