Class: Rails::Generators::PluginGenerator
  
  
  
  
  
    - Inherits:
 
    - 
      AppBase
      
        
        show all
      
    
 
  
  
  
  
  
  
  
  
  
  
    - Defined in:
 
    - railties/lib/rails/generators/rails/plugin/plugin_generator.rb
 
  
  
 
Overview
  
  Constant Summary
  
  Constants inherited
     from AppBase
  AppBase::BUN_VERSION, AppBase::CSS_OPTIONS, AppBase::JAVASCRIPT_OPTIONS, AppBase::NODE_LTS_VERSION
  
  
  Constants included
     from AppName
  AppName::RESERVED_NAMES
  Instance Attribute Summary
  
  Attributes inherited from AppBase
  #rails_template
  
    
      Instance Method Summary
      collapse
    
    
  
  
  
  
  
  
  
  
  
  Methods inherited from AppBase
  add_shared_options_for, edge_branch, strict_args_position
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  Methods inherited from Base
  base_root, class_option, default_source_root, desc, exit_on_failure?, hide!, hook_for, inherited, namespace, remove_hook_for, source_root
  
  
  
  
  
  
  
  
  Methods included from Actions
  #add_source, #environment, #gem, #gem_group, #generate, #git, #github, #initializer, #lib, #rails_command, #rake, #rakefile, #readme, #route, #vendor
  
  
  Constructor Details
  
    
  
  
    
Returns a new instance of PluginGenerator.
   
 
  
  
    
      
225
226
227
228
229
230
231
232
233 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 225
def initialize(*args)
  @dummy_path = nil
  super
  imply_options
  if !engine? || !with_dummy_app?
    self.options = options.merge(skip_asset_pipeline: true).freeze
  end
end
     | 
  
 
  
 
  
    Instance Method Details
    
      
  
  
    #create_app_files  ⇒ Object 
  
  
  
  
    
      
253
254
255 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 253
def create_app_files
  build(:app)
end 
     | 
  
 
    
      
  
  
    #create_assets_manifest_file  ⇒ Object 
  
  
  
  
    
      
275
276
277 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 275
def create_assets_manifest_file
  build(:assets_manifest) if !api? && engine?
end 
     | 
  
 
    
      
  
  
    #create_bin_files  ⇒ Object 
  
  
  
  
    
      
283
284
285 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 283
def create_bin_files
  build(:bin)
end 
     | 
  
 
    
      
  
  
    #create_cifiles  ⇒ Object 
  
  
  
  
    
      
262
263
264
265 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 262
def create_cifiles
  return if skip_ci?
  build(:cifiles)
end 
     | 
  
 
    
      
  
  
    #create_config_files  ⇒ Object 
  
  
  
  
    
      
267
268
269 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 267
def create_config_files
  build(:config)
end 
     | 
  
 
    
      
  
  
    #create_lib_files  ⇒ Object 
  
  
  
  
    
      
271
272
273 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 271
def create_lib_files
  build(:lib)
end 
     | 
  
 
    
      
  
  
    #create_public_stylesheets_files  ⇒ Object 
  
  
  
  
    
      
279
280
281 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 279
def create_public_stylesheets_files
  build(:stylesheets) unless api?
end 
     | 
  
 
    
      
  
  
    #create_root_files  ⇒ Object 
  
  
  
  
    
      
243
244
245
246
247
248
249
250
251 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 243
def create_root_files
  build(:readme)
  build(:rakefile)
  build(:gemspec)   unless options[:skip_gemspec]
  build(:license)
  build(:gitignore) unless options[:skip_git]
  build(:gemfile)
  build(:version_control)
end 
     | 
  
 
    
      
  
  
    #create_rubocop_file  ⇒ Object 
  
  
  
  
    
      
257
258
259
260 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 257
def create_rubocop_file
  return if skip_rubocop?
  build(:rubocop)
end 
     | 
  
 
    
      
  
  
    #create_test_dummy_files  ⇒ Object 
  
  
  
  
    
      
291
292
293
294 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 291
def create_test_dummy_files
  return unless with_dummy_app?
  create_dummy_app
end 
     | 
  
 
    
      
  
  
    #create_test_files  ⇒ Object 
  
  
  
  
    
      
287
288
289 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 287
def create_test_files
  build(:test) unless options[:skip_test]
end 
     | 
  
 
    
      
  
  
    #finish_template  ⇒ Object 
  
  
  
  
    
      
300
301
302 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 300
def finish_template
  build(:leftovers)
end 
     | 
  
 
    
      
  
  
    
      
306
307
308
309
310
311
312
313
314
315
316 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 306
def name
  @name ||= begin
        underscored = original_name.dup
    underscored.gsub!(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
    underscored.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
    underscored.downcase!
    underscored
  end
end
     | 
  
 
    
      
  
  
    #namespaced_name  ⇒ Object 
  
  
  
  
    
      
322
323
324 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 322
def namespaced_name
  @namespaced_name ||= name.tr("-", "/")
end
     | 
  
 
    
      
  
  
    #target_rails_prerelease  ⇒ Object 
  
  
  
  
    
      
239
240
241 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 239
def target_rails_prerelease
  super("plugin new")
end
     | 
  
 
    
      
  
  
    #underscored_name  ⇒ Object 
  
  
  
  
    
      
318
319
320 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 318
def underscored_name
  @underscored_name ||= original_name.underscore
end 
     | 
  
 
    
      
  
  
    #update_gemfile  ⇒ Object 
  
  
  
  
    
      
296
297
298 
     | 
    
      # File 'railties/lib/rails/generators/rails/plugin/plugin_generator.rb', line 296
def update_gemfile
  build(:gemfile_entry) unless options[:skip_gemfile_entry]
end 
     |