class Gearhead::Serializers::ActiveModelSerializers::ResourceSerializer

Public Class Methods

for(page) click to toggle source
# File lib/gearhead/serializers/active_model_serializers/resource_serializer.rb, line 5
def self.for(page)
  if defined?(ActiveModel::Serializer)
    klass = Class.new(ActiveModel::Serializer)
    klass.attributes *(page._gear_attributes.presence || page.default_attributes)

    page._gear_custom_attributes.each do |attr, block|
      klass.attribute attr do |klass|
        block.call(klass.object)
      end
    end

    klass
  end
end