Class: Rolemodel::Turbo::ReadyGenerator
- Inherits:
-
GeneratorBase
- Object
- Rails::Generators::Base
- GeneratorBase
- Rolemodel::Turbo::ReadyGenerator
- Defined in:
- lib/generators/rolemodel/turbo/ready/ready_generator.rb
Instance Method Summary collapse
- #add_javascript_initializer ⇒ Object
- #add_stimulus_controller ⇒ Object
- #inject_head_outlet ⇒ Object
- #inject_meta_tags ⇒ Object
Instance Method Details
#add_javascript_initializer ⇒ Object
6 7 8 9 10 11 12 13 14 |
# File 'lib/generators/rolemodel/turbo/ready/ready_generator.rb', line 6 def add_javascript_initializer say 'generating & importing morph event handlers', :green directory 'app/javascript/initializers' append_to_file 'app/javascript/application.js', <<~JS import './initializers/before_morph_handler.js' JS end |
#add_stimulus_controller ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/generators/rolemodel/turbo/ready/ready_generator.rb', line 16 def add_stimulus_controller say 'adding prevent-morph controller & updating manifest', :green directory 'app/javascript/controllers' rails_command 'stimulus:manifest:update' end |
#inject_head_outlet ⇒ Object
35 36 37 38 39 40 41 42 43 44 |
# File 'lib/generators/rolemodel/turbo/ready/ready_generator.rb', line 35 def inject_head_outlet say 'adding head outlet to head partial', :green append_to_file 'app/views/application/_head.html.slim' do optimize_indentation <<~SLIM = yield :head SLIM end end |
#inject_meta_tags ⇒ Object
24 25 26 27 28 29 30 31 32 33 |
# File 'lib/generators/rolemodel/turbo/ready/ready_generator.rb', line 24 def say 'adding meta tags to head partial', :green inject_into_file 'app/views/application/_head.html.slim', after: /meta name="viewport".*\n/ do optimize_indentation <<~SLIM meta name="turbo-refresh-method" content="morph" meta name="turbo-refresh-scroll" content="preserve" SLIM end end |