:inbox, :outbox, :preferred_username,
:name, :summary, :icon, :image
+ has_one :public_key, serializer: ActivityPub::PublicKeySerializer
+
def id
account_url(object)
end
def image
full_asset_url(object.header.url(:original))
end
+
+ def public_key
+ object
+ end
end
--- /dev/null
+# frozen_string_literal: true
+
+class ActivityPub::PublicKeySerializer < ActiveModel::Serializer
+ attributes :id, :owner, :public_key_pem
+
+ def id
+ [ActivityPub::TagManager.instance.uri_for(object), '#main-key'].join
+ end
+
+ def owner
+ ActivityPub::TagManager.instance.uri_for(object)
+ end
+
+ def public_key_pem
+ object.public_key
+ end
+end