Add VAPID public key to instance serializer (#28006)

Co-authored-by: Renaud Chaput <renchap@gmail.com>
This commit is contained in:
Emelia Smith 2023-11-29 09:34:36 +01:00 committed by GitHub
parent c40cfc5d09
commit 603b245cc6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 14 additions and 1 deletions

View file

@ -2,7 +2,10 @@
class REST::ApplicationSerializer < ActiveModel::Serializer
attributes :id, :name, :website, :scopes, :redirect_uri,
:client_id, :client_secret, :vapid_key
:client_id, :client_secret
# NOTE: Deprecated in 4.3.0, needs to be removed in 5.0.0
attribute :vapid_key
def id
object.id.to_s

View file

@ -48,6 +48,10 @@ class REST::InstanceSerializer < ActiveModel::Serializer
status: object.status_page_url,
},
vapid: {
public_key: Rails.configuration.x.vapid_public_key,
},
accounts: {
max_featured_tags: FeaturedTag::LIMIT,
},

View file

@ -10,5 +10,11 @@ describe REST::InstanceSerializer do
it 'returns recent usage data' do
expect(serialization['usage']).to eq({ 'users' => { 'active_month' => 0 } })
end
it 'returns the VAPID public key' do
expect(serialization['configuration']['vapid']).to eq({
'public_key' => Rails.configuration.x.vapid_public_key,
})
end
end
end