diff --git a/.flowconfig b/.flowconfig index 94ffcb54a2..d15db1c9ab 100644 --- a/.flowconfig +++ b/.flowconfig @@ -34,4 +34,4 @@ suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(2[0-4]\\|1[0-9]\\|[0-9 suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy [version] -^0.26.0 +^0.27.0 diff --git a/CHANGELOG.md b/CHANGELOG.md index 45acb43a89..046b5da040 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,40 @@ +## 15.2.1 (July 8, 2016) + +### React +- Fix errant warning related to `shouldHaveDebugID`. ([@gaearon](https://github.com/gaearon) in [#7193](https://github.com/facebook/react/pull/7193)) +- Better removal of dev-only code, leading to a small reduction in the minified production bundle size. ([@gaearon](https://github.com/gaearon) in [#7188](https://github.com/facebook/react/pull/7188), [#7189](https://github.com/facebook/react/pull/7189)) + +### React DOM +- Add stack trace to unknown property warning. ([@jimfb](https://github.com/jimfb) in [#7040](https://github.com/facebook/react/pull/7040)) +- Fix webcomponents example. ([@jalexanderfox](https://github.com/jalexanderfox) in [#7057](https://github.com/facebook/react/pull/7057)) +- Fix `unstable_renderSubtreeIntoContainer` so that context properly updates when linked to state. ([@gaearon](https://github.com/gaearon) in [#7125](https://github.com/facebook/react/pull/7125)) +- Improve invariant wording for void elements. ([@starkch](https://github.com/starkch) in [#7066](https://github.com/facebook/react/pull/7066)) +- Ensure no errors are thrown due to event handlers in server rendering. ([@rricard](https://github.com/rricard) in [#7127](https://github.com/facebook/react/pull/7127)) +- Fix regression resulting in `value`-less submit and reset inputs removing the browser-default text. ([@zpao](https://github.com/zpao) in [#7197](https://github.com/facebook/react/pull/7197)) +- Fix regression resulting in empty `name` attribute being added to inputs when not provided. ([@okonet](https://github.com/okonet) in [#7199](https://github.com/facebook/react/pull/7199)) + +### React Perf Add-on +- Make `ReactPerf.start()` work properly during lifecycle methods. ([@gaearon](https://github.com/gaearon) in [#7208](https://github.com/facebook/react/pull/7208)). + +### React CSSTransitionGroup Add-on +- Fix issue resulting in spurious unknown property warnings. ([@batusai513](https://github.com/batusai513) in [#7165](https://github.com/facebook/react/pull/7165)) + +### React Native Renderer +- Improve error handling in cross-platform touch event handling. ([@yungsters](https://github.com/yungsters) in [#7143](https://github.com/facebook/react/pull/7143)) + + ## 15.2.0 (July 1, 2016) ### React - Add error codes to production invariants, with links to the view the full error text. ([@keyanzhang](https://github.com/keyanzhang) in [#6948](https://github.com/facebook/react/pull/6948)) -- Include component stack information in PropType validation warnings. ([@spicyj](https://github.com/spicyj) in [#6771](https://github.com/facebook/react/pull/6771)) +- Include component stack information in PropType validation warnings. ([@troydemonbreun](https://github.com/troydemonbreun) in [#6398](https://github.com/facebook/react/pull/6398), [@spicyj](https://github.com/spicyj) in [#6771](https://github.com/facebook/react/pull/6771)) - Include component stack information in key warnings. ([@keyanzhang](https://github.com/keyanzhang) in [#6799](https://github.com/facebook/react/pull/6799)) -- Stop validating props at mount time, only validate at element creation. ([@keyanzhang](https://github.com/keyanzhang) in [#6823](https://github.com/facebook/react/pull/6823)) +- Stop validating props at mount time, only validate at element creation. ([@keyanzhang](https://github.com/keyanzhang) in [#6824](https://github.com/facebook/react/pull/6824)) - New invariant providing actionable error in missing instance case. ([@yungsters](https://github.com/yungsters) in [#6990](https://github.com/facebook/react/pull/6990)) - Add `React.PropTypes.symbol` to support ES2015 Symbols as props. ([@puradox](https://github.com/puradox) in [#6377](https://github.com/facebook/react/pull/6377)) - Fix incorrect coercion of ref or key that are undefined in development ([@gaearon](https://github.com/gaearon) in [#6880](https://github.com/facebook/react/pull/6880)) - Fix a false positive when passing other element’s props to cloneElement ([@ericmatthys](https://github.com/ericmatthys) in [#6268](https://github.com/facebook/react/pull/6268)) +- Warn if you attempt to define `childContextTypes` on a functional component ([@Aweary](https://github.com/Aweary) in [#6933](https://github.com/facebook/react/pull/6933)) ### React DOM - Add warning for unknown properties on DOM elements. ([@jimfb](https://github.com/jimfb) in [#6800](https://github.com/facebook/react/pull/6800), [@gm758](https://github.com/gm758) in [#7152](https://github.com/facebook/react/pull/7152)) diff --git a/Gruntfile.js b/Gruntfile.js index 9562542441..e2f2faa59c 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -52,11 +52,17 @@ module.exports = function(grunt) { grunt.loadNpmTasks(npmTaskName); }); - grunt.registerTask('eslint', require('./grunt/tasks/eslint')); + grunt.registerTask('eslint', function() { + // Use gulp here. + spawnGulp(['eslint'], null, this.async()); + }); grunt.registerTask('lint', ['eslint']); - grunt.registerTask('flow', require('./grunt/tasks/flow')); + grunt.registerTask('flow', function() { + // Use gulp here. + spawnGulp(['flow'], null, this.async()); + }); grunt.registerTask('delete-build-modules', function() { // Use gulp here. @@ -84,7 +90,10 @@ module.exports = function(grunt) { grunt.registerTask('npm-react-addons:release', npmReactAddonsTasks.buildReleases); grunt.registerTask('npm-react-addons:pack', npmReactAddonsTasks.packReleases); - grunt.registerTask('version-check', require('./grunt/tasks/version-check')); + grunt.registerTask('version-check', function() { + // Use gulp here. + spawnGulp(['version-check'], null, this.async()); + }); grunt.registerTask('build:basic', [ 'build-modules', diff --git a/README.md b/README.md index 18003e8a12..f8057a9238 100644 --- a/README.md +++ b/README.md @@ -65,6 +65,7 @@ The process to build `react.js` is built entirely on top of node.js, using many #### Prerequisites * You have `node` installed at v4.0.0+ and `npm` at v2.0.0+. +* You have `gcc` installed or are comfortable installing a compiler if needed. Some of our `npm` dependencies may require a compliation step. On OS X, the Xcode Command Line Tools will cover this. On Ubuntu, `apt-get install build-essential` will install the required packages. Similar commands should work on other Linux distros. Windows will require some additional steps, see the [`node-gyp` installation instructions](https://github.com/nodejs/node-gyp#installation) for details. * You are familiar with `npm` and know whether or not you need to use `sudo` when installing packages globally. * You are familiar with `git`. diff --git a/examples/fiber/index.html b/examples/fiber/index.html new file mode 100644 index 0000000000..c507993794 --- /dev/null +++ b/examples/fiber/index.html @@ -0,0 +1,44 @@ + + + + + Fiber Example + + + +

Fiber Example

+
+

+ To install React, follow the instructions on + GitHub. +

+

+ If you can see this, React is not working right. + If you checked out the source from GitHub make sure to run grunt. +

+
+ + + + + diff --git a/examples/webcomponents/index.html b/examples/webcomponents/index.html index 6342690dc5..7eccc805bf 100644 --- a/examples/webcomponents/index.html +++ b/examples/webcomponents/index.html @@ -37,7 +37,7 @@ // Define WebComponent var proto = Object.create(HTMLElement.prototype, { - createdCallback: { + attachedCallback: { value: function() { var mountPoint = document.createElement('span'); this.createShadowRoot().appendChild(mountPoint); diff --git a/flow/react-native-host-hooks.js b/flow/react-native-host-hooks.js index 7c611324bb..1e4a048ae4 100644 --- a/flow/react-native-host-hooks.js +++ b/flow/react-native-host-hooks.js @@ -38,7 +38,6 @@ declare module 'UIManager' { declare function removeSubviewsFromContainerWithID() : void; declare function replaceExistingNonRootView() : void; declare function setChildren() : void; - declare function setChildren() : void; declare function updateView() : void; } declare module 'View' { } diff --git a/grunt/tasks/eslint.js b/grunt/tasks/eslint.js deleted file mode 100644 index 4f364a6d90..0000000000 --- a/grunt/tasks/eslint.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -var grunt = require('grunt'); - -var extension = process.platform === 'win32' ? '.cmd': ''; - -module.exports = function() { - var done = this.async(); - grunt.util.spawn({ - cmd: 'node_modules/.bin/eslint' + extension, - args: ['.'], - opts: {stdio: 'inherit'}, // allows colors to passthrough - }, function(err, result, code) { - if (err) { - grunt.log.error('Lint failed'); - } else { - grunt.log.ok('Lint passed'); - } - - done(code === 0); - }); -}; diff --git a/grunt/tasks/flow.js b/grunt/tasks/flow.js deleted file mode 100644 index 767fc4eea6..0000000000 --- a/grunt/tasks/flow.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -var grunt = require('grunt'); - -var extension = process.platform === 'win32' ? '.cmd': ''; - -module.exports = function() { - var done = this.async(); - grunt.util.spawn({ - cmd: 'node_modules/.bin/flow' + extension, - args: ['check', '.'], - opts: {stdio: 'inherit'}, - }, function(err, result, code) { - if (err) { - grunt.log.error('Flow failed'); - } else { - grunt.log.ok('Flow passed'); - } - - done(code === 0); - }); -}; diff --git a/grunt/tasks/version-check.js b/grunt/tasks/version-check.js deleted file mode 100644 index 99f55feac0..0000000000 --- a/grunt/tasks/version-check.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; - -var grunt = require('grunt'); - -module.exports = function() { - var pkgVersion = grunt.config.data.pkg.version; - - var addonsData = grunt.file.readJSON('./packages/react-addons/package.json'); - var versions = { - 'packages/react/package.json': - grunt.file.readJSON('./packages/react/package.json').version, - 'packages/react-dom/package.json': - grunt.file.readJSON('./packages/react-dom/package.json').version, - 'packages/react-native-renderer/package.json': - grunt.file.readJSON('./packages/react-native-renderer/package.json').version, - 'packages/react-addons/package.json (version)': addonsData.version, - // Get the "version" without the range bit - 'packages/react-addons/package.json (react dependency)': addonsData.peerDependencies.react.slice(1), - 'src/ReactVersion.js': require('../../src/ReactVersion'), - }; - - // Return true (ok) or false (failed) - return Object.keys(versions).reduce(function(prev, name) { - var version = versions[name]; - var ok = true; - if (version !== pkgVersion) { - grunt.log.error( - '%s version does not match package.json. Expected %s, saw %s.', - name, - pkgVersion, - version - ); - ok = false; - } - return prev && ok; - }, true); -}; diff --git a/gulp/tasks/eslint.js b/gulp/tasks/eslint.js new file mode 100644 index 0000000000..6d87cdfd43 --- /dev/null +++ b/gulp/tasks/eslint.js @@ -0,0 +1,49 @@ +/** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + +'use strict'; + +var path = require('path'); +var spawn = require('child_process').spawn; + +var extension = process.platform === 'win32' ? '.cmd' : ''; + +module.exports = function(gulp, plugins) { + var gutil = plugins.util; + + return function(done) { + spawn( + process.execPath, + [ + path.join('node_modules', '.bin', 'eslint' + extension), + '.', + ], + { + // Allow colors to pass through + stdio: 'inherit', + } + ).on('close', function(code) { + if (code !== 0) { + gutil.log( + gutil.colors.red( + 'Lint failed' + ) + ); + process.exit(code); + } + + gutil.log( + gutil.colors.green( + 'Lint passed' + ) + ); + done(); + }); + }; +}; diff --git a/gulp/tasks/flow.js b/gulp/tasks/flow.js new file mode 100644 index 0000000000..a32d8837b6 --- /dev/null +++ b/gulp/tasks/flow.js @@ -0,0 +1,50 @@ +/** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + +'use strict'; + +var path = require('path'); +var spawn = require('child_process').spawn; + +var extension = process.platform === 'win32' ? '.cmd' : ''; + +module.exports = function(gulp, plugins) { + var gutil = plugins.util; + + return function(done) { + spawn( + process.execPath, + [ + path.join('node_modules', '.bin', 'flow' + extension), + 'check', + '.', + ], + { + // Allow colors to pass through + stdio: 'inherit', + } + ).on('close', function(code) { + if (code !== 0) { + gutil.log( + gutil.colors.red( + 'Flow failed' + ) + ); + process.exit(code); + } + + gutil.log( + gutil.colors.green( + 'Flow passed' + ) + ); + done(); + }); + }; +}; diff --git a/gulp/tasks/version-check.js b/gulp/tasks/version-check.js new file mode 100644 index 0000000000..0d22595dc1 --- /dev/null +++ b/gulp/tasks/version-check.js @@ -0,0 +1,55 @@ +/** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + +'use strict'; + +module.exports = function(gulp, plugins) { + var gutil = plugins.util; + + return function(done) { + var reactVersion = require('../../package.json').version; + + var addonsData = require('../../packages/react-addons/package.json'); + var versions = { + 'packages/react/package.json': + require('../../packages/react/package.json').version, + 'packages/react-dom/package.json': + require('../../packages/react-dom/package.json').version, + 'packages/react-native-renderer/package.json': + require('../../packages/react-native-renderer/package.json').version, + 'packages/react-addons/package.json (version)': addonsData.version, + 'packages/react-addons/package.json (react dependency)': + // Get the "version" without the range bit + addonsData.peerDependencies.react.slice(1), + 'src/ReactVersion.js': require('../../src/ReactVersion'), + }; + + var allVersionsMatch = true; + Object.keys(versions).forEach(function(name) { + var version = versions[name]; + if (version !== reactVersion) { + allVersionsMatch = false; + gutil.log( + gutil.colors.red( + '%s version does not match package.json. Expected %s, saw %s.' + ), + name, + reactVersion, + version + ); + } + }); + + if (!allVersionsMatch) { + process.exit(1); + } + + done(); + }; +}; diff --git a/gulpfile.js b/gulpfile.js index 1e787a9046..a961e1657f 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -18,6 +18,13 @@ var babelPluginModules = require('fbjs-scripts/babel-6/rewrite-modules'); var extractErrors = require('./scripts/error-codes/gulp-extract-errors'); var devExpressionWithCodes = require('./scripts/error-codes/dev-expression-with-codes'); +// Load all of the Gulp plugins. +var plugins = require('gulp-load-plugins')(); + +function getTask(name) { + return require(`./gulp/tasks/${name}`)(gulp, plugins); +} + var paths = { react: { src: [ @@ -60,6 +67,14 @@ var babelOpts = { ], }; +gulp.task('eslint', getTask('eslint')); + +gulp.task('lint', ['eslint']); + +gulp.task('flow', getTask('flow')); + +gulp.task('version-check', getTask('version-check')); + gulp.task('react:clean', function() { return del([paths.react.lib]); }); diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 29c1e5401d..f1de85c13e 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,6 +1,6 @@ { "name": "react-build", - "version": "15.1.0", + "version": "15.2.0", "dependencies": { "art": { "version": "0.10.1", @@ -112,9 +112,9 @@ "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz", "dependencies": { "array-uniq": { - "version": "1.0.2", + "version": "1.0.3", "from": "array-uniq@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz" + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" }, "get-stdin": { "version": "4.0.1", @@ -144,9 +144,9 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" }, "loud-rejection": { - "version": "1.4.1", + "version": "1.6.0", "from": "loud-rejection@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.4.1.tgz", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "dependencies": { "currently-unhandled": { "version": "0.4.1", @@ -161,9 +161,9 @@ } }, "signal-exit": { - "version": "2.1.2", - "from": "signal-exit@>=2.1.2 <3.0.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-2.1.2.tgz" + "version": "3.0.0", + "from": "signal-exit@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz" } } }, @@ -223,7 +223,7 @@ }, "spdx-license-ids": { "version": "1.2.1", - "from": "spdx-license-ids@>=1.0.0 <2.0.0", + "from": "spdx-license-ids@>=1.0.2 <2.0.0", "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.1.tgz" } } @@ -429,9 +429,9 @@ "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.0.tgz", "dependencies": { "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=5.0.3 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" } } } @@ -528,14 +528,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -576,10 +576,15 @@ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz" }, "output-file-sync": { - "version": "1.1.1", + "version": "1.1.2", "from": "output-file-sync@>=1.1.0 <2.0.0", - "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", "dependencies": { + "graceful-fs": { + "version": "4.1.4", + "from": "graceful-fs@>=4.1.4 <5.0.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz" + }, "mkdirp": { "version": "0.5.1", "from": "mkdirp@>=0.5.1 <0.6.0", @@ -591,11 +596,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" } } - }, - "xtend": { - "version": "4.0.1", - "from": "xtend@>=4.0.0 <5.0.0", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" } } }, @@ -702,7 +702,7 @@ }, "har-validator": { "version": "2.0.6", - "from": "har-validator@>=2.0.2 <2.1.0", + "from": "har-validator@>=2.0.6 <2.1.0", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", "dependencies": { "is-my-json-valid": { @@ -791,9 +791,9 @@ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" }, "jsprim": { - "version": "1.2.2", + "version": "1.3.0", "from": "jsprim@>=1.2.2 <2.0.0", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.0.tgz", "dependencies": { "extsprintf": { "version": "1.0.2", @@ -895,7 +895,7 @@ }, "oauth-sign": { "version": "0.8.2", - "from": "oauth-sign@>=0.8.0 <0.9.0", + "from": "oauth-sign@>=0.8.1 <0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz" }, "qs": { @@ -943,9 +943,9 @@ } }, "chokidar": { - "version": "1.5.2", + "version": "1.6.0", "from": "chokidar@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.5.2.tgz", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.6.0.tgz", "dependencies": { "anymatch": { "version": "1.3.0", @@ -958,9 +958,9 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" }, "micromatch": { - "version": "2.3.8", + "version": "2.3.10", "from": "micromatch@>=2.1.5 <3.0.0", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.10.tgz", "dependencies": { "arr-diff": { "version": "2.0.0", @@ -1155,7 +1155,7 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <2.1.0", + "from": "inherits@>=2.0.0 <3.0.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "is-binary-path": { @@ -1164,9 +1164,9 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "dependencies": { "binary-extensions": { - "version": "1.4.1", + "version": "1.5.0", "from": "binary-extensions@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.4.1.tgz" + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.5.0.tgz" } } }, @@ -1183,9 +1183,9 @@ } }, "readdirp": { - "version": "2.0.0", + "version": "2.1.0", "from": "readdirp@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", "dependencies": { "graceful-fs": { "version": "4.1.4", @@ -1193,14 +1193,14 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz" }, "minimatch": { - "version": "2.0.10", - "from": "minimatch@>=2.0.10 <3.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", + "version": "3.0.2", + "from": "minimatch@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -1252,6 +1252,11 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" } } + }, + "set-immediate-shim": { + "version": "1.0.1", + "from": "set-immediate-shim@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz" } } }, @@ -1284,15 +1289,25 @@ } } }, + "ansi-regex": { + "version": "2.0.0", + "from": "ansi-regex@^2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" + }, "ansi": { "version": "0.3.1", "from": "ansi@~0.3.1", "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz" }, - "ansi-regex": { - "version": "2.0.0", - "from": "ansi-regex@^2.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" + "ansi-styles": { + "version": "2.2.1", + "from": "ansi-styles@^2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" + }, + "assert-plus": { + "version": "0.2.0", + "from": "assert-plus@^0.2.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" }, "are-we-there-yet": { "version": "1.1.2", @@ -1309,26 +1324,11 @@ "from": "async@^1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz" }, - "assert-plus": { - "version": "0.2.0", - "from": "assert-plus@^0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" - }, "aws-sign2": { "version": "0.6.0", "from": "aws-sign2@~0.6.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz" }, - "bl": { - "version": "1.0.3", - "from": "bl@~1.0.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz" - }, - "ansi-styles": { - "version": "2.2.1", - "from": "ansi-styles@^2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" - }, "block-stream": { "version": "0.0.8", "from": "block-stream@*", @@ -1339,21 +1339,31 @@ "from": "boom@2.x.x", "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" }, + "bl": { + "version": "1.0.3", + "from": "bl@~1.0.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz" + }, "caseless": { "version": "0.11.0", "from": "caseless@~0.11.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz" }, - "combined-stream": { - "version": "1.0.5", - "from": "combined-stream@~1.0.5", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz" + "core-util-is": { + "version": "1.0.2", + "from": "core-util-is@~1.0.0", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" }, "chalk": { "version": "1.1.3", "from": "chalk@^1.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" }, + "combined-stream": { + "version": "1.0.5", + "from": "combined-stream@~1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz" + }, "commander": { "version": "2.9.0", "from": "commander@^2.9.0", @@ -1364,81 +1374,81 @@ "from": "cryptiles@2.x.x", "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz" }, - "core-util-is": { - "version": "1.0.2", - "from": "core-util-is@~1.0.0", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" + "deep-extend": { + "version": "0.4.1", + "from": "deep-extend@~0.4.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.1.tgz" }, "debug": { "version": "2.2.0", "from": "debug@~2.2.0", "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz" }, - "deep-extend": { - "version": "0.4.1", - "from": "deep-extend@~0.4.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.1.tgz" + "delegates": { + "version": "1.0.0", + "from": "delegates@^1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" }, "delayed-stream": { "version": "1.0.0", "from": "delayed-stream@~1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" }, - "ecc-jsbn": { - "version": "0.1.1", - "from": "ecc-jsbn@>=0.0.1 <1.0.0", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz" - }, - "delegates": { - "version": "1.0.0", - "from": "delegates@^1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" - }, "escape-string-regexp": { "version": "1.0.5", "from": "escape-string-regexp@^1.0.2", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" }, + "ecc-jsbn": { + "version": "0.1.1", + "from": "ecc-jsbn@>=0.0.1 <1.0.0", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz" + }, "extend": { "version": "3.0.0", "from": "extend@~3.0.0", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" }, - "extsprintf": { - "version": "1.0.2", - "from": "extsprintf@1.0.2", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz" - }, "forever-agent": { "version": "0.6.1", "from": "forever-agent@~0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" }, - "form-data": { - "version": "1.0.0-rc4", - "from": "form-data@~1.0.0-rc3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc4.tgz" + "extsprintf": { + "version": "1.0.2", + "from": "extsprintf@1.0.2", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz" }, "fstream": { "version": "1.0.8", "from": "fstream@^1.0.2", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.8.tgz" }, - "gauge": { - "version": "1.2.7", - "from": "gauge@~1.2.5", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz" + "form-data": { + "version": "1.0.0-rc4", + "from": "form-data@~1.0.0-rc3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc4.tgz" }, "generate-function": { "version": "2.0.0", "from": "generate-function@^2.0.0", "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz" }, + "gauge": { + "version": "1.2.7", + "from": "gauge@~1.2.5", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz" + }, "generate-object-property": { "version": "1.2.0", "from": "generate-object-property@^1.1.0", "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz" }, + "graceful-readlink": { + "version": "1.0.1", + "from": "graceful-readlink@>= 1.0.0", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" + }, "graceful-fs": { "version": "4.1.3", "from": "graceful-fs@^4.1.2", @@ -1449,26 +1459,21 @@ "from": "har-validator@~2.0.6", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz" }, - "graceful-readlink": { - "version": "1.0.1", - "from": "graceful-readlink@>= 1.0.0", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" - }, "has-ansi": { "version": "2.0.0", "from": "has-ansi@^2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" }, - "has-unicode": { - "version": "2.0.0", - "from": "has-unicode@^2.0.0", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.0.tgz" - }, "hawk": { "version": "3.1.3", "from": "hawk@~3.1.0", "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz" }, + "has-unicode": { + "version": "2.0.0", + "from": "has-unicode@^2.0.0", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.0.tgz" + }, "hoek": { "version": "2.16.3", "from": "hoek@2.x.x", @@ -1484,26 +1489,36 @@ "from": "inherits@*", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, - "is-property": { - "version": "1.0.2", - "from": "is-property@^1.0.0", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" - }, "ini": { "version": "1.3.4", "from": "ini@~1.3.0", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz" }, + "is-my-json-valid": { + "version": "2.13.1", + "from": "is-my-json-valid@^2.12.4", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.13.1.tgz" + }, "is-typedarray": { "version": "1.0.0", "from": "is-typedarray@~1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" }, + "is-property": { + "version": "1.0.2", + "from": "is-property@^1.0.0", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" + }, "isarray": { "version": "1.0.0", "from": "isarray@~1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" }, + "jsbn": { + "version": "0.1.0", + "from": "jsbn@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" + }, "isstream": { "version": "0.1.2", "from": "isstream@~0.1.2", @@ -1514,16 +1529,6 @@ "from": "jodid25519@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz" }, - "jsbn": { - "version": "0.1.0", - "from": "jsbn@>=0.1.0 <0.2.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" - }, - "json-schema": { - "version": "0.2.2", - "from": "json-schema@0.2.2", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz" - }, "json-stringify-safe": { "version": "5.0.1", "from": "json-stringify-safe@~5.0.1", @@ -1534,16 +1539,21 @@ "from": "jsonpointer@2.0.0", "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz" }, - "lodash.pad": { - "version": "4.1.0", - "from": "lodash.pad@^4.1.0", - "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.1.0.tgz" - }, "jsprim": { "version": "1.2.2", "from": "jsprim@^1.2.2", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.2.2.tgz" }, + "json-schema": { + "version": "0.2.2", + "from": "json-schema@0.2.2", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz" + }, + "lodash.pad": { + "version": "4.1.0", + "from": "lodash.pad@^4.1.0", + "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.1.0.tgz" + }, "lodash.padend": { "version": "4.2.0", "from": "lodash.padend@^4.1.0", @@ -1559,11 +1569,6 @@ "from": "lodash.repeat@^4.0.0", "resolved": "https://registry.npmjs.org/lodash.repeat/-/lodash.repeat-4.0.0.tgz" }, - "lodash.tostring": { - "version": "4.1.2", - "from": "lodash.tostring@^4.0.0", - "resolved": "https://registry.npmjs.org/lodash.tostring/-/lodash.tostring-4.1.2.tgz" - }, "mime-db": { "version": "1.22.0", "from": "mime-db@~1.22.0", @@ -1574,6 +1579,11 @@ "from": "mime-types@~2.1.7", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.10.tgz" }, + "lodash.tostring": { + "version": "4.1.2", + "from": "lodash.tostring@^4.0.0", + "resolved": "https://registry.npmjs.org/lodash.tostring/-/lodash.tostring-4.1.2.tgz" + }, "minimist": { "version": "0.0.8", "from": "minimist@0.0.8", @@ -1589,11 +1599,6 @@ "from": "ms@0.7.1", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" }, - "is-my-json-valid": { - "version": "2.13.1", - "from": "is-my-json-valid@^2.12.4", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.13.1.tgz" - }, "node-uuid": { "version": "1.4.7", "from": "node-uuid@~1.4.7", @@ -1614,26 +1619,26 @@ "from": "once@~1.3.3", "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz" }, - "pinkie-promise": { - "version": "2.0.0", - "from": "pinkie-promise@^2.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.0.tgz" - }, "pinkie": { "version": "2.0.4", "from": "pinkie@^2.0.0", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" }, - "process-nextick-args": { - "version": "1.0.6", - "from": "process-nextick-args@~1.0.6", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.6.tgz" + "pinkie-promise": { + "version": "2.0.0", + "from": "pinkie-promise@^2.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.0.tgz" }, "qs": { "version": "6.0.2", "from": "qs@~6.0.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.0.2.tgz" }, + "process-nextick-args": { + "version": "1.0.6", + "from": "process-nextick-args@~1.0.6", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.6.tgz" + }, "readable-stream": { "version": "2.0.6", "from": "readable-stream@^2.0.0 || ^1.1.13", @@ -1659,51 +1664,51 @@ "from": "sshpk@^1.7.0", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.7.4.tgz" }, - "string_decoder": { - "version": "0.10.31", - "from": "string_decoder@~0.10.x", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - }, "stringstream": { "version": "0.0.5", "from": "stringstream@~0.0.4", "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz" }, + "string_decoder": { + "version": "0.10.31", + "from": "string_decoder@~0.10.x", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + }, "strip-ansi": { "version": "3.0.1", "from": "strip-ansi@^3.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" }, - "strip-json-comments": { - "version": "1.0.4", - "from": "strip-json-comments@~1.0.4", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz" - }, "supports-color": { "version": "2.0.0", "from": "supports-color@^2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" }, - "tar": { - "version": "2.2.1", - "from": "tar@~2.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz" + "strip-json-comments": { + "version": "1.0.4", + "from": "strip-json-comments@~1.0.4", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz" }, "tar-pack": { "version": "3.1.3", "from": "tar-pack@~3.1.0", "resolved": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.1.3.tgz" }, - "tough-cookie": { - "version": "2.2.2", - "from": "tough-cookie@~2.2.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz" + "tar": { + "version": "2.2.1", + "from": "tar@~2.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz" }, "tunnel-agent": { "version": "0.4.2", "from": "tunnel-agent@~0.4.1", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.2.tgz" }, + "tough-cookie": { + "version": "2.2.2", + "from": "tough-cookie@~2.2.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz" + }, "tweetnacl": { "version": "0.14.3", "from": "tweetnacl@>=0.13.0 <1.0.0", @@ -1714,16 +1719,16 @@ "from": "uid-number@~0.0.6", "resolved": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz" }, - "util-deprecate": { - "version": "1.0.2", - "from": "util-deprecate@~1.0.1", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - }, "verror": { "version": "1.3.6", "from": "verror@1.3.6", "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" }, + "util-deprecate": { + "version": "1.0.2", + "from": "util-deprecate@~1.0.1", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + }, "wrappy": { "version": "1.0.1", "from": "wrappy@1", @@ -1892,14 +1897,14 @@ } }, "babel-core": { - "version": "6.9.1", + "version": "6.10.4", "from": "babel-core@>=6.0.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.9.1.tgz", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.10.4.tgz", "dependencies": { "babel-code-frame": { - "version": "6.8.0", + "version": "6.11.0", "from": "babel-code-frame@>=6.8.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.11.0.tgz", "dependencies": { "chalk": { "version": "1.1.3", @@ -1953,16 +1958,16 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" }, "js-tokens": { - "version": "1.0.3", - "from": "js-tokens@>=1.0.2 <2.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz" + "version": "2.0.0", + "from": "js-tokens@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-2.0.0.tgz" } } }, "babel-generator": { - "version": "6.10.0", + "version": "6.11.0", "from": "babel-generator@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.11.0.tgz", "dependencies": { "detect-indent": { "version": "3.0.1", @@ -2085,9 +2090,9 @@ } }, "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.9.1 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2129,14 +2134,14 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.13.1.tgz" }, "minimatch": { - "version": "2.0.10", - "from": "minimatch@>=2.0.3 <3.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", + "version": "3.0.2", + "from": "minimatch@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -2179,7 +2184,7 @@ }, "source-map": { "version": "0.5.6", - "from": "source-map@>=0.5.0 <0.6.0", + "from": "source-map@>=0.5.1 <0.6.0", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" } } @@ -2195,13 +2200,13 @@ "resolved": "https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.8.tgz" }, "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.0.19 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.0.0 <7.0.0", + "from": "babel-runtime@>=6.9.1 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2368,7 +2373,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2406,7 +2411,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2425,7 +2430,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2443,9 +2448,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.10.1.tgz", "dependencies": { "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.0.19 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2471,7 +2476,7 @@ }, "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2552,9 +2557,9 @@ } }, "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2591,9 +2596,9 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.13.1.tgz" }, "babel-types": { - "version": "6.10.0", - "from": "babel-types@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "version": "6.11.1", + "from": "babel-types@>=6.8.0 <7.0.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2627,9 +2632,9 @@ "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.9.0.tgz", "dependencies": { "babel-types": { - "version": "6.10.0", - "from": "babel-types@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "version": "6.11.1", + "from": "babel-types@>=6.8.0 <7.0.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2652,7 +2657,7 @@ }, "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2671,7 +2676,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2690,7 +2695,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2709,7 +2714,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2722,14 +2727,14 @@ } }, "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.8.0", + "version": "6.10.3", "from": "babel-plugin-transform-es2015-modules-commonjs@>=6.5.2 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.8.0.tgz", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.10.3.tgz", "dependencies": { "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.0.19 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2750,7 +2755,7 @@ }, "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2812,9 +2817,9 @@ } }, "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.8.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2837,7 +2842,7 @@ }, "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2873,7 +2878,7 @@ }, "babel-template": { "version": "6.9.0", - "from": "babel-template@>=6.8.0 <7.0.0", + "from": "babel-template@>=6.9.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.9.0.tgz", "dependencies": { "lodash": { @@ -2884,9 +2889,9 @@ } }, "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2925,9 +2930,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.8.0.tgz", "dependencies": { "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.0.19 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -2948,7 +2953,7 @@ }, "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2967,7 +2972,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -2986,7 +2991,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -3005,7 +3010,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -3024,7 +3029,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -3048,7 +3053,7 @@ }, "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -3067,7 +3072,7 @@ "dependencies": { "babel-runtime": { "version": "6.9.2", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "babel-runtime@>=6.0.0 <7.0.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", "dependencies": { "regenerator-runtime": { @@ -3079,15 +3084,15 @@ }, "babel-plugin-syntax-jsx": { "version": "6.8.0", - "from": "babel-plugin-syntax-jsx@>=6.8.0 <7.0.0", + "from": "babel-plugin-syntax-jsx@>=6.3.13 <7.0.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.8.0.tgz" } } }, "babel-preset-react": { - "version": "6.5.0", + "version": "6.11.1", "from": "babel-preset-react@>=6.5.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.5.0.tgz", + "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.11.1.tgz", "dependencies": { "babel-plugin-syntax-flow": { "version": "6.8.0", @@ -3110,7 +3115,7 @@ }, "babel-plugin-syntax-jsx": { "version": "6.8.0", - "from": "babel-plugin-syntax-jsx@>=6.8.0 <7.0.0", + "from": "babel-plugin-syntax-jsx@>=6.3.13 <7.0.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.8.0.tgz", "dependencies": { "babel-runtime": { @@ -3188,9 +3193,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.9.0.tgz", "dependencies": { "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "to-fast-properties": { "version": "1.0.2", @@ -3212,18 +3217,37 @@ } } } + }, + "babel-plugin-transform-react-jsx-self": { + "version": "6.11.0", + "from": "babel-plugin-transform-react-jsx-self@>=6.11.0 <7.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.11.0.tgz", + "dependencies": { + "babel-runtime": { + "version": "6.9.2", + "from": "babel-runtime@>=6.0.0 <7.0.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.2.tgz", + "dependencies": { + "regenerator-runtime": { + "version": "0.9.5", + "from": "regenerator-runtime@>=0.9.5 <0.10.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.5.tgz" + } + } + } + } } } }, "babel-traverse": { - "version": "6.9.0", + "version": "6.10.4", "from": "babel-traverse@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.9.0.tgz", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.10.4.tgz", "dependencies": { "babel-code-frame": { - "version": "6.8.0", + "version": "6.11.0", "from": "babel-code-frame@>=6.8.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.11.0.tgz", "dependencies": { "chalk": { "version": "1.1.3", @@ -3254,7 +3278,7 @@ }, "strip-ansi": { "version": "3.0.1", - "from": "strip-ansi@>=3.0.0 <4.0.0", + "from": "strip-ansi@>=3.0.1 <4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "dependencies": { "ansi-regex": { @@ -3277,9 +3301,9 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" }, "js-tokens": { - "version": "1.0.3", - "from": "js-tokens@>=1.0.2 <2.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz" + "version": "2.0.0", + "from": "js-tokens@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-2.0.0.tgz" } } }, @@ -3301,9 +3325,9 @@ } }, "babel-types": { - "version": "6.10.0", + "version": "6.11.1", "from": "babel-types@>=6.9.0 <7.0.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.10.0.tgz", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.11.1.tgz", "dependencies": { "esutils": { "version": "2.0.2", @@ -3371,9 +3395,9 @@ "resolved": "https://registry.npmjs.org/browserify/-/browserify-13.0.1.tgz", "dependencies": { "JSONStream": { - "version": "1.1.2", + "version": "1.1.3", "from": "JSONStream@>=1.0.3 <2.0.0", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.1.2.tgz", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.1.3.tgz", "dependencies": { "jsonparse": { "version": "1.2.0", @@ -3449,9 +3473,9 @@ } }, "buffer": { - "version": "4.6.0", + "version": "4.7.0", "from": "buffer@>=4.1.0 <5.0.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.6.0.tgz", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.7.0.tgz", "dependencies": { "base64-js": { "version": "1.1.2", @@ -3830,9 +3854,9 @@ "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz" }, "events": { - "version": "1.1.0", + "version": "1.1.1", "from": "events@>=1.1.0 <1.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.0.tgz" + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz" }, "glob": { "version": "5.0.15", @@ -3852,14 +3876,14 @@ } }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -4124,9 +4148,9 @@ } }, "shell-quote": { - "version": "1.6.0", + "version": "1.6.1", "from": "shell-quote@>=1.4.3 <2.0.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.0.tgz", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", "dependencies": { "jsonify": { "version": "0.0.0", @@ -4263,9 +4287,9 @@ "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-5.0.1.tgz", "dependencies": { "JSONStream": { - "version": "1.1.2", + "version": "1.1.3", "from": "JSONStream@>=1.0.3 <2.0.0", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.1.2.tgz", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.1.3.tgz", "dependencies": { "jsonparse": { "version": "1.2.0", @@ -4345,7 +4369,7 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <2.1.0", + "from": "inherits@>=2.0.0 <3.0.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" } } @@ -4446,9 +4470,9 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" }, "object-keys": { - "version": "1.0.9", + "version": "1.0.11", "from": "object-keys@>=1.0.6 <2.0.0", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.9.tgz" + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz" } } }, @@ -4630,9 +4654,9 @@ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" }, "jsprim": { - "version": "1.2.2", + "version": "1.3.0", "from": "jsprim@>=1.2.2 <2.0.0", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.0.tgz", "dependencies": { "extsprintf": { "version": "1.0.2", @@ -4707,7 +4731,7 @@ }, "hawk": { "version": "3.1.3", - "from": "hawk@>=3.1.3 <3.2.0", + "from": "hawk@>=3.1.0 <3.2.0", "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", "dependencies": { "hoek": { @@ -4771,7 +4795,7 @@ "dependencies": { "chalk": { "version": "1.1.3", - "from": "chalk@>=1.1.1 <2.0.0", + "from": "chalk@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { @@ -4885,24 +4909,24 @@ } }, "del": { - "version": "2.2.0", + "version": "2.2.1", "from": "del@>=2.0.2 <3.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.0.tgz", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.1.tgz", "dependencies": { "globby": { - "version": "4.1.0", - "from": "globby@>=4.0.0 <5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-4.1.0.tgz", + "version": "5.0.0", + "from": "globby@>=5.0.0 <6.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", "dependencies": { "array-union": { - "version": "1.0.1", + "version": "1.0.2", "from": "array-union@>=1.0.1 <2.0.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.1.tgz", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "dependencies": { "array-uniq": { - "version": "1.0.2", + "version": "1.0.3", "from": "array-uniq@>=1.0.1 <2.0.0", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz" + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" } } }, @@ -4910,6 +4934,76 @@ "version": "1.0.1", "from": "arrify@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" + }, + "glob": { + "version": "7.0.5", + "from": "glob@>=7.0.3 <8.0.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.5.tgz", + "dependencies": { + "fs.realpath": { + "version": "1.0.0", + "from": "fs.realpath@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + }, + "inflight": { + "version": "1.0.5", + "from": "inflight@>=1.0.4 <2.0.0", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.5.tgz", + "dependencies": { + "wrappy": { + "version": "1.0.2", + "from": "wrappy@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + } + } + }, + "inherits": { + "version": "2.0.1", + "from": "inherits@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + }, + "minimatch": { + "version": "3.0.2", + "from": "minimatch@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", + "dependencies": { + "brace-expansion": { + "version": "1.1.5", + "from": "brace-expansion@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", + "dependencies": { + "balanced-match": { + "version": "0.4.1", + "from": "balanced-match@>=0.4.1 <0.5.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.1.tgz" + }, + "concat-map": { + "version": "0.0.1", + "from": "concat-map@0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + } + } + } + } + }, + "once": { + "version": "1.3.3", + "from": "once@>=1.3.0 <2.0.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "dependencies": { + "wrappy": { + "version": "1.0.2", + "from": "wrappy@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + } + } + }, + "path-is-absolute": { + "version": "1.0.0", + "from": "path-is-absolute@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz" + } + } } } }, @@ -4955,15 +5049,20 @@ } }, "rimraf": { - "version": "2.5.2", + "version": "2.5.3", "from": "rimraf@>=2.2.8 <3.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.2.tgz", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz", "dependencies": { "glob": { - "version": "7.0.3", - "from": "glob@>=7.0.0 <8.0.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.3.tgz", + "version": "7.0.5", + "from": "glob@>=7.0.5 <8.0.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.5.tgz", "dependencies": { + "fs.realpath": { + "version": "1.0.0", + "from": "fs.realpath@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + }, "inflight": { "version": "1.0.5", "from": "inflight@>=1.0.4 <2.0.0", @@ -4982,14 +5081,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", - "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "version": "3.0.2", + "from": "minimatch@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -5103,16 +5202,9 @@ "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz" }, "es5-ext": { - "version": "0.10.11", + "version": "0.10.12", "from": "es5-ext@>=0.10.11 <0.11.0", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.11.tgz", - "dependencies": { - "es6-symbol": { - "version": "3.0.2", - "from": "es6-symbol@>=3.0.2 <3.1.0", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.0.2.tgz" - } - } + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.12.tgz" }, "es6-iterator": { "version": "2.0.0", @@ -5147,9 +5239,9 @@ "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz" }, "es5-ext": { - "version": "0.10.11", + "version": "0.10.12", "from": "es5-ext@>=0.10.6 <0.11.0", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.11.tgz", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.12.tgz", "dependencies": { "es6-iterator": { "version": "2.0.0", @@ -5157,9 +5249,9 @@ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.0.tgz" }, "es6-symbol": { - "version": "3.0.2", - "from": "es6-symbol@>=3.0.2 <3.1.0", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.0.2.tgz" + "version": "3.1.0", + "from": "es6-symbol@>=3.1.0 <3.2.0", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.0.tgz" } } }, @@ -5452,16 +5544,9 @@ "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz" }, "es5-ext": { - "version": "0.10.11", + "version": "0.10.12", "from": "es5-ext@>=0.10.11 <0.11.0", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.11.tgz", - "dependencies": { - "es6-symbol": { - "version": "3.0.2", - "from": "es6-symbol@>=3.0.2 <3.1.0", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.0.2.tgz" - } - } + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.12.tgz" }, "es6-iterator": { "version": "2.0.0", @@ -5496,16 +5581,9 @@ "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz" }, "es5-ext": { - "version": "0.10.11", + "version": "0.10.12", "from": "es5-ext@>=0.10.8 <0.11.0", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.11.tgz", - "dependencies": { - "es6-symbol": { - "version": "3.0.2", - "from": "es6-symbol@>=3.0.2 <3.1.0", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.0.2.tgz" - } - } + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.12.tgz" }, "es6-iterator": { "version": "2.0.0", @@ -6162,14 +6240,14 @@ } }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -6601,9 +6679,9 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -6754,7 +6832,7 @@ "dependencies": { "align-text": { "version": "0.1.4", - "from": "align-text@>=0.1.1 <0.2.0", + "from": "align-text@>=0.1.3 <0.2.0", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "dependencies": { "kind-of": { @@ -6795,7 +6873,7 @@ "dependencies": { "align-text": { "version": "0.1.4", - "from": "align-text@>=0.1.1 <0.2.0", + "from": "align-text@>=0.1.3 <0.2.0", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "dependencies": { "kind-of": { @@ -7010,9 +7088,9 @@ } }, "chokidar": { - "version": "1.5.2", + "version": "1.6.0", "from": "chokidar@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.5.2.tgz", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.6.0.tgz", "dependencies": { "anymatch": { "version": "1.3.0", @@ -7025,9 +7103,9 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" }, "micromatch": { - "version": "2.3.8", + "version": "2.3.10", "from": "micromatch@>=2.1.5 <3.0.0", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.10.tgz", "dependencies": { "arr-diff": { "version": "2.0.0", @@ -7222,7 +7300,7 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <3.0.0", + "from": "inherits@>=2.0.0 <3.0.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "is-binary-path": { @@ -7231,9 +7309,9 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "dependencies": { "binary-extensions": { - "version": "1.4.1", + "version": "1.5.0", "from": "binary-extensions@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.4.1.tgz" + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.5.0.tgz" } } }, @@ -7250,9 +7328,9 @@ } }, "readdirp": { - "version": "2.0.0", + "version": "2.1.0", "from": "readdirp@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", "dependencies": { "graceful-fs": { "version": "4.1.4", @@ -7260,14 +7338,14 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz" }, "minimatch": { - "version": "2.0.10", - "from": "minimatch@>=2.0.10 <3.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", + "version": "3.0.2", + "from": "minimatch@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -7319,6 +7397,11 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" } } + }, + "set-immediate-shim": { + "version": "1.0.1", + "from": "set-immediate-shim@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz" } } }, @@ -7351,15 +7434,25 @@ } } }, + "ansi": { + "version": "0.3.1", + "from": "ansi@~0.3.1", + "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz" + }, "ansi-regex": { "version": "2.0.0", "from": "ansi-regex@^2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" }, - "ansi": { - "version": "0.3.1", - "from": "ansi@~0.3.1", - "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz" + "asn1": { + "version": "0.2.3", + "from": "asn1@>=0.2.3 <0.3.0", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz" + }, + "are-we-there-yet": { + "version": "1.1.2", + "from": "are-we-there-yet@~1.1.2", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz" }, "ansi-styles": { "version": "2.2.1", @@ -7371,16 +7464,6 @@ "from": "assert-plus@^0.2.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" }, - "are-we-there-yet": { - "version": "1.1.2", - "from": "are-we-there-yet@~1.1.2", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz" - }, - "asn1": { - "version": "0.2.3", - "from": "asn1@>=0.2.3 <0.3.0", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz" - }, "aws-sign2": { "version": "0.6.0", "from": "aws-sign2@~0.6.0", @@ -7391,16 +7474,16 @@ "from": "async@^1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz" }, - "block-stream": { - "version": "0.0.8", - "from": "block-stream@*", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.8.tgz" - }, "bl": { "version": "1.0.3", "from": "bl@~1.0.0", "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz" }, + "block-stream": { + "version": "0.0.8", + "from": "block-stream@*", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.8.tgz" + }, "boom": { "version": "2.10.1", "from": "boom@2.x.x", @@ -7416,16 +7499,16 @@ "from": "chalk@^1.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" }, - "combined-stream": { - "version": "1.0.5", - "from": "combined-stream@~1.0.5", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz" - }, "commander": { "version": "2.9.0", "from": "commander@^2.9.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz" }, + "combined-stream": { + "version": "1.0.5", + "from": "combined-stream@~1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz" + }, "core-util-is": { "version": "1.0.2", "from": "core-util-is@~1.0.0", @@ -7451,6 +7534,11 @@ "from": "delayed-stream@~1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" }, + "extend": { + "version": "3.0.0", + "from": "extend@~3.0.0", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" + }, "delegates": { "version": "1.0.0", "from": "delegates@^1.0.0", @@ -7461,31 +7549,26 @@ "from": "ecc-jsbn@>=0.0.1 <1.0.0", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz" }, - "extend": { - "version": "3.0.0", - "from": "extend@~3.0.0", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" + "forever-agent": { + "version": "0.6.1", + "from": "forever-agent@~0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" }, "escape-string-regexp": { "version": "1.0.5", "from": "escape-string-regexp@^1.0.2", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" }, - "forever-agent": { - "version": "0.6.1", - "from": "forever-agent@~0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" + "fstream": { + "version": "1.0.8", + "from": "fstream@^1.0.2", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.8.tgz" }, "extsprintf": { "version": "1.0.2", "from": "extsprintf@1.0.2", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz" }, - "fstream": { - "version": "1.0.8", - "from": "fstream@^1.0.2", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.8.tgz" - }, "form-data": { "version": "1.0.0-rc4", "from": "form-data@~1.0.0-rc3", @@ -7506,21 +7589,26 @@ "from": "generate-object-property@^1.1.0", "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz" }, - "graceful-fs": { - "version": "4.1.3", - "from": "graceful-fs@^4.1.2", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.3.tgz" - }, "graceful-readlink": { "version": "1.0.1", "from": "graceful-readlink@>= 1.0.0", "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" }, + "graceful-fs": { + "version": "4.1.3", + "from": "graceful-fs@^4.1.2", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.3.tgz" + }, "har-validator": { "version": "2.0.6", "from": "har-validator@~2.0.6", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz" }, + "has-unicode": { + "version": "2.0.0", + "from": "has-unicode@^2.0.0", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.0.tgz" + }, "hawk": { "version": "3.1.3", "from": "hawk@~3.1.0", @@ -7536,31 +7624,21 @@ "from": "hoek@2.x.x", "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" }, - "has-unicode": { - "version": "2.0.0", - "from": "has-unicode@^2.0.0", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.0.tgz" + "inherits": { + "version": "2.0.1", + "from": "inherits@*", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "http-signature": { "version": "1.1.1", "from": "http-signature@~1.1.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz" }, - "inherits": { - "version": "2.0.1", - "from": "inherits@*", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - }, "ini": { "version": "1.3.4", "from": "ini@~1.3.0", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz" }, - "is-typedarray": { - "version": "1.0.0", - "from": "is-typedarray@~1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" - }, "is-my-json-valid": { "version": "2.13.1", "from": "is-my-json-valid@^2.12.4", @@ -7571,6 +7649,16 @@ "from": "is-property@^1.0.0", "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" }, + "is-typedarray": { + "version": "1.0.0", + "from": "is-typedarray@~1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" + }, + "isstream": { + "version": "0.1.2", + "from": "isstream@~0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" + }, "isarray": { "version": "1.0.0", "from": "isarray@~1.0.0", @@ -7586,31 +7674,36 @@ "from": "jsbn@>=0.1.0 <0.2.0", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" }, + "json-stringify-safe": { + "version": "5.0.1", + "from": "json-stringify-safe@~5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" + }, + "json-schema": { + "version": "0.2.2", + "from": "json-schema@0.2.2", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz" + }, + "jsonpointer": { + "version": "2.0.0", + "from": "jsonpointer@2.0.0", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz" + }, "jsprim": { "version": "1.2.2", "from": "jsprim@^1.2.2", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.2.2.tgz" }, - "lodash.padend": { + "lodash.padstart": { "version": "4.2.0", - "from": "lodash.padend@^4.1.0", - "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.2.0.tgz" + "from": "lodash.padstart@^4.1.0", + "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.2.0.tgz" }, "lodash.pad": { "version": "4.1.0", "from": "lodash.pad@^4.1.0", "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.1.0.tgz" }, - "isstream": { - "version": "0.1.2", - "from": "isstream@~0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" - }, - "lodash.padstart": { - "version": "4.2.0", - "from": "lodash.padstart@^4.1.0", - "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.2.0.tgz" - }, "lodash.repeat": { "version": "4.0.0", "from": "lodash.repeat@^4.0.0", @@ -7631,31 +7724,31 @@ "from": "mime-types@~2.1.7", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.10.tgz" }, - "minimist": { - "version": "0.0.8", - "from": "minimist@0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" - }, "mkdirp": { "version": "0.5.1", "from": "mkdirp@>=0.3.0 <0.4.0||>=0.4.0 <0.5.0||>=0.5.0 <0.6.0", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" }, + "minimist": { + "version": "0.0.8", + "from": "minimist@0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + }, "ms": { "version": "0.7.1", "from": "ms@0.7.1", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" }, + "lodash.padend": { + "version": "4.2.0", + "from": "lodash.padend@^4.1.0", + "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.2.0.tgz" + }, "node-uuid": { "version": "1.4.7", "from": "node-uuid@~1.4.7", "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.7.tgz" }, - "oauth-sign": { - "version": "0.8.1", - "from": "oauth-sign@~0.8.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.1.tgz" - }, "npmlog": { "version": "2.0.3", "from": "npmlog@~2.0.0", @@ -7666,51 +7759,56 @@ "from": "once@~1.3.3", "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz" }, - "pinkie": { - "version": "2.0.4", - "from": "pinkie@^2.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" + "oauth-sign": { + "version": "0.8.1", + "from": "oauth-sign@~0.8.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.1.tgz" }, "pinkie-promise": { "version": "2.0.0", "from": "pinkie-promise@^2.0.0", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.0.tgz" }, - "qs": { - "version": "6.0.2", - "from": "qs@~6.0.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.0.2.tgz" + "pinkie": { + "version": "2.0.4", + "from": "pinkie@^2.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" }, "process-nextick-args": { "version": "1.0.6", "from": "process-nextick-args@~1.0.6", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.6.tgz" }, + "qs": { + "version": "6.0.2", + "from": "qs@~6.0.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.0.2.tgz" + }, "readable-stream": { "version": "2.0.6", "from": "readable-stream@^2.0.0 || ^1.1.13", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" }, - "request": { - "version": "2.69.0", - "from": "request@2.x", - "resolved": "https://registry.npmjs.org/request/-/request-2.69.0.tgz" - }, "semver": { "version": "5.1.0", "from": "semver@~5.1.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" }, - "sshpk": { - "version": "1.7.4", - "from": "sshpk@^1.7.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.7.4.tgz" + "request": { + "version": "2.69.0", + "from": "request@2.x", + "resolved": "https://registry.npmjs.org/request/-/request-2.69.0.tgz" }, "sntp": { "version": "1.0.9", "from": "sntp@1.x.x", "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz" }, + "sshpk": { + "version": "1.7.4", + "from": "sshpk@^1.7.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.7.4.tgz" + }, "string_decoder": { "version": "0.10.31", "from": "string_decoder@~0.10.x", @@ -7721,11 +7819,6 @@ "from": "strip-ansi@^3.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" }, - "supports-color": { - "version": "2.0.0", - "from": "supports-color@^2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" - }, "stringstream": { "version": "0.0.5", "from": "stringstream@~0.0.4", @@ -7741,20 +7834,15 @@ "from": "tar@~2.2.0", "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz" }, - "json-stringify-safe": { - "version": "5.0.1", - "from": "json-stringify-safe@~5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" - }, "tar-pack": { "version": "3.1.3", "from": "tar-pack@~3.1.0", "resolved": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.1.3.tgz" }, - "jsonpointer": { + "supports-color": { "version": "2.0.0", - "from": "jsonpointer@2.0.0", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz" + "from": "supports-color@^2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" }, "tough-cookie": { "version": "2.2.2", @@ -7766,40 +7854,35 @@ "from": "tunnel-agent@~0.4.1", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.2.tgz" }, - "json-schema": { - "version": "0.2.2", - "from": "json-schema@0.2.2", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz" - }, "tweetnacl": { "version": "0.14.3", "from": "tweetnacl@>=0.13.0 <1.0.0", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.3.tgz" }, - "verror": { - "version": "1.3.6", - "from": "verror@1.3.6", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" - }, "util-deprecate": { "version": "1.0.2", "from": "util-deprecate@~1.0.1", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" }, - "wrappy": { - "version": "1.0.1", - "from": "wrappy@1", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" + "uid-number": { + "version": "0.0.6", + "from": "uid-number@~0.0.6", + "resolved": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz" + }, + "verror": { + "version": "1.3.6", + "from": "verror@1.3.6", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" }, "xtend": { "version": "4.0.1", "from": "xtend@^4.0.0", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" }, - "uid-number": { - "version": "0.0.6", - "from": "uid-number@~0.0.6", - "resolved": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz" + "wrappy": { + "version": "1.0.1", + "from": "wrappy@1", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" }, "dashdash": { "version": "1.13.0", @@ -7997,18 +8080,18 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <3.0.0", + "from": "inherits@>=2.0.0 <3.0.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -8044,10 +8127,15 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz" }, "output-file-sync": { - "version": "1.1.1", + "version": "1.1.2", "from": "output-file-sync@>=1.1.0 <2.0.0", - "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", "dependencies": { + "graceful-fs": { + "version": "4.1.4", + "from": "graceful-fs@>=4.1.4 <5.0.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz" + }, "mkdirp": { "version": "0.5.1", "from": "mkdirp@>=0.5.1 <0.6.0", @@ -8059,11 +8147,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" } } - }, - "xtend": { - "version": "4.0.1", - "from": "xtend@>=4.0.0 <5.0.0", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" } } }, @@ -8147,7 +8230,7 @@ "dependencies": { "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <3.0.0", + "from": "inherits@>=2.0.1 <2.1.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "typedarray": { @@ -8199,16 +8282,16 @@ } }, "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=5.1.0 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" } } }, "flow-bin": { - "version": "0.26.0", - "from": "flow-bin@>=0.26.0 <0.27.0", - "resolved": "https://registry.npmjs.org/flow-bin/-/flow-bin-0.26.0.tgz", + "version": "0.27.0", + "from": "flow-bin@>=0.27.0 <0.28.0", + "resolved": "https://registry.npmjs.org/flow-bin/-/flow-bin-0.27.0.tgz", "dependencies": { "bin-wrapper": { "version": "3.0.2", @@ -8227,7 +8310,7 @@ "dependencies": { "meow": { "version": "3.7.0", - "from": "meow@>=3.3.0 <4.0.0", + "from": "meow@>=3.1.0 <4.0.0", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "dependencies": { "camelcase-keys": { @@ -8248,9 +8331,9 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" }, "loud-rejection": { - "version": "1.4.1", + "version": "1.6.0", "from": "loud-rejection@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.4.1.tgz", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "dependencies": { "currently-unhandled": { "version": "0.4.1", @@ -8265,9 +8348,9 @@ } }, "signal-exit": { - "version": "2.1.2", - "from": "signal-exit@>=2.1.2 <3.0.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-2.1.2.tgz" + "version": "3.0.0", + "from": "signal-exit@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz" } } }, @@ -8304,9 +8387,9 @@ } }, "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0||>=4.0.0 <5.0.0||>=5.0.0 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" }, "validate-npm-package-license": { "version": "3.0.1", @@ -8545,9 +8628,9 @@ "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz", "dependencies": { "array-uniq": { - "version": "1.0.2", + "version": "1.0.3", "from": "array-uniq@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz" + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" }, "get-stdin": { "version": "4.0.1", @@ -8577,9 +8660,9 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" }, "loud-rejection": { - "version": "1.4.1", + "version": "1.6.0", "from": "loud-rejection@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.4.1.tgz", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "dependencies": { "currently-unhandled": { "version": "0.4.1", @@ -8594,9 +8677,9 @@ } }, "signal-exit": { - "version": "2.1.2", - "from": "signal-exit@>=2.1.2 <3.0.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-2.1.2.tgz" + "version": "3.0.0", + "from": "signal-exit@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz" } } }, @@ -8848,7 +8931,7 @@ }, "minimist": { "version": "1.2.0", - "from": "minimist@>=1.1.0 <2.0.0", + "from": "minimist@>=1.1.3 <2.0.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz" }, "semver": { @@ -8862,9 +8945,9 @@ "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.0.tgz", "dependencies": { "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=5.0.3 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" } } } @@ -9049,9 +9132,9 @@ "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz" }, "is-retry-allowed": { - "version": "1.0.0", + "version": "1.1.0", "from": "is-retry-allowed@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.0.0.tgz" + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz" }, "is-stream": { "version": "1.1.0", @@ -9184,7 +9267,7 @@ "dependencies": { "chalk": { "version": "1.1.3", - "from": "chalk@>=1.1.1 <2.0.0", + "from": "chalk@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { @@ -9436,7 +9519,7 @@ "dependencies": { "chalk": { "version": "1.1.3", - "from": "chalk@>=1.1.1 <2.0.0", + "from": "chalk@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { @@ -9669,7 +9752,7 @@ "dependencies": { "chalk": { "version": "1.1.3", - "from": "chalk@>=1.1.1 <2.0.0", + "from": "chalk@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { @@ -9902,7 +9985,7 @@ "dependencies": { "chalk": { "version": "1.1.3", - "from": "chalk@>=1.1.1 <2.0.0", + "from": "chalk@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { @@ -9981,9 +10064,9 @@ } }, "yauzl": { - "version": "2.5.0", + "version": "2.6.0", "from": "yauzl@>=2.2.1 <3.0.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.5.0.tgz", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.6.0.tgz", "dependencies": { "fd-slicer": { "version": "1.0.1", @@ -9996,6 +10079,11 @@ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" } } + }, + "buffer-crc32": { + "version": "0.2.5", + "from": "buffer-crc32@>=0.2.3 <0.3.0", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.5.tgz" } } } @@ -10016,9 +10104,9 @@ "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.2.2.tgz" }, "is-url": { - "version": "1.2.1", + "version": "1.2.2", "from": "is-url@>=1.2.0 <2.0.0", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.1.tgz" + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz" }, "read-all-stream": { "version": "3.1.0", @@ -10100,7 +10188,7 @@ "dependencies": { "clone": { "version": "1.0.2", - "from": "clone@>=1.0.0 <2.0.0", + "from": "clone@>=1.0.2 <2.0.0", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz" }, "clone-stats": { @@ -10184,14 +10272,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -10233,7 +10321,7 @@ "dependencies": { "is-glob": { "version": "2.0.1", - "from": "is-glob@>=2.0.0 <3.0.0", + "from": "is-glob@>=2.0.1 <3.0.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "dependencies": { "is-extglob": { @@ -10246,9 +10334,9 @@ } }, "micromatch": { - "version": "2.3.8", + "version": "2.3.10", "from": "micromatch@>=2.3.7 <3.0.0", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.10.tgz", "dependencies": { "arr-diff": { "version": "2.0.0", @@ -10354,7 +10442,7 @@ }, "is-glob": { "version": "2.0.1", - "from": "is-glob@>=2.0.0 <3.0.0", + "from": "is-glob@>=2.0.1 <3.0.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" }, "kind-of": { @@ -10617,7 +10705,7 @@ "dependencies": { "xtend": { "version": "4.0.1", - "from": "xtend@>=4.0.0 <4.1.0-0", + "from": "xtend@>=4.0.0 <4.1.0", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" } } @@ -10774,7 +10862,7 @@ }, "meow": { "version": "3.7.0", - "from": "meow@>=3.3.0 <4.0.0", + "from": "meow@>=3.1.0 <4.0.0", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "dependencies": { "camelcase-keys": { @@ -10795,9 +10883,9 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" }, "loud-rejection": { - "version": "1.4.1", + "version": "1.6.0", "from": "loud-rejection@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.4.1.tgz", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "dependencies": { "currently-unhandled": { "version": "0.4.1", @@ -10812,9 +10900,9 @@ } }, "signal-exit": { - "version": "2.1.2", - "from": "signal-exit@>=2.1.2 <3.0.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-2.1.2.tgz" + "version": "3.0.0", + "from": "signal-exit@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz" } } }, @@ -10851,9 +10939,9 @@ } }, "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0||>=4.0.0 <5.0.0||>=5.0.0 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" }, "validate-npm-package-license": { "version": "3.0.1", @@ -11096,14 +11184,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -11259,9 +11347,9 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", "dependencies": { "abbrev": { - "version": "1.0.7", + "version": "1.0.9", "from": "abbrev@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.7.tgz" + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz" } } }, @@ -11364,9 +11452,9 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", "dependencies": { "abbrev": { - "version": "1.0.7", + "version": "1.0.9", "from": "abbrev@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.7.tgz" + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz" } } }, @@ -11485,14 +11573,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -11586,7 +11674,7 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <2.1.0", + "from": "inherits@>=2.0.1 <3.0.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "isarray": { @@ -11649,7 +11737,7 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.0 <3.0.0", + "from": "inherits@>=2.0.1 <2.1.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "isarray": { @@ -11786,9 +11874,9 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" }, "loud-rejection": { - "version": "1.4.1", + "version": "1.6.0", "from": "loud-rejection@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.4.1.tgz", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "dependencies": { "currently-unhandled": { "version": "0.4.1", @@ -11803,9 +11891,9 @@ } }, "signal-exit": { - "version": "2.1.2", - "from": "signal-exit@>=2.1.2 <3.0.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-2.1.2.tgz" + "version": "3.0.0", + "from": "signal-exit@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz" } } }, @@ -11842,9 +11930,9 @@ } }, "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0||>=4.0.0 <5.0.0||>=5.0.0 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" }, "validate-npm-package-license": { "version": "3.0.1", @@ -12125,14 +12213,14 @@ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.0.1.tgz" }, "liftoff": { - "version": "2.2.1", + "version": "2.2.4", "from": "liftoff@>=2.1.0 <3.0.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.2.1.tgz", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.2.4.tgz", "dependencies": { "extend": { - "version": "2.0.1", - "from": "extend@>=2.0.1 <3.0.0", - "resolved": "https://registry.npmjs.org/extend/-/extend-2.0.1.tgz" + "version": "3.0.0", + "from": "extend@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" }, "findup-sync": { "version": "0.3.0", @@ -12158,18 +12246,18 @@ }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.0 <3.0.0", + "from": "inherits@>=2.0.1 <2.1.0", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "minimatch": { - "version": "3.0.0", + "version": "3.0.2", "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -12213,12 +12301,12 @@ }, "rechoir": { "version": "0.6.2", - "from": "rechoir@>=0.6.0 <0.7.0", + "from": "rechoir@>=0.6.2 <0.7.0", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz" }, "resolve": { "version": "1.1.7", - "from": "resolve@>=1.1.6 <2.0.0", + "from": "resolve@>=1.1.7 <2.0.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" } } @@ -12310,7 +12398,7 @@ "dependencies": { "clone": { "version": "1.0.2", - "from": "clone@>=1.0.0 <2.0.0", + "from": "clone@>=1.0.2 <2.0.0", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz" } } @@ -12362,9 +12450,9 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -12587,6 +12675,399 @@ "from": "gulp-flatten@>=0.2.0 <0.3.0", "resolved": "https://registry.npmjs.org/gulp-flatten/-/gulp-flatten-0.2.0.tgz" }, + "gulp-load-plugins": { + "version": "1.2.4", + "from": "gulp-load-plugins@>=1.2.4 <2.0.0", + "resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.4.tgz", + "dependencies": { + "array-unique": { + "version": "0.2.1", + "from": "array-unique@>=0.2.1 <0.3.0", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz" + }, + "fancy-log": { + "version": "1.2.0", + "from": "fancy-log@>=1.2.0 <2.0.0", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.2.0.tgz", + "dependencies": { + "chalk": { + "version": "1.1.3", + "from": "chalk@>=1.1.1 <2.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "from": "ansi-styles@>=2.2.1 <3.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" + }, + "escape-string-regexp": { + "version": "1.0.5", + "from": "escape-string-regexp@>=1.0.2 <2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + }, + "has-ansi": { + "version": "2.0.0", + "from": "has-ansi@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "dependencies": { + "ansi-regex": { + "version": "2.0.0", + "from": "ansi-regex@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" + } + } + }, + "strip-ansi": { + "version": "3.0.1", + "from": "strip-ansi@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "dependencies": { + "ansi-regex": { + "version": "2.0.0", + "from": "ansi-regex@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" + } + } + }, + "supports-color": { + "version": "2.0.0", + "from": "supports-color@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" + } + } + }, + "time-stamp": { + "version": "1.0.1", + "from": "time-stamp@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.0.1.tgz" + } + } + }, + "findup-sync": { + "version": "0.4.1", + "from": "findup-sync@>=0.4.0 <0.5.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.1.tgz", + "dependencies": { + "fs-exists-sync": { + "version": "0.1.0", + "from": "fs-exists-sync@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz" + }, + "is-glob": { + "version": "2.0.1", + "from": "is-glob@>=2.0.1 <3.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "from": "is-extglob@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" + } + } + }, + "resolve-dir": { + "version": "0.1.0", + "from": "resolve-dir@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.0.tgz", + "dependencies": { + "expand-tilde": { + "version": "1.2.2", + "from": "expand-tilde@>=1.2.0 <2.0.0", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", + "dependencies": { + "os-homedir": { + "version": "1.0.1", + "from": "os-homedir@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.1.tgz" + } + } + }, + "global-modules": { + "version": "0.2.2", + "from": "global-modules@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.2.tgz", + "dependencies": { + "global-prefix": { + "version": "0.1.4", + "from": "global-prefix@>=0.1.4 <0.2.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.4.tgz", + "dependencies": { + "ini": { + "version": "1.3.4", + "from": "ini@>=1.3.4 <2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz" + }, + "osenv": { + "version": "0.1.3", + "from": "osenv@>=0.1.3 <0.2.0", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.3.tgz", + "dependencies": { + "os-homedir": { + "version": "1.0.1", + "from": "os-homedir@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.1.tgz" + }, + "os-tmpdir": { + "version": "1.0.1", + "from": "os-tmpdir@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.1.tgz" + } + } + }, + "which": { + "version": "1.2.10", + "from": "which@>=1.2.10 <2.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.2.10.tgz", + "dependencies": { + "isexe": { + "version": "1.1.2", + "from": "isexe@>=1.1.1 <2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz" + } + } + } + } + }, + "is-windows": { + "version": "0.2.0", + "from": "is-windows@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz" + } + } + } + } + } + } + }, + "gulplog": { + "version": "1.0.0", + "from": "gulplog@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "dependencies": { + "glogg": { + "version": "1.0.0", + "from": "glogg@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.0.tgz", + "dependencies": { + "sparkles": { + "version": "1.0.0", + "from": "sparkles@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz" + } + } + } + } + }, + "has-gulplog": { + "version": "0.1.0", + "from": "has-gulplog@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "dependencies": { + "sparkles": { + "version": "1.0.0", + "from": "sparkles@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz" + } + } + }, + "micromatch": { + "version": "2.3.10", + "from": "micromatch@>=2.3.8 <3.0.0", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.10.tgz", + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "from": "arr-diff@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "dependencies": { + "arr-flatten": { + "version": "1.0.1", + "from": "arr-flatten@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.1.tgz" + } + } + }, + "braces": { + "version": "1.8.5", + "from": "braces@>=1.8.2 <2.0.0", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "dependencies": { + "expand-range": { + "version": "1.8.2", + "from": "expand-range@>=1.8.1 <2.0.0", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "dependencies": { + "fill-range": { + "version": "2.2.3", + "from": "fill-range@>=2.1.0 <3.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "dependencies": { + "is-number": { + "version": "2.1.0", + "from": "is-number@>=2.1.0 <3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz" + }, + "isobject": { + "version": "2.1.0", + "from": "isobject@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "dependencies": { + "isarray": { + "version": "1.0.0", + "from": "isarray@1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + } + } + }, + "randomatic": { + "version": "1.1.5", + "from": "randomatic@>=1.1.3 <2.0.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.5.tgz" + }, + "repeat-string": { + "version": "1.5.4", + "from": "repeat-string@>=1.5.2 <2.0.0", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.4.tgz" + } + } + } + } + }, + "preserve": { + "version": "0.2.0", + "from": "preserve@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz" + }, + "repeat-element": { + "version": "1.1.2", + "from": "repeat-element@>=1.1.2 <2.0.0", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz" + } + } + }, + "expand-brackets": { + "version": "0.1.5", + "from": "expand-brackets@>=0.1.4 <0.2.0", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "dependencies": { + "is-posix-bracket": { + "version": "0.1.1", + "from": "is-posix-bracket@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz" + } + } + }, + "extglob": { + "version": "0.3.2", + "from": "extglob@>=0.3.1 <0.4.0", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz" + }, + "filename-regex": { + "version": "2.0.0", + "from": "filename-regex@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.0.tgz" + }, + "is-extglob": { + "version": "1.0.0", + "from": "is-extglob@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" + }, + "is-glob": { + "version": "2.0.1", + "from": "is-glob@>=2.0.1 <3.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" + }, + "kind-of": { + "version": "3.0.3", + "from": "kind-of@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.0.3.tgz", + "dependencies": { + "is-buffer": { + "version": "1.1.3", + "from": "is-buffer@>=1.0.2 <2.0.0", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.3.tgz" + } + } + }, + "normalize-path": { + "version": "2.0.1", + "from": "normalize-path@>=2.0.1 <3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.0.1.tgz" + }, + "object.omit": { + "version": "2.0.0", + "from": "object.omit@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.0.tgz", + "dependencies": { + "for-own": { + "version": "0.1.4", + "from": "for-own@>=0.1.3 <0.2.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.4.tgz", + "dependencies": { + "for-in": { + "version": "0.1.5", + "from": "for-in@>=0.1.5 <0.2.0", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.5.tgz" + } + } + }, + "is-extendable": { + "version": "0.1.1", + "from": "is-extendable@>=0.1.1 <0.2.0", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" + } + } + }, + "parse-glob": { + "version": "3.0.4", + "from": "parse-glob@>=3.0.4 <4.0.0", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "dependencies": { + "glob-base": { + "version": "0.3.0", + "from": "glob-base@>=0.3.0 <0.4.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "from": "glob-parent@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz" + } + } + }, + "is-dotfile": { + "version": "1.0.2", + "from": "is-dotfile@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.2.tgz" + } + } + }, + "regex-cache": { + "version": "0.4.3", + "from": "regex-cache@>=0.4.2 <0.5.0", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz", + "dependencies": { + "is-equal-shallow": { + "version": "0.1.3", + "from": "is-equal-shallow@>=0.1.3 <0.2.0", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz" + }, + "is-primitive": { + "version": "2.0.0", + "from": "is-primitive@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz" + } + } + } + } + }, + "resolve": { + "version": "1.1.7", + "from": "resolve@>=1.1.7 <2.0.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" + } + } + }, "gulp-util": { "version": "3.0.7", "from": "gulp-util@>=3.0.7 <4.0.0", @@ -12598,9 +13079,9 @@ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz" }, "array-uniq": { - "version": "1.0.2", + "version": "1.0.3", "from": "array-uniq@>=1.0.2 <2.0.0", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz" + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" }, "beeper": { "version": "1.1.0", @@ -12686,9 +13167,9 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" }, "loud-rejection": { - "version": "1.4.1", + "version": "1.6.0", "from": "loud-rejection@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.4.1.tgz", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "dependencies": { "currently-unhandled": { "version": "0.4.1", @@ -12703,9 +13184,9 @@ } }, "signal-exit": { - "version": "2.1.2", - "from": "signal-exit@>=2.1.2 <3.0.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-2.1.2.tgz" + "version": "3.0.0", + "from": "signal-exit@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz" } } }, @@ -12737,9 +13218,9 @@ } }, "semver": { - "version": "5.1.0", + "version": "5.2.0", "from": "semver@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0||>=4.0.0 <5.0.0||>=5.0.0 <6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.0.tgz" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" }, "validate-npm-package-license": { "version": "3.0.1", @@ -13275,14 +13756,14 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz" }, "istanbul": { - "version": "0.4.3", + "version": "0.4.4", "from": "istanbul@>=0.4.2 <0.5.0", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.3.tgz", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.4.tgz", "dependencies": { "abbrev": { - "version": "1.0.7", + "version": "1.0.9", "from": "abbrev@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.7.tgz" + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz" }, "escodegen": { "version": "1.8.0", @@ -13361,9 +13842,9 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", "dependencies": { "brace-expansion": { - "version": "1.1.4", + "version": "1.1.5", "from": "brace-expansion@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", @@ -13507,9 +13988,9 @@ "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-12.1.0.tgz", "dependencies": { "jsdom": { - "version": "9.2.1", + "version": "9.4.1", "from": "jsdom@>=9.0.0 <10.0.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.2.1.tgz", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.4.1.tgz", "dependencies": { "abab": { "version": "1.0.3", @@ -13821,9 +14302,9 @@ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" }, "jsprim": { - "version": "1.2.2", + "version": "1.3.0", "from": "jsprim@>=1.2.2 <2.0.0", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.0.tgz", "dependencies": { "extsprintf": { "version": "1.0.2", @@ -14154,9 +14635,9 @@ } }, "sane": { - "version": "1.3.4", + "version": "1.4.0", "from": "sane@>=1.2.0 <2.0.0", - "resolved": "https://registry.npmjs.org/sane/-/sane-1.3.4.tgz", + "resolved": "https://registry.npmjs.org/sane/-/sane-1.4.0.tgz", "dependencies": { "exec-sh": { "version": "0.2.0", @@ -14190,19 +14671,26 @@ } }, "minimatch": { - "version": "0.2.14", - "from": "minimatch@>=0.2.14 <0.3.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", + "version": "3.0.2", + "from": "minimatch@>=3.0.2 <4.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", "dependencies": { - "lru-cache": { - "version": "2.7.3", - "from": "lru-cache@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz" - }, - "sigmund": { - "version": "1.0.1", - "from": "sigmund@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz" + "brace-expansion": { + "version": "1.1.5", + "from": "brace-expansion@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", + "dependencies": { + "balanced-match": { + "version": "0.4.1", + "from": "balanced-match@>=0.4.1 <0.5.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.1.tgz" + }, + "concat-map": { + "version": "0.0.1", + "from": "concat-map@0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + } + } } } }, @@ -14300,9 +14788,9 @@ "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.1.tgz" }, "run-sequence": { - "version": "1.2.1", + "version": "1.2.2", "from": "run-sequence@>=1.1.4 <2.0.0", - "resolved": "https://registry.npmjs.org/run-sequence/-/run-sequence-1.2.1.tgz", + "resolved": "https://registry.npmjs.org/run-sequence/-/run-sequence-1.2.2.tgz", "dependencies": { "chalk": { "version": "1.1.3", @@ -14419,9 +14907,9 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-1.8.10.tgz" }, "uglify-js": { - "version": "2.6.2", + "version": "2.7.0", "from": "uglify-js@>=2.5.0 <3.0.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.6.2.tgz", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.0.tgz", "dependencies": { "async": { "version": "0.2.10", @@ -14460,7 +14948,7 @@ "dependencies": { "align-text": { "version": "0.1.4", - "from": "align-text@>=0.1.1 <0.2.0", + "from": "align-text@>=0.1.3 <0.2.0", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "dependencies": { "kind-of": { @@ -14501,7 +14989,7 @@ "dependencies": { "align-text": { "version": "0.1.4", - "from": "align-text@>=0.1.1 <0.2.0", + "from": "align-text@>=0.1.3 <0.2.0", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "dependencies": { "kind-of": { @@ -14552,14 +15040,14 @@ } }, "uglifyify": { - "version": "3.0.1", + "version": "3.0.2", "from": "uglifyify@>=3.0.1 <4.0.0", - "resolved": "https://registry.npmjs.org/uglifyify/-/uglifyify-3.0.1.tgz", + "resolved": "https://registry.npmjs.org/uglifyify/-/uglifyify-3.0.2.tgz", "dependencies": { "convert-source-map": { - "version": "0.2.6", - "from": "convert-source-map@>=0.2.3 <0.3.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.6.tgz" + "version": "1.1.3", + "from": "convert-source-map@>=1.1.0 <1.2.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz" }, "extend": { "version": "1.3.0", @@ -14567,19 +15055,26 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-1.3.0.tgz" }, "minimatch": { - "version": "0.3.0", - "from": "minimatch@>=0.3.0 <0.4.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", + "version": "2.0.10", + "from": "minimatch@>=2.0.7 <3.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", "dependencies": { - "lru-cache": { - "version": "2.7.3", - "from": "lru-cache@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz" - }, - "sigmund": { - "version": "1.0.1", - "from": "sigmund@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz" + "brace-expansion": { + "version": "1.1.5", + "from": "brace-expansion@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", + "dependencies": { + "balanced-match": { + "version": "0.4.1", + "from": "balanced-match@>=0.4.1 <0.5.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.1.tgz" + }, + "concat-map": { + "version": "0.0.1", + "from": "concat-map@0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + } + } } } }, diff --git a/package.json b/package.json index e86a451161..17fdd76364 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "eslint-plugin-react-internal": "file:eslint-rules", "fbjs": "^0.8.1", "fbjs-scripts": "^0.6.0", - "flow-bin": "^0.26.0", + "flow-bin": "^0.27.0", "glob": "^6.0.1", "grunt": "^0.4.5", "grunt-cli": "^0.1.13", @@ -53,6 +53,7 @@ "gulp": "^3.9.0", "gulp-babel": "^6.0.0", "gulp-flatten": "^0.2.0", + "gulp-load-plugins": "^1.2.4", "gulp-util": "^3.0.7", "gzip-js": "~0.3.2", "jest": "^12.1.1", @@ -78,7 +79,8 @@ "linc": "git diff --name-only --diff-filter=ACMRTUB `git merge-base HEAD master` | grep '\\.js$' | xargs eslint --", "lint": "grunt lint", "postinstall": "node node_modules/fbjs-scripts/node/check-dev-engines.js package.json", - "test": "jest" + "test": "jest", + "flow": "flow" }, "jest": { "modulePathIgnorePatterns": [ diff --git a/scripts/error-codes/codes.json b/scripts/error-codes/codes.json index 70b5cd589d..c29de4c8bf 100644 --- a/scripts/error-codes/codes.json +++ b/scripts/error-codes/codes.json @@ -135,5 +135,7 @@ "133": "Touch object is missing identifier", "134": "Touch data should have been recorded on start", "135": "Cannot find single active touch", - "136": "Attempted to update component `%s` that has already been unmounted (or failed to mount)." + "136": "Attempted to update component `%s` that has already been unmounted (or failed to mount).", + "137": "%s is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.%s", + "138": "Touch object is missing identifier." } diff --git a/src/addons/__tests__/renderSubtreeIntoContainer-test.js b/src/addons/__tests__/renderSubtreeIntoContainer-test.js index 7898af3d7f..dcb70481a7 100644 --- a/src/addons/__tests__/renderSubtreeIntoContainer-test.js +++ b/src/addons/__tests__/renderSubtreeIntoContainer-test.js @@ -12,13 +12,13 @@ 'use strict'; var React = require('React'); +var ReactDOM = require('ReactDOM'); var ReactTestUtils = require('ReactTestUtils'); var renderSubtreeIntoContainer = require('renderSubtreeIntoContainer'); describe('renderSubtreeIntoContainer', function() { it('should pass context when rendering subtree elsewhere', function() { - var portal = document.createElement('div'); var Component = React.createClass({ @@ -92,4 +92,107 @@ describe('renderSubtreeIntoContainer', function() { }, }); }); + + it('should update context if it changes due to setState', function() { + var container = document.createElement('div'); + document.body.appendChild(container); + var portal = document.createElement('div'); + + var Component = React.createClass({ + contextTypes: { + foo: React.PropTypes.string.isRequired, + getFoo: React.PropTypes.func.isRequired, + }, + + render: function() { + return
{this.context.foo + '-' + this.context.getFoo()}
; + }, + }); + + var Parent = React.createClass({ + childContextTypes: { + foo: React.PropTypes.string.isRequired, + getFoo: React.PropTypes.func.isRequired, + }, + + getChildContext: function() { + return { + foo: this.state.bar, + getFoo: () => this.state.bar, + }; + }, + + getInitialState: function() { + return { + bar: 'initial', + }; + }, + + render: function() { + return null; + }, + + componentDidMount: function() { + renderSubtreeIntoContainer(this, , portal); + }, + + componentDidUpdate() { + renderSubtreeIntoContainer(this, , portal); + }, + }); + + var instance = ReactDOM.render(, container); + expect(portal.firstChild.innerHTML).toBe('initial-initial'); + instance.setState({bar: 'changed'}); + expect(portal.firstChild.innerHTML).toBe('changed-changed'); + }); + + it('should update context if it changes due to re-render', function() { + var container = document.createElement('div'); + document.body.appendChild(container); + var portal = document.createElement('div'); + + var Component = React.createClass({ + contextTypes: { + foo: React.PropTypes.string.isRequired, + getFoo: React.PropTypes.func.isRequired, + }, + + render: function() { + return
{this.context.foo + '-' + this.context.getFoo()}
; + }, + }); + + var Parent = React.createClass({ + childContextTypes: { + foo: React.PropTypes.string.isRequired, + getFoo: React.PropTypes.func.isRequired, + }, + + getChildContext: function() { + return { + foo: this.props.bar, + getFoo: () => this.props.bar, + }; + }, + + render: function() { + return null; + }, + + componentDidMount: function() { + renderSubtreeIntoContainer(this, , portal); + }, + + componentDidUpdate() { + renderSubtreeIntoContainer(this, , portal); + }, + }); + + ReactDOM.render(, container); + expect(portal.firstChild.innerHTML).toBe('initial-initial'); + ReactDOM.render(, container); + expect(portal.firstChild.innerHTML).toBe('changed-changed'); + }); + }); diff --git a/src/renderers/shared/stack/reconciler/ReactStateSetters.js b/src/addons/link/ReactStateSetters.js similarity index 100% rename from src/renderers/shared/stack/reconciler/ReactStateSetters.js rename to src/addons/link/ReactStateSetters.js diff --git a/src/addons/transitions/ReactTransitionGroup.js b/src/addons/transitions/ReactTransitionGroup.js index 55c5221af5..f33a8f3d5d 100644 --- a/src/addons/transitions/ReactTransitionGroup.js +++ b/src/addons/transitions/ReactTransitionGroup.js @@ -266,6 +266,7 @@ var ReactTransitionGroup = React.createClass({ delete props.childFactory; delete props.transitionLeaveTimeout; delete props.transitionEnterTimeout; + delete props.transitionAppearTimeout; delete props.component; return React.createElement( diff --git a/src/isomorphic/classic/types/checkReactTypeSpec.js b/src/isomorphic/classic/types/checkReactTypeSpec.js index 3b119b395f..54978ee0d2 100644 --- a/src/isomorphic/classic/types/checkReactTypeSpec.js +++ b/src/isomorphic/classic/types/checkReactTypeSpec.js @@ -11,7 +11,6 @@ 'use strict'; -var ReactComponentTreeDevtool = require('ReactComponentTreeDevtool'); var ReactPropTypeLocationNames = require('ReactPropTypeLocationNames'); var invariant = require('invariant'); @@ -72,10 +71,13 @@ function checkReactTypeSpec(typeSpecs, values, location, componentName, element, var componentStackInfo = ''; - if (debugID !== null) { - componentStackInfo = ReactComponentTreeDevtool.getStackAddendumByID(debugID); - } else if (element !== null) { - componentStackInfo = ReactComponentTreeDevtool.getCurrentStackAddendum(element); + if (__DEV__) { + var ReactComponentTreeDevtool = require('ReactComponentTreeDevtool'); + if (debugID !== null) { + componentStackInfo = ReactComponentTreeDevtool.getStackAddendumByID(debugID); + } else if (element !== null) { + componentStackInfo = ReactComponentTreeDevtool.getCurrentStackAddendum(element); + } } warning( diff --git a/src/renderers/shared/devtools/ReactComponentTreeDevtool.js b/src/isomorphic/devtools/ReactComponentTreeDevtool.js similarity index 96% rename from src/renderers/shared/devtools/ReactComponentTreeDevtool.js rename to src/isomorphic/devtools/ReactComponentTreeDevtool.js index fd61c2f000..622bad9847 100644 --- a/src/renderers/shared/devtools/ReactComponentTreeDevtool.js +++ b/src/isomorphic/devtools/ReactComponentTreeDevtool.js @@ -32,10 +32,6 @@ function updateTree(id, update) { isMounted: false, updateCount: 0, }; - // TODO: We need to do this awkward dance because TopLevelWrapper "never - // gets mounted" but its display name gets set in instantiateReactComponent - // before its debug ID is set to 0. - unmountedIDs[id] = true; } update(tree[id]); } @@ -148,7 +144,6 @@ var ReactComponentTreeDevtool = { onMountComponent(id) { updateTree(id, item => item.isMounted = true); - delete unmountedIDs[id]; }, onMountRootComponent(id) { diff --git a/src/isomorphic/modern/class/ReactNoopUpdateQueue.js b/src/isomorphic/modern/class/ReactNoopUpdateQueue.js index 2f0be661c9..49d4c72660 100644 --- a/src/isomorphic/modern/class/ReactNoopUpdateQueue.js +++ b/src/isomorphic/modern/class/ReactNoopUpdateQueue.js @@ -13,8 +13,9 @@ var warning = require('warning'); -function warnTDZ(publicInstance, callerName) { +function warnNoop(publicInstance, callerName) { if (__DEV__) { + var constructor = publicInstance.constructor; warning( false, '%s(...): Can only update a mounted or mounting component. ' + @@ -22,7 +23,7 @@ function warnTDZ(publicInstance, callerName) { 'This is a no-op. Please check the code for the %s component.', callerName, callerName, - publicInstance.constructor && publicInstance.constructor.displayName || '' + constructor && (constructor.displayName || constructor.name) || 'ReactClass' ); } } @@ -67,7 +68,7 @@ var ReactNoopUpdateQueue = { * @internal */ enqueueForceUpdate: function(publicInstance) { - warnTDZ(publicInstance, 'forceUpdate'); + warnNoop(publicInstance, 'forceUpdate'); }, /** @@ -82,7 +83,7 @@ var ReactNoopUpdateQueue = { * @internal */ enqueueReplaceState: function(publicInstance, completeState) { - warnTDZ(publicInstance, 'replaceState'); + warnNoop(publicInstance, 'replaceState'); }, /** @@ -96,7 +97,7 @@ var ReactNoopUpdateQueue = { * @internal */ enqueueSetState: function(publicInstance, partialState) { - warnTDZ(publicInstance, 'setState'); + warnNoop(publicInstance, 'setState'); }, }; diff --git a/src/isomorphic/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee b/src/isomorphic/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee index a9871ea6ba..cf71005350 100644 --- a/src/isomorphic/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee +++ b/src/isomorphic/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee @@ -362,8 +362,6 @@ describe 'ReactCoffeeScriptClass', -> test Inner(name: 'foo'), 'DIV', 'foo' expect(-> instance.replaceState {}).toThrow() expect(-> instance.isMounted()).toThrow() - expect(-> instance.setProps name: 'bar').toThrow() - expect(-> instance.replaceProps name: 'bar').toThrow() expect(console.error.calls.count()).toBe 2 expect(console.error.calls.argsFor(0)[0]).toContain( 'replaceState(...) is deprecated in plain JavaScript React classes' diff --git a/src/isomorphic/modern/class/__tests__/ReactES6Class-test.js b/src/isomorphic/modern/class/__tests__/ReactES6Class-test.js index de2a5e591c..a477d67b25 100644 --- a/src/isomorphic/modern/class/__tests__/ReactES6Class-test.js +++ b/src/isomorphic/modern/class/__tests__/ReactES6Class-test.js @@ -402,8 +402,6 @@ describe('ReactES6Class', function() { var instance = test(, 'DIV', 'foo'); expect(() => instance.replaceState({})).toThrow(); expect(() => instance.isMounted()).toThrow(); - expect(() => instance.setProps({name: 'bar'})).toThrow(); - expect(() => instance.replaceProps({name: 'bar'})).toThrow(); expect(console.error.calls.count()).toBe(2); expect(console.error.calls.argsFor(0)[0]).toContain( 'replaceState(...) is deprecated in plain JavaScript React classes' diff --git a/src/isomorphic/modern/class/__tests__/ReactTypeScriptClass-test.ts b/src/isomorphic/modern/class/__tests__/ReactTypeScriptClass-test.ts index fe6d4910de..0e90be788a 100644 --- a/src/isomorphic/modern/class/__tests__/ReactTypeScriptClass-test.ts +++ b/src/isomorphic/modern/class/__tests__/ReactTypeScriptClass-test.ts @@ -489,8 +489,6 @@ describe('ReactTypeScriptClass', function() { ); expect(() => instance.replaceState({})).toThrow(); expect(() => instance.isMounted()).toThrow(); - expect(() => instance.setProps({ name: 'bar' })).toThrow(); - expect(() => instance.replaceProps({ name: 'bar' })).toThrow(); expect((console.error).calls.count()).toBe(2); expect((console.error).calls.argsFor(0)[0]).toContain( 'replaceState(...) is deprecated in plain JavaScript React classes' diff --git a/src/renderers/dom/client/ReactMount.js b/src/renderers/dom/client/ReactMount.js index 5e1827b746..9a0d15ba27 100644 --- a/src/renderers/dom/client/ReactMount.js +++ b/src/renderers/dom/client/ReactMount.js @@ -20,6 +20,7 @@ var ReactDOMContainerInfo = require('ReactDOMContainerInfo'); var ReactDOMFeatureFlags = require('ReactDOMFeatureFlags'); var ReactElement = require('ReactElement'); var ReactFeatureFlags = require('ReactFeatureFlags'); +var ReactInstanceMap = require('ReactInstanceMap'); var ReactInstrumentation = require('ReactInstrumentation'); var ReactMarkupChecksum = require('ReactMarkupChecksum'); var ReactReconciler = require('ReactReconciler'); @@ -287,10 +288,11 @@ var ReactMount = { _updateRootComponent: function( prevComponent, nextElement, + nextContext, container, callback) { ReactMount.scrollMonitor(container, function() { - ReactUpdateQueue.enqueueElementInternal(prevComponent, nextElement); + ReactUpdateQueue.enqueueElementInternal(prevComponent, nextElement, nextContext); if (callback) { ReactUpdateQueue.enqueueCallbackInternal(prevComponent, callback); } @@ -313,10 +315,6 @@ var ReactMount = { shouldReuseMarkup, context ) { - if (__DEV__) { - ReactInstrumentation.debugTool.onBeginFlush(); - } - // Various parts of our code (such as ReactCompositeComponent's // _renderValidatedComponent) assume that calls to render aren't nested; // verify that that's the case. @@ -340,13 +338,7 @@ var ReactMount = { ); ReactBrowserEventEmitter.ensureScrollValueMonitoring(); - var componentInstance = instantiateReactComponent(nextElement); - - if (__DEV__) { - // Mute future events from the top level wrapper. - // It is an implementation detail that devtools should not know about. - componentInstance._debugID = 0; - } + var componentInstance = instantiateReactComponent(nextElement, false); // The initial render is synchronous but any updates that happen during // rendering, in componentWillMount or componentDidMount, will be batched @@ -368,7 +360,6 @@ var ReactMount = { ReactInstrumentation.debugTool.onMountRootComponent( componentInstance._renderedComponent._debugID ); - ReactInstrumentation.debugTool.onEndFlush(); } return componentInstance; @@ -389,7 +380,7 @@ var ReactMount = { */ renderSubtreeIntoContainer: function(parentComponent, nextElement, container, callback) { invariant( - parentComponent != null && parentComponent._reactInternalInstance != null, + parentComponent != null && ReactInstanceMap.has(parentComponent), 'parentComponent must be a valid React Component' ); return ReactMount._renderSubtreeIntoContainer( @@ -440,6 +431,14 @@ var ReactMount = { nextElement ); + var nextContext; + if (parentComponent) { + var parentInst = ReactInstanceMap.get(parentComponent); + nextContext = parentInst._processChildContext(parentInst._context); + } else { + nextContext = emptyObject; + } + var prevComponent = getTopLevelWrapperInContainer(container); if (prevComponent) { @@ -453,6 +452,7 @@ var ReactMount = { ReactMount._updateRootComponent( prevComponent, nextWrappedElement, + nextContext, container, updatedCallback ); @@ -501,11 +501,7 @@ var ReactMount = { nextWrappedElement, container, shouldReuseMarkup, - parentComponent != null ? - parentComponent._reactInternalInstance._processChildContext( - parentComponent._reactInternalInstance._context - ) : - emptyObject + nextContext )._renderedComponent.getPublicInstance(); if (callback) { callback.call(component); diff --git a/src/renderers/dom/client/ReactReconcileTransaction.js b/src/renderers/dom/client/ReactReconcileTransaction.js index 403aa7f2ce..3a4c25170e 100644 --- a/src/renderers/dom/client/ReactReconcileTransaction.js +++ b/src/renderers/dom/client/ReactReconcileTransaction.js @@ -15,7 +15,9 @@ var CallbackQueue = require('CallbackQueue'); var PooledClass = require('PooledClass'); var ReactBrowserEventEmitter = require('ReactBrowserEventEmitter'); var ReactInputSelection = require('ReactInputSelection'); +var ReactInstrumentation = require('ReactInstrumentation'); var Transaction = require('Transaction'); +var ReactUpdateQueue = require('ReactUpdateQueue'); /** @@ -90,6 +92,13 @@ var TRANSACTION_WRAPPERS = [ ON_DOM_READY_QUEUEING, ]; +if (__DEV__) { + TRANSACTION_WRAPPERS.push({ + initialize: ReactInstrumentation.debugTool.onBeginFlush, + close: ReactInstrumentation.debugTool.onEndFlush, + }); +} + /** * Currently: * - The order that these are listed in the transaction is critical: @@ -104,7 +113,7 @@ var TRANSACTION_WRAPPERS = [ * * @class ReactReconcileTransaction */ -function ReactReconcileTransaction(useCreateElement) { +function ReactReconcileTransaction(useCreateElement: boolean) { this.reinitializeTransaction(); // Only server-side rendering really needs this option (see // `ReactServerRendering`), but server-side uses @@ -135,6 +144,13 @@ var Mixin = { return this.reactMountReady; }, + /** + * @return {object} The queue to collect React async events. + */ + getUpdateQueue: function() { + return ReactUpdateQueue; + }, + /** * Save current transaction state -- if the return value from this method is * passed to `rollback`, the transaction will be reset to that state. diff --git a/src/renderers/dom/client/wrappers/ReactDOMInput.js b/src/renderers/dom/client/wrappers/ReactDOMInput.js index c4bcca0c8e..d8730c2a21 100644 --- a/src/renderers/dom/client/wrappers/ReactDOMInput.js +++ b/src/renderers/dom/client/wrappers/ReactDOMInput.js @@ -22,7 +22,6 @@ var warning = require('warning'); var didWarnValueLink = false; var didWarnCheckedLink = false; -var didWarnValueNull = false; var didWarnValueDefaultValue = false; var didWarnCheckedDefaultChecked = false; var didWarnControlledToUncontrolled = false; @@ -35,19 +34,6 @@ function forceUpdateIfMounted() { } } -function warnIfValueIsNull(props) { - if (props != null && props.value === null && !didWarnValueNull) { - warning( - false, - '`value` prop on `input` should not be null. ' + - 'Consider using the empty string to clear the component or `undefined` ' + - 'for uncontrolled components.' - ); - - didWarnValueNull = true; - } -} - function isControlled(props) { var usesChecked = props.type === 'checkbox' || props.type === 'radio'; return usesChecked ? props.checked !== undefined : props.value !== undefined; @@ -149,7 +135,6 @@ var ReactDOMInput = { ); didWarnValueDefaultValue = true; } - warnIfValueIsNull(props); } var defaultValue = props.defaultValue; @@ -169,8 +154,6 @@ var ReactDOMInput = { var props = inst._currentElement.props; if (__DEV__) { - warnIfValueIsNull(props); - var controlled = isControlled(props); var owner = inst._currentElement._owner; @@ -233,10 +216,20 @@ var ReactDOMInput = { }, postMountWrapper: function(inst) { + var props = inst._currentElement.props; + // This is in postMount because we need access to the DOM node, which is not // available until after the component has mounted. var node = ReactDOMComponentTree.getNodeFromInstance(inst); - node.value = node.value; // Detach value from defaultValue + + // Detach value from defaultValue. We won't do anything if we're working on + // submit or reset inputs as those values & defaultValues are linked. They + // are not resetable nodes so this operation doesn't matter and actually + // removes browser-default values (eg "Submit Query") when no value is + // provided. + if (props.type !== 'submit' && props.type !== 'reset') { + node.value = node.value; + } // Normally, we'd just do `node.checked = node.checked` upon initial mount, less this bug // this is needed to work around a chrome bug where setting defaultChecked @@ -244,10 +237,14 @@ var ReactDOMInput = { // Reference: https://bugs.chromium.org/p/chromium/issues/detail?id=608416 // We need to temporarily unset name to avoid disrupting radio button groups. var name = node.name; - node.name = undefined; + if (name !== '') { + node.name = ''; + } node.defaultChecked = !node.defaultChecked; node.defaultChecked = !node.defaultChecked; - node.name = name; + if (name !== '') { + node.name = name; + } }, }; diff --git a/src/renderers/dom/client/wrappers/ReactDOMSelect.js b/src/renderers/dom/client/wrappers/ReactDOMSelect.js index 5fc85ef3db..c693fb7036 100644 --- a/src/renderers/dom/client/wrappers/ReactDOMSelect.js +++ b/src/renderers/dom/client/wrappers/ReactDOMSelect.js @@ -19,7 +19,6 @@ var ReactUpdates = require('ReactUpdates'); var warning = require('warning'); var didWarnValueLink = false; -var didWarnValueNull = false; var didWarnValueDefaultValue = false; function updateOptionsIfPendingUpdateAndMounted() { @@ -45,19 +44,6 @@ function getDeclarationErrorAddendum(owner) { return ''; } -function warnIfValueIsNull(props) { - if (props != null && props.value === null && !didWarnValueNull) { - warning( - false, - '`value` prop on `select` should not be null. ' + - 'Consider using the empty string to clear the component or `undefined` ' + - 'for uncontrolled components.' - ); - - didWarnValueNull = true; - } -} - var valuePropNames = ['value', 'defaultValue']; /** @@ -168,7 +154,6 @@ var ReactDOMSelect = { mountWrapper: function(inst, props) { if (__DEV__) { checkSelectPropTypes(inst, props); - warnIfValueIsNull(props); } var value = LinkedValueUtils.getValue(props); @@ -205,9 +190,6 @@ var ReactDOMSelect = { postUpdateWrapper: function(inst) { var props = inst._currentElement.props; - if (__DEV__) { - warnIfValueIsNull(props); - } // After the initial mount, we control selected-ness manually so don't pass // this value down diff --git a/src/renderers/dom/client/wrappers/ReactDOMTextarea.js b/src/renderers/dom/client/wrappers/ReactDOMTextarea.js index 3c06222f7a..52f2ae8426 100644 --- a/src/renderers/dom/client/wrappers/ReactDOMTextarea.js +++ b/src/renderers/dom/client/wrappers/ReactDOMTextarea.js @@ -20,7 +20,6 @@ var invariant = require('invariant'); var warning = require('warning'); var didWarnValueLink = false; -var didWarnValueNull = false; var didWarnValDefaultVal = false; function forceUpdateIfMounted() { @@ -30,19 +29,6 @@ function forceUpdateIfMounted() { } } -function warnIfValueIsNull(props) { - if (props != null && props.value === null && !didWarnValueNull) { - warning( - false, - '`value` prop on `textarea` should not be null. ' + - 'Consider using the empty string to clear the component or `undefined` ' + - 'for uncontrolled components.' - ); - - didWarnValueNull = true; - } -} - /** * Implements a