gulp-crometrics
Version:
Predefined Gulp Tasks for CROmetrics (fork of gulp-clearhead)
71 lines (45 loc) • 2.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _babelCore = require('babel-core');
var _babelCore2 = _interopRequireDefault(_babelCore);
var _babelify = require('babelify');
var _babelify2 = _interopRequireDefault(_babelify);
var _browserify = require('browserify');
var _browserify2 = _interopRequireDefault(_browserify);
var _sassify = require('sassify');
var _sassify2 = _interopRequireDefault(_sassify);
var _stringify = require('stringify');
var _stringify2 = _interopRequireDefault(_stringify);
var _through = require('through2');
var _through2 = _interopRequireDefault(_through);
var _optimizelify = require('./optimizelify');
var _optimizelify2 = _interopRequireDefault(_optimizelify);
var _commentRegex = require('comment-regex');
var _commentRegex2 = _interopRequireDefault(_commentRegex);
var _path = require('path');
var _path2 = _interopRequireDefault(_path);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var browserifyConfig = {
paths: [_path2.default.resolve(__dirname, '../../node_modules'), _path2.default.resolve(__dirname, '../../../../node_modules')]
}; /*jshint esversion:6*/
var babelifyConfig = {
presets: [require('babel-preset-es2015')]
};
function bundlify() {
return _through2.default.obj(function (file, enc, next) {
// get string of buffer contents
var contents = file.contents.toString();
(0, _browserify2.default)(file.path, browserifyConfig).transform(_babelify2.default.configure(babelifyConfig)).transform((0, _stringify2.default)(['.html'])).transform(_sassify2.default, { sourceMapEmbed: false }).bundle(function (err, buf) {
if (err) console.error(err.toString());else {
var result = buf.toString();
var transformed = (0, _optimizelify2.default)(result);
transformed = transformed.replace(/^["']use strict["'];/igm, '');
file.contents = new Buffer(transformed);
}
next(null, file);
});
});
}
exports.default = bundlify;