Add missing policy attribute to WebPushSubscriptionSerializer (#23210)
				
					
				
			* Add missing `policy` attribute to `WebPushSubscriptionSerializer` Fixes #23145 * Add tests
This commit is contained in:
		@@ -1,7 +1,7 @@
 | 
			
		||||
# frozen_string_literal: true
 | 
			
		||||
 | 
			
		||||
class REST::WebPushSubscriptionSerializer < ActiveModel::Serializer
 | 
			
		||||
  attributes :id, :endpoint, :alerts, :server_key
 | 
			
		||||
  attributes :id, :endpoint, :alerts, :server_key, :policy
 | 
			
		||||
 | 
			
		||||
  def alerts
 | 
			
		||||
    (object.data&.dig('alerts') || {}).each_with_object({}) { |(k, v), h| h[k] = ActiveModel::Type::Boolean.new.cast(v) }
 | 
			
		||||
@@ -10,4 +10,8 @@ class REST::WebPushSubscriptionSerializer < ActiveModel::Serializer
 | 
			
		||||
  def server_key
 | 
			
		||||
    Rails.configuration.x.vapid_public_key
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def policy
 | 
			
		||||
    object.data&.dig('policy') || 'all'
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user