Class: ComponentGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- ComponentGenerator
- Defined in:
- lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb
Instance Method Summary collapse
- #add_css_file ⇒ Object
- #add_erb_template ⇒ Object
- #add_jasmine_spec ⇒ Object
- #add_unpoly_compiler ⇒ Object
- #add_view_spec ⇒ Object
- #fix_module_nesting_via_rubocop_because_it_was_impossible_to_get_module_namespacing_to_work_as_expected ⇒ Object
- #generate_component_with_preview_and_locale ⇒ Object
Instance Method Details
#add_css_file ⇒ Object
16 17 18 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 16 def add_css_file template "bem_stylesheet.css.tt", File.join("app/components", class_path, "#{file_name}_component.css") end |
#add_erb_template ⇒ Object
12 13 14 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 12 def add_erb_template template "erb_template.html.erb.tt", File.join("app/components", class_path, "#{file_name}_component.html.erb") end |
#add_jasmine_spec ⇒ Object
28 29 30 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 28 def add_jasmine_spec template "jasmine_spec.js.tt", File.join("test/components", class_path, "#{file_name}_component_spec.js") end |
#add_unpoly_compiler ⇒ Object
20 21 22 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 20 def add_unpoly_compiler template "unpoly_compiler.js.tt", File.join("app/components", class_path, "#{file_name}_component.js") end |
#add_view_spec ⇒ Object
24 25 26 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 24 def add_view_spec template "view_spec.rb.tt", File.join("test/components", class_path, "#{file_name}_component_test.rb") end |
#fix_module_nesting_via_rubocop_because_it_was_impossible_to_get_module_namespacing_to_work_as_expected ⇒ Object
32 33 34 35 36 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 32 def fix_module_nesting_via_rubocop_because_it_was_impossible_to_get_module_namespacing_to_work_as_expected in_root do system("bash", "-c", 'bin/rubocop --only Style/ClassAndModuleChildren,Layout/IndentationWidth,Layout/CommentIndentation --autocorrect-all --force-exclusion --config <(echo "Style/ClassAndModuleChildren: { EnforcedStyle: nested }")') end end |
#generate_component_with_preview_and_locale ⇒ Object
6 7 8 9 10 |
# File 'lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb', line 6 def generate_component_with_preview_and_locale in_root do system("bin/rails generate view_component:component #{name} #{attrs.join(" ")} --preview --preview_path=test/components --locale --skip-test-framework --skip-template-engine") end end |