diff --git a/app/serializers/activitypub/accept_follow_serializer.rb b/app/serializers/activitypub/accept_follow_serializer.rb new file mode 100644 index 000000000..ce900bc78 --- /dev/null +++ b/app/serializers/activitypub/accept_follow_serializer.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class ActivityPub::AcceptFollowSerializer < ActiveModel::Serializer + attributes :type, :actor + + has_one :object, serializer: ActivityPub::FollowSerializer + + def type + 'Accept' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.target_account) + end +end diff --git a/app/serializers/activitypub/block_serializer.rb b/app/serializers/activitypub/block_serializer.rb new file mode 100644 index 000000000..a001b213b --- /dev/null +++ b/app/serializers/activitypub/block_serializer.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +class ActivityPub::BlockSerializer < ActiveModel::Serializer + attributes :type, :actor + attribute :virtual_object, key: :object + + def type + 'Block' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end + + def virtual_object + ActivityPub::TagManager.instance.uri_for(object.target_account) + end +end diff --git a/app/serializers/activitypub/delete_serializer.rb b/app/serializers/activitypub/delete_serializer.rb new file mode 100644 index 000000000..77098b1b0 --- /dev/null +++ b/app/serializers/activitypub/delete_serializer.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +class ActivityPub::DeleteSerializer < ActiveModel::Serializer + attributes :type, :actor + attribute :virtual_object, key: :object + + def type + 'Delete' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end + + def virtual_object + ActivityPub::TagManager.instance.uri_for(object) + end +end diff --git a/app/serializers/activitypub/follow_serializer.rb b/app/serializers/activitypub/follow_serializer.rb new file mode 100644 index 000000000..1953a2d7b --- /dev/null +++ b/app/serializers/activitypub/follow_serializer.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +class ActivityPub::FollowSerializer < ActiveModel::Serializer + attributes :type, :actor + attribute :virtual_object, key: :object + + def type + 'Follow' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end + + def virtual_object + ActivityPub::TagManager.instance.uri_for(object.target_account) + end +end diff --git a/app/serializers/activitypub/like_serializer.rb b/app/serializers/activitypub/like_serializer.rb new file mode 100644 index 000000000..4226913f5 --- /dev/null +++ b/app/serializers/activitypub/like_serializer.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +class ActivityPub::LikeSerializer < ActiveModel::Serializer + attributes :type, :actor + attribute :virtual_object, key: :object + + def type + 'Like' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end + + def virtual_object + ActivityPub::TagManager.instance.uri_for(object.status) + end +end diff --git a/app/serializers/activitypub/reject_follow_serializer.rb b/app/serializers/activitypub/reject_follow_serializer.rb new file mode 100644 index 000000000..28584d627 --- /dev/null +++ b/app/serializers/activitypub/reject_follow_serializer.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class ActivityPub::RejectFollowSerializer < ActiveModel::Serializer + attributes :type, :actor + + has_one :object, serializer: ActivityPub::FollowSerializer + + def type + 'Reject' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.target_account) + end +end diff --git a/app/serializers/activitypub/undo_block_serializer.rb b/app/serializers/activitypub/undo_block_serializer.rb new file mode 100644 index 000000000..f71faa729 --- /dev/null +++ b/app/serializers/activitypub/undo_block_serializer.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class ActivityPub::UndoBlockSerializer < ActiveModel::Serializer + attributes :type, :actor + + has_one :object, serializer: ActivityPub::BlockSerializer + + def type + 'Undo' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end +end diff --git a/app/serializers/activitypub/undo_follow_serializer.rb b/app/serializers/activitypub/undo_follow_serializer.rb new file mode 100644 index 000000000..fe91f5f1c --- /dev/null +++ b/app/serializers/activitypub/undo_follow_serializer.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class ActivityPub::UndoFollowSerializer < ActiveModel::Serializer + attributes :type, :actor + + has_one :object, serializer: ActivityPub::FollowSerializer + + def type + 'Undo' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end +end diff --git a/app/serializers/activitypub/undo_like_serializer.rb b/app/serializers/activitypub/undo_like_serializer.rb new file mode 100644 index 000000000..db9cd1d0d --- /dev/null +++ b/app/serializers/activitypub/undo_like_serializer.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class ActivityPub::UndoLikeSerializer < ActiveModel::Serializer + attributes :type, :actor + + has_one :object, serializer: ActivityPub::LikeSerializer + + def type + 'Undo' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object.account) + end +end diff --git a/app/serializers/activitypub/update_serializer.rb b/app/serializers/activitypub/update_serializer.rb new file mode 100644 index 000000000..322305da8 --- /dev/null +++ b/app/serializers/activitypub/update_serializer.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class ActivityPub::UpdateSerializer < ActiveModel::Serializer + attributes :type, :actor + + has_one :object, serializer: ActivityPub::ActorSerializer + + def type + 'Update' + end + + def actor + ActivityPub::TagManager.instance.uri_for(object) + end +end