Sha256: 3100d79c884e24280916bc754e5ebd55e0d71223bfaee3831b1d93f1f38272d7

Contents?: true

Size: 1.08 KB

Versions: 5

Compression:

Stored size: 1.08 KB

Contents

require "importmap/map"

module Importmap
  class Engine < ::Rails::Engine
    config.importmap = Importmap::Map.new

    config.autoload_once_paths = %W( #{root}/app/helpers )

    initializer "importmap.reloader" do |app|
      app.config.paths.add "config/importmap.rb"

      reloader = Importmap::Reloader.new

      reloader.execute
      app.reloaders << reloader
      app.reloader.to_run do
        reloader.execute
      end
    end

    initializer "importmap.assets" do
      if Rails.application.config.respond_to?(:assets)
        Rails.application.config.assets.precompile += %w( es-module-shims.js )
        Rails.application.config.assets.paths << Rails.root.join("app/javascript")
      end
    end

    initializer "importmap.helpers" do
      ActiveSupport.on_load(:action_controller_base) do
        helper Importmap::ImportmapTagsHelper
      end
    end

    initializer "importmap.caching" do |app|
      if Rails.application.config.importmap.cached.nil?
        Rails.application.config.importmap.cached = app.config.action_controller.perform_caching
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
importmap-rails-0.3.4 lib/importmap/engine.rb
importmap-rails-0.3.3 lib/importmap/engine.rb
importmap-rails-0.3.2 lib/importmap/engine.rb
importmap-rails-0.3.1 lib/importmap/engine.rb
importmap-rails-0.3.0 lib/importmap/engine.rb