Sha256: df9b04b0ee50a1597ab9adf4f20fee564de70a7f0f3bc07e776fe6c8f6d85dce

Contents?: true

Size: 868 Bytes

Versions: 5

Compression:

Stored size: 868 Bytes

Contents

module PowerApi::GeneratorHelper::AmsHelper
  extend ActiveSupport::Concern

  included do
    include PowerApi::GeneratorHelper::ApiHelper
    include PowerApi::GeneratorHelper::ResourceHelper
  end

  def ams_initializer_path
    "config/initializers/active_model_serializers.rb"
  end

  def ams_serializer_path
    "app/serializers/#{api_file_path}/#{resource.snake_case}_serializer.rb"
  end

  def ams_serializers_path
    "app/serializers/#{api_file_path}/.gitkeep"
  end

  def ams_initializer_tpl
    <<~INITIALIZER
      ActiveModelSerializers.config.adapter = :json
    INITIALIZER
  end

  def ams_serializer_tpl
    <<~SERIALIZER
      class #{api_class}::#{resource.camel}Serializer < ActiveModel::Serializer
        type :#{resource.snake_case}

        attributes(
          #{resource.attributes_symbols_text_list})
      end
    SERIALIZER
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
power_api-2.1.1 lib/power_api/generator_helper/ams_helper.rb
power_api-2.1.0 lib/power_api/generator_helper/ams_helper.rb
power_api-2.0.2 lib/power_api/generator_helper/ams_helper.rb
power_api-2.0.1 lib/power_api/generator_helper/ams_helper.rb
power_api-2.0.0 lib/power_api/generator_helper/ams_helper.rb