12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- # frozen_string_literal: true
- class ActivityPub::AddSerializer < ActivityPub::Serializer
- class UriSerializer < ActiveModel::Serializer
- include RoutingHelper
- def serializable_hash(*_args)
- ActivityPub::TagManager.instance.uri_for(object)
- end
- end
- def self.serializer_for(model, options)
- case model.class.name
- when 'Status'
- UriSerializer
- when 'FeaturedTag'
- ActivityPub::HashtagSerializer
- else
- super
- end
- end
- include RoutingHelper
- attributes :type, :actor, :target
- has_one :proper_object, key: :object
- def type
- 'Add'
- end
- def actor
- ActivityPub::TagManager.instance.uri_for(object.account)
- end
- def proper_object
- object
- end
- def target
- account_collection_url(object.account, :featured)
- end
- end
|