32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/js_routes/engine.rb', line 32
def self.install_sprockets!
return if defined?(@installed_sprockets)
require 'sprockets/version'
v2 = Gem::Dependency.new('', ' ~> 2')
vgte3 = Gem::Dependency.new('', ' >= 3')
sprockets_version = Gem::Version.new(::Sprockets::VERSION).release
initializer_args = case sprockets_version
when -> (v) { v2.match?('', v) }
{ after: "sprockets.environment" }
when -> (v) { vgte3.match?('', v) }
{ after: :engines_blank_point, before: :finisher_hook }
else
raise StandardError, "Sprockets version #{sprockets_version} is not supported"
end
initializer 'js-routes.dependent_on_routes', initializer_args do
case sprockets_version
when -> (v) { v2.match?('', v) },
-> (v) { vgte3.match?('', v) }
Rails.application.config.assets.configure do |config|
config.register_preprocessor(
"application/javascript",
SprocketsExtension,
)
end
else
raise StandardError, "Sprockets version #{sprockets_version} is not supported"
end
end
@installed_sprockets = true
end
|