Class: PropelFacets::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- PropelFacets::InstallGenerator
- Defined in:
- lib/generators/propel_facets/install_generator.rb
Instance Method Summary collapse
- #copy_configuration_initializer ⇒ Object
- #copy_controller_concerns ⇒ Object
- #copy_documentation ⇒ Object
- #copy_error_classes ⇒ Object
- #copy_model_concerns ⇒ Object
- #copy_utility_classes ⇒ Object
- #create_application_record_if_needed ⇒ Object
- #extract_generator_for_customization ⇒ Object
Instance Method Details
#copy_configuration_initializer ⇒ Object
24 25 26 |
# File 'lib/generators/propel_facets/install_generator.rb', line 24 def copy_configuration_initializer copy_file "config/propel_facets.rb", "config/initializers/propel_facets.rb" end |
#copy_controller_concerns ⇒ Object
32 33 34 35 |
# File 'lib/generators/propel_facets/install_generator.rb', line 32 def copy_controller_concerns copy_file "controllers/concerns/facet_renderer.rb", "app/controllers/concerns/facet_renderer.rb" copy_file "controllers/concerns/strong_params_helper.rb", "app/controllers/concerns/strong_params_helper.rb" end |
#copy_documentation ⇒ Object
46 47 48 |
# File 'lib/generators/propel_facets/install_generator.rb', line 46 def copy_documentation copy_file "doc/json_facet.md", "doc/json_facet.md" end |
#copy_error_classes ⇒ Object
41 42 43 44 |
# File 'lib/generators/propel_facets/install_generator.rb', line 41 def copy_error_classes copy_file "errors/application_error.rb", "app/errors/application_error.rb" copy_file "errors/missing_facet.rb", "app/errors/missing_facet.rb" end |
#copy_model_concerns ⇒ Object
28 29 30 |
# File 'lib/generators/propel_facets/install_generator.rb', line 28 def copy_model_concerns copy_file "models/concerns/model_facet.rb", "app/models/concerns/model_facet.rb" end |
#copy_utility_classes ⇒ Object
37 38 39 |
# File 'lib/generators/propel_facets/install_generator.rb', line 37 def copy_utility_classes copy_file "lib/api_params.rb", "lib/api_params.rb" end |
#create_application_record_if_needed ⇒ Object
50 51 52 53 54 55 56 57 58 59 |
# File 'lib/generators/propel_facets/install_generator.rb', line 50 def create_application_record_if_needed application_record_path = "app/models/application_record.rb" unless File.exist?(File.join(destination_root, application_record_path)) copy_file "models/application_record.rb", application_record_path else say_status :exists, application_record_path, :blue add_propel_facets_to_application_record end end |
#extract_generator_for_customization ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/generators/propel_facets/install_generator.rb', line 61 def extract_generator_for_customization generator_path = "lib/generators/propel_facets" if File.exist?(generator_path) say "" say "📦 Generator logic already extracted at #{generator_path}/", :blue say "💡 Skipping extraction to preserve your customizations", :cyan else say "" say "📦 Extracting generator logic for full customization...", :blue # Automatically run the unpack generator to extract generator logic invoke PropelFacets::UnpackGenerator, [], { force: false } say "" say "✅ Generator logic extracted to lib/generators/propel_facets/", :green say "💡 Your application is now completely standalone - no gem dependency needed for generators!", :cyan say "🗑️ You can now remove 'propel_facets' from your Gemfile", :yellow end end |