aboutsummaryrefslogtreecommitdiff
path: root/node_modules/gulp-zip
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-04-20 03:09:25 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-04-24 16:14:29 +0200
commit82f2b76e25a4a67e01ec67e5ebe39d14ad771ea8 (patch)
tree965f6eb89b84d65a62b49008fd972c004832ccd1 /node_modules/gulp-zip
parente6e0cbc387c2a77b48e4065c229daa65bf1aa0fa (diff)
downloadwallet-core-82f2b76e25a4a67e01ec67e5ebe39d14ad771ea8.tar.xz
Reorganize module loading.
We now use webpack instead of SystemJS, effectively bundling modules into one file (plus commons chunks) for every entry point. This results in a much smaller extension size (almost half). Furthermore we use yarn/npm even for extension run-time dependencies. This relieves us from manually vendoring and building dependencies. It's also easier to understand for new developers familiar with node.
Diffstat (limited to 'node_modules/gulp-zip')
-rw-r--r--node_modules/gulp-zip/node_modules/clone-stats/LICENSE.md21
-rw-r--r--node_modules/gulp-zip/node_modules/clone-stats/README.md17
-rw-r--r--node_modules/gulp-zip/node_modules/clone-stats/index.js13
-rw-r--r--node_modules/gulp-zip/node_modules/clone-stats/package.json31
-rw-r--r--node_modules/gulp-zip/node_modules/clone-stats/test.js36
-rwxr-xr-xnode_modules/gulp-zip/node_modules/gulp-util/LICENSE20
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/README.md146
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/index.js18
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/PluginError.js130
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/buffer.js15
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/combine.js11
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/env.js4
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/isBuffer.js7
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/isNull.js3
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/isStream.js5
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/log.js14
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/noop.js5
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/lib/template.js23
l---------node_modules/gulp-zip/node_modules/gulp-util/node_modules/.bin/dateformat1
-rw-r--r--node_modules/gulp-zip/node_modules/gulp-util/package.json51
-rw-r--r--node_modules/gulp-zip/node_modules/lodash._reinterpolate/LICENSE.txt22
-rw-r--r--node_modules/gulp-zip/node_modules/lodash._reinterpolate/README.md20
-rw-r--r--node_modules/gulp-zip/node_modules/lodash._reinterpolate/index.js13
-rw-r--r--node_modules/gulp-zip/node_modules/lodash._reinterpolate/package.json18
-rw-r--r--node_modules/gulp-zip/node_modules/lodash.template/LICENSE22
-rw-r--r--node_modules/gulp-zip/node_modules/lodash.template/README.md20
-rw-r--r--node_modules/gulp-zip/node_modules/lodash.template/index.js389
-rw-r--r--node_modules/gulp-zip/node_modules/lodash.template/package.json30
-rw-r--r--node_modules/gulp-zip/node_modules/object-assign/index.js39
-rw-r--r--node_modules/gulp-zip/node_modules/object-assign/license21
-rw-r--r--node_modules/gulp-zip/node_modules/object-assign/package.json38
-rw-r--r--node_modules/gulp-zip/node_modules/object-assign/readme.md51
-rw-r--r--node_modules/gulp-zip/node_modules/replace-ext/.npmignore6
-rw-r--r--node_modules/gulp-zip/node_modules/replace-ext/.travis.yml8
-rwxr-xr-xnode_modules/gulp-zip/node_modules/replace-ext/LICENSE20
-rw-r--r--node_modules/gulp-zip/node_modules/replace-ext/README.md44
-rw-r--r--node_modules/gulp-zip/node_modules/replace-ext/index.js9
-rw-r--r--node_modules/gulp-zip/node_modules/replace-ext/package.json35
-rw-r--r--node_modules/gulp-zip/node_modules/replace-ext/test/main.js51
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/LICENSE20
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/README.md195
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/index.js213
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/lib/cloneBuffer.js7
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/lib/inspectStream.js11
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/lib/isBuffer.js1
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/lib/isNull.js3
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/lib/isStream.js5
-rw-r--r--node_modules/gulp-zip/node_modules/vinyl/package.json37
48 files changed, 0 insertions, 1919 deletions
diff --git a/node_modules/gulp-zip/node_modules/clone-stats/LICENSE.md b/node_modules/gulp-zip/node_modules/clone-stats/LICENSE.md
deleted file mode 100644
index 146cb32a7..000000000
--- a/node_modules/gulp-zip/node_modules/clone-stats/LICENSE.md
+++ /dev/null
@@ -1,21 +0,0 @@
-## The MIT License (MIT) ##
-
-Copyright (c) 2014 Hugh Kennedy
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/clone-stats/README.md b/node_modules/gulp-zip/node_modules/clone-stats/README.md
deleted file mode 100644
index 8b12b6fa5..000000000
--- a/node_modules/gulp-zip/node_modules/clone-stats/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# clone-stats [![Flattr this!](https://api.flattr.com/button/flattr-badge-large.png)](https://flattr.com/submit/auto?user_id=hughskennedy&url=http://github.com/hughsk/clone-stats&title=clone-stats&description=hughsk/clone-stats%20on%20GitHub&language=en_GB&tags=flattr,github,javascript&category=software)[![experimental](http://hughsk.github.io/stability-badges/dist/experimental.svg)](http://github.com/hughsk/stability-badges) #
-
-Safely clone node's
-[`fs.Stats`](http://nodejs.org/api/fs.html#fs_class_fs_stats) instances without
-losing their class methods, i.e. `stat.isDirectory()` and co.
-
-## Usage ##
-
-[![clone-stats](https://nodei.co/npm/clone-stats.png?mini=true)](https://nodei.co/npm/clone-stats)
-
-### `copy = require('clone-stats')(stat)` ###
-
-Returns a clone of the original `fs.Stats` instance (`stat`).
-
-## License ##
-
-MIT. See [LICENSE.md](http://github.com/hughsk/clone-stats/blob/master/LICENSE.md) for details.
diff --git a/node_modules/gulp-zip/node_modules/clone-stats/index.js b/node_modules/gulp-zip/node_modules/clone-stats/index.js
deleted file mode 100644
index e797cfe6e..000000000
--- a/node_modules/gulp-zip/node_modules/clone-stats/index.js
+++ /dev/null
@@ -1,13 +0,0 @@
-var Stat = require('fs').Stats
-
-module.exports = cloneStats
-
-function cloneStats(stats) {
- var replacement = new Stat
-
- Object.keys(stats).forEach(function(key) {
- replacement[key] = stats[key]
- })
-
- return replacement
-}
diff --git a/node_modules/gulp-zip/node_modules/clone-stats/package.json b/node_modules/gulp-zip/node_modules/clone-stats/package.json
deleted file mode 100644
index 2880625c1..000000000
--- a/node_modules/gulp-zip/node_modules/clone-stats/package.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "name": "clone-stats",
- "description": "Safely clone node's fs.Stats instances without losing their class methods",
- "version": "0.0.1",
- "main": "index.js",
- "browser": "index.js",
- "dependencies": {},
- "devDependencies": {
- "tape": "~2.3.2"
- },
- "scripts": {
- "test": "node test"
- },
- "author": "Hugh Kennedy <hughskennedy@gmail.com> (http://hughsk.io/)",
- "license": "MIT",
- "repository": {
- "type": "git",
- "url": "git://github.com/hughsk/clone-stats"
- },
- "bugs": {
- "url": "https://github.com/hughsk/clone-stats/issues"
- },
- "homepage": "https://github.com/hughsk/clone-stats",
- "keywords": [
- "stats",
- "fs",
- "clone",
- "copy",
- "prototype"
- ]
-}
diff --git a/node_modules/gulp-zip/node_modules/clone-stats/test.js b/node_modules/gulp-zip/node_modules/clone-stats/test.js
deleted file mode 100644
index e4bb2814d..000000000
--- a/node_modules/gulp-zip/node_modules/clone-stats/test.js
+++ /dev/null
@@ -1,36 +0,0 @@
-var test = require('tape')
-var clone = require('./')
-var fs = require('fs')
-
-test('file', function(t) {
- compare(t, fs.statSync(__filename))
- t.end()
-})
-
-test('directory', function(t) {
- compare(t, fs.statSync(__dirname))
- t.end()
-})
-
-function compare(t, stat) {
- var copy = clone(stat)
-
- t.deepEqual(stat, copy, 'clone has equal properties')
- t.ok(stat instanceof fs.Stats, 'original is an fs.Stat')
- t.ok(copy instanceof fs.Stats, 'copy is an fs.Stat')
-
- ;['isDirectory'
- , 'isFile'
- , 'isBlockDevice'
- , 'isCharacterDevice'
- , 'isSymbolicLink'
- , 'isFIFO'
- , 'isSocket'
- ].forEach(function(method) {
- t.equal(
- stat[method].call(stat)
- , copy[method].call(copy)
- , 'equal value for stat.' + method + '()'
- )
- })
-}
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/LICENSE b/node_modules/gulp-zip/node_modules/gulp-util/LICENSE
deleted file mode 100755
index 7cbe012c6..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2014 Fractal <contact@wearefractal.com>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/README.md b/node_modules/gulp-zip/node_modules/gulp-util/README.md
deleted file mode 100644
index 8c25a4d62..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/README.md
+++ /dev/null
@@ -1,146 +0,0 @@
-# gulp-util [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coveralls Status][coveralls-image]][coveralls-url] [![Dependency Status][depstat-image]][depstat-url]
-
-## Information
-
-<table>
-<tr>
-<td>Package</td><td>gulp-util</td>
-</tr>
-<tr>
-<td>Description</td>
-<td>Utility functions for gulp plugins</td>
-</tr>
-<tr>
-<td>Node Version</td>
-<td>>= 0.10</td>
-</tr>
-</table>
-
-## Usage
-
-```javascript
-var gutil = require('gulp-util');
-
-gutil.log('stuff happened', 'Really it did', gutil.colors.magenta('123'));
-gutil.beep();
-
-gutil.replaceExtension('file.coffee', '.js'); // file.js
-
-var opt = {
- name: 'todd',
- file: someGulpFile
-};
-gutil.template('test <%= name %> <%= file.path %>', opt) // test todd /js/hi.js
-```
-
-### log(msg...)
-
-Logs stuff. Already prefixed with [gulp] and all that. If you pass in multiple arguments it will join them by a space.
-
-The default gulp coloring using gutil.colors.<color>:
-```
-values (files, module names, etc.) = cyan
-numbers (times, counts, etc) = magenta
-```
-
-### colors
-
-Is an instance of [chalk](https://github.com/sindresorhus/chalk).
-
-### replaceExtension(path, newExtension)
-
-Replaces a file extension in a path. Returns the new path.
-
-### isStream(obj)
-
-Returns true or false if an object is a stream.
-
-### isBuffer(obj)
-
-Returns true or false if an object is a Buffer.
-
-### template(string[, data])
-
-This is a lodash.template function wrapper. You must pass in a valid gulp file object so it is available to the user or it will error. You can not configure any of the delimiters. Look at the [lodash docs](http://lodash.com/docs#template) for more info.
-
-## new File(obj)
-
-This is just [vinyl](https://github.com/wearefractal/vinyl)
-
-```javascript
-var file = new gutil.File({
- base: path.join(__dirname, './fixtures/'),
- cwd: __dirname,
- path: path.join(__dirname, './fixtures/test.coffee')
-});
-```
-
-## noop()
-
-Returns a stream that does nothing but pass data straight through.
-
-```javascript
-// gulp should be called like this :
-// $ gulp --type production
-gulp.task('scripts', function() {
- gulp.src('src/**/*.js')
- .pipe(concat('script.js'))
- .pipe(gutil.env.type === 'production' ? uglify() : gutil.noop())
- .pipe(gulp.dest('dist/'));
-});
-```
-
-## buffer(cb)
-
-This is similar to es.wait but instead of buffering text into one string it buffers anything into an array (so very useful for file objects).
-
-Returns a stream that can be piped to.
-
-The stream will emit one data event after the stream piped to it has ended. The data will be the same array passed to the callback.
-
-Callback is optional and receives two arguments: error and data
-
-```javascript
-gulp.src('stuff/*.js')
- .pipe(gutil.buffer(function(err, files) {
-
- }));
-```
-
-## new PluginError(pluginName, message[, options])
-
-- pluginName should be the module name of your plugin
-- message can be a string or an existing error
-- By default the stack will not be shown. Set `options.showStack` to true if you think the stack is important for your error.
-- If you pass an error in as the message the stack will be pulled from that, otherwise one will be created.
-- Note that if you pass in a custom stack string you need to include the message along with that.
-- Error properties will be included in `err.toString()`. Can be omitted by including `{showProperties: false}` in the options.
-
-These are all acceptable forms of instantiation:
-
-```javascript
-var err = new gutil.PluginError('test', {
- message: 'something broke'
-});
-
-var err = new gutil.PluginError({
- plugin: 'test',
- message: 'something broke'
-});
-
-var err = new gutil.PluginError('test', 'something broke');
-
-var err = new gutil.PluginError('test', 'something broke', {showStack: true});
-
-var existingError = new Error('OMG');
-var err = new gutil.PluginError('test', existingError, {showStack: true});
-```
-
-[npm-url]: https://www.npmjs.com/package/gulp-util
-[npm-image]: https://badge.fury.io/js/gulp-util.svg
-[travis-url]: https://travis-ci.org/gulpjs/gulp-util
-[travis-image]: https://img.shields.io/travis/gulpjs/gulp-util.svg?branch=master
-[coveralls-url]: https://coveralls.io/r/gulpjs/gulp-util
-[coveralls-image]: https://img.shields.io/coveralls/gulpjs/gulp-util.svg
-[depstat-url]: https://david-dm.org/gulpjs/gulp-util
-[depstat-image]: https://david-dm.org/gulpjs/gulp-util.svg
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/index.js b/node_modules/gulp-zip/node_modules/gulp-util/index.js
deleted file mode 100644
index 199713c94..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/index.js
+++ /dev/null
@@ -1,18 +0,0 @@
-module.exports = {
- File: require('vinyl'),
- replaceExtension: require('replace-ext'),
- colors: require('chalk'),
- date: require('dateformat'),
- log: require('./lib/log'),
- template: require('./lib/template'),
- env: require('./lib/env'),
- beep: require('beeper'),
- noop: require('./lib/noop'),
- isStream: require('./lib/isStream'),
- isBuffer: require('./lib/isBuffer'),
- isNull: require('./lib/isNull'),
- linefeed: '\n',
- combine: require('./lib/combine'),
- buffer: require('./lib/buffer'),
- PluginError: require('./lib/PluginError')
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/PluginError.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/PluginError.js
deleted file mode 100644
index d60159ab1..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/PluginError.js
+++ /dev/null
@@ -1,130 +0,0 @@
-var util = require('util');
-var arrayDiffer = require('array-differ');
-var arrayUniq = require('array-uniq');
-var chalk = require('chalk');
-var objectAssign = require('object-assign');
-
-var nonEnumberableProperties = ['name', 'message', 'stack'];
-var propertiesNotToDisplay = nonEnumberableProperties.concat(['plugin', 'showStack', 'showProperties', '__safety', '_stack']);
-
-// wow what a clusterfuck
-var parseOptions = function(plugin, message, opt) {
- opt = opt || {};
- if (typeof plugin === 'object') {
- opt = plugin;
- } else {
- if (message instanceof Error) {
- opt.error = message;
- } else if (typeof message === 'object') {
- opt = message;
- } else {
- opt.message = message;
- }
- opt.plugin = plugin;
- }
-
- return objectAssign({
- showStack: false,
- showProperties: true
- }, opt);
-};
-
-function PluginError(plugin, message, opt) {
- if (!(this instanceof PluginError)) throw new Error('Call PluginError using new');
-
- Error.call(this);
-
- var options = parseOptions(plugin, message, opt);
- var self = this;
-
- // if options has an error, grab details from it
- if (options.error) {
- // These properties are not enumerable, so we have to add them explicitly.
- arrayUniq(Object.keys(options.error).concat(nonEnumberableProperties))
- .forEach(function(prop) {
- self[prop] = options.error[prop];
- });
- }
-
- var properties = ['name', 'message', 'fileName', 'lineNumber', 'stack', 'showStack', 'showProperties', 'plugin'];
-
- // options object can override
- properties.forEach(function(prop) {
- if (prop in options) this[prop] = options[prop];
- }, this);
-
- // defaults
- if (!this.name) this.name = 'Error';
-
- if (!this.stack) {
- // Error.captureStackTrace appends a stack property which relies on the toString method of the object it is applied to.
- // Since we are using our own toString method which controls when to display the stack trace if we don't go through this
- // safety object, then we'll get stack overflow problems.
- var safety = {
- toString: function() {
- return this._messageWithDetails() + '\nStack:';
- }.bind(this)
- };
- Error.captureStackTrace(safety, arguments.callee || this.constructor);
- this.__safety = safety;
- }
-
- if (!this.plugin) throw new Error('Missing plugin name');
- if (!this.message) throw new Error('Missing error message');
-}
-
-util.inherits(PluginError, Error);
-
-PluginError.prototype._messageWithDetails = function() {
- var messageWithDetails = 'Message:\n ' + this.message;
- var details = this._messageDetails();
-
- if (details !== '') {
- messageWithDetails += '\n' + details;
- }
-
- return messageWithDetails;
-};
-
-PluginError.prototype._messageDetails = function() {
- if (!this.showProperties) {
- return '';
- }
-
- var properties = arrayDiffer(Object.keys(this), propertiesNotToDisplay);
-
- if (properties.length === 0) {
- return '';
- }
-
- var self = this;
- properties = properties.map(function stringifyProperty(prop) {
- return ' ' + prop + ': ' + self[prop];
- });
-
- return 'Details:\n' + properties.join('\n');
-};
-
-PluginError.prototype.toString = function () {
- var sig = chalk.red(this.name) + ' in plugin \'' + chalk.cyan(this.plugin) + '\'';
- var detailsWithStack = function(stack) {
- return this._messageWithDetails() + '\nStack:\n' + stack;
- }.bind(this);
-
- var msg;
- if (this.showStack) {
- if (this.__safety) { // There is no wrapped error, use the stack captured in the PluginError ctor
- msg = this.__safety.stack;
- } else if (this._stack) {
- msg = detailsWithStack(this._stack);
- } else { // Stack from wrapped error
- msg = detailsWithStack(this.stack);
- }
- } else {
- msg = this._messageWithDetails();
- }
-
- return sig + '\n' + msg;
-};
-
-module.exports = PluginError;
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/buffer.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/buffer.js
deleted file mode 100644
index 26c940db1..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/buffer.js
+++ /dev/null
@@ -1,15 +0,0 @@
-var through = require('through2');
-
-module.exports = function(fn) {
- var buf = [];
- var end = function(cb) {
- this.push(buf);
- cb();
- if(fn) fn(null, buf);
- };
- var push = function(data, enc, cb) {
- buf.push(data);
- cb();
- };
- return through.obj(push, end);
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/combine.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/combine.js
deleted file mode 100644
index f20712d20..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/combine.js
+++ /dev/null
@@ -1,11 +0,0 @@
-var pipeline = require('multipipe');
-
-module.exports = function(){
- var args = arguments;
- if (args.length === 1 && Array.isArray(args[0])) {
- args = args[0];
- }
- return function(){
- return pipeline.apply(pipeline, args);
- };
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/env.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/env.js
deleted file mode 100644
index ee17c0e30..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/env.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var parseArgs = require('minimist');
-var argv = parseArgs(process.argv.slice(2));
-
-module.exports = argv;
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/isBuffer.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/isBuffer.js
deleted file mode 100644
index 7c52f78c9..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/isBuffer.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var buf = require('buffer');
-var Buffer = buf.Buffer;
-
-// could use Buffer.isBuffer but this is the same exact thing...
-module.exports = function(o) {
- return typeof o === 'object' && o instanceof Buffer;
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/isNull.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/isNull.js
deleted file mode 100644
index 7f22c63ae..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/isNull.js
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = function(v) {
- return v === null;
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/isStream.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/isStream.js
deleted file mode 100644
index 6b54e123b..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/isStream.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var Stream = require('stream').Stream;
-
-module.exports = function(o) {
- return !!o && o instanceof Stream;
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/log.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/log.js
deleted file mode 100644
index bb843beef..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/log.js
+++ /dev/null
@@ -1,14 +0,0 @@
-var hasGulplog = require('has-gulplog');
-
-module.exports = function(){
- if(hasGulplog()){
- // specifically deferring loading here to keep from registering it globally
- var gulplog = require('gulplog');
- gulplog.info.apply(gulplog, arguments);
- } else {
- // specifically defering loading because it might not be used
- var fancylog = require('fancy-log');
- fancylog.apply(null, arguments);
- }
- return this;
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/noop.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/noop.js
deleted file mode 100644
index 7862cb161..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/noop.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var through = require('through2');
-
-module.exports = function () {
- return through.obj();
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/lib/template.js b/node_modules/gulp-zip/node_modules/gulp-util/lib/template.js
deleted file mode 100644
index eef3bb376..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/lib/template.js
+++ /dev/null
@@ -1,23 +0,0 @@
-var template = require('lodash.template');
-var reEscape = require('lodash._reescape');
-var reEvaluate = require('lodash._reevaluate');
-var reInterpolate = require('lodash._reinterpolate');
-
-var forcedSettings = {
- escape: reEscape,
- evaluate: reEvaluate,
- interpolate: reInterpolate
-};
-
-module.exports = function(tmpl, data) {
- var fn = template(tmpl, forcedSettings);
-
- var wrapped = function(o) {
- if (typeof o === 'undefined' || typeof o.file === 'undefined') {
- throw new Error('Failed to provide the current file as "file" to the template');
- }
- return fn(o);
- };
-
- return (data ? wrapped(data) : wrapped);
-};
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/node_modules/.bin/dateformat b/node_modules/gulp-zip/node_modules/gulp-util/node_modules/.bin/dateformat
deleted file mode 120000
index 2a6f7e6d6..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/node_modules/.bin/dateformat
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../dateformat/bin/cli.js \ No newline at end of file
diff --git a/node_modules/gulp-zip/node_modules/gulp-util/package.json b/node_modules/gulp-zip/node_modules/gulp-util/package.json
deleted file mode 100644
index 7ef3b82d7..000000000
--- a/node_modules/gulp-zip/node_modules/gulp-util/package.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "name": "gulp-util",
- "description": "Utility functions for gulp plugins",
- "version": "3.0.7",
- "repository": "gulpjs/gulp-util",
- "author": "Fractal <contact@wearefractal.com> (http://wearefractal.com/)",
- "files": [
- "index.js",
- "lib"
- ],
- "dependencies": {
- "array-differ": "^1.0.0",
- "array-uniq": "^1.0.2",
- "beeper": "^1.0.0",
- "chalk": "^1.0.0",
- "dateformat": "^1.0.11",
- "fancy-log": "^1.1.0",
- "gulplog": "^1.0.0",
- "has-gulplog": "^0.1.0",
- "lodash._reescape": "^3.0.0",
- "lodash._reevaluate": "^3.0.0",
- "lodash._reinterpolate": "^3.0.0",
- "lodash.template": "^3.0.0",
- "minimist": "^1.1.0",
- "multipipe": "^0.1.2",
- "object-assign": "^3.0.0",
- "replace-ext": "0.0.1",
- "through2": "^2.0.0",
- "vinyl": "^0.5.0"
- },
- "devDependencies": {
- "buffer-equal": "^0.0.1",
- "coveralls": "^2.11.2",
- "event-stream": "^3.1.7",
- "istanbul": "^0.3.5",
- "istanbul-coveralls": "^1.0.1",
- "jshint": "^2.5.11",
- "lodash.templatesettings": "^3.0.0",
- "mocha": "^2.0.1",
- "rimraf": "^2.2.8",
- "should": "^7.0.1"
- },
- "scripts": {
- "test": "jshint *.js lib/*.js test/*.js && mocha",
- "coveralls": "istanbul cover _mocha --report lcovonly && istanbul-coveralls"
- },
- "engines": {
- "node": ">=0.10"
- },
- "license": "MIT"
-}
diff --git a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/LICENSE.txt b/node_modules/gulp-zip/node_modules/lodash._reinterpolate/LICENSE.txt
deleted file mode 100644
index 17764328c..000000000
--- a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/LICENSE.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
-Based on Underscore.js 1.7.0, copyright 2009-2015 Jeremy Ashkenas,
-DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/README.md b/node_modules/gulp-zip/node_modules/lodash._reinterpolate/README.md
deleted file mode 100644
index 1423e502f..000000000
--- a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# lodash._reinterpolate v3.0.0
-
-The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `reInterpolate` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
-
-## Installation
-
-Using npm:
-
-```bash
-$ {sudo -H} npm i -g npm
-$ npm i --save lodash._reinterpolate
-```
-
-In Node.js/io.js:
-
-```js
-var reInterpolate = require('lodash._reinterpolate');
-```
-
-See the [package source](https://github.com/lodash/lodash/blob/3.0.0-npm-packages/lodash._reinterpolate) for more details.
diff --git a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/index.js b/node_modules/gulp-zip/node_modules/lodash._reinterpolate/index.js
deleted file mode 100644
index 5c06abcf3..000000000
--- a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/index.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * lodash 3.0.0 (Custom Build) <https://lodash.com/>
- * Build: `lodash modern modularize exports="npm" -o ./`
- * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.7.0 <http://underscorejs.org/LICENSE>
- * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
- * Available under MIT license <https://lodash.com/license>
- */
-
-/** Used to match template delimiters. */
-var reInterpolate = /<%=([\s\S]+?)%>/g;
-
-module.exports = reInterpolate;
diff --git a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/package.json b/node_modules/gulp-zip/node_modules/lodash._reinterpolate/package.json
deleted file mode 100644
index 4cc9f1a53..000000000
--- a/node_modules/gulp-zip/node_modules/lodash._reinterpolate/package.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "name": "lodash._reinterpolate",
- "version": "3.0.0",
- "description": "The modern build of lodash’s internal `reInterpolate` as a module.",
- "homepage": "https://lodash.com/",
- "icon": "https://lodash.com/icon.svg",
- "license": "MIT",
- "author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
- "contributors": [
- "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
- "Benjamin Tan <demoneaux@gmail.com> (https://d10.github.io/)",
- "Blaine Bublitz <blaine@iceddev.com> (http://www.iceddev.com/)",
- "Kit Cambridge <github@kitcambridge.be> (http://kitcambridge.be/)",
- "Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)"
- ],
- "repository": "lodash/lodash",
- "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" }
-}
diff --git a/node_modules/gulp-zip/node_modules/lodash.template/LICENSE b/node_modules/gulp-zip/node_modules/lodash.template/LICENSE
deleted file mode 100644
index 9cd87e5dc..000000000
--- a/node_modules/gulp-zip/node_modules/lodash.template/LICENSE
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
-Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
-DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/lodash.template/README.md b/node_modules/gulp-zip/node_modules/lodash.template/README.md
deleted file mode 100644
index f542f713b..000000000
--- a/node_modules/gulp-zip/node_modules/lodash.template/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# lodash.template v3.6.2
-
-The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) `_.template` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module.
-
-## Installation
-
-Using npm:
-
-```bash
-$ {sudo -H} npm i -g npm
-$ npm i --save lodash.template
-```
-
-In Node.js/io.js:
-
-```js
-var template = require('lodash.template');
-```
-
-See the [documentation](https://lodash.com/docs#template) or [package source](https://github.com/lodash/lodash/blob/3.6.2-npm-packages/lodash.template) for more details.
diff --git a/node_modules/gulp-zip/node_modules/lodash.template/index.js b/node_modules/gulp-zip/node_modules/lodash.template/index.js
deleted file mode 100644
index e5a9629b9..000000000
--- a/node_modules/gulp-zip/node_modules/lodash.template/index.js
+++ /dev/null
@@ -1,389 +0,0 @@
-/**
- * lodash 3.6.2 (Custom Build) <https://lodash.com/>
- * Build: `lodash modern modularize exports="npm" -o ./`
- * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
- * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
- * Available under MIT license <https://lodash.com/license>
- */
-var baseCopy = require('lodash._basecopy'),
- baseToString = require('lodash._basetostring'),
- baseValues = require('lodash._basevalues'),
- isIterateeCall = require('lodash._isiterateecall'),
- reInterpolate = require('lodash._reinterpolate'),
- keys = require('lodash.keys'),
- restParam = require('lodash.restparam'),
- templateSettings = require('lodash.templatesettings');
-
-/** `Object#toString` result references. */
-var errorTag = '[object Error]';
-
-/** Used to match empty string literals in compiled template source. */
-var reEmptyStringLeading = /\b__p \+= '';/g,
- reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
- reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
-
-/** Used to match [ES template delimiters](http://ecma-international.org/ecma-262/6.0/#sec-template-literal-lexical-components). */
-var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
-
-/** Used to ensure capturing order of template delimiters. */
-var reNoMatch = /($^)/;
-
-/** Used to match unescaped characters in compiled string literals. */
-var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
-
-/** Used to escape characters for inclusion in compiled string literals. */
-var stringEscapes = {
- '\\': '\\',
- "'": "'",
- '\n': 'n',
- '\r': 'r',
- '\u2028': 'u2028',
- '\u2029': 'u2029'
-};
-
-/**
- * Used by `_.template` to escape characters for inclusion in compiled string literals.
- *
- * @private
- * @param {string} chr The matched character to escape.
- * @returns {string} Returns the escaped character.
- */
-function escapeStringChar(chr) {
- return '\\' + stringEscapes[chr];
-}
-
-/**
- * Checks if `value` is object-like.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
- */
-function isObjectLike(value) {
- return !!value && typeof value == 'object';
-}
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Used by `_.template` to customize its `_.assign` use.
- *
- * **Note:** This function is like `assignDefaults` except that it ignores
- * inherited property values when checking if a property is `undefined`.
- *
- * @private
- * @param {*} objectValue The destination object property value.
- * @param {*} sourceValue The source object property value.
- * @param {string} key The key associated with the object and source values.
- * @param {Object} object The destination object.
- * @returns {*} Returns the value to assign to the destination object.
- */
-function assignOwnDefaults(objectValue, sourceValue, key, object) {
- return (objectValue === undefined || !hasOwnProperty.call(object, key))
- ? sourceValue
- : objectValue;
-}
-
-/**
- * A specialized version of `_.assign` for customizing assigned values without
- * support for argument juggling, multiple sources, and `this` binding `customizer`
- * functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @param {Function} customizer The function to customize assigned values.
- * @returns {Object} Returns `object`.
- */
-function assignWith(object, source, customizer) {
- var index = -1,
- props = keys(source),
- length = props.length;
-
- while (++index < length) {
- var key = props[index],
- value = object[key],
- result = customizer(value, source[key], key, object, source);
-
- if ((result === result ? (result !== value) : (value === value)) ||
- (value === undefined && !(key in object))) {
- object[key] = result;
- }
- }
- return object;
-}
-
-/**
- * The base implementation of `_.assign` without support for argument juggling,
- * multiple sources, and `customizer` functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @returns {Object} Returns `object`.
- */
-function baseAssign(object, source) {
- return source == null
- ? object
- : baseCopy(source, keys(source), object);
-}
-
-/**
- * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,
- * `SyntaxError`, `TypeError`, or `URIError` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an error object, else `false`.
- * @example
- *
- * _.isError(new Error);
- * // => true
- *
- * _.isError(Error);
- * // => false
- */
-function isError(value) {
- return isObjectLike(value) && typeof value.message == 'string' && objToString.call(value) == errorTag;
-}
-
-/**
- * Creates a compiled template function that can interpolate data properties
- * in "interpolate" delimiters, HTML-escape interpolated data properties in
- * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
- * properties may be accessed as free variables in the template. If a setting
- * object is provided it takes precedence over `_.templateSettings` values.
- *
- * **Note:** In the development build `_.template` utilizes
- * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
- * for easier debugging.
- *
- * For more information on precompiling templates see
- * [lodash's custom builds documentation](https://lodash.com/custom-builds).
- *
- * For more information on Chrome extension sandboxes see
- * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The template string.
- * @param {Object} [options] The options object.
- * @param {RegExp} [options.escape] The HTML "escape" delimiter.
- * @param {RegExp} [options.evaluate] The "evaluate" delimiter.
- * @param {Object} [options.imports] An object to import into the template as free variables.
- * @param {RegExp} [options.interpolate] The "interpolate" delimiter.
- * @param {string} [options.sourceURL] The sourceURL of the template's compiled source.
- * @param {string} [options.variable] The data object variable name.
- * @param- {Object} [otherOptions] Enables the legacy `options` param signature.
- * @returns {Function} Returns the compiled template function.
- * @example
- *
- * // using the "interpolate" delimiter to create a compiled template
- * var compiled = _.template('hello <%= user %>!');
- * compiled({ 'user': 'fred' });
- * // => 'hello fred!'
- *
- * // using the HTML "escape" delimiter to escape data property values
- * var compiled = _.template('<b><%- value %></b>');
- * compiled({ 'value': '<script>' });
- * // => '<b>&lt;script&gt;</b>'
- *
- * // using the "evaluate" delimiter to execute JavaScript and generate HTML
- * var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');
- * compiled({ 'users': ['fred', 'barney'] });
- * // => '<li>fred</li><li>barney</li>'
- *
- * // using the internal `print` function in "evaluate" delimiters
- * var compiled = _.template('<% print("hello " + user); %>!');
- * compiled({ 'user': 'barney' });
- * // => 'hello barney!'
- *
- * // using the ES delimiter as an alternative to the default "interpolate" delimiter
- * var compiled = _.template('hello ${ user }!');
- * compiled({ 'user': 'pebbles' });
- * // => 'hello pebbles!'
- *
- * // using custom template delimiters
- * _.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
- * var compiled = _.template('hello {{ user }}!');
- * compiled({ 'user': 'mustache' });
- * // => 'hello mustache!'
- *
- * // using backslashes to treat delimiters as plain text
- * var compiled = _.template('<%= "\\<%- value %\\>" %>');
- * compiled({ 'value': 'ignored' });
- * // => '<%- value %>'
- *
- * // using the `imports` option to import `jQuery` as `jq`
- * var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';
- * var compiled = _.template(text, { 'imports': { 'jq': jQuery } });
- * compiled({ 'users': ['fred', 'barney'] });
- * // => '<li>fred</li><li>barney</li>'
- *
- * // using the `sourceURL` option to specify a custom sourceURL for the template
- * var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });
- * compiled(data);
- * // => find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector
- *
- * // using the `variable` option to ensure a with-statement isn't used in the compiled template
- * var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });
- * compiled.source;
- * // => function(data) {
- * // var __t, __p = '';
- * // __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';
- * // return __p;
- * // }
- *
- * // using the `source` property to inline compiled templates for meaningful
- * // line numbers in error messages and a stack trace
- * fs.writeFileSync(path.join(cwd, 'jst.js'), '\
- * var JST = {\
- * "main": ' + _.template(mainText).source + '\
- * };\
- * ');
- */
-function template(string, options, otherOptions) {
- // Based on John Resig's `tmpl` implementation (http://ejohn.org/blog/javascript-micro-templating/)
- // and Laura Doktorova's doT.js (https://github.com/olado/doT).
- var settings = templateSettings.imports._.templateSettings || templateSettings;
-
- if (otherOptions && isIterateeCall(string, options, otherOptions)) {
- options = otherOptions = undefined;
- }
- string = baseToString(string);
- options = assignWith(baseAssign({}, otherOptions || options), settings, assignOwnDefaults);
-
- var imports = assignWith(baseAssign({}, options.imports), settings.imports, assignOwnDefaults),
- importsKeys = keys(imports),
- importsValues = baseValues(imports, importsKeys);
-
- var isEscaping,
- isEvaluating,
- index = 0,
- interpolate = options.interpolate || reNoMatch,
- source = "__p += '";
-
- // Compile the regexp to match each delimiter.
- var reDelimiters = RegExp(
- (options.escape || reNoMatch).source + '|' +
- interpolate.source + '|' +
- (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
- (options.evaluate || reNoMatch).source + '|$'
- , 'g');
-
- // Use a sourceURL for easier debugging.
- var sourceURL = 'sourceURL' in options ? '//# sourceURL=' + options.sourceURL + '\n' : '';
-
- string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
- interpolateValue || (interpolateValue = esTemplateValue);
-
- // Escape characters that can't be included in string literals.
- source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);
-
- // Replace delimiters with snippets.
- if (escapeValue) {
- isEscaping = true;
- source += "' +\n__e(" + escapeValue + ") +\n'";
- }
- if (evaluateValue) {
- isEvaluating = true;
- source += "';\n" + evaluateValue + ";\n__p += '";
- }
- if (interpolateValue) {
- source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
- }
- index = offset + match.length;
-
- // The JS engine embedded in Adobe products requires returning the `match`
- // string in order to produce the correct `offset` value.
- return match;
- });
-
- source += "';\n";
-
- // If `variable` is not specified wrap a with-statement around the generated
- // code to add the data object to the top of the scope chain.
- var variable = options.variable;
- if (!variable) {
- source = 'with (obj) {\n' + source + '\n}\n';
- }
- // Cleanup code by stripping empty strings.
- source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
- .replace(reEmptyStringMiddle, '$1')
- .replace(reEmptyStringTrailing, '$1;');
-
- // Frame code as the function body.
- source = 'function(' + (variable || 'obj') + ') {\n' +
- (variable
- ? ''
- : 'obj || (obj = {});\n'
- ) +
- "var __t, __p = ''" +
- (isEscaping
- ? ', __e = _.escape'
- : ''
- ) +
- (isEvaluating
- ? ', __j = Array.prototype.join;\n' +
- "function print() { __p += __j.call(arguments, '') }\n"
- : ';\n'
- ) +
- source +
- 'return __p\n}';
-
- var result = attempt(function() {
- return Function(importsKeys, sourceURL + 'return ' + source).apply(undefined, importsValues);
- });
-
- // Provide the compiled function's source by its `toString` method or
- // the `source` property as a convenience for inlining compiled templates.
- result.source = source;
- if (isError(result)) {
- throw result;
- }
- return result;
-}
-
-/**
- * Attempts to invoke `func`, returning either the result or the caught error
- * object. Any additional arguments are provided to `func` when it is invoked.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Function} func The function to attempt.
- * @returns {*} Returns the `func` result or error object.
- * @example
- *
- * // avoid throwing errors for invalid selectors
- * var elements = _.attempt(function(selector) {
- * return document.querySelectorAll(selector);
- * }, '>_>');
- *
- * if (_.isError(elements)) {
- * elements = [];
- * }
- */
-var attempt = restParam(function(func, args) {
- try {
- return func.apply(undefined, args);
- } catch(e) {
- return isError(e) ? e : new Error(e);
- }
-});
-
-module.exports = template;
diff --git a/node_modules/gulp-zip/node_modules/lodash.template/package.json b/node_modules/gulp-zip/node_modules/lodash.template/package.json
deleted file mode 100644
index 88bb748e2..000000000
--- a/node_modules/gulp-zip/node_modules/lodash.template/package.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
- "name": "lodash.template",
- "version": "3.6.2",
- "description": "The modern build of lodash’s `_.template` as a module.",
- "homepage": "https://lodash.com/",
- "icon": "https://lodash.com/icon.svg",
- "license": "MIT",
- "keywords": "lodash, lodash-modularized, stdlib, util",
- "author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
- "contributors": [
- "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)",
- "Benjamin Tan <demoneaux@gmail.com> (https://d10.github.io/)",
- "Blaine Bublitz <blaine@iceddev.com> (http://www.iceddev.com/)",
- "Kit Cambridge <github@kitcambridge.be> (http://kitcambridge.be/)",
- "Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)"
- ],
- "repository": "lodash/lodash",
- "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" },
- "dependencies": {
- "lodash._basecopy": "^3.0.0",
- "lodash._basetostring": "^3.0.0",
- "lodash._basevalues": "^3.0.0",
- "lodash._isiterateecall": "^3.0.0",
- "lodash._reinterpolate": "^3.0.0",
- "lodash.escape": "^3.0.0",
- "lodash.keys": "^3.0.0",
- "lodash.restparam": "^3.0.0",
- "lodash.templatesettings": "^3.0.0"
- }
-}
diff --git a/node_modules/gulp-zip/node_modules/object-assign/index.js b/node_modules/gulp-zip/node_modules/object-assign/index.js
deleted file mode 100644
index 2164f93df..000000000
--- a/node_modules/gulp-zip/node_modules/object-assign/index.js
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-var propIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-function ToObject(val) {
- if (val == null) {
- throw new TypeError('Object.assign cannot be called with null or undefined');
- }
-
- return Object(val);
-}
-
-function ownEnumerableKeys(obj) {
- var keys = Object.getOwnPropertyNames(obj);
-
- if (Object.getOwnPropertySymbols) {
- keys = keys.concat(Object.getOwnPropertySymbols(obj));
- }
-
- return keys.filter(function (key) {
- return propIsEnumerable.call(obj, key);
- });
-}
-
-module.exports = Object.assign || function (target, source) {
- var from;
- var keys;
- var to = ToObject(target);
-
- for (var s = 1; s < arguments.length; s++) {
- from = arguments[s];
- keys = ownEnumerableKeys(Object(from));
-
- for (var i = 0; i < keys.length; i++) {
- to[keys[i]] = from[keys[i]];
- }
- }
-
- return to;
-};
diff --git a/node_modules/gulp-zip/node_modules/object-assign/license b/node_modules/gulp-zip/node_modules/object-assign/license
deleted file mode 100644
index 654d0bfe9..000000000
--- a/node_modules/gulp-zip/node_modules/object-assign/license
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/object-assign/package.json b/node_modules/gulp-zip/node_modules/object-assign/package.json
deleted file mode 100644
index c3b37fef7..000000000
--- a/node_modules/gulp-zip/node_modules/object-assign/package.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "name": "object-assign",
- "version": "3.0.0",
- "description": "ES6 Object.assign() ponyfill",
- "license": "MIT",
- "repository": "sindresorhus/object-assign",
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "http://sindresorhus.com"
- },
- "engines": {
- "node": ">=0.10.0"
- },
- "scripts": {
- "test": "mocha"
- },
- "files": [
- "index.js"
- ],
- "keywords": [
- "object",
- "assign",
- "extend",
- "properties",
- "es6",
- "ecmascript",
- "harmony",
- "ponyfill",
- "prollyfill",
- "polyfill",
- "shim",
- "browser"
- ],
- "devDependencies": {
- "mocha": "*"
- }
-}
diff --git a/node_modules/gulp-zip/node_modules/object-assign/readme.md b/node_modules/gulp-zip/node_modules/object-assign/readme.md
deleted file mode 100644
index aee51c12b..000000000
--- a/node_modules/gulp-zip/node_modules/object-assign/readme.md
+++ /dev/null
@@ -1,51 +0,0 @@
-# object-assign [![Build Status](https://travis-ci.org/sindresorhus/object-assign.svg?branch=master)](https://travis-ci.org/sindresorhus/object-assign)
-
-> ES6 [`Object.assign()`](http://www.2ality.com/2014/01/object-assign.html) ponyfill
-
-> Ponyfill: A polyfill that doesn't overwrite the native method
-
-
-## Install
-
-```sh
-$ npm install --save object-assign
-```
-
-
-## Usage
-
-```js
-var objectAssign = require('object-assign');
-
-objectAssign({foo: 0}, {bar: 1});
-//=> {foo: 0, bar: 1}
-
-// multiple sources
-objectAssign({foo: 0}, {bar: 1}, {baz: 2});
-//=> {foo: 0, bar: 1, baz: 2}
-
-// overwrites equal keys
-objectAssign({foo: 0}, {foo: 1}, {foo: 2});
-//=> {foo: 2}
-
-// ignores null and undefined sources
-objectAssign({foo: 0}, null, {bar: 1}, undefined);
-//=> {foo: 0, bar: 1}
-```
-
-
-## API
-
-### objectAssign(target, source, [source, ...])
-
-Assigns enumerable own properties of `source` objects to the `target` object and returns the `target` object. Additional `source` objects will overwrite previous ones.
-
-
-## Resources
-
-- [ES6 spec - Object.assign](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign)
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/.npmignore b/node_modules/gulp-zip/node_modules/replace-ext/.npmignore
deleted file mode 100644
index b5ef13a3c..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/.npmignore
+++ /dev/null
@@ -1,6 +0,0 @@
-.DS_Store
-*.log
-node_modules
-build
-*.node
-components \ No newline at end of file
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/.travis.yml b/node_modules/gulp-zip/node_modules/replace-ext/.travis.yml
deleted file mode 100644
index 8101b9fe7..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/.travis.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-language: node_js
-node_js:
- - "0.7"
- - "0.8"
- - "0.9"
- - "0.10"
-after_script:
- - npm run coveralls \ No newline at end of file
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/LICENSE b/node_modules/gulp-zip/node_modules/replace-ext/LICENSE
deleted file mode 100755
index 7cbe012c6..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2014 Fractal <contact@wearefractal.com>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/README.md b/node_modules/gulp-zip/node_modules/replace-ext/README.md
deleted file mode 100644
index 05b5d21fd..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/README.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# replace-ext [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coveralls Status][coveralls-image]][coveralls-url] [![Dependency Status][david-image]][david-url]
-
-
-## Information
-
-<table>
-<tr>
-<td>Package</td><td>replace-ext</td>
-</tr>
-<tr>
-<td>Description</td>
-<td>Replaces a file extension with another one</td>
-</tr>
-<tr>
-<td>Node Version</td>
-<td>>= 0.4</td>
-</tr>
-</table>
-
-## Usage
-
-```javascript
-var replaceExt = require('replace-ext');
-
-var path = '/some/dir/file.js';
-var npath = replaceExt(path, '.coffee');
-
-console.log(npath); // /some/dir/file.coffee
-```
-
-[npm-url]: https://npmjs.org/package/replace-ext
-[npm-image]: https://badge.fury.io/js/replace-ext.png
-
-[travis-url]: https://travis-ci.org/wearefractal/replace-ext
-[travis-image]: https://travis-ci.org/wearefractal/replace-ext.png?branch=master
-
-[coveralls-url]: https://coveralls.io/r/wearefractal/replace-ext
-[coveralls-image]: https://coveralls.io/repos/wearefractal/replace-ext/badge.png
-
-[depstat-url]: https://david-dm.org/wearefractal/replace-ext
-[depstat-image]: https://david-dm.org/wearefractal/replace-ext.png
-
-[david-url]: https://david-dm.org/wearefractal/replace-ext
-[david-image]: https://david-dm.org/wearefractal/replace-ext.png?theme=shields.io \ No newline at end of file
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/index.js b/node_modules/gulp-zip/node_modules/replace-ext/index.js
deleted file mode 100644
index 3f76938e4..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var path = require('path');
-
-module.exports = function(npath, ext) {
- if (typeof npath !== 'string') return npath;
- if (npath.length === 0) return npath;
-
- var nFileName = path.basename(npath, path.extname(npath))+ext;
- return path.join(path.dirname(npath), nFileName);
-}; \ No newline at end of file
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/package.json b/node_modules/gulp-zip/node_modules/replace-ext/package.json
deleted file mode 100644
index 307d99b78..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/package.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "name":"replace-ext",
- "description":"Replaces a file extension with another one",
- "version":"0.0.1",
- "homepage":"http://github.com/wearefractal/replace-ext",
- "repository":"git://github.com/wearefractal/replace-ext.git",
- "author":"Fractal <contact@wearefractal.com> (http://wearefractal.com/)",
- "main":"./index.js",
-
- "dependencies":{
-
- },
- "devDependencies": {
- "mocha": "~1.17.0",
- "should": "~3.1.0",
- "mocha-lcov-reporter": "~0.0.1",
- "coveralls": "~2.6.1",
- "istanbul": "~0.2.3",
- "rimraf": "~2.2.5",
- "jshint": "~2.4.1"
- },
- "scripts": {
- "test": "mocha --reporter spec && jshint",
- "coveralls": "istanbul cover _mocha --report lcovonly -- -R spec && cat ./coverage/lcov.info | coveralls && rm -rf ./coverage"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "licenses":[
- {
- "type":"MIT",
- "url":"http://github.com/wearefractal/replace-ext/raw/master/LICENSE"
- }
- ]
-}
diff --git a/node_modules/gulp-zip/node_modules/replace-ext/test/main.js b/node_modules/gulp-zip/node_modules/replace-ext/test/main.js
deleted file mode 100644
index 51377021b..000000000
--- a/node_modules/gulp-zip/node_modules/replace-ext/test/main.js
+++ /dev/null
@@ -1,51 +0,0 @@
-var replaceExt = require('../');
-var path = require('path');
-var should = require('should');
-require('mocha');
-
-describe('replace-ext', function() {
- it('should return a valid replaced extension on nested', function(done) {
- var fname = path.join(__dirname, './fixtures/test.coffee');
- var expected = path.join(__dirname, './fixtures/test.js');
- var nu = replaceExt(fname, '.js');
- should.exist(nu);
- nu.should.equal(expected);
- done();
- });
-
- it('should return a valid replaced extension on flat', function(done) {
- var fname = 'test.coffee';
- var expected = 'test.js';
- var nu = replaceExt(fname, '.js');
- should.exist(nu);
- nu.should.equal(expected);
- done();
- });
-
- it('should not return a valid replaced extension on empty string', function(done) {
- var fname = '';
- var expected = '';
- var nu = replaceExt(fname, '.js');
- should.exist(nu);
- nu.should.equal(expected);
- done();
- });
-
- it('should return a valid removed extension on nested', function(done) {
- var fname = path.join(__dirname, './fixtures/test.coffee');
- var expected = path.join(__dirname, './fixtures/test');
- var nu = replaceExt(fname, '');
- should.exist(nu);
- nu.should.equal(expected);
- done();
- });
-
- it('should return a valid added extension on nested', function(done) {
- var fname = path.join(__dirname, './fixtures/test');
- var expected = path.join(__dirname, './fixtures/test.js');
- var nu = replaceExt(fname, '.js');
- should.exist(nu);
- nu.should.equal(expected);
- done();
- });
-});
diff --git a/node_modules/gulp-zip/node_modules/vinyl/LICENSE b/node_modules/gulp-zip/node_modules/vinyl/LICENSE
deleted file mode 100644
index 4f482f9ba..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2013 Fractal <contact@wearefractal.com>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/gulp-zip/node_modules/vinyl/README.md b/node_modules/gulp-zip/node_modules/vinyl/README.md
deleted file mode 100644
index 2d57d8566..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/README.md
+++ /dev/null
@@ -1,195 +0,0 @@
-# vinyl [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coveralls Status][coveralls-image]][coveralls-url] [![Dependency Status](https://david-dm.org/wearefractal/vinyl.png?theme=shields.io)](https://david-dm.org/wearefractal/vinyl)
-## Information
-<table><br><tr><br><td>Package</td><td>vinyl</td><br></tr><br><tr><br><td>Description</td><br><td>A virtual file format</td><br></tr><br><tr><br><td>Node Version</td><br><td>>= 0.9</td><br></tr><br></table>
-
-## What is this?
-Read this for more info about how this plays into the grand scheme of things [https://medium.com/@eschoff/3828e8126466](https://medium.com/@eschoff/3828e8126466)
-
-## File
-
-```javascript
-var File = require('vinyl');
-
-var coffeeFile = new File({
- cwd: "/",
- base: "/test/",
- path: "/test/file.coffee",
- contents: new Buffer("test = 123")
-});
-```
-
-### isVinyl
-When checking if an object is a vinyl file, you should not use instanceof. Use the isVinyl function instead.
-
-```js
-var File = require('vinyl');
-
-var dummy = new File({stuff});
-var notAFile = {};
-
-File.isVinyl(dummy); // true
-File.isVinyl(notAFile); // false
-```
-
-### constructor(options)
-#### options.cwd
-Type: `String`<br><br>Default: `process.cwd()`
-
-#### options.base
-Used for relative pathing. Typically where a glob starts.
-
-Type: `String`<br><br>Default: `options.cwd`
-
-#### options.path
-Full path to the file.
-
-Type: `String`<br><br>Default: `undefined`
-
-#### options.history
-Path history. Has no effect if `options.path` is passed.
-
-Type: `Array`<br><br>Default: `options.path ? [options.path] : []`
-
-#### options.stat
-The result of an fs.stat call. See [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats) for more information.
-
-Type: `fs.Stats`<br><br>Default: `null`
-
-#### options.contents
-File contents.
-
-Type: `Buffer, Stream, or null`<br><br>Default: `null`
-
-### isBuffer()
-Returns true if file.contents is a Buffer.
-
-### isStream()
-Returns true if file.contents is a Stream.
-
-### isNull()
-Returns true if file.contents is null.
-
-### clone([opt])
-Returns a new File object with all attributes cloned.<br>By default custom attributes are deep-cloned.
-
-If opt or opt.deep is false, custom attributes will not be deep-cloned.
-
-If opt.contents is false, it will copy file.contents Buffer's reference.
-
-### pipe(stream[, opt])
-If file.contents is a Buffer, it will write it to the stream.
-
-If file.contents is a Stream, it will pipe it to the stream.
-
-If file.contents is null, it will do nothing.
-
-If opt.end is false, the destination stream will not be ended (same as node core).
-
-Returns the stream.
-
-### inspect()
-Returns a pretty String interpretation of the File. Useful for console.log.
-
-### contents
-The [Stream](https://nodejs.org/api/stream.html#stream_stream) or [Buffer](https://nodejs.org/api/buffer.html#buffer_class_buffer) of the file as it was passed in via options, or as the result of modification.
-
-For example:
-
-```js
-if (file.isBuffer()) {
- console.log(file.contents.toString()); // logs out the string of contents
-}
-```
-
-### path
-Absolute pathname string or `undefined`. Setting to a different value pushes the old value to `history`.
-
-### history
-Array of `path` values the file object has had, from `history[0]` (original) through `history[history.length - 1]` (current). `history` and its elements should normally be treated as read-only and only altered indirectly by setting `path`.
-
-### relative
-Returns path.relative for the file base and file path.
-
-Example:
-
-```javascript
-var file = new File({
- cwd: "/",
- base: "/test/",
- path: "/test/file.coffee"
-});
-
-console.log(file.relative); // file.coffee
-```
-
-### dirname
-Gets and sets path.dirname for the file path.
-
-Example:
-
-```javascript
-var file = new File({
- cwd: "/",
- base: "/test/",
- path: "/test/file.coffee"
-});
-
-console.log(file.dirname); // /test
-
-file.dirname = '/specs';
-
-console.log(file.dirname); // /specs
-console.log(file.path); // /specs/file.coffee
-`
-```
-
-### basename
-Gets and sets path.basename for the file path.
-
-Example:
-
-```javascript
-var file = new File({
- cwd: "/",
- base: "/test/",
- path: "/test/file.coffee"
-});
-
-console.log(file.basename); // file.coffee
-
-file.basename = 'file.js';
-
-console.log(file.basename); // file.js
-console.log(file.path); // /test/file.js
-`
-```
-
-### extname
-Gets and sets path.extname for the file path.
-
-Example:
-
-```javascript
-var file = new File({
- cwd: "/",
- base: "/test/",
- path: "/test/file.coffee"
-});
-
-console.log(file.extname); // .coffee
-
-file.extname = '.js';
-
-console.log(file.extname); // .js
-console.log(file.path); // /test/file.js
-`
-```
-
-[npm-url]: https://npmjs.org/package/vinyl
-[npm-image]: https://badge.fury.io/js/vinyl.png
-[travis-url]: https://travis-ci.org/wearefractal/vinyl
-[travis-image]: https://travis-ci.org/wearefractal/vinyl.png?branch=master
-[coveralls-url]: https://coveralls.io/r/wearefractal/vinyl
-[coveralls-image]: https://coveralls.io/repos/wearefractal/vinyl/badge.png
-[depstat-url]: https://david-dm.org/wearefractal/vinyl
-[depstat-image]: https://david-dm.org/wearefractal/vinyl.png
diff --git a/node_modules/gulp-zip/node_modules/vinyl/index.js b/node_modules/gulp-zip/node_modules/vinyl/index.js
deleted file mode 100644
index c8f113ffe..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/index.js
+++ /dev/null
@@ -1,213 +0,0 @@
-var path = require('path');
-var clone = require('clone');
-var cloneStats = require('clone-stats');
-var cloneBuffer = require('./lib/cloneBuffer');
-var isBuffer = require('./lib/isBuffer');
-var isStream = require('./lib/isStream');
-var isNull = require('./lib/isNull');
-var inspectStream = require('./lib/inspectStream');
-var Stream = require('stream');
-var replaceExt = require('replace-ext');
-
-function File(file) {
- if (!file) file = {};
-
- // record path change
- var history = file.path ? [file.path] : file.history;
- this.history = history || [];
-
- this.cwd = file.cwd || process.cwd();
- this.base = file.base || this.cwd;
-
- // stat = files stats object
- this.stat = file.stat || null;
-
- // contents = stream, buffer, or null if not read
- this.contents = file.contents || null;
-
- this._isVinyl = true;
-}
-
-File.prototype.isBuffer = function() {
- return isBuffer(this.contents);
-};
-
-File.prototype.isStream = function() {
- return isStream(this.contents);
-};
-
-File.prototype.isNull = function() {
- return isNull(this.contents);
-};
-
-// TODO: should this be moved to vinyl-fs?
-File.prototype.isDirectory = function() {
- return this.isNull() && this.stat && this.stat.isDirectory();
-};
-
-File.prototype.clone = function(opt) {
- if (typeof opt === 'boolean') {
- opt = {
- deep: opt,
- contents: true
- };
- } else if (!opt) {
- opt = {
- deep: true,
- contents: true
- };
- } else {
- opt.deep = opt.deep === true;
- opt.contents = opt.contents !== false;
- }
-
- // clone our file contents
- var contents;
- if (this.isStream()) {
- contents = this.contents.pipe(new Stream.PassThrough());
- this.contents = this.contents.pipe(new Stream.PassThrough());
- } else if (this.isBuffer()) {
- contents = opt.contents ? cloneBuffer(this.contents) : this.contents;
- }
-
- var file = new File({
- cwd: this.cwd,
- base: this.base,
- stat: (this.stat ? cloneStats(this.stat) : null),
- history: this.history.slice(),
- contents: contents
- });
-
- // clone our custom properties
- Object.keys(this).forEach(function(key) {
- // ignore built-in fields
- if (key === '_contents' || key === 'stat' ||
- key === 'history' || key === 'path' ||
- key === 'base' || key === 'cwd') {
- return;
- }
- file[key] = opt.deep ? clone(this[key], true) : this[key];
- }, this);
- return file;
-};
-
-File.prototype.pipe = function(stream, opt) {
- if (!opt) opt = {};
- if (typeof opt.end === 'undefined') opt.end = true;
-
- if (this.isStream()) {
- return this.contents.pipe(stream, opt);
- }
- if (this.isBuffer()) {
- if (opt.end) {
- stream.end(this.contents);
- } else {
- stream.write(this.contents);
- }
- return stream;
- }
-
- // isNull
- if (opt.end) stream.end();
- return stream;
-};
-
-File.prototype.inspect = function() {
- var inspect = [];
-
- // use relative path if possible
- var filePath = (this.base && this.path) ? this.relative : this.path;
-
- if (filePath) {
- inspect.push('"'+filePath+'"');
- }
-
- if (this.isBuffer()) {
- inspect.push(this.contents.inspect());
- }
-
- if (this.isStream()) {
- inspect.push(inspectStream(this.contents));
- }
-
- return '<File '+inspect.join(' ')+'>';
-};
-
-File.isVinyl = function(file) {
- return file && file._isVinyl === true;
-};
-
-// virtual attributes
-// or stuff with extra logic
-Object.defineProperty(File.prototype, 'contents', {
- get: function() {
- return this._contents;
- },
- set: function(val) {
- if (!isBuffer(val) && !isStream(val) && !isNull(val)) {
- throw new Error('File.contents can only be a Buffer, a Stream, or null.');
- }
- this._contents = val;
- }
-});
-
-// TODO: should this be moved to vinyl-fs?
-Object.defineProperty(File.prototype, 'relative', {
- get: function() {
- if (!this.base) throw new Error('No base specified! Can not get relative.');
- if (!this.path) throw new Error('No path specified! Can not get relative.');
- return path.relative(this.base, this.path);
- },
- set: function() {
- throw new Error('File.relative is generated from the base and path attributes. Do not modify it.');
- }
-});
-
-Object.defineProperty(File.prototype, 'dirname', {
- get: function() {
- if (!this.path) throw new Error('No path specified! Can not get dirname.');
- return path.dirname(this.path);
- },
- set: function(dirname) {
- if (!this.path) throw new Error('No path specified! Can not set dirname.');
- this.path = path.join(dirname, path.basename(this.path));
- }
-});
-
-Object.defineProperty(File.prototype, 'basename', {
- get: function() {
- if (!this.path) throw new Error('No path specified! Can not get basename.');
- return path.basename(this.path);
- },
- set: function(basename) {
- if (!this.path) throw new Error('No path specified! Can not set basename.');
- this.path = path.join(path.dirname(this.path), basename);
- }
-});
-
-Object.defineProperty(File.prototype, 'extname', {
- get: function() {
- if (!this.path) throw new Error('No path specified! Can not get extname.');
- return path.extname(this.path);
- },
- set: function(extname) {
- if (!this.path) throw new Error('No path specified! Can not set extname.');
- this.path = replaceExt(this.path, extname);
- }
-});
-
-Object.defineProperty(File.prototype, 'path', {
- get: function() {
- return this.history[this.history.length - 1];
- },
- set: function(path) {
- if (typeof path !== 'string') throw new Error('path should be string');
-
- // record history only when path changed
- if (path && path !== this.path) {
- this.history.push(path);
- }
- }
-});
-
-module.exports = File;
diff --git a/node_modules/gulp-zip/node_modules/vinyl/lib/cloneBuffer.js b/node_modules/gulp-zip/node_modules/vinyl/lib/cloneBuffer.js
deleted file mode 100644
index 89f09eda1..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/lib/cloneBuffer.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var Buffer = require('buffer').Buffer;
-
-module.exports = function(buf) {
- var out = new Buffer(buf.length);
- buf.copy(out);
- return out;
-};
diff --git a/node_modules/gulp-zip/node_modules/vinyl/lib/inspectStream.js b/node_modules/gulp-zip/node_modules/vinyl/lib/inspectStream.js
deleted file mode 100644
index d36df6ff6..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/lib/inspectStream.js
+++ /dev/null
@@ -1,11 +0,0 @@
-var isStream = require('./isStream');
-
-module.exports = function(stream) {
- if (!isStream(stream)) return;
-
- var streamType = stream.constructor.name;
- // avoid StreamStream
- if (streamType === 'Stream') streamType = '';
-
- return '<'+streamType+'Stream>';
-};
diff --git a/node_modules/gulp-zip/node_modules/vinyl/lib/isBuffer.js b/node_modules/gulp-zip/node_modules/vinyl/lib/isBuffer.js
deleted file mode 100644
index 8a767d174..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/lib/isBuffer.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('buffer').Buffer.isBuffer;
diff --git a/node_modules/gulp-zip/node_modules/vinyl/lib/isNull.js b/node_modules/gulp-zip/node_modules/vinyl/lib/isNull.js
deleted file mode 100644
index 7f22c63ae..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/lib/isNull.js
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = function(v) {
- return v === null;
-};
diff --git a/node_modules/gulp-zip/node_modules/vinyl/lib/isStream.js b/node_modules/gulp-zip/node_modules/vinyl/lib/isStream.js
deleted file mode 100644
index 9ce0929b0..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/lib/isStream.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var Stream = require('stream').Stream;
-
-module.exports = function(o) {
- return !!o && o instanceof Stream;
-}; \ No newline at end of file
diff --git a/node_modules/gulp-zip/node_modules/vinyl/package.json b/node_modules/gulp-zip/node_modules/vinyl/package.json
deleted file mode 100644
index 6000cffb3..000000000
--- a/node_modules/gulp-zip/node_modules/vinyl/package.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "name": "vinyl",
- "description": "A virtual file format",
- "version": "0.5.3",
- "homepage": "http://github.com/wearefractal/vinyl",
- "repository": "git://github.com/wearefractal/vinyl.git",
- "author": "Fractal <contact@wearefractal.com> (http://wearefractal.com/)",
- "main": "./index.js",
- "files": [
- "index.js",
- "lib"
- ],
- "dependencies": {
- "clone": "^1.0.0",
- "clone-stats": "^0.0.1",
- "replace-ext": "0.0.1"
- },
- "devDependencies": {
- "buffer-equal": "0.0.1",
- "event-stream": "^3.1.0",
- "istanbul": "^0.3.0",
- "istanbul-coveralls": "^1.0.1",
- "jshint": "^2.4.1",
- "lodash.templatesettings": "^3.1.0",
- "mocha": "^2.0.0",
- "rimraf": "^2.2.5",
- "should": "^7.0.0"
- },
- "scripts": {
- "test": "mocha && jshint lib",
- "coveralls": "istanbul cover _mocha && istanbul-coveralls"
- },
- "engines": {
- "node": ">= 0.9"
- },
- "license": "MIT"
-}