Sha256: 094e590fe1bc976e38359ca27482b5c93e2bc6c6e541b7bfff31a2620921ad09

Contents?: true

Size: 1.21 KB

Versions: 9

Compression:

Stored size: 1.21 KB

Contents

# frozen_string_literal: true
module Blacklight
  class Assets < Rails::Generators::Base
    source_root File.expand_path('../templates', __FILE__)
  
    def assets
      copy_file "blacklight.scss", "app/assets/stylesheets/blacklight.scss"

      return if has_blacklight_assets?

      contents = "\n//\n// Required by Blacklight\n"
      contents += "//= require jquery\n" if rails_5_1?
      contents += "//= require blacklight/blacklight\n"

      marker = if turbolinks?
                 '//= require turbolinks'
               elsif rails_5_1?
                 '//= require rails-ujs'
               else
                 '//= require jquery_ujs'
               end

      insert_into_file "app/assets/javascripts/application.js", :after => marker do
        contents
      end
    end

    # This is not a default in Rails 5.1
    def add_jquery
      gem 'jquery-rails' if rails_5_1?
    end

    private

    def rails_5_1?
      Rails.version =~ /5\.1/
    end

    def turbolinks?
      @turbolinks ||= IO.read("app/assets/javascripts/application.js").include?('turbolinks')
    end

    def has_blacklight_assets?
      IO.read("app/assets/javascripts/application.js").include?('blacklight/blacklight')
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
blacklight-6.14.1 lib/generators/blacklight/assets_generator.rb
blacklight-6.14.0 lib/generators/blacklight/assets_generator.rb
blacklight-6.13.0 lib/generators/blacklight/assets_generator.rb
blacklight-6.12.0 lib/generators/blacklight/assets_generator.rb
blacklight-6.11.2 lib/generators/blacklight/assets_generator.rb
blacklight-6.11.1 lib/generators/blacklight/assets_generator.rb
blacklight-6.11.0 lib/generators/blacklight/assets_generator.rb
blacklight-6.10.1 lib/generators/blacklight/assets_generator.rb
blacklight-6.10.0 lib/generators/blacklight/assets_generator.rb