Class: RailsuiCharts::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- RailsuiCharts::Generators::InstallGenerator
- Defined in:
- lib/generators/railsui_charts/install/install_generator.rb
Constant Summary collapse
- CONTROLLERS =
%w[ railsui_chart_controller.js railsui_chart_filters_controller.js railsui_metric_dialog_controller.js ].freeze
Instance Method Summary collapse
Instance Method Details
#add_css_import ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/generators/railsui_charts/install/install_generator.rb', line 8 def add_css_import application_css = Rails.root.join("app/assets/tailwind/application.css") if File.exist?(application_css) content = File.read(application_css) import_statement = '@import "../../stylesheets/railsui_charts";' unless content.include?(import_statement) File.write(application_css, "#{content.strip}\n#{import_statement}\n") say "✓ Added RailsUI Charts CSS import to app/assets/tailwind/application.css", :green else say "✓ RailsUI Charts CSS import already present", :green end else say "⚠️ app/assets/tailwind/application.css not found. Add this import manually:", :yellow say ' @import "../../stylesheets/railsui_charts";' end end |
#copy_stimulus_controllers ⇒ Object
33 34 35 36 37 |
# File 'lib/generators/railsui_charts/install/install_generator.rb', line 33 def copy_stimulus_controllers CONTROLLERS.each do |controller| copy_file controller, "app/javascript/controllers/#{controller}" end end |
#print_next_steps ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/generators/railsui_charts/install/install_generator.rb', line 39 def print_next_steps say "" say "RailsUI Charts installed.", :green say "" say "Next steps:", :cyan say " 1. Add the ApexCharts dependency for your JS setup:", :cyan say " Build mode: yarn add apexcharts", :cyan say " No-build: pin \"apexcharts\", to: \"https://esm.sh/apexcharts@3.45.2\"", :cyan say " 2. Use <%= railsui_chart data, type: :area %> in your views.", :cyan say "" end |