Sha256: f7e89a9bb2d3b15ab8ba92fdbb20bf40d4147470f69e07daf3ff6c4f579da6be

Contents?: true

Size: 787 Bytes

Versions: 4

Compression:

Stored size: 787 Bytes

Contents

class Recipes::Draper < Rails::AppBuilder
  def ask
    draper = answer(:draper) { Ask.confirm('Do you want to use Draper to decorate models?') }
    set(:draper, draper)
  end

  def create
    return unless selected?(:draper)
    add_draper
    add_api_responder if selected?(:api_support)
  end

  def installed?
    gem_exists?(/draper/)
  end

  def install
    add_draper
    api_recipe = load_recipe(:api)
    add_api_responder if api_recipe.installed?
  end

  def add_draper
    gather_gem 'draper', '3.0.1'
    add_readme_section :internal_dependencies, :draper
    create_file 'app/decorators/.keep'
  end

  def add_api_responder
    after(:gem_install) do
      copy_file '../assets/api/draper_responder.rb', 'app/responders/api_responder.rb', force: true
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
potassium-5.2.3 lib/potassium/recipes/draper.rb
potassium-5.2.2 lib/potassium/recipes/draper.rb
potassium-5.2.1 lib/potassium/recipes/draper.rb
potassium-5.2.0 lib/potassium/recipes/draper.rb