Compare commits

..

42 Commits

Author SHA1 Message Date
ad9dde6fb6 2.1.8 2016-06-03 20:57:40 +02:00
e928510886 compile 2016-06-03 20:57:34 +02:00
7065094a84 add babelify test and example 2016-06-03 20:57:10 +02:00
7e210d473f 2.1.7 2016-06-03 20:11:27 +02:00
e3aa4cbbcc now using typings-global 2016-06-03 20:11:17 +02:00
4a7ffa1caf 2.1.6 2016-06-03 19:39:06 +02:00
872eef5de8 2.1.5 2016-06-03 19:32:37 +02:00
7d464df932 update dependencies 2016-06-03 19:32:32 +02:00
712000b688 2.1.4 2016-05-13 18:22:12 +00:00
e2ed8c5f4c README fix 2016-05-13 18:22:03 +00:00
245449ee13 2.1.3 2016-05-13 18:20:14 +00:00
7cd695fc92 small TypeScript change 2016-05-13 18:20:07 +00:00
80223dc038 2.1.2 2016-05-13 18:18:53 +00:00
7b1df4148d update README 2016-05-13 18:18:49 +00:00
e81288a9dd 2.1.1 2016-05-13 18:15:31 +00:00
1734a2030b update README 2016-05-13 18:15:16 +00:00
65b96af6a8 2.1.0 2016-05-13 18:05:46 +00:00
eec824e959 2.0.2 2016-05-13 18:05:00 +00:00
d28634a865 compiled 2016-05-13 18:04:41 +00:00
540d9a9b56 Merge pull request #56 from enigmamarketing/master
Add ability to pass through transform plugins to browserify.
2016-05-13 19:55:09 +02:00
65c70eec98 Fix bug where passing an object with transform options causes an exception. 2016-05-13 15:31:24 +01:00
1622715a51 Add ability to pass through transform plugins to browserify. 2016-05-12 11:15:04 +01:00
2d063f1fe4 2.0.1 2016-04-05 01:04:01 +02:00
bc87a24ae8 updated deps 2016-04-05 01:04:01 +02:00
dd2f410fdb 2.0.0 2016-04-05 00:18:31 +02:00
acde823f08 update deps 2016-04-05 00:18:26 +02:00
6edd270a92 1.2.3 2016-04-04 23:08:13 +02:00
be43477dca update deps 2016-04-04 23:08:10 +02:00
03a931a9d3 update deps 2016-04-04 23:05:54 +02:00
f05b790e4d update readme 2016-04-02 23:06:11 +02:00
61dc3347c7 1.2.2 2016-04-02 21:06:41 +02:00
2de34d9928 update npmts to latest version 2016-04-02 21:06:36 +02:00
2c69bdd39c update README 2016-04-01 16:26:47 +02:00
130f8b00d7 update travis.yml 2016-04-01 14:14:42 +00:00
a87263888c 1.2.1 2016-04-01 14:11:30 +00:00
802a348123 update main module export 2016-04-01 14:11:23 +00:00
74bbd71ef4 remove ol tsd.json, now using typings with npmts 2016-04-01 14:00:09 +00:00
86f7e0631b 1.2.0 2016-04-01 13:56:51 +00:00
0657edac50 now handling empty files alright and handling errors better. fixes #48 2016-04-01 13:56:35 +00:00
01a89ecad1 1.1.1 2016-02-26 17:59:19 +01:00
213cd764d8 update reamde 2016-02-26 17:59:16 +01:00
244048fccb 1.1.0 2016-02-26 17:58:18 +01:00
23 changed files with 271 additions and 124 deletions

BIN
.DS_Store vendored

Binary file not shown.

37
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,37 @@
image: hosttoday/ht-docker-node:latest
stages:
- test
- release
- page
testLEGACY:
stage: test
script:
- npmci test legacy
tags:
- docker
testLTS:
stage: test
script:
- npmci test lts
tags:
- docker
testSTABLE:
stage: test
script:
- npmci test stable
tags:
- docker
release:
stage: release
script:
- npmci publish npm
- npmci trigger
only:
- tags
tags:
- docker

View File

@ -1,6 +1,7 @@
language: node_js
node_js:
- '4.2.4'
- 4
- stable
deploy:
provider: npm
email: npm@lossless.digital

View File

@ -1,24 +1,31 @@
# gulp-browser
browserify and other goodies for gulp
### Build Status/Dependencies
[![Build Status](https://travis-ci.org/pushrocks/gulp-browser.svg?branch=master)](https://travis-ci.org/pushrocks/gulp-browser)
### Status
[![build status](https://gitlab.com/pushrocks/gulp-browser/badges/master/build.svg)](https://gitlab.com/pushrocks/gulp-browser/commits/master)
[![Dependency Status](https://david-dm.org/pushrocks/gulp-browser.svg)](https://david-dm.org/pushrocks/gulp-browser)
[![bitHound Dependencies](https://www.bithound.io/github/pushrocks/gulp-browser/badges/dependencies.svg)](https://www.bithound.io/github/pushrocks/gulp-browser/master/dependencies/npm)
[![bitHound Code](https://www.bithound.io/github/pushrocks/gulp-browser/badges/code.svg)](https://www.bithound.io/github/pushrocks/gulp-browser)
[![Coverage Status](https://coveralls.io/repos/github/pushrocks/gulp-browser/badge.svg?branch=master)](https://coveralls.io/github/pushrocks/gulp-browser?branch=master)
[![codecov.io](https://codecov.io/github/pushrocks/gulp-browser/coverage.svg?branch=master)](https://codecov.io/github/pushrocks/gulp-browser?branch=master)
### Usage
gulp-browser is meant to be easy:
#### Browserify:
```javascript
var gulp = require("gulp");
var gulpBrowser = require("gulp-browser");
```typescript
let gulp = require("gulp");
let gulpBrowser = require("gulp-browser");
let transforms = [
{
transform: "babelify",
options: {presets: ["es2015", "react"]}
}
];
gulp.task('gulpBrowserTest',function() {
var stream = gulp.src('./test/*.js')
.pipe(gulpBrowser.browserify())
.pipe(gulpBrowser.browserify(transforms)) // gulp.browserify() accepts an optional array of tansforms
.pipe(gulp.dest("./test/browserifiedJS/"));
return stream;
});
@ -30,7 +37,14 @@ gulp-browser is meant to be easy:
[![devDependency Status](https://david-dm.org/pushrocks/gulp-browser/dev-status.svg)](https://david-dm.org/pushrocks/gulp-browser#info=devDependencies)
[![bitHound Dev Dependencies](https://www.bithound.io/github/pushrocks/gulp-browser/badges/devDependencies.svg)](https://www.bithound.io/github/pushrocks/gulp-browser/master/dependencies/npm)
### About the authors:
[![Project Phase](https://mediaserve.lossless.digital/lossless.de/img/createdby_github.svg)](https://lossless.com/)
### Extending this module
If you have ideas for other great browser related gulp pipe stops, feel free to raise an issue on GitHub.
[![Gitter](https://img.shields.io/badge/Support%20us-PayPal-blue.svg)](https://paypal.me/lossless)
### Contributors
* [Phil Kunz](https://github.com/philkunz)
* [Steffan Donal](https://github.com/SteffanDonal)
### About the maintainer:
[![Project Phase](https://mediaserve.lossless.digital/lossless.com/img/createdby_github.svg)](https://lossless.com/)
[![PayPal](https://img.shields.io/badge/Support%20us-PayPal-blue.svg)](https://paypal.me/lossless)

3
dist/gulpbrowser.browserify.d.ts vendored Normal file
View File

@ -0,0 +1,3 @@
import "typings-global";
declare let browserify: (transforms?: any[]) => any;
export = browserify;

View File

@ -1,20 +1,46 @@
/// <reference path="./typings/main.d.ts" />
"use strict";
require("typings-global");
var plugins = require("./gulpbrowser.plugins");
var browserify = function () {
return plugins.through.obj(function (file, enc, cb) {
var browserify = function (transforms) {
if (transforms === void 0) { transforms = []; }
if (!Array.isArray(transforms)) {
transforms = [transforms];
}
var forEach = function (file, enc, cb) {
var bundleCallback = function (err, bufferedContent) {
if (Buffer.isBuffer(bufferedContent)) {
file.contents = bufferedContent;
}
else {
plugins.beautylog.error("gulp-browser: .browserify() " + err.message);
cb(new Error(err.message), file);
return;
}
cb(null, file);
};
plugins.browserify(file, { basedir: file.base })
.bundle(bundleCallback);
});
if (file.contents.length > 0) {
var browserified_1 = plugins.browserify(file, { basedir: file.base });
transforms.forEach(function (transform) {
if (typeof transform === 'function') {
browserified_1.transform(transform);
}
else {
browserified_1.transform(transform.transform, transform.options);
}
});
browserified_1.bundle(bundleCallback);
}
else {
plugins.beautylog.warn("gulp-browser: .browserify() file.contents appears to be empty");
cb(null, file);
}
;
};
var atEnd = function (cb) {
cb();
}; // no need to clean up after ourselves
return plugins.through.obj(forEach, atEnd); // this is the through object that gets returned by gulpBrowser.browserify();
};
module.exports = browserify;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImd1bHBicm93c2VyLmJyb3dzZXJpZnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNENBQTRDO0FBQzVDLElBQU8sT0FBTyxXQUFXLHVCQUF1QixDQUFDLENBQUM7QUFDbEQsSUFBSSxVQUFVLEdBQUk7SUFDVixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDckMsSUFBSSxjQUFjLEdBQUcsVUFBUyxHQUFHLEVBQUUsZUFBZTtZQUM5QyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUEsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUM7WUFDcEMsQ0FBQztZQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNKLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLDhCQUE4QixHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxRSxDQUFDO1lBQ0QsRUFBRSxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUM7UUFDRixPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDM0MsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBQy9CLENBQUMsQ0FBQyxDQUFDO0FBQ1YsQ0FBQyxDQUFDO0FBRUgsaUJBQVMsVUFBVSxDQUFDIiwiZmlsZSI6Imd1bHBicm93c2VyLmJyb3dzZXJpZnkuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi90eXBpbmdzL21haW4uZC50c1wiIC8+XG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL2d1bHBicm93c2VyLnBsdWdpbnNcIik7XG5sZXQgYnJvd3NlcmlmeSA9ICBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHBsdWdpbnMudGhyb3VnaC5vYmooKGZpbGUsIGVuYywgY2IpID0+IHsgLy90aGlzIGlzIHRoZSB0aHJvdWdoIG9iamVjdCB0aGF0IGdldHMgcmV0dXJuZWQgYnkgZ3VscEJyb3dzZXIuYnJvd3NlcmlmeSgpO1xuICAgICAgICAgICAgdmFyIGJ1bmRsZUNhbGxiYWNrID0gZnVuY3Rpb24oZXJyLCBidWZmZXJlZENvbnRlbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAoQnVmZmVyLmlzQnVmZmVyKGJ1ZmZlcmVkQ29udGVudCkpe1xuICAgICAgICAgICAgICAgICAgICBmaWxlLmNvbnRlbnRzID0gYnVmZmVyZWRDb250ZW50O1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLmVycm9yKFwiZ3VscC1icm93c2VyOiAuYnJvd3NlcmlmeSgpIFwiICsgZXJyLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYihudWxsLGZpbGUpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHBsdWdpbnMuYnJvd3NlcmlmeShmaWxlLCB7IGJhc2VkaXI6IGZpbGUuYmFzZSB9KVxuICAgICAgICAgICAgICAgIC5idW5kbGUoYnVuZGxlQ2FsbGJhY2spXG4gICAgICAgIH0pO1xuIH07XG5cbmV4cG9ydCA9IGJyb3dzZXJpZnk7Il0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImd1bHBicm93c2VyLmJyb3dzZXJpZnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUN4QixJQUFPLE9BQU8sV0FBVyx1QkFBdUIsQ0FBQyxDQUFDO0FBR2xELElBQUksVUFBVSxHQUFJLFVBQVMsVUFBZTtJQUFmLDBCQUFlLEdBQWYsZUFBZTtJQUV0QyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdCLFVBQVUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLE9BQU8sR0FBRyxVQUFTLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUVoQyxJQUFJLGNBQWMsR0FBRyxVQUFTLEdBQUcsRUFBRSxlQUFlO1lBQzlDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQztZQUNwQyxDQUFDO1lBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ0osT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsOEJBQThCLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN0RSxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoQyxNQUFNLENBQUM7WUFDWCxDQUFDO1lBQ0QsRUFBRSxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUM7UUFFRixFQUFFLENBQUEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQSxDQUFDO1lBQ3pCLElBQUksY0FBWSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBRXBFLFVBQVUsQ0FBQyxPQUFPLENBQUMsVUFBVSxTQUFTO2dCQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFPLFNBQVMsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUNsQyxjQUFZLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN0QyxDQUFDO2dCQUFDLElBQUksQ0FBQyxDQUFDO29CQUNKLGNBQVksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ25FLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVILGNBQVksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ0osT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsK0RBQStELENBQUMsQ0FBQztZQUN4RixFQUFFLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xCLENBQUM7UUFBQSxDQUFDO0lBQ04sQ0FBQyxDQUFBO0lBRUQsSUFBSSxLQUFLLEdBQUcsVUFBUyxFQUFFO1FBQ25CLEVBQUUsRUFBRSxDQUFDO0lBQ1QsQ0FBQyxDQUFBLENBQUMsc0NBQXNDO0lBRXhDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyw2RUFBNkU7QUFDM0gsQ0FBQyxDQUFDO0FBRUgsaUJBQVMsVUFBVSxDQUFDIiwiZmlsZSI6Imd1bHBicm93c2VyLmJyb3dzZXJpZnkuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xyXG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL2d1bHBicm93c2VyLnBsdWdpbnNcIik7XHJcblxyXG5cclxubGV0IGJyb3dzZXJpZnkgPSAgZnVuY3Rpb24odHJhbnNmb3JtcyA9IFtdKSB7XHJcblxyXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHRyYW5zZm9ybXMpKSB7XHJcbiAgICAgICAgdHJhbnNmb3JtcyA9IFt0cmFuc2Zvcm1zXTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgZm9yRWFjaCA9IGZ1bmN0aW9uKGZpbGUsIGVuYywgY2IpeyAvLyBkbyB0aGlzIHdpdGggZXZlcnkgY2h1bmsgKGZpbGUgaW4gZ3VscCB0ZXJtcylcclxuXHJcbiAgICAgICAgbGV0IGJ1bmRsZUNhbGxiYWNrID0gZnVuY3Rpb24oZXJyLCBidWZmZXJlZENvbnRlbnQpIHsgLy8gb3VyIGJ1bmRsZSBjYWxsYmFjayBmb3Igd2hlbiBicm93c2VyaWZ5IGlzIGZpbmlzaGVkXHJcbiAgICAgICAgICAgIGlmIChCdWZmZXIuaXNCdWZmZXIoYnVmZmVyZWRDb250ZW50KSl7XHJcbiAgICAgICAgICAgICAgICBmaWxlLmNvbnRlbnRzID0gYnVmZmVyZWRDb250ZW50O1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcGx1Z2lucy5iZWF1dHlsb2cuZXJyb3IoXCJndWxwLWJyb3dzZXI6IC5icm93c2VyaWZ5KCkgXCIgKyBlcnIubWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgICBjYihuZXcgRXJyb3IoZXJyLm1lc3NhZ2UpLGZpbGUpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNiKG51bGwsZmlsZSk7XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgaWYoZmlsZS5jb250ZW50cy5sZW5ndGggPiAwKXtcclxuICAgICAgICAgICAgbGV0IGJyb3dzZXJpZmllZCA9IHBsdWdpbnMuYnJvd3NlcmlmeShmaWxlLCB7IGJhc2VkaXI6IGZpbGUuYmFzZSB9KTtcclxuXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybXMuZm9yRWFjaChmdW5jdGlvbiAodHJhbnNmb3JtKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRyYW5zZm9ybSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICAgICAgICAgIGJyb3dzZXJpZmllZC50cmFuc2Zvcm0odHJhbnNmb3JtKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJvd3NlcmlmaWVkLnRyYW5zZm9ybSh0cmFuc2Zvcm0udHJhbnNmb3JtLCB0cmFuc2Zvcm0ub3B0aW9ucyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgYnJvd3NlcmlmaWVkLmJ1bmRsZShidW5kbGVDYWxsYmFjayk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcGx1Z2lucy5iZWF1dHlsb2cud2FybihcImd1bHAtYnJvd3NlcjogLmJyb3dzZXJpZnkoKSBmaWxlLmNvbnRlbnRzIGFwcGVhcnMgdG8gYmUgZW1wdHlcIik7XHJcbiAgICAgICAgICAgIGNiKG51bGwsZmlsZSk7XHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgYXRFbmQgPSBmdW5jdGlvbihjYil7XHJcbiAgICAgICAgY2IoKTtcclxuICAgIH0gLy8gbm8gbmVlZCB0byBjbGVhbiB1cCBhZnRlciBvdXJzZWx2ZXNcclxuXHJcbiAgICByZXR1cm4gcGx1Z2lucy50aHJvdWdoLm9iaihmb3JFYWNoLGF0RW5kKTsgLy8gdGhpcyBpcyB0aGUgdGhyb3VnaCBvYmplY3QgdGhhdCBnZXRzIHJldHVybmVkIGJ5IGd1bHBCcm93c2VyLmJyb3dzZXJpZnkoKTtcclxuIH07XHJcblxyXG5leHBvcnQgPSBicm93c2VyaWZ5O1xyXG4iXX0=

5
dist/gulpbrowser.plugins.d.ts vendored Normal file
View File

@ -0,0 +1,5 @@
import "typings-global";
export declare let beautylog: any;
export declare let through: any;
export declare let path: any;
export declare let browserify: any;

View File

@ -1,11 +1,8 @@
/// <reference path="./typings/main.d.ts" />
var plugins = {
beautylog: require("beautylog"),
through: require("through2"),
gutil: require("gulp-util"),
path: require("path"),
browserify: require("browserify")
};
module.exports = plugins;
"use strict";
require("typings-global");
exports.beautylog = require("beautylog");
exports.through = require("through2");
exports.path = require("path");
exports.browserify = require("browserify");
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImd1bHBicm93c2VyLnBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNENBQTRDO0FBQzVDLElBQUksT0FBTyxHQUFHO0lBQ1YsU0FBUyxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUM7SUFDL0IsT0FBTyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUM7SUFDNUIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUM7SUFDM0IsSUFBSSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFDckIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUM7Q0FDcEMsQ0FBQztBQUVGLGlCQUFTLE9BQU8sQ0FBQyIsImZpbGUiOiJndWxwYnJvd3Nlci5wbHVnaW5zLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxudmFyIHBsdWdpbnMgPSB7XG4gICAgYmVhdXR5bG9nOiByZXF1aXJlKFwiYmVhdXR5bG9nXCIpLFxuICAgIHRocm91Z2g6IHJlcXVpcmUoXCJ0aHJvdWdoMlwiKSxcbiAgICBndXRpbDogcmVxdWlyZShcImd1bHAtdXRpbFwiKSxcbiAgICBwYXRoOiByZXF1aXJlKFwicGF0aFwiKSxcbiAgICBicm93c2VyaWZ5OiByZXF1aXJlKFwiYnJvd3NlcmlmeVwiKVxufTtcblxuZXhwb3J0ID0gcGx1Z2luczsiXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0=
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImd1bHBicm93c2VyLnBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUNiLGlCQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ2pDLGVBQU8sR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDOUIsWUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN2QixrQkFBVSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyIsImZpbGUiOiJndWxwYnJvd3Nlci5wbHVnaW5zLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcclxuZXhwb3J0IGxldCBiZWF1dHlsb2cgPSByZXF1aXJlKFwiYmVhdXR5bG9nXCIpO1xyXG5leHBvcnQgbGV0IHRocm91Z2ggPSByZXF1aXJlKFwidGhyb3VnaDJcIik7XHJcbmV4cG9ydCBsZXQgcGF0aCA9IHJlcXVpcmUoXCJwYXRoXCIpO1xyXG5leHBvcnQgbGV0IGJyb3dzZXJpZnkgPSByZXF1aXJlKFwiYnJvd3NlcmlmeVwiKTtcclxuIl19

2
dist/index.d.ts vendored Normal file
View File

@ -0,0 +1,2 @@
import "typings-global";
export import browserify = require("./gulpbrowser.browserify");

12
dist/index.js vendored
View File

@ -1,9 +1,5 @@
/// <reference path="./typings/main.d.ts" />
var browserify = require("./gulpbrowser.browserify");
//create the return object
var gulpBrowser = {
browserify: browserify
};
module.exports = gulpBrowser;
"use strict";
require("typings-global");
exports.browserify = require("./gulpbrowser.browserify");
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRDQUE0QztBQUU1QyxJQUFPLFVBQVUsV0FBVywwQkFBMEIsQ0FBQyxDQUFDO0FBR3hELDBCQUEwQjtBQUMxQixJQUFJLFdBQVcsR0FBTztJQUNsQixVQUFVLEVBQUUsVUFBVTtDQUN6QixDQUFDO0FBR0YsaUJBQVMsV0FBVyxDQUFDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxuXG5pbXBvcnQgYnJvd3NlcmlmeSA9IHJlcXVpcmUoXCIuL2d1bHBicm93c2VyLmJyb3dzZXJpZnlcIik7XG5cblxuLy9jcmVhdGUgdGhlIHJldHVybiBvYmplY3RcbnZhciBndWxwQnJvd3NlcjphbnkgPSB7XG4gICAgYnJvd3NlcmlmeTogYnJvd3NlcmlmeVxufTtcblxuXG5leHBvcnQgPSBndWxwQnJvd3NlcjtcbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFFVixrQkFBVSxXQUFXLDBCQUEwQixDQUFDLENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xyXG5cclxuZXhwb3J0IGltcG9ydCBicm93c2VyaWZ5ID0gcmVxdWlyZShcIi4vZ3VscGJyb3dzZXIuYnJvd3NlcmlmeVwiKTtcclxuXHJcbiJdfQ==

View File

@ -1,6 +1,6 @@
{
"name": "gulp-browser",
"version": "1.0.11",
"version": "2.1.8",
"description": "browserify and other goodies for gulp",
"main": "dist/index.js",
"scripts": {
@ -12,7 +12,7 @@
},
"repository": {
"type": "git",
"url": "https://github.com/pushrocks/gulp-browser.git"
"url": "https://gitlab.com/pushrocks/gulp-browser.git"
},
"keywords": [
"gulpplugin",
@ -21,18 +21,20 @@
"author": "Smart Coordination GmbH <office@push.rocks> (https://push.rocks)",
"license": "MIT",
"bugs": {
"url": "https://github.com/pushrocks/gulp-browser/issues"
"url": "https://gitlab.com/pushrocks/gulp-browser/issues"
},
"homepage": "https://github.com/pushrocks/gulp-browser",
"homepage": "https://gitlab.com/pushrocks/gulp-browser",
"dependencies": {
"beautylog": "3.1.2",
"browserify": "13.0.0",
"gulp-util": "3.0.7",
"through2": "2.0.1"
"beautylog": "^5.0.8",
"browserify": "^13.0.1",
"through2": "^2.0.1",
"typings-global": "^1.0.3"
},
"devDependencies": {
"gulp": "3.9.1",
"gulp-function": "1.1.1",
"npmts": "^3.3.2"
"gulp": "^3.9.1",
"gulp-function": "^1.3.1",
"npmts": "^5.2.1",
"should": "^9.0.0",
"typings-test": "^1.0.1"
}
}

2
test/test.d.ts vendored Normal file
View File

@ -0,0 +1,2 @@
import "typings-test";
import "should";

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"test.js","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,IAAI,OAAO,GAAG;IACV,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC;IAC/B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC,kBAAkB,CAAC;IACxC,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC;CACzC,CAAC;AAEF,QAAQ,CAAC,aAAa,EAAC;IACnB,QAAQ,CAAC,aAAa,EAAC;QACnB,EAAE,CAAC,6BAA6B,EAAC,UAAS,IAAI;YAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAC,UAAS,EAAE;gBAC7C,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC;qBACxD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;qBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;qBACzC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC;YAClB,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
{"version":3,"file":"test.js","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,IAAI,OAAO,GAAG;IACV,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC;IAC/B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC,kBAAkB,CAAC;IACxC,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC;CACzC,CAAC;AACF,IAAI,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAG/B,QAAQ,CAAC,aAAa,EAAE;IACpB,QAAQ,CAAC,aAAa,EAAE;QACpB,EAAE,CAAC,6BAA6B,EAAE,UAAU,IAAI;YAC5C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC;iBAC1D,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;iBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;iBACzC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,UAAU,IAAI;YAClE,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,UAAU,GAAG,KAAK,CAAA;YACtB,CAAC,CAAC,EAAE,CAAC,OAAO,EAAC,UAAS,KAAK;gBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC1B,EAAE,CAAA,CAAC,CAAC,UAAU,CAAC,CAAA,CAAC;oBACZ,IAAI,EAAE,CAAC;oBACP,UAAU,GAAG,IAAI,CAAC;gBACtB,CAAC;YACL,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,GAAG,CAAC;gBACF,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC;qBACzD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,UAAU,IAAI;YACtD,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC;iBACzD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;iBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;iBACzC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}

View File

@ -1,23 +1,57 @@
/// <reference path="../ts/typings/main.d.ts" />
var plugins = {
import "typings-test"
let plugins = {
beautylog: require("beautylog"),
gulp: require("gulp"),
gulpBrowser: require("../dist/index.js"),
gulpFunction: require("gulp-function")
};
import "should";
describe("gulpBrowser",function(){
describe(".browserify",function(){
it("should run through smoothly",function(done){
describe("gulpBrowser", function () {
describe(".browserify", function () {
it("should run through smoothly", function (done) {
this.timeout(30000);
plugins.gulp.task('gulpBrowserNormal',function(cb) {
var stream = plugins.gulp.src('./test/browserifyGulpTest.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpFunction(done));
return stream;
let stream = plugins.gulp.src('./test/testBrowserifyNormal.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpFunction(done));
});
it("should throw an error, when a module is not found", function (done) {
let d = require('domain').create();
let doneCalled = false
d.on("error",function(error){
console.log(error.message)
if(!doneCalled){
done();
doneCalled = true;
}
});
d.run(function() {
let stream = plugins.gulp.src("./test/testBrowserifyError.js")
.pipe(plugins.gulpBrowser.browserify());
});
plugins.gulp.start.apply(plugins.gulp, ['gulpBrowserNormal']);
});
it("should run through with an empty file", function (done) {
let stream = plugins.gulp.src('./test/testBrowserifyEmpty.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpFunction(done));
});
it("should run through work with transforms", function (done) {
this.timeout(30000);
let transforms = [
{
transform: "babelify",
options: {presets: ["es2015", "react"]}
}
];
let stream = plugins.gulp.src('./test/testBrowserifyNormal.js')
.pipe(plugins.gulpBrowser.browserify(transforms))
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpFunction(done));
});
});
});

View File

View File

@ -1,18 +1,49 @@
/// <reference path="./typings/main.d.ts" />
import "typings-global";
import plugins = require("./gulpbrowser.plugins");
let browserify = function() {
return plugins.through.obj((file, enc, cb) => { //this is the through object that gets returned by gulpBrowser.browserify();
var bundleCallback = function(err, bufferedContent) {
if (Buffer.isBuffer(bufferedContent)){
file.contents = bufferedContent;
let browserify = function(transforms = []) {
if (!Array.isArray(transforms)) {
transforms = [transforms];
}
let forEach = function(file, enc, cb){ // do this with every chunk (file in gulp terms)
let bundleCallback = function(err, bufferedContent) { // our bundle callback for when browserify is finished
if (Buffer.isBuffer(bufferedContent)){
file.contents = bufferedContent;
} else {
plugins.beautylog.error("gulp-browser: .browserify() " + err.message);
cb(new Error(err.message),file);
return;
}
cb(null,file);
};
if(file.contents.length > 0){
let browserified = plugins.browserify(file, { basedir: file.base });
transforms.forEach(function (transform) {
if (typeof transform === 'function') {
browserified.transform(transform);
} else {
plugins.beautylog.error("gulp-browser: .browserify() " + err.message);
browserified.transform(transform.transform, transform.options);
}
cb(null,file);
};
plugins.browserify(file, { basedir: file.base })
.bundle(bundleCallback)
});
});
browserified.bundle(bundleCallback);
} else {
plugins.beautylog.warn("gulp-browser: .browserify() file.contents appears to be empty");
cb(null,file);
};
}
let atEnd = function(cb){
cb();
} // no need to clean up after ourselves
return plugins.through.obj(forEach,atEnd); // this is the through object that gets returned by gulpBrowser.browserify();
};
export = browserify;
export = browserify;

View File

@ -1,10 +1,5 @@
/// <reference path="./typings/main.d.ts" />
var plugins = {
beautylog: require("beautylog"),
through: require("through2"),
gutil: require("gulp-util"),
path: require("path"),
browserify: require("browserify")
};
export = plugins;
import "typings-global";
export let beautylog = require("beautylog");
export let through = require("through2");
export let path = require("path");
export let browserify = require("browserify");

View File

@ -1,12 +1,4 @@
/// <reference path="./typings/main.d.ts" />
import "typings-global";
import browserify = require("./gulpbrowser.browserify");
export import browserify = require("./gulpbrowser.browserify");
//create the return object
var gulpBrowser:any = {
browserify: browserify
};
export = gulpBrowser;

View File

@ -1,15 +0,0 @@
{
"version": "v4",
"repo": "borisyankov/DefinitelyTyped",
"ref": "master",
"path": "typings",
"bundle": "typings/tsd.d.ts",
"installed": {
"node/node.d.ts": {
"commit": "3191f6e0088eee07c4d8fd24e4d27a40a60d9eb9"
},
"browserify/browserify.d.ts": {
"commit": "3191f6e0088eee07c4d8fd24e4d27a40a60d9eb9"
}
}
}

View File

@ -1,7 +0,0 @@
{
"ambientDependencies": {
"browserify": "github:DefinitelyTyped/DefinitelyTyped/browserify/browserify.d.ts",
"mocha": "github:Bartvds/tsd-deftools/typings/DefinitelyTyped/mocha/mocha.d.ts",
"node": "github:DefinitelyTyped/DefinitelyTyped/node/node.d.ts"
}
}