123456789101112131415161718192021222324252627282930313233343536373839404142 |
- var path = require('path')
- var chalk = require('chalk')
- var glob = require('glob')
- var exec = require('child_process').exec
- function handleErr (err) {
- console.error(chalk.red('✗ Error:'), chalk.red(err.message))
- }
- function gzip (file) {
- return new Promise(function (resolve, reject) {
- var fileName = path.basename(file)
- var gzipCommand = 'gzip < ' + file + ' > ' + file + '.gz'
- exec(gzipCommand, function (error, stdout, stderr) {
- if (error) {
- handleErr(error)
- reject(error)
- return
- }
- console.info(chalk.green('✓ Gzipped: '), chalk.magenta(fileName + '.gz'))
- resolve()
- })
- })
- }
- function gzipDist () {
- return new Promise(function (resolve) {
- glob('./dist/**/*.*(css|js)', function (err, files) {
- if (err) console.log(err)
- var gzipPromises = []
- files.forEach(function (file) {
- gzipPromises.push(gzip(file))
- })
- return Promise.all(gzipPromises).then(function () {
- console.info(chalk.yellow('✓ Gzipped everything yo 🎉'))
- resolve()
- })
- })
- })
- }
- gzipDist()
|