module SvelteOnRails::Installer::HelloWorld
def self.install_hello_world
def self.install_hello_world utils_i = SvelteOnRails::Installer::Utils # write templates templates = %w[ app/controllers/svelte_on_rails_hello_world_controller.rb app/views/svelte_on_rails_hello_world/index.haml app/frontend/javascript/components/SvelteOnRailsHelloWorld.svelte ] utils_i.write_templates(templates) # route route = 'svelte_on_rails_hello_world#index' rr = utils_i.which_root_route root_url = "/" url = root_url + route.sub('#', '/') if rr && rr == route puts "Root route «#{route}» already exists, skipping." root_url elsif rr && utils_i.route_exists?(route.sub('#', '/')) puts "route «#{route}» already exists, skipping." url elsif rr utils_i.add_route(" get \"#{route.sub('#', '/')}\"") url else utils_i.add_route(' root "svelte_on_rails_hello_world#index"') root_url end end
def self.remove_hello_world
def self.remove_hello_world utils = SvelteOnRails::Installer::Utils if utils.ask_yn('Remove the Hello World component?') files = %w[ app/views/svelte_on_rails_hello_world/index.haml app/views/svelte_on_rails_hello_world app/controllers/svelte_on_rails_hello_world_controller.rb app/frontend/javascript/components/SvelteOnRailsHelloWorld.svelte ] utils.remove_files(files) utils.remove_line_from_file('config/routes.rb', 'svelte_on_rails_hello_world') end end