hometown/app/serializers/activitypub/follow_serializer.rb
Akihiko Odaki 161c72d66d Allow to dereference Follow object for ActivityPub (#5772)
* Allow to dereference Follow object for ActivityPub

* Accept IRI as object representation for Accept activity
2018-01-03 18:08:57 +01:00

28 lines
546 B
Ruby

# frozen_string_literal: true
class ActivityPub::FollowSerializer < ActiveModel::Serializer
attributes :type, :actor
attribute :id, if: :dereferencable?
attribute :virtual_object, key: :object
def id
ActivityPub::TagManager.instance.uri_for(object)
end
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
def dereferencable?
object.respond_to?(:object_type)
end
end