Class: Dialkit::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Dialkit::Generators::InstallGenerator
- Defined in:
- lib/generators/dialkit/install/install_generator.rb
Instance Method Summary collapse
- #copy_demo_entrypoint ⇒ Object
- #print_next_steps ⇒ Object
- #wire_application_entrypoint ⇒ Object
- #wire_layout_stylesheet ⇒ Object
Instance Method Details
#copy_demo_entrypoint ⇒ Object
8 9 10 11 12 |
# File 'lib/generators/dialkit/install/install_generator.rb', line 8 def copy_demo_entrypoint return if File.exist?("app/javascript/dialkit_demo.jsx") template "dialkit_demo.jsx", "app/javascript/dialkit_demo.jsx" end |
#print_next_steps ⇒ Object
35 36 37 38 39 40 41 42 |
# File 'lib/generators/dialkit/install/install_generator.rb', line 35 def print_next_steps say "" say "DialKit Rails install complete.", :green say "Next steps:" say " 1. npm install dialkit-rails motion react react-dom" say " 2. npm run build" say " 3. Load a page with #dialkit-root to mount the demo panel" end |
#wire_application_entrypoint ⇒ Object
14 15 16 17 18 19 20 21 22 |
# File 'lib/generators/dialkit/install/install_generator.rb', line 14 def wire_application_entrypoint path = "app/javascript/application.js" return unless File.exist?(path) import_line = 'import "./dialkit_demo";' return if File.read(path).include?(import_line) append_to_file(path, "\n#{import_line}\n") end |
#wire_layout_stylesheet ⇒ Object
24 25 26 27 28 29 30 31 32 33 |
# File 'lib/generators/dialkit/install/install_generator.rb', line 24 def wire_layout_stylesheet path = "app/views/layouts/application.html.erb" return unless File.exist?(path) stylesheet_line = '<%= dialkit_stylesheet_tag "data-turbo-track": "reload" %>' return if File.read(path).include?(stylesheet_line) return unless File.read(path).include?('<%= stylesheet_link_tag "application" %>') inject_into_file(path, "\n #{stylesheet_line}", after: '<%= stylesheet_link_tag "application" %>') end |