2016-04-01 13:56:35 +00:00
|
|
|
"use strict";
|
2016-07-26 16:15:03 +00:00
|
|
|
const plugins = require("./gulpbrowser.plugins");
|
|
|
|
let browserify = function (transforms = []) {
|
2016-05-13 18:04:41 +00:00
|
|
|
if (!Array.isArray(transforms)) {
|
|
|
|
transforms = [transforms];
|
|
|
|
}
|
2016-07-26 16:15:03 +00:00
|
|
|
let forEach = function (file, enc, cb) {
|
|
|
|
let bundleCallback = function (err, bufferedContent) {
|
2016-02-26 16:57:53 +00:00
|
|
|
if (Buffer.isBuffer(bufferedContent)) {
|
|
|
|
file.contents = bufferedContent;
|
|
|
|
}
|
|
|
|
else {
|
2016-12-13 22:01:25 +00:00
|
|
|
console.log('gulp-browser: .browserify() ' + err.message);
|
2016-04-01 13:56:35 +00:00
|
|
|
cb(new Error(err.message), file);
|
|
|
|
return;
|
2016-02-26 16:57:53 +00:00
|
|
|
}
|
|
|
|
cb(null, file);
|
|
|
|
};
|
2016-04-01 13:56:35 +00:00
|
|
|
if (file.contents.length > 0) {
|
2016-07-26 16:15:03 +00:00
|
|
|
let browserified = plugins.browserify(file, { basedir: file.base });
|
2016-05-13 18:04:41 +00:00
|
|
|
transforms.forEach(function (transform) {
|
|
|
|
if (typeof transform === 'function') {
|
2016-07-26 16:15:03 +00:00
|
|
|
browserified.transform(transform);
|
2016-05-13 18:04:41 +00:00
|
|
|
}
|
|
|
|
else {
|
2016-07-26 16:15:03 +00:00
|
|
|
browserified.transform(transform.transform, transform.options);
|
2016-05-13 18:04:41 +00:00
|
|
|
}
|
|
|
|
});
|
2016-07-26 16:15:03 +00:00
|
|
|
browserified.bundle(bundleCallback);
|
2016-04-01 13:56:35 +00:00
|
|
|
}
|
|
|
|
else {
|
2016-12-13 22:01:25 +00:00
|
|
|
console.warn('gulp-browser: .browserify() file.contents appears to be empty');
|
2016-04-01 13:56:35 +00:00
|
|
|
cb(null, file);
|
|
|
|
}
|
|
|
|
;
|
|
|
|
};
|
2016-07-26 16:15:03 +00:00
|
|
|
let atEnd = function (cb) {
|
2016-04-01 13:56:35 +00:00
|
|
|
cb();
|
|
|
|
}; // no need to clean up after ourselves
|
2016-07-26 16:15:03 +00:00
|
|
|
return plugins.through2.obj(forEach, atEnd); // this is the through object that gets returned by gulpBrowser.browserify();
|
2016-02-26 16:57:53 +00:00
|
|
|
};
|
|
|
|
module.exports = browserify;
|
2016-12-13 22:01:25 +00:00
|
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VscGJyb3dzZXIuYnJvd3NlcmlmeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2d1bHBicm93c2VyLmJyb3dzZXJpZnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLGlEQUFpRDtBQUVqRCxJQUFJLFVBQVUsR0FBRyxVQUFVLFVBQVUsR0FBRyxFQUFFO0lBRXRDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0IsVUFBVSxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDN0IsQ0FBQztJQUVELElBQUksT0FBTyxHQUFHLFVBQVUsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBRWpDLElBQUksY0FBYyxHQUFHLFVBQVUsR0FBRyxFQUFFLGVBQWU7WUFDL0MsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFBO1lBQ25DLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixPQUFPLENBQUMsR0FBRyxDQUFDLDhCQUE4QixHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQkFDekQsRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtnQkFDaEMsTUFBTSxDQUFBO1lBQ1YsQ0FBQztZQUNELEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDbEIsQ0FBQyxDQUFBO1FBRUQsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzQixJQUFJLFlBQVksR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUVuRSxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsU0FBUztnQkFDbEMsRUFBRSxDQUFDLENBQUMsT0FBTyxTQUFTLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQztvQkFDbEMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDckMsQ0FBQztnQkFBQyxJQUFJLENBQUMsQ0FBQztvQkFDSixZQUFZLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUNsRSxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUE7WUFFRixZQUFZLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQ3ZDLENBQUM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLE9BQU8sQ0FBQyxJQUFJLENBQUMsK0RBQStELENBQUMsQ0FBQTtZQUM3RSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ2xCLENBQUM7UUFBQSxDQUFDO0lBQ04sQ0FBQyxDQUFBO0lBRUQsSUFBSSxLQUFLLEdBQUcsVUFBVSxFQUFFO1FBQ3BCLEVBQUUsRUFBRSxDQUFBO0lBQ1IsQ0FBQyxDQUFBLENBQUMsc0NBQXNDO0lBRXhDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUEsQ0FBQyw2RUFBNkU7QUFDN0gsQ0FBQyxDQUFBO0FBRUQsaUJBQVMsVUFBVSxDQUFBIn0=
|