Class: GuidedTour::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/guided_tour/install/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_controller_to_application_jsObject



26
27
28
29
30
31
32
33
34
35
# File 'lib/generators/guided_tour/install/install_generator.rb', line 26

def add_controller_to_application_js
  inject_into_file "app/javascript/controllers/application.js",
                   before: "export { application }" do
    "      import GuidedTourController from \"@itsbede/guided-tour\"\n      application.register('guided-tour--tour', GuidedTourController)\n\n    JAVASCRIPT\n  end\nend\n"

#add_javascriptObject



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/generators/guided_tour/install/install_generator.rb', line 14

def add_javascript
  if File.exist?("config/importmap.rb")
    append_to_file "config/importmap.rb" do
      'pin "@itsbede/guided-tour"'
    end
  end

  if File.exist?("package.json")
    run "yarn add @itsbede/guided-tour"
  end
end

#check_dependenciesObject



7
8
9
10
11
12
# File 'lib/generators/guided_tour/install/install_generator.rb', line 7

def check_dependencies
  unless File.exist?("app/javascript/controllers/index.js")
    say "Installing stimulus-rails...", :green
    run "rails stimulus:install"
  end
end