UNPKG

react-color

Version:

A Collection of Color Pickers from Sketch, Photoshop, Chrome & more

69 lines (57 loc) 1.76 kB
var gulp = require('gulp'); var gutil = require('gulp-util'); var webpack = require('webpack'); var WebpackDevServer = require('webpack-dev-server'); var webpackConfig = require('./webpack.config.js'); var babel = require('gulp-babel'); var mapStyles = require('react-map-styles'); var modify = require('gulp-modify'); gulp.task('docs', function(callback) { var port = 9100; var docs = Object.create(webpackConfig); docs.entry = ['webpack-dev-server/client?http://localhost:' + port, 'webpack/hot/dev-server', docs.entry[0]]; docs.module.loaders[0].loaders.unshift('react-hot-loader'); docs.module.loaders[1].loaders.unshift('react-hot-loader'); docs.devtool = 'eval'; docs.debug = true; new WebpackDevServer(webpack(docs), { publicPath: '/' + docs.output.publicPath, hot: true, stats: { cached: false, cachedAssets: false, colors: true, exclude: ['node_modules', 'components'], }, }).listen(port, 'localhost', function(err) { if (err) throw new gutil.PluginError('webpack-dev-server', err); gutil.log('[webpack-dev-server]', 'http://localhost:' + port + '/'); }); }); gulp.task('build', function(done) { var build = Object.create(webpackConfig); build.plugins = [ new webpack.DefinePlugin({ 'process.env': { NODE_ENV: JSON.stringify('production'), }, }), new webpack.optimize.DedupePlugin(), ]; webpack(build, function(err, stats) { if (err) { throw new Error(err); } done(); }); }); gulp.task('bundle', function(done) { return gulp.src('./src/**/*') .pipe(modify({ fileModifier: function(file, contents) { return mapStyles(contents); }, })) .pipe(babel()) .pipe(gulp.dest('lib')); });