Sha256: d5b04dfa1b93e90fb73e4ce75437547ed5fd08f9e5372678ef04a8c25e4185f1

Contents?: true

Size: 1.12 KB

Versions: 2

Compression:

Stored size: 1.12 KB

Contents

require 'generators/ember/generator_helpers'

module Ember
  module Generators
    class ComponentGenerator < ::Rails::Generators::NamedBase
      include Ember::Generators::GeneratorHelpers

      source_root File.expand_path("../../templates", __FILE__)

      desc "Creates a new Ember.js component and component template\nCustom Ember Components require at least two descriptive names separated by a dash. Use CamelCase or dash-case to name your component.\n\nExample,\n\trails generate ember:component PostChart [options]\n\trails generate ember:component post-chart [options]"

      class_option :ember_path, :type => :string, :aliases => "-d", :default => false, :desc => "Custom ember app path"

      def create_component_files
        dashed_file_name = file_name.gsub(/_/, '-')
        component_path = File.join(ember_path, 'components', class_path, "#{dashed_file_name}_component.js.es6")
        template "component.js.es6", component_path

        template_path = File.join(ember_path, 'templates/components', class_path, "#{dashed_file_name}.hbs")
        template "component.template.hbs", template_path
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ember-appkit-rails-0.1.2 lib/generators/ember/component_generator.rb
ember-appkit-rails-0.1.1 lib/generators/ember/component_generator.rb