module Js::Packer::Rails::ViewHelpers
Public Instance Methods
js_bundle_hash(source)
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 13 def js_bundle_hash(source) bundle_name = js_bundle_name(source) bundle_name.gsub("#{source}-", '').gsub('.js', '') end
js_bundle_name(source)
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 18 def js_bundle_name(source) manifest_file = File.read(manifest_path(source)) manifest = JSON.parse(manifest_file) manifest[source + '.js'] end
js_bundle_path(source)
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 24 def js_bundle_path(source) bundle_name = js_bundle_name(source) "/#{config_bundle_path}/#{bundle_name}" end
js_bundle_tag(*sources)
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 7 def js_bundle_tag(*sources) sources.uniq.map do |source| content_tag :script, '', src: "#{js_bundle_path(source)}" end.join("\n").html_safe end
Private Instance Methods
config()
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 40 def config YAML.load_file("#{::Rails.root}/config/packer.yml")[::Rails.env] end
config?()
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 36 def config? File.exist?("#{::Rails.root}/config/packer.yml") end
config_bundle_path()
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 48 def config_bundle_path config? ? config['bundle_path'] : 'bundles/javascripts' end
config_manifest_path()
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 44 def config_manifest_path config? ? config['manifest_path'] : 'public/bundles/javascripts' end
manifest_path(source)
click to toggle source
# File lib/js/packer/rails/view_helpers.rb, line 31 def manifest_path(source) "#{::Rails.root}/#{config_manifest_path}/#{source}.json" end