Class: RogerStyleGuide::Generators::ComponentGenerator

Inherits:
Roger::Generators::Base
  • Object
show all
Defined in:
lib/roger_style_guide/generators/component_generator.rb

Overview

The component generator

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.source_rootObject



37
38
39
# File 'lib/roger_style_guide/generators/component_generator.rb', line 37

def self.source_root

end

Instance Method Details

#component_nameObject



58
59
60
# File 'lib/roger_style_guide/generators/component_generator.rb', line 58

def component_name
  name
end

#components_pathObject



66
67
68
69
70
# File 'lib/roger_style_guide/generators/component_generator.rb', line 66

def components_path
  options[:components_path] && Pathname.new(options[:components_path]) ||
    Roger::Cli::Base.project &&
      Roger::Cli::Base.project.html_path + RogerStyleGuide.components_paths[0]
end

#doObject



49
50
51
52
53
54
55
56
# File 'lib/roger_style_guide/generators/component_generator.rb', line 49

def do
  self.destination_root = components_path

  dir_options = {}
  dir_options[:exclude_pattern] = /.js\Z/ unless options[:js]

  directory(".", component_name, dir_options)
end

#partial_extensionObject



62
63
64
# File 'lib/roger_style_guide/generators/component_generator.rb', line 62

def partial_extension
  options[:extension]
end

#project_template_pathObject



72
73
74
75
# File 'lib/roger_style_guide/generators/component_generator.rb', line 72

def project_template_path
  Roger::Cli::Base.project &&
    Roger::Cli::Base.project.path + "lib/component_template"
end

#source_pathsObject



41
42
43
44
45
46
47
# File 'lib/roger_style_guide/generators/component_generator.rb', line 41

def source_paths
  if options[:template_path]
    [options[:template_path]]
  else
    [project_template_path, File.dirname(__FILE__) + "/component/template"]
  end
end