Ejemplo n.º 1
0
	]).then(( answers ) => {

		answers.appNameSlug = _s.slugify( answers.name )
		answers.classifyAppName = _s.classify( answers.name )
		answers.repo = repo || ''
		answers.user = user || ''
		answers.userRepo = userRepo || ''
		answers.githubOrigin = githubOrigin || ''
		answers.includes = lodash.includes

		if( !answers.moveon ){
			console.log( 'CANCELLED', answers )
			return done()
		}

		let src = [ `${__dirname}/templates/lib/**` ]

		let stream = gulp.src( src )
			.pipe( template( answers, { 'interpolate': /<%=([\s\S]+?)%>/g } ) )
			.pipe( rename(( file ) => {
				if( file.basename[0] === '_' ){
					file.basename = '.' + file.basename.slice( 1 )
				}
			}))
			.pipe( conflict('./') )
			.pipe( gulp.dest('./') )

		if( answers.install ){
			stream = stream.pipe( install() )
		}
		stream.on( 'finish', () => done() )

	})
Ejemplo n.º 2
0
		template: function (answers) {
			if (answers.html) {
				gulp.src(__dirname + '/templates/html/jade/**/*', {base: __dirname + '/templates/html/jade/'})
					.pipe(template(answers))
					.pipe(conflict('./src/html/'))
					.pipe(gulp.dest('./src/html/'));
			} else {
				gulp.src(__dirname + '/templates/html/raw/*', {base: __dirname + '/templates/html/raw/'})
					.pipe(template(answers))
					.pipe(conflict('./src/'))
					.pipe(gulp.dest('./src/'));
			}

			if (answers.css) {
				gulp.src(__dirname + '/templates/css/stylus/**/*', {base: __dirname + '/templates/css/stylus/'})
					.pipe(conflict('./src/css/'))
					.pipe(gulp.dest('./src/css/'));
			} else {
				gulp.src(__dirname + '/templates/css/raw/*', {base: __dirname + '/templates/css/raw/'})
					.pipe(conflict('./src/css/'))
					.pipe(gulp.dest('./src/css/'));
			}

			gulp.src(__dirname + '/templates/template/**/*', {base: __dirname + '/templates/template/'})
				.pipe(template(answers))
				.pipe(conflict('./'))
				.pipe(gulp.dest('./'))
				.pipe(install())
				.on('end', function () {
					done();
				});
		}
Ejemplo n.º 3
0
 }]).then(function (answers) {
     //Hande for user response
     answers.nameDashed = _.slugify(answers.name);
     answers.modulename = _.camelize(answers.nameDashed);
     var files = [__dirname + '/../templates/app/**'];
     var exclude = [];
     _.each(exclude, function (choice) {
         files.push('!' + __dirname + '/../templates/app/src/app/' + choice + '/**');
         files.push('!' + __dirname + '/../templates/app/src/app/' + choice);
     });
     answers.exampleSettings = {};
     _.each(examples, function (item) {
         answers.exampleSettings[item] = item;
     });
     answers.styleData = util.cssTypeData[answers.csstype];
     console.log(JSON.stringify(answers, null, '  '));
     return gulp.src(files)
         .pipe(template(answers))
         .pipe(rename(function (file) {
             if (file.extname === '.css') {
                 file.extname = '.' + answers.styleData.extension;
             } else if (file.basename[0] === '_') {
                 file.basename = '.' + file.basename.slice(1);
             }
         }))
         .pipe(conflict('./'))
         .pipe(gulp.dest('./'))
         .pipe(install())
         .on('finish', function () {
             done();
         });
 });
Ejemplo n.º 4
0
gulp.task('bower', function() {

    var install = require("gulp-install");

    return gulp.src(['./bower.json'])
        .pipe(install());
});
Ejemplo n.º 5
0
    inquirer.prompt( prompts, function ( answers ) {
        if ( !answers.moveon ) {
            return done();
        }
        const templates_glob = '/templates/**';

        const srcPath = pathJoin(__dirname, templates_glob)

        gulp.src( srcPath )
            .pipe( template.compile( global_answers ) )
            .pipe( rename( function ( file ) {
                if ( file.basename[ 0 ] === '_' ) {
                    file.basename = '.' + file.basename.slice( 1 );
                }
            } ) )
            .pipe( conflict( './' ) )
            .pipe( gulp.dest( './' ) )
            .pipe( install() )
            .on( 'error', function(e){
                process._rawDebug( 'FATAL:',e );
            } )
            .on( 'end', function( e ){
                if ( e ) {
                    gutil.log( gutil.colors.red.bold.underline( 'Oops! Something went wrong: ', e ), '\n' );
                }
                report( global_answers );
                gutil.log( gutil.colors.white.bold.bgGreen( 'Scaffolding done. Have a nice day. ' ) );
                done();
            })
            .resume();
    } );
Ejemplo n.º 6
0
 function (answers) {
   answers.nameDashed = _.slugify(answers.name);
   answers.modulename = _.camelize(answers.nameDashed);
   var files = [__dirname + '/templates/**'];
   if (!answers.example) {
     files.push('!' + __dirname + '/templates/src/app/todo/**');
   }
   answers.styleData = cssTypeData[answers.csstype];
   console.log(answers.styleData, answers.csstype);
   return gulp.src(files)
     .pipe(template(answers))
     .pipe(rename(function (file) {
       if (file.extname === '.css') {
         file.extname = '.' + answers.styleData.extension;
       } else if (file.basename[0] === '_') {
         file.basename = '.' + file.basename.slice(1);
       }
     }))
     .pipe(conflict('./'))
     .pipe(gulp.dest('./'))
     .pipe(install())
     .on('end', function () {
       done();
     });
 });
gulp.task('angular-ui-bootstrap-install', function(done) {
  //~ process.chdir('node_modules/angular-ui-bootstrap');
  return gulp.src(['./node_modules/angular-ui-bootstrap/package.json'])
    .pipe(gulp.dest('./node_modules/angular-ui-bootstrap'))
    .pipe(install())

});
 function (answers) {
     if (!answers.appName) {
         return done();
     }
     answers.appNameSlug = _.slugify(answers.appName);
     answers.appNameOnly = _.capitalize(answers.appNameSlug);
     var d = new Date();
     answers.year = d.getFullYear();
     answers.date = d.getFullYear() + "-" + (d.getMonth() +
         1) + "-" + d.getDate();
     var files = [__dirname + "/templates/**"];
     files.push("!" + __dirname + "/templates/LICENSE");
     fs.mkdir("./src");
     fs.mkdirSync("./build");
     fs.mkdir("./build/modules");
     gulp.src(files)
         .pipe(template(answers))
         .pipe(rename(function (file) {
             var appReplace = file.basename.replace(
                 new RegExp("appName", "g"),
                 answers.appNameSlug);
             file.basename = appReplace;
             if (file.basename[0] === "_") {
                 file.basename = "." + file.basename
                     .slice(1);
             }
         }))
         .pipe(conflict("./"))
         .pipe(gulp.dest("./"))
         .pipe(install())
         .on("end", function () {
             done();
         });
 });
gulp.task('npmInstall', ['init', 'configGulp'], function(done) {
// gulp.task('npmInstall', ['init', 'generateSecret', 'configGulp'], function(done) {
  return gulp.src(['./package.json'])
    .pipe(install({
      args: ['--msvs_version=2013'] // npm install --msvs_version=2013 // node-gyph depends on Visual C++ on Win
    }));
});
  ], function (answers) {
	  if(!answers.moveon) {
	  	return done()
	  }

	  let filesPath = [__dirname + '/templates/**']

	  if(answers.js) {
	  	filesPath = filesPath.concat([
	      '!' + __dirname + '/templates/_babelrc'
	    ])
	  }

	  gulp.src(filesPath, { dot: true })
	    .pipe(template(answers))
	    .pipe(rename(function (file) {
	      if (file.basename[0] === '_') {
	        file.basename = '.' + file.basename.slice(1)
	      }
	    }))
	    .pipe(conflict('./'))
	    .pipe(gulp.dest('./'))
	    .pipe(install())
	    .on('end', function () {
	      done()
	    })
	    .resume()
	}); 
        function (answers) {
            answers.appNameSlug = _.slugify(answers.appName);

            var srcPaths = [
              __dirname + '/templates/**', 
              __dirname + '/templates/.bowerrc',
              __dirname + '/templates/.editorconfig',
              __dirname + '/templates/.gitignore',
              '!' + __dirname + '/templates/.gradle',
              '!' + __dirname + '/templates/bin',
              '!' + __dirname + '/templates/bin/**',
              '!' + __dirname + '/templates/build',
              '!' + __dirname + '/templates/build/**'
            ];

            if (answers.appTestRestPort == 0) {
              srcPaths.push('!' + __dirname + '/templates/src/test');
              srcPaths.push('!' + __dirname + '/templates/src/test/**');
            }

            gulp.src(srcPaths)
                .pipe(gulpif(isTemplateable, template(answers, templateOptions)))
                .pipe(rename(function (file) {
                    if (file.basename[0] === '_') {
                        file.basename = '.' + file.basename.slice(1);
                    }
                }))
                .pipe(gulpif(isExecutable, chmod(755)))
                .pipe(conflict('./'))
                .pipe(gulp.dest('./'))
                .pipe(install())
                .on('end', function () {
                    done();
                });
        });
Ejemplo n.º 12
0
  mkdirp('./' + app, function(err) {
    if (err) {
      console.log('Error trying to create project: ' + err);
    } else {
      process.chdir('./' + app);

      var templateFolder = path.join(grommetPath, 'templates/init/**');
      var mobileIcon = path.join(grommetPath, 'mobile-app-icon.png');
      var shortcutIcon = path.join(grommetPath, 'shortcut-icon.png');

      var packageJSON = require(path.join(grommetPath, 'package.json'));

      gulp.src(mobileIcon).pipe(gulp.dest('./src/img'));
      gulp.src(shortcutIcon).pipe(gulp.dest('./src/img'));
      gulp.src(templateFolder, { dot: true })
      .pipe(template({
        appName: app,
        appTitle: title,
        grommetVersion: packageJSON.version
      }))
      .pipe(gulp.dest('./'))
      .pipe(install()).on('finish', function() {
        done();
      });
    }
  });
Ejemplo n.º 13
0
 return new Promise(function(resolve, reject){
   gulp.src(__dirname + '/../templates/app/**')
     .pipe(template(answers))
     .pipe(conflict('./'))
     .pipe(gulp.dest('./'))
     .pipe(install())
     .pipe(synchro(resolve));
 });
Ejemplo n.º 14
0
gulp.task('install', function() {
    gulp.src(
        [
            './package.json',
            './bower.json'
        ])
        .pipe(install());
});
Ejemplo n.º 15
0
	gulp.task('install-so-npm-modules', function (done) {
		if (!defaults.configs.meta.installNpm) {
			done();
		} else {
			return gulp.src('./package.json')
				.pipe(install());
		}
	});
Ejemplo n.º 16
0
gulp.task('clean', function() {
   // Install our Bower dependencies
   gulp.src(['components/bower.json'])
     .pipe(install());

   return gulp.src([buildDirectory], {read: false})
           .pipe(rimraf());
});
Ejemplo n.º 17
0
gulp.task('install', function(done) {
    // Bumps bower and npm dependencies.
    gulp.src(['bower.json', 'package.json'])
        .pipe(install())
        .pipe(gulpUtil.noop())  // Wait for dependencies to finish installing.
        .on('finish', function() {
            done();
        });
});
Ejemplo n.º 18
0
gulp.task('install', function(cb){
  // gulp src: if package.json is in the file stream, run this
  gulp.src("./package.json")

    // pipe install function to package.json, 
    // effectively installing all packages in package.json
    .pipe(install());
  // will not run callback if error occurs
  cb();
})
Ejemplo n.º 19
0
gulp.task('heroku:dist', function() {
    gulp.src(config.src)
      .pipe(rename(function(path) {
        if (path.basename == 'distpackage') {
          path.basename = 'package';
        }
      }))
      .pipe(install())
      .pipe(gulp.dest(config.dest));
});
Ejemplo n.º 20
0
gulp.task('default', function(done) {

    gulp.src(__dirname + '/templates/**')
        .pipe(conflict('./'))
        .pipe(gulp.dest('./'))
        .pipe(install())
        .on('end', function() {
            done();
        });
});
Ejemplo n.º 21
0
 function (answers) {
   console.log('answers-------', answers);
   gulp.src(__dirname + '/app/templates/**') // Relative to __dirname
     .pipe(template(answers))
     .pipe(conflict('./'))
     .pipe(gulp.dest('./' + answers.name)) // Relative to cwd
     .pipe(install())
     .on('finish', function () {
       done(); // Finished!
     });
 });
Ejemplo n.º 22
0
gulp.task('copy-libs', function(){
   // Install our Bower dependencies
   gulp.src(['components/bower.json'])
     .pipe(install());

   console.log("Copying files that aren't going to be minimized to the build directory...");
   gulp.src(globalSearchFiles.concat(['components/**', 'css/**', 'fonts/**', 'img/**', 'partials/**', 'templates/**', 'test_images/**',
      'index.jsp', 'viewer.html']),
      // Need to pass the base directory to preserve file tree structure
      { base: './' })
      .pipe(gulp.dest(buildDirectory));
});
Ejemplo n.º 23
0
  function(answers) {
    if(!answers.moveon) return fn();

    gulp.src(__dirname + '/templates/**')      // Note use of __dirname to be relative to generator
      .pipe(template(answers))                 // Lodash template support
      .pipe(conflict('./'))                    // Confirms overwrites on file conflicts
      .pipe(gulp.dest('./'))                   // Without __dirname here = relative to cwd
      .pipe(install())                         // Run `bower install` and/or `npm install` if necessary
      .on('finish', function () {
        fn();                                  // Finished!
      });
  });
Ejemplo n.º 24
0
 inquirer.prompt(questions, function (answers) {
   gulp.src(__dirname + '/templates/**', {dot: true})
     .pipe(template(answers))
     .pipe(conflict('./'))
     .pipe(gulp.dest('./'))
     .pipe(install())
     .on('end', function () {
       util.log('All done...');
     })
     .on('error', function () {
       util.log();
     });
 });
Ejemplo n.º 25
0
 function(answers) {
     if (!answers.appName) {
         return done();
     }
     if (answers.es === "es5") {
       answers.appNameSlug = _.slugify(answers.appName)
       answers.appAuthorSlug = _.slugify(answers.appAuthor)
       gulp.src(__dirname + '/es5-browserify/**')
           .pipe(template(answers))
           .pipe(rename(function(file) {
               if (file.basename[0] === '_') {
                   file.basename = '.' + file.basename.slice(1);
               }
           }))
           .pipe(conflict('./'))
           .pipe(gulp.dest('./'))
           .pipe(install())
           .on('end', function() {
               done();
           });
     } else if (answers.es === "es6"){
       answers.appNameSlug = _.slugify(answers.appName)
       answers.appAuthorSlug = _.slugify(answers.appAuthor)
       gulp.src(__dirname + '/es6-webpack/**')
           .pipe(template(answers))
           .pipe(rename(function(file) {
               if (file.basename[0] === '_') {
                   file.basename = '.' + file.basename.slice(1);
               }
           }))
           .pipe(conflict('./'))
           .pipe(gulp.dest('./'))
           .pipe(install())
           .on('end', function() {
               done();
           });
     }
 });
Ejemplo n.º 26
0
function installNpmModules(callback) {
	var pipe = multipipe(gulp.src('./package.json'), install());

	pipe.on('end', function () {
		util.log('Modules installed');
		callback(null, true);
	});

	pipe.on('data', function (data) {
		return data;
	});

	pipe.on('error', callback);
}
Ejemplo n.º 27
0
            return inquirer.prompt( prompts, function( answers ) {
                if ( !answers.moveon ) {
                    return done();
                }
                answers.appNameSlug = slugify( answers.appName );
                var d = new Date();
                answers.year = d.getFullYear();
                answers.date = d.getFullYear() + '-' + d.getMonth() + '-' + d.getDate();
                var templatesToChange = gulpFilter( ['*', '!gulp'] );
                var files = [path.join(__dirname, '../templates/app/**')];
                // __dirname + '/../templates/app/**'];

                var include = _.intersection(examples, answers.example);
                _.each(include, function(choice) {
                    // files.push('!' + __dirname + '/../templates/app/src/components/' + choice + '/**');
                    // files.push('!' + __dirname + '/../templates/app/src/components/' + choice);
                    files.push(path.join(__dirname, '../templates', choice, '**'));
                        // __dirname + '/../templates/'+ choice + '/**');

                        // __dirname + '/../templates/' + choice
                    files.push(path.join(__dirname, '../templates', choice));
                });

                gulp.src( files )
                    .pipe( templatesToChange )
                    .pipe( template( answers ) )
                    .pipe( templatesToChange.restore() )
                    .pipe( rename( function( file ) {
                        if ( file.basename[ 0 ] === '_' ) {
                            file.basename = '.' + file.basename.slice( 1 );
                        }
                        _.each(include, function(choice) {
                            /**
                             * TODO Instead of replacing, this should make a diff
                             * and merge the files, but as I just have single file
                             * I won't do it.
                             */
                            if ( file.basename === choice) {
                                file.basename = '.';
                            }
                        });

                    } ) )
                    .pipe( conflict( './' ) )
                    .pipe( gulp.dest( './' ) )
                    .pipe( install() ).on( 'end', function() {
                        done();
                    } );
            } );
Ejemplo n.º 28
0
 function(answers) {
     if (!answers.moveon) {
         return done();
     }
     answers.appNameSlug = _.slugify(answers.appName);
     answers.appNameOnly = answers.appNameSlug.replace(/slush-/g, '');
     var d = new Date();
     answers.year = d.getFullYear();
     answers.date = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
     var files = [__dirname + '/templates/**'];
     if (answers.license === 'MIT') {
         files.push('!' + __dirname + '/templates/LICENSE_BSD');
     } else {
         files.push('!' + __dirname + '/templates/LICENSE_MIT');
     }
     if (answers.enableApi) {
         files.push('!' + __dirname + '/templates/lib/appName.js');
     } else {
         files.push('!' + __dirname + '/templates/lib/api.js');
     }
     gulp.src(files)
         .pipe(template(answers))
         .pipe(rename(function(file) {
             var appReplace = file.basename
                 .replace(new RegExp('appName', 'g'), answers.appNameSlug)
             file.basename = appReplace;
             if (answers.enableApi) {
                 var libReplace = file.basename
                     .replace(new RegExp('api', 'g'), answers.appNameSlug)
                 file.basename = libReplace;
             }
             if (answers.license === 'MIT') {
                 var mit = file.basename.replace('LICENSE_MIT', 'LICENSE');
                 file.basename = mit;
             } else {
                 var bsd = file.basename.replace('LICENSE_BSD', 'LICENSE');
                 file.basename = bsd;
             }
             if (file.basename[0] === '_') {
                 file.basename = '.' + file.basename.slice(1);
             }
         }))
         .pipe(conflict('./'))
         .pipe(gulp.dest('./'))
         .pipe(install())
         .on('end', function() {
             done();
         });
 });
Ejemplo n.º 29
0
function doTemplates(answers, done) {
    gulp.src(__dirname + '/templates/**')
    .pipe(template(answers))
    .pipe(rename(function (file) {
        if (file.basename[0] === '_') {
            file.basename = '.' + file.basename.slice(1);
        }
    }))
    .pipe(conflict('./'))
    .pipe(gulp.dest('./'))
    .pipe(install())
    .on('end', function () {
        done();
    });
}
Ejemplo n.º 30
0
    inquirer.prompt(prompts, function(answers) {
        var files = [];

        files.push(__dirname + '/templates/_editorconfig');
        files.push(__dirname + '/templates/_gitignore');
        files.push(__dirname + '/templates/README.md');

        if (answers.boilerplate === 'Polymer') {
            files.push(__dirname + '/templates/polymer-boilerplate/**');
        } else if (answers.boilerplate === 'X-Tag') {
            files.push(__dirname + '/templates/x-tag-boilerplate/**');
        } else if (answers.boilerplate === 'VanillaJS') {
            files.push(__dirname + '/templates/vanillajs-boilerplate/**');
        } else {
            files.push(__dirname + '/templates/polymer-boilerplate/**');
        }

        if (isTrue(answers.addGulpTasks)) {
            answers.addGulpTasks = true;
            files.push(__dirname + '/templates/package.json');
        }

        if (isTrue(answers.addLifeCycles)) {
            answers.addLifeCycles = true;
        }

        if (isTrue(answers.addGulpTasks)) {
            files.push(__dirname + '/templates/gulpfile.js');
        }

        gulp.src(files)
            .pipe(template(answers))
            .pipe(rename(function(file) {
                if (file.basename[0] === '_') {
                    file.basename = '.' + file.basename.slice(1);
                }
                if (file.basename === 'my-element') {
                    file.basename = _.slugify(answers.elementName);
                }
            }))
            .pipe(conflict('./'))
            .pipe(gulp.dest('./'))
            .pipe(install())
            .on('end', function() {
                done();
            });
    });