-
Notifications
You must be signed in to change notification settings - Fork 29
/
gulpfile.js
53 lines (45 loc) · 1.14 KB
/
gulpfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
var gulp = require('gulp'),
chalk = require('chalk'),
spritesmith = require('gulp.spritesmith'),
fs = require('fs');
gulp.task('default', ['logos']);
gulp.task('logos', function (done) {
log('Building logos sprite ...');
log('Done');
gulp.src([
'logos/yeoman.png',
'logos/gulp.png',
'logos/angular.png',
'logos/node.png',
'logos/socket.png',
'logos/passport.png',
'logos/express.png',
'logos/mongo.png',
'logos/sass.png',
'logos/karma.png',
'logos/protractor.png',
'logos/bower.png'
])
.pipe(spritesmith({
imgName : 'logos-sprite.png',
cssName : 'sprite.css',
algorithm : 'left-right',
algorithmOpts : { sort: false },
padding : 10
}))
.pipe(gulp.dest('logos/'))
.on('end', function () {
fs.unlinkSync('logos/sprite.css');
done();
});
});
// utils
// =====
function log (str) {
console.log(chalk.blue(' >>> [ ') + chalk.green(pad(str, 30, ' ')) + chalk.blue(' ]'));
}
function pad (n, w, z) {
z = z || '0';
n = n + '';
return n.length >= w ? n : n + new Array(w - n.length + 1).join(z);
}