class WebpackRailsReact::ViewGenerator

Public Instance Methods

create_container() click to toggle source
# File lib/generators/webpack_rails_react/view_generator.rb, line 30
def create_container
  name = @view.titleize.gsub(/ /, '')
  file = "webpack/containers/#{name}.js"
  copy_file "boilerplate/views/ContainerTemplate.js", file
  gsub_file file, /Placeholder/, name
end
create_entry_file() click to toggle source
# File lib/generators/webpack_rails_react/view_generator.rb, line 23
def create_entry_file
  file = "webpack/#{@view.gsub(/ /, '')}.js"
  name = @view.titleize.gsub(/ /, '')
  copy_file "boilerplate/views/ViewTemplate.js", file
  gsub_file file, /Placeholder/, name
end
create_rails_view() click to toggle source
# File lib/generators/webpack_rails_react/view_generator.rb, line 37
def create_rails_view
  name = @view.downcase.gsub(/ /, '_')
  empty_directory "app/views/#{name.pluralize}"
  file = "app/views/#{name.pluralize}/index.html.erb"
  copy_file "boilerplate/views/rails_view.html.erb", file
  gsub_file file, /placeholder/, name
end
normalize_view_name() click to toggle source
# File lib/generators/webpack_rails_react/view_generator.rb, line 8
def normalize_view_name
  raise "View name argument missing" if args.length == 0
  @view = args[0]
end
update_webpack_entry() click to toggle source
# File lib/generators/webpack_rails_react/view_generator.rb, line 13
    def update_webpack_entry
      name = @view.downcase.gsub(/ /, "_")
      path = "'#{name}': './webpack/#{name}.js',"
      insert_into_file 'config/webpack.config.js', after: /entry: {\n/ do
        <<-CONFIG
    #{path}
        CONFIG
      end
    end