Sha256: 93cbbcecf6a21b42c02142e6fb81c1f0e7d6c3f96ad049beaba7c2638baccc92

Contents?: true

Size: 1.56 KB

Versions: 13

Compression:

Stored size: 1.56 KB

Contents

# frozen_string_literal: true

module <%= class_name %>
  module Generators
    class InstallGenerator < Rails::Generators::Base
      class_option :auto_run_migrations, type: :boolean, default: false
      source_root File.expand_path('templates', __dir__)

      def copy_initializer
        template 'initializer.rb', 'config/initializers/<%= file_name %>.rb'
      end

      def add_javascripts
        append_file 'vendor/assets/javascripts/spree/frontend/all.js', "//= require spree/frontend/<%= file_name %>\n"
        append_file 'vendor/assets/javascripts/spree/backend/all.js', "//= require spree/backend/<%= file_name %>\n"
      end

      def add_stylesheets
        inject_into_file 'vendor/assets/stylesheets/spree/frontend/all.css', " *= require spree/frontend/<%= file_name %>\n", before: %r{\*/}, verbose: true # rubocop:disable Layout/LineLength
        inject_into_file 'vendor/assets/stylesheets/spree/backend/all.css', " *= require spree/backend/<%= file_name %>\n", before: %r{\*/}, verbose: true # rubocop:disable Layout/LineLength
      end

      def add_migrations
        run 'bin/rails railties:install:migrations FROM=<%= file_name %>'
      end

      def run_migrations
        run_migrations = options[:auto_run_migrations] || ['', 'y', 'Y'].include?(ask('Would you like to run the migrations now? [Y/n]')) # rubocop:disable Layout/LineLength
        if run_migrations
          run 'bin/rails db:migrate'
        else
          puts 'Skipping bin/rails db:migrate, don\'t forget to run it!' # rubocop:disable Rails/Output
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
solidus_dev_support-2.5.5 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.5.4 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.5.3 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.5.2 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.5.1 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.5.0 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.4.3 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.4.2 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.4.1 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.4.0 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.3.0 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.2.0 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
solidus_dev_support-2.1.0 lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt