module JSONAPI::Serialization::AttributesDeserialization
def attributes
def attributes attrs = extract_attributes_from_params attrs = attrs.transform_keys(&:to_sym) if attrs.respond_to?(:transform_keys) permitted_attrs = permitted_attributes_for_action attrs.slice(*permitted_attrs) end
def extract_attributes_from_params
def extract_attributes_from_params @params.dig(:data, :attributes) || @params[:attributes] || {} end
def permitted_attributes_for_action
def permitted_attributes_for_action fields = if @action == :create @definition.permitted_creatable_fields else @definition.permitted_updatable_fields end fields.map(&:to_sym) end