You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			64 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
		
		
			
		
	
	
			64 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
| 
											11 years ago
										 | var gulp = require('gulp'); | ||
|  | var concat = require('gulp-concat'); | ||
|  | var uglify = require('gulp-uglify'); | ||
|  | var header = require('gulp-header'); | ||
|  | var jshint = require('gulp-jshint'); | ||
|  | var todo = require('gulp-todo'); | ||
|  | var gulputil = require('gulp-util'); | ||
|  | 
 | ||
|  | var moment = require('moment'); | ||
|  | var pkg = require('./package.json'); | ||
|  | 
 | ||
|  | var banner = | ||
|  | 	'/*!\n\n' + | ||
|  | 	'<%= pkg.name %> - <%= pkg.summary %>\nVersion <%= pkg.version %>+<%= build %>\n' + | ||
|  | 	'\u00A9 <%= year %> <%= pkg.author.name %> - <%= pkg.author.url %>\n\n' + | ||
|  | 	'Site:     <%= pkg.homepage %>\n'+ | ||
|  | 	'Issues:   <%= pkg.bugs.url %>\n' + | ||
|  | 	'License:  <%= pkg.license.url %>\n\n' + | ||
|  | 	'*/\n'; | ||
|  | 
 | ||
|  | function generateBuild(){ | ||
|  | 	var date = new Date; | ||
|  | 	return Math.floor((date - (new Date(date.getFullYear(),0,0)))/1000).toString(36) | ||
|  | } | ||
|  | 
 | ||
|  | var build = generateBuild(); | ||
|  | 
 | ||
|  | var paths = { | ||
|  | 	scripts: ["src/ondomready.js", "src/polyfills.js", "src/augment.js", "src/holder.js"] | ||
|  | } | ||
|  | 
 | ||
|  | gulp.task('jshint', function () { | ||
|  | 	return gulp.src(paths.scripts[paths.scripts.length - 1]) | ||
|  | 		.pipe(jshint()) | ||
|  | 		.pipe(jshint.reporter('default')) | ||
|  | }); | ||
|  | 
 | ||
|  | gulp.task('todo', function(){ | ||
|  | 	return gulp.src(paths.scripts) | ||
|  | 		.pipe(todo()) | ||
|  | 		.pipe(gulp.dest('./')) | ||
|  | }); | ||
|  | 
 | ||
|  | gulp.task('scripts', ['jshint'], function () { | ||
|  | 	return gulp.src(paths.scripts) | ||
|  | 		.pipe(concat("holder.js")) | ||
|  | 		.pipe(uglify()) | ||
|  | 		.pipe(header(banner, { | ||
|  | 			pkg: pkg, | ||
|  | 			year: moment().format("YYYY"), | ||
|  | 			build: build | ||
|  | 		})) | ||
|  | 		.pipe(gulp.dest("./")) | ||
|  | }); | ||
|  | 
 | ||
|  | gulp.task('watch', function(){ | ||
|  | 	gulp.watch(paths.scripts, ['default']); | ||
|  | }); | ||
|  | 
 | ||
|  | gulp.task('default', ['todo', 'jshint', 'scripts'], function(){ | ||
|  | 	build = generateBuild(); | ||
|  | 	gulputil.log("Finished build "+build); | ||
|  | }); |