class Rails::Generators::ComponentGenerator

Public Instance Methods

create_component_file() click to toggle source
# File lib/rails/generators/component/component_generator.rb, line 11
def create_component_file
  template "component.rb", File.join("app/components", class_path, "#{file_name}_component.rb")
end

Private Instance Methods

file_name() click to toggle source
Calls superclass method
# File lib/rails/generators/component/component_generator.rb, line 23
def file_name
  @_file_name ||= super.sub(/_component\z/i, "")
end
initialize_body() click to toggle source
# File lib/rails/generators/component/component_generator.rb, line 39
def initialize_body
  attributes.map { |attr| "@#{attr.name} = #{attr.name}" }.join("\n    ")
end
initialize_signature() click to toggle source
# File lib/rails/generators/component/component_generator.rb, line 31
def initialize_signature
  if attributes.present?
    attributes.map { |attr| "#{attr.name}:" }.join(", ")
  else
    "*"
  end
end
parent_class() click to toggle source
# File lib/rails/generators/component/component_generator.rb, line 27
def parent_class
  defined?(ApplicationComponent) ? "ApplicationComponent" : "ViewComponent::Base"
end