'use strict';
var util = require('util');
var path = require('path');
var yeoman = require('yeoman-generator');
var chalk = require('chalk');


var NgComponentGenerator = yeoman.generators.Base.extend({

  info: function () {
    if(!this.options['skip-message']) {
      console.log(chalk.magenta('You\'re using the fantastic NgComponent generator.\n'));
      console.log(chalk.magenta('Initializing yo-rc.json configuration.\n'));
    }
  },

  saveConfig: function() {
    this.config.set('routeDirectory', this.options.routeDirectory || 'app/components/');
    this.config.set('directiveDirectory', this.options.directiveDirectory || 'app/components/');
    this.config.set('filterDirectory', this.options.filterDirectory || 'app/components/');
    this.config.set('serviceDirectory', this.options.serviceDirectory || 'app/components/');
    this.config.set('basePath', this.options.basePath || 'app');
    this.config.set('filters', this.options.filters || ['uirouter']);
    this.config.set('extensions', this.options.extensions || ['js', 'html', 'scss']);
  }
});

module.exports = NgComponentGenerator;
@@ -136,17 +136,16 @@
 alk');%0A%0A
-%0A
 var NgCo
@@ -224,16 +224,17 @@
 %7B%0A    if
+ 
 (!this.o
@@ -461,16 +461,17 @@
 function
+ 
 () %7B%0A   
@@ -483,20 +483,33 @@
 .config.
-set(
+defaults(%7B%0A      
 'routeDi
@@ -508,33 +508,33 @@
 'routeDirectory'
-,
+:
  this.options.ro
@@ -566,39 +566,24 @@
 onents/'
-);
+,
 %0A    
-this.config.set(
+  
 'directi
@@ -586,33 +586,33 @@
 ectiveDirectory'
-,
+:
  this.options.di
@@ -648,39 +648,24 @@
 onents/'
-);
+,
 %0A    
-this.config.set(
+  
 'filterD
@@ -665,33 +665,33 @@
 filterDirectory'
-,
+:
  this.options.fi
@@ -724,39 +724,24 @@
 onents/'
-);
+,
 %0A    
-this.config.set(
+  
 'service
@@ -750,17 +750,17 @@
 rectory'
-,
+:
  this.op
@@ -802,39 +802,24 @@
 onents/'
-);
+,
 %0A    
-this.config.set(
+  
 'basePat
@@ -820,17 +820,17 @@
 asePath'
-,
+:
  this.op
@@ -852,39 +852,24 @@
 %7C%7C 'app'
-);
+,
 %0A    
-this.config.set(
+  
 'filters
@@ -869,17 +869,17 @@
 filters'
-,
+:
  this.op
@@ -911,94 +911,530 @@
 er'%5D
-);%0A    this.config.set('extensions', this.options.extensions %7C%7C %5B'js', 'html', 'scss'%5D
+,%0A      'extensions': this.options.extensions %7C%7C %5B'js', 'html', 'scss'%5D,%0A      'directiveSimple': this.options.directiveSimple %7C%7C '',%0A      'directiveComplex': this.options.directiveComplex %7C%7C '',%0A      'filter': this.options.filter %7C%7C '',%0A      'service': this.options.service %7C%7C '',%0A      'factory': this.options.factory %7C%7C '',%0A      'controller': this.options.controller %7C%7C '',%0A      'decorator': this.options.decorator %7C%7C '',%0A      'provider': this.options.provider %7C%7C '',%0A      'route': this.options.route %7C%7C ''%0A    %7D
 );%0A 

add configs for paths to templates