Method: Hyperloop.generate_require_tree

Defined in:
lib/hyperloop/imports.rb

.generate_require_tree(path, render_on_server, render_on_client) ⇒ Object



78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/hyperloop/imports.rb', line 78

def generate_require_tree(path, render_on_server, render_on_client)
  base_name = Rails.root.join('app', path).to_s+'/'
  Dir.glob(Rails.root.join('app', path, '**', '*')).sort.collect do |fname|
    fname = fname.gsub(/^#{base_name}/, '')
    fname = fname.gsub(/\.erb$/, '')
    if fname =~ /(\.js$)|(\.rb$)/
      fname = fname.gsub(/(\.js$)|(\.rb$)/, '')
      r = "require '#{fname}' #{client_guard(render_on_server, render_on_client)}"
      puts "    #{r}"
      "puts \"#{r}\"; #{r}"
    end
  end.compact.join("\n")
end