class Emcee::Generators::InstallGenerator
Public Instance Methods
add_html_import_to_layout()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 20 def add_html_import_to_layout case when erb? insert_html_import("<%= html_import_tag \"application\", \"data-turbolinks-track\" => true %>", before: "<%= csrf_meta_tags %>") when haml? || slim? insert_html_import("= html_import_tag \"application\", \"data-turbolinks-track\" => true", before: "= csrf_meta_tags") end end
copy_application_manifest()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 10 def copy_application_manifest empty_directory "app/assets/components" copy_file "application.html", "app/assets/components/application.html" end
copy_bowerrc()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 29 def copy_bowerrc copy_file "template.bowerrc", ".bowerrc" end
create_vendor_directory()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 15 def create_vendor_directory empty_directory "vendor/assets/components" create_file "vendor/assets/components/.keep" end
Private Instance Methods
erb?()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 45 def erb? layout_file.extname.match(/\.erb/) end
haml?()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 49 def haml? layout_file.extname.match(/\.haml/) end
insert_html_import(content, options={})
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 35 def insert_html_import(content, options={}) # if this is a slim or haml file we need to match the indentation level if options[:before] && (line = layout_file.read.lines.detect {|l| l.include?(options[:before].to_s) }) indentation = line.match(/^\s+/).to_s content = content + "\n#{indentation}" end insert_into_file(layout_file.to_s, content, options) end
layout_file()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 57 def layout_file file = Pathname(options["layout"] || Dir[Rails.root.join("app","views","layouts","application*")].first) file.relative? ? file : file.relative_path_from(Rails.root) end
slim?()
click to toggle source
# File lib/generators/emcee/install/install_generator.rb, line 53 def slim? layout_file.extname.match(/\.slim/) end