Class: RailsVite::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- RailsVite::Generators::InstallGenerator
- Defined in:
- lib/generators/rails_vite/install/install_generator.rb
Instance Method Summary collapse
- #create_entrypoint ⇒ Object
- #create_vite_config ⇒ Object
- #done ⇒ Object
- #install_dependencies ⇒ Object
- #setup_bin_dev ⇒ Object
- #setup_procfile ⇒ Object
- #update_gitignore ⇒ Object
- #update_layout ⇒ Object
Instance Method Details
#create_entrypoint ⇒ Object
17 18 19 20 21 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 17 def create_entrypoint unless File.exist?("app/javascript/application.js") create_file "app/javascript/application.js", "// Entry point for Vite\n" end end |
#create_vite_config ⇒ Object
13 14 15 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 13 def create_vite_config template "vite.config.ts.tt", "vite.config.ts" end |
#done ⇒ Object
61 62 63 64 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 61 def done say "" say "Vite installed! Run `bin/dev` to start development.", :green end |
#install_dependencies ⇒ Object
8 9 10 11 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 8 def install_dependencies say "Installing Vite and rails-vite-plugin..." run RailsVite::Tasks.add_command("vite", "rails-vite-plugin") end |
#setup_bin_dev ⇒ Object
56 57 58 59 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 56 def setup_bin_dev copy_file "bin/dev", "bin/dev" chmod "bin/dev", 0o755 end |
#setup_procfile ⇒ Object
46 47 48 49 50 51 52 53 54 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 46 def setup_procfile if File.exist?("Procfile.dev") unless File.read("Procfile.dev").include?("vite") append_to_file "Procfile.dev", "js: #{vite_dev_command}\n" end else template "Procfile.dev.tt", "Procfile.dev" end end |
#update_gitignore ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 23 def update_gitignore return if File.read(".gitignore").include?("public/vite") append_to_file ".gitignore", <<~GITIGNORE # Vite /public/vite GITIGNORE end |
#update_layout ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/generators/rails_vite/install/install_generator.rb', line 33 def update_layout layout_path = "app/views/layouts/application.html.erb" return unless File.exist?(layout_path) gsub_file layout_path, /<%=\s*javascript_include_tag\s+["']application["'].*%>/, '<%= vite_tags "application" %>' gsub_file layout_path, /<%=\s*stylesheet_link_tag\s+["']application["'].*%>/, '<%= vite_tags "application.css" %>' end |