Compare commits

...

75 Commits

Author SHA1 Message Date
f436fffecd 2.1.9 2016-06-03 21:05:08 +02:00
77b5949a81 remove react from transform options 2016-06-03 21:05:04 +02:00
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
aee39d4a33 1.0.11 2016-02-26 17:58:08 +01:00
f5f1d59c79 update deps 2016-02-26 17:57:53 +01:00
895063ec65 1.0.10 2016-02-09 20:49:16 +01:00
ba29214eea update testscript 2016-02-09 20:49:12 +01:00
5fe7d563d0 1.0.9 2016-02-09 20:44:35 +01:00
29534a3c6d update npmts 2016-02-09 20:44:10 +01:00
e5cbefd195 updated npmts 2016-02-09 17:11:09 +01:00
83ddb95968 cleanup 2016-02-09 17:06:26 +01:00
7afda4e508 add code coverage badge 2016-02-09 17:04:11 +01:00
f459bd5537 update test 2016-02-09 16:51:06 +01:00
53dba94a78 1.0.8 2016-02-09 16:44:27 +01:00
47b5d718ee some finetuning 2016-02-09 16:44:23 +01:00
e0902b9f6c now running coverage 2016-02-09 16:39:36 +01:00
5ee39fc04d 1.0.7 2016-02-02 15:23:35 +01:00
40254e394e updated deps 2016-02-02 15:23:25 +01:00
9306dcf0a1 bump timeout time for travis 2016-02-01 03:55:50 +01:00
9b6609a2e5 1.0.6 2016-02-01 03:39:11 +01:00
943fcf8634 switch to gulpFunction 2016-02-01 03:38:58 +01:00
6de689a766 1.0.5 2016-02-01 03:11:17 +01:00
774269da57 integrate mocha 2016-02-01 03:10:58 +01:00
6a884cda78 clean up 2016-02-01 02:28:43 +01:00
3e46c8c927 Merge branch 'enigmamarketing-master' 2016-02-01 00:08:11 +01:00
31d1fae5a2 merge PR 2016-02-01 00:07:53 +01:00
95e874c8e8 update npmts and switch to npmts version 2.x.x 2016-02-01 00:04:05 +01:00
6594932cbd pin beautylog version 2016-01-31 17:45:16 +01:00
9457f3ce8a 1.0.4 2016-01-31 17:41:40 +01:00
eb636603ab update beautylog dependency, fixes #13 2016-01-31 17:40:51 +01:00
6e2797cd65 1.0.3 2016-01-28 18:29:01 +01:00
8de47822e4 1.0.2 2016-01-28 18:28:33 +01:00
cd867e1d6c add About to Readme 2016-01-25 05:09:24 +01:00
462d11da27 Bass base directory through to browserify. 2016-01-04 10:41:20 +00:00
32 changed files with 334 additions and 2322 deletions

7
.gitignore vendored
View File

@ -5,5 +5,10 @@ npm-debug.log
ts/*.js
ts/*.js.map
ts/typings/
test/result/
test/result/
coverage/
docs/

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,3 +1,4 @@
node_modules
test
ts
ts
coverage/

View File

@ -1,8 +1,7 @@
language: node_js
node_js:
- '4.1'
before_install:
- npm install -g tsd
- 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)
[![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"]}
}
];
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;
});
@ -28,4 +35,16 @@ gulp-browser is meant to be easy:
### Dev Information:
[![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)
[![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)
### Extending this module
If you have ideas for other great browser related gulp pipe stops, feel free to raise an issue on GitHub.
### 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;

46
dist/gulpbrowser.browserify.js vendored Normal file
View File

@ -0,0 +1,46 @@
"use strict";
require("typings-global");
var plugins = require("./gulpbrowser.plugins");
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);
};
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;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;

8
dist/gulpbrowser.plugins.js vendored Normal file
View File

@ -0,0 +1,8 @@
"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;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");

5
dist/index.js vendored Normal file
View File

@ -0,0 +1,5 @@
"use strict";
require("typings-global");
exports.browserify = require("./gulpbrowser.browserify");
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFFVixrQkFBVSxXQUFXLDBCQUEwQixDQUFDLENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xyXG5cclxuZXhwb3J0IGltcG9ydCBicm93c2VyaWZ5ID0gcmVxdWlyZShcIi4vZ3VscGJyb3dzZXIuYnJvd3NlcmlmeVwiKTtcclxuXHJcbiJdfQ==

12
index.d.ts vendored
View File

@ -1,12 +0,0 @@
/// <reference path="ts/typings/tsd.d.ts" />
declare module GulpBrowserBrowserify {
function init(): () => any;
}
declare var plugins: {
beautylog: any;
through: any;
gutil: any;
path: any;
browserify: any;
};
declare var gulpBrowser: any;

View File

@ -1,37 +0,0 @@
#!/usr/bin/env node
/// <reference path="./index.ts" />
var GulpBrowserBrowserify;
(function (GulpBrowserBrowserify) {
function init() {
return function () {
return plugins.through.obj(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(null, file);
};
plugins.browserify(file)
.bundle(bundleCallback);
});
};
}
GulpBrowserBrowserify.init = init;
})(GulpBrowserBrowserify || (GulpBrowserBrowserify = {}));
/// <reference path="./typings/tsd.d.ts" />
/// <reference path="./modulebrowserify.ts" />
var plugins = {
beautylog: require("beautylog"),
through: require("through2"),
gutil: require("gulp-util"),
path: require("path"),
browserify: require("browserify")
};
//create the return object
var gulpBrowser = {};
gulpBrowser.browserify = GulpBrowserBrowserify.init();
module.exports = gulpBrowser;

4
npmts.json Normal file
View File

@ -0,0 +1,4 @@
{
"mode":"default",
"coveralls":true
}

View File

@ -1,10 +1,10 @@
{
"name": "gulp-browser",
"version": "1.0.1",
"version": "2.1.9",
"description": "browserify and other goodies for gulp",
"main": "index.js",
"main": "dist/index.js",
"scripts": {
"test": "(npmts) && (node test.js)",
"test": "(npmts)",
"reinstall": "(rm -r node_modules && npm install)",
"release": "(git pull origin master && npm version patch && git push origin master && git checkout release && git merge master && git push origin release && git checkout master)",
"update": "(git checkout master && git pull origin master && npm install)",
@ -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": {
"browserify": "13.0.0",
"gulp-util": "3.0.7",
"through2": "2.0.0"
"beautylog": "^5.0.8",
"browserify": "^13.0.1",
"through2": "^2.0.1",
"typings-global": "^1.0.3"
},
"devDependencies": {
"beautylog": "2.0.2",
"gulp": "3.9.0",
"gulp-callfunction": "0.0.10",
"npmts": "^1.0.9"
"gulp": "^3.9.1",
"gulp-function": "^1.3.1",
"npmts": "^5.2.1",
"should": "^9.0.0",
"typings-test": "^1.0.1"
}
}

29
test.js
View File

@ -1,29 +0,0 @@
/// <reference path="./typings/tsd.d.ts" />
var plugins = {
beautylog: require("beautylog"),
gulp: require("gulp"),
gulpBrowser: require("./index.js"),
gulpCallFunction: require("gulp-callfunction")
};
var pipeWorked = function () {
plugins.beautylog.info("Pipe didn't break! Ready for Primetime!");
};
plugins.beautylog.log('Now trying to browserify a testfile...');
plugins.gulp.task('gulpBrowserTest', function (cb) {
var stream = plugins.gulp.src('./test/browserifyGulpTest.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpCallFunction(pipeWorked));
return stream;
});
plugins.gulp.task('gulpBrowserTestError', function (cb) {
var stream = plugins.gulp.src('./test/browserifyGulpTestError.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpCallFunction(pipeWorked));
return stream;
});
plugins.gulp.task("default", ['gulpBrowserTest', 'gulpBrowserTestError'], function () {
plugins.beautylog.success("Test passed!");
});
plugins.gulp.start.apply(plugins.gulp, ['default']);

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

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

56
test/test.js Normal file

File diff suppressed because one or more lines are too long

1
test/test.js.map Normal file
View File

@ -0,0 +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;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"}

57
test/test.ts Normal file
View File

@ -0,0 +1,57 @@
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) {
this.timeout(30000);
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());
});
});
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"]}
}
];
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

@ -0,0 +1,49 @@
import "typings-global";
import plugins = require("./gulpbrowser.plugins");
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 {
browserified.transform(transform.transform, transform.options);
}
});
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;

View File

@ -0,0 +1,5 @@
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,18 +1,4 @@
/// <reference path="./typings/tsd.d.ts" />
/// <reference path="./modulebrowserify.ts" />
import "typings-global";
var plugins = {
beautylog: require("beautylog"),
through: require("through2"),
gutil: require("gulp-util"),
path: require("path"),
browserify: require("browserify")
};
export import browserify = require("./gulpbrowser.browserify");
//create the return object
var gulpBrowser:any = {};
gulpBrowser.browserify = GulpBrowserBrowserify.init();
module.exports = gulpBrowser;

View File

@ -1,19 +0,0 @@
/// <reference path="./index.ts" />
module GulpBrowserBrowserify {
export function init() {
return 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;
} else {
plugins.beautylog.error("gulp-browser: .browserify() " + err.message);
}
cb(null,file);
};
plugins.browserify(file)
.bundle(bundleCallback)
});
};
}
}

View File

@ -1,33 +0,0 @@
/// <reference path="./typings/tsd.d.ts" />
var plugins = {
beautylog: require("beautylog"),
gulp: require("gulp"),
gulpBrowser: require("./index.js"),
gulpCallFunction: require("gulp-callfunction")
};
var pipeWorked = function() {
plugins.beautylog.info("Pipe didn't break! Ready for Primetime!");
};
plugins.beautylog.log('Now trying to browserify a testfile...');
plugins.gulp.task('gulpBrowserTest',function(cb) {
var stream = plugins.gulp.src('./test/browserifyGulpTest.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpCallFunction(pipeWorked));
return stream;
});
plugins.gulp.task('gulpBrowserTestError',function(cb) {
var stream = plugins.gulp.src('./test/browserifyGulpTestError.js')
.pipe(plugins.gulpBrowser.browserify())
.pipe(plugins.gulp.dest("./test/result/"))
.pipe(plugins.gulpCallFunction(pipeWorked));
return stream;
});
plugins.gulp.task("default",['gulpBrowserTest','gulpBrowserTestError'],function(){
plugins.beautylog.success("Test passed!");
});
plugins.gulp.start.apply(plugins.gulp, ['default']);

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,41 +0,0 @@
// Type definitions for Browserify
// Project: http://browserify.org/
// Definitions by: Andrew Gaspar <https://github.com/AndrewGaspar/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/// <reference path="../node/node.d.ts" />
interface BrowserifyObject extends NodeJS.EventEmitter {
add(file:string, opts?:any): BrowserifyObject;
require(file:string, opts?:{
expose: string;
}): BrowserifyObject;
bundle(opts?:{
insertGlobals?: boolean;
detectGlobals?: boolean;
debug?: boolean;
standalone?: string;
insertGlobalVars?: any;
}, cb?:(err:any, src:any) => void): NodeJS.ReadableStream;
external(file:string, opts?:any): BrowserifyObject;
ignore(file:string, opts?:any): BrowserifyObject;
transform(tr:string, opts?:any): BrowserifyObject;
transform(tr:Function, opts?:any): BrowserifyObject;
plugin(plugin:string, opts?:any): BrowserifyObject;
plugin(plugin:Function, opts?:any): BrowserifyObject;
}
interface Browserify {
(): BrowserifyObject;
(files:string[]): BrowserifyObject;
(opts:{
entries?: string[];
noParse?: string[];
}): BrowserifyObject;
}
declare module "browserify" {
var browserify: Browserify;
export = browserify;
}

File diff suppressed because it is too large Load Diff

2
ts/typings/tsd.d.ts vendored
View File

@ -1,2 +0,0 @@
/// <reference path="node/node.d.ts" />
/// <reference path="browserify/browserify.d.ts" />