class Apiphobic::Authorization::Transformers::JsonApiToRailsAttributes
Attributes
parameters[RW]
Public Class Methods
new(parameters:)
click to toggle source
# File lib/apiphobic/authorization/transformers/json_api_to_rails_attributes.rb, line 11 def initialize(parameters:) self.parameters = parameters end
Public Instance Methods
call()
click to toggle source
# File lib/apiphobic/authorization/transformers/json_api_to_rails_attributes.rb, line 15 def call attributes.merge(relationship_attributes) end
Private Instance Methods
attributes()
click to toggle source
# File lib/apiphobic/authorization/transformers/json_api_to_rails_attributes.rb, line 21 def attributes @attributes = parameters .fetch(:data, {}) .fetch(:attributes, parameters_class.new) end
parameters_class()
click to toggle source
# File lib/apiphobic/authorization/transformers/json_api_to_rails_attributes.rb, line 45 def parameters_class parameters.class end
relationship_attributes()
click to toggle source
# File lib/apiphobic/authorization/transformers/json_api_to_rails_attributes.rb, line 33 def relationship_attributes parameters_class.new.tap do |relationship_attributes| relationships.each_pair do |name, relationship| relationship_attributes.merge!(JsonApi::Relationship .new(name: name, data: relationship) .to_rails_attributes) end relationship_attributes.permit! if relationship_attributes.respond_to?(:permit!) end end
relationships()
click to toggle source
# File lib/apiphobic/authorization/transformers/json_api_to_rails_attributes.rb, line 27 def relationships @relationships = parameters .fetch(:data, {}) .fetch(:relationships, parameters_class.new) end