From 77eaf245bb7ee52cd304e345f7454d98bd881b8c Mon Sep 17 00:00:00 2001 From: Even Stensberg Date: Mon, 30 Apr 2018 07:57:30 +0200 Subject: [PATCH] ast(cli): Recursively parse AST (#341) * ast(refactor): wip refactor * ast(refactor): wip refactor * ast(init): refactor * test(refactor): refactor test suite * tests(define): swap args * ast(parsing): refactor stuff * ast(init): refactor * ast(init): refactor tests * chore(tests): remove some unneeded tests * chore(pkg): update package.json * chore(project): clear up project structure * chore(cli): remove unneded files * chore(git): add gitignore to yeoman file * chore(deps): update pkg.json * tests(snapshots): update snapshots * tests(jest): use empty module for snapshots * tests(snap): only test one prop --- .gitignore | 3 + bin/config-yargs.js | 49 +- docs/AddGenerator.html | 4 +- docs/InitGenerator.html | 4 +- docs/LoaderGenerator.html | 4 +- docs/PluginGenerator.html | 4 +- docs/commands_add.js.html | 4 +- docs/commands_generate-loader.js.html | 4 +- docs/commands_generate-plugin.js.html | 4 +- docs/commands_info.js.html | 4 +- docs/commands_init.js.html | 4 +- docs/commands_make.js.html | 4 +- docs/commands_migrate.js.html | 12 +- docs/commands_remove.js.html | 4 +- docs/commands_serve.js.html | 4 +- docs/commands_update.js.html | 4 +- docs/generate-loader_index.js.html | 68 - docs/generate-plugin_index.js.html | 68 - docs/generators_add-generator.js.html | 4 +- docs/generators_init-generator.js.html | 5 +- docs/generators_loader-generator.js.html | 4 +- docs/generators_plugin-generator.js.html | 4 +- docs/generators_utils_entry.js.html | 4 +- docs/generators_utils_module.js.html | 4 +- docs/generators_utils_plugins.js.html | 4 +- docs/generators_utils_tooltip.js.html | 8 +- docs/generators_utils_validate.js.html | 4 +- docs/generators_webpack-generator.js.html | 4 +- docs/global.html | 2858 ++---- docs/index.html | 4 +- docs/index.js.html | 4 +- docs/init_index.js.html | 97 +- ...it_transformations_context_context.js.html | 106 - ...ransformations_devServer_devServer.js.html | 140 - ...it_transformations_devtool_devtool.js.html | 105 - docs/init_transformations_entry_entry.js.html | 4 +- ...ransformations_externals_externals.js.html | 160 - docs/init_transformations_index.js.html | 204 - docs/init_transformations_mode_mode.js.html | 106 - ...init_transformations_module_module.js.html | 124 - docs/init_transformations_node_node.js.html | 95 - ...rmations_optimization_optimization.js.html | 4 +- docs/init_transformations_other_amd.js.html | 135 - docs/init_transformations_other_bail.js.html | 106 - docs/init_transformations_other_cache.js.html | 139 - docs/init_transformations_other_merge.js.html | 98 - ..._transformations_other_parallelism.js.html | 111 - ...init_transformations_other_profile.js.html | 139 - ...sformations_other_recordsInputPath.js.html | 151 - ...formations_other_recordsOutputPath.js.html | 151 - ..._transformations_other_recordsPath.js.html | 140 - ...init_transformations_output_output.js.html | 135 - ...formations_performance_performance.js.html | 143 - ...it_transformations_plugins_plugins.js.html | 107 - ...ations_resolveLoader_resolveLoader.js.html | 136 - ...it_transformations_resolve_resolve.js.html | 124 - docs/init_transformations_stats_stats.js.html | 135 - ...init_transformations_target_target.js.html | 106 - ...ransformations_top-scope_top-scope.js.html | 80 - docs/init_transformations_watch_watch.js.html | 136 - ...transformations_watch_watchOptions.js.html | 151 - .../migrate_bannerPlugin_bannerPlugin.js.html | 4 +- ...xtractTextPlugin_extractTextPlugin.js.html | 4 +- docs/migrate_index.js.html | 4 +- ...rOptionsPlugin_loaderOptionsPlugin.js.html | 4 +- docs/migrate_loaders_loaders.js.html | 4 +- ...onPlugin_moduleConcatenationPlugin.js.html | 4 +- ...edModulesPlugin_namedModulesPlugin.js.html | 4 +- ...nErrorsPlugin_noEmitOnErrorsPlugin.js.html | 4 +- docs/migrate_outputPath_outputPath.js.html | 4 +- ...tedPlugins_removeDeprecatedPlugins.js.html | 4 +- ..._removeJsonLoader_removeJsonLoader.js.html | 4 +- docs/migrate_resolve_resolve.js.html | 4 +- ...rate_uglifyJsPlugin_uglifyJsPlugin.js.html | 103 +- docs/utils_ast-utils.js.html | 434 +- docs/utils_copy-utils.js.html | 4 +- docs/utils_defineTest.js.html | 20 +- docs/utils_hashtable.js.html | 71 - docs/utils_is-local-path.js.html | 4 +- docs/utils_modify-config-helper.js.html | 4 +- docs/utils_npm-exists.js.html | 4 +- docs/utils_npm-packages-exists.js.html | 4 +- docs/utils_package-manager.js.html | 4 +- docs/utils_prop-types.js.html | 6 +- docs/utils_resolve-packages.js.html | 4 +- docs/utils_run-prettier.js.html | 4 +- lib/ast/__snapshots__/ast.test.js.snap | 23 + lib/ast/__testfixtures__/fixture-0.input.js | 134 + lib/ast/__testfixtures__/fixture-1.input.js | 1 + lib/ast/ast.test.js | 28 + lib/ast/index.js | 37 + lib/commands/migrate.js | 6 +- lib/generators/add-generator.js | 4 +- lib/generators/init-generator.js | 27 +- lib/generators/loader-generator.js | 4 +- lib/generators/plugin-generator.js | 5 +- lib/generators/utils/entry.js | 9 +- lib/init/index.js | 93 +- .../__snapshots__/context.test.js.snap | 56 - .../__testfixtures__/context-0.input.js | 6 - .../__testfixtures__/context-1.input.js | 6 - .../__testfixtures__/context-2.input.js | 6 - .../__testfixtures__/context-3.input.js | 3 - .../__testfixtures__/context-4.input.js | 4 - lib/init/transformations/context/context.js | 55 - .../transformations/context/context.test.js | 16 - .../__snapshots__/devServer.test.js.snap | 74 - .../__testfixtures__/devServer-0.input.js | 6 - .../__testfixtures__/devServer-1.input.js | 6 - .../__testfixtures__/devServer-2.input.js | 6 - .../__testfixtures__/devServer-3.input.js | 11 - .../__testfixtures__/devServer-4.input.js | 9 - .../transformations/devServer/devServer.js | 89 - .../devServer/devServer.test.js | 41 - .../__snapshots__/devtool.test.js.snap | 114 - .../__testfixtures__/devtool-0.input.js | 6 - .../__testfixtures__/devtool-1.input.js | 6 - .../__testfixtures__/devtool-2.input.js | 6 - .../__testfixtures__/devtool-3.input.js | 6 - .../__testfixtures__/devtool-4.input.js | 7 - lib/init/transformations/devtool/devtool.js | 54 - .../transformations/devtool/devtool.test.js | 26 - .../entry/__snapshots__/entry.test.js.snap | 121 - .../entry/__testfixtures__/entry-0.input.js | 1 - .../entry/__testfixtures__/entry-1.input.js | 6 - lib/init/transformations/entry/entry.js | 85 - lib/init/transformations/entry/entry.test.js | 72 - .../__snapshots__/externals.test.js.snap | 146 - .../__testfixtures__/externals-0.input.js | 6 - .../__testfixtures__/externals-1.input.js | 6 - .../__testfixtures__/externals-2.input.js | 12 - .../transformations/externals/externals.js | 109 - .../externals/externals.test.js | 204 - .../mode/__snapshots__/mode.test.js.snap | 43 - .../mode/__testfixtures__/mode-1.input.js | 1 - .../mode/__testfixtures__/mode-2.input.js | 3 - lib/init/transformations/mode/mode.js | 55 - lib/init/transformations/mode/mode.test.js | 11 - .../module/__snapshots__/module.test.js.snap | 257 - .../module/__testfixtures__/module-0.input.js | 6 - .../module/__testfixtures__/module-1.input.js | 6 - .../module/__testfixtures__/module-2.input.js | 42 - lib/init/transformations/module/module.js | 73 - .../transformations/module/module.test.js | 248 - .../node/__snapshots__/node.test.js.snap | 22 - .../node/__testfixtures__/node-0.input.js | 6 - lib/init/transformations/node/node.js | 44 - lib/init/transformations/node/node.test.js | 19 - .../__snapshots__/optimization.test.js.snap | 19 - .../__testfixtures__/optimization-0.input.js | 6 - .../optimization/optimization.js | 53 - .../optimization/optimization.test.js | 16 - .../other/__snapshots__/other.test.js.snap | 316 - .../other/__testfixtures__/other-0.input.js | 6 - .../other/__testfixtures__/other-1.input.js | 14 - lib/init/transformations/other/amd.js | 84 - lib/init/transformations/other/bail.js | 55 - lib/init/transformations/other/cache.js | 88 - lib/init/transformations/other/merge.js | 47 - lib/init/transformations/other/other.test.js | 81 - lib/init/transformations/other/parallelism.js | 60 - lib/init/transformations/other/profile.js | 88 - .../transformations/other/recordsInputPath.js | 100 - .../other/recordsOutputPath.js | 100 - lib/init/transformations/other/recordsPath.js | 89 - .../output/__snapshots__/output.test.js.snap | 36 - .../output/__testfixtures__/output-0.input.js | 3 - .../output/__testfixtures__/output-1.input.js | 13 - lib/init/transformations/output/output.js | 84 - .../transformations/output/output.test.js | 35 - .../__snapshots__/performance.test.js.snap | 32 - .../__testfixtures__/performance-0.input.js | 6 - .../__testfixtures__/performance-1.input.js | 11 - .../performance/performance.js | 92 - .../performance/performance.test.js | 32 - .../__snapshots__/plugins.test.js.snap | 43 - .../__testfixtures__/plugins-0.input.js | 6 - .../__testfixtures__/plugins-1.input.js | 7 - lib/init/transformations/plugins/plugins.js | 56 - .../transformations/plugins/plugins.test.js | 36 - .../__snapshots__/resolve.test.js.snap | 68 - .../__testfixtures__/resolve-0.input.js | 6 - .../__testfixtures__/resolve-1.input.js | 31 - lib/init/transformations/resolve/resolve.js | 73 - .../transformations/resolve/resolve.test.js | 52 - .../__snapshots__/resolveLoader.test.js.snap | 31 - .../__testfixtures__/resolveLoader-0.input.js | 6 - .../__testfixtures__/resolveLoader-1.input.js | 9 - .../resolveLoader/resolveLoader.js | 85 - .../resolveLoader/resolveLoader.test.js | 27 - .../stats/__snapshots__/stats.test.js.snap | 110 - .../stats/__testfixtures__/stats-0.input.js | 6 - .../stats/__testfixtures__/stats-1.input.js | 14 - lib/init/transformations/stats/stats.js | 84 - lib/init/transformations/stats/stats.test.js | 76 - .../target/__snapshots__/target.test.js.snap | 65 - .../target/__testfixtures__/target-0.input.js | 6 - .../target/__testfixtures__/target-1.input.js | 6 - .../target/__testfixtures__/target-2.input.js | 7 - lib/init/transformations/target/target.js | 55 - .../transformations/target/target.test.js | 10 - .../__snapshots__/top-scope.test.js.snap | 14 - .../__testfixtures__/top-scope-0.input.js | 1 - .../__testfixtures__/top-scope-1.input.js | 3 - .../transformations/top-scope/top-scope.js | 29 - .../top-scope/top-scope.test.js | 18 - .../watch/__snapshots__/watch.test.js.snap | 93 - .../__snapshots__/watchOptions.test.js.snap | 101 - .../watch/__testfixtures__/watch-0.input.js | 6 - .../watch/__testfixtures__/watch-1.input.js | 6 - .../watch/__testfixtures__/watch-2.input.js | 6 - .../watch/__testfixtures__/watch-3.input.js | 12 - .../watch/__testfixtures__/watch-4.input.js | 3 - lib/init/transformations/watch/watch.js | 85 - lib/init/transformations/watch/watch.test.js | 13 - .../transformations/watch/watchOptions.js | 100 - .../watch/watchOptions.test.js | 71 - .../__testfixtures__/.editorconfig | 3 - lib/migrate/uglifyJsPlugin/uglifyJsPlugin.js | 53 +- .../__snapshots__/ast-utils.test.js.snap | 69 - lib/utils/ast-utils.js | 426 +- lib/utils/ast-utils.test.js | 183 - lib/utils/defineTest.js | 16 +- lib/utils/hashtable.js | 20 - lib/utils/prop-types.js | 4 +- lib/utils/validate-identifier.js | 565 +- package-lock.json | 8623 ++++++++--------- 227 files changed, 5846 insertions(+), 17257 deletions(-) delete mode 100644 docs/generate-loader_index.js.html delete mode 100644 docs/generate-plugin_index.js.html delete mode 100644 docs/init_transformations_context_context.js.html delete mode 100644 docs/init_transformations_devServer_devServer.js.html delete mode 100644 docs/init_transformations_devtool_devtool.js.html delete mode 100644 docs/init_transformations_externals_externals.js.html delete mode 100644 docs/init_transformations_index.js.html delete mode 100644 docs/init_transformations_mode_mode.js.html delete mode 100644 docs/init_transformations_module_module.js.html delete mode 100644 docs/init_transformations_node_node.js.html delete mode 100644 docs/init_transformations_other_amd.js.html delete mode 100644 docs/init_transformations_other_bail.js.html delete mode 100644 docs/init_transformations_other_cache.js.html delete mode 100644 docs/init_transformations_other_merge.js.html delete mode 100644 docs/init_transformations_other_parallelism.js.html delete mode 100644 docs/init_transformations_other_profile.js.html delete mode 100644 docs/init_transformations_other_recordsInputPath.js.html delete mode 100644 docs/init_transformations_other_recordsOutputPath.js.html delete mode 100644 docs/init_transformations_other_recordsPath.js.html delete mode 100644 docs/init_transformations_output_output.js.html delete mode 100644 docs/init_transformations_performance_performance.js.html delete mode 100644 docs/init_transformations_plugins_plugins.js.html delete mode 100644 docs/init_transformations_resolveLoader_resolveLoader.js.html delete mode 100644 docs/init_transformations_resolve_resolve.js.html delete mode 100644 docs/init_transformations_stats_stats.js.html delete mode 100644 docs/init_transformations_target_target.js.html delete mode 100644 docs/init_transformations_top-scope_top-scope.js.html delete mode 100644 docs/init_transformations_watch_watch.js.html delete mode 100644 docs/init_transformations_watch_watchOptions.js.html delete mode 100644 docs/utils_hashtable.js.html create mode 100644 lib/ast/__snapshots__/ast.test.js.snap create mode 100644 lib/ast/__testfixtures__/fixture-0.input.js create mode 100644 lib/ast/__testfixtures__/fixture-1.input.js create mode 100644 lib/ast/ast.test.js create mode 100644 lib/ast/index.js delete mode 100644 lib/init/transformations/context/__snapshots__/context.test.js.snap delete mode 100644 lib/init/transformations/context/__testfixtures__/context-0.input.js delete mode 100644 lib/init/transformations/context/__testfixtures__/context-1.input.js delete mode 100644 lib/init/transformations/context/__testfixtures__/context-2.input.js delete mode 100644 lib/init/transformations/context/__testfixtures__/context-3.input.js delete mode 100644 lib/init/transformations/context/__testfixtures__/context-4.input.js delete mode 100644 lib/init/transformations/context/context.js delete mode 100644 lib/init/transformations/context/context.test.js delete mode 100644 lib/init/transformations/devServer/__snapshots__/devServer.test.js.snap delete mode 100644 lib/init/transformations/devServer/__testfixtures__/devServer-0.input.js delete mode 100644 lib/init/transformations/devServer/__testfixtures__/devServer-1.input.js delete mode 100644 lib/init/transformations/devServer/__testfixtures__/devServer-2.input.js delete mode 100644 lib/init/transformations/devServer/__testfixtures__/devServer-3.input.js delete mode 100644 lib/init/transformations/devServer/__testfixtures__/devServer-4.input.js delete mode 100644 lib/init/transformations/devServer/devServer.js delete mode 100644 lib/init/transformations/devServer/devServer.test.js delete mode 100644 lib/init/transformations/devtool/__snapshots__/devtool.test.js.snap delete mode 100644 lib/init/transformations/devtool/__testfixtures__/devtool-0.input.js delete mode 100644 lib/init/transformations/devtool/__testfixtures__/devtool-1.input.js delete mode 100644 lib/init/transformations/devtool/__testfixtures__/devtool-2.input.js delete mode 100644 lib/init/transformations/devtool/__testfixtures__/devtool-3.input.js delete mode 100644 lib/init/transformations/devtool/__testfixtures__/devtool-4.input.js delete mode 100644 lib/init/transformations/devtool/devtool.js delete mode 100644 lib/init/transformations/devtool/devtool.test.js delete mode 100644 lib/init/transformations/entry/__snapshots__/entry.test.js.snap delete mode 100644 lib/init/transformations/entry/__testfixtures__/entry-0.input.js delete mode 100644 lib/init/transformations/entry/__testfixtures__/entry-1.input.js delete mode 100644 lib/init/transformations/entry/entry.js delete mode 100644 lib/init/transformations/entry/entry.test.js delete mode 100644 lib/init/transformations/externals/__snapshots__/externals.test.js.snap delete mode 100644 lib/init/transformations/externals/__testfixtures__/externals-0.input.js delete mode 100644 lib/init/transformations/externals/__testfixtures__/externals-1.input.js delete mode 100644 lib/init/transformations/externals/__testfixtures__/externals-2.input.js delete mode 100644 lib/init/transformations/externals/externals.js delete mode 100644 lib/init/transformations/externals/externals.test.js delete mode 100644 lib/init/transformations/mode/__snapshots__/mode.test.js.snap delete mode 100644 lib/init/transformations/mode/__testfixtures__/mode-1.input.js delete mode 100644 lib/init/transformations/mode/__testfixtures__/mode-2.input.js delete mode 100644 lib/init/transformations/mode/mode.js delete mode 100644 lib/init/transformations/mode/mode.test.js delete mode 100644 lib/init/transformations/module/__snapshots__/module.test.js.snap delete mode 100644 lib/init/transformations/module/__testfixtures__/module-0.input.js delete mode 100644 lib/init/transformations/module/__testfixtures__/module-1.input.js delete mode 100644 lib/init/transformations/module/__testfixtures__/module-2.input.js delete mode 100644 lib/init/transformations/module/module.js delete mode 100644 lib/init/transformations/module/module.test.js delete mode 100644 lib/init/transformations/node/__snapshots__/node.test.js.snap delete mode 100644 lib/init/transformations/node/__testfixtures__/node-0.input.js delete mode 100644 lib/init/transformations/node/node.js delete mode 100644 lib/init/transformations/node/node.test.js delete mode 100644 lib/init/transformations/optimization/__snapshots__/optimization.test.js.snap delete mode 100644 lib/init/transformations/optimization/__testfixtures__/optimization-0.input.js delete mode 100644 lib/init/transformations/optimization/optimization.js delete mode 100644 lib/init/transformations/optimization/optimization.test.js delete mode 100644 lib/init/transformations/other/__snapshots__/other.test.js.snap delete mode 100644 lib/init/transformations/other/__testfixtures__/other-0.input.js delete mode 100644 lib/init/transformations/other/__testfixtures__/other-1.input.js delete mode 100644 lib/init/transformations/other/amd.js delete mode 100644 lib/init/transformations/other/bail.js delete mode 100644 lib/init/transformations/other/cache.js delete mode 100644 lib/init/transformations/other/merge.js delete mode 100644 lib/init/transformations/other/other.test.js delete mode 100644 lib/init/transformations/other/parallelism.js delete mode 100644 lib/init/transformations/other/profile.js delete mode 100644 lib/init/transformations/other/recordsInputPath.js delete mode 100644 lib/init/transformations/other/recordsOutputPath.js delete mode 100644 lib/init/transformations/other/recordsPath.js delete mode 100644 lib/init/transformations/output/__snapshots__/output.test.js.snap delete mode 100644 lib/init/transformations/output/__testfixtures__/output-0.input.js delete mode 100644 lib/init/transformations/output/__testfixtures__/output-1.input.js delete mode 100644 lib/init/transformations/output/output.js delete mode 100644 lib/init/transformations/output/output.test.js delete mode 100644 lib/init/transformations/performance/__snapshots__/performance.test.js.snap delete mode 100644 lib/init/transformations/performance/__testfixtures__/performance-0.input.js delete mode 100644 lib/init/transformations/performance/__testfixtures__/performance-1.input.js delete mode 100644 lib/init/transformations/performance/performance.js delete mode 100644 lib/init/transformations/performance/performance.test.js delete mode 100644 lib/init/transformations/plugins/__snapshots__/plugins.test.js.snap delete mode 100644 lib/init/transformations/plugins/__testfixtures__/plugins-0.input.js delete mode 100644 lib/init/transformations/plugins/__testfixtures__/plugins-1.input.js delete mode 100644 lib/init/transformations/plugins/plugins.js delete mode 100644 lib/init/transformations/plugins/plugins.test.js delete mode 100644 lib/init/transformations/resolve/__snapshots__/resolve.test.js.snap delete mode 100644 lib/init/transformations/resolve/__testfixtures__/resolve-0.input.js delete mode 100644 lib/init/transformations/resolve/__testfixtures__/resolve-1.input.js delete mode 100644 lib/init/transformations/resolve/resolve.js delete mode 100644 lib/init/transformations/resolve/resolve.test.js delete mode 100644 lib/init/transformations/resolveLoader/__snapshots__/resolveLoader.test.js.snap delete mode 100644 lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-0.input.js delete mode 100644 lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-1.input.js delete mode 100644 lib/init/transformations/resolveLoader/resolveLoader.js delete mode 100644 lib/init/transformations/resolveLoader/resolveLoader.test.js delete mode 100644 lib/init/transformations/stats/__snapshots__/stats.test.js.snap delete mode 100644 lib/init/transformations/stats/__testfixtures__/stats-0.input.js delete mode 100644 lib/init/transformations/stats/__testfixtures__/stats-1.input.js delete mode 100644 lib/init/transformations/stats/stats.js delete mode 100644 lib/init/transformations/stats/stats.test.js delete mode 100644 lib/init/transformations/target/__snapshots__/target.test.js.snap delete mode 100644 lib/init/transformations/target/__testfixtures__/target-0.input.js delete mode 100644 lib/init/transformations/target/__testfixtures__/target-1.input.js delete mode 100644 lib/init/transformations/target/__testfixtures__/target-2.input.js delete mode 100644 lib/init/transformations/target/target.js delete mode 100644 lib/init/transformations/target/target.test.js delete mode 100644 lib/init/transformations/top-scope/__snapshots__/top-scope.test.js.snap delete mode 100644 lib/init/transformations/top-scope/__testfixtures__/top-scope-0.input.js delete mode 100644 lib/init/transformations/top-scope/__testfixtures__/top-scope-1.input.js delete mode 100644 lib/init/transformations/top-scope/top-scope.js delete mode 100644 lib/init/transformations/top-scope/top-scope.test.js delete mode 100644 lib/init/transformations/watch/__snapshots__/watch.test.js.snap delete mode 100644 lib/init/transformations/watch/__snapshots__/watchOptions.test.js.snap delete mode 100644 lib/init/transformations/watch/__testfixtures__/watch-0.input.js delete mode 100644 lib/init/transformations/watch/__testfixtures__/watch-1.input.js delete mode 100644 lib/init/transformations/watch/__testfixtures__/watch-2.input.js delete mode 100644 lib/init/transformations/watch/__testfixtures__/watch-3.input.js delete mode 100644 lib/init/transformations/watch/__testfixtures__/watch-4.input.js delete mode 100644 lib/init/transformations/watch/watch.js delete mode 100644 lib/init/transformations/watch/watch.test.js delete mode 100644 lib/init/transformations/watch/watchOptions.js delete mode 100644 lib/init/transformations/watch/watchOptions.test.js delete mode 100644 lib/migrate/uglifyJsPlugin/__testfixtures__/.editorconfig delete mode 100644 lib/utils/hashtable.js diff --git a/.gitignore b/.gitignore index c1681d6062d..625b6179761 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,6 @@ yarn-error.log # Test Compilation test/js/* + +# Yeoman file +.yo-rc.json \ No newline at end of file diff --git a/bin/config-yargs.js b/bin/config-yargs.js index 8f94a4288dc..65abf670e88 100644 --- a/bin/config-yargs.js +++ b/bin/config-yargs.js @@ -140,14 +140,16 @@ module.exports = function(yargs) { }, "output-filename": { type: "string", - describe: optionsSchema.definitions.output.properties.filename.description, + describe: + optionsSchema.definitions.output.properties.filename.description, group: OUTPUT_GROUP, defaultDescription: "[name].js", requiresArg: true }, "output-chunk-filename": { type: "string", - describe: optionsSchema.definitions.output.properties.chunkFilename.description, + describe: + optionsSchema.definitions.output.properties.chunkFilename.description, group: OUTPUT_GROUP, defaultDescription: "filename with [id] instead of [name] or [id] prefixed", @@ -155,25 +157,30 @@ module.exports = function(yargs) { }, "output-source-map-filename": { type: "string", - describe: optionsSchema.definitions.output.properties.sourceMapFilename.description, + describe: + optionsSchema.definitions.output.properties.sourceMapFilename + .description, group: OUTPUT_GROUP, requiresArg: true }, "output-public-path": { type: "string", - describe: optionsSchema.definitions.output.properties.publicPath.description, + describe: + optionsSchema.definitions.output.properties.publicPath.description, group: OUTPUT_GROUP, requiresArg: true }, "output-jsonp-function": { type: "string", - describe: optionsSchema.definitions.output.properties.jsonpFunction.description, + describe: + optionsSchema.definitions.output.properties.jsonpFunction.description, group: OUTPUT_GROUP, requiresArg: true }, "output-pathinfo": { type: "boolean", - describe: optionsSchema.definitions.output.properties.pathinfo.description, + describe: + optionsSchema.definitions.output.properties.pathinfo.description, group: OUTPUT_GROUP }, "output-library": { @@ -184,7 +191,8 @@ module.exports = function(yargs) { }, "output-library-target": { type: "string", - describe: optionsSchema.definitions.output.properties.libraryTarget.description, + describe: + optionsSchema.definitions.output.properties.libraryTarget.description, choices: optionsSchema.definitions.output.properties.libraryTarget.enum, group: OUTPUT_GROUP, requiresArg: true @@ -235,18 +243,24 @@ module.exports = function(yargs) { "watch-stdin": { type: "boolean", alias: "stdin", - describe: optionsSchema.properties.watchOptions.properties.stdin.description, + describe: + optionsSchema.properties.watchOptions.properties.stdin.description, group: ADVANCED_GROUP }, "watch-aggregate-timeout": { - describe: optionsSchema.properties.watchOptions.properties.aggregateTimeout.description, - type: optionsSchema.properties.watchOptions.properties.aggregateTimeout.type, + describe: + optionsSchema.properties.watchOptions.properties.aggregateTimeout + .description, + type: + optionsSchema.properties.watchOptions.properties.aggregateTimeout + .type, group: ADVANCED_GROUP, requiresArg: true }, "watch-poll": { type: "string", - describe: optionsSchema.properties.watchOptions.properties.poll.description, + describe: + optionsSchema.properties.watchOptions.properties.poll.description, group: ADVANCED_GROUP }, hot: { @@ -267,13 +281,15 @@ module.exports = function(yargs) { }, "resolve-alias": { type: "string", - describe: optionsSchema.definitions.resolve.properties.alias.description, + describe: + optionsSchema.definitions.resolve.properties.alias.description, group: RESOLVE_GROUP, requiresArg: true }, "resolve-extensions": { type: "array", - describe: optionsSchema.definitions.resolve.properties.alias.description, + describe: + optionsSchema.definitions.resolve.properties.alias.description, group: RESOLVE_GROUP, requiresArg: true }, @@ -289,13 +305,16 @@ module.exports = function(yargs) { requiresArg: true }, "optimize-min-chunk-size": { - describe: optionsSchema.properties.optimization.properties.splitChunks.oneOf[1].properties.minSize.description, + describe: + optionsSchema.properties.optimization.properties.splitChunks.oneOf[1] + .properties.minSize.description, group: OPTIMIZE_GROUP, requiresArg: true }, "optimize-minimize": { type: "boolean", - describe: optionsSchema.properties.optimization.properties.minimize.description, + describe: + optionsSchema.properties.optimization.properties.minimize.description, group: OPTIMIZE_GROUP }, prefetch: { diff --git a/docs/AddGenerator.html b/docs/AddGenerator.html index 5132a4e1548..c769de1a758 100644 --- a/docs/AddGenerator.html +++ b/docs/AddGenerator.html @@ -186,13 +186,13 @@

Extends


diff --git a/docs/InitGenerator.html b/docs/InitGenerator.html index 81465e262e3..4bc1a52341f 100644 --- a/docs/InitGenerator.html +++ b/docs/InitGenerator.html @@ -186,13 +186,13 @@

Extends


diff --git a/docs/LoaderGenerator.html b/docs/LoaderGenerator.html index 55f28a6efe4..f3e1bda7890 100644 --- a/docs/LoaderGenerator.html +++ b/docs/LoaderGenerator.html @@ -166,13 +166,13 @@

Extends


diff --git a/docs/PluginGenerator.html b/docs/PluginGenerator.html index 487ed739ea2..afc833699ce 100644 --- a/docs/PluginGenerator.html +++ b/docs/PluginGenerator.html @@ -166,13 +166,13 @@

Extends


diff --git a/docs/commands_add.js.html b/docs/commands_add.js.html index 0f0e1545af1..f2b97893e07 100644 --- a/docs/commands_add.js.html +++ b/docs/commands_add.js.html @@ -52,13 +52,13 @@

Source: commands/add.js


diff --git a/docs/commands_generate-loader.js.html b/docs/commands_generate-loader.js.html index c902712cd0e..1cdfcfdba77 100644 --- a/docs/commands_generate-loader.js.html +++ b/docs/commands_generate-loader.js.html @@ -54,13 +54,13 @@

Source: commands/generate-loader.js


diff --git a/docs/commands_generate-plugin.js.html b/docs/commands_generate-plugin.js.html index b317c4849d0..6d57a2be379 100644 --- a/docs/commands_generate-plugin.js.html +++ b/docs/commands_generate-plugin.js.html @@ -54,13 +54,13 @@

Source: commands/generate-plugin.js


diff --git a/docs/commands_info.js.html b/docs/commands_info.js.html index 61d2ca16217..e93520541f2 100644 --- a/docs/commands_info.js.html +++ b/docs/commands_info.js.html @@ -55,13 +55,13 @@

Source: commands/info.js


diff --git a/docs/commands_init.js.html b/docs/commands_init.js.html index cca960c59e1..7b77d974c2d 100644 --- a/docs/commands_init.js.html +++ b/docs/commands_init.js.html @@ -61,13 +61,13 @@

Source: commands/init.js


diff --git a/docs/commands_make.js.html b/docs/commands_make.js.html index c61142bf15f..43cb4ecb625 100644 --- a/docs/commands_make.js.html +++ b/docs/commands_make.js.html @@ -48,13 +48,13 @@

Source: commands/make.js


diff --git a/docs/commands_migrate.js.html b/docs/commands_migrate.js.html index ac4cc357d43..d5666803733 100644 --- a/docs/commands_migrate.js.html +++ b/docs/commands_migrate.js.html @@ -206,9 +206,15 @@

Source: commands/migrate.js

); } } + console.log(chalk.green(`\n✔︎ New webpack config file is at ${outputConfigPath}.`)); console.log( chalk.green( - `\n ✔︎ New webpack v2 config file is at ${outputConfigPath}` + "✔︎ Heads up! Updating to the latest version could contain breaking changes." + ) + ); + console.log( + chalk.green( + "✔︎ Plugin and loader dependencies may need to be updated." ) ); }); @@ -230,13 +236,13 @@

Source: commands/migrate.js


diff --git a/docs/commands_remove.js.html b/docs/commands_remove.js.html index b33827fb3b2..5c7a6289ede 100644 --- a/docs/commands_remove.js.html +++ b/docs/commands_remove.js.html @@ -52,13 +52,13 @@

Source: commands/remove.js


diff --git a/docs/commands_serve.js.html b/docs/commands_serve.js.html index 773276b59d2..abe81240bcd 100644 --- a/docs/commands_serve.js.html +++ b/docs/commands_serve.js.html @@ -209,13 +209,13 @@

Source: commands/serve.js


diff --git a/docs/commands_update.js.html b/docs/commands_update.js.html index a0d38391b41..c71d610cafb 100644 --- a/docs/commands_update.js.html +++ b/docs/commands_update.js.html @@ -52,13 +52,13 @@

Source: commands/update.js


diff --git a/docs/generate-loader_index.js.html b/docs/generate-loader_index.js.html deleted file mode 100644 index 05aab65a6d4..00000000000 --- a/docs/generate-loader_index.js.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - JSDoc: Source: generate-loader/index.js - - - - - - - - - - -
- -

Source: generate-loader/index.js

- - - - - - -
-
-
const yeoman = require("yeoman-environment");
-const { LoaderGenerator } = require("../generators/loader-generator");
-
-/**
- * Runs a yeoman generator to create a new webpack loader project
- * @returns {void}
- */
-function loaderCreator() {
-	const env = yeoman.createEnv();
-	const generatorName = "webpack-loader-generator";
-
-	env.registerStub(LoaderGenerator, generatorName);
-
-	env.run(generatorName);
-}
-
-module.exports = loaderCreator;
-
-
-
- - - - -
- - - -
- - - - - - - diff --git a/docs/generate-plugin_index.js.html b/docs/generate-plugin_index.js.html deleted file mode 100644 index b82eca8d574..00000000000 --- a/docs/generate-plugin_index.js.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - JSDoc: Source: generate-plugin/index.js - - - - - - - - - - -
- -

Source: generate-plugin/index.js

- - - - - - -
-
-
const yeoman = require("yeoman-environment");
-const PluginGenerator = require("../generators/plugin-generator").PluginGenerator;
-
-/**
- * Runs a yeoman generator to create a new webpack plugin project
- * @returns {void}
- */
-function pluginCreator() {
-	const env = yeoman.createEnv();
-	const generatorName = "webpack-plugin-generator";
-
-	env.registerStub(PluginGenerator, generatorName);
-
-	env.run(generatorName);
-}
-
-module.exports = pluginCreator;
-
-
-
- - - - -
- - - -
- - - - - - - diff --git a/docs/generators_add-generator.js.html b/docs/generators_add-generator.js.html index 21c785c12d8..78d26e3a8c6 100644 --- a/docs/generators_add-generator.js.html +++ b/docs/generators_add-generator.js.html @@ -493,13 +493,13 @@

Source: generators/add-generator.js


diff --git a/docs/generators_init-generator.js.html b/docs/generators_init-generator.js.html index b4f6eeb5f40..14a0af25383 100644 --- a/docs/generators_init-generator.js.html +++ b/docs/generators_init-generator.js.html @@ -423,7 +423,6 @@

Source: generators/init-generator.js

done(); }); } - installPlugins() { const asyncNamePrompt = this.async(); const defaultName = this.isProd ? "prod" : "config"; @@ -460,13 +459,13 @@

Source: generators/init-generator.js


diff --git a/docs/generators_loader-generator.js.html b/docs/generators_loader-generator.js.html index a273e90bfa6..65745bbc13e 100644 --- a/docs/generators_loader-generator.js.html +++ b/docs/generators_loader-generator.js.html @@ -97,13 +97,13 @@

Source: generators/loader-generator.js


diff --git a/docs/generators_plugin-generator.js.html b/docs/generators_plugin-generator.js.html index ad0ad15bc06..bd0c3d71a86 100644 --- a/docs/generators_plugin-generator.js.html +++ b/docs/generators_plugin-generator.js.html @@ -78,13 +78,13 @@

Source: generators/plugin-generator.js


diff --git a/docs/generators_utils_entry.js.html b/docs/generators_utils_entry.js.html index 89ba12bb078..7a89859aebc 100644 --- a/docs/generators_utils_entry.js.html +++ b/docs/generators_utils_entry.js.html @@ -129,13 +129,13 @@

Source: generators/utils/entry.js


diff --git a/docs/generators_utils_module.js.html b/docs/generators_utils_module.js.html index 38ed8a3a29a..fdbbb15bd48 100644 --- a/docs/generators_utils_module.js.html +++ b/docs/generators_utils_module.js.html @@ -55,13 +55,13 @@

Source: generators/utils/module.js


diff --git a/docs/generators_utils_plugins.js.html b/docs/generators_utils_plugins.js.html index 8f962f033bb..613e2cabc77 100644 --- a/docs/generators_utils_plugins.js.html +++ b/docs/generators_utils_plugins.js.html @@ -50,13 +50,13 @@

Source: generators/utils/plugins.js


diff --git a/docs/generators_utils_tooltip.js.html b/docs/generators_utils_tooltip.js.html index 6ab3d0ef809..0ad7986b805 100644 --- a/docs/generators_utils_tooltip.js.html +++ b/docs/generators_utils_tooltip.js.html @@ -61,11 +61,11 @@

Source: generators/utils/tooltip.js

}, cssPlugin: _ => { return `/* - * We've enabled ExtractTextPlugin for you. This allows your app to + * We've enabled MiniCssExtractPlugin for you. This allows your app to * use css modules that will be moved into a separate CSS file instead of inside * one of your module entries! * - * https://github.com/webpack-contrib/extract-text-webpack-plugin + * https://github.com/webpack-contrib/mini-css-extract-plugin * */`; }, @@ -96,13 +96,13 @@

Source: generators/utils/tooltip.js


diff --git a/docs/generators_utils_validate.js.html b/docs/generators_utils_validate.js.html index ae94f3b317b..c72b6bee130 100644 --- a/docs/generators_utils_validate.js.html +++ b/docs/generators_utils_validate.js.html @@ -53,13 +53,13 @@

Source: generators/utils/validate.js


diff --git a/docs/generators_webpack-generator.js.html b/docs/generators_webpack-generator.js.html index 69971a54431..177b38ea429 100644 --- a/docs/generators_webpack-generator.js.html +++ b/docs/generators_webpack-generator.js.html @@ -113,13 +113,13 @@

Source: generators/webpack-generator.js


diff --git a/docs/global.html b/docs/global.html index 97f30734c5a..4191d6f2b7c 100644 --- a/docs/global.html +++ b/docs/global.html @@ -298,7 +298,7 @@
Parameters:
Source:
@@ -350,7 +350,7 @@
Returns:
-

checkIfExistsAndAddValue(j, node, key, value) → {Void}

+

addProperty(j, p, key, value) → {Node}

@@ -358,7 +358,7 @@

- If a prop exists, it overrides it, else it creates a new one + Recursively adds an object/property to a node @@ -417,7 +417,7 @@
Parameters:
- node + p @@ -433,7 +433,7 @@
Parameters:
- objectexpression to check + AST node @@ -456,7 +456,7 @@
Parameters:
- Key of the property + key of a key/val object @@ -469,7 +469,7 @@
Parameters:
-String +Any @@ -479,7 +479,7 @@
Parameters:
- computed value of the property + Any type of object @@ -520,7 +520,7 @@
Parameters:
Source:
@@ -546,6 +546,10 @@
Parameters:
Returns:
+
+ - the created ast +
+
@@ -554,7 +558,7 @@
Returns:
-Void +Node
@@ -572,7 +576,7 @@
Returns:
-

createArrayWithChildren(j, key, subProps, shouldDropKeys) → {Array}

+

createIdentifierOrLiteral(j, val) → {Node}

@@ -580,7 +584,7 @@

- Creates an array and iterates on an object with properties + Creates an appropriate identifier or literal property @@ -639,59 +643,19 @@
Parameters:
- key - - - - - -String - - - - - - - - - - object name - - - - - - - subProps + val String +| - - - - - - - - - computed value of the property - - - - - - - shouldDropKeys - - - - - Boolean +| + +Number @@ -701,7 +665,7 @@
Parameters:
- bool to ask to use obj.keys or not + @@ -742,7 +706,7 @@
Parameters:
Source:
@@ -768,10 +732,6 @@
Parameters:
Returns:
-
- arr - An array with the object properties -
-
@@ -780,7 +740,7 @@
Returns:
-Array +Node
@@ -798,7 +758,7 @@
Returns:
-

createEmptyArrayProperty(j, key) → {Array}

+

createLiteral(j, val) → {Node}

@@ -806,7 +766,7 @@

- Creates an empty array + Creates an appropriate literal property @@ -865,13 +825,19 @@
Parameters:
- key + val String +| + +Boolean +| + +Number @@ -881,7 +847,7 @@
Parameters:
- array name + @@ -922,7 +888,7 @@
Parameters:
Source:
@@ -948,10 +914,6 @@
Parameters:
Returns:
-
- arr - An empty array -
-
@@ -960,7 +922,7 @@
Returns:
-Array +Node
@@ -978,7 +940,7 @@
Returns:
-

createExternalRegExp(j, prop) → {Node}

+

createOrUpdatePluginByName(j, rootNodePath, pluginName, options) → {Void}

@@ -986,7 +948,8 @@

c
- Finds a regexp property with an already parsed AST from the user + Finds or creates a node for a given plugin name string with options object +If plugin declaration already exist, options are merged.
@@ -1045,7 +1008,30 @@

Parameters:
- prop + rootNodePath + + + + + +Node + + + + + + + + + + `plugins: []` NodePath where plugin should be added. See https://github.com/facebook/jscodeshift/wiki/jscodeshift-Documentation#nodepaths + + + + + + + pluginName @@ -1061,7 +1047,30 @@
Parameters:
- property to find the value at + ex. `webpack.LoaderOptionsPlugin` + + + + + + + options + + + + + +Object + + + + + + + + + + plugin options @@ -1102,7 +1111,7 @@
Parameters:
Source:
@@ -1128,10 +1137,6 @@
Parameters:
Returns:
-
- - A literal node with the found regexp -
-
@@ -1140,7 +1145,7 @@
Returns:
-Node +Void
@@ -1158,7 +1163,7 @@
Returns:
-

createFunctionWithArguments(j, p, name) → {Node}

+

createProperty(j, key, value) → {Node}

@@ -1166,7 +1171,7 @@

<
- Creates a function call with arguments + Creates an Object's property with a given key and value
@@ -1225,13 +1230,16 @@
Parameters:
- p + key -Node +String +| + +Number @@ -1241,20 +1249,26 @@
Parameters:
- Node to push against + Property key - name + value String +| + +Number +| + +Boolean @@ -1264,7 +1278,7 @@
Parameters:
- Name for the given function + Property value @@ -1305,7 +1319,7 @@
Parameters:
Source:
@@ -1331,11 +1345,6 @@
Parameters:
Returns:
-
- - Returns the node for the created -function -
-
@@ -1362,7 +1371,7 @@
Returns:
-

createIdentifierOrLiteral(j, val) → {Node}

+

defineTest(dirName, transformName, testFilePrefixopt, transformObject, action) → {Void}

@@ -1370,7 +1379,8 @@

- Creates an appropriate identifier or literal property + Handles some boilerplate around defining a simple jest/Jasmine test for a +jscodeshift transform. @@ -1394,6 +1404,8 @@
Parameters:
Type + Attributes + @@ -1406,93 +1418,205 @@
Parameters:
- j + dirName -any +String + + + + + + - — jscodeshift API + + + contains the name of the directory the test is located in. This + should normally be passed via __dirname. - val + transformName String -| - -Boolean -| - -Number + + + + + + + + - + contains the filename of the transform being tested, + excluding the .js extension. - - + + + testFilePrefix + + + + +String + + + + + + <optional>
+ -
+ - + + + - + - + Optionally contains the name of the file with the test + data. If not specified, it defaults to the same value as `transformName`. + This will be suffixed with ".input.js" for the input file and ".output.js" + for the expected output. For example, if set to "foo", we will read the + "foo.input.js" file, pass this to the transform, and expect its output to + be equal to the contents of "foo.output.js". + - + + + transformObject + - + + + +any - - + + - + + + - + - + + + + + + + Object to be transformed with the transformations + + + + + + + action + + + + + +String + + + + + + + + + + + + + + + + + + init, update or remove, decides how to format the AST + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +
Source:
@@ -1518,6 +1642,10 @@
Parameters:
Returns:
+
+ Jest makes sure to execute the globally defined functions +
+
@@ -1526,7 +1654,7 @@
Returns:
-Node +Void
@@ -1544,7 +1672,7 @@
Returns:
-

createLiteral(j, val) → {Node}

+

findAndRemovePluginByName(j, node, pluginName) → {Node|Void}

@@ -1552,7 +1680,8 @@

createLi
- Creates an appropriate literal property + Finds and removes a node for a given plugin name. If the plugin +is the last in the plugins array, the array is also removed.
@@ -1611,19 +1740,36 @@

Parameters:
- val + node -String -| +Node -Boolean -| -Number + + + + + + + + node to start search from + + + + + + + pluginName + + + + + +String @@ -1633,7 +1779,7 @@
Parameters:
- + name of the plugin to remove @@ -1674,7 +1820,7 @@
Parameters:
Source:
@@ -1700,6 +1846,10 @@
Parameters:
Returns:
+
+ - path to the root webpack configuration object if plugin is found +
+
@@ -1709,6 +1859,9 @@
Returns:
Node +| + +Void
@@ -1726,7 +1879,7 @@
Returns:
-

createObjectWithSuppliedProperty(j, key, prop) → {Node}

+

findInvocation(j, node, pluginName) → {Boolean}

@@ -1734,7 +1887,7 @@

- Creates an object with an supplied property as parameter + Check whether `node` is the invocation of the plugin denoted by `pluginName` @@ -1776,7 +1929,7 @@
Parameters:
-any +Object @@ -1786,20 +1939,20 @@
Parameters:
- — jscodeshift API + jscodeshift top-level import - key + node -String +Node @@ -1809,20 +1962,20 @@
Parameters:
- object name + ast node to check - prop + pluginName -Node +String @@ -1832,7 +1985,7 @@
Parameters:
- property to be added + name of the plugin @@ -1873,7 +2026,7 @@
Parameters:
Source:
@@ -1900,7 +2053,7 @@
Returns:
- - An property with the supplied property + isPluginInvocation - whether `node` is the invocation of the plugin denoted by `pluginName`
@@ -1911,7 +2064,7 @@
Returns:
-Node +Boolean
@@ -1929,7 +2082,7 @@
Returns:
-

createOrUpdatePluginByName(j, rootNodePath, pluginName, options) → {Void}

+

findPluginsArrayAndRemoveIfEmpty(j, rootNode) → {Node}

@@ -1937,8 +2090,7 @@

- Finds or creates a node for a given plugin name string with options object -If plugin declaration already exist, options are merged. + It lookouts for the plugins property and, if the array is empty, it removes it from the AST @@ -1990,14 +2142,14 @@
Parameters:
- — jscodeshift API + jscodeshift API - rootNodePath + rootNode @@ -2013,53 +2165,7 @@
Parameters:
- `plugins: []` NodePath where plugin should be added. See https://github.com/facebook/jscodeshift/wiki/jscodeshift-Documentation#nodepaths - - - - - - - pluginName - - - - - -String - - - - - - - - - - ex. `webpack.LoaderOptionsPlugin` - - - - - - - options - - - - - -Object - - - - - - - - - - plugin options + node to start search from @@ -2100,7 +2206,7 @@
Parameters:
Source:
@@ -2126,6 +2232,10 @@
Parameters:
Returns:
+
+ rootNode modified AST. +
+
@@ -2134,7 +2244,7 @@
Returns:
-Void +Node
@@ -2152,7 +2262,7 @@
Returns:
-

createProperty(j, key, value) → {Node}

+

findPluginsByName(j, node, pluginNamesArray) → {Node}

@@ -2160,7 +2270,8 @@

createP
- Creates an Object's property with a given key and value + Find paths that match `new name.space.PluginName()` for a +given array of plugin names
@@ -2219,16 +2330,13 @@

Parameters:
- key + node -String -| - -Number +Node @@ -2238,26 +2346,20 @@
Parameters:
- Property key + Node to start search from - value + pluginNamesArray -String -| - -Number -| - -Boolean +Array.<String> @@ -2267,7 +2369,7 @@
Parameters:
- Property value + Array of plugin names like `webpack.LoaderOptionsPlugin` @@ -2308,7 +2410,7 @@
Parameters:
Source:
@@ -2334,6 +2436,10 @@
Parameters:
Returns:
+
+ Node that has the pluginName +
+
@@ -2360,7 +2466,7 @@
Returns:
-

defineTest(dirName, transformName, testFilePrefixopt, transformObject, action) → {Void}

+

findRootNodesByName(j, node, propName) → {Node}

@@ -2368,8 +2474,7 @@

defineTest<
- Handles some boilerplate around defining a simple jest/Jasmine test for a -jscodeshift transform. + Finds the path to the `name: []` node
@@ -2393,8 +2498,6 @@

Parameters:
Type - Attributes - @@ -2407,140 +2510,53 @@
Parameters:
- dirName + j -String +any - - - - - - - - - contains the name of the directory the test is located in. This - should normally be passed via __dirname. + — jscodeshift API - transformName + node -String +Node - - - - - - - - - - - - contains the filename of the transform being tested, - excluding the .js extension. - - - - - - - testFilePrefix - - - - - -String - - - - - - - - - <optional>
- - - - - - - - - - - Optionally contains the name of the file with the test - data. If not specified, it defaults to the same value as `transformName`. - This will be suffixed with ".input.js" for the input file and ".output.js" - for the expected output. For example, if set to "foo", we will read the - "foo.input.js" file, pass this to the transform, and expect its output to - be equal to the contents of "foo.output.js". - - - - - - - transformObject - - - - - -any - - - - - - - - - - - - - - - Object to be transformed with the transformations + Node to start search from - action + propName @@ -2553,18 +2569,10 @@
Parameters:
- - - - - - - - - init, update or remove, decides how to format the AST + property to search for @@ -2605,7 +2613,7 @@
Parameters:
Source:
@@ -2632,7 +2640,7 @@
Returns:
- Jest makes sure to execute the globally defined functions + found node and
@@ -2643,7 +2651,7 @@
Returns:
-Void +Node
@@ -2661,7 +2669,7 @@
Returns:
-

findAndRemovePluginByName(j, node, pluginName) → {Node|Void}

+

findVariableToPlugin(j, rootNode, pluginPackageName) → {String}

@@ -2669,8 +2677,7 @@

- Finds and removes a node for a given plugin name. If the plugin -is the last in the plugins array, the array is also removed. + Finds the variable to which a third party plugin is assigned to @@ -2729,7 +2736,7 @@
Parameters:
- node + rootNode @@ -2745,14 +2752,14 @@
Parameters:
- node to start search from + `plugins: []` Root Node. See https://github.com/facebook/jscodeshift/wiki/jscodeshift-Documentation#nodepaths - pluginName + pluginPackageName @@ -2768,7 +2775,7 @@
Parameters:
- name of the plugin to remove + ex. `extract-text-plugin` @@ -2809,7 +2816,7 @@
Parameters:
Source:
@@ -2836,7 +2843,7 @@
Returns:
- - path to the root webpack configuration object if plugin is found + variable name - ex. 'const s = require(s) gives "s"`
@@ -2847,10 +2854,7 @@
Returns:
-Node -| - -Void +String
@@ -2868,7 +2872,7 @@
Returns:
-

findInvocation(j, node, pluginName) → {Boolean}

+

generatorCopy(generator, templateDir) → {function}

@@ -2876,7 +2880,8 @@

findInv
- Check whether `node` is the invocation of the plugin denoted by `pluginName` + Takes in a file path in the `./templates` directory. Copies that +file to the destination, with the `.tpl` extension stripped.
@@ -2912,36 +2917,13 @@

Parameters:
- j - - - - - -Object - - - - - - - - - - jscodeshift top-level import - - - - - - - node + generator -Node +Generator @@ -2951,20 +2933,20 @@
Parameters:
- ast node to check + A Yeoman Generator instance - pluginName + templateDir -String +string @@ -2974,7 +2956,7 @@
Parameters:
- name of the plugin + Absolute path to template directory @@ -3015,7 +2997,7 @@
Parameters:
Source:
@@ -3042,7 +3024,7 @@
Returns:
- isPluginInvocation - whether `node` is the invocation of the plugin denoted by `pluginName` + A curried function that takes a file path and copies it
@@ -3053,7 +3035,7 @@
Returns:
-Boolean +function
@@ -3071,7 +3053,7 @@
Returns:
-

findPluginsByName(j, node, pluginNamesArray) → {Node}

+

generatorCopyTpl(generator, templateDir, templateData) → {function}

@@ -3079,8 +3061,9 @@

find
- Find paths that match `new name.space.PluginName()` for a -given array of plugin names + Takes in a file path in the `./templates` directory. Copies that +file to the destination, with the `.tpl` extension and `_` prefix +stripped. Passes `this.props` to the template.
@@ -3116,13 +3099,13 @@

Parameters:
- j + generator -any +Generator @@ -3132,20 +3115,20 @@
Parameters:
- — jscodeshift API + A Yeoman Generator instance - node + templateDir -Node +string @@ -3155,20 +3138,20 @@
Parameters:
- Node to start search from + Absolute path to template directory - pluginNamesArray + templateData -Array.<String> +any @@ -3178,7 +3161,8 @@
Parameters:
- Array of plugin names like `webpack.LoaderOptionsPlugin` + An object containing the data passed to +the template files. @@ -3219,7 +3203,7 @@
Parameters:
Source:
@@ -3246,7 +3230,7 @@
Returns:
- Node that has the pluginName + A curried function that takes a file path and copies it
@@ -3257,7 +3241,7 @@
Returns:
-Node +function
@@ -3275,7 +3259,7 @@
Returns:
-

findRootNodesByName(j, node, propName) → {Node}

+

getPackageManager() → {String}

@@ -3283,7 +3267,8 @@

fi
- Finds the path to the `name: []` node + Returns the name of package manager to use, +preferring yarn over npm if available
@@ -3294,99 +3279,114 @@

fi -

Parameters:
- - - - - - - - - - - - - - +
-
- - - - + - + - + - + - - + - - - - + - + +
Source:
+
+ - + - - - - + + - - - - - + + + + - + + + + - - + - -
NameTypeDescription
j - - -any + + - - — jscodeshift API
node - - -Node + + - - Node to start search from
propName - - + + + + + + + + + + + +
Returns:
+ + +
+ - The package manager name +
+ + + +
+
+ Type +
+
+ String - -
property to search for
+

getPathToGlobalPackages() → {String}

+ + + + + + +
+ Returns the path to globally installed +npm packages, depending on the available +package manager determined by `getPackageManager` +
+ + + + + + + @@ -3422,7 +3422,7 @@
Parameters:
Source:
@@ -3449,7 +3449,7 @@
Returns:
- found node and + path - Path to global node_modules folder
@@ -3460,7 +3460,7 @@
Returns:
-Node +String
@@ -3478,7 +3478,7 @@
Returns:
-

findVariableToPlugin(j, rootNode, pluginPackageName) → {String}

+

getRequire(j, constName, packagePath) → {Node}

@@ -3486,7 +3486,7 @@

f
- Finds the variable to which a third party plugin is assigned to + Returns constructed require symbol
@@ -3545,13 +3545,13 @@

Parameters:
- rootNode + constName -Node +String @@ -3561,14 +3561,14 @@
Parameters:
- `plugins: []` Root Node. See https://github.com/facebook/jscodeshift/wiki/jscodeshift-Documentation#nodepaths + Name of require - pluginPackageName + packagePath @@ -3584,7 +3584,7 @@
Parameters:
- ex. `extract-text-plugin` + path of required package @@ -3625,7 +3625,7 @@
Parameters:
Source:
@@ -3652,7 +3652,7 @@
Returns:
- variable name - ex. 'const s = require(s) gives "s"` + - the created ast
@@ -3663,7 +3663,7 @@
Returns:
-String +Node
@@ -3681,7 +3681,7 @@
Returns:
-

generatorCopy(generator, templateDir) → {function}

+

getRootPathModule(dep) → {String}

@@ -3689,8 +3689,7 @@

generato
- Takes in a file path in the `./templates` directory. Copies that -file to the destination, with the `.tpl` extension stripped. + Find the path of a given module
@@ -3726,36 +3725,13 @@

Parameters:
- generator - - - - - -Generator - - - - - - - - - - A Yeoman Generator instance - - - - - - - templateDir + dep -string +Object @@ -3765,7 +3741,7 @@
Parameters:
- Absolute path to template directory + dependency to find @@ -3806,7 +3782,7 @@
Parameters:
Source:
@@ -3833,7 +3809,7 @@
Returns:
- A curried function that takes a file path and copies it + string with given path
@@ -3844,7 +3820,7 @@
Returns:
-function +String
@@ -3862,7 +3838,7 @@
Returns:
-

generatorCopyTpl(generator, templateDir, templateData) → {function}

+

isType(path, type) → {Boolean}

@@ -3870,9 +3846,7 @@

gener
- Takes in a file path in the `./templates` directory. Copies that -file to the destination, with the `.tpl` extension and `_` prefix -stripped. Passes `this.props` to the template. + Returns true if type is given type
@@ -3908,36 +3882,13 @@

Parameters:
- generator - - - - - -Generator - - - - - - - - - - A Yeoman Generator instance - - - - - - - templateDir + path -string +Node @@ -3947,20 +3898,20 @@
Parameters:
- Absolute path to template directory + pathNode - templateData + type -any +String @@ -3970,8 +3921,7 @@
Parameters:
- An object containing the data passed to -the template files. + node type @@ -4012,7 +3962,7 @@
Parameters:
Source:
@@ -4038,10 +3988,6 @@
Parameters:
Returns:
-
- A curried function that takes a file path and copies it -
-
@@ -4050,7 +3996,7 @@
Returns:
-function +Boolean
@@ -4068,7 +4014,7 @@
Returns:
-

getPackageManager() → {String}

+

loaderCreator() → {void}

@@ -4076,8 +4022,7 @@

getP
- Returns the name of package manager to use, -preferring yarn over npm if available + Runs a yeoman generator to create a new webpack loader project
@@ -4121,7 +4066,7 @@

getP
Source:
@@ -4147,10 +4092,6 @@

getP

Returns:
-
- - The package manager name -
-
@@ -4159,7 +4100,7 @@
Returns:
-String +void
@@ -4177,7 +4118,7 @@
Returns:
-

getPathToGlobalPackages() → {String}

+

makeLoaderName(name) → {string}

@@ -4185,9 +4126,8 @@

- Returns the path to globally installed -npm packages, depending on the available -package manager determined by `getPackageManager` + Formats a string into webpack loader format +(eg: 'style-loader', 'raw-loader') @@ -4198,6 +4138,55 @@

Parameters:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
name + + +string + + + + A loader name to be formatted
+ + @@ -4231,7 +4220,7 @@

Source:
@@ -4258,7 +4247,7 @@
Returns:
- path - Path to global node_modules folder + The formatted string
@@ -4269,7 +4258,7 @@
Returns:
-String +string
@@ -4287,7 +4276,7 @@
Returns:
-

getRequire(j, constName, packagePath) → {Node}

+

mapOptionsToTransform(transformObject, config) → {Object}

@@ -4295,7 +4284,8 @@

getRequire<
- Returns constructed require symbol + Maps back transforms that needs to be run using the configuration +provided.
@@ -4331,36 +4321,13 @@

Parameters:
- j - - - - - -any - - - - - - - - - - — jscodeshift API - - - - - - - constName + transformObject -String +Object @@ -4370,20 +4337,20 @@
Parameters:
- Name of require + An Object with all transformations - packagePath + config -String +Object @@ -4393,7 +4360,7 @@
Parameters:
- path of required package + Configuration to transform @@ -4434,7 +4401,7 @@
Parameters:
Source:
@@ -4461,7 +4428,7 @@
Returns:
- - the created ast + - An Object with the transformations to be run
@@ -4472,7 +4439,7 @@
Returns:
-Node +Object
@@ -4490,7 +4457,7 @@
Returns:
-

getRootPathModule(dep) → {String}

+

pluginCreator() → {void}

@@ -4498,7 +4465,7 @@

getR
- Find the path of a given module + Runs a yeoman generator to create a new webpack plugin project
@@ -4509,55 +4476,6 @@

getR -

Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
dep - - -Object - - - - dependency to find
- - @@ -4591,7 +4509,7 @@
Parameters:
Source:
@@ -4617,10 +4535,6 @@
Parameters:
Returns:
-
- string with given path -
-
@@ -4629,7 +4543,7 @@
Returns:
-String +void
@@ -4647,7 +4561,7 @@
Returns:
-

isAssignment(j, p, cb, identifier, property) → {function}

+

processPromise(child) → {Promise}

@@ -4655,9 +4569,7 @@

isAssignm
- Checks if we are at the correct node and later invokes a callback -for the transforms to either use their own transform function or -use pushCreateProperty if the transform doesn't expect any properties + Attaches a promise to the installation of the package
@@ -4693,53 +4605,7 @@

Parameters:
- j - - - - - -any - - - - - - - - - - — jscodeshift API - - - - - - - p - - - - - -Node - - - - - - - - - - Node to push against - - - - - - - cb + child @@ -4755,54 +4621,7 @@
Parameters:
- callback to be invoked - - - - - - - identifier - - - - - -String - - - - - - - - - - key to use as property - - - - - - - property - - - - - -Object - - - - - - - - - - WebpackOptions that later will be converted via -pushCreateProperty via WebpackOptions[identifier] + The function to attach a promise to @@ -4843,7 +4662,7 @@
Parameters:
Source:
@@ -4870,7 +4689,7 @@
Returns:
- cb - Returns the callback and pushes a new node + promise - Returns a promise to the installation
@@ -4881,1546 +4700,7 @@
Returns:
-function - - -
-
- - - - - - - - - - - - - -

isType(path, type) → {Boolean}

- - - - - - -
- Returns true if type is given type -
- - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
path - - -Node - - - - pathNode
type - - -String - - - - node type
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - - - -
-
- Type -
-
- -Boolean - - -
-
- - - - - - - - - - - - - -

loaderCreator() → {void}

- - - - - - -
- Runs a yeoman generator to create a new webpack loader project -
- - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - - - -
-
- Type -
-
- -void - - -
-
- - - - - - - - - - - - - -

loopThroughObjects(j, p, obj) → {function|Node}

- - - - - - -
- Loops through an object and adds property to an object with no identifier -
- - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
j - - -any - - - - — jscodeshift API
p - - -Node - - - - node to add value to
obj - - -Object - - - - Object to loop through
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - -
- - Either pushes the node, or reruns until -nothing is left -
- - - -
-
- Type -
-
- -function -| - -Node - - -
-
- - - - - - - - - - - - - -

makeLoaderName(name) → {string}

- - - - - - -
- Formats a string into webpack loader format -(eg: 'style-loader', 'raw-loader') -
- - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
name - - -string - - - - A loader name to be formatted
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - -
- The formatted string -
- - - -
-
- Type -
-
- -string - - -
-
- - - - - - - - - - - - - -

mapOptionsToTransform(transformObject, config) → {Object}

- - - - - - -
- Maps back transforms that needs to be run using the configuration -provided. -
- - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
transformObject - - -Object - - - - An Object with all transformations
config - - -Object - - - - Configuration to transform
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - -
- - An Object with the transformations to be run -
- - - -
-
- Type -
-
- -Object - - -
-
- - - - - - - - - - - - - -

pluginCreator() → {void}

- - - - - - -
- Runs a yeoman generator to create a new webpack plugin project -
- - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - - - -
-
- Type -
-
- -void - - -
-
- - - - - - - - - - - - - -

processPromise(child) → {Promise}

- - - - - - -
- Attaches a promise to the installation of the package -
- - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
child - - -function - - - - The function to attach a promise to
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - -
- promise - Returns a promise to the installation -
- - - -
-
- Type -
-
- -Promise - - -
-
- - - - - - - - - - - - - -

pushCreateProperty(j, p, key, val) → {Node}

- - - - - - -
- Creates a property and pushes the value to a node -
- - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
j - - -any - - - - — jscodeshift API
p - - -Node - - - - Node to push against
key - - -String - - - - key used as identifier
val - - -String - - - - property value
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - -
- - Returns node the pushed property -
- - - -
-
- Type -
-
- -Node - - -
-
- - - - - - - - - - - - - -

pushObjectKeys(j, p, webpackProperties, name) → {Node|function}

- - - - - - - - - - - - - - -
Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
j - - -any - - - - — jscodeshift API
p - - -Node - - - - path to push
webpackProperties - - -Object - - - - The object to loop over
name - - -String - - - - Key that will be the identifier we find and add values to
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Source:
-
- - - - - - - -
- - - - - - - - - - - - - -
Returns:
- - -
- Returns a function that will push a node if -subProperty is an array, else it will invoke a function that will push a single node -
- - - -
-
- Type -
-
- -Node -| - -function +Promise
@@ -8962,13 +7242,13 @@
Returns:

- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/index.html b/docs/index.html index eb47f8399e8..e7cbae94d05 100644 --- a/docs/index.html +++ b/docs/index.html @@ -50,13 +50,13 @@


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/index.js.html b/docs/index.js.html index ec4cdda919b..e9e35a865f6 100644 --- a/docs/index.js.html +++ b/docs/index.js.html @@ -57,13 +57,13 @@

Source: index.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/init_index.js.html b/docs/init_index.js.html index 255e9b8f949..6355fe93907 100644 --- a/docs/init_index.js.html +++ b/docs/init_index.js.html @@ -34,66 +34,8 @@

Source: init/index.js

const pEachSeries = require("p-each-series"); const runPrettier = require("../utils/run-prettier"); - -const entryTransform = require("./transformations/entry/entry"); -const outputTransform = require("./transformations/output/output"); -const contextTransform = require("./transformations/context/context"); -const resolveTransform = require("./transformations/resolve/resolve"); -const devtoolTransform = require("./transformations/devtool/devtool"); -const targetTransform = require("./transformations/target/target"); -const watchTransform = require("./transformations/watch/watch"); -const watchOptionsTransform = require("./transformations/watch/watchOptions"); -const externalsTransform = require("./transformations/externals/externals"); -const nodeTransform = require("./transformations/node/node"); -const performanceTransform = require("./transformations/performance/performance"); -const statsTransform = require("./transformations/stats/stats"); -const amdTransform = require("./transformations/other/amd"); -const bailTransform = require("./transformations/other/bail"); -const cacheTransform = require("./transformations/other/cache"); -const profileTransform = require("./transformations/other/profile"); -const mergeTransform = require("./transformations/other/merge"); -const parallelismTransform = require("./transformations/other/parallelism"); -const recordsInputPathTransform = require("./transformations/other/recordsInputPath"); -const recordsOutputPathTransform = require("./transformations/other/recordsOutputPath"); -const recordsPathTransform = require("./transformations/other/recordsPath"); -const moduleTransform = require("./transformations/module/module"); -const pluginsTransform = require("./transformations/plugins/plugins"); -const topScopeTransform = require("./transformations/top-scope/top-scope"); -const devServerTransform = require("./transformations/devServer/devServer"); -const modeTransform = require("./transformations/mode/mode"); -const resolveLoaderTransform = require("./transformations/resolveLoader/resolveLoader"); -const optimizationTransform = require("./transformations/optimization/optimization"); - -const transformsObject = { - entryTransform, - outputTransform, - contextTransform, - resolveTransform, - devtoolTransform, - targetTransform, - watchTransform, - watchOptionsTransform, - externalsTransform, - nodeTransform, - performanceTransform, - statsTransform, - amdTransform, - bailTransform, - cacheTransform, - profileTransform, - moduleTransform, - pluginsTransform, - topScopeTransform, - mergeTransform, - devServerTransform, - modeTransform, - parallelismTransform, - recordsInputPathTransform, - recordsOutputPathTransform, - recordsPathTransform, - resolveLoaderTransform, - optimizationTransform -}; +const astTransform = require("../ast"); +const propTypes = require("../utils/prop-types"); /** * @@ -105,27 +47,8 @@

Source: init/index.js

* @returns {Object} - An Object with the transformations to be run */ -function mapOptionsToTransform(transformObject, config) { - return Object.keys(transformObject) - .map(transformKey => { - const stringVal = transformKey.substr( - 0, - transformKey.indexOf("Transform") - ); - if (Object.keys(config.webpackOptions).length) { - if (config.webpackOptions[stringVal]) { - return [ - transformObject[transformKey], - config.webpackOptions[stringVal] - ]; - } else { - return [transformObject[transformKey], config[stringVal]]; - } - } else { - return [transformObject[transformKey]]; - } - }) - .filter(e => e[1]); +function mapOptionsToTransform(config) { + return Object.keys(config.webpackOptions).filter(k => propTypes.has(k)); } /** @@ -147,7 +70,7 @@

Source: init/index.js

webpackConfig.forEach(scaffoldPiece => { const config = webpackProperties[scaffoldPiece]; - const transformations = mapOptionsToTransform(transformsObject, config); + const transformations = mapOptionsToTransform(config); const ast = j( initActionNotDefined ? webpackProperties.configFile @@ -156,11 +79,7 @@

Source: init/index.js

const transformAction = action || null; return pEachSeries(transformations, f => { - if (!f[1]) { - return f[0](j, ast, transformAction); - } else { - return f[0](j, ast, f[1], transformAction); - } + return astTransform(j, ast, config.webpackOptions[f], transformAction, f); }) .then(_ => { let configurationName; @@ -211,13 +130,13 @@

Source: init/index.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/init_transformations_context_context.js.html b/docs/init_transformations_context_context.js.html deleted file mode 100644 index 7ff9e35332c..00000000000 --- a/docs/init_transformations_context_context.js.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - JSDoc: Source: init/transformations/context/context.js - - - - - - - - - - -
- -

Source: init/transformations/context/context.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for context. Finds the context property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function contextTransform(j, ast, webpackProperties, action) {
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"context",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const contextNode = utils.findRootNodesByName(j, ast, "context");
-			if (contextNode.size() !== 0) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"context",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return contextTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_devServer_devServer.js.html b/docs/init_transformations_devServer_devServer.js.html deleted file mode 100644 index 21af539f09a..00000000000 --- a/docs/init_transformations_devServer_devServer.js.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - JSDoc: Source: init/transformations/devServer/devServer.js - - - - - - - - - - -
- -

Source: init/transformations/devServer/devServer.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for devServer. Finds the devServer property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function devServerTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createDevServerProperty(p) {
-		utils.pushCreateProperty(j, p, "devServer", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "devServer");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createDevServerProperty));
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"devServer",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const devServerNode = utils.findRootNodesByName(j, ast, "devServer");
-			if (devServerNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"devServer"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (devServerNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"devServer"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return devServerTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_devtool_devtool.js.html b/docs/init_transformations_devtool_devtool.js.html deleted file mode 100644 index cd81f5572ec..00000000000 --- a/docs/init_transformations_devtool_devtool.js.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - JSDoc: Source: init/transformations/devtool/devtool.js - - - - - - - - - - -
- -

Source: init/transformations/devtool/devtool.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for devtool. Finds the devtool property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function devToolTransform(j, ast, webpackProperties, action) {
-	if (webpackProperties || typeof webpackProperties === "boolean") {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"devtool",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const devToolNode = utils.findRootNodesByName(j, ast, "devtool");
-			if (devToolNode.size() !== 0) {
-				return devToolNode.forEach(p => {
-					j(p).replaceWith(
-						j.property(
-							"init",
-							j.identifier("devtool"),
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-				});
-			} else {
-				return devToolTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_entry_entry.js.html b/docs/init_transformations_entry_entry.js.html index e1e5f59e805..82cd7f5797b 100644 --- a/docs/init_transformations_entry_entry.js.html +++ b/docs/init_transformations_entry_entry.js.html @@ -121,13 +121,13 @@

Source: init/transformations/entry/entry.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:06:30 GMT+0200 (CEST)
diff --git a/docs/init_transformations_externals_externals.js.html b/docs/init_transformations_externals_externals.js.html deleted file mode 100644 index 785588e2c73..00000000000 --- a/docs/init_transformations_externals_externals.js.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - JSDoc: Source: init/transformations/externals/externals.js - - - - - - - - - - -
- -

Source: init/transformations/externals/externals.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for externals. Finds the externals property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function externalsTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createExternalProperty(p) {
-		if (
-			webpackProperties instanceof RegExp ||
-			typeof webpackProperties === "string"
-		) {
-			return utils.pushCreateProperty(j, p, "externals", webpackProperties);
-		}
-		if (Array.isArray(webpackProperties)) {
-			const externalArray = utils.createArrayWithChildren(
-				j,
-				"externals",
-				webpackProperties,
-				true
-			);
-			return p.value.properties.push(externalArray);
-		} else {
-			utils.pushCreateProperty(j, p, "externals", j.objectExpression([]));
-			return utils.pushObjectKeys(j, p, webpackProperties, "externals");
-		}
-	}
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(
-					p =>
-						utils.safeTraverse(p, [
-							"parent",
-							"value",
-							"left",
-							"property",
-							"name"
-						]) === "exports"
-				)
-				.forEach(createExternalProperty);
-		} else if (action === "add") {
-			const externalNode = utils.findRootNodesByName(j, ast, "externals");
-			if (externalNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"externals"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							// need to check for every prop beneath, use the recursion util
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				externalNode.size() !== 0 &&
-				Array.isArray(webpackProperties)
-			) {
-				// Todo
-			} else if (externalNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"externals"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return externalsTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_index.js.html b/docs/init_transformations_index.js.html deleted file mode 100644 index 72a61810255..00000000000 --- a/docs/init_transformations_index.js.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - JSDoc: Source: init/transformations/index.js - - - - - - - - - - -
- -

Source: init/transformations/index.js

- - - - - - -
-
-
"use strict";
-
-const path = require("path");
-const j = require("jscodeshift");
-const chalk = require("chalk");
-const pEachSeries = require("p-each-series");
-
-const runPrettier = require("../../utils/run-prettier");
-
-const entryTransform = require("./entry/entry");
-const outputTransform = require("./output/output");
-const contextTransform = require("./context/context");
-const resolveTransform = require("./resolve/resolve");
-const devtoolTransform = require("./devtool/devtool");
-const targetTransform = require("./target/target");
-const watchTransform = require("./watch/watch");
-const watchOptionsTransform = require("./watch/watchOptions");
-const externalsTransform = require("./externals/externals");
-const nodeTransform = require("./node/node");
-const performanceTransform = require("./performance/performance");
-const statsTransform = require("./stats/stats");
-const amdTransform = require("./other/amd");
-const bailTransform = require("./other/bail");
-const cacheTransform = require("./other/cache");
-const profileTransform = require("./other/profile");
-const mergeTransform = require("./other/merge");
-const parallelismTransform = require("./other/parallelism");
-const recordsInputPathTransform = require("./other/recordsInputPath");
-const recordsOutputPathTransform = require("./other/recordsOutputPath");
-const recordsPathTransform = require("./other/recordsPath");
-const moduleTransform = require("./module/module");
-const pluginsTransform = require("./plugins/plugins");
-const topScopeTransform = require("./top-scope/top-scope");
-const devServerTransform = require("./devServer/devServer");
-const modeTransform = require("./mode/mode");
-const resolveLoaderTransform = require("./resolveLoader/resolveLoader");
-
-/**
- *
- * Runs the transformations from an object we get from yeoman
- *
- * @param {Object} webpackProperties - Configuration to transform
- * @param {String} action - Action to be done on the given ast
- * @returns {Promise} - A promise that writes each transform, runs prettier
- * and writes the file
- */
-
-const transformsObject = {
-	entryTransform,
-	outputTransform,
-	contextTransform,
-	resolveTransform,
-	devtoolTransform,
-	targetTransform,
-	watchTransform,
-	watchOptionsTransform,
-	externalsTransform,
-	nodeTransform,
-	performanceTransform,
-	statsTransform,
-	amdTransform,
-	bailTransform,
-	cacheTransform,
-	profileTransform,
-	moduleTransform,
-	pluginsTransform,
-	topScopeTransform,
-	mergeTransform,
-	devServerTransform,
-	modeTransform,
-	parallelismTransform,
-	recordsInputPathTransform,
-	recordsOutputPathTransform,
-	recordsPathTransform,
-	resolveLoaderTransform
-};
-
-module.exports = function runTransform(webpackProperties, action) {
-	// webpackOptions.name sent to nameTransform if match
-	const webpackConfig = action
-		? { config: webpackProperties.config }
-		: webpackProperties;
-	Object.keys(webpackConfig).forEach(scaffoldPiece => {
-		const config = webpackConfig[scaffoldPiece];
-		const transformations = Object.keys(transformsObject)
-			.map(k => {
-				const stringVal = k.substr(0, k.indexOf("Transform"));
-				if (config.webpackOptions) {
-					if (config.webpackOptions[stringVal]) {
-						return [transformsObject[k], config.webpackOptions[stringVal]];
-					} else {
-						return [transformsObject[k], config[stringVal]];
-					}
-				} else {
-					return [transformsObject[k]];
-				}
-			})
-			.filter(e => e[1]);
-
-		const ast = j(
-			action && action !== "init"
-				? webpackProperties.configFile
-				: "module.exports = {}"
-		);
-		const transformAction = action || null;
-
-		return pEachSeries(transformations, f => {
-			if (!f[1]) {
-				return f[0](j, ast, transformAction);
-			} else {
-				return f[0](j, ast, f[1], transformAction);
-			}
-		})
-			.then(_ => {
-				let configurationName;
-				if (!config.configName && action !== "init") {
-					configurationName = "webpack.config.js";
-				} else {
-					configurationName = "webpack." + config.configName + ".js";
-				}
-
-				const outputPath =
-					action && action !== "init"
-						? webpackProperties.configPath
-						: path.join(process.cwd(), configurationName);
-				const source = ast.toSource({
-					quote: "single"
-				});
-
-				runPrettier(outputPath, source);
-			})
-			.catch(err => {
-				console.error(err.message ? err.message : err);
-			});
-	});
-	if (action && webpackProperties.config.item) {
-		process.stdout.write(
-			"\n" +
-				chalk.green(
-					`Congratulations! ${
-						webpackProperties.config.item
-					} has been ${action}ed!\n`
-				)
-		);
-	} else {
-		process.stdout.write(
-			"\n" +
-				chalk.green(
-					"Congratulations! Your new webpack configuration file has been created!\n"
-				)
-		);
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sun Feb 25 2018 15:08:40 GMT+0100 (CET) -
- - - - - diff --git a/docs/init_transformations_mode_mode.js.html b/docs/init_transformations_mode_mode.js.html deleted file mode 100644 index 2a606d05a08..00000000000 --- a/docs/init_transformations_mode_mode.js.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - JSDoc: Source: init/transformations/mode/mode.js - - - - - - - - - - -
- -

Source: init/transformations/mode/mode.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for mode. Finds the mode property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function modeTransform(j, ast, webpackProperties, action) {
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"mode",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const modeNode = utils.findRootNodesByName(j, ast, "mode");
-			if (modeNode.size() !== 0) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"mode",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return modeTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_module_module.js.html b/docs/init_transformations_module_module.js.html deleted file mode 100644 index 503a055891e..00000000000 --- a/docs/init_transformations_module_module.js.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - JSDoc: Source: init/transformations/module/module.js - - - - - - - - - - -
- -

Source: init/transformations/module/module.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for module. Finds the module property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function moduleTransform(j, ast, webpackProperties, action) {
-	function createModuleProperty(p) {
-		if (typeof webpackProperties === "string") {
-			return utils.pushCreateProperty(j, p, "module", webpackProperties);
-		}
-		if (Array.isArray(webpackProperties)) {
-			const externalArray = utils.createArrayWithChildren(
-				j,
-				"module",
-				webpackProperties,
-				true
-			);
-			return p.value.properties.push(externalArray);
-		} else {
-			utils.pushCreateProperty(j, p, "module", j.objectExpression([]));
-			return utils.pushObjectKeys(j, p, webpackProperties, "module");
-		}
-	}
-	function editModuleProperty(p) {
-		return utils.pushObjectKeys(j, p, webpackProperties, "module", true);
-	}
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createModuleProperty));
-		} else if (action === "add") {
-			const moduleNode = utils.findRootNodesByName(j, ast, "module");
-			if (moduleNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p => utils.isAssignment(null, p, editModuleProperty));
-			} else if (moduleNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"module"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return moduleTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_node_node.js.html b/docs/init_transformations_node_node.js.html deleted file mode 100644 index 80fc0d2036b..00000000000 --- a/docs/init_transformations_node_node.js.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - JSDoc: Source: init/transformations/node/node.js - - - - - - - - - - -
- -

Source: init/transformations/node/node.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for node. Finds the node property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function nodeTransform(j, ast, webpackProperties, action) {
-	function createNodeProperty(p) {
-		utils.pushCreateProperty(j, p, "node", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "node");
-	}
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createNodeProperty));
-		} else if (action === "add") {
-			const nodeNode = utils.findRootNodesByName(j, ast, "node");
-			if (nodeNode.size() !== 0) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p => utils.pushObjectKeys(j, p, webpackProperties, "node"));
-			} else {
-				return nodeTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_optimization_optimization.js.html b/docs/init_transformations_optimization_optimization.js.html index b168574a367..241018f22a3 100644 --- a/docs/init_transformations_optimization_optimization.js.html +++ b/docs/init_transformations_optimization_optimization.js.html @@ -89,13 +89,13 @@

Source: init/transformations/optimization/optimization.js
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:06:30 GMT+0200 (CEST)
diff --git a/docs/init_transformations_other_amd.js.html b/docs/init_transformations_other_amd.js.html deleted file mode 100644 index bcb2c4a3dcd..00000000000 --- a/docs/init_transformations_other_amd.js.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/amd.js - - - - - - - - - - -
- -

Source: init/transformations/other/amd.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for amd. Finds the amd property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function amdTransform(j, ast, webpackProperties, action) {
-	function createAmdProperty(p) {
-		utils.pushCreateProperty(j, p, "amd", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "amd");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createAmdProperty));
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"amd",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const amdNode = utils.findRootNodesByName(j, ast, "amd");
-			if (amdNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"amd"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (amdNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"amd"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return amdTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_bail.js.html b/docs/init_transformations_other_bail.js.html deleted file mode 100644 index 755917fe5c9..00000000000 --- a/docs/init_transformations_other_bail.js.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/bail.js - - - - - - - - - - -
- -

Source: init/transformations/other/bail.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for bail. Finds the bail property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function bailTransform(j, ast, webpackProperties, action) {
-	if (webpackProperties || typeof webpackProperties === "boolean") {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"bail",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const bailNode = utils.findRootNodesByName(j, ast, "bail");
-			if (bailNode.size() !== 0) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"bail",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return bailTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_cache.js.html b/docs/init_transformations_other_cache.js.html deleted file mode 100644 index 24ed8f23c96..00000000000 --- a/docs/init_transformations_other_cache.js.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/cache.js - - - - - - - - - - -
- -

Source: init/transformations/other/cache.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for cache. Finds the cache property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function cacheTransform(j, ast, webpackProperties, action) {
-	function createCacheProperty(p) {
-		utils.pushCreateProperty(j, p, "cache", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "cache");
-	}
-	if (webpackProperties || typeof webpackProperties === "boolean") {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createCacheProperty));
-		} else if (
-			action === "init" &&
-			(webpackProperties.length || typeof webpackProperties === "boolean")
-		) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"cache",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const cacheNode = utils.findRootNodesByName(j, ast, "cache");
-			if (cacheNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"cache"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				cacheNode.size() !== 0 &&
-				(typeof webpackProperties === "boolean" || webpackProperties.length > 0)
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"cache",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return cacheTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_merge.js.html b/docs/init_transformations_other_merge.js.html deleted file mode 100644 index 8f28243dc4e..00000000000 --- a/docs/init_transformations_other_merge.js.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/merge.js - - - - - - - - - - -
- -

Source: init/transformations/other/merge.js

- - - - - - -
-
-
"use strict";
-
-/**
- *
- * Transform for merge. Finds the merge property from yeoman and creates a way
- * for users to allow webpack-merge in their scaffold
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function(j, ast, webpackProperties, action) {
-	function createMergeProperty(p) {
-		// FIXME Use j.callExp()
-		let exportsDecl = p.value.body.map(n => {
-			if (n.expression) {
-				return n.expression.right;
-			}
-		});
-		const bodyLength = exportsDecl.length;
-		let newVal = {};
-		newVal.type = "ExpressionStatement";
-		newVal.expression = {
-			type: "AssignmentExpression",
-			operator: "=",
-			left: {
-				type: "MemberExpression",
-				computed: false,
-				object: j.identifier("module"),
-				property: j.identifier("exports")
-			},
-			right: j.callExpression(j.identifier("merge"), [
-				j.identifier(webpackProperties),
-				exportsDecl.pop()
-			])
-		};
-		p.value.body[bodyLength - 1] = newVal;
-	}
-	if (webpackProperties) {
-		return ast.find(j.Program).filter(p => createMergeProperty(p));
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_parallelism.js.html b/docs/init_transformations_other_parallelism.js.html deleted file mode 100644 index 5ae36e96d1d..00000000000 --- a/docs/init_transformations_other_parallelism.js.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/parallelism.js - - - - - - - - - - -
- -

Source: init/transformations/other/parallelism.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for parallelism. Finds the parallelism property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function parallelismTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"parallelism",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const parallelismNode = utils.findRootNodesByName(j, ast, "parallelism");
-			if (parallelismNode.size() !== 0) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"parallelism",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return parallelismTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_profile.js.html b/docs/init_transformations_other_profile.js.html deleted file mode 100644 index d62b66c0943..00000000000 --- a/docs/init_transformations_other_profile.js.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/profile.js - - - - - - - - - - -
- -

Source: init/transformations/other/profile.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for profile. Finds the profile property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function profileTransform(j, ast, webpackProperties, action) {
-	function createProfileProperty(p) {
-		utils.pushCreateProperty(j, p, "profile", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "profile");
-	}
-	if (webpackProperties || typeof webpackProperties === "boolean") {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createProfileProperty));
-		} else if (
-			action === "init" &&
-			(webpackProperties.length || typeof webpackProperties === "boolean")
-		) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"profile",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const profileNode = utils.findRootNodesByName(j, ast, "profile");
-			if (profileNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"profile"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				profileNode.size() !== 0 &&
-				(typeof webpackProperties === "boolean" || webpackProperties.length > 0)
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"profile",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return profileTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_recordsInputPath.js.html b/docs/init_transformations_other_recordsInputPath.js.html deleted file mode 100644 index cf58c36088f..00000000000 --- a/docs/init_transformations_other_recordsInputPath.js.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/recordsInputPath.js - - - - - - - - - - -
- -

Source: init/transformations/other/recordsInputPath.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for recordsInputPath. Finds the recordsInputPath property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function recordsInputPathTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createRecordsInputPathProperty(p) {
-		utils.pushCreateProperty(j, p, "recordsInputPath", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "recordsInputPath");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(null, p, createRecordsInputPathProperty)
-				);
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"recordsInputPath",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const recordsInputPathNode = utils.findRootNodesByName(
-				j,
-				ast,
-				"recordsInputPath"
-			);
-			if (
-				recordsInputPathNode.size() !== 0 &&
-				typeof webpackProperties === "object"
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"recordsInputPath"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				recordsInputPathNode.size() !== 0 &&
-				webpackProperties.length > 0
-			) {
-				return utils
-					.findRootNodesByName(j, ast, "recordsInputPath")
-					.forEach(p => {
-						j(p).replaceWith(
-							j.property(
-								"init",
-								utils.createIdentifierOrLiteral(j, "recordsInputPath"),
-								utils.createIdentifierOrLiteral(j, webpackProperties)
-							)
-						);
-					});
-			} else {
-				return recordsInputPathTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_recordsOutputPath.js.html b/docs/init_transformations_other_recordsOutputPath.js.html deleted file mode 100644 index 8f42c004cda..00000000000 --- a/docs/init_transformations_other_recordsOutputPath.js.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/recordsOutputPath.js - - - - - - - - - - -
- -

Source: init/transformations/other/recordsOutputPath.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for recordsOutputPath. Finds the recordsOutputPath property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function recordsOutputPathTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createRecordsOutputPathProperty(p) {
-		utils.pushCreateProperty(j, p, "recordsOutputPath", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "recordsOutputPath");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(null, p, createRecordsOutputPathProperty)
-				);
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"recordsOutputPath",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const recordsOutputPathNode = utils.findRootNodesByName(
-				j,
-				ast,
-				"recordsOutputPath"
-			);
-			if (
-				recordsOutputPathNode.size() !== 0 &&
-				typeof webpackProperties === "object"
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"recordsOutputPath"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				recordsOutputPathNode.size() !== 0 &&
-				webpackProperties.length > 0
-			) {
-				return utils
-					.findRootNodesByName(j, ast, "recordsOutputPath")
-					.forEach(p => {
-						j(p).replaceWith(
-							j.property(
-								"init",
-								utils.createIdentifierOrLiteral(j, "recordsOutputPath"),
-								utils.createIdentifierOrLiteral(j, webpackProperties)
-							)
-						);
-					});
-			} else {
-				return recordsOutputPathTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_other_recordsPath.js.html b/docs/init_transformations_other_recordsPath.js.html deleted file mode 100644 index 2be485e10aa..00000000000 --- a/docs/init_transformations_other_recordsPath.js.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - JSDoc: Source: init/transformations/other/recordsPath.js - - - - - - - - - - -
- -

Source: init/transformations/other/recordsPath.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for recordsPath. Finds the recordsPath property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function recordsPathTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createRecordsPathProperty(p) {
-		utils.pushCreateProperty(j, p, "recordsPath", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "recordsPath");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createRecordsPathProperty));
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"recordsPath",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const recordsPathNode = utils.findRootNodesByName(j, ast, "recordsPath");
-			if (
-				recordsPathNode.size() !== 0 &&
-				typeof webpackProperties === "object"
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"recordsPath"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (recordsPathNode.size() !== 0 && webpackProperties.length > 0) {
-				return recordsPathNode.forEach(p => {
-					j(p).replaceWith(
-						j.property(
-							"init",
-							utils.createIdentifierOrLiteral(j, "recordsPath"),
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-				});
-			} else {
-				return recordsPathTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_output_output.js.html b/docs/init_transformations_output_output.js.html deleted file mode 100644 index 9b8de944778..00000000000 --- a/docs/init_transformations_output_output.js.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - JSDoc: Source: init/transformations/output/output.js - - - - - - - - - - -
- -

Source: init/transformations/output/output.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for output. Finds the output property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function outputTransform(j, ast, webpackProperties, action) {
-	function createOutputProperty(p) {
-		utils.pushCreateProperty(j, p, "output", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "output");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createOutputProperty));
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"output",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const outputNode = utils.findRootNodesByName(j, ast, "output");
-			if (outputNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"output"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (outputNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"output"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return outputTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_performance_performance.js.html b/docs/init_transformations_performance_performance.js.html deleted file mode 100644 index 8a4e3f05fce..00000000000 --- a/docs/init_transformations_performance_performance.js.html +++ /dev/null @@ -1,143 +0,0 @@ - - - - - JSDoc: Source: init/transformations/performance/performance.js - - - - - - - - - - -
- -

Source: init/transformations/performance/performance.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for performance. Finds the performance property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function performanceTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createPerformanceProperty(p) {
-		utils.pushCreateProperty(j, p, "performance", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "performance");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createPerformanceProperty));
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"performance",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const performanceNode = utils.findRootNodesByName(j, ast, "performance");
-			if (
-				performanceNode.size() !== 0 &&
-				typeof webpackProperties === "object"
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"performance"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (performanceNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"performance"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return performanceTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_plugins_plugins.js.html b/docs/init_transformations_plugins_plugins.js.html deleted file mode 100644 index c73b3b337ac..00000000000 --- a/docs/init_transformations_plugins_plugins.js.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - JSDoc: Source: init/transformations/plugins/plugins.js - - - - - - - - - - -
- -

Source: init/transformations/plugins/plugins.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for plugins. Finds the plugins property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function pluginsTransform(j, ast, webpackProperties, action) {
-	function createPluginsProperty(p) {
-		const pluginArray = utils.createArrayWithChildren(
-			j,
-			"plugins",
-			webpackProperties,
-			true
-		);
-		return p.value.properties.push(pluginArray);
-	}
-	if (webpackProperties) {
-		if (Array.isArray(webpackProperties) && action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createPluginsProperty));
-		} else if (action === "add") {
-			const pluginsNode = utils.findRootNodesByName(j, ast, "plugins");
-			if (pluginsNode.size() !== 0) {
-				return pluginsNode.filter(p => {
-					let node = utils.createFunctionWithArguments(j, p, webpackProperties);
-					if (node) {
-						p.value.value.elements.push(node);
-					} else {
-						return null;
-					}
-				});
-			} else {
-				return pluginsTransform(j, ast, [webpackProperties], "init");
-			}
-		} else if (action === "remove") {
-			return utils
-				.findRootNodesByName(j, ast, "plugins")
-				.filter(p =>
-					p.value.value.elements.filter(name => name !== webpackProperties)
-				);
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_resolveLoader_resolveLoader.js.html b/docs/init_transformations_resolveLoader_resolveLoader.js.html deleted file mode 100644 index b144df1a8ca..00000000000 --- a/docs/init_transformations_resolveLoader_resolveLoader.js.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - JSDoc: Source: init/transformations/resolveLoader/resolveLoader.js - - - - - - - - - - -
- -

Source: init/transformations/resolveLoader/resolveLoader.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for resolveLoader. Finds the resolveLoader property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function resolveLoaderTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createResolveLoaderProperty(p) {
-		if (typeof webpackProperties === "string") {
-			return utils.pushCreateProperty(j, p, "resolveLoader", webpackProperties);
-		}
-		if (Array.isArray(webpackProperties)) {
-			const externalArray = utils.createArrayWithChildren(
-				j,
-				"resolveLoader",
-				webpackProperties,
-				true
-			);
-			return p.value.properties.push(externalArray);
-		} else {
-			utils.pushCreateProperty(j, p, "resolveLoader", j.objectExpression([]));
-			return utils.pushObjectKeys(j, p, webpackProperties, "resolveLoader");
-		}
-	}
-	function editResolveLoaderProperty(p) {
-		return utils.pushObjectKeys(j, p, webpackProperties, "resolveLoader", true);
-	}
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createResolveLoaderProperty));
-		} else if (action === "add") {
-			const resolveLoaderNode = utils.findRootNodesByName(
-				j,
-				ast,
-				"resolveLoader"
-			);
-			if (
-				resolveLoaderNode.size() !== 0 &&
-				typeof webpackProperties === "object"
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p => utils.isAssignment(null, p, editResolveLoaderProperty));
-			} else if (resolveLoaderNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"resolveLoader"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return resolveLoaderTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_resolve_resolve.js.html b/docs/init_transformations_resolve_resolve.js.html deleted file mode 100644 index 86d89af1495..00000000000 --- a/docs/init_transformations_resolve_resolve.js.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - JSDoc: Source: init/transformations/resolve/resolve.js - - - - - - - - - - -
- -

Source: init/transformations/resolve/resolve.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for resolve. Finds the resolve property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function resolveTransform(j, ast, webpackProperties, action) {
-	function createResolveProperty(p) {
-		if (typeof webpackProperties === "string") {
-			return utils.pushCreateProperty(j, p, "resolve", webpackProperties);
-		}
-		if (Array.isArray(webpackProperties)) {
-			const externalArray = utils.createArrayWithChildren(
-				j,
-				"resolve",
-				webpackProperties,
-				true
-			);
-			return p.value.properties.push(externalArray);
-		} else {
-			utils.pushCreateProperty(j, p, "resolve", j.objectExpression([]));
-			return utils.pushObjectKeys(j, p, webpackProperties, "resolve");
-		}
-	}
-	function editResolveProperty(p) {
-		return utils.pushObjectKeys(j, p, webpackProperties, "resolve", true);
-	}
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createResolveProperty));
-		} else if (action === "add") {
-			const resolveNode = utils.findRootNodesByName(j, ast, "resolve");
-			if (resolveNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p => utils.isAssignment(null, p, editResolveProperty));
-			} else if (resolveNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"resolve"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return resolveTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_stats_stats.js.html b/docs/init_transformations_stats_stats.js.html deleted file mode 100644 index 5b6f706838d..00000000000 --- a/docs/init_transformations_stats_stats.js.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - JSDoc: Source: init/transformations/stats/stats.js - - - - - - - - - - -
- -

Source: init/transformations/stats/stats.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for stats. Finds the stats property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function statsTransform(j, ast, webpackProperties, action) {
-	function createStatsProperty(p) {
-		utils.pushCreateProperty(j, p, "stats", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "stats");
-	}
-	if (webpackProperties) {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createStatsProperty));
-		} else if (action === "init" && webpackProperties.length) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"stats",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const statsNode = utils.findRootNodesByName(j, ast, "stats");
-			if (statsNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"stats"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (statsNode.size() !== 0 && webpackProperties.length) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"stats"
-					)
-					.forEach(p => {
-						j(p).replaceWith(
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						);
-					});
-			} else {
-				return statsTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_target_target.js.html b/docs/init_transformations_target_target.js.html deleted file mode 100644 index 6fdac2bae84..00000000000 --- a/docs/init_transformations_target_target.js.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - JSDoc: Source: init/transformations/target/target.js - - - - - - - - - - -
- -

Source: init/transformations/target/target.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for target. Finds the target property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function targetTransform(j, ast, webpackProperties, action) {
-	if (webpackProperties) {
-		if (action === "init") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"target",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const targetNode = utils.findRootNodesByName(j, ast, "target");
-			if (targetNode.size() !== 0) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"target",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return targetTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_top-scope_top-scope.js.html b/docs/init_transformations_top-scope_top-scope.js.html deleted file mode 100644 index 6a258b65abd..00000000000 --- a/docs/init_transformations_top-scope_top-scope.js.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - JSDoc: Source: init/transformations/top-scope/top-scope.js - - - - - - - - - - -
- -

Source: init/transformations/top-scope/top-scope.js

- - - - - - -
-
-
/**
- *
- * Get an property named topScope from yeoman and inject it to the top scope of
- * the config, outside module.exports
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function(j, ast, webpackProperties, action) {
-	function createTopScopeProperty(p) {
-		webpackProperties.forEach(n => {
-			if (
-				!p.value.body[0].declarations ||
-				n.indexOf(p.value.body[0].declarations[0].id.name) <= 0
-			) {
-				p.value.body.splice(-1, 0, n);
-			}
-		});
-	}
-	if (webpackProperties) {
-		return ast.find(j.Program).filter(p => createTopScopeProperty(p));
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_watch_watch.js.html b/docs/init_transformations_watch_watch.js.html deleted file mode 100644 index c1c0c657542..00000000000 --- a/docs/init_transformations_watch_watch.js.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - JSDoc: Source: init/transformations/watch/watch.js - - - - - - - - - - -
- -

Source: init/transformations/watch/watch.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for watch. Finds the watch property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function watchTransform(j, ast, webpackProperties, action) {
-	function createWatchProperty(p) {
-		utils.pushCreateProperty(j, p, "watch", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "watch");
-	}
-	if (webpackProperties || typeof webpackProperties === "boolean") {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createWatchProperty));
-		} else if (action === "init" && typeof webpackProperties === "boolean") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"watch",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const watchNode = utils.findRootNodesByName(j, ast, "watch");
-			if (watchNode.size() !== 0 && typeof webpackProperties === "object") {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"watch"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				watchNode.size() !== 0 &&
-				(webpackProperties.length || typeof webpackProperties === "boolean")
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"watch",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return watchTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/init_transformations_watch_watchOptions.js.html b/docs/init_transformations_watch_watchOptions.js.html deleted file mode 100644 index 0d89a3ae803..00000000000 --- a/docs/init_transformations_watch_watchOptions.js.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - JSDoc: Source: init/transformations/watch/watchOptions.js - - - - - - - - - - -
- -

Source: init/transformations/watch/watchOptions.js

- - - - - - -
-
-
"use strict";
-
-const utils = require("../../../utils/ast-utils");
-
-/**
- *
- * Transform for watchOptions. Finds the watchOptions property from yeoman and creates a
- * property based on what the user has given us.
- *
- * @param j — jscodeshift API
- * @param ast - jscodeshift API
- * @param {any} webpackProperties - transformation object to scaffold
- * @param {String} action - action that indicates what to be done to the AST
- * @returns ast - jscodeshift API
- */
-
-module.exports = function watchOptionsTransform(
-	j,
-	ast,
-	webpackProperties,
-	action
-) {
-	function createWatchOptionsProperty(p) {
-		utils.pushCreateProperty(j, p, "watchOptions", j.objectExpression([]));
-		return utils.pushObjectKeys(j, p, webpackProperties, "watchOptions");
-	}
-	if (webpackProperties || typeof webpackProperties === "boolean") {
-		if (action === "init" && typeof webpackProperties === "object") {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p => utils.isAssignment(null, p, createWatchOptionsProperty));
-		} else if (
-			action === "init" &&
-			(webpackProperties.length || typeof webpackProperties === "boolean")
-		) {
-			return ast
-				.find(j.ObjectExpression)
-				.filter(p =>
-					utils.isAssignment(
-						j,
-						p,
-						utils.pushCreateProperty,
-						"watchOptions",
-						webpackProperties
-					)
-				);
-		} else if (action === "add") {
-			const watchOptionsNode = utils.findRootNodesByName(
-				j,
-				ast,
-				"watchOptions"
-			);
-			if (
-				watchOptionsNode.size() !== 0 &&
-				typeof webpackProperties === "object"
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(
-						p =>
-							utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) ===
-							"watchOptions"
-					)
-					.filter(p => {
-						Object.keys(webpackProperties).forEach(prop => {
-							utils.checkIfExistsAndAddValue(
-								j,
-								p,
-								prop,
-								utils.createIdentifierOrLiteral(j, webpackProperties[prop])
-							);
-						});
-						return ast;
-					});
-			} else if (
-				watchOptionsNode.size() !== 0 &&
-				(typeof webpackProperties === "boolean" || webpackProperties.length > 0)
-			) {
-				return ast
-					.find(j.ObjectExpression)
-					.filter(p =>
-						utils.checkIfExistsAndAddValue(
-							j,
-							p,
-							"watchOptions",
-							utils.createIdentifierOrLiteral(j, webpackProperties)
-						)
-					);
-			} else {
-				return watchOptionsTransform(j, ast, webpackProperties, "init");
-			}
-		} else if (action === "remove") {
-			// TODO
-		} else if (action === "update") {
-			// TODO
-		}
-	} else {
-		return ast;
-	}
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) -
- - - - - diff --git a/docs/migrate_bannerPlugin_bannerPlugin.js.html b/docs/migrate_bannerPlugin_bannerPlugin.js.html index ec6984fc98e..9728313acce 100644 --- a/docs/migrate_bannerPlugin_bannerPlugin.js.html +++ b/docs/migrate_bannerPlugin_bannerPlugin.js.html @@ -69,13 +69,13 @@

Source: migrate/bannerPlugin/bannerPlugin.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_extractTextPlugin_extractTextPlugin.js.html b/docs/migrate_extractTextPlugin_extractTextPlugin.js.html index ef12dc949e5..0318e8d9caf 100644 --- a/docs/migrate_extractTextPlugin_extractTextPlugin.js.html +++ b/docs/migrate_extractTextPlugin_extractTextPlugin.js.html @@ -94,13 +94,13 @@

Source: migrate/extractTextPlugin/extractTextPlugin.js
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_index.js.html b/docs/migrate_index.js.html index 7bcc427d265..5930b3dc5a7 100644 --- a/docs/migrate_index.js.html +++ b/docs/migrate_index.js.html @@ -117,13 +117,13 @@

Source: migrate/index.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_loaderOptionsPlugin_loaderOptionsPlugin.js.html b/docs/migrate_loaderOptionsPlugin_loaderOptionsPlugin.js.html index 516b2b107cb..7763b10c081 100644 --- a/docs/migrate_loaderOptionsPlugin_loaderOptionsPlugin.js.html +++ b/docs/migrate_loaderOptionsPlugin_loaderOptionsPlugin.js.html @@ -84,13 +84,13 @@

Source: migrate/loaderOptionsPlugin/loaderOptionsPlugin.j
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_loaders_loaders.js.html b/docs/migrate_loaders_loaders.js.html index b1c6e5fabdf..cadf51eca57 100644 --- a/docs/migrate_loaders_loaders.js.html +++ b/docs/migrate_loaders_loaders.js.html @@ -415,13 +415,13 @@

Source: migrate/loaders/loaders.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_moduleConcatenationPlugin_moduleConcatenationPlugin.js.html b/docs/migrate_moduleConcatenationPlugin_moduleConcatenationPlugin.js.html index 610d0507df3..71fd6b979b6 100644 --- a/docs/migrate_moduleConcatenationPlugin_moduleConcatenationPlugin.js.html +++ b/docs/migrate_moduleConcatenationPlugin_moduleConcatenationPlugin.js.html @@ -70,13 +70,13 @@

Source: migrate/moduleConcatenationPlugin/moduleConcatena
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_namedModulesPlugin_namedModulesPlugin.js.html b/docs/migrate_namedModulesPlugin_namedModulesPlugin.js.html index 37ac7bdb90f..8402441f47a 100644 --- a/docs/migrate_namedModulesPlugin_namedModulesPlugin.js.html +++ b/docs/migrate_namedModulesPlugin_namedModulesPlugin.js.html @@ -66,13 +66,13 @@

Source: migrate/namedModulesPlugin/namedModulesPlugin.js<
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_noEmitOnErrorsPlugin_noEmitOnErrorsPlugin.js.html b/docs/migrate_noEmitOnErrorsPlugin_noEmitOnErrorsPlugin.js.html index 7609cf95a72..0119f928f2b 100644 --- a/docs/migrate_noEmitOnErrorsPlugin_noEmitOnErrorsPlugin.js.html +++ b/docs/migrate_noEmitOnErrorsPlugin_noEmitOnErrorsPlugin.js.html @@ -70,13 +70,13 @@

Source: migrate/noEmitOnErrorsPlugin/noEmitOnErrorsPlugin
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_outputPath_outputPath.js.html b/docs/migrate_outputPath_outputPath.js.html index a9674c87235..fee4b3690fc 100644 --- a/docs/migrate_outputPath_outputPath.js.html +++ b/docs/migrate_outputPath_outputPath.js.html @@ -110,13 +110,13 @@

Source: migrate/outputPath/outputPath.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_removeDeprecatedPlugins_removeDeprecatedPlugins.js.html b/docs/migrate_removeDeprecatedPlugins_removeDeprecatedPlugins.js.html index 81d91c6e670..4230110f445 100644 --- a/docs/migrate_removeDeprecatedPlugins_removeDeprecatedPlugins.js.html +++ b/docs/migrate_removeDeprecatedPlugins_removeDeprecatedPlugins.js.html @@ -80,13 +80,13 @@

Source: migrate/removeDeprecatedPlugins/removeDeprecatedP
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_removeJsonLoader_removeJsonLoader.js.html b/docs/migrate_removeJsonLoader_removeJsonLoader.js.html index 88672e00894..252d79b2703 100644 --- a/docs/migrate_removeJsonLoader_removeJsonLoader.js.html +++ b/docs/migrate_removeJsonLoader_removeJsonLoader.js.html @@ -105,13 +105,13 @@

Source: migrate/removeJsonLoader/removeJsonLoader.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_resolve_resolve.js.html b/docs/migrate_resolve_resolve.js.html index ce966e29421..e48738dab5c 100644 --- a/docs/migrate_resolve_resolve.js.html +++ b/docs/migrate_resolve_resolve.js.html @@ -108,13 +108,13 @@

Source: migrate/resolve/resolve.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/migrate_uglifyJsPlugin_uglifyJsPlugin.js.html b/docs/migrate_uglifyJsPlugin_uglifyJsPlugin.js.html index 4e8681d72dd..4221dbf1c69 100644 --- a/docs/migrate_uglifyJsPlugin_uglifyJsPlugin.js.html +++ b/docs/migrate_uglifyJsPlugin_uglifyJsPlugin.js.html @@ -26,11 +26,23 @@

Source: migrate/uglifyJsPlugin/uglifyJsPlugin.js

-
const findPluginsByName = require("../../utils/ast-utils").findPluginsByName;
+            
const {
+	findPluginsByName,
+	safeTraverse,
+	createProperty,
+	addProperty,
+	getRequire,
+	findPluginsArrayAndRemoveIfEmpty
+} = require("../../utils/ast-utils");
 
 /**
  *
- * Transform which adds a `sourceMap: true` option to instantiations of the UglifyJsPlugin
+ * Transform which:
+ * - Removes UglifyWebpackPlugin from plugins array, if no options is passed to the plugin.
+ *	 and adds `optimization.minimize: true` to config
+ *
+ * - If any configuration is passed to UglifyWebpackPlugin
+ *   plugin instantiation is moved to `optimization.minimizer`.
  *
  * @param {Object} j - jscodeshift top-level import
  * @param {Node} ast - jscodeshift ast to transform
@@ -38,26 +50,75 @@ 

Source: migrate/uglifyJsPlugin/uglifyJsPlugin.js

*/ module.exports = function(j, ast) { - function createSourceMapsProperty() { - return j.property("init", j.identifier("sourceMap"), j.identifier("true")); - } - - return findPluginsByName(j, ast, ["webpack.optimize.UglifyJsPlugin"]).forEach( - path => { - const args = path.value.arguments; - - if (args.length) { - // Plugin is called with object as arguments - j(path) - .find(j.ObjectExpression) - .get("properties") - .value.push(createSourceMapsProperty()); + let pluginVariableAssignment; + + const searchForRequirePlugin = ast + .find(j.VariableDeclarator) + .filter(j.filters.VariableDeclarator.requiresModule("uglifyjs-webpack-plugin")); + + /** + * Look for a variable declaration which requires uglifyjs-webpack-plugin + * saves the name of this variable. + */ + searchForRequirePlugin.forEach(node => { + pluginVariableAssignment = node.value.id.name; + }); + + pluginVariableAssignment = !pluginVariableAssignment ? "webpack.optimize.UglifyJsPlugin" : pluginVariableAssignment; + + findPluginsByName(j, ast, [pluginVariableAssignment]).forEach(node => { + let expressionContent; + const configBody = safeTraverse(node, ["parent", "parent", "parent"]); + + // options passed to plugin + const pluginOptions = node.value.arguments; + + /** + * check if there are any options passed to UglifyWebpackPlugin + * If so, they are moved to optimization.minimizer. + * Otherwise, rely on default options + */ + if (pluginOptions.length) { + /* + * If user is using UglifyJsPlugin directly from webpack + * transformation must: + * - remove it + * - add require for uglify-webpack-plugin + * - add to minimizer + */ + if (pluginVariableAssignment.includes("webpack")) { + // create require for uglify-webpack-plugin + const pathRequire = getRequire(j, "UglifyJsPlugin", "uglifyjs-webpack-plugin"); + // append to source code. + ast.find(j.Program).replaceWith(p => j.program([].concat(pathRequire).concat(p.value.body))); + + expressionContent = j.property( + "init", + j.identifier("minimizer"), + j.arrayExpression([j.newExpression(j.identifier("UglifyJsPlugin"), [pluginOptions[0]])]) + ); } else { - // Plugin is called without arguments - args.push(j.objectExpression([createSourceMapsProperty()])); + expressionContent = j.property("init", j.identifier("minimizer"), j.arrayExpression([node.value])); } + } else { + searchForRequirePlugin.forEach(node => j(node).remove()); + } + + const minimizeProperty = createProperty(j, "minimize", "true"); + // creates optimization property at the body of the config. + if(expressionContent) { + configBody.value.properties.push(j.property("init", j.identifier("optimization"), j.objectExpression([minimizeProperty, expressionContent]))) + } else { + configBody.value.properties.push(j.property("init", j.identifier("optimization"), j.objectExpression([minimizeProperty]))) } - ); + + // remove the old Uglify plugin from Plugins array. + j(node).remove(); + }); + + findPluginsArrayAndRemoveIfEmpty(j, ast); + + return ast; };
@@ -69,13 +130,13 @@

Source: migrate/uglifyJsPlugin/uglifyJsPlugin.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_ast-utils.js.html b/docs/utils_ast-utils.js.html index 92b470688dd..6ad7c39cf82 100644 --- a/docs/utils_ast-utils.js.html +++ b/docs/utils_ast-utils.js.html @@ -26,8 +26,7 @@

Source: utils/ast-utils.js

-
const hashtable = require("./hashtable");
-const validateIdentifier = require("./validate-identifier");
+            
const validateIdentifier = require("./validate-identifier");
 
 function safeTraverse(obj, paths) {
 	let val = obj;
@@ -89,6 +88,23 @@ 

Source: utils/ast-utils.js

}); } + +/** + * It lookouts for the plugins property and, if the array is empty, it removes it from the AST + * @param {any} j - jscodeshift API + * @param {Node} rootNode - node to start search from + * @returns {Node} rootNode modified AST. + */ + +function findPluginsArrayAndRemoveIfEmpty(j, rootNode) { + return rootNode.find(j.Identifier, { name: "plugins" }).forEach((node) => { + const elements = safeTraverse(node, ["parent", "value", "value", "elements"]); + if (!elements.length) { + j(node.parent).remove(); + } + }); +} + /** * * Finds the path to the `name: []` node @@ -173,9 +189,9 @@

Source: utils/ast-utils.js

literalVal = Number(val); return j.literal(literalVal); } - if (val.__paths) { - return createExternalRegExp(j, val); + let regExpVal = val.__paths[0].value.program.body[0].expression; + return j.literal(regExpVal.value); } else { // Use identifier instead if (!validateIdentifier.isKeyword(literalVal) || !validateIdentifier.isIdentifierStart(literalVal) || !validateIdentifier.isIdentifierChar(literalVal)) @@ -381,372 +397,58 @@

Source: utils/ast-utils.js

/** * - * If a prop exists, it overrides it, else it creates a new one + * Recursively adds an object/property to a node * @param {any} j — jscodeshift API - * @param {Node} node - objectexpression to check - * @param {String} key - Key of the property - * @param {String} value - computed value of the property - * @returns {Void} + * @param {Node} p - AST node + * @param {String} key - key of a key/val object + * @param {Any} value - Any type of object + * @returns {Node} - the created ast */ -function checkIfExistsAndAddValue(j, node, key, value) { - const existingProp = node.value.properties.filter( - prop => prop.key.name === key - ); - let prop; - if (existingProp.length > 0) { - prop = existingProp[0]; - prop.value = value; - } else { - prop = j.property("init", j.identifier(key), value); - node.value.properties.push(prop); +function addProperty(j, p, key, value) { + let valForNode; + if (!p) { + return; } -} - -/** - * - * Creates an empty array - * @param {any} j — jscodeshift API - * @param {String} key - array name - * @returns {Array} arr - An empty array - */ -function createEmptyArrayProperty(j, key) { - return j.property("init", j.identifier(key), j.arrayExpression([])); -} - -/** - * - * Creates an array and iterates on an object with properties - * - * @param {any} j — jscodeshift API - * @param {String} key - object name - * @param {String} subProps - computed value of the property - * @param {Boolean} shouldDropKeys - bool to ask to use obj.keys or not - * @returns {Array} arr - An array with the object properties - */ - -function createArrayWithChildren(j, key, subProps, shouldDropKeys) { - let arr = createEmptyArrayProperty(j, key); - if (shouldDropKeys) { - subProps.forEach(subProperty => { - let objectOfArray = j.objectExpression([]); - if (typeof subProperty !== "string") { - loopThroughObjects(j, objectOfArray, subProperty); - arr.value.elements.push(objectOfArray); - } else { - return arr.value.elements.push( - createIdentifierOrLiteral(j, subProperty) - ); - } + if (Array.isArray(value)) { + const arr = j.arrayExpression([]); + value.filter(val => val).forEach(val => { + addProperty(j, arr, null, val); }); - } else { - Object.keys(subProps[key]).forEach(subProperty => { - arr.value.elements.push( - createIdentifierOrLiteral(j, subProps[key][subProperty]) - ); + valForNode = arr; + } else if ( + typeof value === "object" && + !(value.__paths || value instanceof RegExp) + ) { + // object -> loop through it + let objectExp = j.objectExpression([]); + Object.keys(value).forEach(prop => { + addProperty(j, objectExp, prop, value[prop]); }); + valForNode = objectExp; + } else { + valForNode = createIdentifierOrLiteral(j, value); } - return arr; -} - -/** - * - * Loops through an object and adds property to an object with no identifier - * @param {any} j — jscodeshift API - * @param {Node} p - node to add value to - * @param {Object} obj - Object to loop through - * @returns {Function | Node} - Either pushes the node, or reruns until - * nothing is left - */ - -function loopThroughObjects(j, p, obj) { - Object.keys(obj).forEach(prop => { - if (prop.indexOf("inject") >= 0) { - // TODO to insert the type of node, identifier or literal - const propertyExpression = createIdentifierOrLiteral(j, obj[prop]); - return p.properties.push(propertyExpression); - } - // eslint-disable-next-line no-irregular-whitespace - if (typeof obj[prop] !== "object" || obj[prop] instanceof RegExp) { - p.properties.push( - createObjectWithSuppliedProperty( - j, - prop, - createIdentifierOrLiteral(j, obj[prop]) - ) - ); - } else if (Array.isArray(obj[prop])) { - let arrayProp = createArrayWithChildren(j, prop, obj[prop], true); - p.properties.push(arrayProp); - } else { - let objectBlock = j.objectExpression([]); - let propertyOfBlock = createObjectWithSuppliedProperty( - j, - prop, - objectBlock - ); - loopThroughObjects(j, objectBlock, obj[prop]); - p.properties.push(propertyOfBlock); - } - }); -} - -/** - * - * Creates an object with an supplied property as parameter - * - * @param {any} j — jscodeshift API - * @param {String} key - object name - * @param {Node} prop - property to be added - * @returns {Node} - An property with the supplied property - */ - -function createObjectWithSuppliedProperty(j, key, prop) { - return j.property("init", j.identifier(key), prop); -} - -/** - * - * Finds a regexp property with an already parsed AST from the user - * @param {any} j — jscodeshift API - * @param {String} prop - property to find the value at - * @returns {Node} - A literal node with the found regexp - */ - -function createExternalRegExp(j, prop) { - let regExpProp = prop.__paths[0].value.program.body[0].expression; - return j.literal(regExpProp.value); -} - -/** - * - * Creates a property and pushes the value to a node - * - * @param {any} j — jscodeshift API - * @param {Node} p - Node to push against - * @param {String} key - key used as identifier - * @param {String} val - property value - * @returns {Node} - Returns node the pushed property - */ - -function pushCreateProperty(j, p, key, val) { - let property; - const findProp = findRootNodesByName(j, j(p), key); - if (findProp.size()) { - findProp.filter(p => { - p.value.value = createIdentifierOrLiteral(j, val); - }); + let pushVal; + if (key) { + pushVal = j.property("init", j.identifier(key), valForNode); } else { - if (val.hasOwnProperty("type")) { - property = val; - } else { - property = createIdentifierOrLiteral(j, val); - } - return p.value.properties.push( - createObjectWithSuppliedProperty(j, key, property) - ); + pushVal = valForNode; } -} - -/** - * - * @param {any} j — jscodeshift API - * @param {Node} p - path to push - * @param {Object} webpackProperties - The object to loop over - * @param {String} name - Key that will be the identifier we find and add values to - * @returns {Node | Function} Returns a function that will push a node if - * subProperty is an array, else it will invoke a function that will push a single node - */ - -function pushObjectKeys(j, p, webpackProperties, name, reassign) { - p.value.properties - .filter(n => safeTraverse(n, ["key", "name"]) === name) - .forEach(prop => { - Object.keys(webpackProperties).forEach(webpackProp => { - try { - webpackProperties[webpackProp] = JSON.parse( - webpackProperties[webpackProp] - ); - } catch (err) {} - - if (webpackProp.indexOf("inject") >= 0) { - if (reassign) { - return checkIfExistsAndAddValue( - j, - prop, - webpackProp, - webpackProperties[webpackProp] - ); - } else { - return prop.value.properties.push( - createIdentifierOrLiteral(j, webpackProperties[webpackProp]) - ); - } - } else if (Array.isArray(webpackProperties[webpackProp])) { - if (reassign) { - return j(p) - .find(j.Property, { key: { name: webpackProp } }) - .filter(props => props.value.key.name === webpackProp) - .forEach(property => { - let markedProps = []; - let propsToMerge = []; - property.value.value.elements.forEach(elem => { - if (elem.value) { - markedProps.push(elem.value); - } - }); - webpackProperties[webpackProp].forEach(underlyingprop => { - if (typeof underlyingprop === "object") { - //TODO loaders - return; - } - if (!markedProps.includes(underlyingprop)) { - propsToMerge.push(underlyingprop); - } - }); - const hashtableForProps = hashtable(propsToMerge); - hashtableForProps.forEach(elem => { - property.value.value.elements.push( - createIdentifierOrLiteral(j, elem) - ); - }); - }); - } else { - const propArray = createArrayWithChildren( - j, - webpackProp, - webpackProperties[webpackProp], - true - ); - return prop.value.properties.push(propArray); - } - } else if ( - typeof webpackProperties[webpackProp] !== "object" || - webpackProperties[webpackProp].__paths || - webpackProperties[webpackProp] instanceof RegExp - ) { - return pushCreateProperty( - j, - prop, - webpackProp, - webpackProperties[webpackProp] - ); - } else { - if (!reassign) { - pushCreateProperty(j, prop, webpackProp, j.objectExpression([])); - } - return pushObjectKeys( - j, - prop, - webpackProperties[webpackProp], - webpackProp, - reassign - ); - } - }); - }); -} - -/** - * - * Checks if we are at the correct node and later invokes a callback - * for the transforms to either use their own transform function or - * use pushCreateProperty if the transform doesn't expect any properties - * - * @param {any} j — jscodeshift API - * @param {Node} p - Node to push against - * @param {Function} cb - callback to be invoked - * @param {String} identifier - key to use as property - * @param {Object} property - WebpackOptions that later will be converted via - * pushCreateProperty via WebpackOptions[identifier] - * @returns {Function} cb - Returns the callback and pushes a new node - */ - -function isAssignment(j, p, cb, identifier, property) { - if (p.parent.value.type === "AssignmentExpression") { - if (j) { - return cb(j, p, identifier, property); - } else { - return cb(p); - } + if (p.properties) { + p.properties.push(pushVal); + return p; } -} - -/** - * - * Creates a function call with arguments - * @param {any} j — jscodeshift API - * @param {Node} p - Node to push against - * @param {String} name - Name for the given function - * @returns {Node} - Returns the node for the created - * function - */ - -function createFunctionWithArguments(j, p, name) { - if (typeof name === "object") { - let node; - Object.keys(name).forEach(key => { - const pluginExist = findPluginsByName(j, j(p), [key]); - if (pluginExist.size() !== 0) { - let pluginName = - key.indexOf("webpack") >= 0 - ? key.indexOf("webpack.optimize") >= 0 - ? key.replace("webpack.optimize.", " ") - : key.replace("webpack.", " ") - : key; - pluginExist - .filter( - p => pluginName.trim(" ") === p.value.callee.property.name.trim(" ") - ) - .forEach(n => { - Object.keys(name[key]).forEach(subKey => { - const foundNode = findRootNodesByName(j, j(n), subKey); - if (foundNode.size() !== 0) { - foundNode.forEach(n => { - j(n).replaceWith( - createObjectWithSuppliedProperty( - j, - subKey, - createIdentifierOrLiteral(j, name[key][subKey]) - ) - ); - node = createObjectWithSuppliedProperty( - j, - subKey, - createIdentifierOrLiteral(j, name[key][subKey]) - ); - }); - } else { - const method = j.property( - "init", - createLiteral(j, subKey), - createIdentifierOrLiteral(j, name[key][subKey]) - ); - n.value.arguments[0].properties.push(method); - node = null; - //node.arguments.push(j.objectExpression([method])); - } - }); - }); - return node; - } - node = j.newExpression(j.identifier(key), []); - return Object.keys(name[key]).forEach(subKey => { - const method = createObjectWithSuppliedProperty( - j, - subKey, - createIdentifierOrLiteral(j, name[key][subKey]) - ); - node.arguments.push(j.objectExpression([method])); - }); - }); - return node; + if (p.value && p.value.properties) { + p.value.properties.push(pushVal); + return p; } - return j.callExpression(j.identifier(name), [ - j.literal("/* Add your arguments here */") - ]); + if (p.elements) { + p.elements.push(pushVal); + return p; + } + return; } - module.exports = { safeTraverse, createProperty, @@ -756,21 +458,13 @@

Source: utils/ast-utils.js

findAndRemovePluginByName, createOrUpdatePluginByName, findVariableToPlugin, + findPluginsArrayAndRemoveIfEmpty, isType, createLiteral, createIdentifierOrLiteral, findObjWithOneOfKeys, getRequire, - checkIfExistsAndAddValue, - createArrayWithChildren, - createEmptyArrayProperty, - createObjectWithSuppliedProperty, - createExternalRegExp, - createFunctionWithArguments, - pushCreateProperty, - pushObjectKeys, - isAssignment, - loopThroughObjects + addProperty };
@@ -782,13 +476,13 @@

Source: utils/ast-utils.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_copy-utils.js.html b/docs/utils_copy-utils.js.html index 7d060c994cf..256e33e8afd 100644 --- a/docs/utils_copy-utils.js.html +++ b/docs/utils_copy-utils.js.html @@ -93,13 +93,13 @@

Source: utils/copy-utils.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_defineTest.js.html b/docs/utils_defineTest.js.html index 0f06a70da1a..ab0c5a9f757 100644 --- a/docs/utils_defineTest.js.html +++ b/docs/utils_defineTest.js.html @@ -68,8 +68,14 @@

Source: utils/defineTest.js

const fixtureDir = path.join(dirName, "__testfixtures__"); const inputPath = path.join(fixtureDir, testFilePrefix + ".input.js"); const source = fs.readFileSync(inputPath, "utf8"); + + let module; // Assumes transform and test are on the same level - const module = require(path.join(dirName, transformName + ".js")); + if (action) { + module = require(path.join(dirName, "index.js")); + } else { + module = require(path.join(dirName, transformName + ".js")); + } // Handle ES6 modules using default export for the transform const transform = module.default ? module.default : module; @@ -81,7 +87,13 @@

Source: utils/defineTest.js

} const ast = jscodeshift(source); if (initOptions || typeof initOptions === "boolean") { - return transform(jscodeshift, ast, initOptions, action).toSource({ + return transform( + jscodeshift, + ast, + initOptions, + action, + transformName + ).toSource({ quote: "single" }); } @@ -141,13 +153,13 @@

Source: utils/defineTest.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_hashtable.js.html b/docs/utils_hashtable.js.html deleted file mode 100644 index 1a4a33c3b7c..00000000000 --- a/docs/utils_hashtable.js.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - JSDoc: Source: utils/hashtable.js - - - - - - - - - - -
- -

Source: utils/hashtable.js

- - - - - - -
-
-
/**
- * Combined hashtable that sorts duplicate elements
- * https://stackoverflow.com/questions/9229645/remove-duplicate-values-from-js-array
- *
- * @param {Array} a Array to lookup
- * @returns {Array} A sorted array with removed dupe elements
- */
-module.exports = function hashtable(a) {
-	const prims = { boolean: {}, number: {}, string: {} },
-		objs = [];
-
-	return a.filter(function(item) {
-		const type = typeof item;
-		if (type in prims)
-			return prims[type].hasOwnProperty(item)
-				? false
-				: (prims[type][item] = true);
-		else return objs.indexOf(item) >= 0 ? false : objs.push(item);
-	});
-};
-
-
-
- - - - -
- - - -
- -
- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) -
- - - - - diff --git a/docs/utils_is-local-path.js.html b/docs/utils_is-local-path.js.html index 569faa37cf3..b7f1a8b6377 100644 --- a/docs/utils_is-local-path.js.html +++ b/docs/utils_is-local-path.js.html @@ -55,13 +55,13 @@

Source: utils/is-local-path.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_modify-config-helper.js.html b/docs/utils_modify-config-helper.js.html index 358b23fafbe..92332132396 100644 --- a/docs/utils_modify-config-helper.js.html +++ b/docs/utils_modify-config-helper.js.html @@ -111,13 +111,13 @@

Source: utils/modify-config-helper.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_npm-exists.js.html b/docs/utils_npm-exists.js.html index 1b2e05f8f03..21b1ed9d316 100644 --- a/docs/utils_npm-exists.js.html +++ b/docs/utils_npm-exists.js.html @@ -59,13 +59,13 @@

Source: utils/npm-exists.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_npm-packages-exists.js.html b/docs/utils_npm-packages-exists.js.html index 4d7584a2230..329cb0efe46 100644 --- a/docs/utils_npm-packages-exists.js.html +++ b/docs/utils_npm-packages-exists.js.html @@ -99,13 +99,13 @@

Source: utils/npm-packages-exists.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_package-manager.js.html b/docs/utils_package-manager.js.html index 9c7ce246d07..6b95785bbfc 100644 --- a/docs/utils_package-manager.js.html +++ b/docs/utils_package-manager.js.html @@ -140,13 +140,13 @@

Source: utils/package-manager.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_prop-types.js.html b/docs/utils_prop-types.js.html index 1672f5bf64a..9ae1855d3ae 100644 --- a/docs/utils_prop-types.js.html +++ b/docs/utils_prop-types.js.html @@ -47,6 +47,7 @@

Source: utils/prop-types.js

"module", "node", "output", + "optimizations", "parallelism", "performance", "plugins", @@ -57,6 +58,7 @@

Source: utils/prop-types.js

"resolve", "resolveLoader", "stats", + "splitChunks", "target", "watch", "watchOptions", @@ -71,13 +73,13 @@

Source: utils/prop-types.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_resolve-packages.js.html b/docs/utils_resolve-packages.js.html index 8fd46087e73..ecd4b1211f5 100644 --- a/docs/utils_resolve-packages.js.html +++ b/docs/utils_resolve-packages.js.html @@ -134,13 +134,13 @@

Source: utils/resolve-packages.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:39 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/docs/utils_run-prettier.js.html b/docs/utils_run-prettier.js.html index fca1e0ea573..89c905ab646 100644 --- a/docs/utils_run-prettier.js.html +++ b/docs/utils_run-prettier.js.html @@ -80,13 +80,13 @@

Source: utils/run-prettier.js


- Documentation generated by JSDoc 3.5.5 on Sat Apr 21 2018 09:19:38 GMT+0300 (EEST) + Documentation generated by JSDoc 3.5.5 on Fri Apr 27 2018 20:28:13 GMT+0200 (CEST)
diff --git a/lib/ast/__snapshots__/ast.test.js.snap b/lib/ast/__snapshots__/ast.test.js.snap new file mode 100644 index 00000000000..52383c7c8da --- /dev/null +++ b/lib/ast/__snapshots__/ast.test.js.snap @@ -0,0 +1,23 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`transforms correctly using "fixture-1" data 1`] = ` +"module.exports = { + { + objects: are, + + super: [yeah, { + test: /\\\\.(js|vue)$/, + loader: 'eslint-loader', + enforce: 'pre', + include: [customObj, 'Stringy'], + + options: { + formatter: 'someOption' + } + }], + + nice: ':)', + man: () => duper + } +};" +`; diff --git a/lib/ast/__testfixtures__/fixture-0.input.js b/lib/ast/__testfixtures__/fixture-0.input.js new file mode 100644 index 00000000000..576e3eb4328 --- /dev/null +++ b/lib/ast/__testfixtures__/fixture-0.input.js @@ -0,0 +1,134 @@ +const webpack = require("webpack"); + +module.exports = { + entry: { + ed: 'index.js', + sheeran: "yea, good shit" + }, + output: { + filename: "'bundle'", + path: "'dist/assets'", + pathinfo: true, + publicPath: "'https://google.com'", + sourceMapFilename: "'[name].map'", + sourcePrefix: jscodeshift("'\t'"), + umdNamedDefine: true, + strictModuleExceptionHandling: true + }, + watchOptions: { + aggregateTimeout: 100, + poll: 90, + ignored: "/ok/" + }, + watch: 'me', + context: 'reassign me like one of your french girls', + devServer: { + contentBase: "edSheeran", + compress: true, + port: 9000, + empti: "ness" + }, + devtool: 'eval', + externals: { + highdash: { + commonjs: 'lodash', + amd: 'lodash' + } + }, + performance: { + hints: "'warning'", + maxEntrypointSize: 400000, + maxAssetSize: 100000, + assetFilter: + "function(assetFilename) {" + + "return assetFilename.endsWith('.js');" + + "}" + }, + mode: 'development', + bail: true, + cache: true, + profile: true, + merge: 'NotMuch', + parallelism: 69, + recordsInputPath: 'something', + recordsOutputPath: 'else', + recordsPath: 'Brooklyn', + amd: { + jQuery: true, + kQuery: false + }, + resolveLoader: { + moduleExtensions: [ '-loader' ] + }, + stats: { + assets: false, + assetsSort: "'gold'", + cached: true, + cachedAssets: true, + children: false, + chunks: true, + }, + target: 'something', + resolve: { + alias: { + inject: "{{#if_eq build 'standalone'}}", + hello: "'world'", + inject_1: "{{/if_eq}}", + world: "hello" + }, + aliasFields: ["'browser'", "wars"], + descriptionFiles: ["'a'", "b", "'c'"], + enforceExtension: false, + enforceModuleExtension: false, + extensions: ["hey", "ho"], + mainFields: ["main", "'story'"], + mainFiles: ["'noMainFileHere'", "iGuess"], + modules: ["one", "'two'"], + unsafeCache: false, + resolveLoader: { + modules: ["'node_modules'", "mode_nodules"], + extensions: ["jsVal", "'.json'"], + mainFields: ["loader", "'main'"], + moduleExtensions: ["'-loader'", "value"] + }, + plugins: ["somePlugin", "'stringVal'"], + symlinks: true + }, + plugins: ['something'], + module: { + rules: [ + { + loader: "'eslint-loader'", + enforce: "'pre'", + include: ["hey", "'Stringy'"], + options: { + formatter: "'someOption'" + } + }, + { + loader: "'vue-loader'", + options: "vueObject" + }, + { + loader: "'babel-loader'", + include: ["resolve('src')", "resolve('test')"] + }, + { + loader: "'url-loader'", + options: { + limit: 10000, + name: "utils.assetsPath('img/[name].[hash:7].[ext]')", + inject: "{{#if_eq build 'standalone'}}" + } + }, + { + loader: "'url-loader'", + inject: "{{#if_eq build 'standalone'}}", + options: { + limit: "10000", + name: "utils.assetsPath('fonts/[name].[hash:7].[ext]')" + } + } + ] + }, +} \ No newline at end of file diff --git a/lib/ast/__testfixtures__/fixture-1.input.js b/lib/ast/__testfixtures__/fixture-1.input.js new file mode 100644 index 00000000000..a0995453769 --- /dev/null +++ b/lib/ast/__testfixtures__/fixture-1.input.js @@ -0,0 +1 @@ +module.exports = {}; \ No newline at end of file diff --git a/lib/ast/ast.test.js b/lib/ast/ast.test.js new file mode 100644 index 00000000000..ddcb8799fe8 --- /dev/null +++ b/lib/ast/ast.test.js @@ -0,0 +1,28 @@ +"use strict"; + +const defineTest = require("../utils/defineTest"); +const propTypes = require("../utils/prop-types"); + +defineTest( + __dirname, + propTypes[0], + "fixture-1", + { + objects: "are", + super: [ + "yeah", + { + test: new RegExp(/\.(js|vue)$/), + loader: "'eslint-loader'", + enforce: "'pre'", + include: ["customObj", "'Stringy'"], + options: { + formatter: "'someOption'" + } + } + ], + nice: "':)'", + man: "() => duper" + }, + "init" +); diff --git a/lib/ast/index.js b/lib/ast/index.js new file mode 100644 index 00000000000..8418f9ce27b --- /dev/null +++ b/lib/ast/index.js @@ -0,0 +1,37 @@ +"use strict"; + +const utils = require("../utils/ast-utils"); + +module.exports = function astTransform(j, ast, value, action, key) { + const node = utils.findRootNodesByName(j, ast, key); + if (node.size() !== 0) { + // push to existing key + return ast; + } else { + // get module.exports prop + const root = ast + .find(j.ObjectExpression) + .filter(p => { + return ( + utils.safeTraverse(p, [ + "parentPath", + "value", + "left", + "object", + "name" + ]) === "module" && + utils.safeTraverse(p, [ + "parentPath", + "value", + "left", + "property", + "name" + ]) === "exports" + ); + }) + .filter(p => p.value.properties); + return root.forEach(p => { + utils.addProperty(j, p, key, value); + }); + } +}; diff --git a/lib/commands/migrate.js b/lib/commands/migrate.js index 3f61f858c8d..329e29f209a 100644 --- a/lib/commands/migrate.js +++ b/lib/commands/migrate.js @@ -178,7 +178,11 @@ function runMigration(currentConfigPath, outputConfigPath) { ); } } - console.log(chalk.green(`\n✔︎ New webpack config file is at ${outputConfigPath}.`)); + console.log( + chalk.green( + `\n✔︎ New webpack config file is at ${outputConfigPath}.` + ) + ); console.log( chalk.green( "✔︎ Heads up! Updating to the latest version could contain breaking changes." diff --git a/lib/generators/add-generator.js b/lib/generators/add-generator.js index bb4286085e5..dc0f5c4b185 100644 --- a/lib/generators/add-generator.js +++ b/lib/generators/add-generator.js @@ -65,9 +65,7 @@ module.exports = class AddGenerator extends Generator { this.configuration = { config: { webpackOptions: {}, - topScope: [ - "const webpack = require('webpack')" - ] + topScope: ["const webpack = require('webpack')"] } }; } diff --git a/lib/generators/init-generator.js b/lib/generators/init-generator.js index d4ed23e69f3..efd7db24439 100644 --- a/lib/generators/init-generator.js +++ b/lib/generators/init-generator.js @@ -114,7 +114,9 @@ module.exports = class InitGenerator extends Generator { }) .then(prodConfirmAnswer => { this.isProd = prodConfirmAnswer["prodConfirm"]; - this.configuration.config.webpackOptions.mode = this.isProd ? "'production'" : "'development'"; + this.configuration.config.webpackOptions.mode = this.isProd + ? "'production'" + : "'development'"; }) .then(() => { return this.prompt([ @@ -290,14 +292,12 @@ module.exports = class InitGenerator extends Generator { this.dependencies.push("style-loader", "css-loader"); regExpForStyles = `${new RegExp(/\.css$/)}`; if (this.isProd) { - ExtractUseProps.push( - { - loader: "'css-loader'", - options: { - sourceMap: true - } + ExtractUseProps.push({ + loader: "'css-loader'", + options: { + sourceMap: true } - ); + }); } else { ExtractUseProps.push( { @@ -345,11 +345,9 @@ module.exports = class InitGenerator extends Generator { ); } - ExtractUseProps.unshift( - { - loader: "MiniCssExtractPlugin.loader" - } - ); + ExtractUseProps.unshift({ + loader: "MiniCssExtractPlugin.loader" + }); const moduleRulesObj = { test: regExpForStyles, @@ -388,14 +386,13 @@ module.exports = class InitGenerator extends Generator { vendors: { test: "/[\\\\/]node_modules[\\\\/]/", priority: -10 - }, + } } } }; done(); }); } - installPlugins() { const asyncNamePrompt = this.async(); const defaultName = this.isProd ? "prod" : "config"; diff --git a/lib/generators/loader-generator.js b/lib/generators/loader-generator.js index ce37dae2090..810473f5394 100644 --- a/lib/generators/loader-generator.js +++ b/lib/generators/loader-generator.js @@ -49,9 +49,7 @@ const LoaderGenerator = webpackGenerator( "examples/simple/src/lazy-module.js.tpl", "examples/simple/src/static-esm-module.js.tpl" ], - [ - "src/_index.js.tpl" - ], + ["src/_index.js.tpl"], gen => ({ name: gen.props.name }) ); diff --git a/lib/generators/plugin-generator.js b/lib/generators/plugin-generator.js index 9a7cc71757e..b2a59695987 100644 --- a/lib/generators/plugin-generator.js +++ b/lib/generators/plugin-generator.js @@ -30,10 +30,7 @@ const PluginGenerator = webpackGenerator( "examples/simple/src/lazy-module.js.tpl", "examples/simple/src/static-esm-module.js.tpl" ], - [ - "src/_index.js.tpl", - "examples/simple/_webpack.config.js.tpl" - ], + ["src/_index.js.tpl", "examples/simple/_webpack.config.js.tpl"], gen => ({ name: _.upperFirst(_.camelCase(gen.props.name)) }) ); diff --git a/lib/generators/utils/entry.js b/lib/generators/utils/entry.js index 54f14a8af17..cac29aab446 100644 --- a/lib/generators/utils/entry.js +++ b/lib/generators/utils/entry.js @@ -40,7 +40,7 @@ module.exports = (self, answer) => { !n[val].includes("path") && !n[val].includes("process") ) { - n[val] = `\'${n[val].replace(/"|'/g,"").concat(".js")}\'`; + n[val] = `\'${n[val].replace(/"|'/g, "").concat(".js")}\'`; } webpackEntryPoint[val] = n[val]; }); @@ -68,7 +68,9 @@ module.exports = (self, answer) => { !entryPropAnswer[val].includes("path") && !entryPropAnswer[val].includes("process") ) { - entryPropAnswer[val] = `\'${entryPropAnswer[val].replace(/"|'/g,"").concat(".js")}\'`; + entryPropAnswer[val] = `\'${entryPropAnswer[val] + .replace(/"|'/g, "") + .concat(".js")}\'`; } webpackEntryPoint[val] = entryPropAnswer[val]; }); @@ -85,7 +87,8 @@ module.exports = (self, answer) => { ]) .then(singularEntryAnswer => { let { singularEntry } = singularEntryAnswer; - if (singularEntry.indexOf("\"") >= 0) singularEntry = singularEntry.replace(/"/g, "'"); + if (singularEntry.indexOf("\"") >= 0) + singularEntry = singularEntry.replace(/"/g, "'"); return singularEntry; }); } diff --git a/lib/init/index.js b/lib/init/index.js index 791ebea02e0..421c7cf69ec 100644 --- a/lib/init/index.js +++ b/lib/init/index.js @@ -6,66 +6,8 @@ const chalk = require("chalk"); const pEachSeries = require("p-each-series"); const runPrettier = require("../utils/run-prettier"); - -const entryTransform = require("./transformations/entry/entry"); -const outputTransform = require("./transformations/output/output"); -const contextTransform = require("./transformations/context/context"); -const resolveTransform = require("./transformations/resolve/resolve"); -const devtoolTransform = require("./transformations/devtool/devtool"); -const targetTransform = require("./transformations/target/target"); -const watchTransform = require("./transformations/watch/watch"); -const watchOptionsTransform = require("./transformations/watch/watchOptions"); -const externalsTransform = require("./transformations/externals/externals"); -const nodeTransform = require("./transformations/node/node"); -const performanceTransform = require("./transformations/performance/performance"); -const statsTransform = require("./transformations/stats/stats"); -const amdTransform = require("./transformations/other/amd"); -const bailTransform = require("./transformations/other/bail"); -const cacheTransform = require("./transformations/other/cache"); -const profileTransform = require("./transformations/other/profile"); -const mergeTransform = require("./transformations/other/merge"); -const parallelismTransform = require("./transformations/other/parallelism"); -const recordsInputPathTransform = require("./transformations/other/recordsInputPath"); -const recordsOutputPathTransform = require("./transformations/other/recordsOutputPath"); -const recordsPathTransform = require("./transformations/other/recordsPath"); -const moduleTransform = require("./transformations/module/module"); -const pluginsTransform = require("./transformations/plugins/plugins"); -const topScopeTransform = require("./transformations/top-scope/top-scope"); -const devServerTransform = require("./transformations/devServer/devServer"); -const modeTransform = require("./transformations/mode/mode"); -const resolveLoaderTransform = require("./transformations/resolveLoader/resolveLoader"); -const optimizationTransform = require("./transformations/optimization/optimization"); - -const transformsObject = { - entryTransform, - outputTransform, - contextTransform, - resolveTransform, - devtoolTransform, - targetTransform, - watchTransform, - watchOptionsTransform, - externalsTransform, - nodeTransform, - performanceTransform, - statsTransform, - amdTransform, - bailTransform, - cacheTransform, - profileTransform, - moduleTransform, - pluginsTransform, - topScopeTransform, - mergeTransform, - devServerTransform, - modeTransform, - parallelismTransform, - recordsInputPathTransform, - recordsOutputPathTransform, - recordsPathTransform, - resolveLoaderTransform, - optimizationTransform -}; +const astTransform = require("../ast"); +const propTypes = require("../utils/prop-types"); /** * @@ -77,27 +19,8 @@ const transformsObject = { * @returns {Object} - An Object with the transformations to be run */ -function mapOptionsToTransform(transformObject, config) { - return Object.keys(transformObject) - .map(transformKey => { - const stringVal = transformKey.substr( - 0, - transformKey.indexOf("Transform") - ); - if (Object.keys(config.webpackOptions).length) { - if (config.webpackOptions[stringVal]) { - return [ - transformObject[transformKey], - config.webpackOptions[stringVal] - ]; - } else { - return [transformObject[transformKey], config[stringVal]]; - } - } else { - return [transformObject[transformKey]]; - } - }) - .filter(e => e[1]); +function mapOptionsToTransform(config) { + return Object.keys(config.webpackOptions).filter(k => propTypes.has(k)); } /** @@ -119,7 +42,7 @@ module.exports = function runTransform(webpackProperties, action) { webpackConfig.forEach(scaffoldPiece => { const config = webpackProperties[scaffoldPiece]; - const transformations = mapOptionsToTransform(transformsObject, config); + const transformations = mapOptionsToTransform(config); const ast = j( initActionNotDefined ? webpackProperties.configFile @@ -128,11 +51,7 @@ module.exports = function runTransform(webpackProperties, action) { const transformAction = action || null; return pEachSeries(transformations, f => { - if (!f[1]) { - return f[0](j, ast, transformAction); - } else { - return f[0](j, ast, f[1], transformAction); - } + return astTransform(j, ast, config.webpackOptions[f], transformAction, f); }) .then(_ => { let configurationName; diff --git a/lib/init/transformations/context/__snapshots__/context.test.js.snap b/lib/init/transformations/context/__snapshots__/context.test.js.snap deleted file mode 100644 index 83a8862858b..00000000000 --- a/lib/init/transformations/context/__snapshots__/context.test.js.snap +++ /dev/null @@ -1,56 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`context transforms correctly using "context-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - context: path.resolve(__dirname, 'app') -} -" -`; - -exports[`context transforms correctly using "context-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - context: './some/fake/path' -} -" -`; - -exports[`context transforms correctly using "context-2" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - context: contextVariable -} -" -`; - -exports[`context transforms correctly using "context-3" data 1`] = ` -"module.exports = { - entry: 'index.js', - context: path.join('dist', mist) -} -" -`; - -exports[`context transforms correctly using "context-4" data 1`] = ` -"module.exports = { - entry: 'index.js', - context: 'just did' -} -" -`; diff --git a/lib/init/transformations/context/__testfixtures__/context-0.input.js b/lib/init/transformations/context/__testfixtures__/context-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/context/__testfixtures__/context-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/context/__testfixtures__/context-1.input.js b/lib/init/transformations/context/__testfixtures__/context-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/context/__testfixtures__/context-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/context/__testfixtures__/context-2.input.js b/lib/init/transformations/context/__testfixtures__/context-2.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/context/__testfixtures__/context-2.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/context/__testfixtures__/context-3.input.js b/lib/init/transformations/context/__testfixtures__/context-3.input.js deleted file mode 100644 index b3f3946bbe1..00000000000 --- a/lib/init/transformations/context/__testfixtures__/context-3.input.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - entry: 'index.js', -} diff --git a/lib/init/transformations/context/__testfixtures__/context-4.input.js b/lib/init/transformations/context/__testfixtures__/context-4.input.js deleted file mode 100644 index c9a7cb7d37c..00000000000 --- a/lib/init/transformations/context/__testfixtures__/context-4.input.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - entry: 'index.js', - context: 'reassign me like one of your french girls' -} diff --git a/lib/init/transformations/context/context.js b/lib/init/transformations/context/context.js deleted file mode 100644 index 5b4128f9bc8..00000000000 --- a/lib/init/transformations/context/context.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for context. Finds the context property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function contextTransform(j, ast, webpackProperties, action) { - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "context", - webpackProperties - ) - ); - } else if (action === "add") { - const contextNode = utils.findRootNodesByName(j, ast, "context"); - if (contextNode.size() !== 0) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "context", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return contextTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/context/context.test.js b/lib/init/transformations/context/context.test.js deleted file mode 100644 index 7dcf6b0474d..00000000000 --- a/lib/init/transformations/context/context.test.js +++ /dev/null @@ -1,16 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "context", - "context-0", - "path.resolve(__dirname, 'app')", - "init" -); -defineTest(__dirname, "context", "context-1", "'./some/fake/path'", "init"); -defineTest(__dirname, "context", "context-2", "contextVariable", "init"); - -defineTest(__dirname, "context", "context-3", "path.join('dist', mist)", "add"); -defineTest(__dirname, "context", "context-4", "'just did'", "add"); diff --git a/lib/init/transformations/devServer/__snapshots__/devServer.test.js.snap b/lib/init/transformations/devServer/__snapshots__/devServer.test.js.snap deleted file mode 100644 index dfa4348efd4..00000000000 --- a/lib/init/transformations/devServer/__snapshots__/devServer.test.js.snap +++ /dev/null @@ -1,74 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`devServer transforms correctly using "devServer-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devServer: { - contentBase: path.join(__dirname, 'dist'), - compress: true, - port: 9000 - } -} -" -`; - -exports[`devServer transforms correctly using "devServer-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devServer: someVar -} -" -`; - -exports[`devServer transforms correctly using "devServer-2" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devServer: { - contentBase: path.join(__dirname, 'dist'), - compress: true, - port: 9000 - } -} -" -`; - -exports[`devServer transforms correctly using "devServer-3" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devServer: { - contentBase: path.join(__dirname, 'dist'), - compress: true, - port: 420 -} -} -" -`; - -exports[`devServer transforms correctly using "devServer-4" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devServer: someVar -} -" -`; diff --git a/lib/init/transformations/devServer/__testfixtures__/devServer-0.input.js b/lib/init/transformations/devServer/__testfixtures__/devServer-0.input.js deleted file mode 100644 index 080e440f373..00000000000 --- a/lib/init/transformations/devServer/__testfixtures__/devServer-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, -} diff --git a/lib/init/transformations/devServer/__testfixtures__/devServer-1.input.js b/lib/init/transformations/devServer/__testfixtures__/devServer-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/devServer/__testfixtures__/devServer-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/devServer/__testfixtures__/devServer-2.input.js b/lib/init/transformations/devServer/__testfixtures__/devServer-2.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/devServer/__testfixtures__/devServer-2.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/devServer/__testfixtures__/devServer-3.input.js b/lib/init/transformations/devServer/__testfixtures__/devServer-3.input.js deleted file mode 100644 index cff14a3c463..00000000000 --- a/lib/init/transformations/devServer/__testfixtures__/devServer-3.input.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devServer: { - contentBase: "edSheeran", - compress: true, - port: 9000 -} -} diff --git a/lib/init/transformations/devServer/__testfixtures__/devServer-4.input.js b/lib/init/transformations/devServer/__testfixtures__/devServer-4.input.js deleted file mode 100644 index 747b85cabd8..00000000000 --- a/lib/init/transformations/devServer/__testfixtures__/devServer-4.input.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devServer: { - empti: "ness" - } -} diff --git a/lib/init/transformations/devServer/devServer.js b/lib/init/transformations/devServer/devServer.js deleted file mode 100644 index 2ebfdcee408..00000000000 --- a/lib/init/transformations/devServer/devServer.js +++ /dev/null @@ -1,89 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for devServer. Finds the devServer property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function devServerTransform( - j, - ast, - webpackProperties, - action -) { - function createDevServerProperty(p) { - utils.pushCreateProperty(j, p, "devServer", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "devServer"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createDevServerProperty)); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "devServer", - webpackProperties - ) - ); - } else if (action === "add") { - const devServerNode = utils.findRootNodesByName(j, ast, "devServer"); - if (devServerNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "devServer" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (devServerNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "devServer" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return devServerTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/devServer/devServer.test.js b/lib/init/transformations/devServer/devServer.test.js deleted file mode 100644 index d1832185f7f..00000000000 --- a/lib/init/transformations/devServer/devServer.test.js +++ /dev/null @@ -1,41 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "devServer", - "devServer-0", - { - contentBase: "path.join(__dirname, 'dist')", - compress: true, - port: 9000 - }, - "init" -); -defineTest(__dirname, "devServer", "devServer-1", "someVar", "init"); - -defineTest( - __dirname, - "devServer", - "devServer-2", - { - contentBase: "path.join(__dirname, 'dist')", - compress: true, - port: 9000 - }, - "add" -); - -defineTest( - __dirname, - "devServer", - "devServer-3", - { - contentBase: "path.join(__dirname, 'dist')", - port: 420 - }, - "add" -); - -defineTest(__dirname, "devServer", "devServer-4", "someVar", "add"); diff --git a/lib/init/transformations/devtool/__snapshots__/devtool.test.js.snap b/lib/init/transformations/devtool/__snapshots__/devtool.test.js.snap deleted file mode 100644 index d82d810dd5a..00000000000 --- a/lib/init/transformations/devtool/__snapshots__/devtool.test.js.snap +++ /dev/null @@ -1,114 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`devtool transforms correctly using "devtool-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: 'source-map' -} -" -`; - -exports[`devtool transforms correctly using "devtool-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: myVariable -} -" -`; - -exports[`devtool transforms correctly using "devtool-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: 'cheap-module-source-map' -} -" -`; - -exports[`devtool transforms correctly using "devtool-1" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: false -} -" -`; - -exports[`devtool transforms correctly using "devtool-2" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: 'source-map' -} -" -`; - -exports[`devtool transforms correctly using "devtool-3" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: myVariable -} -" -`; - -exports[`devtool transforms correctly using "devtool-3" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - devtool: 'cheap-module-source-map' -} -" -`; - -exports[`devtool transforms correctly using "devtool-4" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devtool: false -} -" -`; - -exports[`devtool transforms correctly using "devtool-4" data 2`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devtool: false -} -" -`; diff --git a/lib/init/transformations/devtool/__testfixtures__/devtool-0.input.js b/lib/init/transformations/devtool/__testfixtures__/devtool-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/devtool/__testfixtures__/devtool-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/devtool/__testfixtures__/devtool-1.input.js b/lib/init/transformations/devtool/__testfixtures__/devtool-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/devtool/__testfixtures__/devtool-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/devtool/__testfixtures__/devtool-2.input.js b/lib/init/transformations/devtool/__testfixtures__/devtool-2.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/devtool/__testfixtures__/devtool-2.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/devtool/__testfixtures__/devtool-3.input.js b/lib/init/transformations/devtool/__testfixtures__/devtool-3.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/devtool/__testfixtures__/devtool-3.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/devtool/__testfixtures__/devtool-4.input.js b/lib/init/transformations/devtool/__testfixtures__/devtool-4.input.js deleted file mode 100644 index d7fc037f215..00000000000 --- a/lib/init/transformations/devtool/__testfixtures__/devtool-4.input.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - devtool: 'eval' -} diff --git a/lib/init/transformations/devtool/devtool.js b/lib/init/transformations/devtool/devtool.js deleted file mode 100644 index 05bea8ae4c5..00000000000 --- a/lib/init/transformations/devtool/devtool.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for devtool. Finds the devtool property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function devToolTransform(j, ast, webpackProperties, action) { - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "devtool", - webpackProperties - ) - ); - } else if (action === "add") { - const devToolNode = utils.findRootNodesByName(j, ast, "devtool"); - if (devToolNode.size() !== 0) { - return devToolNode.forEach(p => { - j(p).replaceWith( - j.property( - "init", - j.identifier("devtool"), - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - }); - } else { - return devToolTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/devtool/devtool.test.js b/lib/init/transformations/devtool/devtool.test.js deleted file mode 100644 index 02464db79a5..00000000000 --- a/lib/init/transformations/devtool/devtool.test.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest(__dirname, "devtool", "devtool-0", "'source-map'", "init"); -defineTest(__dirname, "devtool", "devtool-0", "myVariable", "init"); -defineTest( - __dirname, - "devtool", - "devtool-1", - "'cheap-module-source-map'", - "init" -); -defineTest(__dirname, "devtool", "devtool-1", "false", "init"); - -defineTest(__dirname, "devtool", "devtool-2", "'source-map'", "add"); -defineTest(__dirname, "devtool", "devtool-3", "myVariable", "add"); -defineTest( - __dirname, - "devtool", - "devtool-3", - "'cheap-module-source-map'", - "add" -); -defineTest(__dirname, "devtool", "devtool-4", false, "add"); -defineTest(__dirname, "devtool", "devtool-4", "false", "add"); diff --git a/lib/init/transformations/entry/__snapshots__/entry.test.js.snap b/lib/init/transformations/entry/__snapshots__/entry.test.js.snap deleted file mode 100644 index 0b26cdf44f3..00000000000 --- a/lib/init/transformations/entry/__snapshots__/entry.test.js.snap +++ /dev/null @@ -1,121 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`entry transforms correctly using "entry-0" data 1`] = ` -"module.exports = { - entry: 'index.js' -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 2`] = ` -"module.exports = { - entry: \\"index.js\\" -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 3`] = ` -"module.exports = { - entry: ['index.js', 'app.js'] -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 4`] = ` -"module.exports = { - entry: { - index: 'index.js', - app: 'app.js' - } -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 5`] = ` -"module.exports = { - entry: { - something, - app: 'app.js', - else - } -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 6`] = ` -"module.exports = { - entry: () => 'index.js' -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 7`] = ` -"module.exports = { - entry: () => new Promise((resolve) => resolve(['./app', './router'])) -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 8`] = ` -"module.exports = { - entry: entryStringVariable -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 9`] = ` -"module.exports = { - entry: 'index.js' -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 10`] = ` -"module.exports = { - entry: ['index.js', 'app.js'] -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 11`] = ` -"module.exports = { - entry: { - something, - ed: 'eddy.js', - else - } -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 12`] = ` -"module.exports = { - entry: () => new Promise((resolve) => resolve(['./app', './router'])) -} -" -`; - -exports[`entry transforms correctly using "entry-0" data 13`] = ` -"module.exports = { - entry: entryStringVariable -} -" -`; - -exports[`entry transforms correctly using "entry-1" data 1`] = ` -"module.exports = { - entry: { - index: 'outdex.js', - ed: 'sheeran', - app: 'nap.js' - } -} -" -`; - -exports[`entry transforms correctly using "entry-1" data 2`] = ` -"module.exports = { - entry: () => 'index.js' -} -" -`; diff --git a/lib/init/transformations/entry/__testfixtures__/entry-0.input.js b/lib/init/transformations/entry/__testfixtures__/entry-0.input.js deleted file mode 100644 index 4ba52ba2c8d..00000000000 --- a/lib/init/transformations/entry/__testfixtures__/entry-0.input.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {} diff --git a/lib/init/transformations/entry/__testfixtures__/entry-1.input.js b/lib/init/transformations/entry/__testfixtures__/entry-1.input.js deleted file mode 100644 index 03616f38a8f..00000000000 --- a/lib/init/transformations/entry/__testfixtures__/entry-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: { - index: 'index.js', - ed: 'sheeran' - } -} diff --git a/lib/init/transformations/entry/entry.js b/lib/init/transformations/entry/entry.js deleted file mode 100644 index 2878ff5cdc5..00000000000 --- a/lib/init/transformations/entry/entry.js +++ /dev/null @@ -1,85 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for entry. Finds the entry property from yeoman and creates a - * property based on what the user has given us. - * - * @param j - jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function entryTransform(j, ast, webpackProperties, action) { - function createEntryProperty(p) { - if (typeof webpackProperties === "string") { - return utils.pushCreateProperty(j, p, "entry", webpackProperties); - } - if (Array.isArray(webpackProperties)) { - const externalArray = utils.createArrayWithChildren( - j, - "entry", - webpackProperties, - true - ); - return p.value.properties.push(externalArray); - } else { - utils.pushCreateProperty(j, p, "entry", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "entry"); - } - } - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createEntryProperty)); - } else if (action === "add") { - const entryNode = utils.findRootNodesByName(j, ast, "entry"); - if (entryNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "entry" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (entryNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "entry" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return entryTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/entry/entry.test.js b/lib/init/transformations/entry/entry.test.js deleted file mode 100644 index 4b2b2c41ca5..00000000000 --- a/lib/init/transformations/entry/entry.test.js +++ /dev/null @@ -1,72 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest(__dirname, "entry", "entry-0", "'index.js'", "init"); -defineTest(__dirname, "entry", "entry-0", "\"index.js\"", "init"); -defineTest(__dirname, "entry", "entry-0", ["'index.js'", "'app.js'"], "init"); -defineTest( - __dirname, - "entry", - "entry-0", - { - index: "'index.js'", - app: "'app.js'" - }, - "init" -); - -defineTest( - __dirname, - "entry", - "entry-0", - { - inject: "something", - app: "'app.js'", - inject_1: "else" - }, - "init" -); -defineTest(__dirname, "entry", "entry-0", "() => 'index.js'", "init"); -defineTest( - __dirname, - "entry", - "entry-0", - "() => new Promise((resolve) => resolve(['./app', './router']))", - "init" -); -defineTest(__dirname, "entry", "entry-0", "entryStringVariable", "init"); - -defineTest(__dirname, "entry", "entry-0", "'index.js'", "add"); -defineTest(__dirname, "entry", "entry-0", ["'index.js'", "'app.js'"], "add"); -defineTest( - __dirname, - "entry", - "entry-1", - { - index: "'outdex.js'", - app: "'nap.js'" - }, - "add" -); - -defineTest( - __dirname, - "entry", - "entry-0", - { - inject: "something", - ed: "'eddy.js'", - inject_1: "else" - }, - "add" -); -defineTest(__dirname, "entry", "entry-1", "() => 'index.js'", "add"); -defineTest( - __dirname, - "entry", - "entry-0", - "() => new Promise((resolve) => resolve(['./app', './router']))", - "add" -); -defineTest(__dirname, "entry", "entry-0", "entryStringVariable", "add"); diff --git a/lib/init/transformations/externals/__snapshots__/externals.test.js.snap b/lib/init/transformations/externals/__snapshots__/externals.test.js.snap deleted file mode 100644 index 2837759f02b..00000000000 --- a/lib/init/transformations/externals/__snapshots__/externals.test.js.snap +++ /dev/null @@ -1,146 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`externals transforms correctly using "externals-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: /react/ -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: { - jquery: 'jQuery', - react: 'react' - } -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: myObj -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 3`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: { - jquery: 'jQuery', - react: reactObj - } -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 4`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: { - jquery: 'jQuery', - react: [reactObj, path.join(__dirname, 'app'), 'jquery'] - } -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 5`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: { - lodash: { - commonjs: 'lodash', - amd: 'lodash', - root: '_' - } - } -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 6`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: { - lodash: { - commonjs: lodash, - amd: hidash, - root: _ - } - } -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 7`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: [{ - a: false, - b: true, - './ext': ./hey - }, function(context, request, callback) {if (/^yourregex$/.test(request)){return callback(null, 'commonjs ' + request);}callback();}] -} -" -`; - -exports[`externals transforms correctly using "externals-1" data 8`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - externals: [ - myObj, - function(context, request, callback) {if (/^yourregex$/.test(request)){return callback(null, 'commonjs ' + request);}callback();} - ] -} -" -`; diff --git a/lib/init/transformations/externals/__testfixtures__/externals-0.input.js b/lib/init/transformations/externals/__testfixtures__/externals-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/externals/__testfixtures__/externals-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/externals/__testfixtures__/externals-1.input.js b/lib/init/transformations/externals/__testfixtures__/externals-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/externals/__testfixtures__/externals-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/externals/__testfixtures__/externals-2.input.js b/lib/init/transformations/externals/__testfixtures__/externals-2.input.js deleted file mode 100644 index 1111c6e4831..00000000000 --- a/lib/init/transformations/externals/__testfixtures__/externals-2.input.js +++ /dev/null @@ -1,12 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - externals: { - highdash: { - commonjs: 'lodash', - amd: 'lodash' - } - } -} diff --git a/lib/init/transformations/externals/externals.js b/lib/init/transformations/externals/externals.js deleted file mode 100644 index ebc903bc272..00000000000 --- a/lib/init/transformations/externals/externals.js +++ /dev/null @@ -1,109 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for externals. Finds the externals property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function externalsTransform( - j, - ast, - webpackProperties, - action -) { - function createExternalProperty(p) { - if ( - webpackProperties instanceof RegExp || - typeof webpackProperties === "string" - ) { - return utils.pushCreateProperty(j, p, "externals", webpackProperties); - } - if (Array.isArray(webpackProperties)) { - const externalArray = utils.createArrayWithChildren( - j, - "externals", - webpackProperties, - true - ); - return p.value.properties.push(externalArray); - } else { - utils.pushCreateProperty(j, p, "externals", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "externals"); - } - } - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, [ - "parent", - "value", - "left", - "property", - "name" - ]) === "exports" - ) - .forEach(createExternalProperty); - } else if (action === "add") { - const externalNode = utils.findRootNodesByName(j, ast, "externals"); - if (externalNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "externals" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - // need to check for every prop beneath, use the recursion util - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - externalNode.size() !== 0 && - Array.isArray(webpackProperties) - ) { - // Todo - } else if (externalNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "externals" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return externalsTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/externals/externals.test.js b/lib/init/transformations/externals/externals.test.js deleted file mode 100644 index 342d30f7a70..00000000000 --- a/lib/init/transformations/externals/externals.test.js +++ /dev/null @@ -1,204 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest(__dirname, "externals", "externals-0", /react/, "init"); -defineTest( - __dirname, - "externals", - "externals-1", - { - jquery: "'jQuery'", - react: "'react'" - }, - "init" -); - -defineTest(__dirname, "externals", "externals-1", "myObj", "init"); - -defineTest( - __dirname, - "externals", - "externals-1", - { - jquery: "'jQuery'", - react: "reactObj" - }, - "init" -); - -defineTest( - __dirname, - "externals", - "externals-1", - { - jquery: "'jQuery'", - react: ["reactObj", "path.join(__dirname, 'app')", "'jquery'"] - }, - "init" -); - -defineTest( - __dirname, - "externals", - "externals-1", - { - lodash: { - commonjs: "'lodash'", - amd: "'lodash'", - root: "'_'" - } - }, - "init" -); - -defineTest( - __dirname, - "externals", - "externals-1", - { - lodash: { - commonjs: "lodash", - amd: "hidash", - root: "_" - } - }, - "init" -); - -defineTest( - __dirname, - "externals", - "externals-1", - [ - { - a: "false", - b: "true", - "'./ext'": "./hey" - }, - "function(context, request, callback) {" + - "if (/^yourregex$/.test(request)){" + - "return callback(null, 'commonjs ' + request);" + - "}" + - "callback();" + - "}" - ], - "init" -); - -defineTest( - __dirname, - "externals", - "externals-1", - [ - "myObj", - "function(context, request, callback) {" + - "if (/^yourregex$/.test(request)){" + - "return callback(null, 'commonjs ' + request);" + - "}" + - "callback();" + - "}" - ], - "init" -); -/* -defineTest(__dirname, "externals", "externals-0", /react/, "add"); -defineTest( - __dirname, - "externals", - "externals-1", - { - jquery: "'qQuery'", - react: "'isNowPreact'" - }, - "add" -); - -defineTest(__dirname, "externals", "externals-1", "myObj", "add"); - -defineTest( - __dirname, - "externals", - "externals-1", - { - jquery: "'jQuery'", - react: "reactObj" - }, - "add" -); - -defineTest( - __dirname, - "externals", - "externals-1", - { - jquery: "'jQuery'", - react: ["reactObj", "path.join(__dirname, 'app')", "'jquery'"] - }, - "add" -); - -defineTest( - __dirname, - "externals", - "externals-2", - { - highdash: { - commonjs: "'highdash'", - amd: "'lodash'", - root: "'_'" - } - }, - "add" -); - -defineTest( - __dirname, - "externals", - "externals-1", - { - lodash: { - commonjs: "lodash", - amd: "hidash", - root: "_" - } - }, - "add" -); - -defineTest( - __dirname, - "externals", - "externals-1", - [ - { - a: "false", - b: "true", - "'./ext'": "./hey" - }, - "function(context, request, callback) {" + - "if (/^yourregex$/.test(request)){" + - "return callback(null, 'commonjs ' + request);" + - "}" + - "callback();" + - "}" - ], - "add" -); - -defineTest( - __dirname, - "externals", - "externals-1", - [ - "myObj", - "function(context, request, callback) {" + - "if (/^yourregex$/.test(request)){" + - "return callback(null, 'commonjs ' + request);" + - "}" + - "callback();" + - "}" - ], - "add" -); -*/ diff --git a/lib/init/transformations/mode/__snapshots__/mode.test.js.snap b/lib/init/transformations/mode/__snapshots__/mode.test.js.snap deleted file mode 100644 index 9b457a427bc..00000000000 --- a/lib/init/transformations/mode/__snapshots__/mode.test.js.snap +++ /dev/null @@ -1,43 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`mode transforms correctly using "mode-1" data 1`] = ` -"module.exports = { - mode: 'production' -}; -" -`; - -exports[`mode transforms correctly using "mode-1" data 2`] = ` -"module.exports = { - mode: 'development' -}; -" -`; - -exports[`mode transforms correctly using "mode-1" data 3`] = ` -"module.exports = { - mode: modeVariable -}; -" -`; - -exports[`mode transforms correctly using "mode-2" data 1`] = ` -"module.exports = { - mode: none -} -" -`; - -exports[`mode transforms correctly using "mode-2" data 2`] = ` -"module.exports = { - mode: 'production' -} -" -`; - -exports[`mode transforms correctly using "mode-2" data 3`] = ` -"module.exports = { - mode: 'development' -} -" -`; diff --git a/lib/init/transformations/mode/__testfixtures__/mode-1.input.js b/lib/init/transformations/mode/__testfixtures__/mode-1.input.js deleted file mode 100644 index f053ebf7976..00000000000 --- a/lib/init/transformations/mode/__testfixtures__/mode-1.input.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/lib/init/transformations/mode/__testfixtures__/mode-2.input.js b/lib/init/transformations/mode/__testfixtures__/mode-2.input.js deleted file mode 100644 index d4922f86068..00000000000 --- a/lib/init/transformations/mode/__testfixtures__/mode-2.input.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - mode: 'development' -} diff --git a/lib/init/transformations/mode/mode.js b/lib/init/transformations/mode/mode.js deleted file mode 100644 index 3c92d2880f6..00000000000 --- a/lib/init/transformations/mode/mode.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for mode. Finds the mode property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function modeTransform(j, ast, webpackProperties, action) { - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "mode", - webpackProperties - ) - ); - } else if (action === "add") { - const modeNode = utils.findRootNodesByName(j, ast, "mode"); - if (modeNode.size() !== 0) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "mode", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return modeTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/mode/mode.test.js b/lib/init/transformations/mode/mode.test.js deleted file mode 100644 index 66dc6c2a570..00000000000 --- a/lib/init/transformations/mode/mode.test.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest(__dirname, "mode", "mode-1", "'production'", "init"); -defineTest(__dirname, "mode", "mode-1", "'development'", "init"); -defineTest(__dirname, "mode", "mode-1", "modeVariable", "init"); - -defineTest(__dirname, "mode", "mode-2", "none", "add"); -defineTest(__dirname, "mode", "mode-2", "'production'", "add"); -defineTest(__dirname, "mode", "mode-2", "'development'", "add"); diff --git a/lib/init/transformations/module/__snapshots__/module.test.js.snap b/lib/init/transformations/module/__snapshots__/module.test.js.snap deleted file mode 100644 index 9a7c0dcce10..00000000000 --- a/lib/init/transformations/module/__snapshots__/module.test.js.snap +++ /dev/null @@ -1,257 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`module transforms correctly using "module-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - module: { - rules: [{ - test: /\\\\.(js|vue)$/, - loader: 'eslint-loader', - enforce: 'pre', - include: [customObj, 'Stringy'], - - options: { - formatter: 'someOption' - } - }, { - test: /\\\\.vue$/, - loader: 'vue-loader', - options: vueObject - }, { - test: /\\\\.js$/, - loader: 'babel-loader', - include: [resolve('src'), resolve('test')] - }, { - test: /\\\\.(png|jpe?g|gif|svg)(\\\\?.*)?$/, - loader: 'url-loader', - - options: { - limit: 10000, - name: utils.assetsPath('img/[name].[hash:7].[ext]') - } - }, { - test: /\\\\.(woff2?|eot|ttf|otf)(\\\\?.*)?$/, - loader: 'url-loader', - - options: { - limit: 10000, - name: utils.assetsPath('fonts/[name].[hash:7].[ext]'), - someArr: [Hey] - } - }] - } -} -" -`; - -exports[`module transforms correctly using "module-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - module: { - rules: [{{#if_eq build 'standalone'}}, { - test: /\\\\.(js|vue)$/, - loader: 'eslint-loader', - enforce: 'pre', - include: [customObj, 'Stringy'], - - options: { - formatter: 'someOption' - } - }, { - test: /\\\\.vue$/, - loader: 'vue-loader', - options: vueObject - }, { - test: /\\\\.js$/, - loader: 'babel-loader', - include: [resolve('src'), resolve('test')] - }, { - test: /\\\\.(png|jpe?g|gif|svg)(\\\\?.*)?$/, - loader: 'url-loader', - - options: { - limit: 10000, - name: utils.assetsPath('img/[name].[hash:7].[ext]'), - {{#if_eq build 'standalone'}} - } - }, { - test: /\\\\.(woff2?|eot|ttf|otf)(\\\\?.*)?$/, - loader: 'url-loader', - {{#if_eq build 'standalone'}}, - - options: { - limit: 10000, - name: utils.assetsPath('fonts/[name].[hash:7].[ext]') - } - }] - } -} -" -`; - -exports[`module transforms correctly using "module-0" data 3`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - module: { - rules: [{ - test: /\\\\.(js|vue)$/, - loader: 'eslint-loader', - enforce: 'pre', - include: [customObj, 'Stringy'], - - options: { - formatter: 'someOption' - } - }, { - test: /\\\\.vue$/, - loader: 'vue-loader', - options: vueObject - }, { - test: /\\\\.js$/, - loader: 'babel-loader', - include: [resolve('src'), resolve('test')] - }, { - test: /\\\\.(png|jpe?g|gif|svg)(\\\\?.*)?$/, - loader: 'url-loader', - - options: { - limit: 10000, - name: utils.assetsPath('img/[name].[hash:7].[ext]') - } - }, { - test: /\\\\.(woff2?|eot|ttf|otf)(\\\\?.*)?$/, - loader: 'url-loader', - - options: { - limit: 10000, - name: utils.assetsPath('fonts/[name].[hash:7].[ext]'), - someArr: [Hey] - } - }] - } -} -" -`; - -exports[`module transforms correctly using "module-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - module: { - noParse: /jquery|lodash/, - - rules: [{ - test: /\\\\.js$/, - - parser: { - amd: false - }, - - use: ['htmllint-loader', { - loader: 'html-loader', - - options: { - hello: 'world' - } - }] - }] - } -} -" -`; - -exports[`module transforms correctly using "module-1" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - module: { - noParse: /jquery|lodash/, - - rules: [{ - test: /\\\\.js$/, - - parser: { - amd: false - }, - - use: ['htmllint-loader', { - loader: 'html-loader', - - options: { - hello: 'world' - } - }] - }] - } -} -" -`; - -exports[`module transforms correctly using "module-2" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - module: { - rules: [ - { - loader: \\"'eslint-loader'\\", - enforce: \\"'pre'\\", - include: [\\"hey\\", \\"'Stringy'\\"], - options: { - formatter: \\"'someOption'\\" - } - }, - { - loader: \\"'vue-loader'\\", - options: \\"vueObject\\" - }, - { - loader: \\"'babel-loader'\\", - include: [\\"resolve('src')\\", \\"resolve('test')\\"] - }, - { - loader: \\"'url-loader'\\", - options: { - limit: 10000, - name: \\"utils.assetsPath('img/[name].[hash:7].[ext]')\\", - inject: \\"{{#if_eq build 'standalone'}}\\" - } - }, - { - loader: \\"'url-loader'\\", - inject: \\"{{#if_eq build 'standalone'}}\\", - options: { - limit: \\"10000\\", - name: \\"utils.assetsPath('fonts/[name].[hash:7].[ext]')\\" - } - } - ] - }, -} -" -`; diff --git a/lib/init/transformations/module/__testfixtures__/module-0.input.js b/lib/init/transformations/module/__testfixtures__/module-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/module/__testfixtures__/module-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/module/__testfixtures__/module-1.input.js b/lib/init/transformations/module/__testfixtures__/module-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/module/__testfixtures__/module-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/module/__testfixtures__/module-2.input.js b/lib/init/transformations/module/__testfixtures__/module-2.input.js deleted file mode 100644 index c8bebc01efd..00000000000 --- a/lib/init/transformations/module/__testfixtures__/module-2.input.js +++ /dev/null @@ -1,42 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - module: { - rules: [ - { - loader: "'eslint-loader'", - enforce: "'pre'", - include: ["hey", "'Stringy'"], - options: { - formatter: "'someOption'" - } - }, - { - loader: "'vue-loader'", - options: "vueObject" - }, - { - loader: "'babel-loader'", - include: ["resolve('src')", "resolve('test')"] - }, - { - loader: "'url-loader'", - options: { - limit: 10000, - name: "utils.assetsPath('img/[name].[hash:7].[ext]')", - inject: "{{#if_eq build 'standalone'}}" - } - }, - { - loader: "'url-loader'", - inject: "{{#if_eq build 'standalone'}}", - options: { - limit: "10000", - name: "utils.assetsPath('fonts/[name].[hash:7].[ext]')" - } - } - ] - }, -} diff --git a/lib/init/transformations/module/module.js b/lib/init/transformations/module/module.js deleted file mode 100644 index 0b838e119fb..00000000000 --- a/lib/init/transformations/module/module.js +++ /dev/null @@ -1,73 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for module. Finds the module property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function moduleTransform(j, ast, webpackProperties, action) { - function createModuleProperty(p) { - if (typeof webpackProperties === "string") { - return utils.pushCreateProperty(j, p, "module", webpackProperties); - } - if (Array.isArray(webpackProperties)) { - const externalArray = utils.createArrayWithChildren( - j, - "module", - webpackProperties, - true - ); - return p.value.properties.push(externalArray); - } else { - utils.pushCreateProperty(j, p, "module", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "module"); - } - } - function editModuleProperty(p) { - return utils.pushObjectKeys(j, p, webpackProperties, "module", true); - } - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createModuleProperty)); - } else if (action === "add") { - const moduleNode = utils.findRootNodesByName(j, ast, "module"); - if (moduleNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, editModuleProperty)); - } else if (moduleNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "module" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return moduleTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/module/module.test.js b/lib/init/transformations/module/module.test.js deleted file mode 100644 index ed6356b3bd0..00000000000 --- a/lib/init/transformations/module/module.test.js +++ /dev/null @@ -1,248 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "module", - "module-0", - { - rules: [ - { - test: new RegExp(/\.(js|vue)$/), - loader: "'eslint-loader'", - enforce: "'pre'", - include: ["customObj", "'Stringy'"], - options: { - formatter: "'someOption'" - } - }, - { - test: new RegExp(/\.vue$/), - loader: "'vue-loader'", - options: "vueObject" - }, - { - test: new RegExp(/\.js$/), - loader: "'babel-loader'", - include: ["resolve('src')", "resolve('test')"] - }, - { - test: new RegExp(/\.(png|jpe?g|gif|svg)(\?.*)?$/), - loader: "'url-loader'", - options: { - limit: 10000, - name: "utils.assetsPath('img/[name].[hash:7].[ext]')" - } - }, - { - test: new RegExp(/\.(woff2?|eot|ttf|otf)(\?.*)?$/), - loader: "'url-loader'", - options: { - limit: "10000", - name: "utils.assetsPath('fonts/[name].[hash:7].[ext]')", - someArr: ["Hey"] - } - } - ] - }, - "init" -); - -defineTest( - __dirname, - "module", - "module-1", - { - noParse: /jquery|lodash/, - rules: [ - { - test: new RegExp(/\.js$/), - parser: { - amd: false - }, - use: [ - "'htmllint-loader'", - { - loader: "'html-loader'", - options: { - hello: "'world'" - } - } - ] - } - ] - }, - "init" -); - -defineTest( - __dirname, - "module", - "module-0", - { - rules: [ - "{{#if_eq build 'standalone'}}", - { - test: new RegExp(/\.(js|vue)$/), - loader: "'eslint-loader'", - enforce: "'pre'", - include: ["customObj", "'Stringy'"], - options: { - formatter: "'someOption'" - } - }, - { - test: new RegExp(/\.vue$/), - loader: "'vue-loader'", - options: "vueObject" - }, - { - test: new RegExp(/\.js$/), - loader: "'babel-loader'", - include: ["resolve('src')", "resolve('test')"] - }, - { - test: new RegExp(/\.(png|jpe?g|gif|svg)(\?.*)?$/), - loader: "'url-loader'", - options: { - limit: 10000, - name: "utils.assetsPath('img/[name].[hash:7].[ext]')", - inject: "{{#if_eq build 'standalone'}}" - } - }, - { - test: new RegExp(/\.(woff2?|eot|ttf|otf)(\?.*)?$/), - loader: "'url-loader'", - inject: "{{#if_eq build 'standalone'}}", - options: { - limit: "10000", - name: "utils.assetsPath('fonts/[name].[hash:7].[ext]')" - } - } - ] - }, - "init" -); - -defineTest( - __dirname, - "module", - "module-0", - { - rules: [ - { - test: new RegExp(/\.(js|vue)$/), - loader: "'eslint-loader'", - enforce: "'pre'", - include: ["customObj", "'Stringy'"], - options: { - formatter: "'someOption'" - } - }, - { - test: new RegExp(/\.vue$/), - loader: "'vue-loader'", - options: "vueObject" - }, - { - test: new RegExp(/\.js$/), - loader: "'babel-loader'", - include: ["resolve('src')", "resolve('test')"] - }, - { - test: new RegExp(/\.(png|jpe?g|gif|svg)(\?.*)?$/), - loader: "'url-loader'", - options: { - limit: 10000, - name: "utils.assetsPath('img/[name].[hash:7].[ext]')" - } - }, - { - test: new RegExp(/\.(woff2?|eot|ttf|otf)(\?.*)?$/), - loader: "'url-loader'", - options: { - limit: "10000", - name: "utils.assetsPath('fonts/[name].[hash:7].[ext]')", - someArr: ["Hey"] - } - } - ] - }, - "init" -); - -defineTest( - __dirname, - "module", - "module-1", - { - noParse: /jquery|lodash/, - rules: [ - { - test: new RegExp(/\.js$/), - parser: { - amd: false - }, - use: [ - "'htmllint-loader'", - { - loader: "'html-loader'", - options: { - hello: "'world'" - } - } - ] - } - ] - }, - "add" -); - -defineTest( - __dirname, - "module", - "module-2", - { - rules: [ - { - test: new RegExp(/\.(js|vue)$/), - loader: "'eslint-loader'", - enforce: "'pre'", - include: ["customObj", "'Stringy'"], - options: { - formatter: "'someOption'" - } - }, - { - test: new RegExp(/\.vue$/), - loader: "'vue-loader'", - options: "vueObject" - }, - { - test: new RegExp(/\.js$/), - loader: "'babel-loader'", - include: ["resolve('src')", "resolve('test')"] - }, - { - test: new RegExp(/\.(png|jpe?g|gif|svg)(\?.*)?$/), - loader: "'url-loader'", - options: { - limit: 10000, - name: "utils.assetsPath('img/[name].[hash:7].[ext]')", - inject: "{{#if_eq build 'standalone'}}" - } - }, - { - test: new RegExp(/\.(woff2?|eot|ttf|otf)(\?.*)?$/), - loader: "'url-loader'", - inject: "{{#if_eq build 'standalone'}}", - options: { - limit: "10000", - name: "utils.assetsPath('fonts/[name].[hash:7].[ext]')" - } - } - ] - }, - "add" -); diff --git a/lib/init/transformations/node/__snapshots__/node.test.js.snap b/lib/init/transformations/node/__snapshots__/node.test.js.snap deleted file mode 100644 index c6f9857d484..00000000000 --- a/lib/init/transformations/node/__snapshots__/node.test.js.snap +++ /dev/null @@ -1,22 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`node transforms correctly using "node-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - node: { - console: false, - global: true, - process: true, - Buffer: true, - __filename: mock, - __dirname: mock, - setImmediate: true - } -} -" -`; diff --git a/lib/init/transformations/node/__testfixtures__/node-0.input.js b/lib/init/transformations/node/__testfixtures__/node-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/node/__testfixtures__/node-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/node/node.js b/lib/init/transformations/node/node.js deleted file mode 100644 index e78961d6e34..00000000000 --- a/lib/init/transformations/node/node.js +++ /dev/null @@ -1,44 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for node. Finds the node property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function nodeTransform(j, ast, webpackProperties, action) { - function createNodeProperty(p) { - utils.pushCreateProperty(j, p, "node", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "node"); - } - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createNodeProperty)); - } else if (action === "add") { - const nodeNode = utils.findRootNodesByName(j, ast, "node"); - if (nodeNode.size() !== 0) { - return ast - .find(j.ObjectExpression) - .filter(p => utils.pushObjectKeys(j, p, webpackProperties, "node")); - } else { - return nodeTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/node/node.test.js b/lib/init/transformations/node/node.test.js deleted file mode 100644 index e33fa36a1f9..00000000000 --- a/lib/init/transformations/node/node.test.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "node", - "node-0", - { - console: false, - global: true, - process: true, - Buffer: true, - __filename: "mock", - __dirname: "mock", - setImmediate: true - }, - "init" -); diff --git a/lib/init/transformations/optimization/__snapshots__/optimization.test.js.snap b/lib/init/transformations/optimization/__snapshots__/optimization.test.js.snap deleted file mode 100644 index 5f3b60c9121..00000000000 --- a/lib/init/transformations/optimization/__snapshots__/optimization.test.js.snap +++ /dev/null @@ -1,19 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`optimization transforms correctly using "optimization-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - optimization: { - splitChunks: { - minSize: 1, - chunks: 'all' - } - } -} -" -`; diff --git a/lib/init/transformations/optimization/__testfixtures__/optimization-0.input.js b/lib/init/transformations/optimization/__testfixtures__/optimization-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/optimization/__testfixtures__/optimization-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/optimization/optimization.js b/lib/init/transformations/optimization/optimization.js deleted file mode 100644 index b7089de1411..00000000000 --- a/lib/init/transformations/optimization/optimization.js +++ /dev/null @@ -1,53 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for optimization. Finds the optimization property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function profileTransform(j, ast, webpackProperties, action) { - function createProfileProperty(p) { - utils.pushCreateProperty(j, p, "optimization", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "optimization"); - } - - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createProfileProperty)); - } else if ( - action === "init" && - (webpackProperties.length || typeof webpackProperties === "boolean") - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "optimization", - webpackProperties - ) - ); - } else if (action === "add") { - // TODO - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/optimization/optimization.test.js b/lib/init/transformations/optimization/optimization.test.js deleted file mode 100644 index 4045ac6abf9..00000000000 --- a/lib/init/transformations/optimization/optimization.test.js +++ /dev/null @@ -1,16 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "optimization", - "optimization-0", - { - splitChunks: { - minSize: 1, - chunks: "'all'" - } - }, - "init" -); diff --git a/lib/init/transformations/other/__snapshots__/other.test.js.snap b/lib/init/transformations/other/__snapshots__/other.test.js.snap deleted file mode 100644 index 2ebc9a1a35d..00000000000 --- a/lib/init/transformations/other/__snapshots__/other.test.js.snap +++ /dev/null @@ -1,316 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`amd transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - amd: { - jQuery: true, - kQuery: false - } -} -" -`; - -exports[`amd transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: false, - kQuery: true - } -}; -" -`; - -exports[`bail transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - bail: true -} -" -`; - -exports[`bail transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: false, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false, - bail: false - } -}; -" -`; - -exports[`cache transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - cache: true -} -" -`; - -exports[`cache transforms correctly using "other-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - cache: cacheVal -} -" -`; - -exports[`cache transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: false, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false, - cache: false - } -}; -" -`; - -exports[`cache transforms correctly using "other-1" data 2`] = ` -"module.exports = { - bail: true, - cache: cacheKey, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false, - cache: cacheKey - } -}; -" -`; - -exports[`merge transforms correctly using "other-0" data 1`] = ` -"module.exports = merge(myConfig, { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -}); -" -`; - -exports[`merge transforms correctly using "other-1" data 1`] = ` -"module.exports = merge(TheirConfig, { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false - } -}); -" -`; - -exports[`parallelism transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - parallelism: 10 -} -" -`; - -exports[`parallelism transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 20, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false, - parallelism: 20 - } -}; -" -`; - -exports[`profile transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - profile: true -} -" -`; - -exports[`profile transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: true, - profile: false, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false, - profile: false - } -}; -" -`; - -exports[`recordsInputPath transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - recordsInputPath: path.join('dist', mine) -} -" -`; - -exports[`recordsInputPath transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: path.join('dist', ours), - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false - } -}; -" -`; - -exports[`recordsOutputPath transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - recordsOutputPath: path.join('src', yours) -} -" -`; - -exports[`recordsOutputPath transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: path.join('src', theirs), - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false - } -}; -" -`; - -exports[`recordsPath transforms correctly using "other-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - recordsPath: path.join(__dirname, 'records.json') -} -" -`; - -exports[`recordsPath transforms correctly using "other-1" data 1`] = ` -"module.exports = { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: path.resolve(__dirname, 'gradle.json'), - amd: { - jQuery: true, - kQuery: false - } -}; -" -`; diff --git a/lib/init/transformations/other/__testfixtures__/other-0.input.js b/lib/init/transformations/other/__testfixtures__/other-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/other/__testfixtures__/other-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/other/__testfixtures__/other-1.input.js b/lib/init/transformations/other/__testfixtures__/other-1.input.js deleted file mode 100644 index 79a6b3eaa4b..00000000000 --- a/lib/init/transformations/other/__testfixtures__/other-1.input.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = { - bail: true, - cache: true, - profile: true, - merge: 'NotMuch', - parallelism: 69, - recordsInputPath: 'something', - recordsOutputPath: 'else', - recordsPath: 'Brooklyn', - amd: { - jQuery: true, - kQuery: false - } -}; diff --git a/lib/init/transformations/other/amd.js b/lib/init/transformations/other/amd.js deleted file mode 100644 index d606eba7eb3..00000000000 --- a/lib/init/transformations/other/amd.js +++ /dev/null @@ -1,84 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for amd. Finds the amd property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function amdTransform(j, ast, webpackProperties, action) { - function createAmdProperty(p) { - utils.pushCreateProperty(j, p, "amd", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "amd"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createAmdProperty)); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "amd", - webpackProperties - ) - ); - } else if (action === "add") { - const amdNode = utils.findRootNodesByName(j, ast, "amd"); - if (amdNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "amd" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (amdNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "amd" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return amdTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/bail.js b/lib/init/transformations/other/bail.js deleted file mode 100644 index 474300f057e..00000000000 --- a/lib/init/transformations/other/bail.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for bail. Finds the bail property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function bailTransform(j, ast, webpackProperties, action) { - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "bail", - webpackProperties - ) - ); - } else if (action === "add") { - const bailNode = utils.findRootNodesByName(j, ast, "bail"); - if (bailNode.size() !== 0) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "bail", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return bailTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/cache.js b/lib/init/transformations/other/cache.js deleted file mode 100644 index 7c808ee88ff..00000000000 --- a/lib/init/transformations/other/cache.js +++ /dev/null @@ -1,88 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for cache. Finds the cache property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function cacheTransform(j, ast, webpackProperties, action) { - function createCacheProperty(p) { - utils.pushCreateProperty(j, p, "cache", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "cache"); - } - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createCacheProperty)); - } else if ( - action === "init" && - (webpackProperties.length || typeof webpackProperties === "boolean") - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "cache", - webpackProperties - ) - ); - } else if (action === "add") { - const cacheNode = utils.findRootNodesByName(j, ast, "cache"); - if (cacheNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "cache" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - cacheNode.size() !== 0 && - (typeof webpackProperties === "boolean" || webpackProperties.length > 0) - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "cache", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return cacheTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/merge.js b/lib/init/transformations/other/merge.js deleted file mode 100644 index f77c77882a8..00000000000 --- a/lib/init/transformations/other/merge.js +++ /dev/null @@ -1,47 +0,0 @@ -"use strict"; - -/** - * - * Transform for merge. Finds the merge property from yeoman and creates a way - * for users to allow webpack-merge in their scaffold - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function(j, ast, webpackProperties, action) { - function createMergeProperty(p) { - // FIXME Use j.callExp() - let exportsDecl = p.value.body.map(n => { - if (n.expression) { - return n.expression.right; - } - }); - const bodyLength = exportsDecl.length; - let newVal = {}; - newVal.type = "ExpressionStatement"; - newVal.expression = { - type: "AssignmentExpression", - operator: "=", - left: { - type: "MemberExpression", - computed: false, - object: j.identifier("module"), - property: j.identifier("exports") - }, - right: j.callExpression(j.identifier("merge"), [ - j.identifier(webpackProperties), - exportsDecl.pop() - ]) - }; - p.value.body[bodyLength - 1] = newVal; - } - if (webpackProperties) { - return ast.find(j.Program).filter(p => createMergeProperty(p)); - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/other.test.js b/lib/init/transformations/other/other.test.js deleted file mode 100644 index 7ef7ed04e7d..00000000000 --- a/lib/init/transformations/other/other.test.js +++ /dev/null @@ -1,81 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "amd", - "other-0", - { - jQuery: true, - kQuery: false - }, - "init" -); -defineTest(__dirname, "bail", "other-0", true, "init"); -defineTest(__dirname, "cache", "other-0", true, "init"); -defineTest(__dirname, "cache", "other-0", "cacheVal", "init"); -defineTest(__dirname, "profile", "other-0", true, "init"); -defineTest(__dirname, "merge", "other-0", "myConfig", "init"); - -defineTest(__dirname, "parallelism", "other-0", 10, "init"); -defineTest( - __dirname, - "recordsInputPath", - "other-0", - "path.join('dist', mine)", - "init" -); -defineTest( - __dirname, - "recordsOutputPath", - "other-0", - "path.join('src', yours)", - "init" -); -defineTest( - __dirname, - "recordsPath", - "other-0", - "path.join(__dirname, 'records.json')", - "init" -); - -defineTest( - __dirname, - "amd", - "other-1", - { - jQuery: false, - kQuery: true - }, - "add" -); -defineTest(__dirname, "bail", "other-1", false, "add"); -defineTest(__dirname, "cache", "other-1", false, "add"); -defineTest(__dirname, "cache", "other-1", "cacheKey", "add"); -defineTest(__dirname, "profile", "other-1", false, "add"); -defineTest(__dirname, "merge", "other-1", "TheirConfig", "add"); - -defineTest(__dirname, "parallelism", "other-1", 20, "add"); -defineTest( - __dirname, - "recordsInputPath", - "other-1", - "path.join('dist', ours)", - "add" -); -defineTest( - __dirname, - "recordsOutputPath", - "other-1", - "path.join('src', theirs)", - "add" -); -defineTest( - __dirname, - "recordsPath", - "other-1", - "path.resolve(__dirname, 'gradle.json')", - "add" -); diff --git a/lib/init/transformations/other/parallelism.js b/lib/init/transformations/other/parallelism.js deleted file mode 100644 index 6cbe456f11d..00000000000 --- a/lib/init/transformations/other/parallelism.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for parallelism. Finds the parallelism property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function parallelismTransform( - j, - ast, - webpackProperties, - action -) { - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "parallelism", - webpackProperties - ) - ); - } else if (action === "add") { - const parallelismNode = utils.findRootNodesByName(j, ast, "parallelism"); - if (parallelismNode.size() !== 0) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "parallelism", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return parallelismTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/profile.js b/lib/init/transformations/other/profile.js deleted file mode 100644 index a1454ff015b..00000000000 --- a/lib/init/transformations/other/profile.js +++ /dev/null @@ -1,88 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for profile. Finds the profile property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function profileTransform(j, ast, webpackProperties, action) { - function createProfileProperty(p) { - utils.pushCreateProperty(j, p, "profile", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "profile"); - } - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createProfileProperty)); - } else if ( - action === "init" && - (webpackProperties.length || typeof webpackProperties === "boolean") - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "profile", - webpackProperties - ) - ); - } else if (action === "add") { - const profileNode = utils.findRootNodesByName(j, ast, "profile"); - if (profileNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "profile" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - profileNode.size() !== 0 && - (typeof webpackProperties === "boolean" || webpackProperties.length > 0) - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "profile", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return profileTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/recordsInputPath.js b/lib/init/transformations/other/recordsInputPath.js deleted file mode 100644 index 757d46bdb27..00000000000 --- a/lib/init/transformations/other/recordsInputPath.js +++ /dev/null @@ -1,100 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for recordsInputPath. Finds the recordsInputPath property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function recordsInputPathTransform( - j, - ast, - webpackProperties, - action -) { - function createRecordsInputPathProperty(p) { - utils.pushCreateProperty(j, p, "recordsInputPath", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "recordsInputPath"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment(null, p, createRecordsInputPathProperty) - ); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "recordsInputPath", - webpackProperties - ) - ); - } else if (action === "add") { - const recordsInputPathNode = utils.findRootNodesByName( - j, - ast, - "recordsInputPath" - ); - if ( - recordsInputPathNode.size() !== 0 && - typeof webpackProperties === "object" - ) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "recordsInputPath" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - recordsInputPathNode.size() !== 0 && - webpackProperties.length > 0 - ) { - return utils - .findRootNodesByName(j, ast, "recordsInputPath") - .forEach(p => { - j(p).replaceWith( - j.property( - "init", - utils.createIdentifierOrLiteral(j, "recordsInputPath"), - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - }); - } else { - return recordsInputPathTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/recordsOutputPath.js b/lib/init/transformations/other/recordsOutputPath.js deleted file mode 100644 index 565c9021907..00000000000 --- a/lib/init/transformations/other/recordsOutputPath.js +++ /dev/null @@ -1,100 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for recordsOutputPath. Finds the recordsOutputPath property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function recordsOutputPathTransform( - j, - ast, - webpackProperties, - action -) { - function createRecordsOutputPathProperty(p) { - utils.pushCreateProperty(j, p, "recordsOutputPath", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "recordsOutputPath"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment(null, p, createRecordsOutputPathProperty) - ); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "recordsOutputPath", - webpackProperties - ) - ); - } else if (action === "add") { - const recordsOutputPathNode = utils.findRootNodesByName( - j, - ast, - "recordsOutputPath" - ); - if ( - recordsOutputPathNode.size() !== 0 && - typeof webpackProperties === "object" - ) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "recordsOutputPath" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - recordsOutputPathNode.size() !== 0 && - webpackProperties.length > 0 - ) { - return utils - .findRootNodesByName(j, ast, "recordsOutputPath") - .forEach(p => { - j(p).replaceWith( - j.property( - "init", - utils.createIdentifierOrLiteral(j, "recordsOutputPath"), - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - }); - } else { - return recordsOutputPathTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/other/recordsPath.js b/lib/init/transformations/other/recordsPath.js deleted file mode 100644 index d9d3720a7b9..00000000000 --- a/lib/init/transformations/other/recordsPath.js +++ /dev/null @@ -1,89 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for recordsPath. Finds the recordsPath property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function recordsPathTransform( - j, - ast, - webpackProperties, - action -) { - function createRecordsPathProperty(p) { - utils.pushCreateProperty(j, p, "recordsPath", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "recordsPath"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createRecordsPathProperty)); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "recordsPath", - webpackProperties - ) - ); - } else if (action === "add") { - const recordsPathNode = utils.findRootNodesByName(j, ast, "recordsPath"); - if ( - recordsPathNode.size() !== 0 && - typeof webpackProperties === "object" - ) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "recordsPath" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (recordsPathNode.size() !== 0 && webpackProperties.length > 0) { - return recordsPathNode.forEach(p => { - j(p).replaceWith( - j.property( - "init", - utils.createIdentifierOrLiteral(j, "recordsPath"), - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - }); - } else { - return recordsPathTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/output/__snapshots__/output.test.js.snap b/lib/init/transformations/output/__snapshots__/output.test.js.snap deleted file mode 100644 index 1a2703b6c7b..00000000000 --- a/lib/init/transformations/output/__snapshots__/output.test.js.snap +++ /dev/null @@ -1,36 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`output transforms correctly using "output-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle', - path: 'dist/assets', - pathinfo: true, - publicPath: 'https://google.com', - sourceMapFilename: '[name].map', - sourcePrefix: '\\\\t', - umdNamedDefine: true, - strictModuleExceptionHandling: true - } -} -" -`; - -exports[`output transforms correctly using "output-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'app', - path: 'distro/src', - pathinfo: false, - publicPath: 'https://google.com', - sourceMapFilename: \\"'[name].map'\\", - sourcePrefix: '\\\\t', - umdNamedDefine: true, - strictModuleExceptionHandling: true - }, -} -" -`; diff --git a/lib/init/transformations/output/__testfixtures__/output-0.input.js b/lib/init/transformations/output/__testfixtures__/output-0.input.js deleted file mode 100644 index a9899df14fa..00000000000 --- a/lib/init/transformations/output/__testfixtures__/output-0.input.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - entry: 'index.js' -} diff --git a/lib/init/transformations/output/__testfixtures__/output-1.input.js b/lib/init/transformations/output/__testfixtures__/output-1.input.js deleted file mode 100644 index c6a9e1b2d38..00000000000 --- a/lib/init/transformations/output/__testfixtures__/output-1.input.js +++ /dev/null @@ -1,13 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: "'bundle'", - path: "'dist/assets'", - pathinfo: true, - publicPath: "'https://google.com'", - sourceMapFilename: "'[name].map'", - sourcePrefix: jscodeshift("'\t'"), - umdNamedDefine: true, - strictModuleExceptionHandling: true - }, -} diff --git a/lib/init/transformations/output/output.js b/lib/init/transformations/output/output.js deleted file mode 100644 index f8d0e18795c..00000000000 --- a/lib/init/transformations/output/output.js +++ /dev/null @@ -1,84 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for output. Finds the output property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function outputTransform(j, ast, webpackProperties, action) { - function createOutputProperty(p) { - utils.pushCreateProperty(j, p, "output", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "output"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createOutputProperty)); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "output", - webpackProperties - ) - ); - } else if (action === "add") { - const outputNode = utils.findRootNodesByName(j, ast, "output"); - if (outputNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "output" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (outputNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "output" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return outputTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/output/output.test.js b/lib/init/transformations/output/output.test.js deleted file mode 100644 index 0be5c563a2f..00000000000 --- a/lib/init/transformations/output/output.test.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); -const jscodeshift = require("jscodeshift"); - -defineTest( - __dirname, - "output", - "output-0", - { - filename: "'bundle'", - path: "'dist/assets'", - pathinfo: true, - publicPath: "'https://google.com'", - sourceMapFilename: "'[name].map'", - sourcePrefix: jscodeshift("'\t'"), - umdNamedDefine: true, - strictModuleExceptionHandling: true - }, - "init" -); - -defineTest( - __dirname, - "output", - "output-1", - { - filename: "'app'", - path: "'distro/src'", - pathinfo: false, - publicPath: "'https://google.com'", - sourcePrefix: jscodeshift("'\t'") - }, - "add" -); diff --git a/lib/init/transformations/performance/__snapshots__/performance.test.js.snap b/lib/init/transformations/performance/__snapshots__/performance.test.js.snap deleted file mode 100644 index 5c09253561a..00000000000 --- a/lib/init/transformations/performance/__snapshots__/performance.test.js.snap +++ /dev/null @@ -1,32 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`performance transforms correctly using "performance-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - performance: { - hints: 'warning', - maxEntrypointSize: 400000, - maxAssetSize: 100000, - assetFilter: function(assetFilename) {return assetFilename.endsWith('.js');} - } -} -" -`; - -exports[`performance transforms correctly using "performance-1" data 1`] = ` -"module.exports = { - performance: { - hints: 'nuclear-warning', - maxEntrypointSize: 400000, - maxAssetSize: 6969, - assetFilter: - un(assetFilename) {return assetFilename.endsWith('.js');} - } -} -" -`; diff --git a/lib/init/transformations/performance/__testfixtures__/performance-0.input.js b/lib/init/transformations/performance/__testfixtures__/performance-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/performance/__testfixtures__/performance-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/performance/__testfixtures__/performance-1.input.js b/lib/init/transformations/performance/__testfixtures__/performance-1.input.js deleted file mode 100644 index 6071e30d46f..00000000000 --- a/lib/init/transformations/performance/__testfixtures__/performance-1.input.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - performance: { - hints: "'warning'", - maxEntrypointSize: 400000, - maxAssetSize: 100000, - assetFilter: - "function(assetFilename) {" + - "return assetFilename.endsWith('.js');" + - "}" - } -} diff --git a/lib/init/transformations/performance/performance.js b/lib/init/transformations/performance/performance.js deleted file mode 100644 index f352d165e71..00000000000 --- a/lib/init/transformations/performance/performance.js +++ /dev/null @@ -1,92 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for performance. Finds the performance property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function performanceTransform( - j, - ast, - webpackProperties, - action -) { - function createPerformanceProperty(p) { - utils.pushCreateProperty(j, p, "performance", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "performance"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createPerformanceProperty)); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "performance", - webpackProperties - ) - ); - } else if (action === "add") { - const performanceNode = utils.findRootNodesByName(j, ast, "performance"); - if ( - performanceNode.size() !== 0 && - typeof webpackProperties === "object" - ) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "performance" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (performanceNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "performance" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return performanceTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/performance/performance.test.js b/lib/init/transformations/performance/performance.test.js deleted file mode 100644 index 4b610a98e65..00000000000 --- a/lib/init/transformations/performance/performance.test.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "performance", - "performance-0", - { - hints: "'warning'", - maxEntrypointSize: 400000, - maxAssetSize: 100000, - assetFilter: - "function(assetFilename) {" + - "return assetFilename.endsWith('.js');" + - "}" - }, - "init" -); - -defineTest( - __dirname, - "performance", - "performance-1", - { - hints: "'nuclear-warning'", - maxAssetSize: 6969, - assetFilter: - "un(assetFilename) {" + "return assetFilename.endsWith('.js');" + "}" - }, - "add" -); diff --git a/lib/init/transformations/plugins/__snapshots__/plugins.test.js.snap b/lib/init/transformations/plugins/__snapshots__/plugins.test.js.snap deleted file mode 100644 index edcbbf62050..00000000000 --- a/lib/init/transformations/plugins/__snapshots__/plugins.test.js.snap +++ /dev/null @@ -1,43 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`plugins transforms correctly using "plugins-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - plugins: [ - new webpack.optimize.CommonsChunkPlugin({name:'vendor',filename:'vendor-[hash].min.js'}) - ] -} -" -`; - -exports[`plugins transforms correctly using "plugins-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - plugins: [new webpack.optimize.DefinePlugin()] -} -" -`; - -exports[`plugins transforms correctly using "plugins-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - plugins: [ - 'something', - new webpack.optimize.DefinePlugin()('/* Add your arguments here */') - ] -} -" -`; diff --git a/lib/init/transformations/plugins/__testfixtures__/plugins-0.input.js b/lib/init/transformations/plugins/__testfixtures__/plugins-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/plugins/__testfixtures__/plugins-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/plugins/__testfixtures__/plugins-1.input.js b/lib/init/transformations/plugins/__testfixtures__/plugins-1.input.js deleted file mode 100644 index 0c571f0d243..00000000000 --- a/lib/init/transformations/plugins/__testfixtures__/plugins-1.input.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - plugins: ['something'] -} diff --git a/lib/init/transformations/plugins/plugins.js b/lib/init/transformations/plugins/plugins.js deleted file mode 100644 index 5119fbc2534..00000000000 --- a/lib/init/transformations/plugins/plugins.js +++ /dev/null @@ -1,56 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for plugins. Finds the plugins property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function pluginsTransform(j, ast, webpackProperties, action) { - function createPluginsProperty(p) { - const pluginArray = utils.createArrayWithChildren( - j, - "plugins", - webpackProperties, - true - ); - return p.value.properties.push(pluginArray); - } - if (webpackProperties) { - if (Array.isArray(webpackProperties) && action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createPluginsProperty)); - } else if (action === "add") { - const pluginsNode = utils.findRootNodesByName(j, ast, "plugins"); - if (pluginsNode.size() !== 0) { - return pluginsNode.filter(p => { - let node = utils.createFunctionWithArguments(j, p, webpackProperties); - if (node) { - p.value.value.elements.push(node); - } else { - return null; - } - }); - } else { - return pluginsTransform(j, ast, [webpackProperties], "init"); - } - } else if (action === "remove") { - return utils - .findRootNodesByName(j, ast, "plugins") - .filter(p => - p.value.value.elements.filter(name => name !== webpackProperties) - ); - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/plugins/plugins.test.js b/lib/init/transformations/plugins/plugins.test.js deleted file mode 100644 index 448e0c72769..00000000000 --- a/lib/init/transformations/plugins/plugins.test.js +++ /dev/null @@ -1,36 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "plugins", - "plugins-0", - [ - "new webpack.optimize.CommonsChunkPlugin({name:" + - "'" + - "vendor" + - "'" + - ",filename:" + - "'" + - "vendor" + - "-[hash].min.js'})" - ], - "init" -); - -defineTest( - __dirname, - "plugins", - "plugins-1", - "new webpack.optimize.DefinePlugin()", - "add" -); - -defineTest( - __dirname, - "plugins", - "plugins-0", - "new webpack.optimize.DefinePlugin()", - "add" -); diff --git a/lib/init/transformations/resolve/__snapshots__/resolve.test.js.snap b/lib/init/transformations/resolve/__snapshots__/resolve.test.js.snap deleted file mode 100644 index a9efa8a6090..00000000000 --- a/lib/init/transformations/resolve/__snapshots__/resolve.test.js.snap +++ /dev/null @@ -1,68 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`resolve transforms correctly using "resolve-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - resolve: { - alias: { - {{#if_eq build 'standalone'}}, - hello: 'world', - {{/if_eq}}, - world: hello - }, - - aliasFields: ['browser', wars], - descriptionFiles: ['a', b], - enforceExtension: false, - enforceModuleExtension: false, - extensions: [hey, 'ho'], - mainFields: [main, 'story'], - mainFiles: ['noMainFileHere', iGuess], - modules: [one, 'two'], - unsafeCache: false, - plugins: [somePlugin, 'stringVal'], - symlinks: true - } -} -" -`; - -exports[`resolve transforms correctly using "resolve-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - resolve: { - alias: { - inject: {{#isdf_eq buildasda 'staasdndalone'}}, - hello: 'worlasdd', - inject_1: {{/asd}}, - world: asdc - }, - aliasFields: [\\"'browser'\\", \\"wars\\", 'as'], - descriptionFiles: [\\"'a'\\", \\"b\\", \\"'c'\\", 'd', e, f], - enforceExtension: true, - enforceModuleExtension: false, - extensions: [\\"hey\\", \\"ho\\", ok, 'ho'], - mainFields: [\\"main\\", \\"'story'\\", ok], - mainFiles: [\\"'noMainFileHere'\\", \\"iGuess\\", niGuess], - modules: [\\"one\\", \\"'two'\\"], - unsafeCache: false, - resolveLoader: { - modules: [\\"'node_modules'\\", \\"mode_nodules\\"], - extensions: [\\"jsVal\\", \\"'.json'\\", ok, 'ho'], - mainFields: [\\"loader\\", \\"'main'\\", ok, 'story'], - moduleExtensions: [\\"'-loader'\\", \\"value\\"] - }, - plugins: [\\"somePlugin\\", \\"'stringVal'\\"], - symlinks: false - } -} -" -`; diff --git a/lib/init/transformations/resolve/__testfixtures__/resolve-0.input.js b/lib/init/transformations/resolve/__testfixtures__/resolve-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/resolve/__testfixtures__/resolve-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/resolve/__testfixtures__/resolve-1.input.js b/lib/init/transformations/resolve/__testfixtures__/resolve-1.input.js deleted file mode 100644 index 932c3e5451e..00000000000 --- a/lib/init/transformations/resolve/__testfixtures__/resolve-1.input.js +++ /dev/null @@ -1,31 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - resolve: { - alias: { - inject: "{{#if_eq build 'standalone'}}", - hello: "'world'", - inject_1: "{{/if_eq}}", - world: "hello" - }, - aliasFields: ["'browser'", "wars"], - descriptionFiles: ["'a'", "b", "'c'"], - enforceExtension: false, - enforceModuleExtension: false, - extensions: ["hey", "ho"], - mainFields: ["main", "'story'"], - mainFiles: ["'noMainFileHere'", "iGuess"], - modules: ["one", "'two'"], - unsafeCache: false, - resolveLoader: { - modules: ["'node_modules'", "mode_nodules"], - extensions: ["jsVal", "'.json'"], - mainFields: ["loader", "'main'"], - moduleExtensions: ["'-loader'", "value"] - }, - plugins: ["somePlugin", "'stringVal'"], - symlinks: true - } -} diff --git a/lib/init/transformations/resolve/resolve.js b/lib/init/transformations/resolve/resolve.js deleted file mode 100644 index d62b55693f4..00000000000 --- a/lib/init/transformations/resolve/resolve.js +++ /dev/null @@ -1,73 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for resolve. Finds the resolve property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function resolveTransform(j, ast, webpackProperties, action) { - function createResolveProperty(p) { - if (typeof webpackProperties === "string") { - return utils.pushCreateProperty(j, p, "resolve", webpackProperties); - } - if (Array.isArray(webpackProperties)) { - const externalArray = utils.createArrayWithChildren( - j, - "resolve", - webpackProperties, - true - ); - return p.value.properties.push(externalArray); - } else { - utils.pushCreateProperty(j, p, "resolve", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "resolve"); - } - } - function editResolveProperty(p) { - return utils.pushObjectKeys(j, p, webpackProperties, "resolve", true); - } - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createResolveProperty)); - } else if (action === "add") { - const resolveNode = utils.findRootNodesByName(j, ast, "resolve"); - if (resolveNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, editResolveProperty)); - } else if (resolveNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "resolve" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return resolveTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/resolve/resolve.test.js b/lib/init/transformations/resolve/resolve.test.js deleted file mode 100644 index 40cc3ac37e5..00000000000 --- a/lib/init/transformations/resolve/resolve.test.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "resolve", - "resolve-0", - { - alias: { - inject: "{{#if_eq build 'standalone'}}", - hello: "'world'", - inject_1: "{{/if_eq}}", - world: "hello" - }, - aliasFields: ["'browser'", "wars"], - descriptionFiles: ["'a'", "b"], - enforceExtension: false, - enforceModuleExtension: false, - extensions: ["hey", "'ho'"], - mainFields: ["main", "'story'"], - mainFiles: ["'noMainFileHere'", "iGuess"], - modules: ["one", "'two'"], - unsafeCache: false, - plugins: ["somePlugin", "'stringVal'"], - symlinks: true - }, - "init" -); - -defineTest( - __dirname, - "resolve", - "resolve-1", - { - alias: { - inject: "{{#isdf_eq buildasda 'staasdndalone'}}", - hello: "'worlasdd'", - inject_1: "{{/asd}}", - world: "asdc" - }, - aliasFields: ["'as'"], - descriptionFiles: ["'d'", "e", "f"], - enforceExtension: true, - extensions: ["ok", "'ho'"], - mainFields: ["ok", "'story'"], - mainFiles: ["'noMainFileHere'", "niGuess"], - plugins: ["somePlugin", "'stringVal'"], - symlinks: false - }, - "add" -); diff --git a/lib/init/transformations/resolveLoader/__snapshots__/resolveLoader.test.js.snap b/lib/init/transformations/resolveLoader/__snapshots__/resolveLoader.test.js.snap deleted file mode 100644 index f78b86c4da5..00000000000 --- a/lib/init/transformations/resolveLoader/__snapshots__/resolveLoader.test.js.snap +++ /dev/null @@ -1,31 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`resolveLoader transforms correctly using "resolveLoader-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - resolveLoader: { - modules: ['ok', mode_nodules], - mainFields: [no, 'main'], - moduleExtensions: ['-kn', ok] - } -} -" -`; - -exports[`resolveLoader transforms correctly using "resolveLoader-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - resolveLoader: { - moduleExtensions: ['-loader', '-kn', ok] - } -} -" -`; diff --git a/lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-0.input.js b/lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-1.input.js b/lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-1.input.js deleted file mode 100644 index 78c751511b3..00000000000 --- a/lib/init/transformations/resolveLoader/__testfixtures__/resolveLoader-1.input.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - resolveLoader: { - moduleExtensions: [ '-loader' ] - } -} diff --git a/lib/init/transformations/resolveLoader/resolveLoader.js b/lib/init/transformations/resolveLoader/resolveLoader.js deleted file mode 100644 index 5871672c837..00000000000 --- a/lib/init/transformations/resolveLoader/resolveLoader.js +++ /dev/null @@ -1,85 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for resolveLoader. Finds the resolveLoader property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function resolveLoaderTransform( - j, - ast, - webpackProperties, - action -) { - function createResolveLoaderProperty(p) { - if (typeof webpackProperties === "string") { - return utils.pushCreateProperty(j, p, "resolveLoader", webpackProperties); - } - if (Array.isArray(webpackProperties)) { - const externalArray = utils.createArrayWithChildren( - j, - "resolveLoader", - webpackProperties, - true - ); - return p.value.properties.push(externalArray); - } else { - utils.pushCreateProperty(j, p, "resolveLoader", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "resolveLoader"); - } - } - function editResolveLoaderProperty(p) { - return utils.pushObjectKeys(j, p, webpackProperties, "resolveLoader", true); - } - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createResolveLoaderProperty)); - } else if (action === "add") { - const resolveLoaderNode = utils.findRootNodesByName( - j, - ast, - "resolveLoader" - ); - if ( - resolveLoaderNode.size() !== 0 && - typeof webpackProperties === "object" - ) { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, editResolveLoaderProperty)); - } else if (resolveLoaderNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "resolveLoader" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return resolveLoaderTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/resolveLoader/resolveLoader.test.js b/lib/init/transformations/resolveLoader/resolveLoader.test.js deleted file mode 100644 index fc0192425eb..00000000000 --- a/lib/init/transformations/resolveLoader/resolveLoader.test.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "resolveLoader", - "resolveLoader-0", - { - modules: ["'ok'", "mode_nodules"], - mainFields: ["no", "'main'"], - moduleExtensions: ["'-kn'", "ok"] - }, - "init" -); - -defineTest( - __dirname, - "resolveLoader", - "resolveLoader-1", - { - modules: ["'ok'", "mode_nodules"], - mainFields: ["no", "'main'"], - moduleExtensions: ["'-kn'", "ok"] - }, - "add" -); diff --git a/lib/init/transformations/stats/__snapshots__/stats.test.js.snap b/lib/init/transformations/stats/__snapshots__/stats.test.js.snap deleted file mode 100644 index e78fb4ecf5b..00000000000 --- a/lib/init/transformations/stats/__snapshots__/stats.test.js.snap +++ /dev/null @@ -1,110 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`stats transforms correctly using "stats-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - stats: { - assets: true, - assetsSort: 'field', - cached: true, - cachedAssets: true, - children: true, - chunks: true, - chunkModules: true, - chunkOrigins: true, - chunksSort: 'field', - context: '../src/', - colors: true, - depth: false, - entrypoints: customVal, - errors: true, - errorDetails: true, - exclude: [], - hash: true, - maxModules: 15, - modules: true, - modulesSort: 'field', - performance: true, - providedExports: false, - publicPath: true, - reasons: true, - source: true, - timings: true, - usedExports: false, - version: true, - warnings: true - } -} -" -`; - -exports[`stats transforms correctly using "stats-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - stats: 'errors-only' -} -" -`; - -exports[`stats transforms correctly using "stats-0" data 3`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - stats: { - assets: true, - assetsSort: 'naw', - cached: true, - cachedAssets: true, - children: true, - chunks: true, - version: true, - warnings: false - } -} -" -`; - -exports[`stats transforms correctly using "stats-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - stats: { - assets: true, - assetsSort: 'naw', - cached: true, - cachedAssets: true, - children: true, - chunks: true, - version: true, - warnings: false - } -} -" -`; - -exports[`stats transforms correctly using "stats-1" data 2`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - stats: 'errors-only' -} -" -`; diff --git a/lib/init/transformations/stats/__testfixtures__/stats-0.input.js b/lib/init/transformations/stats/__testfixtures__/stats-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/stats/__testfixtures__/stats-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/stats/__testfixtures__/stats-1.input.js b/lib/init/transformations/stats/__testfixtures__/stats-1.input.js deleted file mode 100644 index 6746b50585e..00000000000 --- a/lib/init/transformations/stats/__testfixtures__/stats-1.input.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - stats: { - assets: false, - assetsSort: "'gold'", - cached: true, - cachedAssets: true, - children: false, - chunks: true, - } -} diff --git a/lib/init/transformations/stats/stats.js b/lib/init/transformations/stats/stats.js deleted file mode 100644 index a3acbde940b..00000000000 --- a/lib/init/transformations/stats/stats.js +++ /dev/null @@ -1,84 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for stats. Finds the stats property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function statsTransform(j, ast, webpackProperties, action) { - function createStatsProperty(p) { - utils.pushCreateProperty(j, p, "stats", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "stats"); - } - if (webpackProperties) { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createStatsProperty)); - } else if (action === "init" && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "stats", - webpackProperties - ) - ); - } else if (action === "add") { - const statsNode = utils.findRootNodesByName(j, ast, "stats"); - if (statsNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "stats" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if (statsNode.size() !== 0 && webpackProperties.length) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "stats" - ) - .forEach(p => { - j(p).replaceWith( - utils.createIdentifierOrLiteral(j, webpackProperties) - ); - }); - } else { - return statsTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/stats/stats.test.js b/lib/init/transformations/stats/stats.test.js deleted file mode 100644 index 7969230b58e..00000000000 --- a/lib/init/transformations/stats/stats.test.js +++ /dev/null @@ -1,76 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "stats", - "stats-0", - { - assets: true, - assetsSort: "'field'", - cached: true, - cachedAssets: true, - children: true, - chunks: true, - chunkModules: true, - chunkOrigins: true, - chunksSort: "'field'", - context: "'../src/'", - colors: true, - depth: false, - entrypoints: "customVal", - errors: true, - errorDetails: true, - exclude: [], - hash: true, - maxModules: 15, - modules: true, - modulesSort: "'field'", - performance: true, - providedExports: false, - publicPath: true, - reasons: true, - source: true, - timings: true, - usedExports: false, - version: true, - warnings: true - }, - "init" -); -defineTest(__dirname, "stats", "stats-0", "'errors-only'", "init"); - -defineTest( - __dirname, - "stats", - "stats-0", - { - assets: true, - assetsSort: "'naw'", - cached: true, - cachedAssets: true, - children: true, - chunks: true, - version: true, - warnings: false - }, - "add" -); -defineTest( - __dirname, - "stats", - "stats-1", - { - assets: true, - assetsSort: "'naw'", - cached: true, - cachedAssets: true, - children: true, - chunks: true, - version: true, - warnings: false - }, - "add" -); -defineTest(__dirname, "stats", "stats-1", "'errors-only'", "add"); diff --git a/lib/init/transformations/target/__snapshots__/target.test.js.snap b/lib/init/transformations/target/__snapshots__/target.test.js.snap deleted file mode 100644 index baf9b79f9da..00000000000 --- a/lib/init/transformations/target/__snapshots__/target.test.js.snap +++ /dev/null @@ -1,65 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`target transforms correctly using "target-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - target: 'async-node' -} -" -`; - -exports[`target transforms correctly using "target-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - target: 'async-node' -} -" -`; - -exports[`target transforms correctly using "target-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - target: node -} -" -`; - -exports[`target transforms correctly using "target-1" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - target: 'node' -} -" -`; - -exports[`target transforms correctly using "target-2" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js', - target: 'node' - }, - target: 'node' -} -" -`; diff --git a/lib/init/transformations/target/__testfixtures__/target-0.input.js b/lib/init/transformations/target/__testfixtures__/target-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/target/__testfixtures__/target-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/target/__testfixtures__/target-1.input.js b/lib/init/transformations/target/__testfixtures__/target-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/target/__testfixtures__/target-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/target/__testfixtures__/target-2.input.js b/lib/init/transformations/target/__testfixtures__/target-2.input.js deleted file mode 100644 index 6387985d19f..00000000000 --- a/lib/init/transformations/target/__testfixtures__/target-2.input.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - target: 'something' -} diff --git a/lib/init/transformations/target/target.js b/lib/init/transformations/target/target.js deleted file mode 100644 index c9c9887d28f..00000000000 --- a/lib/init/transformations/target/target.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for target. Finds the target property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function targetTransform(j, ast, webpackProperties, action) { - if (webpackProperties) { - if (action === "init") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "target", - webpackProperties - ) - ); - } else if (action === "add") { - const targetNode = utils.findRootNodesByName(j, ast, "target"); - if (targetNode.size() !== 0) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "target", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return targetTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/target/target.test.js b/lib/init/transformations/target/target.test.js deleted file mode 100644 index 684811faa53..00000000000 --- a/lib/init/transformations/target/target.test.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest(__dirname, "target", "target-0", "'async-node'", "init"); -defineTest(__dirname, "target", "target-1", "node", "init"); - -defineTest(__dirname, "target", "target-0", "'async-node'", "add"); -defineTest(__dirname, "target", "target-1", "'node'", "add"); -defineTest(__dirname, "target", "target-2", "'node'", "add"); diff --git a/lib/init/transformations/top-scope/__snapshots__/top-scope.test.js.snap b/lib/init/transformations/top-scope/__snapshots__/top-scope.test.js.snap deleted file mode 100644 index dd59a02c372..00000000000 --- a/lib/init/transformations/top-scope/__snapshots__/top-scope.test.js.snap +++ /dev/null @@ -1,14 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`top-scope transforms correctly using "top-scope-0" data 1`] = ` -"const test = 'me'; -module.exports = {} -" -`; - -exports[`top-scope transforms correctly using "top-scope-1" data 1`] = ` -"const webpack = require(\\"webpack\\"); - -module.exports = {} -" -`; diff --git a/lib/init/transformations/top-scope/__testfixtures__/top-scope-0.input.js b/lib/init/transformations/top-scope/__testfixtures__/top-scope-0.input.js deleted file mode 100644 index 4ba52ba2c8d..00000000000 --- a/lib/init/transformations/top-scope/__testfixtures__/top-scope-0.input.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {} diff --git a/lib/init/transformations/top-scope/__testfixtures__/top-scope-1.input.js b/lib/init/transformations/top-scope/__testfixtures__/top-scope-1.input.js deleted file mode 100644 index 66b65233d07..00000000000 --- a/lib/init/transformations/top-scope/__testfixtures__/top-scope-1.input.js +++ /dev/null @@ -1,3 +0,0 @@ -const webpack = require("webpack"); - -module.exports = {} diff --git a/lib/init/transformations/top-scope/top-scope.js b/lib/init/transformations/top-scope/top-scope.js deleted file mode 100644 index b897484157f..00000000000 --- a/lib/init/transformations/top-scope/top-scope.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * - * Get an property named topScope from yeoman and inject it to the top scope of - * the config, outside module.exports - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function(j, ast, webpackProperties, action) { - function createTopScopeProperty(p) { - webpackProperties.forEach(n => { - if ( - !p.value.body[0].declarations || - n.indexOf(p.value.body[0].declarations[0].id.name) <= 0 - ) { - p.value.body.splice(-1, 0, n); - } - }); - } - if (webpackProperties) { - return ast.find(j.Program).filter(p => createTopScopeProperty(p)); - } else { - return ast; - } -}; diff --git a/lib/init/transformations/top-scope/top-scope.test.js b/lib/init/transformations/top-scope/top-scope.test.js deleted file mode 100644 index 22f8f5885bc..00000000000 --- a/lib/init/transformations/top-scope/top-scope.test.js +++ /dev/null @@ -1,18 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "top-scope", - "top-scope-0", - ["const test = 'me';"], - "init" -); -defineTest( - __dirname, - "top-scope", - "top-scope-1", - ["const webpack = require('webpack');"], - "add" -); diff --git a/lib/init/transformations/watch/__snapshots__/watch.test.js.snap b/lib/init/transformations/watch/__snapshots__/watch.test.js.snap deleted file mode 100644 index e52cdb787d3..00000000000 --- a/lib/init/transformations/watch/__snapshots__/watch.test.js.snap +++ /dev/null @@ -1,93 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`watch transforms correctly using "watch-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watch: true -} -" -`; - -exports[`watch transforms correctly using "watch-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watch: false -} -" -`; - -exports[`watch transforms correctly using "watch-0" data 3`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watch: true -} -" -`; - -exports[`watch transforms correctly using "watch-0" data 4`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watch: false -} -" -`; - -exports[`watch transforms correctly using "watch-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watch: true -} -" -`; - -exports[`watch transforms correctly using "watch-1" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watch: false -} -" -`; - -exports[`watch transforms correctly using "watch-4" data 1`] = ` -"module.exports = { - watch: false -} -" -`; - -exports[`watch transforms correctly using "watch-4" data 2`] = ` -"module.exports = { - watch: somehin -} -" -`; diff --git a/lib/init/transformations/watch/__snapshots__/watchOptions.test.js.snap b/lib/init/transformations/watch/__snapshots__/watchOptions.test.js.snap deleted file mode 100644 index 0c6485ada36..00000000000 --- a/lib/init/transformations/watch/__snapshots__/watchOptions.test.js.snap +++ /dev/null @@ -1,101 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`watchOptions transforms correctly using "watch-0" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watchOptions: { - aggregateTimeout: 300, - poll: 1000, - ignored: /node_modules/ - } -} -" -`; - -exports[`watchOptions transforms correctly using "watch-0" data 2`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watchOptions: { - aggregateTimeout: 300, - poll: 1000, - ignored: /node_modules/ - } -} -" -`; - -exports[`watchOptions transforms correctly using "watch-1" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watchOptions: { - aggregateTimeout: 300, - poll: 1000, - ignored: /node_modules/ - } -} -" -`; - -exports[`watchOptions transforms correctly using "watch-2" data 1`] = ` -"module.exports = { - entry: 'index.js', - - output: { - filename: 'bundle.js' - }, - - watchOptions: { - aggregateTimeout: 300, - poll: 1000, - ignored: /node_modules/ - } -} -" -`; - -exports[`watchOptions transforms correctly using "watch-3" data 1`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - watchOptions: { - aggregateTimeout: 100, - poll: 69, - ignored: /node_modules/ - }, - watch: 'me' -} -" -`; - -exports[`watchOptions transforms correctly using "watch-3" data 2`] = ` -"module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - watchOptions: { - aggregateTimeout: 100, - poll: 90, - ignored: abc - }, - watch: 'me' -} -" -`; diff --git a/lib/init/transformations/watch/__testfixtures__/watch-0.input.js b/lib/init/transformations/watch/__testfixtures__/watch-0.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/watch/__testfixtures__/watch-0.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/watch/__testfixtures__/watch-1.input.js b/lib/init/transformations/watch/__testfixtures__/watch-1.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/watch/__testfixtures__/watch-1.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/watch/__testfixtures__/watch-2.input.js b/lib/init/transformations/watch/__testfixtures__/watch-2.input.js deleted file mode 100644 index ea0822c2484..00000000000 --- a/lib/init/transformations/watch/__testfixtures__/watch-2.input.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - } -} diff --git a/lib/init/transformations/watch/__testfixtures__/watch-3.input.js b/lib/init/transformations/watch/__testfixtures__/watch-3.input.js deleted file mode 100644 index 25500c14aac..00000000000 --- a/lib/init/transformations/watch/__testfixtures__/watch-3.input.js +++ /dev/null @@ -1,12 +0,0 @@ -module.exports = { - entry: 'index.js', - output: { - filename: 'bundle.js' - }, - watchOptions: { - aggregateTimeout: 100, - poll: 90, - ignored: "/ok/" - }, - watch: 'me' -} diff --git a/lib/init/transformations/watch/__testfixtures__/watch-4.input.js b/lib/init/transformations/watch/__testfixtures__/watch-4.input.js deleted file mode 100644 index 67ef2d9266b..00000000000 --- a/lib/init/transformations/watch/__testfixtures__/watch-4.input.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - watch: 'someone' -} diff --git a/lib/init/transformations/watch/watch.js b/lib/init/transformations/watch/watch.js deleted file mode 100644 index 57c0c1450e4..00000000000 --- a/lib/init/transformations/watch/watch.js +++ /dev/null @@ -1,85 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for watch. Finds the watch property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function watchTransform(j, ast, webpackProperties, action) { - function createWatchProperty(p) { - utils.pushCreateProperty(j, p, "watch", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "watch"); - } - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createWatchProperty)); - } else if (action === "init" && typeof webpackProperties === "boolean") { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "watch", - webpackProperties - ) - ); - } else if (action === "add") { - const watchNode = utils.findRootNodesByName(j, ast, "watch"); - if (watchNode.size() !== 0 && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "watch" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - watchNode.size() !== 0 && - (webpackProperties.length || typeof webpackProperties === "boolean") - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "watch", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return watchTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/watch/watch.test.js b/lib/init/transformations/watch/watch.test.js deleted file mode 100644 index de31910e8bc..00000000000 --- a/lib/init/transformations/watch/watch.test.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest(__dirname, "watch", "watch-0", true, "init"); -defineTest(__dirname, "watch", "watch-0", false, "init"); -defineTest(__dirname, "watch", "watch-1", true, "init"); -defineTest(__dirname, "watch", "watch-1", false, "init"); - -defineTest(__dirname, "watch", "watch-0", true, "add"); -defineTest(__dirname, "watch", "watch-0", false, "add"); -defineTest(__dirname, "watch", "watch-4", false, "add"); -defineTest(__dirname, "watch", "watch-4", "somehin", "add"); diff --git a/lib/init/transformations/watch/watchOptions.js b/lib/init/transformations/watch/watchOptions.js deleted file mode 100644 index ef8d807e3e6..00000000000 --- a/lib/init/transformations/watch/watchOptions.js +++ /dev/null @@ -1,100 +0,0 @@ -"use strict"; - -const utils = require("../../../utils/ast-utils"); - -/** - * - * Transform for watchOptions. Finds the watchOptions property from yeoman and creates a - * property based on what the user has given us. - * - * @param j — jscodeshift API - * @param ast - jscodeshift API - * @param {any} webpackProperties - transformation object to scaffold - * @param {String} action - action that indicates what to be done to the AST - * @returns ast - jscodeshift API - */ - -module.exports = function watchOptionsTransform( - j, - ast, - webpackProperties, - action -) { - function createWatchOptionsProperty(p) { - utils.pushCreateProperty(j, p, "watchOptions", j.objectExpression([])); - return utils.pushObjectKeys(j, p, webpackProperties, "watchOptions"); - } - if (webpackProperties || typeof webpackProperties === "boolean") { - if (action === "init" && typeof webpackProperties === "object") { - return ast - .find(j.ObjectExpression) - .filter(p => utils.isAssignment(null, p, createWatchOptionsProperty)); - } else if ( - action === "init" && - (webpackProperties.length || typeof webpackProperties === "boolean") - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.isAssignment( - j, - p, - utils.pushCreateProperty, - "watchOptions", - webpackProperties - ) - ); - } else if (action === "add") { - const watchOptionsNode = utils.findRootNodesByName( - j, - ast, - "watchOptions" - ); - if ( - watchOptionsNode.size() !== 0 && - typeof webpackProperties === "object" - ) { - return ast - .find(j.ObjectExpression) - .filter( - p => - utils.safeTraverse(p, ["parentPath", "value", "key", "name"]) === - "watchOptions" - ) - .filter(p => { - Object.keys(webpackProperties).forEach(prop => { - utils.checkIfExistsAndAddValue( - j, - p, - prop, - utils.createIdentifierOrLiteral(j, webpackProperties[prop]) - ); - }); - return ast; - }); - } else if ( - watchOptionsNode.size() !== 0 && - (typeof webpackProperties === "boolean" || webpackProperties.length > 0) - ) { - return ast - .find(j.ObjectExpression) - .filter(p => - utils.checkIfExistsAndAddValue( - j, - p, - "watchOptions", - utils.createIdentifierOrLiteral(j, webpackProperties) - ) - ); - } else { - return watchOptionsTransform(j, ast, webpackProperties, "init"); - } - } else if (action === "remove") { - // TODO - } else if (action === "update") { - // TODO - } - } else { - return ast; - } -}; diff --git a/lib/init/transformations/watch/watchOptions.test.js b/lib/init/transformations/watch/watchOptions.test.js deleted file mode 100644 index d55cb68928f..00000000000 --- a/lib/init/transformations/watch/watchOptions.test.js +++ /dev/null @@ -1,71 +0,0 @@ -"use strict"; - -const defineTest = require("../../../utils/defineTest"); - -defineTest( - __dirname, - "watchOptions", - "watch-0", - { - aggregateTimeout: 300, - poll: 1000, - ignored: "/node_modules/" - }, - "init" -); - -defineTest( - __dirname, - "watchOptions", - "watch-1", - { - aggregateTimeout: 300, - poll: 1000, - ignored: "/node_modules/" - }, - "init" -); - -defineTest( - __dirname, - "watchOptions", - "watch-2", - { - aggregateTimeout: 300, - poll: 1000, - ignored: "/node_modules/" - }, - "init" -); - -defineTest( - __dirname, - "watchOptions", - "watch-0", - { - aggregateTimeout: 300, - poll: 1000, - ignored: "/node_modules/" - }, - "add" -); -defineTest( - __dirname, - "watchOptions", - "watch-3", - { - poll: 69, - ignored: "/node_modules/" - }, - "add" -); - -defineTest( - __dirname, - "watchOptions", - "watch-3", - { - ignored: "abc" - }, - "add" -); diff --git a/lib/migrate/uglifyJsPlugin/__testfixtures__/.editorconfig b/lib/migrate/uglifyJsPlugin/__testfixtures__/.editorconfig deleted file mode 100644 index adbdb1ba476..00000000000 --- a/lib/migrate/uglifyJsPlugin/__testfixtures__/.editorconfig +++ /dev/null @@ -1,3 +0,0 @@ -[*] -indent_style = space -indent_size = 4 diff --git a/lib/migrate/uglifyJsPlugin/uglifyJsPlugin.js b/lib/migrate/uglifyJsPlugin/uglifyJsPlugin.js index 7d8a99ac31e..a65e32a1692 100644 --- a/lib/migrate/uglifyJsPlugin/uglifyJsPlugin.js +++ b/lib/migrate/uglifyJsPlugin/uglifyJsPlugin.js @@ -2,7 +2,6 @@ const { findPluginsByName, safeTraverse, createProperty, - pushCreateProperty, getRequire, findPluginsArrayAndRemoveIfEmpty } = require("../../utils/ast-utils"); @@ -26,7 +25,9 @@ module.exports = function(j, ast) { const searchForRequirePlugin = ast .find(j.VariableDeclarator) - .filter(j.filters.VariableDeclarator.requiresModule("uglifyjs-webpack-plugin")); + .filter( + j.filters.VariableDeclarator.requiresModule("uglifyjs-webpack-plugin") + ); /** * Look for a variable declaration which requires uglifyjs-webpack-plugin @@ -36,7 +37,9 @@ module.exports = function(j, ast) { pluginVariableAssignment = node.value.id.name; }); - pluginVariableAssignment = !pluginVariableAssignment ? "webpack.optimize.UglifyJsPlugin" : pluginVariableAssignment; + pluginVariableAssignment = !pluginVariableAssignment + ? "webpack.optimize.UglifyJsPlugin" + : pluginVariableAssignment; findPluginsByName(j, ast, [pluginVariableAssignment]).forEach(node => { let expressionContent; @@ -51,7 +54,7 @@ module.exports = function(j, ast) { * Otherwise, rely on default options */ if (pluginOptions.length) { - /* + /* * If user is using UglifyJsPlugin directly from webpack * transformation must: * - remove it @@ -60,27 +63,55 @@ module.exports = function(j, ast) { */ if (pluginVariableAssignment.includes("webpack")) { // create require for uglify-webpack-plugin - const pathRequire = getRequire(j, "UglifyJsPlugin", "uglifyjs-webpack-plugin"); + const pathRequire = getRequire( + j, + "UglifyJsPlugin", + "uglifyjs-webpack-plugin" + ); // append to source code. - ast.find(j.Program).replaceWith(p => j.program([].concat(pathRequire).concat(p.value.body))); + ast + .find(j.Program) + .replaceWith(p => + j.program([].concat(pathRequire).concat(p.value.body)) + ); expressionContent = j.property( "init", j.identifier("minimizer"), - j.arrayExpression([j.newExpression(j.identifier("UglifyJsPlugin"), [pluginOptions[0]])]) + j.arrayExpression([ + j.newExpression(j.identifier("UglifyJsPlugin"), [pluginOptions[0]]) + ]) ); } else { - expressionContent = j.property("init", j.identifier("minimizer"), j.arrayExpression([node.value])); + expressionContent = j.property( + "init", + j.identifier("minimizer"), + j.arrayExpression([node.value]) + ); } } else { searchForRequirePlugin.forEach(node => j(node).remove()); } const minimizeProperty = createProperty(j, "minimize", "true"); - expressionContent = (expressionContent) ? [minimizeProperty, expressionContent] : [minimizeProperty]; - // creates optimization property at the body of the config. - pushCreateProperty(j, configBody, "optimization", j.objectExpression(expressionContent)); + if (expressionContent) { + configBody.value.properties.push( + j.property( + "init", + j.identifier("optimization"), + j.objectExpression([minimizeProperty, expressionContent]) + ) + ); + } else { + configBody.value.properties.push( + j.property( + "init", + j.identifier("optimization"), + j.objectExpression([minimizeProperty]) + ) + ); + } // remove the old Uglify plugin from Plugins array. j(node).remove(); diff --git a/lib/utils/__snapshots__/ast-utils.test.js.snap b/lib/utils/__snapshots__/ast-utils.test.js.snap index aeec09b728d..b907e8f7b31 100644 --- a/lib/utils/__snapshots__/ast-utils.test.js.snap +++ b/lib/utils/__snapshots__/ast-utils.test.js.snap @@ -1,32 +1,5 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`utils checkIfExistsAndAddValue should create new prop if none exist 1`] = ` -" - module.exports = { - entry: 'index.js', - externals: \\"React\\" - } - " -`; - -exports[`utils checkIfExistsAndAddValue should override prop if it exists 1`] = ` -" - module.exports = { - entry: \\"app.js\\" - } - " -`; - -exports[`utils createArrayWithChildren should add all children of an array to a new one with a supplied key 1`] = `"myVeryOwnKey: ['hello', world]"`; - -exports[`utils createArrayWithChildren should find an prop that matches key and create an array with it 1`] = `"react: ['bo']"`; - -exports[`utils createEmptyArrayProperty should create an array with no properties 1`] = `"its-lit: []"`; - -exports[`utils createExternalRegExp should create an regExp property that has been parsed by jscodeshift 1`] = `"\\"\\\\t\\""`; - -exports[`utils createFunctionWithArguments Should create a empty function with a name 1`] = `"ringoStar(\\"/* Add your arguments here */\\")"`; - exports[`utils createIdentifierOrLiteral should create basic literal 1`] = `"'stringLiteral'"`; exports[`utils createIdentifierOrLiteral should create boolean 1`] = `"true"`; @@ -35,8 +8,6 @@ exports[`utils createLiteral should create basic literal 1`] = `"\\"stringLitera exports[`utils createLiteral should create boolean 1`] = `"true"`; -exports[`utils createObjectWithSuppliedProperty should create an object with a property supplied by us 1`] = `"its-lit: {}"`; - exports[`utils createOrUpdatePluginByName should add an object as an argument 1`] = ` "[new Plugin({ foo: true @@ -107,43 +78,3 @@ exports[`utils findPluginsArrayAndRemoveIfEmpty should remove plugins property 1 `; exports[`utils getRequire should create a require statement 1`] = `"const filesys = require(\\"fs\\");"`; - -exports[`utils isAssignment should allow custom transform functions instead of singularProperty 1`] = ` -"module.exports = { - plugins: [one, two, three] -}" -`; - -exports[`utils isAssignment should invoke a callback if parent type is AssignmentExpression 1`] = ` -"module.exports = { - context: Heyho -}" -`; - -exports[`utils loopThroughObjects Should use recursion and add elements to a node 1`] = ` -"module.exports = { - hello: { - webpack: cli - } -}" -`; - -exports[`utils pushCreateProperty should create an object or property and push the value to a node 1`] = ` -"module.exports = { - pushMe: { - just: pushed - } - }" -`; - -exports[`utils pushObjectKeys should push object to an node using Object.keys 1`] = ` -"module.exports = { - pushMe: { - hello: { - world: { - its: 'great' - } - } - } - }" -`; diff --git a/lib/utils/ast-utils.js b/lib/utils/ast-utils.js index 43657059acf..cfdd6ced81f 100644 --- a/lib/utils/ast-utils.js +++ b/lib/utils/ast-utils.js @@ -1,4 +1,3 @@ -const hashtable = require("./hashtable"); const validateIdentifier = require("./validate-identifier"); function safeTraverse(obj, paths) { @@ -61,7 +60,6 @@ function findPluginsByName(j, node, pluginNamesArray) { }); } - /** * It lookouts for the plugins property and, if the array is empty, it removes it from the AST * @param {any} j - jscodeshift API @@ -70,8 +68,13 @@ function findPluginsByName(j, node, pluginNamesArray) { */ function findPluginsArrayAndRemoveIfEmpty(j, rootNode) { - return rootNode.find(j.Identifier, { name: "plugins" }).forEach((node) => { - const elements = safeTraverse(node, ["parent", "value", "value", "elements"]); + return rootNode.find(j.Identifier, { name: "plugins" }).forEach(node => { + const elements = safeTraverse(node, [ + "parent", + "value", + "value", + "elements" + ]); if (!elements.length) { j(node.parent).remove(); } @@ -162,12 +165,16 @@ function createIdentifierOrLiteral(j, val) { literalVal = Number(val); return j.literal(literalVal); } - if (val.__paths) { - return createExternalRegExp(j, val); + let regExpVal = val.__paths[0].value.program.body[0].expression; + return j.literal(regExpVal.value); } else { // Use identifier instead - if (!validateIdentifier.isKeyword(literalVal) || !validateIdentifier.isIdentifierStart(literalVal) || !validateIdentifier.isIdentifierChar(literalVal)) + if ( + !validateIdentifier.isKeyword(literalVal) || + !validateIdentifier.isIdentifierStart(literalVal) || + !validateIdentifier.isIdentifierChar(literalVal) + ) return j.identifier(literalVal); } } @@ -370,372 +377,58 @@ function getRequire(j, constName, packagePath) { /** * - * If a prop exists, it overrides it, else it creates a new one + * Recursively adds an object/property to a node * @param {any} j — jscodeshift API - * @param {Node} node - objectexpression to check - * @param {String} key - Key of the property - * @param {String} value - computed value of the property - * @returns {Void} + * @param {Node} p - AST node + * @param {String} key - key of a key/val object + * @param {Any} value - Any type of object + * @returns {Node} - the created ast */ -function checkIfExistsAndAddValue(j, node, key, value) { - const existingProp = node.value.properties.filter( - prop => prop.key.name === key - ); - let prop; - if (existingProp.length > 0) { - prop = existingProp[0]; - prop.value = value; - } else { - prop = j.property("init", j.identifier(key), value); - node.value.properties.push(prop); +function addProperty(j, p, key, value) { + let valForNode; + if (!p) { + return; } -} - -/** - * - * Creates an empty array - * @param {any} j — jscodeshift API - * @param {String} key - array name - * @returns {Array} arr - An empty array - */ -function createEmptyArrayProperty(j, key) { - return j.property("init", j.identifier(key), j.arrayExpression([])); -} - -/** - * - * Creates an array and iterates on an object with properties - * - * @param {any} j — jscodeshift API - * @param {String} key - object name - * @param {String} subProps - computed value of the property - * @param {Boolean} shouldDropKeys - bool to ask to use obj.keys or not - * @returns {Array} arr - An array with the object properties - */ - -function createArrayWithChildren(j, key, subProps, shouldDropKeys) { - let arr = createEmptyArrayProperty(j, key); - if (shouldDropKeys) { - subProps.forEach(subProperty => { - let objectOfArray = j.objectExpression([]); - if (typeof subProperty !== "string") { - loopThroughObjects(j, objectOfArray, subProperty); - arr.value.elements.push(objectOfArray); - } else { - return arr.value.elements.push( - createIdentifierOrLiteral(j, subProperty) - ); - } + if (Array.isArray(value)) { + const arr = j.arrayExpression([]); + value.filter(val => val).forEach(val => { + addProperty(j, arr, null, val); }); - } else { - Object.keys(subProps[key]).forEach(subProperty => { - arr.value.elements.push( - createIdentifierOrLiteral(j, subProps[key][subProperty]) - ); + valForNode = arr; + } else if ( + typeof value === "object" && + !(value.__paths || value instanceof RegExp) + ) { + // object -> loop through it + let objectExp = j.objectExpression([]); + Object.keys(value).forEach(prop => { + addProperty(j, objectExp, prop, value[prop]); }); + valForNode = objectExp; + } else { + valForNode = createIdentifierOrLiteral(j, value); } - return arr; -} - -/** - * - * Loops through an object and adds property to an object with no identifier - * @param {any} j — jscodeshift API - * @param {Node} p - node to add value to - * @param {Object} obj - Object to loop through - * @returns {Function | Node} - Either pushes the node, or reruns until - * nothing is left - */ - -function loopThroughObjects(j, p, obj) { - Object.keys(obj).forEach(prop => { - if (prop.indexOf("inject") >= 0) { - // TODO to insert the type of node, identifier or literal - const propertyExpression = createIdentifierOrLiteral(j, obj[prop]); - return p.properties.push(propertyExpression); - } - // eslint-disable-next-line no-irregular-whitespace - if (typeof obj[prop] !== "object" || obj[prop] instanceof RegExp) { - p.properties.push( - createObjectWithSuppliedProperty( - j, - prop, - createIdentifierOrLiteral(j, obj[prop]) - ) - ); - } else if (Array.isArray(obj[prop])) { - let arrayProp = createArrayWithChildren(j, prop, obj[prop], true); - p.properties.push(arrayProp); - } else { - let objectBlock = j.objectExpression([]); - let propertyOfBlock = createObjectWithSuppliedProperty( - j, - prop, - objectBlock - ); - loopThroughObjects(j, objectBlock, obj[prop]); - p.properties.push(propertyOfBlock); - } - }); -} - -/** - * - * Creates an object with an supplied property as parameter - * - * @param {any} j — jscodeshift API - * @param {String} key - object name - * @param {Node} prop - property to be added - * @returns {Node} - An property with the supplied property - */ - -function createObjectWithSuppliedProperty(j, key, prop) { - return j.property("init", j.identifier(key), prop); -} - -/** - * - * Finds a regexp property with an already parsed AST from the user - * @param {any} j — jscodeshift API - * @param {String} prop - property to find the value at - * @returns {Node} - A literal node with the found regexp - */ - -function createExternalRegExp(j, prop) { - let regExpProp = prop.__paths[0].value.program.body[0].expression; - return j.literal(regExpProp.value); -} - -/** - * - * Creates a property and pushes the value to a node - * - * @param {any} j — jscodeshift API - * @param {Node} p - Node to push against - * @param {String} key - key used as identifier - * @param {String} val - property value - * @returns {Node} - Returns node the pushed property - */ - -function pushCreateProperty(j, p, key, val) { - let property; - const findProp = findRootNodesByName(j, j(p), key); - if (findProp.size()) { - findProp.filter(p => { - p.value.value = createIdentifierOrLiteral(j, val); - }); + let pushVal; + if (key) { + pushVal = j.property("init", j.identifier(key), valForNode); } else { - if (val.hasOwnProperty("type")) { - property = val; - } else { - property = createIdentifierOrLiteral(j, val); - } - return p.value.properties.push( - createObjectWithSuppliedProperty(j, key, property) - ); + pushVal = valForNode; } -} - -/** - * - * @param {any} j — jscodeshift API - * @param {Node} p - path to push - * @param {Object} webpackProperties - The object to loop over - * @param {String} name - Key that will be the identifier we find and add values to - * @returns {Node | Function} Returns a function that will push a node if - * subProperty is an array, else it will invoke a function that will push a single node - */ - -function pushObjectKeys(j, p, webpackProperties, name, reassign) { - p.value.properties - .filter(n => safeTraverse(n, ["key", "name"]) === name) - .forEach(prop => { - Object.keys(webpackProperties).forEach(webpackProp => { - try { - webpackProperties[webpackProp] = JSON.parse( - webpackProperties[webpackProp] - ); - } catch (err) {} - - if (webpackProp.indexOf("inject") >= 0) { - if (reassign) { - return checkIfExistsAndAddValue( - j, - prop, - webpackProp, - webpackProperties[webpackProp] - ); - } else { - return prop.value.properties.push( - createIdentifierOrLiteral(j, webpackProperties[webpackProp]) - ); - } - } else if (Array.isArray(webpackProperties[webpackProp])) { - if (reassign) { - return j(p) - .find(j.Property, { key: { name: webpackProp } }) - .filter(props => props.value.key.name === webpackProp) - .forEach(property => { - let markedProps = []; - let propsToMerge = []; - property.value.value.elements.forEach(elem => { - if (elem.value) { - markedProps.push(elem.value); - } - }); - webpackProperties[webpackProp].forEach(underlyingprop => { - if (typeof underlyingprop === "object") { - //TODO loaders - return; - } - if (!markedProps.includes(underlyingprop)) { - propsToMerge.push(underlyingprop); - } - }); - const hashtableForProps = hashtable(propsToMerge); - hashtableForProps.forEach(elem => { - property.value.value.elements.push( - createIdentifierOrLiteral(j, elem) - ); - }); - }); - } else { - const propArray = createArrayWithChildren( - j, - webpackProp, - webpackProperties[webpackProp], - true - ); - return prop.value.properties.push(propArray); - } - } else if ( - typeof webpackProperties[webpackProp] !== "object" || - webpackProperties[webpackProp].__paths || - webpackProperties[webpackProp] instanceof RegExp - ) { - return pushCreateProperty( - j, - prop, - webpackProp, - webpackProperties[webpackProp] - ); - } else { - if (!reassign) { - pushCreateProperty(j, prop, webpackProp, j.objectExpression([])); - } - return pushObjectKeys( - j, - prop, - webpackProperties[webpackProp], - webpackProp, - reassign - ); - } - }); - }); -} - -/** - * - * Checks if we are at the correct node and later invokes a callback - * for the transforms to either use their own transform function or - * use pushCreateProperty if the transform doesn't expect any properties - * - * @param {any} j — jscodeshift API - * @param {Node} p - Node to push against - * @param {Function} cb - callback to be invoked - * @param {String} identifier - key to use as property - * @param {Object} property - WebpackOptions that later will be converted via - * pushCreateProperty via WebpackOptions[identifier] - * @returns {Function} cb - Returns the callback and pushes a new node - */ - -function isAssignment(j, p, cb, identifier, property) { - if (p.parent.value.type === "AssignmentExpression") { - if (j) { - return cb(j, p, identifier, property); - } else { - return cb(p); - } + if (p.properties) { + p.properties.push(pushVal); + return p; } -} - -/** - * - * Creates a function call with arguments - * @param {any} j — jscodeshift API - * @param {Node} p - Node to push against - * @param {String} name - Name for the given function - * @returns {Node} - Returns the node for the created - * function - */ - -function createFunctionWithArguments(j, p, name) { - if (typeof name === "object") { - let node; - Object.keys(name).forEach(key => { - const pluginExist = findPluginsByName(j, j(p), [key]); - if (pluginExist.size() !== 0) { - let pluginName = - key.indexOf("webpack") >= 0 - ? key.indexOf("webpack.optimize") >= 0 - ? key.replace("webpack.optimize.", " ") - : key.replace("webpack.", " ") - : key; - pluginExist - .filter( - p => pluginName.trim(" ") === p.value.callee.property.name.trim(" ") - ) - .forEach(n => { - Object.keys(name[key]).forEach(subKey => { - const foundNode = findRootNodesByName(j, j(n), subKey); - if (foundNode.size() !== 0) { - foundNode.forEach(n => { - j(n).replaceWith( - createObjectWithSuppliedProperty( - j, - subKey, - createIdentifierOrLiteral(j, name[key][subKey]) - ) - ); - node = createObjectWithSuppliedProperty( - j, - subKey, - createIdentifierOrLiteral(j, name[key][subKey]) - ); - }); - } else { - const method = j.property( - "init", - createLiteral(j, subKey), - createIdentifierOrLiteral(j, name[key][subKey]) - ); - n.value.arguments[0].properties.push(method); - node = null; - //node.arguments.push(j.objectExpression([method])); - } - }); - }); - return node; - } - node = j.newExpression(j.identifier(key), []); - return Object.keys(name[key]).forEach(subKey => { - const method = createObjectWithSuppliedProperty( - j, - subKey, - createIdentifierOrLiteral(j, name[key][subKey]) - ); - node.arguments.push(j.objectExpression([method])); - }); - }); - return node; + if (p.value && p.value.properties) { + p.value.properties.push(pushVal); + return p; } - return j.callExpression(j.identifier(name), [ - j.literal("/* Add your arguments here */") - ]); + if (p.elements) { + p.elements.push(pushVal); + return p; + } + return; } - module.exports = { safeTraverse, createProperty, @@ -751,14 +444,5 @@ module.exports = { createIdentifierOrLiteral, findObjWithOneOfKeys, getRequire, - checkIfExistsAndAddValue, - createArrayWithChildren, - createEmptyArrayProperty, - createObjectWithSuppliedProperty, - createExternalRegExp, - createFunctionWithArguments, - pushCreateProperty, - pushObjectKeys, - isAssignment, - loopThroughObjects + addProperty }; diff --git a/lib/utils/ast-utils.test.js b/lib/utils/ast-utils.test.js index 917f1bebbc0..1ef2826ac4f 100644 --- a/lib/utils/ast-utils.test.js +++ b/lib/utils/ast-utils.test.js @@ -210,187 +210,4 @@ const a = { plugs: [] } expect(j(require).toSource()).toMatchSnapshot(); }); }); - - describe("checkIfExistsAndAddValue", () => { - it("should create new prop if none exist", () => { - const ast = j(` - module.exports = { - entry: 'index.js' - } - `); - ast - .find(j.ObjectExpression) - .forEach(node => - utils.checkIfExistsAndAddValue( - j, - node, - "externals", - j.literal("React") - ) - ); - expect(ast.toSource()).toMatchSnapshot(); - }); - it("should override prop if it exists", () => { - const ast = j(` - module.exports = { - entry: 'index.js' - } - `); - ast - .find(j.ObjectExpression) - .forEach(node => - utils.checkIfExistsAndAddValue(j, node, "entry", j.literal("app.js")) - ); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("createArrayWithChildren", () => { - it("should find an prop that matches key and create an array with it", () => { - const ast = j("{}"); - let key = "react"; - let reactArr = { - react: ["'bo'"] - }; - const arr = utils.createArrayWithChildren(j, key, reactArr, false); - ast.find(j.Program).forEach(node => j(node).replaceWith(arr)); - expect(ast.toSource()).toMatchSnapshot(); - }); - it("should add all children of an array to a new one with a supplied key", () => { - const ast = j("{}"); - let key = "myVeryOwnKey"; - let helloWorldArray = ["'hello'", "world"]; - const arr = utils.createArrayWithChildren(j, key, helloWorldArray, true); - ast.find(j.Program).forEach(node => j(node).replaceWith(arr)); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("createEmptyArrayProperty", () => { - it("should create an array with no properties", () => { - const ast = j("{}"); - const arr = utils.createEmptyArrayProperty(j, "its-lit"); - ast.find(j.Program).forEach(node => j(node).replaceWith(arr)); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - - describe("createObjectWithSuppliedProperty", () => { - it("should create an object with a property supplied by us", () => { - const ast = j("{}"); - const prop = utils.createObjectWithSuppliedProperty( - j, - "its-lit", - j.objectExpression([]) - ); - ast.find(j.Program).forEach(node => j(node).replaceWith(prop)); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("createExternalRegExp", () => { - it("should create an regExp property that has been parsed by jscodeshift", () => { - const ast = j("{}"); - const reg = j("'\t'"); - const prop = utils.createExternalRegExp(j, reg); - ast.find(j.Program).forEach(node => j(node).replaceWith(prop)); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("pushCreateProperty", () => { - it("should create an object or property and push the value to a node", () => { - const ast = j(`module.exports = { - pushMe: {} - }`); - ast - .find(j.Identifier) - .filter(n => n.value.name === "pushMe") - .forEach(node => { - const heavyNodeNoSafeTraverse = node.parentPath.value; - utils.pushCreateProperty( - j, - heavyNodeNoSafeTraverse, - "just", - "pushed" - ); - }); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("pushObjectKeys", () => { - it("should push object to an node using Object.keys", () => { - const ast = j(`module.exports = { - pushMe: {} - }`); - const webpackProperties = { - hello: { - world: { - its: "'great'" - } - } - }; - ast.find(j.ObjectExpression).forEach(node => { - utils.pushObjectKeys(j, node, webpackProperties, "pushMe"); - }); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("loopThroughObjects", () => { - it("Should use recursion and add elements to a node", () => { - const ast = j("module.exports = {}"); - const webpackProperties = { - hello: { - webpack: "cli" - } - }; - ast.find(j.ObjectExpression).forEach(node => { - return utils.loopThroughObjects(j, node.value, webpackProperties); - }); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); - describe("createFunctionWithArguments", () => { - it("Should create a empty function with a name", () => { - const ast = j("module.exports = {plugins: []}"); - const pluginsNode = utils.findRootNodesByName(j, ast, "plugins"); - pluginsNode.forEach(node => { - let expectedPlugin = utils.createFunctionWithArguments( - j, - node, - "ringoStar" - ); - expect(j(expectedPlugin).toSource()).toMatchSnapshot(); - }); - }); - }); - describe("isAssignment", () => { - it("should invoke a callback if parent type is AssignmentExpression", () => { - const ast = j("module.exports = {}"); - const myObj = "Heyho"; - const myKey = "context"; - - ast - .find(j.ObjectExpression) - .filter(n => - utils.isAssignment(j, n, utils.pushCreateProperty, myKey, myObj) - ); - expect(ast.toSource()).toMatchSnapshot(); - }); - it("should allow custom transform functions instead of singularProperty", () => { - const ast = j("module.exports = {}"); - - function createPluginsProperty(p) { - const webpackProperties = { - plugins: ["one", "two", "three"] - }; - const pluginArray = utils.createArrayWithChildren( - j, - "plugins", - webpackProperties - ); - return p.value.properties.push(pluginArray); - } - ast - .find(j.ObjectExpression) - .filter(n => utils.isAssignment(null, n, createPluginsProperty)); - expect(ast.toSource()).toMatchSnapshot(); - }); - }); }); diff --git a/lib/utils/defineTest.js b/lib/utils/defineTest.js index fff0f15487a..6e388084687 100644 --- a/lib/utils/defineTest.js +++ b/lib/utils/defineTest.js @@ -40,8 +40,14 @@ function runSingleTransform( const fixtureDir = path.join(dirName, "__testfixtures__"); const inputPath = path.join(fixtureDir, testFilePrefix + ".input.js"); const source = fs.readFileSync(inputPath, "utf8"); + + let module; // Assumes transform and test are on the same level - const module = require(path.join(dirName, transformName + ".js")); + if (action) { + module = require(path.join(dirName, "index.js")); + } else { + module = require(path.join(dirName, transformName + ".js")); + } // Handle ES6 modules using default export for the transform const transform = module.default ? module.default : module; @@ -53,7 +59,13 @@ function runSingleTransform( } const ast = jscodeshift(source); if (initOptions || typeof initOptions === "boolean") { - return transform(jscodeshift, ast, initOptions, action).toSource({ + return transform( + jscodeshift, + ast, + initOptions, + action, + transformName + ).toSource({ quote: "single" }); } diff --git a/lib/utils/hashtable.js b/lib/utils/hashtable.js deleted file mode 100644 index 2073b3b935e..00000000000 --- a/lib/utils/hashtable.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Combined hashtable that sorts duplicate elements - * https://stackoverflow.com/questions/9229645/remove-duplicate-values-from-js-array - * - * @param {Array} a Array to lookup - * @returns {Array} A sorted array with removed dupe elements - */ -module.exports = function hashtable(a) { - const prims = { boolean: {}, number: {}, string: {} }, - objs = []; - - return a.filter(function(item) { - const type = typeof item; - if (type in prims) - return prims[type].hasOwnProperty(item) - ? false - : (prims[type][item] = true); - else return objs.indexOf(item) >= 0 ? false : objs.push(item); - }); -}; diff --git a/lib/utils/prop-types.js b/lib/utils/prop-types.js index ae5ab1daf97..05b58ce2044 100644 --- a/lib/utils/prop-types.js +++ b/lib/utils/prop-types.js @@ -19,6 +19,7 @@ module.exports = new Set([ "module", "node", "output", + "optimizations", "parallelism", "performance", "plugins", @@ -29,7 +30,8 @@ module.exports = new Set([ "resolve", "resolveLoader", "stats", + "splitChunks", "target", "watch", - "watchOptions", + "watchOptions" ]); diff --git a/lib/utils/validate-identifier.js b/lib/utils/validate-identifier.js index b3a7efa8a3d..67f3cb526fa 100644 --- a/lib/utils/validate-identifier.js +++ b/lib/utils/validate-identifier.js @@ -6,31 +6,66 @@ function isKeyword(code) { switch (code.length) { case 2: - return (code === "if") || (code === "in") || (code === "do"); + return code === "if" || code === "in" || code === "do"; case 3: - return (code === "var") || (code === "for") || (code === "new") || - (code === "try") || (code === "let"); + return ( + code === "var" || + code === "for" || + code === "new" || + code === "try" || + code === "let" + ); case 4: - return (code === "this") || (code === "case") || - (code === "void") || (code === "with") || (code === "enum") || (code === "true") || - (code === "null") || (code === "eval"); + return ( + code === "this" || + code === "case" || + code === "void" || + code === "with" || + code === "enum" || + code === "true" || + code === "null" || + code === "eval" + ); case 5: - return (code === "while") || (code === "break") || (code === "catch") || - (code === "throw") || (code === "const") || (code === "yield") || - (code === "class") || (code === "super") || (code === "false") || (code === "await"); + return ( + code === "while" || + code === "break" || + code === "catch" || + code === "throw" || + code === "const" || + code === "yield" || + code === "class" || + code === "super" || + code === "false" || + code === "await" + ); case 6: - return (code === "return") || (code === "typeof") || (code === "delete") || - (code === "switch") || (code === "export") || (code === "import") || - (code === "static") || (code === "public") ; + return ( + code === "return" || + code === "typeof" || + code === "delete" || + code === "switch" || + code === "export" || + code === "import" || + code === "static" || + code === "public" + ); case 7: - return (code === "default") || (code === "finally") || (code === "extends") || - (code === "private") || (code === "package"); + return ( + code === "default" || + code === "finally" || + code === "extends" || + code === "private" || + code === "package" + ); case 8: - return (code === "function") || (code === "continue") || (code === "debugger"); + return code === "function" || code === "continue" || code === "debugger"; case 9: - return (code === "protected") || (code === "interface") || (code === "arguments"); + return ( + code === "protected" || code === "interface" || code === "arguments" + ); case 10: - return (code === "instanceof") || (code === "implements"); + return code === "instanceof" || code === "implements"; default: return false; } @@ -42,11 +77,17 @@ function isKeyword(code) { // are only applied when a character is found to actually have a // code point above 128. -let nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0-\u08b2\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua7ad\ua7b0\ua7b1\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab5f\uab64\uab65\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc"; -let nonASCIIidentifierChars = "\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c03\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d01-\u0d03\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d82\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19b0-\u19c0\u19c8\u19c9\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf2-\u1cf4\u1cf8\u1cf9\u1dc0-\u1df5\u1dfc-\u1dff\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua880\ua881\ua8b4-\ua8c4\ua8d0-\ua8d9\ua8e0-\ua8f1\ua900-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2d\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f"; +let nonASCIIidentifierStartChars = + "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0-\u08b2\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua7ad\ua7b0\ua7b1\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab5f\uab64\uab65\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc"; +let nonASCIIidentifierChars = + "\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c03\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d01-\u0d03\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d82\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19b0-\u19c0\u19c8\u19c9\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf2-\u1cf4\u1cf8\u1cf9\u1dc0-\u1df5\u1dfc-\u1dff\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua880\ua881\ua8b4-\ua8c4\ua8d0-\ua8d9\ua8e0-\ua8f1\ua900-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2d\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f"; -const nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]"); -const nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]"); +const nonASCIIidentifierStart = new RegExp( + "[" + nonASCIIidentifierStartChars + "]" +); +const nonASCIIidentifier = new RegExp( + "[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]" +); nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; @@ -55,23 +96,456 @@ nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; // offset starts at 0x10000, and each pair of numbers represents an // offset to the next range, and then a size of the range. let astralIdentifierStartCodes = [ - 0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 17, 26, 6, 37, 11, 29, 3, 35, 5, - 7, 2, 4, 43, 157, 99, 39, 9, 51, 157, 310, 10, 21, 11, 7, 153, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, - 98, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 26, 45, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, - 17, 111, 72, 955, 52, 76, 44, 33, 24, 27, 35, 42, 34, 4, 0, 13, 47, 15, 3, 22, 0, 38, 17, 2, 24, 133, 46, 39, 7, - 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 32, 4, 287, 47, 21, 1, 2, 0, 185, 46, 82, 47, 21, 0, 60, 42, 502, 63, 32, 0, - 449, 56, 1288, 920, 104, 110, 2962, 1070, 13266, 568, 8, 30, 114, 29, 19, 47, 17, 3, 32, 20, 6, 18, 881, 68, 12, - 0, 67, 12, 16481, 1, 3071, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, - 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, - 24, 2, 30, 2, 24, 2, 7, 4149, 196, 1340, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, - 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, - 4, 2, 16, 4421, 42710, 42, 4148, 12, 221, 16355, 541 + 0, + 11, + 2, + 25, + 2, + 18, + 2, + 1, + 2, + 14, + 3, + 13, + 35, + 122, + 70, + 52, + 268, + 28, + 4, + 48, + 48, + 31, + 17, + 26, + 6, + 37, + 11, + 29, + 3, + 35, + 5, + 7, + 2, + 4, + 43, + 157, + 99, + 39, + 9, + 51, + 157, + 310, + 10, + 21, + 11, + 7, + 153, + 5, + 3, + 0, + 2, + 43, + 2, + 1, + 4, + 0, + 3, + 22, + 11, + 22, + 10, + 30, + 98, + 21, + 11, + 25, + 71, + 55, + 7, + 1, + 65, + 0, + 16, + 3, + 2, + 2, + 2, + 26, + 45, + 28, + 4, + 28, + 36, + 7, + 2, + 27, + 28, + 53, + 11, + 21, + 11, + 18, + 14, + 17, + 111, + 72, + 955, + 52, + 76, + 44, + 33, + 24, + 27, + 35, + 42, + 34, + 4, + 0, + 13, + 47, + 15, + 3, + 22, + 0, + 38, + 17, + 2, + 24, + 133, + 46, + 39, + 7, + 3, + 1, + 3, + 21, + 2, + 6, + 2, + 1, + 2, + 4, + 4, + 0, + 32, + 4, + 287, + 47, + 21, + 1, + 2, + 0, + 185, + 46, + 82, + 47, + 21, + 0, + 60, + 42, + 502, + 63, + 32, + 0, + 449, + 56, + 1288, + 920, + 104, + 110, + 2962, + 1070, + 13266, + 568, + 8, + 30, + 114, + 29, + 19, + 47, + 17, + 3, + 32, + 20, + 6, + 18, + 881, + 68, + 12, + 0, + 67, + 12, + 16481, + 1, + 3071, + 106, + 6, + 12, + 4, + 8, + 8, + 9, + 5991, + 84, + 2, + 70, + 2, + 1, + 3, + 0, + 3, + 1, + 3, + 3, + 2, + 11, + 2, + 0, + 2, + 6, + 2, + 64, + 2, + 3, + 3, + 7, + 2, + 6, + 2, + 27, + 2, + 3, + 2, + 4, + 2, + 0, + 4, + 6, + 2, + 339, + 3, + 24, + 2, + 24, + 2, + 30, + 2, + 24, + 2, + 30, + 2, + 24, + 2, + 30, + 2, + 24, + 2, + 30, + 2, + 24, + 2, + 7, + 4149, + 196, + 1340, + 3, + 2, + 26, + 2, + 1, + 2, + 0, + 3, + 0, + 2, + 9, + 2, + 3, + 2, + 0, + 2, + 0, + 7, + 0, + 5, + 0, + 2, + 0, + 2, + 0, + 2, + 2, + 2, + 1, + 2, + 0, + 3, + 0, + 2, + 0, + 2, + 0, + 2, + 0, + 2, + 0, + 2, + 1, + 2, + 0, + 3, + 3, + 2, + 6, + 2, + 3, + 2, + 3, + 2, + 0, + 2, + 9, + 2, + 16, + 6, + 2, + 2, + 4, + 2, + 16, + 4421, + 42710, + 42, + 4148, + 12, + 221, + 16355, + 541 ]; let astralIdentifierCodes = [ - 509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 1306, 2, 54, 14, 32, 9, 16, 3, 46, 10, - 54, 9, 7, 2, 37, 13, 2, 9, 52, 0, 13, 2, 49, 13, 16, 9, 83, 11, 168, 11, 6, 9, 8, 2, 57, 0, 2, 6, 3, 1, 3, 2, 10, - 0, 11, 1, 3, 6, 4, 4, 316, 19, 13, 9, 214, 6, 3, 8, 112, 16, 16, 9, 82, 12, 9, 9, 535, 9, 20855, 9, 135, 4, 60, 6, - 26, 9, 1016, 45, 17, 3, 19723, 1, 5319, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 4305, 6, 792618, 239 + 509, + 0, + 227, + 0, + 150, + 4, + 294, + 9, + 1368, + 2, + 2, + 1, + 6, + 3, + 41, + 2, + 5, + 0, + 166, + 1, + 1306, + 2, + 54, + 14, + 32, + 9, + 16, + 3, + 46, + 10, + 54, + 9, + 7, + 2, + 37, + 13, + 2, + 9, + 52, + 0, + 13, + 2, + 49, + 13, + 16, + 9, + 83, + 11, + 168, + 11, + 6, + 9, + 8, + 2, + 57, + 0, + 2, + 6, + 3, + 1, + 3, + 2, + 10, + 0, + 11, + 1, + 3, + 6, + 4, + 4, + 316, + 19, + 13, + 9, + 214, + 6, + 3, + 8, + 112, + 16, + 16, + 9, + 82, + 12, + 9, + 9, + 535, + 9, + 20855, + 9, + 135, + 4, + 60, + 6, + 26, + 9, + 1016, + 45, + 17, + 3, + 19723, + 1, + 5319, + 4, + 4, + 5, + 9, + 7, + 3, + 6, + 31, + 3, + 149, + 2, + 1418, + 49, + 4305, + 6, + 792618, + 239 ]; // This has a complexity linear to the value of the code. The @@ -96,7 +570,8 @@ function isIdentifierStart(code) { if (c < 91) return true; if (c < 97) return c === 95; if (c < 123) return true; - if (c <= 0xffff) return c >= 0xaa && nonASCIIidentifierStart.test(String.fromCharCode(c)); + if (c <= 0xffff) + return c >= 0xaa && nonASCIIidentifierStart.test(String.fromCharCode(c)); return isInAstralSet(c, astralIdentifierStartCodes); } @@ -106,7 +581,13 @@ function isIdentifierChar(code) { let l = code.length; while (l--) { let ch = code.charCodeAt(code.length - l); - return validationChar(ch) || ch === 0x24 /* $ */ || ch === 0x5F /* _ */ || ch === 0x200C /* */ || ch === 0x200D; /* */ + return ( + validationChar(ch) || + ch === 0x24 /* $ */ || + ch === 0x5f /* _ */ || + ch === 0x200c /* */ || + ch === 0x200d + ); /* */ } } @@ -117,8 +598,12 @@ function validationChar(code) { if (code < 91) return true; if (code < 97) return code === 95; if (code < 123) return true; - if (code <= 0xffff) return code >= 0xaa && nonASCIIidentifier.test(String.fromCharCode(code)); - return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes); + if (code <= 0xffff) + return code >= 0xaa && nonASCIIidentifier.test(String.fromCharCode(code)); + return ( + isInAstralSet(code, astralIdentifierStartCodes) || + isInAstralSet(code, astralIdentifierCodes) + ); } module.exports = { diff --git a/package-lock.json b/package-lock.json index 54648c1e21f..1efcaf73aa4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,23 +5,23 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.0.0-beta.44", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.44.tgz", - "integrity": "sha512-cuAuTTIQ9RqcFRJ/Y8PvTh+paepNcaGxwQwjIDRWPXmzzyAeCO4KqS9ikMvq0MCbRk6GlYKwfzStrcP3/jSL8g==", + "version": "7.0.0-beta.46", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.46.tgz", + "integrity": "sha512-7BKRkmYaPZm3Yff5HGZJKCz7RqZ5jUjknsXT6Gz5YKG23J3uq9hAj0epncCB0rlqmnZ8Q+UUpQB2tCR5mT37vw==", "dev": true, "requires": { - "@babel/highlight": "7.0.0-beta.44" + "@babel/highlight": "7.0.0-beta.46" } }, "@babel/highlight": { - "version": "7.0.0-beta.44", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.44.tgz", - "integrity": "sha512-Il19yJvy7vMFm8AVAh6OZzaFoAd0hbkeMZiX3P5HGD+z7dyI7RzndHB0dg6Urh/VAFfHtpOIzDUSxmY6coyZWQ==", + "version": "7.0.0-beta.46", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.46.tgz", + "integrity": "sha512-r4snW6Q8ICL3Y8hGzYJRvyG/+sc+kvkewXNedG9tQjoHmUFMwMSv/o45GWQUQswevGnWghiGkpRPivFfOuMsOA==", "dev": true, "requires": { - "chalk": "2.3.2", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^3.0.0" } }, "@commitlint/cli": { @@ -30,10 +30,10 @@ "integrity": "sha1-RgbhOLBbQwNNyErxXaGOITkFhTc=", "dev": true, "requires": { - "@commitlint/format": "6.1.3", - "@commitlint/lint": "6.1.3", - "@commitlint/load": "6.1.3", - "@commitlint/read": "6.1.3", + "@commitlint/format": "^6.1.3", + "@commitlint/lint": "^6.1.3", + "@commitlint/load": "^6.1.3", + "@commitlint/read": "^6.1.3", "babel-polyfill": "6.26.0", "chalk": "2.3.1", "get-stdin": "5.0.1", @@ -48,9 +48,9 @@ "integrity": "sha512-QUU4ofkDoMIVO7hcx1iPTISs88wsO8jA92RQIm4JAwZvFGGAV2hSAA1NX7oVj2Ej2Q6NDTcRDjPTFrMCRZoJ6g==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.3.0" + "ansi-styles": "^3.2.0", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.2.0" } } } @@ -83,8 +83,8 @@ "integrity": "sha1-QUuQSKmvVFh9qWIicXujMjR6veM=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "chalk": "2.3.2" + "babel-runtime": "^6.23.0", + "chalk": "^2.0.1" } }, "@commitlint/is-ignored": { @@ -102,10 +102,10 @@ "integrity": "sha1-aneI6uOBrahz90IeMVWecgPKrfM=", "dev": true, "requires": { - "@commitlint/is-ignored": "6.1.3", - "@commitlint/parse": "6.1.3", - "@commitlint/rules": "6.1.3", - "babel-runtime": "6.26.0", + "@commitlint/is-ignored": "^6.1.3", + "@commitlint/parse": "^6.1.3", + "@commitlint/rules": "^6.1.3", + "babel-runtime": "^6.23.0", "lodash.topairs": "4.3.0" } }, @@ -115,10 +115,10 @@ "integrity": "sha1-G+QHETl5WPMWz0BXepyHmhbwClQ=", "dev": true, "requires": { - "@commitlint/execute-rule": "6.1.3", - "@commitlint/resolve-extends": "6.1.3", - "babel-runtime": "6.26.0", - "cosmiconfig": "4.0.0", + "@commitlint/execute-rule": "^6.1.3", + "@commitlint/resolve-extends": "^6.1.3", + "babel-runtime": "^6.23.0", + "cosmiconfig": "^4.0.0", "lodash.merge": "4.6.1", "lodash.mergewith": "4.6.1", "lodash.pick": "4.4.0", @@ -146,8 +146,8 @@ "integrity": "sha1-/x5NksJ81naBK7a512zYhTwNlAc=", "dev": true, "requires": { - "conventional-changelog-angular": "1.6.6", - "conventional-commits-parser": "2.1.7" + "conventional-changelog-angular": "^1.3.3", + "conventional-commits-parser": "^2.1.0" } }, "@commitlint/prompt": { @@ -156,17 +156,17 @@ "integrity": "sha1-yk3uWCocJClyZta7b16w7UWh20Y=", "dev": true, "requires": { - "@commitlint/load": "6.1.3", - "babel-runtime": "6.26.0", - "chalk": "2.3.2", + "@commitlint/load": "^6.1.3", + "babel-runtime": "^6.23.0", + "chalk": "^2.0.0", "lodash.camelcase": "4.3.0", "lodash.kebabcase": "4.1.1", "lodash.snakecase": "4.1.1", "lodash.startcase": "4.4.0", "lodash.topairs": "4.3.0", "lodash.upperfirst": "4.3.1", - "throat": "4.1.0", - "vorpal": "1.12.0" + "throat": "^4.1.0", + "vorpal": "^1.10.0" } }, "@commitlint/prompt-cli": { @@ -175,35 +175,37 @@ "integrity": "sha1-pptfmH2siFZvYQ3sMesn5Ya5xJU=", "dev": true, "requires": { - "@commitlint/prompt": "6.1.3", + "@commitlint/prompt": "^6.1.3", "execa": "0.9.0", "meow": "3.7.0" }, "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, "execa": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.9.0.tgz", "integrity": "sha512-BbUMBiX4hqiHZUA5+JujIjNb6TyAlp2D5KLheMjMluwOuzcnylDL4AxZYLLn1n2AGB49eSWwyKvvEQoRpnAtmA==", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } } } } @@ -214,10 +216,10 @@ "integrity": "sha1-n52NtQ+/Z/MACSFlftbvrbjPnxo=", "dev": true, "requires": { - "@commitlint/top-level": "6.1.3", - "@marionebl/sander": "0.6.1", - "babel-runtime": "6.26.0", - "git-raw-commits": "1.3.6" + "@commitlint/top-level": "^6.1.3", + "@marionebl/sander": "^0.6.0", + "babel-runtime": "^6.23.0", + "git-raw-commits": "^1.3.0" } }, "@commitlint/resolve-extends": { @@ -229,9 +231,9 @@ "babel-runtime": "6.26.0", "lodash.merge": "4.6.1", "lodash.omit": "4.5.0", - "require-uncached": "1.0.3", - "resolve-from": "4.0.0", - "resolve-global": "0.1.0" + "require-uncached": "^1.0.3", + "resolve-from": "^4.0.0", + "resolve-global": "^0.1.0" }, "dependencies": { "resolve-from": { @@ -248,10 +250,10 @@ "integrity": "sha1-NOvSYsA3DUgwnlFnmUJNMsM/mEs=", "dev": true, "requires": { - "@commitlint/ensure": "6.1.3", - "@commitlint/message": "6.1.3", - "@commitlint/to-lines": "6.1.3", - "babel-runtime": "6.26.0" + "@commitlint/ensure": "^6.1.3", + "@commitlint/message": "^6.1.3", + "@commitlint/to-lines": "^6.1.3", + "babel-runtime": "^6.23.0" } }, "@commitlint/to-lines": { @@ -266,7 +268,7 @@ "integrity": "sha1-Em3LbeFnY0LGnNQiYUg/RHhUcpk=", "dev": true, "requires": { - "find-up": "2.1.0" + "find-up": "^2.1.0" } }, "@commitlint/travis-cli": { @@ -275,35 +277,37 @@ "integrity": "sha1-m/F1bZsyo7xFgOpArjypLId3OAA=", "dev": true, "requires": { - "@commitlint/cli": "6.1.3", + "@commitlint/cli": "^6.1.3", "babel-runtime": "6.26.0", "execa": "0.9.0" }, "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, "execa": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.9.0.tgz", "integrity": "sha512-BbUMBiX4hqiHZUA5+JujIjNb6TyAlp2D5KLheMjMluwOuzcnylDL4AxZYLLn1n2AGB49eSWwyKvvEQoRpnAtmA==", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } } } } @@ -314,9 +318,9 @@ "integrity": "sha1-GViWWHTyS8Ub5Ih1/rUNZC/EH3s=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "mkdirp": "0.5.1", - "rimraf": "2.6.2" + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" }, "dependencies": { "rimraf": { @@ -325,7 +329,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } } @@ -341,8 +345,8 @@ "integrity": "sha1-wQI3G27Dp887hHygDCC7D85Mbeo=", "dev": true, "requires": { - "jsonparse": "1.3.1", - "through": "2.3.8" + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" } }, "abab": { @@ -363,7 +367,7 @@ "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", "dev": true, "requires": { - "mime-types": "2.1.18", + "mime-types": "~2.1.18", "negotiator": "0.6.1" } }, @@ -379,7 +383,7 @@ "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", "dev": true, "requires": { - "acorn": "5.5.3" + "acorn": "^5.0.0" } }, "acorn-globals": { @@ -388,7 +392,7 @@ "integrity": "sha512-KjZwU26uG3u6eZcfGbTULzFcsoz6pegNKtHPksZPOUsiKo5bUmiBPa38FuHZ/Eun+XYh/JCCkS9AS3Lu4McQOQ==", "dev": true, "requires": { - "acorn": "5.5.3" + "acorn": "^5.0.0" } }, "acorn-jsx": { @@ -397,7 +401,7 @@ "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", "dev": true, "requires": { - "acorn": "3.3.0" + "acorn": "^3.0.4" }, "dependencies": { "acorn": { @@ -420,10 +424,10 @@ "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, "ajv-keywords": { @@ -438,9 +442,9 @@ "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "dev": true, "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" } }, "amdefine": { @@ -470,7 +474,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "any-observable": { @@ -484,8 +488,8 @@ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "requires": { - "micromatch": "3.1.10", - "normalize-path": "2.1.1" + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" }, "dependencies": { "arr-diff": { @@ -506,16 +510,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -524,7 +528,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -535,13 +539,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -550,7 +554,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -559,7 +563,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -568,7 +572,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -577,7 +581,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -588,7 +592,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -597,7 +601,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -608,9 +612,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -627,14 +631,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -643,7 +647,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -652,7 +656,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -663,10 +667,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -675,7 +679,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -686,7 +690,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -695,7 +699,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -704,9 +708,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { @@ -715,7 +719,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -724,7 +728,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -747,19 +751,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } @@ -776,7 +780,7 @@ "integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=", "dev": true, "requires": { - "default-require-extensions": "1.0.0" + "default-require-extensions": "^1.0.0" } }, "aproba": { @@ -791,8 +795,8 @@ "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", "dev": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.6" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, "argparse": { @@ -801,7 +805,7 @@ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } }, "argv": { @@ -815,7 +819,7 @@ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", "requires": { - "arr-flatten": "1.1.0" + "arr-flatten": "^1.0.1" } }, "arr-flatten": { @@ -864,8 +868,8 @@ "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", "dev": true, "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.11.0" + "define-properties": "^1.1.2", + "es-abstract": "^1.7.0" } }, "array-union": { @@ -873,7 +877,7 @@ "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", "requires": { - "array-uniq": "1.0.3" + "array-uniq": "^1.0.1" } }, "array-uniq": { @@ -903,9 +907,9 @@ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, "requires": { - "bn.js": "4.11.8", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "assert": { @@ -964,9 +968,9 @@ "dev": true }, "atob": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.0.tgz", - "integrity": "sha512-SuiKH8vbsOyCALjA/+EINmt/Kdl+TQPrtFgW7XZZcwtryFu9e5kQoX3bjCW6mIvGH1fbeAZZuvwGR5IlBRznGw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", + "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", "dev": true }, "aws-sign2": { @@ -987,8 +991,8 @@ "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", "dev": true, "requires": { - "follow-redirects": "1.4.1", - "is-buffer": "1.1.6" + "follow-redirects": "^1.2.5", + "is-buffer": "^1.1.5" } }, "babel-code-frame": { @@ -996,9 +1000,9 @@ "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" }, "dependencies": { "ansi-regex": { @@ -1016,11 +1020,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "strip-ansi": { @@ -1028,7 +1032,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -1039,29 +1043,29 @@ } }, "babel-core": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", - "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", - "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.1", - "babel-helpers": "6.24.1", - "babel-messages": "6.23.0", - "babel-register": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "convert-source-map": "1.5.1", - "debug": "2.6.9", - "json5": "0.5.1", - "lodash": "4.17.5", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.8", - "slash": "1.0.0", - "source-map": "0.5.7" + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" }, "dependencies": { "babylon": { @@ -1076,14 +1080,14 @@ "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.5", - "source-map": "0.5.7", - "trim-right": "1.0.1" + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" }, "dependencies": { "jsesc": { @@ -1098,9 +1102,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-builder-binary-assignment-operator-visitor": { @@ -1108,9 +1112,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", "requires": { - "babel-helper-explode-assignable-expression": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-call-delegate": { @@ -1118,10 +1122,10 @@ "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-define-map": { @@ -1129,10 +1133,10 @@ "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.5" + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" } }, "babel-helper-explode-assignable-expression": { @@ -1140,9 +1144,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-explode-class": { @@ -1150,10 +1154,10 @@ "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", "requires": { - "babel-helper-bindify-decorators": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-bindify-decorators": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-function-name": { @@ -1161,11 +1165,11 @@ "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", "requires": { - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-get-function-arity": { @@ -1173,8 +1177,8 @@ "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-hoist-variables": { @@ -1182,8 +1186,8 @@ "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-optimise-call-expression": { @@ -1191,8 +1195,8 @@ "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-regex": { @@ -1200,9 +1204,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" } }, "babel-helper-remap-async-to-generator": { @@ -1210,11 +1214,11 @@ "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-replace-supers": { @@ -1222,12 +1226,12 @@ "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", "requires": { - "babel-helper-optimise-call-expression": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-optimise-call-expression": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helpers": { @@ -1235,8 +1239,8 @@ "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-jest": { @@ -1245,8 +1249,8 @@ "integrity": "sha512-BgSjmtl3mW3i+VeVHEr9d2zFSAT66G++pJcHQiUjd00pkW+voYXFctIm/indcqOWWXw5a1nUpR1XWszD9fJ1qg==", "dev": true, "requires": { - "babel-plugin-istanbul": "4.1.6", - "babel-preset-jest": "22.4.3" + "babel-plugin-istanbul": "^4.1.5", + "babel-preset-jest": "^22.4.3" } }, "babel-messages": { @@ -1254,7 +1258,7 @@ "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-check-es2015-constants": { @@ -1262,7 +1266,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-istanbul": { @@ -1271,10 +1275,10 @@ "integrity": "sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ==", "dev": true, "requires": { - "babel-plugin-syntax-object-rest-spread": "6.13.0", - "find-up": "2.1.0", - "istanbul-lib-instrument": "1.10.1", - "test-exclude": "4.2.1" + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "find-up": "^2.1.0", + "istanbul-lib-instrument": "^1.10.1", + "test-exclude": "^4.2.1" } }, "babel-plugin-jest-hoist": { @@ -1343,9 +1347,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-generators": "6.13.0", - "babel-runtime": "6.26.0" + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-generators": "^6.5.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-async-to-generator": { @@ -1353,9 +1357,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-functions": "6.13.0", - "babel-runtime": "6.26.0" + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-class-constructor-call": { @@ -1363,9 +1367,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", "requires": { - "babel-plugin-syntax-class-constructor-call": "6.18.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-plugin-syntax-class-constructor-call": "^6.18.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-class-properties": { @@ -1373,10 +1377,10 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-plugin-syntax-class-properties": "6.13.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-helper-function-name": "^6.24.1", + "babel-plugin-syntax-class-properties": "^6.8.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-decorators": { @@ -1384,11 +1388,11 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", "requires": { - "babel-helper-explode-class": "6.24.1", - "babel-plugin-syntax-decorators": "6.13.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-explode-class": "^6.24.1", + "babel-plugin-syntax-decorators": "^6.13.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-arrow-functions": { @@ -1396,7 +1400,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-block-scoped-functions": { @@ -1404,7 +1408,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-block-scoping": { @@ -1412,11 +1416,11 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" } }, "babel-plugin-transform-es2015-classes": { @@ -1424,15 +1428,15 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", "requires": { - "babel-helper-define-map": "6.26.0", - "babel-helper-function-name": "6.24.1", - "babel-helper-optimise-call-expression": "6.24.1", - "babel-helper-replace-supers": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-define-map": "^6.24.1", + "babel-helper-function-name": "^6.24.1", + "babel-helper-optimise-call-expression": "^6.24.1", + "babel-helper-replace-supers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-computed-properties": { @@ -1440,8 +1444,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-destructuring": { @@ -1449,7 +1453,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-duplicate-keys": { @@ -1457,8 +1461,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-for-of": { @@ -1466,7 +1470,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-function-name": { @@ -1474,9 +1478,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-literals": { @@ -1484,7 +1488,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-modules-amd": { @@ -1492,20 +1496,20 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", - "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", "requires": { - "babel-plugin-transform-strict-mode": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" } }, "babel-plugin-transform-es2015-modules-systemjs": { @@ -1513,9 +1517,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-modules-umd": { @@ -1523,9 +1527,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", "requires": { - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-plugin-transform-es2015-modules-amd": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-object-super": { @@ -1533,8 +1537,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", "requires": { - "babel-helper-replace-supers": "6.24.1", - "babel-runtime": "6.26.0" + "babel-helper-replace-supers": "^6.24.1", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-parameters": { @@ -1542,12 +1546,12 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", "requires": { - "babel-helper-call-delegate": "6.24.1", - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-shorthand-properties": { @@ -1555,8 +1559,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-spread": { @@ -1564,7 +1568,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-sticky-regex": { @@ -1572,9 +1576,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-template-literals": { @@ -1582,7 +1586,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-typeof-symbol": { @@ -1590,7 +1594,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-unicode-regex": { @@ -1598,9 +1602,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "regexpu-core": "2.0.0" + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" } }, "babel-plugin-transform-exponentiation-operator": { @@ -1608,9 +1612,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", - "babel-plugin-syntax-exponentiation-operator": "6.13.0", - "babel-runtime": "6.26.0" + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-export-extensions": { @@ -1618,8 +1622,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", "requires": { - "babel-plugin-syntax-export-extensions": "6.13.0", - "babel-runtime": "6.26.0" + "babel-plugin-syntax-export-extensions": "^6.8.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-flow-strip-types": { @@ -1627,8 +1631,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz", "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=", "requires": { - "babel-plugin-syntax-flow": "6.18.0", - "babel-runtime": "6.26.0" + "babel-plugin-syntax-flow": "^6.18.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-object-rest-spread": { @@ -1636,8 +1640,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", "requires": { - "babel-plugin-syntax-object-rest-spread": "6.13.0", - "babel-runtime": "6.26.0" + "babel-plugin-syntax-object-rest-spread": "^6.8.0", + "babel-runtime": "^6.26.0" } }, "babel-plugin-transform-regenerator": { @@ -1645,7 +1649,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", "requires": { - "regenerator-transform": "0.10.1" + "regenerator-transform": "^0.10.0" } }, "babel-plugin-transform-strict-mode": { @@ -1653,8 +1657,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-polyfill": { @@ -1663,9 +1667,9 @@ "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.5", - "regenerator-runtime": "0.10.5" + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "regenerator-runtime": "^0.10.5" }, "dependencies": { "regenerator-runtime": { @@ -1681,30 +1685,30 @@ "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", "requires": { - "babel-plugin-check-es2015-constants": "6.22.0", - "babel-plugin-transform-es2015-arrow-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoping": "6.26.0", - "babel-plugin-transform-es2015-classes": "6.24.1", - "babel-plugin-transform-es2015-computed-properties": "6.24.1", - "babel-plugin-transform-es2015-destructuring": "6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", - "babel-plugin-transform-es2015-for-of": "6.23.0", - "babel-plugin-transform-es2015-function-name": "6.24.1", - "babel-plugin-transform-es2015-literals": "6.22.0", - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", - "babel-plugin-transform-es2015-modules-umd": "6.24.1", - "babel-plugin-transform-es2015-object-super": "6.24.1", - "babel-plugin-transform-es2015-parameters": "6.24.1", - "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", - "babel-plugin-transform-es2015-spread": "6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "6.24.1", - "babel-plugin-transform-es2015-template-literals": "6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "6.24.1", - "babel-plugin-transform-regenerator": "6.26.0" + "babel-plugin-check-es2015-constants": "^6.22.0", + "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", + "babel-plugin-transform-es2015-block-scoping": "^6.24.1", + "babel-plugin-transform-es2015-classes": "^6.24.1", + "babel-plugin-transform-es2015-computed-properties": "^6.24.1", + "babel-plugin-transform-es2015-destructuring": "^6.22.0", + "babel-plugin-transform-es2015-duplicate-keys": "^6.24.1", + "babel-plugin-transform-es2015-for-of": "^6.22.0", + "babel-plugin-transform-es2015-function-name": "^6.24.1", + "babel-plugin-transform-es2015-literals": "^6.22.0", + "babel-plugin-transform-es2015-modules-amd": "^6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", + "babel-plugin-transform-es2015-modules-systemjs": "^6.24.1", + "babel-plugin-transform-es2015-modules-umd": "^6.24.1", + "babel-plugin-transform-es2015-object-super": "^6.24.1", + "babel-plugin-transform-es2015-parameters": "^6.24.1", + "babel-plugin-transform-es2015-shorthand-properties": "^6.24.1", + "babel-plugin-transform-es2015-spread": "^6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.24.1", + "babel-plugin-transform-es2015-template-literals": "^6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "^6.22.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.24.1", + "babel-plugin-transform-regenerator": "^6.24.1" } }, "babel-preset-jest": { @@ -1713,8 +1717,8 @@ "integrity": "sha512-a+M3LTEXTq3gxv0uBN9Qm6ahUl7a8pj923nFbCUdqFUSsf3YrX8Uc+C3MEwji5Af3LiQjSC7w4ooYewlz8HRTA==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "22.4.3", - "babel-plugin-syntax-object-rest-spread": "6.13.0" + "babel-plugin-jest-hoist": "^22.4.3", + "babel-plugin-syntax-object-rest-spread": "^6.13.0" } }, "babel-preset-stage-1": { @@ -1722,9 +1726,9 @@ "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", "requires": { - "babel-plugin-transform-class-constructor-call": "6.24.1", - "babel-plugin-transform-export-extensions": "6.22.0", - "babel-preset-stage-2": "6.24.1" + "babel-plugin-transform-class-constructor-call": "^6.24.1", + "babel-plugin-transform-export-extensions": "^6.22.0", + "babel-preset-stage-2": "^6.24.1" } }, "babel-preset-stage-2": { @@ -1732,10 +1736,10 @@ "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", "requires": { - "babel-plugin-syntax-dynamic-import": "6.18.0", - "babel-plugin-transform-class-properties": "6.24.1", - "babel-plugin-transform-decorators": "6.24.1", - "babel-preset-stage-3": "6.24.1" + "babel-plugin-syntax-dynamic-import": "^6.18.0", + "babel-plugin-transform-class-properties": "^6.24.1", + "babel-plugin-transform-decorators": "^6.24.1", + "babel-preset-stage-3": "^6.24.1" } }, "babel-preset-stage-3": { @@ -1743,11 +1747,11 @@ "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", "requires": { - "babel-plugin-syntax-trailing-function-commas": "6.22.0", - "babel-plugin-transform-async-generator-functions": "6.24.1", - "babel-plugin-transform-async-to-generator": "6.24.1", - "babel-plugin-transform-exponentiation-operator": "6.24.1", - "babel-plugin-transform-object-rest-spread": "6.26.0" + "babel-plugin-syntax-trailing-function-commas": "^6.22.0", + "babel-plugin-transform-async-generator-functions": "^6.24.1", + "babel-plugin-transform-async-to-generator": "^6.24.1", + "babel-plugin-transform-exponentiation-operator": "^6.24.1", + "babel-plugin-transform-object-rest-spread": "^6.22.0" } }, "babel-register": { @@ -1755,13 +1759,13 @@ "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", "requires": { - "babel-core": "6.26.0", - "babel-runtime": "6.26.0", - "core-js": "2.5.5", - "home-or-tmp": "2.0.0", - "lodash": "4.17.5", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18" + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" } }, "babel-runtime": { @@ -1769,8 +1773,8 @@ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "2.5.5", - "regenerator-runtime": "0.11.1" + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, "babel-template": { @@ -1778,11 +1782,11 @@ "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" }, "dependencies": { "babylon": { @@ -1797,15 +1801,15 @@ "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.4", - "lodash": "4.17.5" + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" }, "dependencies": { "babylon": { @@ -1820,16 +1824,16 @@ "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.5", - "to-fast-properties": "1.0.3" + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" } }, "babylon": { - "version": "7.0.0-beta.44", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.44.tgz", - "integrity": "sha512-5Hlm13BJVAioCHpImtFqNOF2H3ieTOHd0fmFGMxOJ9jgeFqeAwsv3u5P5cR7CSeFrkgHsT19DgFJkHV0/Mcd8g==" + "version": "7.0.0-beta.46", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.46.tgz", + "integrity": "sha512-WFJlg2WatdkXRFMpk7BN/Uzzkjkcjk+WaqnrSCpay+RYl4ypW9ZetZyT9kNt22IH/BQNst3M6PaaBn9IXsUNrg==" }, "balanced-match": { "version": "1.0.0", @@ -1842,13 +1846,13 @@ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { @@ -1857,7 +1861,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -1866,7 +1870,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -1875,7 +1879,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -1884,9 +1888,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { @@ -1904,9 +1908,9 @@ } }, "base64-js": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.3.tgz", - "integrity": "sha512-MsAhsUW1GxCdgYSO6tAfZrNapmUKk7mWx/k5mFY/A1gBtkaCaNapTg+FExCw1r9yeaZhqx/xPg43xgTFH6KL5w==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", "dev": true }, "batch": { @@ -1922,7 +1926,7 @@ "dev": true, "optional": true, "requires": { - "tweetnacl": "0.14.5" + "tweetnacl": "^0.14.3" } }, "big.js": { @@ -1947,8 +1951,8 @@ "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "dev": true, "requires": { - "readable-stream": "2.3.6", - "safe-buffer": "5.1.1" + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" } }, "block-stream": { @@ -1957,7 +1961,7 @@ "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", "dev": true, "requires": { - "inherits": "2.0.3" + "inherits": "~2.0.0" } }, "bluebird": { @@ -1979,15 +1983,15 @@ "dev": true, "requires": { "bytes": "3.0.0", - "content-type": "1.0.4", + "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "1.1.2", - "http-errors": "1.6.3", + "depd": "~1.1.1", + "http-errors": "~1.6.2", "iconv-lite": "0.4.19", - "on-finished": "2.3.0", + "on-finished": "~2.3.0", "qs": "6.5.1", "raw-body": "2.3.2", - "type-is": "1.6.16" + "type-is": "~1.6.15" }, "dependencies": { "iconv-lite": { @@ -2004,12 +2008,12 @@ "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", "dev": true, "requires": { - "array-flatten": "2.1.1", - "deep-equal": "1.0.1", - "dns-equal": "1.0.0", - "dns-txt": "2.0.2", - "multicast-dns": "6.2.3", - "multicast-dns-service-types": "1.1.0" + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" } }, "boolify": { @@ -2024,7 +2028,7 @@ "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", "dev": true, "requires": { - "hoek": "4.2.1" + "hoek": "4.x.x" } }, "brace-expansion": { @@ -2032,7 +2036,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -2041,9 +2045,9 @@ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" } }, "brorand": { @@ -2058,8 +2062,8 @@ "integrity": "sha1-jBruoBzSLzWbBIlRGFvVOf8Mgp8=", "dev": true, "requires": { - "duplexer": "0.1.1", - "iltorb": "1.3.10" + "duplexer": "^0.1.1", + "iltorb": "^1.0.9" } }, "browser-process-hrtime": { @@ -2091,12 +2095,12 @@ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { - "buffer-xor": "1.0.3", - "cipher-base": "1.0.4", - "create-hash": "1.2.0", - "evp_bytestokey": "1.0.3", - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "browserify-cipher": { @@ -2105,9 +2109,9 @@ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, "requires": { - "browserify-aes": "1.2.0", - "browserify-des": "1.0.1", - "evp_bytestokey": "1.0.3" + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" } }, "browserify-des": { @@ -2116,9 +2120,9 @@ "integrity": "sha512-zy0Cobe3hhgpiOM32Tj7KQ3Vl91m0njwsjzZQK1L+JDf11dzP9qIvjreVinsvXrgfjhStXwUWAEpB9D7Gwmayw==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "des.js": "1.0.0", - "inherits": "2.0.3" + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1" } }, "browserify-rsa": { @@ -2127,8 +2131,8 @@ "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "dev": true, "requires": { - "bn.js": "4.11.8", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" } }, "browserify-sign": { @@ -2137,13 +2141,13 @@ "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "dev": true, "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "elliptic": "6.4.0", - "inherits": "2.0.3", - "parse-asn1": "5.1.1" + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" } }, "browserify-zlib": { @@ -2152,7 +2156,7 @@ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { - "pako": "1.0.6" + "pako": "~1.0.5" } }, "bser": { @@ -2161,7 +2165,7 @@ "integrity": "sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk=", "dev": true, "requires": { - "node-int64": "0.4.0" + "node-int64": "^0.4.0" } }, "buffer": { @@ -2170,11 +2174,33 @@ "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { - "base64-js": "1.2.3", - "ieee754": "1.1.11", - "isarray": "1.0.0" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-alloc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.1.0.tgz", + "integrity": "sha1-BVFNM78WVtNUDGhPZbEgLpDsowM=", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^0.1.0", + "buffer-fill": "^0.1.0" } }, + "buffer-alloc-unsafe": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-0.1.1.tgz", + "integrity": "sha1-/+H2dVHdBVc33iUzN7/oU9+rGmo=", + "dev": true + }, + "buffer-fill": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-0.1.1.tgz", + "integrity": "sha512-YgBMBzdRLEfgxJIGu2wrvI2E03tMCFU1p7d1KhB4BOoMN0VxmTFjSyN5JtKt9z8Z9JajMHruI6SE25W96wNv7Q==", + "dev": true + }, "buffer-from": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", @@ -2210,17 +2236,17 @@ "integrity": "sha512-AABanMBS3QdtNlI0JWhPs8EV5MnHdPfU1OMfB0YJR/qwuHCtR7R7kwcGnWI926qf+JxMYDj22W1Fp/s6Kwv7DQ==", "dev": true, "requires": { - "axios": "0.17.1", + "axios": "^0.17.0", "brotli-size": "0.0.1", - "bytes": "3.0.0", - "ci-env": "1.6.0", - "commander": "2.15.1", - "github-build": "1.2.0", - "glob": "7.1.2", - "gzip-size": "4.1.0", - "opencollective": "1.0.3", - "prettycli": "1.4.3", - "read-pkg-up": "3.0.0" + "bytes": "^3.0.0", + "ci-env": "^1.4.0", + "commander": "^2.11.0", + "github-build": "^1.2.0", + "glob": "^7.1.2", + "gzip-size": "^4.0.0", + "opencollective": "^1.0.3", + "prettycli": "^1.4.3", + "read-pkg-up": "^3.0.0" } }, "bytes": { @@ -2235,19 +2261,19 @@ "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "dev": true, "requires": { - "bluebird": "3.5.1", - "chownr": "1.0.1", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "lru-cache": "4.1.2", - "mississippi": "2.0.0", - "mkdirp": "0.5.1", - "move-concurrently": "1.0.1", - "promise-inflight": "1.0.1", - "rimraf": "2.6.2", - "ssri": "5.3.0", - "unique-filename": "1.1.0", - "y18n": "4.0.0" + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" }, "dependencies": { "rimraf": { @@ -2256,7 +2282,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "y18n": { @@ -2273,15 +2299,15 @@ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" }, "dependencies": { "isobject": { @@ -2319,7 +2345,7 @@ "integrity": "sha512-i3xIKd9U4ov0hWXYo08oJy0YVz0krZ9dbTZQim41xkg0IiScptkAK0UilZ5M1WE3gnWjXAa9+cMtrJ5dM+THbA==", "dev": true, "requires": { - "os-homedir": "1.0.2" + "os-homedir": "^1.0.1" } }, "caller-path": { @@ -2328,7 +2354,7 @@ "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", "dev": true, "requires": { - "callsites": "0.2.0" + "callsites": "^0.2.0" } }, "callsites": { @@ -2348,9 +2374,9 @@ "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", "dev": true, "requires": { - "camelcase": "4.1.0", - "map-obj": "2.0.0", - "quick-lru": "1.1.0" + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" } }, "caseless": { @@ -2365,7 +2391,7 @@ "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", "dev": true, "requires": { - "underscore-contrib": "0.3.0" + "underscore-contrib": "~0.3.0" } }, "center-align": { @@ -2375,18 +2401,18 @@ "dev": true, "optional": true, "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" } }, "chalk": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", - "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.3.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "chardet": { @@ -2400,18 +2426,18 @@ "integrity": "sha512-zW8iXYZtXMx4kux/nuZVXjkLP+CyIK5Al5FHnj1OgTKGZfp4Oy6/ymtMSKFv3GD8DviEmUPmJg9eFdJ/JzudMg==", "dev": true, "requires": { - "anymatch": "2.0.0", - "async-each": "1.0.1", - "braces": "2.3.2", - "fsevents": "1.1.3", - "glob-parent": "3.1.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "4.0.0", - "normalize-path": "2.1.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0", - "upath": "1.0.4" + "anymatch": "^2.0.0", + "async-each": "^1.0.0", + "braces": "^2.3.0", + "fsevents": "^1.1.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^2.1.1", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0", + "upath": "^1.0.0" }, "dependencies": { "array-unique": { @@ -2426,16 +2452,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" } }, "extend-shallow": { @@ -2444,7 +2470,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "fill-range": { @@ -2453,10 +2479,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" } }, "glob-parent": { @@ -2465,8 +2491,8 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" }, "dependencies": { "is-glob": { @@ -2475,7 +2501,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.0" } } } @@ -2492,7 +2518,7 @@ "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.1" } }, "is-number": { @@ -2501,7 +2527,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "isobject": { @@ -2519,9 +2545,9 @@ "dev": true }, "chrome-trace-event": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.2.tgz", - "integrity": "sha1-kPNohdU0WlBiEzLwcXtZWIPV2YI=", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", + "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", "dev": true }, "ci-env": { @@ -2542,8 +2568,8 @@ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "circular-json": { @@ -2558,10 +2584,10 @@ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { @@ -2570,7 +2596,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "isobject": { @@ -2586,7 +2612,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "requires": { - "restore-cursor": "2.0.0" + "restore-cursor": "^2.0.0" } }, "cli-spinners": { @@ -2615,7 +2641,7 @@ "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", "requires": { "slice-ansi": "0.0.4", - "string-width": "1.0.2" + "string-width": "^1.0.1" }, "dependencies": { "ansi-regex": { @@ -2628,7 +2654,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -2636,9 +2662,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -2646,7 +2672,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -2657,13 +2683,13 @@ "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=" }, "cliui": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.0.0.tgz", - "integrity": "sha512-nY3W5Gu2racvdDk//ELReY+dHjb9PlIcVDFXP72nVIhq2Gy3LuVXYwJoPVudwQnv1shtohpgkdCKT2YaKY0CKw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, "clone": { @@ -2681,7 +2707,7 @@ "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", "requires": { - "mimic-response": "1.0.0" + "mimic-response": "^1.0.0" } }, "clone-stats": { @@ -2694,9 +2720,9 @@ "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz", "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==", "requires": { - "inherits": "2.0.3", - "process-nextick-args": "2.0.0", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" } }, "co": { @@ -2711,163 +2737,14 @@ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "codecov": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/codecov/-/codecov-3.0.0.tgz", - "integrity": "sha1-wnO4xPEpRXI+jcnSWAPYk0Pl8o4=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/codecov/-/codecov-3.0.1.tgz", + "integrity": "sha512-0TjnXrbvcPzAkRPv/Y5D8aZju/M5adkFxShRyMMgDReB8EV9nF4XMERXs6ajgLA1di9LUFW2tgePDQd2JPWy7g==", "dev": true, "requires": { "argv": "0.0.2", - "request": "2.81.0", + "request": "^2.81.0", "urlgrey": "0.4.4" - }, - "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "dev": true - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "dev": true, - "requires": { - "boom": "2.10.1" - } - }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "dev": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.6", - "mime-types": "2.1.18" - } - }, - "har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", - "dev": true - }, - "har-validator": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", - "dev": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "dev": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.14.1" - } - }, - "performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", - "dev": true - }, - "qs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", - "dev": true - }, - "request": { - "version": "2.81.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", - "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", - "dev": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.7.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.2.1" - } - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "dev": true, - "requires": { - "hoek": "2.16.3" - } - } } }, "collection-visit": { @@ -2876,8 +2753,8 @@ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "color-convert": { @@ -2885,7 +2762,7 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", "requires": { - "color-name": "1.1.3" + "color-name": "^1.1.1" } }, "color-name": { @@ -2904,7 +2781,7 @@ "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", "dev": true, "requires": { - "delayed-stream": "1.0.0" + "delayed-stream": "~1.0.0" } }, "commander": { @@ -2919,14 +2796,14 @@ "integrity": "sha1-wNAFNe8mTaf2Nzft/aQiiYP6IpE=", "dev": true, "requires": { - "cachedir": "1.2.0", + "cachedir": "^1.1.0", "chalk": "1.1.3", "cz-conventional-changelog": "1.2.0", "dedent": "0.6.0", "detect-indent": "4.0.0", "find-node-modules": "1.0.4", "find-root": "1.0.0", - "fs-extra": "1.0.0", + "fs-extra": "^1.0.0", "glob": "7.1.1", "inquirer": "1.2.3", "lodash": "4.17.2", @@ -2960,11 +2837,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "cli-cursor": { @@ -2973,7 +2850,7 @@ "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "dev": true, "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "external-editor": { @@ -2982,9 +2859,9 @@ "integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=", "dev": true, "requires": { - "extend": "3.0.1", - "spawn-sync": "1.0.15", - "tmp": "0.0.29" + "extend": "^3.0.0", + "spawn-sync": "^1.0.15", + "tmp": "^0.0.29" } }, "figures": { @@ -2993,8 +2870,8 @@ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "glob": { @@ -3003,12 +2880,12 @@ "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "inquirer": { @@ -3017,20 +2894,20 @@ "integrity": "sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=", "dev": true, "requires": { - "ansi-escapes": "1.4.0", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-width": "2.2.0", - "external-editor": "1.1.1", - "figures": "1.7.0", - "lodash": "4.17.2", + "ansi-escapes": "^1.1.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "external-editor": "^1.1.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", "mute-stream": "0.0.6", - "pinkie-promise": "2.0.1", - "run-async": "2.3.0", - "rx": "4.1.0", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "through": "2.3.8" + "pinkie-promise": "^2.0.0", + "run-async": "^2.2.0", + "rx": "^4.1.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" } }, "is-fullwidth-code-point": { @@ -3039,7 +2916,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "lodash": { @@ -3062,7 +2939,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -3072,7 +2949,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "restore-cursor": { @@ -3081,8 +2958,8 @@ "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "dev": true, "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } }, "shelljs": { @@ -3091,9 +2968,9 @@ "integrity": "sha1-N5zM+1a5HIYB5HkzVutTgpJN6a0=", "dev": true, "requires": { - "glob": "7.1.1", - "interpret": "1.1.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "string-width": { @@ -3102,9 +2979,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -3113,7 +2990,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -3128,7 +3005,7 @@ "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", "dev": true, "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.1" } } } @@ -3139,7 +3016,7 @@ "integrity": "sha512-joj9ZlUOjCrwdbmiLqafeUSgkUM74NqhLsZtSqDmhKudaIY197zTrb8JMl31fMnCUuxwFT23eC/oWvrZzDLRJQ==", "dev": true, "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.26.0" } }, "commondir": { @@ -3153,8 +3030,8 @@ "integrity": "sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg=", "dev": true, "requires": { - "array-ify": "1.0.0", - "dot-prop": "3.0.0" + "array-ify": "^1.0.0", + "dot-prop": "^3.0.0" } }, "compare-versions": { @@ -3175,22 +3052,30 @@ "integrity": "sha1-DRAgq5JLL9tNYnmHXH1tq6a6p6k=", "dev": true, "requires": { - "mime-db": "1.33.0" + "mime-db": ">= 1.33.0 < 2" } }, "compression": { "version": "1.7.2", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.2.tgz", + "resolved": "http://registry.npmjs.org/compression/-/compression-1.7.2.tgz", "integrity": "sha1-qv+81qr4VLROuygDU9WtFlH1mmk=", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.4", "bytes": "3.0.0", - "compressible": "2.0.13", + "compressible": "~2.0.13", "debug": "2.6.9", - "on-headers": "1.0.1", + "on-headers": "~1.0.1", "safe-buffer": "5.1.1", - "vary": "1.1.2" + "vary": "~1.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + } } }, "concat-map": { @@ -3204,10 +3089,10 @@ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, "requires": { - "buffer-from": "1.0.0", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "typedarray": "0.0.6" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "connect-history-api-fallback": { @@ -3222,7 +3107,7 @@ "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "dev": true, "requires": { - "date-now": "0.1.4" + "date-now": "^0.1.4" } }, "console-control-strings": { @@ -3250,22 +3135,22 @@ "dev": true }, "conventional-changelog": { - "version": "1.1.23", - "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-1.1.23.tgz", - "integrity": "sha512-yCPXU/OXJmxgbvTQfIKXKwKa4KQTvlO0a4T/371Raz3bdxcHIGhQtHtdrNee4Z8nGLNfe54njHDblVG2JNFyjg==", + "version": "1.1.24", + "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-1.1.24.tgz", + "integrity": "sha512-2WcSUst4Y3Z4hHvoMTWXMJr/DmgVdLiMOVY1Kak2LfFz+GIz2KDp5naqbFesYbfXPmaZ5p491dO0FWZIJoJw1Q==", "dev": true, "requires": { - "conventional-changelog-angular": "1.6.6", - "conventional-changelog-atom": "0.2.8", - "conventional-changelog-codemirror": "0.3.8", - "conventional-changelog-core": "2.0.10", - "conventional-changelog-ember": "0.3.11", - "conventional-changelog-eslint": "1.0.9", - "conventional-changelog-express": "0.3.6", - "conventional-changelog-jquery": "0.1.0", - "conventional-changelog-jscs": "0.1.0", - "conventional-changelog-jshint": "0.3.8", - "conventional-changelog-preset-loader": "1.1.8" + "conventional-changelog-angular": "^1.6.6", + "conventional-changelog-atom": "^0.2.8", + "conventional-changelog-codemirror": "^0.3.8", + "conventional-changelog-core": "^2.0.11", + "conventional-changelog-ember": "^0.3.12", + "conventional-changelog-eslint": "^1.0.9", + "conventional-changelog-express": "^0.3.6", + "conventional-changelog-jquery": "^0.1.0", + "conventional-changelog-jscs": "^0.1.0", + "conventional-changelog-jshint": "^0.3.8", + "conventional-changelog-preset-loader": "^1.1.8" } }, "conventional-changelog-angular": { @@ -3274,8 +3159,8 @@ "integrity": "sha512-suQnFSqCxRwyBxY68pYTsFkG0taIdinHLNEAX5ivtw8bCRnIgnpvcHmlR/yjUyZIrNPYAoXlY1WiEKWgSE4BNg==", "dev": true, "requires": { - "compare-func": "1.3.2", - "q": "1.5.1" + "compare-func": "^1.3.1", + "q": "^1.5.1" } }, "conventional-changelog-atom": { @@ -3284,37 +3169,37 @@ "integrity": "sha512-8pPZqhMbrnltNBizjoDCb/Sz85KyUXNDQxuAEYAU5V/eHn0okMBVjqc8aHWYpHrytyZWvMGbayOlDv7i8kEf6g==", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.5.1" } }, "conventional-changelog-cli": { - "version": "1.3.21", - "resolved": "https://registry.npmjs.org/conventional-changelog-cli/-/conventional-changelog-cli-1.3.21.tgz", - "integrity": "sha512-K9VBljxzuATZCLTVnI83PN7WdeRJRPPB5FumuLk4ES3E+m2YJvX07DRbdJlINk6C2DeAjj4ioS5JvsvJaaCRbA==", + "version": "1.3.22", + "resolved": "https://registry.npmjs.org/conventional-changelog-cli/-/conventional-changelog-cli-1.3.22.tgz", + "integrity": "sha512-pnjdIJbxjkZ5VdAX/H1wndr1G10CY8MuZgnXuJhIHglOXfIrXygb7KZC836GW9uo1u8PjEIvIw/bKX0lOmOzZg==", "dev": true, "requires": { - "add-stream": "1.0.0", - "conventional-changelog": "1.1.23", - "lodash": "4.17.5", - "meow": "4.0.0", - "tempfile": "1.1.1" + "add-stream": "^1.0.0", + "conventional-changelog": "^1.1.24", + "lodash": "^4.2.1", + "meow": "^4.0.0", + "tempfile": "^1.1.1" }, "dependencies": { "meow": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz", - "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", "dev": true, "requires": { - "camelcase-keys": "4.2.0", - "decamelize-keys": "1.1.0", - "loud-rejection": "1.6.0", - "minimist": "1.2.0", - "minimist-options": "3.0.2", - "normalize-package-data": "2.4.0", - "read-pkg-up": "3.0.0", - "redent": "2.0.0", - "trim-newlines": "2.0.0" + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" } }, "minimist": { @@ -3331,28 +3216,28 @@ "integrity": "sha512-3HFZKtBXTaUCHvz7ai6nk2+psRIkldDoNzCsom0egDtVmPsvvHZkzjynhdQyULfacRSsBTaiQ0ol6nBOL4dDiQ==", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.5.1" } }, "conventional-changelog-core": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-2.0.10.tgz", - "integrity": "sha512-FP0NHXIbpvU+f5jk/qZdnodhFmlzKW8ENRHQIWT69oe7ffur9nFRVJZlnXnFBOzwHM9WIRbC15ZWh9HZN6t9Uw==", - "dev": true, - "requires": { - "conventional-changelog-writer": "3.0.9", - "conventional-commits-parser": "2.1.7", - "dateformat": "3.0.3", - "get-pkg-repo": "1.4.0", - "git-raw-commits": "1.3.6", - "git-remote-origin-url": "2.0.0", - "git-semver-tags": "1.3.6", - "lodash": "4.17.5", - "normalize-package-data": "2.4.0", - "q": "1.5.1", - "read-pkg": "1.1.0", - "read-pkg-up": "1.0.1", - "through2": "2.0.3" + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-2.0.11.tgz", + "integrity": "sha512-HvTE6RlqeEZ/NFPtQeFLsIDOLrGP3bXYr7lFLMhCVsbduF1MXIe8OODkwMFyo1i9ku9NWBwVnVn0jDmIFXjDRg==", + "dev": true, + "requires": { + "conventional-changelog-writer": "^3.0.9", + "conventional-commits-parser": "^2.1.7", + "dateformat": "^3.0.0", + "get-pkg-repo": "^1.0.0", + "git-raw-commits": "^1.3.6", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^1.3.6", + "lodash": "^4.2.1", + "normalize-package-data": "^2.3.5", + "q": "^1.5.1", + "read-pkg": "^1.1.0", + "read-pkg-up": "^1.0.1", + "through2": "^2.0.0" }, "dependencies": { "find-up": { @@ -3361,8 +3246,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "load-json-file": { @@ -3371,11 +3256,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" } }, "parse-json": { @@ -3384,7 +3269,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "path-exists": { @@ -3393,7 +3278,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "path-type": { @@ -3402,9 +3287,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { @@ -3419,9 +3304,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { @@ -3430,19 +3315,19 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" } } } }, "conventional-changelog-ember": { - "version": "0.3.11", - "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-0.3.11.tgz", - "integrity": "sha512-ErjPPiDmTd/WPgj2bSp+CGsLtJiv7FbdPKjZXH2Cd5P7j44Rqf0V9SIAAYFTQNoPqmvcp+sIcr/vH52WzPJUbw==", + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-0.3.12.tgz", + "integrity": "sha512-mmJzA7uzbrOqeF89dMMi6z17O07ORTXlTMArnLG9ZTX4oLaKNolUlxFUFlFm9JUoVWajVpaHQWjxH1EOQ+ARoQ==", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.5.1" } }, "conventional-changelog-eslint": { @@ -3451,7 +3336,7 @@ "integrity": "sha512-h87nfVh2fdk9fJIvz26wCBsbDC/KxqCc5wSlNMZbXcARtbgNbNDIF7Y7ctokFdnxkzVdaHsbINkh548T9eBA7Q==", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.5.1" } }, "conventional-changelog-express": { @@ -3460,7 +3345,7 @@ "integrity": "sha512-3iWVtBJZ9RnRnZveNDzOD8QRn6g6vUif0qVTWWyi5nUIAbuN1FfPVyKdAlJJfp5Im+dE8Kiy/d2SpaX/0X678Q==", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.5.1" } }, "conventional-changelog-jquery": { @@ -3469,7 +3354,7 @@ "integrity": "sha1-Agg5cWLjhGmG5xJztsecW1+A9RA=", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.4.1" } }, "conventional-changelog-jscs": { @@ -3478,7 +3363,7 @@ "integrity": "sha1-BHnrRDzH1yxYvwvPDvHURKkvDlw=", "dev": true, "requires": { - "q": "1.5.1" + "q": "^1.4.1" } }, "conventional-changelog-jshint": { @@ -3487,8 +3372,8 @@ "integrity": "sha512-hn9QU4ZI/5V50wKPJNPGT4gEWgiBFpV6adieILW4MaUFynuDYOvQ71EMSj3EznJyKi/KzuXpc9dGmX8njZMjig==", "dev": true, "requires": { - "compare-func": "1.3.2", - "q": "1.5.1" + "compare-func": "^1.3.1", + "q": "^1.5.1" } }, "conventional-changelog-lint-config-cz": { @@ -3497,7 +3382,7 @@ "integrity": "sha1-CC4Fgjpj8GRVHw+N+EbE+NGOr2k=", "dev": true, "requires": { - "app-root-path": "2.0.1" + "app-root-path": "~2.0.1" } }, "conventional-changelog-preset-loader": { @@ -3512,33 +3397,33 @@ "integrity": "sha512-n9KbsxlJxRQsUnK6wIBRnARacvNnN4C/nxnxCkH+B/R1JS2Fa+DiP1dU4I59mEDEjgnFaN2+9wr1P1s7GYB5/Q==", "dev": true, "requires": { - "compare-func": "1.3.2", - "conventional-commits-filter": "1.1.6", - "dateformat": "3.0.3", - "handlebars": "4.0.11", - "json-stringify-safe": "5.0.1", - "lodash": "4.17.5", - "meow": "4.0.0", - "semver": "5.5.0", - "split": "1.0.1", - "through2": "2.0.3" + "compare-func": "^1.3.1", + "conventional-commits-filter": "^1.1.6", + "dateformat": "^3.0.0", + "handlebars": "^4.0.2", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.2.1", + "meow": "^4.0.0", + "semver": "^5.5.0", + "split": "^1.0.0", + "through2": "^2.0.0" }, "dependencies": { "meow": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz", - "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", "dev": true, "requires": { - "camelcase-keys": "4.2.0", - "decamelize-keys": "1.1.0", - "loud-rejection": "1.6.0", - "minimist": "1.2.0", - "minimist-options": "3.0.2", - "normalize-package-data": "2.4.0", - "read-pkg-up": "3.0.0", - "redent": "2.0.0", - "trim-newlines": "2.0.0" + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" } }, "minimist": { @@ -3561,8 +3446,8 @@ "integrity": "sha512-KcDgtCRKJCQhyk6VLT7zR+ZOyCnerfemE/CsR3iQpzRRFbLEs0Y6rwk3mpDvtOh04X223z+1xyJ582Stfct/0Q==", "dev": true, "requires": { - "is-subset": "0.1.1", - "modify-values": "1.0.1" + "is-subset": "^0.1.1", + "modify-values": "^1.0.0" } }, "conventional-commits-parser": { @@ -3571,30 +3456,30 @@ "integrity": "sha512-BoMaddIEJ6B4QVMSDu9IkVImlGOSGA1I2BQyOZHeLQ6qVOJLcLKn97+fL6dGbzWEiqDzfH4OkcveULmeq2MHFQ==", "dev": true, "requires": { - "JSONStream": "1.3.2", - "is-text-path": "1.0.1", - "lodash": "4.17.5", - "meow": "4.0.0", - "split2": "2.2.0", - "through2": "2.0.3", - "trim-off-newlines": "1.0.1" + "JSONStream": "^1.0.4", + "is-text-path": "^1.0.0", + "lodash": "^4.2.1", + "meow": "^4.0.0", + "split2": "^2.0.0", + "through2": "^2.0.0", + "trim-off-newlines": "^1.0.0" }, "dependencies": { "meow": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz", - "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", "dev": true, "requires": { - "camelcase-keys": "4.2.0", - "decamelize-keys": "1.1.0", - "loud-rejection": "1.6.0", - "minimist": "1.2.0", - "minimist-options": "3.0.2", - "normalize-package-data": "2.4.0", - "read-pkg-up": "3.0.0", - "redent": "2.0.0", - "trim-newlines": "2.0.0" + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" } }, "minimist": { @@ -3628,12 +3513,12 @@ "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, "requires": { - "aproba": "1.2.0", - "fs-write-stream-atomic": "1.0.10", - "iferr": "0.1.5", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" }, "dependencies": { "rimraf": { @@ -3642,7 +3527,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } } @@ -3669,10 +3554,10 @@ "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", "dev": true, "requires": { - "is-directory": "0.3.1", - "js-yaml": "3.11.0", - "parse-json": "4.0.0", - "require-from-string": "2.0.2" + "is-directory": "^0.3.1", + "js-yaml": "^3.9.0", + "parse-json": "^4.0.0", + "require-from-string": "^2.0.1" } }, "create-ecdh": { @@ -3681,8 +3566,8 @@ "integrity": "sha512-iZvCCg8XqHQZ1ioNBTzXS/cQSkqkqcPs8xSX4upNB+DAk9Ht3uzQf2J32uAHNCne8LDmKr29AgZrEs4oIrwLuQ==", "dev": true, "requires": { - "bn.js": "4.11.8", - "elliptic": "6.4.0" + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" } }, "create-hash": { @@ -3691,11 +3576,11 @@ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "inherits": "2.0.3", - "md5.js": "1.3.4", - "ripemd160": "2.0.1", - "sha.js": "2.4.11" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" } }, "create-hmac": { @@ -3704,12 +3589,12 @@ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "create-hash": "1.2.0", - "inherits": "2.0.3", - "ripemd160": "2.0.1", - "safe-buffer": "5.1.1", - "sha.js": "2.4.11" + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "cross-spawn": { @@ -3717,11 +3602,11 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "requires": { - "nice-try": "1.0.4", - "path-key": "2.0.1", - "semver": "5.5.0", - "shebang-command": "1.2.0", - "which": "1.3.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "cryptiles": { @@ -3730,7 +3615,7 @@ "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", "dev": true, "requires": { - "boom": "5.2.0" + "boom": "5.x.x" }, "dependencies": { "boom": { @@ -3739,7 +3624,7 @@ "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", "dev": true, "requires": { - "hoek": "4.2.1" + "hoek": "4.x.x" } } } @@ -3750,17 +3635,17 @@ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { - "browserify-cipher": "1.0.1", - "browserify-sign": "4.0.4", - "create-ecdh": "4.0.1", - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "diffie-hellman": "5.0.3", - "inherits": "2.0.3", - "pbkdf2": "3.0.14", - "public-encrypt": "4.0.2", - "randombytes": "2.0.6", - "randomfill": "1.0.4" + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" } }, "cssom": { @@ -3775,7 +3660,7 @@ "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=", "dev": true, "requires": { - "cssom": "0.3.2" + "cssom": "0.3.x" } }, "currently-unhandled": { @@ -3784,7 +3669,7 @@ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "dev": true, "requires": { - "array-find-index": "1.0.2" + "array-find-index": "^1.0.1" } }, "cycle": { @@ -3805,12 +3690,12 @@ "integrity": "sha1-K8oElkyJGbI/P9aonvXmAIsxs/g=", "dev": true, "requires": { - "conventional-commit-types": "2.2.0", - "lodash.map": "4.6.0", - "longest": "1.0.1", - "pad-right": "0.2.2", - "right-pad": "1.0.1", - "word-wrap": "1.2.3" + "conventional-commit-types": "^2.0.0", + "lodash.map": "^4.5.1", + "longest": "^1.0.1", + "pad-right": "^0.2.2", + "right-pad": "^1.0.1", + "word-wrap": "^1.0.3" } }, "cz-customizable": { @@ -3851,11 +3736,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "cli-cursor": { @@ -3864,7 +3749,7 @@ "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "dev": true, "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "external-editor": { @@ -3873,9 +3758,9 @@ "integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=", "dev": true, "requires": { - "extend": "3.0.1", - "spawn-sync": "1.0.15", - "tmp": "0.0.29" + "extend": "^3.0.0", + "spawn-sync": "^1.0.15", + "tmp": "^0.0.29" } }, "figures": { @@ -3884,8 +3769,8 @@ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "inquirer": { @@ -3894,20 +3779,20 @@ "integrity": "sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=", "dev": true, "requires": { - "ansi-escapes": "1.4.0", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-width": "2.2.0", - "external-editor": "1.1.1", - "figures": "1.7.0", - "lodash": "4.17.5", + "ansi-escapes": "^1.1.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "external-editor": "^1.1.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", "mute-stream": "0.0.6", - "pinkie-promise": "2.0.1", - "run-async": "2.3.0", - "rx": "4.1.0", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "through": "2.3.8" + "pinkie-promise": "^2.0.0", + "run-async": "^2.2.0", + "rx": "^4.1.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" } }, "is-fullwidth-code-point": { @@ -3916,7 +3801,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "mute-stream": { @@ -3927,7 +3812,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -3937,8 +3822,8 @@ "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "dev": true, "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } }, "string-width": { @@ -3947,9 +3832,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -3958,7 +3843,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -3973,7 +3858,7 @@ "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", "dev": true, "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.1" } }, "word-wrap": { @@ -3984,6 +3869,15 @@ } } }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "dev": true, + "requires": { + "es5-ext": "^0.10.9" + } + }, "dargs": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/dargs/-/dargs-5.1.0.tgz", @@ -3995,7 +3889,7 @@ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "data-urls": { @@ -4004,9 +3898,9 @@ "integrity": "sha512-ai40PPQR0Fn1lD2PPie79CibnlMN2AYiDhwFX/rZHVsxbs5kNJSjegqXIprhouGXlRdEnfybva7kqRGnB6mypA==", "dev": true, "requires": { - "abab": "1.0.4", - "whatwg-mimetype": "2.1.0", - "whatwg-url": "6.4.0" + "abab": "^1.0.4", + "whatwg-mimetype": "^2.0.0", + "whatwg-url": "^6.4.0" } }, "date-fns": { @@ -4044,8 +3938,8 @@ "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", "dev": true, "requires": { - "decamelize": "1.2.0", - "map-obj": "1.0.1" + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" }, "dependencies": { "map-obj": { @@ -4066,7 +3960,7 @@ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", "requires": { - "mimic-response": "1.0.0" + "mimic-response": "^1.0.0" } }, "dedent": { @@ -4098,7 +3992,7 @@ "integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=", "dev": true, "requires": { - "strip-bom": "2.0.0" + "strip-bom": "^2.0.0" } }, "define-properties": { @@ -4107,8 +4001,8 @@ "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", "dev": true, "requires": { - "foreach": "2.0.5", - "object-keys": "1.0.11" + "foreach": "^2.0.5", + "object-keys": "^1.0.8" } }, "define-property": { @@ -4117,8 +4011,8 @@ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { "is-accessor-descriptor": { @@ -4127,7 +4021,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -4136,7 +4030,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -4145,9 +4039,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { @@ -4170,13 +4064,13 @@ "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "dev": true, "requires": { - "globby": "5.0.0", - "is-path-cwd": "1.0.0", - "is-path-in-cwd": "1.0.1", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "rimraf": "2.2.8" + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" }, "dependencies": { "globby": { @@ -4185,12 +4079,12 @@ "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", "dev": true, "requires": { - "array-union": "1.0.2", - "arrify": "1.0.1", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { @@ -4225,8 +4119,8 @@ "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "dev": true, "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "destroy": { @@ -4246,7 +4140,7 @@ "integrity": "sha1-STXe39lIhkjgBrASlWbpOGcR6mM=", "dev": true, "requires": { - "fs-exists-sync": "0.1.0" + "fs-exists-sync": "^0.1.0" } }, "detect-indent": { @@ -4254,7 +4148,7 @@ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "detect-libc": { @@ -4286,9 +4180,9 @@ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, "requires": { - "bn.js": "4.11.8", - "miller-rabin": "4.0.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" } }, "dlv": { @@ -4309,8 +4203,8 @@ "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", "dev": true, "requires": { - "ip": "1.1.5", - "safe-buffer": "5.1.1" + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" } }, "dns-txt": { @@ -4319,7 +4213,7 @@ "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", "dev": true, "requires": { - "buffer-indexof": "1.1.1" + "buffer-indexof": "^1.0.0" } }, "doctrine": { @@ -4328,7 +4222,7 @@ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { - "esutils": "2.0.2" + "esutils": "^2.0.2" } }, "domain-browser": { @@ -4343,7 +4237,7 @@ "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", "dev": true, "requires": { - "webidl-conversions": "4.0.2" + "webidl-conversions": "^4.0.2" } }, "dot-prop": { @@ -4352,7 +4246,7 @@ "integrity": "sha1-G3CK8JSknJoOfbyteQq6U52sEXc=", "dev": true, "requires": { - "is-obj": "1.0.1" + "is-obj": "^1.0.0" } }, "duplexer": { @@ -4372,10 +4266,10 @@ "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "stream-shift": "1.0.0" + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" } }, "ecc-jsbn": { @@ -4385,7 +4279,7 @@ "dev": true, "optional": true, "requires": { - "jsbn": "0.1.1" + "jsbn": "~0.1.0" } }, "editions": { @@ -4406,9 +4300,9 @@ "dev": true }, "ejs": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.8.tgz", - "integrity": "sha512-QIDZL54fyV8MDcAsO91BMH1ft2qGGaHIJsJIA/+t+7uvXol1dm413fPcUgUb4k8F/9457rx4/KFE4XfDifrQxQ==" + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.9.tgz", + "integrity": "sha512-GJCAeDBKfREgkBtgrYSf9hQy9kTb3helv0zGdzqhM7iAkW8FA/ZF97VQDbwFiwIT8MQLLOe5VlPZOEvZAqtUAQ==" }, "elegant-spinner": { "version": "1.0.1", @@ -4421,13 +4315,13 @@ "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", "dev": true, "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0", - "hash.js": "1.1.3", - "hmac-drbg": "1.0.1", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1", - "minimalistic-crypto-utils": "1.0.1" + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" } }, "emojis-list": { @@ -4447,7 +4341,7 @@ "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "dev": true, "requires": { - "iconv-lite": "0.4.21" + "iconv-lite": "~0.4.13" } }, "end-of-stream": { @@ -4456,7 +4350,7 @@ "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "enhanced-resolve": { @@ -4464,9 +4358,9 @@ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz", "integrity": "sha512-jox/62b2GofV1qTUQTMPEJSDIGycS43evqYzD/KVtEb9OCoki9cnacUPxCrZa7JfPzZSYOCZhu9O9luaMxAX8g==", "requires": { - "graceful-fs": "4.1.11", - "memory-fs": "0.4.1", - "tapable": "1.0.0" + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" } }, "envinfo": { @@ -4479,7 +4373,7 @@ "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "requires": { - "prr": "1.0.1" + "prr": "~1.0.1" } }, "error": { @@ -4487,8 +4381,8 @@ "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", "requires": { - "string-template": "0.2.1", - "xtend": "4.0.1" + "string-template": "~0.2.1", + "xtend": "~4.0.0" } }, "error-ex": { @@ -4496,7 +4390,7 @@ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "es-abstract": { @@ -4505,11 +4399,11 @@ "integrity": "sha512-ZnQrE/lXTTQ39ulXZ+J1DTFazV9qBy61x2bY071B+qGco8Z8q1QddsLdt/EF8Ai9hcWH72dWS0kFqXLxOxqslA==", "dev": true, "requires": { - "es-to-primitive": "1.1.1", - "function-bind": "1.1.1", - "has": "1.0.1", - "is-callable": "1.1.3", - "is-regex": "1.0.4" + "es-to-primitive": "^1.1.1", + "function-bind": "^1.1.1", + "has": "^1.0.1", + "is-callable": "^1.1.3", + "is-regex": "^1.0.4" } }, "es-to-primitive": { @@ -4518,9 +4412,41 @@ "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", "dev": true, "requires": { - "is-callable": "1.1.3", - "is-date-object": "1.0.1", - "is-symbol": "1.0.1" + "is-callable": "^1.1.1", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.1" + } + }, + "es5-ext": { + "version": "0.10.42", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.42.tgz", + "integrity": "sha512-AJxO1rmPe1bDEfSR6TJ/FgMFYuTBhR5R57KW58iCkYACMyFbrkqVyzXSurYoScDGvgyMpk7uRF/lPUPPTmsRSA==", + "dev": true, + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" } }, "escape-html": { @@ -4540,11 +4466,11 @@ "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==", "dev": true, "requires": { - "esprima": "3.1.3", - "estraverse": "4.2.0", - "esutils": "2.0.2", - "optionator": "0.8.2", - "source-map": "0.6.1" + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" }, "dependencies": { "esprima": { @@ -4568,44 +4494,44 @@ "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", "dev": true, "requires": { - "ajv": "5.5.2", - "babel-code-frame": "6.26.0", - "chalk": "2.3.2", - "concat-stream": "1.6.2", - "cross-spawn": "5.1.0", - "debug": "3.1.0", - "doctrine": "2.1.0", - "eslint-scope": "3.7.1", - "eslint-visitor-keys": "1.0.0", - "espree": "3.5.4", - "esquery": "1.0.1", - "esutils": "2.0.2", - "file-entry-cache": "2.0.0", - "functional-red-black-tree": "1.0.1", - "glob": "7.1.2", - "globals": "11.4.0", - "ignore": "3.3.7", - "imurmurhash": "0.1.4", - "inquirer": "3.3.0", - "is-resolvable": "1.1.0", - "js-yaml": "3.11.0", - "json-stable-stringify-without-jsonify": "1.0.1", - "levn": "0.3.0", - "lodash": "4.17.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "natural-compare": "1.4.0", - "optionator": "0.8.2", - "path-is-inside": "1.0.2", - "pluralize": "7.0.0", - "progress": "2.0.0", - "regexpp": "1.1.0", - "require-uncached": "1.0.3", - "semver": "5.5.0", - "strip-ansi": "4.0.0", - "strip-json-comments": "2.0.1", + "ajv": "^5.3.0", + "babel-code-frame": "^6.22.0", + "chalk": "^2.1.0", + "concat-stream": "^1.6.0", + "cross-spawn": "^5.1.0", + "debug": "^3.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^3.7.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^3.5.4", + "esquery": "^1.0.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.0.1", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^3.0.6", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.9.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.4", + "minimatch": "^3.0.2", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.0.1", + "require-uncached": "^1.0.3", + "semver": "^5.3.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "~2.0.1", "table": "4.0.2", - "text-table": "0.2.0" + "text-table": "~0.2.0" }, "dependencies": { "cross-spawn": { @@ -4614,9 +4540,9 @@ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "debug": { @@ -4629,9 +4555,9 @@ } }, "globals": { - "version": "11.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.4.0.tgz", - "integrity": "sha512-Dyzmifil8n/TmSqYDEXbm+C8yitzJQqQIlJQLNRMwa+BOUJpRC19pyVeN12JAjt61xonvXjtff+hJruTRXn5HA==", + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.5.0.tgz", + "integrity": "sha512-hYyf+kI8dm3nORsiiXUQigOU62hDLfJ9G01uyGMxhc6BKsircrUhC4uJPQPUSuq2GrTmiiEt7ewxlMdBewfmKQ==", "dev": true }, "inquirer": { @@ -4640,20 +4566,20 @@ "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dev": true, "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.3.2", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx-lite": "4.0.8", - "rx-lite-aggregates": "4.0.8", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" } } } @@ -4664,10 +4590,10 @@ "integrity": "sha512-Q/Cc2sW1OAISDS+Ji6lZS2KV4b7ueA/WydVWd1BECTQwVvfQy5JAi3glhINoKzoMnfnuRgNP+ZWKrGAbp3QDxw==", "dev": true, "requires": { - "ignore": "3.3.7", - "minimatch": "3.0.4", - "resolve": "1.7.1", - "semver": "5.5.0" + "ignore": "^3.3.6", + "minimatch": "^3.0.4", + "resolve": "^1.3.3", + "semver": "^5.4.1" } }, "eslint-scope": { @@ -4676,8 +4602,8 @@ "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", "dev": true, "requires": { - "esrecurse": "4.2.1", - "estraverse": "4.2.0" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, "eslint-visitor-keys": { @@ -4692,8 +4618,8 @@ "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", "dev": true, "requires": { - "acorn": "5.5.3", - "acorn-jsx": "3.0.1" + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" } }, "esprima": { @@ -4707,7 +4633,7 @@ "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", "dev": true, "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.0.0" } }, "esrecurse": { @@ -4716,7 +4642,7 @@ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "dev": true, "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.1.0" } }, "estraverse": { @@ -4737,9 +4663,9 @@ "dev": true }, "eventemitter3": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", - "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", + "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==", "dev": true }, "events": { @@ -4754,7 +4680,7 @@ "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", "dev": true, "requires": { - "original": "1.0.0" + "original": ">=0.0.5" } }, "evp_bytestokey": { @@ -4763,8 +4689,8 @@ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, "requires": { - "md5.js": "1.3.4", - "safe-buffer": "5.1.1" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, "exec-sh": { @@ -4773,7 +4699,7 @@ "integrity": "sha512-aLt95pexaugVtQerpmE51+4QfWrNc304uez7jvj6fWnN8GeEHpttB8F36n8N7uVhUMbH/1enbxQ9HImZ4w/9qg==", "dev": true, "requires": { - "merge": "1.2.0" + "merge": "^1.1.3" } }, "execa": { @@ -4781,13 +4707,13 @@ "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" }, "dependencies": { "cross-spawn": { @@ -4795,9 +4721,9 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } } } @@ -4818,7 +4744,7 @@ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", "requires": { - "is-posix-bracket": "0.1.1" + "is-posix-bracket": "^0.1.0" } }, "expand-range": { @@ -4826,7 +4752,7 @@ "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "requires": { - "fill-range": "2.2.3" + "fill-range": "^2.1.0" } }, "expand-template": { @@ -4840,7 +4766,7 @@ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", "requires": { - "homedir-polyfill": "1.0.1" + "homedir-polyfill": "^1.0.1" } }, "expect": { @@ -4849,12 +4775,12 @@ "integrity": "sha512-XcNXEPehqn8b/jm8FYotdX0YrXn36qp4HWlrVT4ktwQas1l1LPxiVWncYnnL2eyMtKAmVIaG0XAp0QlrqJaxaA==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "jest-diff": "22.4.3", - "jest-get-type": "22.4.3", - "jest-matcher-utils": "22.4.3", - "jest-message-util": "22.4.3", - "jest-regex-util": "22.4.3" + "ansi-styles": "^3.2.0", + "jest-diff": "^22.4.3", + "jest-get-type": "^22.4.3", + "jest-matcher-utils": "^22.4.3", + "jest-message-util": "^22.4.3", + "jest-regex-util": "^22.4.3" } }, "express": { @@ -4863,36 +4789,36 @@ "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.5", "array-flatten": "1.1.1", "body-parser": "1.18.2", "content-disposition": "0.5.2", - "content-type": "1.0.4", + "content-type": "~1.0.4", "cookie": "0.3.1", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "1.1.2", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "finalhandler": "1.1.1", "fresh": "0.5.2", "merge-descriptors": "1.0.1", - "methods": "1.1.2", - "on-finished": "2.3.0", - "parseurl": "1.3.2", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.3", + "proxy-addr": "~2.0.3", "qs": "6.5.1", - "range-parser": "1.2.0", + "range-parser": "~1.2.0", "safe-buffer": "5.1.1", "send": "0.16.2", "serve-static": "1.13.2", "setprototypeof": "1.1.0", - "statuses": "1.4.0", - "type-is": "1.6.16", + "statuses": "~1.4.0", + "type-is": "~1.6.16", "utils-merge": "1.0.1", - "vary": "1.1.2" + "vary": "~1.1.2" }, "dependencies": { "array-flatten": { @@ -4900,6 +4826,12 @@ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", "dev": true + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true } } }, @@ -4915,8 +4847,8 @@ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -4925,7 +4857,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -4935,9 +4867,9 @@ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "requires": { - "chardet": "0.4.2", - "iconv-lite": "0.4.21", - "tmp": "0.0.33" + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" } }, "extglob": { @@ -4945,7 +4877,7 @@ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } }, "extsprintf": { @@ -4984,7 +4916,7 @@ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", "dev": true, "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" } }, "fb-watchman": { @@ -4993,7 +4925,7 @@ "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", "dev": true, "requires": { - "bser": "2.0.0" + "bser": "^2.0.0" } }, "figures": { @@ -5001,7 +4933,7 @@ "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.5" } }, "file-entry-cache": { @@ -5010,8 +4942,8 @@ "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", "dev": true, "requires": { - "flat-cache": "1.3.0", - "object-assign": "4.1.1" + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" } }, "filename-regex": { @@ -5025,8 +4957,8 @@ "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", "dev": true, "requires": { - "glob": "7.1.2", - "minimatch": "3.0.4" + "glob": "^7.0.3", + "minimatch": "^3.0.3" } }, "fill-range": { @@ -5034,11 +4966,11 @@ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.7", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^1.1.3", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" } }, "finalhandler": { @@ -5048,12 +4980,12 @@ "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.4.0", - "unpipe": "1.0.0" + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" } }, "find-cache-dir": { @@ -5062,9 +4994,9 @@ "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", "dev": true, "requires": { - "commondir": "1.0.1", - "make-dir": "1.2.0", - "pkg-dir": "2.0.0" + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" } }, "find-config": { @@ -5073,7 +5005,7 @@ "integrity": "sha1-xPayrkkbLK48qK9yQB8a2Ez90Nk=", "dev": true, "requires": { - "user-home": "1.1.1" + "user-home": "^1.1.1" } }, "find-node-modules": { @@ -5083,7 +5015,7 @@ "dev": true, "requires": { "findup-sync": "0.4.2", - "merge": "1.2.0" + "merge": "^1.2.0" } }, "find-parent-dir": { @@ -5103,7 +5035,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "findup-sync": { @@ -5112,10 +5044,10 @@ "integrity": "sha1-qBF9D3MST1pFRoOVef5S1xKfteU=", "dev": true, "requires": { - "detect-file": "0.1.0", - "is-glob": "2.0.1", - "micromatch": "2.3.11", - "resolve-dir": "0.1.1" + "detect-file": "^0.1.0", + "is-glob": "^2.0.1", + "micromatch": "^2.3.7", + "resolve-dir": "^0.1.0" }, "dependencies": { "expand-tilde": { @@ -5124,7 +5056,7 @@ "integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=", "dev": true, "requires": { - "os-homedir": "1.0.2" + "os-homedir": "^1.0.1" } }, "global-modules": { @@ -5133,8 +5065,8 @@ "integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=", "dev": true, "requires": { - "global-prefix": "0.1.5", - "is-windows": "0.2.0" + "global-prefix": "^0.1.4", + "is-windows": "^0.2.0" } }, "global-prefix": { @@ -5143,10 +5075,10 @@ "integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=", "dev": true, "requires": { - "homedir-polyfill": "1.0.1", - "ini": "1.3.5", - "is-windows": "0.2.0", - "which": "1.3.0" + "homedir-polyfill": "^1.0.0", + "ini": "^1.3.4", + "is-windows": "^0.2.0", + "which": "^1.2.12" } }, "is-windows": { @@ -5161,8 +5093,8 @@ "integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=", "dev": true, "requires": { - "expand-tilde": "1.2.2", - "global-modules": "0.2.3" + "expand-tilde": "^1.2.2", + "global-modules": "^0.2.3" } } } @@ -5172,7 +5104,7 @@ "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.2" } }, "flat-cache": { @@ -5181,16 +5113,16 @@ "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", "dev": true, "requires": { - "circular-json": "0.3.3", - "del": "2.2.2", - "graceful-fs": "4.1.11", - "write": "0.2.1" + "circular-json": "^0.3.1", + "del": "^2.0.2", + "graceful-fs": "^4.1.2", + "write": "^0.2.1" } }, "flow-parser": { - "version": "0.69.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.69.0.tgz", - "integrity": "sha1-N4tRKNbQtVSosvFqTKPhq5ZJ8A4=" + "version": "0.71.0", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.71.0.tgz", + "integrity": "sha512-rXSvqSBLf8aRI6T3P99jMcUYvZoO1KZcKDkzGJmXvYdNAgRKu7sfGNtxEsn3cX4TgungBuJpX+K8aHRC9/B5MA==" }, "flush-write-stream": { "version": "1.0.3", @@ -5198,8 +5130,8 @@ "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" } }, "follow-redirects": { @@ -5208,7 +5140,7 @@ "integrity": "sha512-uxYePVPogtya1ktGnAAXOacnbIuRMB4dkvqeNz2qTtTQsuzSfbDolV+wMMKxAmCx0bLgAKLbBOkjItMbbkR1vg==", "dev": true, "requires": { - "debug": "3.1.0" + "debug": "^3.1.0" }, "dependencies": { "debug": { @@ -5232,7 +5164,7 @@ "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", "requires": { - "for-in": "1.0.2" + "for-in": "^1.0.1" } }, "foreach": { @@ -5253,9 +5185,9 @@ "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", "dev": true, "requires": { - "asynckit": "0.4.0", + "asynckit": "^0.4.0", "combined-stream": "1.0.6", - "mime-types": "2.1.18" + "mime-types": "^2.1.12" } }, "forwarded": { @@ -5270,7 +5202,7 @@ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fresh": { @@ -5284,10 +5216,16 @@ "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, "fs-exists-sync": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", @@ -5300,9 +5238,9 @@ "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "klaw": "1.3.1" + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0", + "klaw": "^1.0.0" } }, "fs-write-stream-atomic": { @@ -5311,10 +5249,10 @@ "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "iferr": "0.1.5", - "imurmurhash": "0.1.4", - "readable-stream": "2.3.6" + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" } }, "fs.realpath": { @@ -5323,39 +5261,29 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", - "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.3.tgz", + "integrity": "sha512-X+57O5YkDTiEQGiw8i7wYc2nQgweIekqkepI8Q3y4wVlurgBt2SuwxTeYUYMZIGpLZH3r/TsMjczCMXE5ZOt7Q==", "dev": true, "optional": true, "requires": { - "nan": "2.10.0", - "node-pre-gyp": "0.6.39" + "nan": "^2.9.2", + "node-pre-gyp": "^0.9.0" }, "dependencies": { "abbrev": { - "version": "1.1.0", + "version": "1.1.1", "bundled": true, "dev": true, "optional": true }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, "ansi-regex": { "version": "2.1.1", "bundled": true, "dev": true }, "aproba": { - "version": "1.1.1", + "version": "1.2.0", "bundled": true, "dev": true, "optional": true @@ -5366,92 +5294,26 @@ "dev": true, "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, - "asn1": { - "version": "0.2.3", + "balanced-match": { + "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, - "assert-plus": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "brace-expansion": { - "version": "1.1.7", + "brace-expansion": { + "version": "1.1.11", "bundled": true, "dev": true, "requires": { - "balanced-match": "0.4.2", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true - }, - "co": { - "version": "4.6.0", + "chownr": { + "version": "1.0.1", "bundled": true, "dev": true, "optional": true @@ -5461,14 +5323,6 @@ "bundled": true, "dev": true }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, "concat-map": { "version": "0.0.1", "bundled": true, @@ -5482,35 +5336,11 @@ "core-util-is": { "version": "1.0.2", "bundled": true, - "dev": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, "dev": true, - "requires": { - "boom": "2.10.1" - } - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } + "optional": true }, "debug": { - "version": "2.6.8", + "version": "2.6.9", "bundled": true, "dev": true, "optional": true, @@ -5524,11 +5354,6 @@ "dev": true, "optional": true }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, "delegates": { "version": "1.0.0", "bundled": true, @@ -5536,74 +5361,25 @@ "optional": true }, "detect-libc": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "forever-agent": { - "version": "0.6.1", + "version": "1.0.3", "bundled": true, "dev": true, "optional": true }, - "form-data": { - "version": "2.1.4", + "fs-minipass": { + "version": "1.2.5", "bundled": true, "dev": true, "optional": true, "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" + "minipass": "^2.2.1" } }, "fs.realpath": { "version": "1.0.0", "bundled": true, - "dev": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } - }, - "fstream-ignore": { - "version": "1.0.5", - "bundled": true, "dev": true, - "optional": true, - "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" - } + "optional": true }, "gauge": { "version": "2.7.4", @@ -5611,65 +5387,28 @@ "dev": true, "optional": true, "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "glob": { "version": "7.1.2", "bundled": true, "dev": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "dev": true, "optional": true, "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "has-unicode": { @@ -5678,40 +5417,32 @@ "dev": true, "optional": true }, - "hawk": { - "version": "3.1.3", + "iconv-lite": { + "version": "0.4.21", "bundled": true, "dev": true, + "optional": true, "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" + "safer-buffer": "^2.1.0" } }, - "hoek": { - "version": "2.16.3", - "bundled": true, - "dev": true - }, - "http-signature": { - "version": "1.1.1", + "ignore-walk": { + "version": "3.0.1", "bundled": true, "dev": true, "optional": true, "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" + "minimatch": "^3.0.4" } }, "inflight": { "version": "1.0.6", "bundled": true, "dev": true, + "optional": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -5720,7 +5451,7 @@ "dev": true }, "ini": { - "version": "1.3.4", + "version": "1.3.5", "bundled": true, "dev": true, "optional": true @@ -5730,167 +5461,125 @@ "bundled": true, "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, "isarray": { "version": "1.0.0", "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, "dev": true, "optional": true }, - "jodid25519": { - "version": "1.0.2", + "minimatch": { + "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { - "jsbn": "0.1.1" + "brace-expansion": "^1.1.7" } }, - "jsbn": { - "version": "0.1.1", + "minimist": { + "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, - "json-schema": { - "version": "0.2.3", + "minipass": { + "version": "2.2.4", "bundled": true, "dev": true, - "optional": true + "requires": { + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" + } }, - "json-stable-stringify": { - "version": "1.0.1", + "minizlib": { + "version": "1.1.0", "bundled": true, "dev": true, "optional": true, "requires": { - "jsonify": "0.0.0" + "minipass": "^2.2.1" } }, - "json-stringify-safe": { - "version": "5.0.1", + "mkdirp": { + "version": "0.5.1", "bundled": true, "dev": true, - "optional": true + "requires": { + "minimist": "0.0.8" + } }, - "jsonify": { - "version": "0.0.0", + "ms": { + "version": "2.0.0", "bundled": true, "dev": true, "optional": true }, - "jsprim": { - "version": "1.4.0", + "needle": { + "version": "2.2.0", "bundled": true, "dev": true, "optional": true, "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "mime-db": { - "version": "1.27.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.15", - "bundled": true, - "dev": true, - "requires": { - "mime-db": "1.27.0" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" } }, - "minimatch": { - "version": "3.0.4", + "node-pre-gyp": { + "version": "0.9.1", "bundled": true, "dev": true, + "optional": true, "requires": { - "brace-expansion": "1.1.7" + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", + "nopt": { + "version": "4.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { - "minimist": "0.0.8" + "abbrev": "1", + "osenv": "^0.1.4" } }, - "ms": { - "version": "2.0.0", + "npm-bundled": { + "version": "1.0.3", "bundled": true, "dev": true, "optional": true }, - "node-pre-gyp": { - "version": "0.6.39", + "npm-packlist": { + "version": "1.1.10", "bundled": true, "dev": true, "optional": true, "requires": { - "detect-libc": "1.0.2", - "hawk": "3.1.3", - "mkdirp": "0.5.1", - "nopt": "4.0.1", - "npmlog": "4.1.0", - "rc": "1.2.1", - "request": "2.81.0", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "2.2.1", - "tar-pack": "3.4.0" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" } }, "npmlog": { - "version": "4.1.0", + "version": "4.1.2", "bundled": true, "dev": true, "optional": true, "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "number-is-nan": { @@ -5898,12 +5587,6 @@ "bundled": true, "dev": true }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "dev": true, - "optional": true - }, "object-assign": { "version": "4.1.1", "bundled": true, @@ -5915,7 +5598,7 @@ "bundled": true, "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "os-homedir": { @@ -5931,53 +5614,37 @@ "optional": true }, "osenv": { - "version": "0.1.4", + "version": "0.1.5", "bundled": true, "dev": true, "optional": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, "path-is-absolute": { "version": "1.0.1", "bundled": true, - "dev": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true, "dev": true, "optional": true }, "process-nextick-args": { - "version": "1.0.7", - "bundled": true, - "dev": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", + "version": "2.0.0", "bundled": true, "dev": true, "optional": true }, "rc": { - "version": "1.2.1", + "version": "1.2.6", "bundled": true, "dev": true, "optional": true, "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "~0.4.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -5989,240 +5656,136 @@ } }, "readable-stream": { - "version": "2.2.9", - "bundled": true, - "dev": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", + "version": "2.3.6", "bundled": true, "dev": true, "optional": true, "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "rimraf": { - "version": "2.6.1", + "version": "2.6.2", "bundled": true, "dev": true, + "optional": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-buffer": { - "version": "5.0.1", + "version": "5.1.1", "bundled": true, "dev": true }, - "semver": { - "version": "5.3.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", + "safer-buffer": { + "version": "2.1.2", "bundled": true, "dev": true, "optional": true }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "stringstream": { - "version": "0.0.5", + "sax": { + "version": "1.2.4", "bundled": true, "dev": true, "optional": true }, - "strip-ansi": { - "version": "3.0.1", + "semver": { + "version": "5.5.0", "bundled": true, "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } + "optional": true }, - "strip-json-comments": { - "version": "2.0.1", + "set-blocking": { + "version": "2.0.0", "bundled": true, "dev": true, "optional": true }, - "tar": { - "version": "2.2.1", + "signal-exit": { + "version": "3.0.2", "bundled": true, "dev": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } + "optional": true }, - "tar-pack": { - "version": "3.4.0", + "string-width": { + "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, - "tough-cookie": { - "version": "2.3.2", + "string_decoder": { + "version": "1.1.1", "bundled": true, "dev": true, "optional": true, "requires": { - "punycode": "1.4.1" + "safe-buffer": "~5.1.0" } }, - "tunnel-agent": { - "version": "0.6.0", + "strip-ansi": { + "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { - "safe-buffer": "5.0.1" + "ansi-regex": "^2.0.0" } }, - "tweetnacl": { - "version": "0.14.5", + "strip-json-comments": { + "version": "2.0.1", "bundled": true, "dev": true, "optional": true }, - "uid-number": { - "version": "0.0.6", + "tar": { + "version": "4.4.1", "bundled": true, "dev": true, - "optional": true + "optional": true, + "requires": { + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" + } }, "util-deprecate": { "version": "1.0.2", "bundled": true, - "dev": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, "dev": true, "optional": true }, - "verror": { - "version": "1.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "extsprintf": "1.0.2" - } - }, "wide-align": { "version": "1.1.2", "bundled": true, "dev": true, "optional": true, "requires": { - "string-width": "1.0.2" + "string-width": "^1.0.2" } }, "wrappy": { "version": "1.0.2", "bundled": true, "dev": true + }, + "yallist": { + "version": "3.0.2", + "bundled": true, + "dev": true } } }, @@ -6232,10 +5795,10 @@ "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.2.8" + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" } }, "function-bind": { @@ -6256,14 +5819,14 @@ "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "dev": true, "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" }, "dependencies": { "ansi-regex": { @@ -6278,7 +5841,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -6287,9 +5850,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -6298,7 +5861,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -6320,11 +5883,11 @@ "integrity": "sha1-xztInAbYDMVTbCyFP54FIyBWly0=", "dev": true, "requires": { - "hosted-git-info": "2.6.0", - "meow": "3.7.0", - "normalize-package-data": "2.4.0", - "parse-github-repo-url": "1.4.1", - "through2": "2.0.3" + "hosted-git-info": "^2.1.4", + "meow": "^3.3.0", + "normalize-package-data": "^2.3.0", + "parse-github-repo-url": "^1.3.0", + "through2": "^2.0.0" } }, "get-stdin": { @@ -6350,7 +5913,7 @@ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "gh-got": { @@ -6358,8 +5921,8 @@ "resolved": "https://registry.npmjs.org/gh-got/-/gh-got-6.0.0.tgz", "integrity": "sha512-F/mS+fsWQMo1zfgG9MD8KWvTWPPzzhuVwY++fhQ5Ggd+0P+CAMHtzMZhNxG+TqGfHDChJKsbh6otfMGqO2AKBw==", "requires": { - "got": "7.1.0", - "is-plain-obj": "1.1.0" + "got": "^7.0.0", + "is-plain-obj": "^1.1.0" }, "dependencies": { "got": { @@ -6367,20 +5930,20 @@ "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", "requires": { - "decompress-response": "3.3.0", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-plain-obj": "1.1.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "isurl": "1.0.0", - "lowercase-keys": "1.0.1", - "p-cancelable": "0.3.0", - "p-timeout": "1.2.1", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "url-parse-lax": "1.0.0", - "url-to-options": "1.0.1" + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" } }, "p-cancelable": { @@ -6393,7 +5956,7 @@ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", "requires": { - "p-finally": "1.0.0" + "p-finally": "^1.0.0" } }, "prepend-http": { @@ -6406,7 +5969,7 @@ "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", "requires": { - "prepend-http": "1.0.4" + "prepend-http": "^1.0.1" } } } @@ -6417,11 +5980,11 @@ "integrity": "sha512-svsK26tQ8vEKnMshTDatSIQSMDdz8CxIIqKsvPqbtV23Etmw6VNaFAitu8zwZ0VrOne7FztwPyRLxK7/DIUTQg==", "dev": true, "requires": { - "dargs": "4.1.0", - "lodash.template": "4.4.0", - "meow": "4.0.0", - "split2": "2.2.0", - "through2": "2.0.3" + "dargs": "^4.0.1", + "lodash.template": "^4.0.2", + "meow": "^4.0.0", + "split2": "^2.0.0", + "through2": "^2.0.0" }, "dependencies": { "dargs": { @@ -6430,24 +5993,24 @@ "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "meow": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz", - "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", "dev": true, "requires": { - "camelcase-keys": "4.2.0", - "decamelize-keys": "1.1.0", - "loud-rejection": "1.6.0", - "minimist": "1.2.0", - "minimist-options": "3.0.2", - "normalize-package-data": "2.4.0", - "read-pkg-up": "3.0.0", - "redent": "2.0.0", - "trim-newlines": "2.0.0" + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" } }, "minimist": { @@ -6464,8 +6027,8 @@ "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=", "dev": true, "requires": { - "gitconfiglocal": "1.0.0", - "pify": "2.3.0" + "gitconfiglocal": "^1.0.0", + "pify": "^2.3.0" }, "dependencies": { "pify": { @@ -6482,25 +6045,25 @@ "integrity": "sha512-2jHlJnln4D/ECk9FxGEBh3k44wgYdWjWDtMmJPaecjoRmxKo3Y1Lh8GMYuOPu04CHw86NTAODchYjC5pnpMQig==", "dev": true, "requires": { - "meow": "4.0.0", - "semver": "5.5.0" + "meow": "^4.0.0", + "semver": "^5.5.0" }, "dependencies": { "meow": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz", - "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", + "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", "dev": true, "requires": { - "camelcase-keys": "4.2.0", - "decamelize-keys": "1.1.0", - "loud-rejection": "1.6.0", - "minimist": "1.2.0", - "minimist-options": "3.0.2", - "normalize-package-data": "2.4.0", - "read-pkg-up": "3.0.0", - "redent": "2.0.0", - "trim-newlines": "2.0.0" + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" } }, "minimist": { @@ -6517,7 +6080,7 @@ "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=", "dev": true, "requires": { - "ini": "1.3.5" + "ini": "^1.3.2" } }, "github-build": { @@ -6544,7 +6107,7 @@ "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", "dev": true, "requires": { - "debug": "2.6.9" + "debug": "^2.2.0" } } } @@ -6560,7 +6123,7 @@ "resolved": "https://registry.npmjs.org/github-username/-/github-username-4.1.0.tgz", "integrity": "sha1-y+KABBiDIG2kISrp5LXxacML9Bc=", "requires": { - "gh-got": "6.0.0" + "gh-got": "^6.0.0" } }, "glob": { @@ -6568,12 +6131,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-all": { @@ -6581,8 +6144,8 @@ "resolved": "https://registry.npmjs.org/glob-all/-/glob-all-3.1.0.tgz", "integrity": "sha1-iRPd+17hrHgSZWJBsD1SF8ZLAqs=", "requires": { - "glob": "7.1.2", - "yargs": "1.2.6" + "glob": "^7.0.5", + "yargs": "~1.2.6" }, "dependencies": { "yargs": { @@ -6590,7 +6153,7 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-1.2.6.tgz", "integrity": "sha1-nHtKgv1dWVsr8Xq23MQxNUMv40s=", "requires": { - "minimist": "0.1.0" + "minimist": "^0.1.0" } } } @@ -6600,8 +6163,8 @@ "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" } }, "glob-parent": { @@ -6609,7 +6172,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", "requires": { - "is-glob": "2.0.1" + "is-glob": "^2.0.0" } }, "global-dirs": { @@ -6618,7 +6181,7 @@ "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", "dev": true, "requires": { - "ini": "1.3.5" + "ini": "^1.3.4" } }, "global-modules": { @@ -6626,9 +6189,9 @@ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", "requires": { - "global-prefix": "1.0.2", - "is-windows": "1.0.2", - "resolve-dir": "1.0.1" + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" } }, "global-prefix": { @@ -6636,11 +6199,11 @@ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", "requires": { - "expand-tilde": "2.0.2", - "homedir-polyfill": "1.0.1", - "ini": "1.3.5", - "is-windows": "1.0.2", - "which": "1.3.0" + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" } }, "globals": { @@ -6653,11 +6216,11 @@ "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", "requires": { - "array-union": "1.0.2", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "pify": { @@ -6672,23 +6235,23 @@ "resolved": "https://registry.npmjs.org/got/-/got-8.3.0.tgz", "integrity": "sha512-kBNy/S2CGwrYgDSec5KTWGKUvupwkkTVAjIsVFF2shXO13xpZdFP4d4kxa//CLX2tN/rV0aYwK8vY6UKWGn2vQ==", "requires": { - "@sindresorhus/is": "0.7.0", - "cacheable-request": "2.1.4", - "decompress-response": "3.3.0", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "into-stream": "3.1.0", - "is-retry-allowed": "1.1.0", - "isurl": "1.0.0", - "lowercase-keys": "1.0.1", - "mimic-response": "1.0.0", - "p-cancelable": "0.4.1", - "p-timeout": "2.0.1", - "pify": "3.0.0", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "url-parse-lax": "3.0.0", - "url-to-options": "1.0.1" + "@sindresorhus/is": "^0.7.0", + "cacheable-request": "^2.1.1", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "into-stream": "^3.1.0", + "is-retry-allowed": "^1.1.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "mimic-response": "^1.0.0", + "p-cancelable": "^0.4.0", + "p-timeout": "^2.0.1", + "pify": "^3.0.0", + "safe-buffer": "^5.1.1", + "timed-out": "^4.0.1", + "url-parse-lax": "^3.0.0", + "url-to-options": "^1.0.1" } }, "graceful-fs": { @@ -6701,7 +6264,7 @@ "resolved": "https://registry.npmjs.org/grouped-queue/-/grouped-queue-0.3.3.tgz", "integrity": "sha1-wWfSpTGcWg4JZO9qJbfC34mWyFw=", "requires": { - "lodash": "4.17.5" + "lodash": "^4.17.2" } }, "growly": { @@ -6716,8 +6279,8 @@ "integrity": "sha1-iuCWJX6r59acRb4rZ8RIEk/7UXw=", "dev": true, "requires": { - "duplexer": "0.1.1", - "pify": "3.0.0" + "duplexer": "^0.1.1", + "pify": "^3.0.0" } }, "handle-thing": { @@ -6732,10 +6295,10 @@ "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", "dev": true, "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" }, "dependencies": { "source-map": { @@ -6744,7 +6307,7 @@ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -6761,8 +6324,8 @@ "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "dev": true, "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" + "ajv": "^5.1.0", + "har-schema": "^2.0.0" } }, "has": { @@ -6771,7 +6334,7 @@ "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", "dev": true, "requires": { - "function-bind": "1.1.1" + "function-bind": "^1.0.2" } }, "has-ansi": { @@ -6779,7 +6342,7 @@ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -6804,12 +6367,18 @@ "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, "has-to-string-tag-x": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", "requires": { - "has-symbol-support-x": "1.4.2" + "has-symbol-support-x": "^1.4.1" } }, "has-unicode": { @@ -6824,9 +6393,9 @@ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" }, "dependencies": { "isobject": { @@ -6843,8 +6412,8 @@ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { @@ -6853,7 +6422,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -6862,7 +6431,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -6873,7 +6442,7 @@ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -6884,8 +6453,8 @@ "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "hash.js": { @@ -6894,8 +6463,8 @@ "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", "dev": true, "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" } }, "hawk": { @@ -6904,10 +6473,10 @@ "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", "dev": true, "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.1", - "sntp": "2.1.0" + "boom": "4.x.x", + "cryptiles": "3.x.x", + "hoek": "4.x.x", + "sntp": "2.x.x" } }, "hmac-drbg": { @@ -6916,9 +6485,9 @@ "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "dev": true, "requires": { - "hash.js": "1.1.3", - "minimalistic-assert": "1.0.1", - "minimalistic-crypto-utils": "1.0.1" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, "hoek": { @@ -6932,8 +6501,8 @@ "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" } }, "homedir-polyfill": { @@ -6941,7 +6510,7 @@ "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", "requires": { - "parse-passwd": "1.0.0" + "parse-passwd": "^1.0.0" } }, "hosted-git-info": { @@ -6955,10 +6524,10 @@ "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", "dev": true, "requires": { - "inherits": "2.0.3", - "obuf": "1.1.2", - "readable-stream": "2.3.6", - "wbuf": "1.7.3" + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" } }, "html-encoding-sniffer": { @@ -6967,7 +6536,7 @@ "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", "dev": true, "requires": { - "whatwg-encoding": "1.0.3" + "whatwg-encoding": "^1.0.1" } }, "html-entities": { @@ -6993,26 +6562,27 @@ "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", "dev": true, "requires": { - "depd": "1.1.2", + "depd": "~1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.0", - "statuses": "1.4.0" + "statuses": ">= 1.4.0 < 2" } }, "http-parser-js": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.11.tgz", - "integrity": "sha512-QCR5O2AjjMW8Mo4HyI1ctFcv+O99j/0g367V3YoVnrNw5hkDvAWZD0lWGcc+F4yN3V55USPCVix4efb75HxFfA==", + "version": "0.4.12", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.12.tgz", + "integrity": "sha1-uc+/Sizybw/DSxDKFImid3HjR08=", "dev": true }, "http-proxy": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz", - "integrity": "sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I=", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", + "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", "dev": true, "requires": { - "eventemitter3": "1.2.0", - "requires-port": "1.0.0" + "eventemitter3": "^3.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" } }, "http-proxy-middleware": { @@ -7021,10 +6591,10 @@ "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==", "dev": true, "requires": { - "http-proxy": "1.16.2", - "is-glob": "4.0.0", - "lodash": "4.17.5", - "micromatch": "3.1.10" + "http-proxy": "^1.16.2", + "is-glob": "^4.0.0", + "lodash": "^4.17.5", + "micromatch": "^3.1.9" }, "dependencies": { "arr-diff": { @@ -7045,16 +6615,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -7063,7 +6633,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -7074,13 +6644,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -7089,7 +6659,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -7098,7 +6668,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -7107,7 +6677,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -7116,7 +6686,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -7127,7 +6697,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -7136,7 +6706,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -7147,9 +6717,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -7166,14 +6736,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -7182,7 +6752,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -7191,7 +6761,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -7202,10 +6772,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -7214,7 +6784,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -7225,7 +6795,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -7234,7 +6804,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -7243,9 +6813,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-extglob": { @@ -7260,7 +6830,7 @@ "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.1" } }, "is-number": { @@ -7269,7 +6839,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -7278,7 +6848,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -7301,19 +6871,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } @@ -7324,9 +6894,9 @@ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "dev": true, "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.14.1" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, "https-browserify": { @@ -7341,9 +6911,9 @@ "integrity": "sha512-e21wivqHpstpoiWA/Yi8eFti8E+sQDSS53cpJsPptPs295QTOQR0ZwnHo2TXy1XOpZFD9rPOd3NpmqTK6uMLJA==", "dev": true, "requires": { - "is-ci": "1.1.0", - "normalize-path": "1.0.0", - "strip-indent": "2.0.0" + "is-ci": "^1.0.10", + "normalize-path": "^1.0.0", + "strip-indent": "^2.0.0" }, "dependencies": { "normalize-path": { @@ -7359,7 +6929,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.21.tgz", "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==", "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": "^2.1.0" } }, "ieee754": { @@ -7375,9 +6945,9 @@ "dev": true }, "ignore": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", - "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", + "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==", "dev": true }, "iltorb": { @@ -7386,10 +6956,10 @@ "integrity": "sha512-nyB4+ru1u8CQqQ6w7YjasboKN3NQTN8GH/V/eEssNRKhW6UbdxdWhB9fJ5EEdjJfezKY0qPrcwLyIcgjL8hHxA==", "dev": true, "requires": { - "detect-libc": "0.2.0", - "nan": "2.10.0", - "node-gyp": "3.6.2", - "prebuild-install": "2.5.1" + "detect-libc": "^0.2.0", + "nan": "^2.6.2", + "node-gyp": "^3.6.2", + "prebuild-install": "^2.3.0" } }, "import-local": { @@ -7397,8 +6967,8 @@ "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", "requires": { - "pkg-dir": "2.0.0", - "resolve-cwd": "2.0.0" + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" } }, "imurmurhash": { @@ -7417,7 +6987,7 @@ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "indexof": { @@ -7431,8 +7001,8 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -7450,19 +7020,19 @@ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.3.2", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.1.0", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rxjs": "5.5.10", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rxjs": "^5.5.2", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" } }, "internal-ip": { @@ -7471,7 +7041,7 @@ "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", "dev": true, "requires": { - "meow": "3.7.0" + "meow": "^3.3.0" } }, "interpret": { @@ -7484,8 +7054,8 @@ "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", "requires": { - "from2": "2.3.0", - "p-is-promise": "1.1.0" + "from2": "^2.1.1", + "p-is-promise": "^1.1.0" } }, "invariant": { @@ -7493,7 +7063,7 @@ "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "requires": { - "loose-envify": "1.3.1" + "loose-envify": "^1.0.0" } }, "invert-kv": { @@ -7519,7 +7089,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-arrayish": { @@ -7533,7 +7103,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "1.11.0" + "binary-extensions": "^1.0.0" } }, "is-buffer": { @@ -7546,7 +7116,7 @@ "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, "is-callable": { @@ -7561,7 +7131,7 @@ "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", "dev": true, "requires": { - "ci-info": "1.1.3" + "ci-info": "^1.0.0" } }, "is-data-descriptor": { @@ -7570,7 +7140,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-date-object": { @@ -7585,9 +7155,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { @@ -7614,7 +7184,7 @@ "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", "requires": { - "is-primitive": "2.0.0" + "is-primitive": "^2.0.0" } }, "is-extendable": { @@ -7632,7 +7202,7 @@ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { @@ -7651,7 +7221,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } }, "is-number": { @@ -7659,7 +7229,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-obj": { @@ -7678,7 +7248,7 @@ "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", "requires": { - "symbol-observable": "0.2.4" + "symbol-observable": "^0.2.2" }, "dependencies": { "symbol-observable": { @@ -7694,7 +7264,7 @@ "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", "dev": true, "requires": { - "is-number": "4.0.0" + "is-number": "^4.0.0" }, "dependencies": { "is-number": { @@ -7717,7 +7287,7 @@ "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", "dev": true, "requires": { - "is-path-inside": "1.0.1" + "is-path-inside": "^1.0.0" } }, "is-path-inside": { @@ -7726,7 +7296,7 @@ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "path-is-inside": "1.0.2" + "path-is-inside": "^1.0.1" } }, "is-plain-obj": { @@ -7740,7 +7310,7 @@ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { @@ -7772,7 +7342,7 @@ "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", "dev": true, "requires": { - "has": "1.0.1" + "has": "^1.0.1" } }, "is-regexp": { @@ -7797,7 +7367,7 @@ "resolved": "https://registry.npmjs.org/is-scoped/-/is-scoped-1.0.0.tgz", "integrity": "sha1-RJypgpnnEwOCViieyytUDcQ3yzA=", "requires": { - "scoped-regex": "1.0.0" + "scoped-regex": "^1.0.0" } }, "is-stream": { @@ -7823,7 +7393,7 @@ "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", "dev": true, "requires": { - "text-extensions": "1.7.0" + "text-extensions": "^1.0.0" } }, "is-typedarray": { @@ -7878,18 +7448,18 @@ "integrity": "sha512-duj6AlLcsWNwUpfyfHt0nWIeRiZpuShnP40YTxOGQgtaN8fd6JYSxsvxUphTDy8V5MfDXo4s/xVCIIvVCO808g==", "dev": true, "requires": { - "async": "2.6.0", - "compare-versions": "3.1.0", - "fileset": "2.0.3", - "istanbul-lib-coverage": "1.2.0", - "istanbul-lib-hook": "1.2.0", - "istanbul-lib-instrument": "1.10.1", - "istanbul-lib-report": "1.1.4", - "istanbul-lib-source-maps": "1.2.4", - "istanbul-reports": "1.3.0", - "js-yaml": "3.11.0", - "mkdirp": "0.5.1", - "once": "1.4.0" + "async": "^2.1.4", + "compare-versions": "^3.1.0", + "fileset": "^2.0.2", + "istanbul-lib-coverage": "^1.2.0", + "istanbul-lib-hook": "^1.2.0", + "istanbul-lib-instrument": "^1.10.1", + "istanbul-lib-report": "^1.1.4", + "istanbul-lib-source-maps": "^1.2.4", + "istanbul-reports": "^1.3.0", + "js-yaml": "^3.7.0", + "mkdirp": "^0.5.1", + "once": "^1.4.0" }, "dependencies": { "async": { @@ -7898,7 +7468,7 @@ "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.14.0" } }, "debug": { @@ -7916,11 +7486,11 @@ "integrity": "sha512-UzuK0g1wyQijiaYQxj/CdNycFhAd2TLtO2obKQMTZrZ1jzEMRY3rvpASEKkaxbRR6brvdovfA03znPa/pXcejg==", "dev": true, "requires": { - "debug": "3.1.0", - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "source-map": "0.5.7" + "debug": "^3.1.0", + "istanbul-lib-coverage": "^1.2.0", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.1", + "source-map": "^0.5.3" } }, "rimraf": { @@ -7929,7 +7499,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } } @@ -7946,7 +7516,7 @@ "integrity": "sha512-p3En6/oGkFQV55Up8ZPC2oLxvgSxD8CzA0yBrhRZSh3pfv3OFj9aSGVC0yoerAi/O4u7jUVnOGVX1eVFM+0tmQ==", "dev": true, "requires": { - "append-transform": "0.4.0" + "append-transform": "^0.4.0" } }, "istanbul-lib-instrument": { @@ -7955,13 +7525,13 @@ "integrity": "sha512-1dYuzkOCbuR5GRJqySuZdsmsNKPL3PTuyPevQfoCXJePT9C8y1ga75neU+Tuy9+yS3G/dgx8wgOmp2KLpgdoeQ==", "dev": true, "requires": { - "babel-generator": "6.26.1", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "istanbul-lib-coverage": "1.2.0", - "semver": "5.5.0" + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.0", + "semver": "^5.3.0" }, "dependencies": { "babylon": { @@ -7978,10 +7548,10 @@ "integrity": "sha512-Azqvq5tT0U09nrncK3q82e/Zjkxa4tkFZv7E6VcqP0QCPn6oNljDPfrZEC/umNXds2t7b8sRJfs6Kmpzt8m2kA==", "dev": true, "requires": { - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "path-parse": "1.0.5", - "supports-color": "3.2.3" + "istanbul-lib-coverage": "^1.2.0", + "mkdirp": "^0.5.1", + "path-parse": "^1.0.5", + "supports-color": "^3.1.2" }, "dependencies": { "has-flag": { @@ -7996,7 +7566,7 @@ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", "dev": true, "requires": { - "has-flag": "1.0.0" + "has-flag": "^1.0.0" } } } @@ -8007,11 +7577,11 @@ "integrity": "sha512-fDa0hwU/5sDXwAklXgAoCJCOsFsBplVQ6WBldz5UwaqOzmDhUK4nfuR7/G//G2lERlblUNJB8P6e8cXq3a7MlA==", "dev": true, "requires": { - "debug": "3.1.0", - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "source-map": "0.5.7" + "debug": "^3.1.0", + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.1", + "source-map": "^0.5.3" }, "dependencies": { "debug": { @@ -8029,7 +7599,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } } @@ -8040,7 +7610,7 @@ "integrity": "sha512-y2Z2IMqE1gefWUaVjrBm0mSKvUkaBy9Vqz8iwr/r40Y9hBbIteH5wqHG/9DLTfJ9xUnUT2j7A3+VVJ6EaYBllA==", "dev": true, "requires": { - "handlebars": "4.0.11" + "handlebars": "^4.0.3" } }, "istextorbinary": { @@ -8048,9 +7618,9 @@ "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.2.1.tgz", "integrity": "sha512-TS+hoFl8Z5FAFMK38nhBkdLt44CclNRgDHWeMgsV8ko3nDlr/9UI2Sf839sW7enijf8oKsZYXRvM8g0it9Zmcw==", "requires": { - "binaryextensions": "2.1.1", - "editions": "1.3.4", - "textextensions": "2.2.0" + "binaryextensions": "2", + "editions": "^1.3.3", + "textextensions": "2" } }, "isurl": { @@ -8058,8 +7628,8 @@ "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", "requires": { - "has-to-string-tag-x": "1.4.1", - "is-object": "1.0.1" + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" } }, "jest": { @@ -8068,8 +7638,8 @@ "integrity": "sha512-FFCdU/pXOEASfHxFDOWUysI/+FFoqiXJADEIXgDKuZyqSmBD3tZ4BEGH7+M79v7czj7bbkhwtd2LaEDcJiM/GQ==", "dev": true, "requires": { - "import-local": "1.0.0", - "jest-cli": "22.4.3" + "import-local": "^1.0.0", + "jest-cli": "^22.4.3" } }, "jest-changed-files": { @@ -8078,7 +7648,7 @@ "integrity": "sha512-83Dh0w1aSkUNFhy5d2dvqWxi/y6weDwVVLU6vmK0cV9VpRxPzhTeGimbsbRDSnEoszhF937M4sDLLeS7Cu/Tmw==", "dev": true, "requires": { - "throat": "4.1.0" + "throat": "^4.0.0" } }, "jest-cli": { @@ -8087,40 +7657,40 @@ "integrity": "sha512-IiHybF0DJNqZPsbjn4Cy4vcqcmImpoFwNFnkehzVw8lTUSl4axZh5DHewu5bdpZF2Y5gUqFKYzH0FH4Qx2k+UA==", "dev": true, "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.3.2", - "exit": "0.1.2", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "import-local": "1.0.0", - "is-ci": "1.1.0", - "istanbul-api": "1.3.1", - "istanbul-lib-coverage": "1.2.0", - "istanbul-lib-instrument": "1.10.1", - "istanbul-lib-source-maps": "1.2.3", - "jest-changed-files": "22.4.3", - "jest-config": "22.4.3", - "jest-environment-jsdom": "22.4.3", - "jest-get-type": "22.4.3", - "jest-haste-map": "22.4.3", - "jest-message-util": "22.4.3", - "jest-regex-util": "22.4.3", - "jest-resolve-dependencies": "22.4.3", - "jest-runner": "22.4.3", - "jest-runtime": "22.4.3", - "jest-snapshot": "22.4.3", - "jest-util": "22.4.3", - "jest-validate": "22.4.3", - "jest-worker": "22.4.3", - "micromatch": "2.3.11", - "node-notifier": "5.2.1", - "realpath-native": "1.0.0", - "rimraf": "2.6.2", - "slash": "1.0.0", - "string-length": "2.0.0", - "strip-ansi": "4.0.0", - "which": "1.3.0", - "yargs": "10.1.2" + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "import-local": "^1.0.0", + "is-ci": "^1.0.10", + "istanbul-api": "^1.1.14", + "istanbul-lib-coverage": "^1.1.1", + "istanbul-lib-instrument": "^1.8.0", + "istanbul-lib-source-maps": "^1.2.1", + "jest-changed-files": "^22.4.3", + "jest-config": "^22.4.3", + "jest-environment-jsdom": "^22.4.3", + "jest-get-type": "^22.4.3", + "jest-haste-map": "^22.4.3", + "jest-message-util": "^22.4.3", + "jest-regex-util": "^22.4.3", + "jest-resolve-dependencies": "^22.4.3", + "jest-runner": "^22.4.3", + "jest-runtime": "^22.4.3", + "jest-snapshot": "^22.4.3", + "jest-util": "^22.4.3", + "jest-validate": "^22.4.3", + "jest-worker": "^22.4.3", + "micromatch": "^2.3.11", + "node-notifier": "^5.2.1", + "realpath-native": "^1.0.0", + "rimraf": "^2.5.4", + "slash": "^1.0.0", + "string-length": "^2.0.0", + "strip-ansi": "^4.0.0", + "which": "^1.2.12", + "yargs": "^10.0.3" }, "dependencies": { "rimraf": { @@ -8129,7 +7699,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "yargs": { @@ -8138,18 +7708,18 @@ "integrity": "sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig==", "dev": true, "requires": { - "cliui": "4.0.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "8.1.0" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^8.1.0" } }, "yargs-parser": { @@ -8158,7 +7728,7 @@ "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } @@ -8169,17 +7739,17 @@ "integrity": "sha512-KSg3EOToCgkX+lIvenKY7J8s426h6ahXxaUFJxvGoEk0562Z6inWj1TnKoGycTASwiLD+6kSYFALcjdosq9KIQ==", "dev": true, "requires": { - "chalk": "2.3.2", - "glob": "7.1.2", - "jest-environment-jsdom": "22.4.3", - "jest-environment-node": "22.4.3", - "jest-get-type": "22.4.3", - "jest-jasmine2": "22.4.3", - "jest-regex-util": "22.4.3", - "jest-resolve": "22.4.3", - "jest-util": "22.4.3", - "jest-validate": "22.4.3", - "pretty-format": "22.4.3" + "chalk": "^2.0.1", + "glob": "^7.1.1", + "jest-environment-jsdom": "^22.4.3", + "jest-environment-node": "^22.4.3", + "jest-get-type": "^22.4.3", + "jest-jasmine2": "^22.4.3", + "jest-regex-util": "^22.4.3", + "jest-resolve": "^22.4.3", + "jest-util": "^22.4.3", + "jest-validate": "^22.4.3", + "pretty-format": "^22.4.3" } }, "jest-diff": { @@ -8188,10 +7758,10 @@ "integrity": "sha512-/QqGvCDP5oZOF6PebDuLwrB2BMD8ffJv6TAGAdEVuDx1+uEgrHpSFrfrOiMRx2eJ1hgNjlQrOQEHetVwij90KA==", "dev": true, "requires": { - "chalk": "2.3.2", - "diff": "3.5.0", - "jest-get-type": "22.4.3", - "pretty-format": "22.4.3" + "chalk": "^2.0.1", + "diff": "^3.2.0", + "jest-get-type": "^22.4.3", + "pretty-format": "^22.4.3" } }, "jest-docblock": { @@ -8200,7 +7770,7 @@ "integrity": "sha512-uPKBEAw7YrEMcXueMKZXn/rbMxBiSv48fSqy3uEnmgOlQhSX+lthBqHb1fKWNVmFqAp9E/RsSdBfiV31LbzaOg==", "dev": true, "requires": { - "detect-newline": "2.1.0" + "detect-newline": "^2.1.0" } }, "jest-environment-jsdom": { @@ -8209,9 +7779,9 @@ "integrity": "sha512-FviwfR+VyT3Datf13+ULjIMO5CSeajlayhhYQwpzgunswoaLIPutdbrnfUHEMyJCwvqQFaVtTmn9+Y8WCt6n1w==", "dev": true, "requires": { - "jest-mock": "22.4.3", - "jest-util": "22.4.3", - "jsdom": "11.7.0" + "jest-mock": "^22.4.3", + "jest-util": "^22.4.3", + "jsdom": "^11.5.1" } }, "jest-environment-node": { @@ -8220,8 +7790,8 @@ "integrity": "sha512-reZl8XF6t/lMEuPWwo9OLfttyC26A5AMgDyEQ6DBgZuyfyeNUzYT8BFo6uxCCP/Av/b7eb9fTi3sIHFPBzmlRA==", "dev": true, "requires": { - "jest-mock": "22.4.3", - "jest-util": "22.4.3" + "jest-mock": "^22.4.3", + "jest-util": "^22.4.3" } }, "jest-get-type": { @@ -8236,13 +7806,13 @@ "integrity": "sha512-4Q9fjzuPVwnaqGKDpIsCSoTSnG3cteyk2oNVjBX12HHOaF1oxql+uUiqZb5Ndu7g/vTZfdNwwy4WwYogLh29DQ==", "dev": true, "requires": { - "fb-watchman": "2.0.0", - "graceful-fs": "4.1.11", - "jest-docblock": "22.4.3", - "jest-serializer": "22.4.3", - "jest-worker": "22.4.3", - "micromatch": "2.3.11", - "sane": "2.5.0" + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.1.11", + "jest-docblock": "^22.4.3", + "jest-serializer": "^22.4.3", + "jest-worker": "^22.4.3", + "micromatch": "^2.3.11", + "sane": "^2.0.0" } }, "jest-jasmine2": { @@ -8251,17 +7821,17 @@ "integrity": "sha512-yZCPCJUcEY6R5KJB/VReo1AYI2b+5Ky+C+JA1v34jndJsRcLpU4IZX4rFJn7yDTtdNbO/nNqg+3SDIPNH2ecnw==", "dev": true, "requires": { - "chalk": "2.3.2", - "co": "4.6.0", - "expect": "22.4.3", - "graceful-fs": "4.1.11", - "is-generator-fn": "1.0.0", - "jest-diff": "22.4.3", - "jest-matcher-utils": "22.4.3", - "jest-message-util": "22.4.3", - "jest-snapshot": "22.4.3", - "jest-util": "22.4.3", - "source-map-support": "0.5.4" + "chalk": "^2.0.1", + "co": "^4.6.0", + "expect": "^22.4.3", + "graceful-fs": "^4.1.11", + "is-generator-fn": "^1.0.0", + "jest-diff": "^22.4.3", + "jest-matcher-utils": "^22.4.3", + "jest-message-util": "^22.4.3", + "jest-snapshot": "^22.4.3", + "jest-util": "^22.4.3", + "source-map-support": "^0.5.0" }, "dependencies": { "source-map": { @@ -8271,12 +7841,13 @@ "dev": true }, "source-map-support": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.4.tgz", - "integrity": "sha512-PETSPG6BjY1AHs2t64vS2aqAgu6dMIMXJULWFBGbh2Gr8nVLbCFDo6i/RMMvviIQ2h1Z8+5gQhVKSn2je9nmdg==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.5.tgz", + "integrity": "sha512-mR7/Nd5l1z6g99010shcXJiNEaf3fEtmLhRB/sBcQVJGodcHCULPp2y4Sfa43Kv2zq7T+Izmfp/WHCR6dYkQCA==", "dev": true, "requires": { - "source-map": "0.6.1" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } } } @@ -8287,7 +7858,7 @@ "integrity": "sha512-NZpR/Ls7+ndO57LuXROdgCGz2RmUdC541tTImL9bdUtU3WadgFGm0yV+Ok4Fuia/1rLAn5KaJ+i76L6e3zGJYQ==", "dev": true, "requires": { - "pretty-format": "22.4.3" + "pretty-format": "^22.4.3" } }, "jest-matcher-utils": { @@ -8296,9 +7867,9 @@ "integrity": "sha512-lsEHVaTnKzdAPR5t4B6OcxXo9Vy4K+kRRbG5gtddY8lBEC+Mlpvm1CJcsMESRjzUhzkz568exMV1hTB76nAKbA==", "dev": true, "requires": { - "chalk": "2.3.2", - "jest-get-type": "22.4.3", - "pretty-format": "22.4.3" + "chalk": "^2.0.1", + "jest-get-type": "^22.4.3", + "pretty-format": "^22.4.3" } }, "jest-message-util": { @@ -8307,11 +7878,11 @@ "integrity": "sha512-iAMeKxhB3Se5xkSjU0NndLLCHtP4n+GtCqV0bISKA5dmOXQfEbdEmYiu2qpnWBDCQdEafNDDU6Q+l6oBMd/+BA==", "dev": true, "requires": { - "@babel/code-frame": "7.0.0-beta.44", - "chalk": "2.3.2", - "micromatch": "2.3.11", - "slash": "1.0.0", - "stack-utils": "1.0.1" + "@babel/code-frame": "^7.0.0-beta.35", + "chalk": "^2.0.1", + "micromatch": "^2.3.11", + "slash": "^1.0.0", + "stack-utils": "^1.0.1" } }, "jest-mock": { @@ -8332,8 +7903,8 @@ "integrity": "sha512-u3BkD/MQBmwrOJDzDIaxpyqTxYH+XqAXzVJP51gt29H8jpj3QgKof5GGO2uPGKGeA1yTMlpbMs1gIQ6U4vcRhw==", "dev": true, "requires": { - "browser-resolve": "1.11.2", - "chalk": "2.3.2" + "browser-resolve": "^1.11.2", + "chalk": "^2.0.1" } }, "jest-resolve-dependencies": { @@ -8342,7 +7913,7 @@ "integrity": "sha512-06czCMVToSN8F2U4EvgSB1Bv/56gc7MpCftZ9z9fBgUQM7dzHGCMBsyfVA6dZTx8v0FDcnALf7hupeQxaBCvpA==", "dev": true, "requires": { - "jest-regex-util": "22.4.3" + "jest-regex-util": "^22.4.3" } }, "jest-runner": { @@ -8351,17 +7922,17 @@ "integrity": "sha512-U7PLlQPRlWNbvOHWOrrVay9sqhBJmiKeAdKIkvX4n1G2tsvzLlf77nBD28GL1N6tGv4RmuTfI8R8JrkvCa+IBg==", "dev": true, "requires": { - "exit": "0.1.2", - "jest-config": "22.4.3", - "jest-docblock": "22.4.3", - "jest-haste-map": "22.4.3", - "jest-jasmine2": "22.4.3", - "jest-leak-detector": "22.4.3", - "jest-message-util": "22.4.3", - "jest-runtime": "22.4.3", - "jest-util": "22.4.3", - "jest-worker": "22.4.3", - "throat": "4.1.0" + "exit": "^0.1.2", + "jest-config": "^22.4.3", + "jest-docblock": "^22.4.3", + "jest-haste-map": "^22.4.3", + "jest-jasmine2": "^22.4.3", + "jest-leak-detector": "^22.4.3", + "jest-message-util": "^22.4.3", + "jest-runtime": "^22.4.3", + "jest-util": "^22.4.3", + "jest-worker": "^22.4.3", + "throat": "^4.0.0" } }, "jest-runtime": { @@ -8370,26 +7941,26 @@ "integrity": "sha512-Eat/esQjevhx9BgJEC8udye+FfoJ2qvxAZfOAWshYGS22HydHn5BgsvPdTtt9cp0fSl5LxYOFA1Pja9Iz2Zt8g==", "dev": true, "requires": { - "babel-core": "6.26.0", - "babel-jest": "22.4.3", - "babel-plugin-istanbul": "4.1.6", - "chalk": "2.3.2", - "convert-source-map": "1.5.1", - "exit": "0.1.2", - "graceful-fs": "4.1.11", - "jest-config": "22.4.3", - "jest-haste-map": "22.4.3", - "jest-regex-util": "22.4.3", - "jest-resolve": "22.4.3", - "jest-util": "22.4.3", - "jest-validate": "22.4.3", - "json-stable-stringify": "1.0.1", - "micromatch": "2.3.11", - "realpath-native": "1.0.0", - "slash": "1.0.0", + "babel-core": "^6.0.0", + "babel-jest": "^22.4.3", + "babel-plugin-istanbul": "^4.1.5", + "chalk": "^2.0.1", + "convert-source-map": "^1.4.0", + "exit": "^0.1.2", + "graceful-fs": "^4.1.11", + "jest-config": "^22.4.3", + "jest-haste-map": "^22.4.3", + "jest-regex-util": "^22.4.3", + "jest-resolve": "^22.4.3", + "jest-util": "^22.4.3", + "jest-validate": "^22.4.3", + "json-stable-stringify": "^1.0.1", + "micromatch": "^2.3.11", + "realpath-native": "^1.0.0", + "slash": "^1.0.0", "strip-bom": "3.0.0", - "write-file-atomic": "2.3.0", - "yargs": "10.1.2" + "write-file-atomic": "^2.1.0", + "yargs": "^10.0.3" }, "dependencies": { "strip-bom": { @@ -8404,9 +7975,9 @@ "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "signal-exit": "3.0.2" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" } }, "yargs": { @@ -8415,18 +7986,18 @@ "integrity": "sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig==", "dev": true, "requires": { - "cliui": "4.0.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "8.1.0" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^8.1.0" } }, "yargs-parser": { @@ -8435,7 +8006,7 @@ "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } @@ -8452,12 +8023,12 @@ "integrity": "sha512-JXA0gVs5YL0HtLDCGa9YxcmmV2LZbwJ+0MfyXBBc5qpgkEYITQFJP7XNhcHFbUvRiniRpRbGVfJrOoYhhGE0RQ==", "dev": true, "requires": { - "chalk": "2.3.2", - "jest-diff": "22.4.3", - "jest-matcher-utils": "22.4.3", - "mkdirp": "0.5.1", - "natural-compare": "1.4.0", - "pretty-format": "22.4.3" + "chalk": "^2.0.1", + "jest-diff": "^22.4.3", + "jest-matcher-utils": "^22.4.3", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^22.4.3" } }, "jest-util": { @@ -8466,13 +8037,13 @@ "integrity": "sha512-rfDfG8wyC5pDPNdcnAlZgwKnzHvZDu8Td2NJI/jAGKEGxJPYiE4F0ss/gSAkG4778Y23Hvbz+0GMrDJTeo7RjQ==", "dev": true, "requires": { - "callsites": "2.0.0", - "chalk": "2.3.2", - "graceful-fs": "4.1.11", - "is-ci": "1.1.0", - "jest-message-util": "22.4.3", - "mkdirp": "0.5.1", - "source-map": "0.6.1" + "callsites": "^2.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.11", + "is-ci": "^1.0.10", + "jest-message-util": "^22.4.3", + "mkdirp": "^0.5.1", + "source-map": "^0.6.0" }, "dependencies": { "callsites": { @@ -8495,11 +8066,11 @@ "integrity": "sha512-CfFM18W3GSP/xgmA4UouIx0ljdtfD2mjeBC6c89Gg17E44D4tQhAcTrZmf9djvipwU30kSTnk6CzcxdCCeSXfA==", "dev": true, "requires": { - "chalk": "2.3.2", - "jest-config": "22.4.3", - "jest-get-type": "22.4.3", - "leven": "2.1.0", - "pretty-format": "22.4.3" + "chalk": "^2.0.1", + "jest-config": "^22.4.3", + "jest-get-type": "^22.4.3", + "leven": "^2.1.0", + "pretty-format": "^22.4.3" } }, "jest-worker": { @@ -8508,7 +8079,7 @@ "integrity": "sha512-B1ucW4fI8qVAuZmicFxI1R3kr2fNeYJyvIQ1rKcuLYnenFV5K5aMbxFj6J0i00Ju83S8jP2d7Dz14+AvbIHRYQ==", "dev": true, "requires": { - "merge-stream": "1.0.1" + "merge-stream": "^1.0.1" } }, "js-tokens": { @@ -8522,8 +8093,8 @@ "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", "dev": true, "requires": { - "argparse": "1.0.10", - "esprima": "4.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, "js2xmlparser": { @@ -8532,7 +8103,7 @@ "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", "dev": true, "requires": { - "xmlcreate": "1.0.2" + "xmlcreate": "^1.0.1" } }, "jsbn": { @@ -8547,21 +8118,21 @@ "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.5.0.tgz", "integrity": "sha512-JAcQINNMFpdzzpKJN8k5xXjF3XDuckB1/48uScSzcnNyK199iWEc9AxKL9OoX5144M2w5zEx9Qs4/E/eBZZUlw==", "requires": { - "babel-plugin-transform-flow-strip-types": "6.22.0", - "babel-preset-es2015": "6.24.1", - "babel-preset-stage-1": "6.24.1", - "babel-register": "6.26.0", - "babylon": "7.0.0-beta.44", - "colors": "1.2.1", - "flow-parser": "0.69.0", - "lodash": "4.17.5", - "micromatch": "2.3.11", - "neo-async": "2.5.1", + "babel-plugin-transform-flow-strip-types": "^6.8.0", + "babel-preset-es2015": "^6.9.0", + "babel-preset-stage-1": "^6.5.0", + "babel-register": "^6.9.0", + "babylon": "^7.0.0-beta.30", + "colors": "^1.1.2", + "flow-parser": "^0.*", + "lodash": "^4.13.1", + "micromatch": "^2.3.7", + "neo-async": "^2.5.0", "node-dir": "0.1.8", - "nomnom": "1.8.1", - "recast": "0.14.7", - "temp": "0.8.3", - "write-file-atomic": "1.3.4" + "nomnom": "^1.8.1", + "recast": "^0.14.1", + "temp": "^0.8.1", + "write-file-atomic": "^1.2.0" } }, "jsdoc": { @@ -8571,17 +8142,17 @@ "dev": true, "requires": { "babylon": "7.0.0-beta.19", - "bluebird": "3.5.1", - "catharsis": "0.8.9", - "escape-string-regexp": "1.0.5", - "js2xmlparser": "3.0.0", - "klaw": "2.0.0", - "marked": "0.3.19", - "mkdirp": "0.5.1", - "requizzle": "0.2.1", - "strip-json-comments": "2.0.1", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", "taffydb": "2.6.2", - "underscore": "1.8.3" + "underscore": "~1.8.3" }, "dependencies": { "babylon": { @@ -8596,7 +8167,7 @@ "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", "dev": true, "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.9" } }, "underscore": { @@ -8608,37 +8179,37 @@ } }, "jsdom": { - "version": "11.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.7.0.tgz", - "integrity": "sha512-9NzSc4Iz4gN9p4uoPbBUzro21QdgL32swaWIaWS8eEVQ2I69fRJAy/MKyvlEIk0V7HtKgfMbbOKyTZUrzR2Hsw==", - "dev": true, - "requires": { - "abab": "1.0.4", - "acorn": "5.5.3", - "acorn-globals": "4.1.0", - "array-equal": "1.0.0", - "cssom": "0.3.2", - "cssstyle": "0.2.37", - "data-urls": "1.0.0", - "domexception": "1.0.1", - "escodegen": "1.9.1", - "html-encoding-sniffer": "1.0.2", - "left-pad": "1.3.0", - "nwmatcher": "1.4.4", + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.9.0.tgz", + "integrity": "sha512-sb3omwJTJ+HwAltLZevM/KQBusY+l2Ar5UfnTCWk9oUVBiDnQPBNiG1BaTAKttCnneonYbNo7vi4EFDY2lBfNA==", + "dev": true, + "requires": { + "abab": "^1.0.4", + "acorn": "^5.3.0", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": ">= 0.2.37 < 0.3.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.0", + "escodegen": "^1.9.0", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.2.0", + "nwmatcher": "^1.4.3", "parse5": "4.0.0", - "pn": "1.1.0", - "request": "2.85.0", - "request-promise-native": "1.0.5", - "sax": "1.2.4", - "symbol-tree": "3.2.2", - "tough-cookie": "2.3.4", - "w3c-hr-time": "1.0.1", - "webidl-conversions": "4.0.2", - "whatwg-encoding": "1.0.3", - "whatwg-mimetype": "2.1.0", - "whatwg-url": "6.4.0", - "ws": "4.1.0", - "xml-name-validator": "3.0.0" + "pn": "^1.1.0", + "request": "^2.83.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.3", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.0", + "ws": "^4.0.0", + "xml-name-validator": "^3.0.0" } }, "jsesc": { @@ -8674,7 +8245,7 @@ "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", "dev": true, "requires": { - "jsonify": "0.0.0" + "jsonify": "~0.0.0" } }, "json-stable-stringify-without-jsonify": { @@ -8706,7 +8277,7 @@ "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", "dev": true, "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.6" } }, "jsonify": { @@ -8752,7 +8323,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "klaw": { @@ -8761,7 +8332,7 @@ "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", "dev": true, "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.9" } }, "lazy-cache": { @@ -8776,7 +8347,7 @@ "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, "left-pad": { @@ -8797,38 +8368,38 @@ "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "dev": true, "requires": { - "prelude-ls": "1.1.2", - "type-check": "0.3.2" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" } }, "lint-staged": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-7.0.4.tgz", - "integrity": "sha512-9w4vwNJ1A7o4mwKhz/5B0VateS24KJjeU1ppO2UOBdbTg/iiypF4U6F3yckEms0Fbf5uvfLiPVp9pG2lBbVA6g==", - "dev": true, - "requires": { - "app-root-path": "2.0.1", - "chalk": "2.3.2", - "commander": "2.15.1", - "cosmiconfig": "4.0.0", - "debug": "3.1.0", - "dedent": "0.7.0", - "execa": "0.9.0", - "find-parent-dir": "0.3.0", - "is-glob": "4.0.0", - "jest-validate": "22.4.3", - "listr": "0.13.0", - "lodash": "4.17.5", - "log-symbols": "2.2.0", - "micromatch": "3.1.10", - "npm-which": "3.0.1", - "p-map": "1.2.0", - "path-is-inside": "1.0.2", - "pify": "3.0.0", - "please-upgrade-node": "3.0.1", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-7.0.5.tgz", + "integrity": "sha512-dCzqskhum0WXQBE0RawBkOlRjg2pc7PkAJD4yRB12+ct5CMTOU9tvzzbsyqJwaGHjTdSFUxiT8n+sww77p2r7w==", + "dev": true, + "requires": { + "app-root-path": "^2.0.1", + "chalk": "^2.3.1", + "commander": "^2.14.1", + "cosmiconfig": "^4.0.0", + "debug": "^3.1.0", + "dedent": "^0.7.0", + "execa": "^0.9.0", + "find-parent-dir": "^0.3.0", + "is-glob": "^4.0.0", + "jest-validate": "^22.4.0", + "listr": "^0.13.0", + "lodash": "^4.17.5", + "log-symbols": "^2.2.0", + "micromatch": "^3.1.8", + "npm-which": "^3.0.1", + "p-map": "^1.1.1", + "path-is-inside": "^1.0.2", + "pify": "^3.0.0", + "please-upgrade-node": "^3.0.2", "staged-git-files": "1.1.1", - "string-argv": "0.0.2", - "stringify-object": "3.2.2" + "string-argv": "^0.0.2", + "stringify-object": "^3.2.2" }, "dependencies": { "arr-diff": { @@ -8849,16 +8420,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -8867,22 +8438,11 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -8904,13 +8464,26 @@ "integrity": "sha512-BbUMBiX4hqiHZUA5+JujIjNb6TyAlp2D5KLheMjMluwOuzcnylDL4AxZYLLn1n2AGB49eSWwyKvvEQoRpnAtmA==", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } } }, "expand-brackets": { @@ -8919,13 +8492,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "debug": { @@ -8943,7 +8516,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -8952,7 +8525,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -8961,7 +8534,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -8970,7 +8543,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -8981,7 +8554,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -8990,7 +8563,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -9001,9 +8574,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -9020,14 +8593,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -9036,7 +8609,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -9045,7 +8618,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -9056,10 +8629,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -9068,7 +8641,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -9079,7 +8652,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -9088,7 +8661,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -9097,9 +8670,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-extglob": { @@ -9114,7 +8687,7 @@ "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.1" } }, "is-number": { @@ -9123,7 +8696,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -9132,7 +8705,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -9155,19 +8728,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } @@ -9177,23 +8750,23 @@ "resolved": "https://registry.npmjs.org/listr/-/listr-0.13.0.tgz", "integrity": "sha1-ILsLowuuZg7oTMBQPfS+PVYjiH0=", "requires": { - "chalk": "1.1.3", - "cli-truncate": "0.2.1", - "figures": "1.7.0", - "indent-string": "2.1.0", - "is-observable": "0.2.0", - "is-promise": "2.1.0", - "is-stream": "1.1.0", - "listr-silent-renderer": "1.1.1", - "listr-update-renderer": "0.4.0", - "listr-verbose-renderer": "0.4.1", - "log-symbols": "1.0.2", - "log-update": "1.0.2", - "ora": "0.2.3", - "p-map": "1.2.0", - "rxjs": "5.5.10", - "stream-to-observable": "0.2.0", - "strip-ansi": "3.0.1" + "chalk": "^1.1.3", + "cli-truncate": "^0.2.1", + "figures": "^1.7.0", + "indent-string": "^2.1.0", + "is-observable": "^0.2.0", + "is-promise": "^2.1.0", + "is-stream": "^1.1.0", + "listr-silent-renderer": "^1.1.1", + "listr-update-renderer": "^0.4.0", + "listr-verbose-renderer": "^0.4.0", + "log-symbols": "^1.0.2", + "log-update": "^1.0.2", + "ora": "^0.2.3", + "p-map": "^1.1.1", + "rxjs": "^5.4.2", + "stream-to-observable": "^0.2.0", + "strip-ansi": "^3.0.1" }, "dependencies": { "ansi-regex": { @@ -9211,11 +8784,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "figures": { @@ -9223,8 +8796,8 @@ "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "log-symbols": { @@ -9232,7 +8805,7 @@ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", "requires": { - "chalk": "1.1.3" + "chalk": "^1.0.0" } }, "strip-ansi": { @@ -9240,7 +8813,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -9260,14 +8833,14 @@ "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz", "integrity": "sha1-NE2YDaLKLosUW6MFkI8yrj9MyKc=", "requires": { - "chalk": "1.1.3", - "cli-truncate": "0.2.1", - "elegant-spinner": "1.0.1", - "figures": "1.7.0", - "indent-string": "3.2.0", - "log-symbols": "1.0.2", - "log-update": "1.0.2", - "strip-ansi": "3.0.1" + "chalk": "^1.1.3", + "cli-truncate": "^0.2.1", + "elegant-spinner": "^1.0.1", + "figures": "^1.7.0", + "indent-string": "^3.0.0", + "log-symbols": "^1.0.2", + "log-update": "^1.0.2", + "strip-ansi": "^3.0.1" }, "dependencies": { "ansi-regex": { @@ -9285,11 +8858,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "figures": { @@ -9297,8 +8870,8 @@ "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "indent-string": { @@ -9311,7 +8884,7 @@ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", "requires": { - "chalk": "1.1.3" + "chalk": "^1.0.0" } }, "strip-ansi": { @@ -9319,7 +8892,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -9334,10 +8907,10 @@ "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", "integrity": "sha1-ggb0z21S3cWCfl/RSYng6WWTOjU=", "requires": { - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "date-fns": "1.29.0", - "figures": "1.7.0" + "chalk": "^1.1.3", + "cli-cursor": "^1.0.2", + "date-fns": "^1.27.2", + "figures": "^1.7.0" }, "dependencies": { "ansi-regex": { @@ -9355,11 +8928,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "cli-cursor": { @@ -9367,7 +8940,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "figures": { @@ -9375,13 +8948,13 @@ "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" }, "restore-cursor": { @@ -9389,8 +8962,8 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } }, "strip-ansi": { @@ -9398,7 +8971,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -9413,10 +8986,10 @@ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "requires": { - "graceful-fs": "4.1.11", - "parse-json": "4.0.0", - "pify": "3.0.0", - "strip-bom": "3.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" }, "dependencies": { "strip-bom": { @@ -9437,9 +9010,9 @@ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1" + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0" } }, "locate-path": { @@ -9447,14 +9020,14 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "lodash": { - "version": "4.17.5", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", - "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==" + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" }, "lodash._reinterpolate": { "version": "3.0.0", @@ -9534,8 +9107,8 @@ "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", "dev": true, "requires": { - "lodash._reinterpolate": "3.0.0", - "lodash.templatesettings": "4.1.0" + "lodash._reinterpolate": "~3.0.0", + "lodash.templatesettings": "^4.0.0" } }, "lodash.templatesettings": { @@ -9544,7 +9117,7 @@ "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", "dev": true, "requires": { - "lodash._reinterpolate": "3.0.0" + "lodash._reinterpolate": "~3.0.0" } }, "lodash.topairs": { @@ -9570,7 +9143,7 @@ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", "requires": { - "chalk": "2.3.2" + "chalk": "^2.0.1" } }, "log-update": { @@ -9578,8 +9151,8 @@ "resolved": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", "integrity": "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=", "requires": { - "ansi-escapes": "1.4.0", - "cli-cursor": "1.0.2" + "ansi-escapes": "^1.0.0", + "cli-cursor": "^1.0.2" }, "dependencies": { "ansi-escapes": { @@ -9592,12 +9165,12 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" }, "restore-cursor": { @@ -9605,8 +9178,8 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } } } @@ -9623,8 +9196,8 @@ "integrity": "sha1-akAhj9x64V/HbD0PPmdsRlOIYD4=", "dev": true, "requires": { - "chalk": "1.1.3", - "loglevel": "1.6.1" + "chalk": "^1.1.3", + "loglevel": "^1.4.1" }, "dependencies": { "ansi-regex": { @@ -9645,11 +9218,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "strip-ansi": { @@ -9658,7 +9231,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -9670,10 +9243,14 @@ } }, "loglevelnext": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.4.tgz", - "integrity": "sha512-V3N6LAJAiGwa/zjtvmgs2tyeiCJ23bGNhxXN8R+v7k6TNlSlTz40mIyZYdmO762eBnEFymn0Mhha+WuAhnwMBg==", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz", + "integrity": "sha512-V/73qkPuJmx4BcBF19xPBr+0ZRVBhc4POxvZTZdMeXpJ4NItXSJ/MSwuFT0kQJlCbXvdlZoQQ/418bS1y9Jh6A==", + "dev": true, + "requires": { + "es6-symbol": "^3.1.1", + "object.assign": "^4.1.0" + } }, "longest": { "version": "1.0.1", @@ -9686,7 +9263,7 @@ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", "requires": { - "js-tokens": "3.0.2" + "js-tokens": "^3.0.0" } }, "loud-rejection": { @@ -9695,8 +9272,8 @@ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", "dev": true, "requires": { - "currently-unhandled": "0.4.1", - "signal-exit": "3.0.2" + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" } }, "lowercase-keys": { @@ -9709,8 +9286,8 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz", "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==", "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "make-dir": { @@ -9718,7 +9295,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.2.0.tgz", "integrity": "sha512-aNUAa4UMg/UougV25bbrU4ZaaKNjJ/3/xnvg/twpmKROPdKZPZ9wGgI0opdZzO8q/zUFawoUuixuOv33eZ61Iw==", "requires": { - "pify": "3.0.0" + "pify": "^3.0.0" } }, "make-plural": { @@ -9727,7 +9304,7 @@ "integrity": "sha512-zhDAr/erfvZtE1A66DIQ7ZNdGlexVGNDP1P1kvLZprRE0meA0zmxNbp6xmXzNRuZmgW0Ui4ibbaMPYPFHVRMkQ==", "dev": true, "requires": { - "minimist": "1.2.0" + "minimist": "^1.2.0" }, "dependencies": { "minimist": { @@ -9745,7 +9322,7 @@ "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", "dev": true, "requires": { - "tmpl": "1.0.4" + "tmpl": "1.0.x" } }, "map-cache": { @@ -9766,7 +9343,7 @@ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, "requires": { - "object-visit": "1.0.1" + "object-visit": "^1.0.0" } }, "marked": { @@ -9781,8 +9358,8 @@ "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", "dev": true, "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, "media-typer": { @@ -9796,7 +9373,7 @@ "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "mem-fs": { @@ -9804,9 +9381,9 @@ "resolved": "https://registry.npmjs.org/mem-fs/-/mem-fs-1.1.3.tgz", "integrity": "sha1-uK6NLj/Lb10/kWXBLUVRoGXZicw=", "requires": { - "through2": "2.0.3", - "vinyl": "1.2.0", - "vinyl-file": "2.0.0" + "through2": "^2.0.0", + "vinyl": "^1.1.0", + "vinyl-file": "^2.0.0" } }, "mem-fs-editor": { @@ -9814,22 +9391,22 @@ "resolved": "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-3.0.2.tgz", "integrity": "sha1-3Qpuryu4prN3QAZ6pUnrUwEFr58=", "requires": { - "commondir": "1.0.1", - "deep-extend": "0.4.2", - "ejs": "2.5.8", - "glob": "7.1.2", - "globby": "6.1.0", - "mkdirp": "0.5.1", - "multimatch": "2.1.0", - "rimraf": "2.2.8", - "through2": "2.0.3", - "vinyl": "2.1.0" + "commondir": "^1.0.1", + "deep-extend": "^0.4.0", + "ejs": "^2.3.1", + "glob": "^7.0.3", + "globby": "^6.1.0", + "mkdirp": "^0.5.0", + "multimatch": "^2.0.0", + "rimraf": "^2.2.8", + "through2": "^2.0.0", + "vinyl": "^2.0.1" }, "dependencies": { "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", + "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=" }, "clone-stats": { "version": "1.0.0", @@ -9846,12 +9423,12 @@ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz", "integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=", "requires": { - "clone": "2.1.2", - "clone-buffer": "1.0.0", - "clone-stats": "1.0.0", - "cloneable-readable": "1.1.2", - "remove-trailing-separator": "1.1.0", - "replace-ext": "1.0.0" + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" } } } @@ -9861,8 +9438,8 @@ "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "requires": { - "errno": "0.1.7", - "readable-stream": "2.3.6" + "errno": "^0.1.3", + "readable-stream": "^2.0.1" } }, "meow": { @@ -9871,16 +9448,16 @@ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.6.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.4.0", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" }, "dependencies": { "camelcase": { @@ -9895,8 +9472,8 @@ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" } }, "find-up": { @@ -9905,8 +9482,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "get-stdin": { @@ -9921,11 +9498,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" } }, "map-obj": { @@ -9946,7 +9523,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "path-exists": { @@ -9955,7 +9532,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "path-type": { @@ -9964,9 +9541,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { @@ -9981,9 +9558,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { @@ -9992,8 +9569,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" } }, "redent": { @@ -10002,8 +9579,8 @@ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" } }, "strip-indent": { @@ -10012,7 +9589,7 @@ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, "requires": { - "get-stdin": "4.0.1" + "get-stdin": "^4.0.1" } }, "trim-newlines": { @@ -10041,7 +9618,7 @@ "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", "dev": true, "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.1" } }, "messageformat": { @@ -10050,11 +9627,11 @@ "integrity": "sha512-Q0uXcDtF5pEZsVSyhzDOGgZZK6ykN79VY9CwU3Nv0gsqx62BjdJW0MT+63UkHQ4exe3HE33ZlxR2/YwoJarRTg==", "dev": true, "requires": { - "glob": "7.0.6", - "make-plural": "4.2.0", - "messageformat-parser": "1.1.0", - "nopt": "3.0.6", - "reserved-words": "0.1.2" + "glob": "~7.0.6", + "make-plural": "^4.1.1", + "messageformat-parser": "^1.1.0", + "nopt": "~3.0.6", + "reserved-words": "^0.1.2" }, "dependencies": { "glob": { @@ -10063,12 +9640,12 @@ "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -10090,19 +9667,19 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" } }, "miller-rabin": { @@ -10111,8 +9688,8 @@ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0" + "bn.js": "^4.0.0", + "brorand": "^1.0.1" } }, "mime": { @@ -10133,7 +9710,7 @@ "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", "dev": true, "requires": { - "mime-db": "1.33.0" + "mime-db": "~1.33.0" } }, "mimic-fn": { @@ -10163,7 +9740,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -10177,8 +9754,8 @@ "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", "dev": true, "requires": { - "arrify": "1.0.1", - "is-plain-obj": "1.1.0" + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" } }, "mississippi": { @@ -10187,16 +9764,16 @@ "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "duplexify": "3.5.4", - "end-of-stream": "1.4.1", - "flush-write-stream": "1.0.3", - "from2": "2.3.0", - "parallel-transform": "1.1.0", - "pump": "2.0.1", - "pumpify": "1.4.0", - "stream-each": "1.2.2", - "through2": "2.0.3" + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" } }, "mixin-deep": { @@ -10205,8 +9782,8 @@ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -10215,7 +9792,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -10247,12 +9824,12 @@ "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "dev": true, "requires": { - "aproba": "1.2.0", - "copy-concurrently": "1.0.5", - "fs-write-stream-atomic": "1.0.10", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" }, "dependencies": { "rimraf": { @@ -10261,7 +9838,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } } @@ -10277,8 +9854,8 @@ "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", "dev": true, "requires": { - "dns-packet": "1.3.1", - "thunky": "1.0.2" + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" } }, "multicast-dns-service-types": { @@ -10292,10 +9869,10 @@ "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", "requires": { - "array-differ": "1.0.0", - "array-union": "1.0.2", - "arrify": "1.0.1", - "minimatch": "3.0.4" + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" } }, "mute-stream": { @@ -10315,18 +9892,18 @@ "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-odd": "2.0.0", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-odd": "^2.0.0", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "arr-diff": { @@ -10366,18 +9943,24 @@ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==" }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, "nice-try": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz", "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==" }, "node-abi": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.3.0.tgz", - "integrity": "sha512-zwm6vU3SsVgw3e9fu48JBaRBCJGIvAgysDsqtf5+vEexFE71bEOtaMWb5zr/zODZNzTPtQlqUUpC79k68Hspow==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.4.0.tgz", + "integrity": "sha512-hRUz0vG+eJfSqwU6rOgW6wNyX85ec8OEE9n4A+u+eoiE8oTePhCkUFTNmwQ+86Kyu429PCLNNyI2P2jL9qKXhw==", "dev": true, "requires": { - "semver": "5.5.0" + "semver": "^5.4.1" } }, "node-dir": { @@ -10391,8 +9974,8 @@ "integrity": "sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ=", "dev": true, "requires": { - "encoding": "0.1.12", - "is-stream": "1.1.0" + "encoding": "^0.1.11", + "is-stream": "^1.0.1" } }, "node-forge": { @@ -10407,19 +9990,19 @@ "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", "dev": true, "requires": { - "fstream": "1.0.11", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "npmlog": "4.1.2", - "osenv": "0.1.5", - "request": "2.85.0", - "rimraf": "2.2.8", - "semver": "5.3.0", - "tar": "2.2.1", - "which": "1.3.0" + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "2", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" }, "dependencies": { "semver": { @@ -10442,28 +10025,28 @@ "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", "dev": true, "requires": { - "assert": "1.4.1", - "browserify-zlib": "0.2.0", - "buffer": "4.9.1", - "console-browserify": "1.1.0", - "constants-browserify": "1.0.0", - "crypto-browserify": "3.12.0", - "domain-browser": "1.2.0", - "events": "1.1.1", - "https-browserify": "1.0.0", - "os-browserify": "0.3.0", + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^1.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", "path-browserify": "0.0.0", - "process": "0.11.10", - "punycode": "1.4.1", - "querystring-es3": "0.2.1", - "readable-stream": "2.3.6", - "stream-browserify": "2.0.1", - "stream-http": "2.8.1", - "string_decoder": "1.1.1", - "timers-browserify": "2.0.6", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", "tty-browserify": "0.0.0", - "url": "0.11.0", - "util": "0.10.3", + "url": "^0.11.0", + "util": "^0.10.3", "vm-browserify": "0.0.4" } }, @@ -10479,10 +10062,10 @@ "integrity": "sha512-MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==", "dev": true, "requires": { - "growly": "1.3.0", - "semver": "5.5.0", - "shellwords": "0.1.1", - "which": "1.3.0" + "growly": "^1.3.0", + "semver": "^5.4.1", + "shellwords": "^0.1.1", + "which": "^1.3.0" } }, "nomnom": { @@ -10490,8 +10073,8 @@ "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", "requires": { - "chalk": "0.4.0", - "underscore": "1.6.0" + "chalk": "~0.4.0", + "underscore": "~1.6.0" }, "dependencies": { "ansi-styles": { @@ -10504,9 +10087,9 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", "requires": { - "ansi-styles": "1.0.0", - "has-color": "0.1.7", - "strip-ansi": "0.1.1" + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" } }, "strip-ansi": { @@ -10528,7 +10111,7 @@ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "dev": true, "requires": { - "abbrev": "1.1.1" + "abbrev": "1" } }, "normalize-package-data": { @@ -10536,10 +10119,10 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "requires": { - "hosted-git-info": "2.6.0", - "is-builtin-module": "1.0.0", - "semver": "5.5.0", - "validate-npm-package-license": "3.0.3" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "normalize-path": { @@ -10547,7 +10130,7 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "requires": { - "remove-trailing-separator": "1.1.0" + "remove-trailing-separator": "^1.0.1" } }, "normalize-url": { @@ -10555,9 +10138,9 @@ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", "requires": { - "prepend-http": "2.0.0", - "query-string": "5.1.1", - "sort-keys": "2.0.0" + "prepend-http": "^2.0.0", + "query-string": "^5.0.1", + "sort-keys": "^2.0.0" } }, "npm-path": { @@ -10566,7 +10149,7 @@ "integrity": "sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw==", "dev": true, "requires": { - "which": "1.3.0" + "which": "^1.2.10" } }, "npm-run-path": { @@ -10574,7 +10157,7 @@ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "npm-which": { @@ -10583,9 +10166,9 @@ "integrity": "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=", "dev": true, "requires": { - "commander": "2.15.1", - "npm-path": "2.0.4", - "which": "1.3.0" + "commander": "^2.9.0", + "npm-path": "^2.0.2", + "which": "^1.2.10" } }, "npmlog": { @@ -10594,10 +10177,10 @@ "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "dev": true, "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "number-is-nan": { @@ -10612,38 +10195,38 @@ "dev": true }, "nyc": { - "version": "11.6.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.6.0.tgz", - "integrity": "sha512-ZaXCh0wmbk2aSBH2B5hZGGvK2s9aM8DIm2rVY+BG3Fx8tUS+bpJSswUVZqOD1YfCmnYRFSqgYJSr7UeeUcW0jg==", - "dev": true, - "requires": { - "archy": "1.0.0", - "arrify": "1.0.1", - "caching-transform": "1.0.1", - "convert-source-map": "1.5.1", - "debug-log": "1.0.1", - "default-require-extensions": "1.0.0", - "find-cache-dir": "0.1.1", - "find-up": "2.1.0", - "foreground-child": "1.5.6", - "glob": "7.1.2", - "istanbul-lib-coverage": "1.2.0", - "istanbul-lib-hook": "1.1.0", - "istanbul-lib-instrument": "1.10.1", - "istanbul-lib-report": "1.1.3", - "istanbul-lib-source-maps": "1.2.3", - "istanbul-reports": "1.3.0", - "md5-hex": "1.3.0", - "merge-source-map": "1.1.0", - "micromatch": "2.3.11", - "mkdirp": "0.5.1", - "resolve-from": "2.0.0", - "rimraf": "2.6.2", - "signal-exit": "3.0.2", - "spawn-wrap": "1.4.2", - "test-exclude": "4.2.1", + "version": "11.7.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.7.1.tgz", + "integrity": "sha512-EGePURSKUEpS1jWnEKAMhY+GWZzi7JC+f8iBDOATaOsLZW5hM/9eYx2dHGaEXa1ITvMm44CJugMksvP3NwMQMw==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "arrify": "^1.0.1", + "caching-transform": "^1.0.0", + "convert-source-map": "^1.5.1", + "debug-log": "^1.0.1", + "default-require-extensions": "^1.0.0", + "find-cache-dir": "^0.1.1", + "find-up": "^2.1.0", + "foreground-child": "^1.5.3", + "glob": "^7.0.6", + "istanbul-lib-coverage": "^1.1.2", + "istanbul-lib-hook": "^1.1.0", + "istanbul-lib-instrument": "^1.10.0", + "istanbul-lib-report": "^1.1.3", + "istanbul-lib-source-maps": "^1.2.3", + "istanbul-reports": "^1.4.0", + "md5-hex": "^1.2.0", + "merge-source-map": "^1.0.2", + "micromatch": "^2.3.11", + "mkdirp": "^0.5.0", + "resolve-from": "^2.0.0", + "rimraf": "^2.5.4", + "signal-exit": "^3.0.1", + "spawn-wrap": "^1.4.2", + "test-exclude": "^4.2.0", "yargs": "11.1.0", - "yargs-parser": "8.1.0" + "yargs-parser": "^8.0.0" }, "dependencies": { "align-text": { @@ -10651,9 +10234,9 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" } }, "amdefine": { @@ -10676,7 +10259,7 @@ "bundled": true, "dev": true, "requires": { - "default-require-extensions": "1.0.0" + "default-require-extensions": "^1.0.0" } }, "archy": { @@ -10689,7 +10272,7 @@ "bundled": true, "dev": true, "requires": { - "arr-flatten": "1.1.0" + "arr-flatten": "^1.0.1" } }, "arr-flatten": { @@ -10723,7 +10306,7 @@ "dev": true }, "atob": { - "version": "2.0.3", + "version": "2.1.0", "bundled": true, "dev": true }, @@ -10732,9 +10315,9 @@ "bundled": true, "dev": true, "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" } }, "babel-generator": { @@ -10742,14 +10325,14 @@ "bundled": true, "dev": true, "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.5", - "source-map": "0.5.7", - "trim-right": "1.0.1" + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" } }, "babel-messages": { @@ -10757,7 +10340,7 @@ "bundled": true, "dev": true, "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-runtime": { @@ -10765,8 +10348,8 @@ "bundled": true, "dev": true, "requires": { - "core-js": "2.5.3", - "regenerator-runtime": "0.11.1" + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, "babel-template": { @@ -10774,11 +10357,11 @@ "bundled": true, "dev": true, "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" } }, "babel-traverse": { @@ -10786,15 +10369,15 @@ "bundled": true, "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.3", - "lodash": "4.17.5" + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" } }, "babel-types": { @@ -10802,10 +10385,10 @@ "bundled": true, "dev": true, "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.5", - "to-fast-properties": "1.0.3" + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" } }, "babylon": { @@ -10823,13 +10406,13 @@ "bundled": true, "dev": true, "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { @@ -10837,13 +10420,44 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { "version": "3.0.1", "bundled": true, "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true } } }, @@ -10852,7 +10466,7 @@ "bundled": true, "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -10861,9 +10475,9 @@ "bundled": true, "dev": true, "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" } }, "builtin-modules": { @@ -10876,15 +10490,15 @@ "bundled": true, "dev": true, "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" }, "dependencies": { "isobject": { @@ -10899,9 +10513,9 @@ "bundled": true, "dev": true, "requires": { - "md5-hex": "1.3.0", - "mkdirp": "0.5.1", - "write-file-atomic": "1.3.4" + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" } }, "camelcase": { @@ -10916,8 +10530,8 @@ "dev": true, "optional": true, "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" } }, "chalk": { @@ -10925,11 +10539,11 @@ "bundled": true, "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "class-utils": { @@ -10937,10 +10551,10 @@ "bundled": true, "dev": true, "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { @@ -10948,64 +10562,13 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-descriptor": "^0.1.0" } }, "isobject": { "version": "3.0.1", "bundled": true, "dev": true - }, - "kind-of": { - "version": "5.1.0", - "bundled": true, - "dev": true } } }, @@ -11015,8 +10578,8 @@ "dev": true, "optional": true, "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", + "center-align": "^0.1.1", + "right-align": "^0.1.1", "wordwrap": "0.0.2" }, "dependencies": { @@ -11038,8 +10601,8 @@ "bundled": true, "dev": true, "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "commondir": { @@ -11068,7 +10631,7 @@ "dev": true }, "core-js": { - "version": "2.5.3", + "version": "2.5.5", "bundled": true, "dev": true }, @@ -11077,8 +10640,8 @@ "bundled": true, "dev": true, "requires": { - "lru-cache": "4.1.2", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, "debug": { @@ -11109,7 +10672,7 @@ "bundled": true, "dev": true, "requires": { - "strip-bom": "2.0.0" + "strip-bom": "^2.0.0" } }, "define-property": { @@ -11117,14 +10680,45 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, "isobject": { "version": "3.0.1", "bundled": true, "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true } } }, @@ -11133,7 +10727,7 @@ "bundled": true, "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "error-ex": { @@ -11141,7 +10735,7 @@ "bundled": true, "dev": true, "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "escape-string-regexp": { @@ -11159,13 +10753,13 @@ "bundled": true, "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" }, "dependencies": { "cross-spawn": { @@ -11173,9 +10767,9 @@ "bundled": true, "dev": true, "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } } } @@ -11185,7 +10779,7 @@ "bundled": true, "dev": true, "requires": { - "is-posix-bracket": "0.1.1" + "is-posix-bracket": "^0.1.0" } }, "expand-range": { @@ -11193,7 +10787,7 @@ "bundled": true, "dev": true, "requires": { - "fill-range": "2.2.3" + "fill-range": "^2.1.0" } }, "extend-shallow": { @@ -11201,8 +10795,8 @@ "bundled": true, "dev": true, "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -11210,7 +10804,7 @@ "bundled": true, "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -11220,7 +10814,7 @@ "bundled": true, "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } }, "filename-regex": { @@ -11233,11 +10827,11 @@ "bundled": true, "dev": true, "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.7", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^1.1.3", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" } }, "find-cache-dir": { @@ -11245,9 +10839,9 @@ "bundled": true, "dev": true, "requires": { - "commondir": "1.0.1", - "mkdirp": "0.5.1", - "pkg-dir": "1.0.0" + "commondir": "^1.0.1", + "mkdirp": "^0.5.1", + "pkg-dir": "^1.0.0" } }, "find-up": { @@ -11255,7 +10849,7 @@ "bundled": true, "dev": true, "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "for-in": { @@ -11268,7 +10862,7 @@ "bundled": true, "dev": true, "requires": { - "for-in": "1.0.2" + "for-in": "^1.0.1" } }, "foreground-child": { @@ -11276,8 +10870,8 @@ "bundled": true, "dev": true, "requires": { - "cross-spawn": "4.0.2", - "signal-exit": "3.0.2" + "cross-spawn": "^4", + "signal-exit": "^3.0.0" } }, "fragment-cache": { @@ -11285,7 +10879,7 @@ "bundled": true, "dev": true, "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fs.realpath": { @@ -11313,12 +10907,12 @@ "bundled": true, "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-base": { @@ -11326,8 +10920,8 @@ "bundled": true, "dev": true, "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" } }, "glob-parent": { @@ -11335,7 +10929,7 @@ "bundled": true, "dev": true, "requires": { - "is-glob": "2.0.1" + "is-glob": "^2.0.0" } }, "globals": { @@ -11353,10 +10947,10 @@ "bundled": true, "dev": true, "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" }, "dependencies": { "source-map": { @@ -11364,7 +10958,7 @@ "bundled": true, "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -11374,7 +10968,7 @@ "bundled": true, "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "has-flag": { @@ -11387,9 +10981,9 @@ "bundled": true, "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" }, "dependencies": { "isobject": { @@ -11404,8 +10998,8 @@ "bundled": true, "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { @@ -11413,7 +11007,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -11421,7 +11015,7 @@ "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -11431,7 +11025,7 @@ "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -11451,8 +11045,8 @@ "bundled": true, "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -11461,11 +11055,11 @@ "dev": true }, "invariant": { - "version": "2.2.3", + "version": "2.2.4", "bundled": true, "dev": true, "requires": { - "loose-envify": "1.3.1" + "loose-envify": "^1.0.0" } }, "invert-kv": { @@ -11474,18 +11068,11 @@ "dev": true }, "is-accessor-descriptor": { - "version": "1.0.0", + "version": "0.1.6", "bundled": true, "dev": true, "requires": { - "kind-of": "6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } + "kind-of": "^3.0.2" } }, "is-arrayish": { @@ -11503,36 +11090,29 @@ "bundled": true, "dev": true, "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, "is-data-descriptor": { - "version": "1.0.0", + "version": "0.1.4", "bundled": true, "dev": true, "requires": { - "kind-of": "6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } + "kind-of": "^3.0.2" } }, "is-descriptor": { - "version": "1.0.2", + "version": "0.1.6", "bundled": true, "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { - "version": "6.0.2", + "version": "5.1.0", "bundled": true, "dev": true } @@ -11548,7 +11128,7 @@ "bundled": true, "dev": true, "requires": { - "is-primitive": "2.0.0" + "is-primitive": "^2.0.0" } }, "is-extendable": { @@ -11566,7 +11146,7 @@ "bundled": true, "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { @@ -11579,7 +11159,7 @@ "bundled": true, "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } }, "is-number": { @@ -11587,7 +11167,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-odd": { @@ -11595,7 +11175,7 @@ "bundled": true, "dev": true, "requires": { - "is-number": "4.0.0" + "is-number": "^4.0.0" }, "dependencies": { "is-number": { @@ -11610,7 +11190,7 @@ "bundled": true, "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { @@ -11673,7 +11253,7 @@ "bundled": true, "dev": true, "requires": { - "append-transform": "0.4.0" + "append-transform": "^0.4.0" } }, "istanbul-lib-instrument": { @@ -11681,13 +11261,13 @@ "bundled": true, "dev": true, "requires": { - "babel-generator": "6.26.1", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "istanbul-lib-coverage": "1.2.0", - "semver": "5.5.0" + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.0", + "semver": "^5.3.0" } }, "istanbul-lib-report": { @@ -11695,10 +11275,10 @@ "bundled": true, "dev": true, "requires": { - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "path-parse": "1.0.5", - "supports-color": "3.2.3" + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "path-parse": "^1.0.5", + "supports-color": "^3.1.2" }, "dependencies": { "supports-color": { @@ -11706,7 +11286,7 @@ "bundled": true, "dev": true, "requires": { - "has-flag": "1.0.0" + "has-flag": "^1.0.0" } } } @@ -11716,11 +11296,11 @@ "bundled": true, "dev": true, "requires": { - "debug": "3.1.0", - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "source-map": "0.5.7" + "debug": "^3.1.0", + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.1", + "source-map": "^0.5.3" }, "dependencies": { "debug": { @@ -11734,11 +11314,11 @@ } }, "istanbul-reports": { - "version": "1.3.0", + "version": "1.4.0", "bundled": true, "dev": true, "requires": { - "handlebars": "4.0.11" + "handlebars": "^4.0.3" } }, "js-tokens": { @@ -11756,7 +11336,7 @@ "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "lazy-cache": { @@ -11770,7 +11350,7 @@ "bundled": true, "dev": true, "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, "load-json-file": { @@ -11778,11 +11358,11 @@ "bundled": true, "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" } }, "locate-path": { @@ -11790,8 +11370,8 @@ "bundled": true, "dev": true, "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "dependencies": { "path-exists": { @@ -11816,7 +11396,7 @@ "bundled": true, "dev": true, "requires": { - "js-tokens": "3.0.2" + "js-tokens": "^3.0.0" } }, "lru-cache": { @@ -11824,8 +11404,8 @@ "bundled": true, "dev": true, "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "map-cache": { @@ -11838,7 +11418,7 @@ "bundled": true, "dev": true, "requires": { - "object-visit": "1.0.1" + "object-visit": "^1.0.0" } }, "md5-hex": { @@ -11846,7 +11426,7 @@ "bundled": true, "dev": true, "requires": { - "md5-o-matic": "0.1.1" + "md5-o-matic": "^0.1.1" } }, "md5-o-matic": { @@ -11859,7 +11439,7 @@ "bundled": true, "dev": true, "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "merge-source-map": { @@ -11867,7 +11447,7 @@ "bundled": true, "dev": true, "requires": { - "source-map": "0.6.1" + "source-map": "^0.6.1" }, "dependencies": { "source-map": { @@ -11882,19 +11462,19 @@ "bundled": true, "dev": true, "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" } }, "mimic-fn": { @@ -11907,7 +11487,7 @@ "bundled": true, "dev": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -11920,8 +11500,8 @@ "bundled": true, "dev": true, "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -11929,7 +11509,7 @@ "bundled": true, "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -11952,18 +11532,18 @@ "bundled": true, "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-odd": "2.0.0", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-odd": "^2.0.0", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "arr-diff": { @@ -11988,10 +11568,10 @@ "bundled": true, "dev": true, "requires": { - "hosted-git-info": "2.6.0", - "is-builtin-module": "1.0.0", - "semver": "5.5.0", - "validate-npm-package-license": "3.0.3" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "normalize-path": { @@ -11999,7 +11579,7 @@ "bundled": true, "dev": true, "requires": { - "remove-trailing-separator": "1.1.0" + "remove-trailing-separator": "^1.0.1" } }, "npm-run-path": { @@ -12007,7 +11587,7 @@ "bundled": true, "dev": true, "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "number-is-nan": { @@ -12025,50 +11605,17 @@ "bundled": true, "dev": true, "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "is-descriptor": { - "version": "0.1.6", + "version": "0.2.5", "bundled": true, "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "bundled": true, - "dev": true - } + "is-descriptor": "^0.1.0" } } } @@ -12078,7 +11625,7 @@ "bundled": true, "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.0" }, "dependencies": { "isobject": { @@ -12093,8 +11640,8 @@ "bundled": true, "dev": true, "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" } }, "object.pick": { @@ -12102,7 +11649,7 @@ "bundled": true, "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { @@ -12117,7 +11664,7 @@ "bundled": true, "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "optimist": { @@ -12125,8 +11672,8 @@ "bundled": true, "dev": true, "requires": { - "minimist": "0.0.8", - "wordwrap": "0.0.3" + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" } }, "os-homedir": { @@ -12139,9 +11686,9 @@ "bundled": true, "dev": true, "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" } }, "p-finally": { @@ -12154,7 +11701,7 @@ "bundled": true, "dev": true, "requires": { - "p-try": "1.0.0" + "p-try": "^1.0.0" } }, "p-locate": { @@ -12162,7 +11709,7 @@ "bundled": true, "dev": true, "requires": { - "p-limit": "1.2.0" + "p-limit": "^1.1.0" } }, "p-try": { @@ -12175,10 +11722,10 @@ "bundled": true, "dev": true, "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" } }, "parse-json": { @@ -12186,7 +11733,7 @@ "bundled": true, "dev": true, "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "pascalcase": { @@ -12199,7 +11746,7 @@ "bundled": true, "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "path-is-absolute": { @@ -12222,9 +11769,9 @@ "bundled": true, "dev": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { @@ -12242,7 +11789,7 @@ "bundled": true, "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "pkg-dir": { @@ -12250,7 +11797,7 @@ "bundled": true, "dev": true, "requires": { - "find-up": "1.1.2" + "find-up": "^1.0.0" }, "dependencies": { "find-up": { @@ -12258,8 +11805,8 @@ "bundled": true, "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } } } @@ -12284,8 +11831,8 @@ "bundled": true, "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { @@ -12293,7 +11840,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -12301,7 +11848,7 @@ "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -12311,7 +11858,7 @@ "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -12321,9 +11868,9 @@ "bundled": true, "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { @@ -12331,8 +11878,8 @@ "bundled": true, "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { @@ -12340,8 +11887,8 @@ "bundled": true, "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } } } @@ -12356,7 +11903,7 @@ "bundled": true, "dev": true, "requires": { - "is-equal-shallow": "0.1.3" + "is-equal-shallow": "^0.1.3" } }, "regex-not": { @@ -12364,8 +11911,8 @@ "bundled": true, "dev": true, "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, "remove-trailing-separator": { @@ -12388,7 +11935,7 @@ "bundled": true, "dev": true, "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "require-directory": { @@ -12422,7 +11969,7 @@ "dev": true, "optional": true, "requires": { - "align-text": "0.1.4" + "align-text": "^0.1.1" } }, "rimraf": { @@ -12430,7 +11977,7 @@ "bundled": true, "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-regex": { @@ -12438,7 +11985,7 @@ "bundled": true, "dev": true, "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "semver": { @@ -12456,10 +12003,10 @@ "bundled": true, "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -12467,7 +12014,7 @@ "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -12477,7 +12024,7 @@ "bundled": true, "dev": true, "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -12500,14 +12047,14 @@ "bundled": true, "dev": true, "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.1", - "use": "3.1.0" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { "define-property": { @@ -12515,7 +12062,7 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -12523,84 +12070,64 @@ "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } - }, - "is-accessor-descriptor": { - "version": "0.1.6", + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "is-descriptor": "^1.0.0" } }, - "is-data-descriptor": { - "version": "0.1.4", + "is-accessor-descriptor": { + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "kind-of": "^6.0.0" } }, - "is-descriptor": { - "version": "0.1.6", + "is-data-descriptor": { + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "kind-of": "^6.0.0" } }, - "kind-of": { - "version": "5.1.0", - "bundled": true, - "dev": true - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", + "is-descriptor": { + "version": "1.0.2", "bundled": true, "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { "version": "3.0.1", "bundled": true, "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true } } }, @@ -12609,7 +12136,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.2.0" } }, "source-map": { @@ -12622,11 +12149,11 @@ "bundled": true, "dev": true, "requires": { - "atob": "2.0.3", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" + "atob": "^2.0.0", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-url": { @@ -12639,12 +12166,12 @@ "bundled": true, "dev": true, "requires": { - "foreground-child": "1.5.6", - "mkdirp": "0.5.1", - "os-homedir": "1.0.2", - "rimraf": "2.6.2", - "signal-exit": "3.0.2", - "which": "1.3.0" + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" } }, "spdx-correct": { @@ -12652,8 +12179,8 @@ "bundled": true, "dev": true, "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { @@ -12666,8 +12193,8 @@ "bundled": true, "dev": true, "requires": { - "spdx-exceptions": "2.1.0", - "spdx-license-ids": "3.0.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { @@ -12680,7 +12207,7 @@ "bundled": true, "dev": true, "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "static-extend": { @@ -12688,8 +12215,8 @@ "bundled": true, "dev": true, "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { @@ -12697,59 +12224,8 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-descriptor": "^0.1.0" } - }, - "kind-of": { - "version": "5.1.0", - "bundled": true, - "dev": true } } }, @@ -12758,8 +12234,8 @@ "bundled": true, "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { "ansi-regex": { @@ -12772,7 +12248,7 @@ "bundled": true, "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -12782,7 +12258,7 @@ "bundled": true, "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-bom": { @@ -12790,7 +12266,7 @@ "bundled": true, "dev": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, "strip-eof": { @@ -12808,11 +12284,11 @@ "bundled": true, "dev": true, "requires": { - "arrify": "1.0.1", - "micromatch": "3.1.9", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "require-main-filename": "1.0.1" + "arrify": "^1.0.1", + "micromatch": "^3.1.8", + "object-assign": "^4.1.0", + "read-pkg-up": "^1.0.1", + "require-main-filename": "^1.0.1" }, "dependencies": { "arr-diff": { @@ -12826,38 +12302,28 @@ "dev": true }, "braces": { - "version": "2.3.1", + "version": "2.3.2", "bundled": true, "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "define-property": "1.0.0", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "kind-of": "6.0.2", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "1.0.2" - } - }, "extend-shallow": { "version": "2.0.1", "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -12867,13 +12333,13 @@ "bundled": true, "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -12881,7 +12347,7 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -12889,7 +12355,43 @@ "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-descriptor": { @@ -12897,9 +12399,9 @@ "bundled": true, "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -12914,14 +12416,14 @@ "bundled": true, "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -12929,7 +12431,7 @@ "bundled": true, "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -12937,7 +12439,7 @@ "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -12947,10 +12449,10 @@ "bundled": true, "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -12958,45 +12460,35 @@ "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } }, "is-accessor-descriptor": { - "version": "0.1.6", + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "kind-of": "^6.0.0" } }, "is-data-descriptor": { - "version": "0.1.4", + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { @@ -13004,7 +12496,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -13012,7 +12504,7 @@ "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -13028,23 +12520,23 @@ "dev": true }, "micromatch": { - "version": "3.1.9", + "version": "3.1.10", "bundled": true, "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.1", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } @@ -13059,7 +12551,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "to-regex": { @@ -13067,10 +12559,10 @@ "bundled": true, "dev": true, "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { @@ -13078,8 +12570,8 @@ "bundled": true, "dev": true, "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" }, "dependencies": { "is-number": { @@ -13087,7 +12579,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } } } @@ -13103,9 +12595,9 @@ "dev": true, "optional": true, "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" }, "dependencies": { "yargs": { @@ -13114,9 +12606,9 @@ "dev": true, "optional": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", "window-size": "0.1.0" } } @@ -13133,10 +12625,10 @@ "bundled": true, "dev": true, "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { @@ -13144,7 +12636,7 @@ "bundled": true, "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { @@ -13152,10 +12644,10 @@ "bundled": true, "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } @@ -13165,8 +12657,8 @@ "bundled": true, "dev": true, "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { @@ -13174,9 +12666,9 @@ "bundled": true, "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { @@ -13211,7 +12703,7 @@ "bundled": true, "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.2" }, "dependencies": { "kind-of": { @@ -13226,8 +12718,8 @@ "bundled": true, "dev": true, "requires": { - "spdx-correct": "3.0.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "which": { @@ -13235,7 +12727,7 @@ "bundled": true, "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -13259,8 +12751,8 @@ "bundled": true, "dev": true, "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "is-fullwidth-code-point": { @@ -13268,7 +12760,7 @@ "bundled": true, "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -13276,9 +12768,9 @@ "bundled": true, "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } @@ -13293,9 +12785,9 @@ "bundled": true, "dev": true, "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" } }, "y18n": { @@ -13313,18 +12805,18 @@ "bundled": true, "dev": true, "requires": { - "cliui": "4.0.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" }, "dependencies": { "ansi-regex": { @@ -13342,9 +12834,9 @@ "bundled": true, "dev": true, "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, "strip-ansi": { @@ -13352,7 +12844,7 @@ "bundled": true, "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "yargs-parser": { @@ -13360,7 +12852,7 @@ "bundled": true, "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } @@ -13370,7 +12862,7 @@ "bundled": true, "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" }, "dependencies": { "camelcase": { @@ -13399,9 +12891,9 @@ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "dev": true, "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { "define-property": { @@ -13410,7 +12902,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } @@ -13427,7 +12919,7 @@ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.0" }, "dependencies": { "isobject": { @@ -13438,14 +12930,26 @@ } } }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, "object.getownpropertydescriptors": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", "dev": true, "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.11.0" + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" } }, "object.omit": { @@ -13453,8 +12957,8 @@ "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" } }, "object.pick": { @@ -13463,7 +12967,7 @@ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { @@ -13500,7 +13004,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "onetime": { @@ -13508,7 +13012,7 @@ "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "opencollective": { @@ -13549,9 +13053,9 @@ "integrity": "sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.5", - "regenerator-runtime": "0.10.5" + "babel-runtime": "^6.22.0", + "core-js": "^2.4.0", + "regenerator-runtime": "^0.10.0" } }, "chalk": { @@ -13560,11 +13064,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "inquirer": { @@ -13573,19 +13077,19 @@ "integrity": "sha1-4EqqnQW3o8ubD0B9BDdfBEcZA0c=", "dev": true, "requires": { - "ansi-escapes": "1.4.0", - "chalk": "1.1.3", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", + "ansi-escapes": "^1.1.0", + "chalk": "^1.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.1", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx": "4.1.0", - "string-width": "2.1.1", - "strip-ansi": "3.0.1", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx": "^4.1.0", + "string-width": "^2.0.0", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" } }, "minimist": { @@ -13606,7 +13110,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -13623,8 +13127,8 @@ "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", "dev": true, "requires": { - "object-assign": "4.1.1", - "pinkie-promise": "2.0.1" + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" } }, "optimist": { @@ -13633,8 +13137,8 @@ "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", "dev": true, "requires": { - "minimist": "0.0.10", - "wordwrap": "0.0.3" + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" }, "dependencies": { "minimist": { @@ -13651,12 +13155,12 @@ "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", "dev": true, "requires": { - "deep-is": "0.1.3", - "fast-levenshtein": "2.0.6", - "levn": "0.3.0", - "prelude-ls": "1.1.2", - "type-check": "0.3.2", - "wordwrap": "1.0.0" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" }, "dependencies": { "wordwrap": { @@ -13672,10 +13176,10 @@ "resolved": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz", "integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=", "requires": { - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-spinners": "0.1.2", - "object-assign": "4.1.1" + "chalk": "^1.1.1", + "cli-cursor": "^1.0.2", + "cli-spinners": "^0.1.2", + "object-assign": "^4.0.1" }, "dependencies": { "ansi-regex": { @@ -13693,11 +13197,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "cli-cursor": { @@ -13705,12 +13209,12 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" }, "restore-cursor": { @@ -13718,8 +13222,8 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } }, "strip-ansi": { @@ -13727,7 +13231,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -13743,7 +13247,7 @@ "integrity": "sha1-kUf5P6FpbQS+YeAb1QuurKZWvTs=", "dev": true, "requires": { - "url-parse": "1.0.5" + "url-parse": "1.0.x" }, "dependencies": { "url-parse": { @@ -13752,8 +13256,8 @@ "integrity": "sha1-CFSGBCKv3P7+tsllxmLUgAFpkns=", "dev": true, "requires": { - "querystringify": "0.0.4", - "requires-port": "1.0.0" + "querystringify": "0.0.x", + "requires-port": "1.0.x" } } } @@ -13774,9 +13278,9 @@ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" } }, "os-shim": { @@ -13796,8 +13300,8 @@ "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "dev": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, "p-cancelable": { @@ -13810,7 +13314,7 @@ "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", "requires": { - "p-reduce": "1.0.0" + "p-reduce": "^1.0.0" } }, "p-finally": { @@ -13833,7 +13337,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", "requires": { - "p-try": "1.0.0" + "p-try": "^1.0.0" } }, "p-locate": { @@ -13841,7 +13345,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "requires": { - "p-limit": "1.2.0" + "p-limit": "^1.1.0" } }, "p-map": { @@ -13859,7 +13363,7 @@ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", "requires": { - "p-finally": "1.0.0" + "p-finally": "^1.0.0" } }, "p-try": { @@ -13873,7 +13377,7 @@ "integrity": "sha1-b7ySQEXSRPKiokRQMGDTv8YAl3Q=", "dev": true, "requires": { - "repeat-string": "1.6.1" + "repeat-string": "^1.5.2" } }, "pako": { @@ -13888,9 +13392,9 @@ "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", "dev": true, "requires": { - "cyclist": "0.2.2", - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" } }, "parse-asn1": { @@ -13899,11 +13403,11 @@ "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", "dev": true, "requires": { - "asn1.js": "4.10.1", - "browserify-aes": "1.2.0", - "create-hash": "1.2.0", - "evp_bytestokey": "1.0.3", - "pbkdf2": "3.0.14" + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" } }, "parse-github-repo-url": { @@ -13917,10 +13421,10 @@ "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" } }, "parse-json": { @@ -13928,8 +13432,8 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "requires": { - "error-ex": "1.3.1", - "json-parse-better-errors": "1.0.2" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, "parse-passwd": { @@ -14004,20 +13508,20 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "requires": { - "pify": "3.0.0" + "pify": "^3.0.0" } }, "pbkdf2": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", - "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", + "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", "dev": true, "requires": { - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "ripemd160": "2.0.1", - "safe-buffer": "5.1.1", - "sha.js": "2.4.11" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "performance-now": { @@ -14041,7 +13545,7 @@ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "pkg-dir": { @@ -14049,7 +13553,7 @@ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "requires": { - "find-up": "2.1.0" + "find-up": "^2.1.0" } }, "pkginfo": { @@ -14059,10 +13563,13 @@ "dev": true }, "please-upgrade-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.0.1.tgz", - "integrity": "sha1-CmgfLBiRXlQzpcos2U4Lggangts=", - "dev": true + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.0.2.tgz", + "integrity": "sha512-bslfSeW+ksUbB/sYZeEdKFyTG4YWU9YKRvqfSRvZKE675khAuBUPqV5RUwJZaGuWmVQLweK45Q+lPHFVnSlSug==", + "dev": true, + "requires": { + "semver-compare": "^1.0.0" + } }, "pluralize": { "version": "7.0.0", @@ -14082,9 +13589,9 @@ "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", "dev": true, "requires": { - "async": "1.5.2", - "debug": "2.6.9", - "mkdirp": "0.5.1" + "async": "^1.5.2", + "debug": "^2.2.0", + "mkdirp": "0.5.x" } }, "posix-character-classes": { @@ -14094,26 +13601,26 @@ "dev": true }, "prebuild-install": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.5.1.tgz", - "integrity": "sha512-3DX9L6pzwc1m1ksMkW3Ky2WLgPQUBiySOfXVl3WZyAeJSyJb4wtoH9OmeRGcubAWsMlLiL8BTHbwfm/jPQE9Ag==", + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.5.3.tgz", + "integrity": "sha512-/rI36cN2g7vDQnKWN8Uzupi++KjyqS9iS+/fpwG4Ea8d0Pip0PQ5bshUNzVwt+/D2MRfhVAplYMMvWLqWrCF/g==", "dev": true, "requires": { - "detect-libc": "1.0.3", - "expand-template": "1.1.0", + "detect-libc": "^1.0.3", + "expand-template": "^1.0.2", "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "node-abi": "2.3.0", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "2.0.1", - "rc": "1.2.6", - "simple-get": "2.7.0", - "tar-fs": "1.16.0", - "tunnel-agent": "0.6.0", - "which-pm-runs": "1.0.0" + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "node-abi": "^2.2.0", + "noop-logger": "^0.1.1", + "npmlog": "^4.0.1", + "os-homedir": "^1.0.1", + "pump": "^2.0.1", + "rc": "^1.1.6", + "simple-get": "^2.7.0", + "tar-fs": "^1.13.0", + "tunnel-agent": "^0.6.0", + "which-pm-runs": "^1.0.0" }, "dependencies": { "detect-libc": { @@ -14147,9 +13654,9 @@ "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" }, "prettier": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.12.0.tgz", - "integrity": "sha512-Wz0SMncgaglBzDcohH3ZIAi4nVpzOIEweFzCOmgVEoRSeO72b4dcKGfgxoRGVMaFlh1r7dlVaJ+f3CIHfeH6xg==" + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.12.1.tgz", + "integrity": "sha1-wa0g6APndJ+vkFpAnSNn4Gu+cyU=" }, "prettier-eslint": { "version": "8.8.1", @@ -14157,18 +13664,18 @@ "integrity": "sha512-8YMkJZnA+XVfEW6fPet05jpNmSQbD+Htbh/QyOxQcVf2GIUEZsnGP7ZScaM9Mq2Ra2261eCu60E7/TRIy9coXQ==", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "common-tags": "1.7.2", - "dlv": "1.1.1", - "eslint": "4.19.1", - "indent-string": "3.2.0", - "lodash.merge": "4.6.1", - "loglevel-colored-level-prefix": "1.0.0", - "prettier": "1.12.0", - "pretty-format": "22.4.3", - "require-relative": "0.8.7", - "typescript": "2.8.1", - "typescript-eslint-parser": "11.0.0" + "babel-runtime": "^6.26.0", + "common-tags": "^1.4.0", + "dlv": "^1.1.0", + "eslint": "^4.0.0", + "indent-string": "^3.2.0", + "lodash.merge": "^4.6.0", + "loglevel-colored-level-prefix": "^1.0.0", + "prettier": "^1.7.0", + "pretty-format": "^22.0.3", + "require-relative": "^0.8.7", + "typescript": "^2.5.1", + "typescript-eslint-parser": "^11.0.0" }, "dependencies": { "indent-string": { @@ -14185,23 +13692,23 @@ "integrity": "sha512-hQbsGaEVz97oBBcKdsJ46khv0kOGkMyWrXzcFOXW6X8UuetZ/j0yDJkNJgUTVc6PVFbbzBXk+qgd5vos9qzXPQ==", "dev": true, "requires": { - "arrify": "1.0.1", - "babel-runtime": "6.26.0", - "boolify": "1.0.1", - "camelcase-keys": "4.2.0", + "arrify": "^1.0.1", + "babel-runtime": "^6.23.0", + "boolify": "^1.0.0", + "camelcase-keys": "^4.1.0", "chalk": "2.3.0", - "common-tags": "1.7.2", - "eslint": "4.19.1", - "find-up": "2.1.0", - "get-stdin": "5.0.1", - "glob": "7.1.2", - "ignore": "3.3.7", - "indent-string": "3.2.0", - "lodash.memoize": "4.1.2", - "loglevel-colored-level-prefix": "1.0.0", - "messageformat": "1.1.1", - "prettier-eslint": "8.8.1", - "rxjs": "5.5.10", + "common-tags": "^1.4.0", + "eslint": "^4.5.0", + "find-up": "^2.1.0", + "get-stdin": "^5.0.1", + "glob": "^7.1.1", + "ignore": "^3.2.7", + "indent-string": "^3.1.0", + "lodash.memoize": "^4.1.2", + "loglevel-colored-level-prefix": "^1.0.0", + "messageformat": "^1.0.2", + "prettier-eslint": "^8.5.0", + "rxjs": "^5.3.0", "yargs": "10.0.3" }, "dependencies": { @@ -14217,9 +13724,9 @@ "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" + "ansi-styles": "^3.1.0", + "escape-string-regexp": "^1.0.5", + "supports-color": "^4.0.0" } }, "cliui": { @@ -14228,9 +13735,9 @@ "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", "dev": true, "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" }, "dependencies": { "string-width": { @@ -14239,9 +13746,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } @@ -14264,7 +13771,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "strip-ansi": { @@ -14273,7 +13780,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -14282,7 +13789,7 @@ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", "dev": true, "requires": { - "has-flag": "2.0.0" + "has-flag": "^2.0.0" } }, "yargs": { @@ -14291,18 +13798,18 @@ "integrity": "sha512-DqBpQ8NAUX4GyPP/ijDGHsJya4tYqLQrjPr95HNsr1YwL3+daCfvBwg7+gIC6IdJhR2kATh3hb61vjzMWEtjdw==", "dev": true, "requires": { - "cliui": "3.2.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "8.1.0" + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^8.0.0" } }, "yargs-parser": { @@ -14311,7 +13818,7 @@ "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } @@ -14327,8 +13834,8 @@ "integrity": "sha512-S4oT9/sT6MN7/3COoOy+ZJeA92VmOnveLHgrwBE3Z1W5N9S2A1QGNYiE1z75DAENbJrXXUb+OWXhpJcg05QKQQ==", "dev": true, "requires": { - "ansi-regex": "3.0.0", - "ansi-styles": "3.2.1" + "ansi-regex": "^3.0.0", + "ansi-styles": "^3.2.0" } }, "prettycli": { @@ -14346,9 +13853,9 @@ "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" + "ansi-styles": "^3.1.0", + "escape-string-regexp": "^1.0.5", + "supports-color": "^4.0.0" } }, "has-flag": { @@ -14363,7 +13870,7 @@ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", "dev": true, "requires": { - "has-flag": "2.0.0" + "has-flag": "^2.0.0" } } } @@ -14402,7 +13909,7 @@ "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", "dev": true, "requires": { - "forwarded": "0.1.2", + "forwarded": "~0.1.2", "ipaddr.js": "1.6.0" } }, @@ -14422,11 +13929,11 @@ "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", "dev": true, "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.2.0", - "parse-asn1": "5.1.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1" } }, "pump": { @@ -14435,8 +13942,8 @@ "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "pumpify": { @@ -14445,9 +13952,9 @@ "integrity": "sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA==", "dev": true, "requires": { - "duplexify": "3.5.4", - "inherits": "2.0.3", - "pump": "2.0.1" + "duplexify": "^3.5.3", + "inherits": "^2.0.3", + "pump": "^2.0.0" } }, "punycode": { @@ -14473,9 +13980,9 @@ "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", "requires": { - "decode-uri-component": "0.2.0", - "object-assign": "4.1.1", - "strict-uri-encode": "1.1.0" + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" } }, "querystring": { @@ -14507,8 +14014,8 @@ "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { @@ -14516,7 +14023,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -14524,7 +14031,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -14534,7 +14041,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -14545,7 +14052,7 @@ "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.1.0" } }, "randomfill": { @@ -14554,8 +14061,8 @@ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, "requires": { - "randombytes": "2.0.6", - "safe-buffer": "5.1.1" + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" } }, "range-parser": { @@ -14591,7 +14098,7 @@ "depd": "1.1.1", "inherits": "2.0.3", "setprototypeof": "1.0.3", - "statuses": "1.4.0" + "statuses": ">= 1.3.1 < 2" } }, "iconv-lite": { @@ -14614,10 +14121,10 @@ "integrity": "sha1-6xiYnG1PTxYsOZ953dKfODVWgJI=", "dev": true, "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "~0.4.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -14633,8 +14140,8 @@ "resolved": "https://registry.npmjs.org/read-chunk/-/read-chunk-2.1.0.tgz", "integrity": "sha1-agTAkoAF7Z1C4aasVgDhnLx/9lU=", "requires": { - "pify": "3.0.0", - "safe-buffer": "5.1.1" + "pify": "^3.0.0", + "safe-buffer": "^5.1.1" } }, "read-pkg": { @@ -14642,9 +14149,9 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "requires": { - "load-json-file": "4.0.0", - "normalize-package-data": "2.4.0", - "path-type": "3.0.0" + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" } }, "read-pkg-up": { @@ -14652,8 +14159,8 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "requires": { - "find-up": "2.1.0", - "read-pkg": "3.0.0" + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" } }, "readable-stream": { @@ -14661,13 +14168,13 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.1", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "readdirp": { @@ -14676,10 +14183,10 @@ "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "readable-stream": "2.3.6", - "set-immediate-shim": "1.0.1" + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" } }, "readline2": { @@ -14688,8 +14195,8 @@ "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", "mute-stream": "0.0.5" }, "dependencies": { @@ -14699,7 +14206,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "mute-stream": { @@ -14716,7 +14223,7 @@ "integrity": "sha512-XJtlRJ9jf0E1H1SLeJyQ9PGzQD7S65h1pRXEcAeK48doKOnKxcgPeNohJvD5u/2sI9J1oke6E8bZHS/fmW1UiQ==", "dev": true, "requires": { - "util.promisify": "1.0.0" + "util.promisify": "^1.0.0" } }, "recast": { @@ -14725,9 +14232,9 @@ "integrity": "sha512-/nwm9pkrcWagN40JeJhkPaRxiHXBRkXyRh/hgU088Z/v+qCy+zIHHY6bC6o7NaKAxPqtE6nD8zBH1LfU0/Wx6A==", "requires": { "ast-types": "0.11.3", - "esprima": "4.0.0", - "private": "0.1.8", - "source-map": "0.6.1" + "esprima": "~4.0.0", + "private": "~0.1.5", + "source-map": "~0.6.1" }, "dependencies": { "source-map": { @@ -14742,7 +14249,7 @@ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", "requires": { - "resolve": "1.7.1" + "resolve": "^1.1.6" } }, "redent": { @@ -14751,8 +14258,8 @@ "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", "dev": true, "requires": { - "indent-string": "3.2.0", - "strip-indent": "2.0.0" + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" }, "dependencies": { "indent-string": { @@ -14778,9 +14285,9 @@ "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "private": "0.1.8" + "babel-runtime": "^6.18.0", + "babel-types": "^6.19.0", + "private": "^0.1.6" } }, "regex-cache": { @@ -14788,7 +14295,7 @@ "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", "requires": { - "is-equal-shallow": "0.1.3" + "is-equal-shallow": "^0.1.3" } }, "regex-not": { @@ -14797,8 +14304,8 @@ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, "regexpp": { @@ -14812,9 +14319,9 @@ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", "requires": { - "regenerate": "1.3.3", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" } }, "regjsgen": { @@ -14827,7 +14334,7 @@ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", "requires": { - "jsesc": "0.5.0" + "jsesc": "~0.5.0" } }, "remove-trailing-separator": { @@ -14850,7 +14357,7 @@ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "replace-ext": { @@ -14864,28 +14371,28 @@ "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", "dev": true, "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.7.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.3.2", - "har-validator": "5.0.3", - "hawk": "6.0.2", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.1", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.2.1" + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "hawk": "~6.0.2", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "stringstream": "~0.0.5", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "request-promise-core": { @@ -14894,7 +14401,7 @@ "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.13.1" } }, "request-promise-native": { @@ -14904,8 +14411,8 @@ "dev": true, "requires": { "request-promise-core": "1.1.1", - "stealthy-require": "1.1.1", - "tough-cookie": "2.3.4" + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" } }, "require-directory": { @@ -14936,8 +14443,8 @@ "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", "dev": true, "requires": { - "caller-path": "0.1.0", - "resolve-from": "1.0.1" + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" }, "dependencies": { "resolve-from": { @@ -14960,7 +14467,7 @@ "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", "dev": true, "requires": { - "underscore": "1.6.0" + "underscore": "~1.6.0" } }, "reserved-words": { @@ -14974,7 +14481,7 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz", "integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==", "requires": { - "path-parse": "1.0.5" + "path-parse": "^1.0.5" } }, "resolve-cwd": { @@ -14982,7 +14489,7 @@ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", "requires": { - "resolve-from": "3.0.0" + "resolve-from": "^3.0.0" } }, "resolve-dir": { @@ -14990,8 +14497,8 @@ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", "requires": { - "expand-tilde": "2.0.2", - "global-modules": "1.0.0" + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" } }, "resolve-from": { @@ -15005,7 +14512,7 @@ "integrity": "sha1-j7As/Vt9sgEY6IYxHxWvlb0V+9k=", "dev": true, "requires": { - "global-dirs": "0.1.1" + "global-dirs": "^0.1.0" } }, "resolve-url": { @@ -15019,7 +14526,7 @@ "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", "requires": { - "lowercase-keys": "1.0.1" + "lowercase-keys": "^1.0.0" } }, "restore-cursor": { @@ -15027,8 +14534,8 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" } }, "ret": { @@ -15044,7 +14551,7 @@ "dev": true, "optional": true, "requires": { - "align-text": "0.1.4" + "align-text": "^0.1.1" } }, "right-pad": { @@ -15059,24 +14566,13 @@ "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=" }, "ripemd160": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, "requires": { - "hash-base": "2.0.2", - "inherits": "2.0.3" - }, - "dependencies": { - "hash-base": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", - "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - } + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, "run-async": { @@ -15084,7 +14580,7 @@ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "requires": { - "is-promise": "2.1.0" + "is-promise": "^2.1.0" } }, "run-queue": { @@ -15093,7 +14589,7 @@ "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "dev": true, "requires": { - "aproba": "1.2.0" + "aproba": "^1.1.1" } }, "rx": { @@ -15112,7 +14608,7 @@ "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", "requires": { - "rx-lite": "4.0.8" + "rx-lite": "*" } }, "rxjs": { @@ -15124,9 +14620,9 @@ } }, "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-regex": { "version": "1.1.0", @@ -15134,7 +14630,7 @@ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "safer-buffer": { @@ -15148,14 +14644,14 @@ "integrity": "sha512-glfKd7YH4UCrh/7dD+UESsr8ylKWRE7UQPoXuz28FgmcF0ViJQhCTCCZHICRKxf8G8O1KdLEn20dcICK54c7ew==", "dev": true, "requires": { - "anymatch": "2.0.0", - "exec-sh": "0.2.1", - "fb-watchman": "2.0.0", - "fsevents": "1.1.3", - "micromatch": "3.1.10", - "minimist": "1.2.0", - "walker": "1.0.7", - "watch": "0.18.0" + "anymatch": "^2.0.0", + "exec-sh": "^0.2.0", + "fb-watchman": "^2.0.0", + "fsevents": "^1.1.1", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5", + "watch": "~0.18.0" }, "dependencies": { "arr-diff": { @@ -15176,16 +14672,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -15194,7 +14690,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -15205,13 +14701,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -15220,7 +14716,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -15229,7 +14725,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -15238,7 +14734,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -15247,7 +14743,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -15258,7 +14754,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -15267,7 +14763,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -15278,9 +14774,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -15297,14 +14793,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -15313,7 +14809,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -15322,7 +14818,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -15333,10 +14829,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -15345,7 +14841,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -15356,7 +14852,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -15365,7 +14861,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -15374,9 +14870,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { @@ -15385,7 +14881,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -15394,7 +14890,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -15417,19 +14913,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, "minimist": { @@ -15452,8 +14948,8 @@ "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", "dev": true, "requires": { - "ajv": "6.4.0", - "ajv-keywords": "3.1.0" + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" }, "dependencies": { "ajv": { @@ -15462,16 +14958,16 @@ "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0", + "uri-js": "^3.0.2" } }, "ajv-keywords": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.1.0.tgz", - "integrity": "sha1-rCsnk5xUPpXSwG5/f1wnvkqlQ74=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", + "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", "dev": true } } @@ -15501,6 +14997,12 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, "send": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", @@ -15508,24 +15010,24 @@ "dev": true, "requires": { "debug": "2.6.9", - "depd": "1.1.2", - "destroy": "1.0.4", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.6.3", + "http-errors": "~1.6.2", "mime": "1.4.1", "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.4.0" + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" } }, "serialize-javascript": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.4.0.tgz", - "integrity": "sha1-fJWFFNtqwkQ6irwGLcn3iGp/YAU=", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.5.0.tgz", + "integrity": "sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ==", "dev": true }, "serve-index": { @@ -15534,13 +15036,13 @@ "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", - "escape-html": "1.0.3", - "http-errors": "1.6.3", - "mime-types": "2.1.18", - "parseurl": "1.3.2" + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" } }, "serve-static": { @@ -15549,9 +15051,9 @@ "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", "dev": true, "requires": { - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "parseurl": "1.3.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", "send": "0.16.2" } }, @@ -15572,10 +15074,10 @@ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -15584,7 +15086,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -15607,8 +15109,8 @@ "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "shebang-command": { @@ -15616,7 +15118,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -15629,9 +15131,9 @@ "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.1.tgz", "integrity": "sha512-YA/iYtZpzFe5HyWVGrb02FjPxc4EMCfpoU/Phg9fQoyMC72u9598OUBrsU8IrtwAKG0tO8IYaqbaLIw+k3IRGA==", "requires": { - "glob": "7.1.2", - "interpret": "1.1.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "shellwords": { @@ -15652,14 +15154,14 @@ "dev": true }, "simple-get": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.7.0.tgz", - "integrity": "sha512-RkE9rGPHcxYZ/baYmgJtOSM63vH0Vyq+ma5TijBcLla41SWlh8t6XYIGMR/oeZcmr+/G8k+zrClkkVrtnQ0esg==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", + "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", "dev": true, "requires": { - "decompress-response": "3.3.0", - "once": "1.4.0", - "simple-concat": "1.0.0" + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" } }, "slash": { @@ -15683,14 +15185,14 @@ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.1", - "use": "3.1.0" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { "define-property": { @@ -15699,7 +15201,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -15708,7 +15210,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -15719,9 +15221,9 @@ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" }, "dependencies": { "define-property": { @@ -15730,7 +15232,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -15739,7 +15241,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -15748,7 +15250,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -15757,9 +15259,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { @@ -15782,7 +15284,7 @@ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.2.0" } }, "sntp": { @@ -15791,7 +15293,7 @@ "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", "dev": true, "requires": { - "hoek": "4.2.1" + "hoek": "4.x.x" } }, "sockjs": { @@ -15800,8 +15302,8 @@ "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", "dev": true, "requires": { - "faye-websocket": "0.10.0", - "uuid": "3.2.1" + "faye-websocket": "^0.10.0", + "uuid": "^3.0.1" } }, "sockjs-client": { @@ -15810,12 +15312,12 @@ "integrity": "sha1-W6vjhrd15M8U51IJEUUmVAFsixI=", "dev": true, "requires": { - "debug": "2.6.9", + "debug": "^2.6.6", "eventsource": "0.1.6", - "faye-websocket": "0.11.1", - "inherits": "2.0.3", - "json3": "3.3.2", - "url-parse": "1.3.0" + "faye-websocket": "~0.11.0", + "inherits": "^2.0.1", + "json3": "^3.3.2", + "url-parse": "^1.1.8" }, "dependencies": { "faye-websocket": { @@ -15824,7 +15326,7 @@ "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", "dev": true, "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" } } } @@ -15834,7 +15336,7 @@ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", "requires": { - "is-plain-obj": "1.1.0" + "is-plain-obj": "^1.0.0" } }, "source-list-map": { @@ -15854,11 +15356,11 @@ "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", "dev": true, "requires": { - "atob": "2.1.0", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" + "atob": "^2.0.0", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-support": { @@ -15866,7 +15368,7 @@ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", "requires": { - "source-map": "0.5.7" + "source-map": "^0.5.6" } }, "source-map-url": { @@ -15881,8 +15383,8 @@ "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", "dev": true, "requires": { - "concat-stream": "1.6.2", - "os-shim": "0.1.3" + "concat-stream": "^1.4.7", + "os-shim": "^0.1.2" } }, "spdx-correct": { @@ -15890,8 +15392,8 @@ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { @@ -15904,8 +15406,8 @@ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "requires": { - "spdx-exceptions": "2.1.0", - "spdx-license-ids": "3.0.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { @@ -15919,12 +15421,12 @@ "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", "dev": true, "requires": { - "debug": "2.6.9", - "handle-thing": "1.2.5", - "http-deceiver": "1.2.7", - "safe-buffer": "5.1.1", - "select-hose": "2.0.0", - "spdy-transport": "2.1.0" + "debug": "^2.6.8", + "handle-thing": "^1.2.5", + "http-deceiver": "^1.2.7", + "safe-buffer": "^5.0.1", + "select-hose": "^2.0.0", + "spdy-transport": "^2.0.18" } }, "spdy-transport": { @@ -15933,13 +15435,13 @@ "integrity": "sha512-bpUeGpZcmZ692rrTiqf9/2EUakI6/kXX1Rpe0ib/DyOzbiexVfXkw6GnvI9hVGvIwVaUhkaBojjCZwLNRGQg1g==", "dev": true, "requires": { - "debug": "2.6.9", - "detect-node": "2.0.3", - "hpack.js": "2.1.6", - "obuf": "1.1.2", - "readable-stream": "2.3.6", - "safe-buffer": "5.1.1", - "wbuf": "1.7.3" + "debug": "^2.6.8", + "detect-node": "^2.0.3", + "hpack.js": "^2.1.6", + "obuf": "^1.1.1", + "readable-stream": "^2.2.9", + "safe-buffer": "^5.0.1", + "wbuf": "^1.7.2" } }, "split": { @@ -15948,7 +15450,7 @@ "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "dev": true, "requires": { - "through": "2.3.8" + "through": "2" } }, "split-string": { @@ -15957,7 +15459,7 @@ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "split2": { @@ -15966,7 +15468,7 @@ "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", "dev": true, "requires": { - "through2": "2.0.3" + "through2": "^2.0.2" } }, "sprintf-js": { @@ -15981,14 +15483,14 @@ "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=", "dev": true, "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "tweetnacl": "~0.14.0" } }, "ssri": { @@ -15997,7 +15499,7 @@ "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.1.1" } }, "stack-trace": { @@ -16024,8 +15526,8 @@ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { @@ -16034,7 +15536,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } @@ -16057,8 +15559,8 @@ "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" } }, "stream-each": { @@ -16067,8 +15569,8 @@ "integrity": "sha512-mc1dbFhGBxvTM3bIWmAAINbqiuAk9TATcfIQC8P+/+HJefgaiTlMn2dHvkX8qlI12KeYKSQ1Ua9RrIqrn1VPoA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "stream-shift": "1.0.0" + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" } }, "stream-http": { @@ -16077,11 +15579,11 @@ "integrity": "sha512-cQ0jo17BLca2r0GfRdZKYAGLU6JRoIWxqSOakUMuKOT6MOK7AAlE856L33QuDmAy/eeOrhLee3dZKX0Uadu93A==", "dev": true, "requires": { - "builtin-status-codes": "3.0.0", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "to-arraybuffer": "1.0.1", - "xtend": "4.0.1" + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.3", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" } }, "stream-shift": { @@ -16095,7 +15597,7 @@ "resolved": "https://registry.npmjs.org/stream-to-observable/-/stream-to-observable-0.2.0.tgz", "integrity": "sha1-WdbqOT2HwsDdrBCqDVYbxrpvDhA=", "requires": { - "any-observable": "0.2.0" + "any-observable": "^0.2.0" } }, "strict-uri-encode": { @@ -16115,8 +15617,8 @@ "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", "dev": true, "requires": { - "astral-regex": "1.0.0", - "strip-ansi": "4.0.0" + "astral-regex": "^1.0.0", + "strip-ansi": "^4.0.0" } }, "string-template": { @@ -16129,8 +15631,8 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" } }, "string_decoder": { @@ -16138,7 +15640,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "~5.1.0" } }, "stringify-object": { @@ -16147,9 +15649,9 @@ "integrity": "sha512-O696NF21oLiDy8PhpWu8AEqoZHw++QW6mUv0UvKZe8gWSdSvMXkiLufK7OmnP27Dro4GU5kb9U7JIO0mBuCRQg==", "dev": true, "requires": { - "get-own-enumerable-property-symbols": "2.0.1", - "is-obj": "1.0.1", - "is-regexp": "1.0.0" + "get-own-enumerable-property-symbols": "^2.0.1", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" } }, "stringstream": { @@ -16163,7 +15665,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "strip-bom": { @@ -16171,7 +15673,7 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, "strip-bom-stream": { @@ -16179,8 +15681,8 @@ "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz", "integrity": "sha1-+H217yYT9paKpUWr/h7HKLaoKco=", "requires": { - "first-chunk-stream": "2.0.0", - "strip-bom": "2.0.0" + "first-chunk-stream": "^2.0.0", + "strip-bom": "^2.0.0" } }, "strip-eof": { @@ -16201,11 +15703,11 @@ "dev": true }, "supports-color": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", - "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } }, "symbol-observable": { @@ -16225,12 +15727,12 @@ "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", "dev": true, "requires": { - "ajv": "5.5.2", - "ajv-keywords": "2.1.1", - "chalk": "2.3.2", - "lodash": "4.17.5", + "ajv": "^5.2.3", + "ajv-keywords": "^2.1.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", "slice-ansi": "1.0.0", - "string-width": "2.1.1" + "string-width": "^2.1.1" }, "dependencies": { "slice-ansi": { @@ -16239,7 +15741,7 @@ "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0" + "is-fullwidth-code-point": "^2.0.0" } } } @@ -16261,9 +15763,9 @@ "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", "dev": true, "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" + "block-stream": "*", + "fstream": "^1.0.2", + "inherits": "2" } }, "tar-fs": { @@ -16272,10 +15774,10 @@ "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", "dev": true, "requires": { - "chownr": "1.0.1", - "mkdirp": "0.5.1", - "pump": "1.0.3", - "tar-stream": "1.5.5" + "chownr": "^1.0.1", + "mkdirp": "^0.5.1", + "pump": "^1.0.0", + "tar-stream": "^1.1.2" }, "dependencies": { "pump": { @@ -16284,22 +15786,25 @@ "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } } } }, "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.0.tgz", + "integrity": "sha512-lh2iAPG/BHNmN6WB9Ybdynk9rEJ5GD/dy4zscHmVlwa1dq2tpE+BH78i5vjYwYVWEaOXGBjzxr89aVACF17Cpw==", "dev": true, "requires": { - "bl": "1.2.2", - "end-of-stream": "1.4.1", - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "bl": "^1.0.0", + "buffer-alloc": "^1.1.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.0.0", + "to-buffer": "^1.1.0", + "xtend": "^4.0.0" } }, "temp": { @@ -16307,8 +15812,8 @@ "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", "requires": { - "os-tmpdir": "1.0.2", - "rimraf": "2.2.8" + "os-tmpdir": "^1.0.0", + "rimraf": "~2.2.6" } }, "tempfile": { @@ -16317,8 +15822,8 @@ "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", "dev": true, "requires": { - "os-tmpdir": "1.0.2", - "uuid": "2.0.3" + "os-tmpdir": "^1.0.0", + "uuid": "^2.0.1" }, "dependencies": { "uuid": { @@ -16335,11 +15840,11 @@ "integrity": "sha512-qpqlP/8Zl+sosLxBcVKl9vYy26T9NPalxSzzCP/OY6K7j938ui2oKgo+kRZYfxAeIpLqpbVnsHq1tyV70E4lWQ==", "dev": true, "requires": { - "arrify": "1.0.1", - "micromatch": "3.1.10", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "require-main-filename": "1.0.1" + "arrify": "^1.0.1", + "micromatch": "^3.1.8", + "object-assign": "^4.1.0", + "read-pkg-up": "^1.0.1", + "require-main-filename": "^1.0.1" }, "dependencies": { "arr-diff": { @@ -16360,16 +15865,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -16378,7 +15883,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -16389,13 +15894,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -16404,7 +15909,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -16413,7 +15918,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -16422,7 +15927,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -16431,7 +15936,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -16442,7 +15947,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -16451,7 +15956,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -16462,9 +15967,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -16481,14 +15986,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -16497,7 +16002,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -16506,7 +16011,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -16517,10 +16022,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -16529,7 +16034,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -16540,8 +16045,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "is-accessor-descriptor": { @@ -16550,7 +16055,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -16559,7 +16064,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -16568,9 +16073,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { @@ -16579,7 +16084,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -16588,7 +16093,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -16611,11 +16116,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" } }, "micromatch": { @@ -16624,19 +16129,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, "parse-json": { @@ -16645,7 +16150,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "path-exists": { @@ -16654,7 +16159,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "path-type": { @@ -16663,9 +16168,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { @@ -16680,9 +16185,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { @@ -16691,8 +16196,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" } } } @@ -16729,8 +16234,8 @@ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" } }, "thunky": { @@ -16745,12 +16250,12 @@ "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" }, "timers-browserify": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.6.tgz", - "integrity": "sha512-HQ3nbYRAowdVd0ckGFvmJPPCOH/CHleFN/Y0YQCX1DVaB7t+KFvisuyN09fuP8Jtp1CpfSh8O8bMkHbdbPe6Pw==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", "dev": true, "requires": { - "setimmediate": "1.0.5" + "setimmediate": "^1.0.4" } }, "tmp": { @@ -16758,7 +16263,7 @@ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.2" } }, "tmpl": { @@ -16773,6 +16278,12 @@ "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", "dev": true }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", @@ -16784,7 +16295,7 @@ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "to-regex": { @@ -16793,10 +16304,10 @@ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { @@ -16805,8 +16316,8 @@ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" }, "dependencies": { "is-number": { @@ -16815,7 +16326,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } } } @@ -16826,7 +16337,7 @@ "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "dev": true, "requires": { - "punycode": "1.4.1" + "punycode": "^1.4.1" } }, "tr46": { @@ -16835,7 +16346,7 @@ "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", "dev": true, "requires": { - "punycode": "2.1.0" + "punycode": "^2.1.0" }, "dependencies": { "punycode": { @@ -16875,7 +16386,7 @@ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.0.1" } }, "tweetnacl": { @@ -16891,7 +16402,7 @@ "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", "dev": true, "requires": { - "prelude-ls": "1.1.2" + "prelude-ls": "~1.1.2" } }, "type-is": { @@ -16901,7 +16412,7 @@ "dev": true, "requires": { "media-typer": "0.3.0", - "mime-types": "2.1.18" + "mime-types": "~2.1.18" } }, "typedarray": { @@ -16911,9 +16422,9 @@ "dev": true }, "typescript": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.8.1.tgz", - "integrity": "sha512-Ao/f6d/4EPLq0YwzsQz8iXflezpTkQzqAyenTiw4kCUGr1uPiFLC3+fZ+gMZz6eeI/qdRUqvC+HxIJzUAzEFdg==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.8.3.tgz", + "integrity": "sha512-K7g15Bb6Ra4lKf7Iq2l/I5/En+hLIHmxWZGq3D4DIRNFxMNV6j2SHSvDOqs2tGd4UvD/fJvrwopzQXjLrT7Itw==", "dev": true }, "typescript-eslint-parser": { @@ -16941,9 +16452,9 @@ "dev": true, "optional": true, "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" }, "dependencies": { "camelcase": { @@ -16960,8 +16471,8 @@ "dev": true, "optional": true, "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", + "center-align": "^0.1.1", + "right-align": "^0.1.1", "wordwrap": "0.0.2" } }, @@ -16979,9 +16490,9 @@ "dev": true, "optional": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", "window-size": "0.1.0" } } @@ -16995,19 +16506,19 @@ "optional": true }, "uglifyjs-webpack-plugin": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.4.tgz", - "integrity": "sha512-z0IbjpW8b3O/OVn+TTZN4pI29RN1zktFBXLIzzfZ+++cUtZ1ERSlLWgpE/5OERuEUs1ijVQnpYAkSlpoVmQmSQ==", - "dev": true, - "requires": { - "cacache": "10.0.4", - "find-cache-dir": "1.0.0", - "schema-utils": "0.4.5", - "serialize-javascript": "1.4.0", - "source-map": "0.6.1", - "uglify-es": "3.3.9", - "webpack-sources": "1.1.0", - "worker-farm": "1.6.0" + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.5.tgz", + "integrity": "sha512-hIQJ1yxAPhEA2yW/i7Fr+SXZVMp+VEI3d42RTHBgQd2yhp/1UdBcR3QEWPV5ahBxlqQDMEMTuTEvDHSFINfwSw==", + "dev": true, + "requires": { + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" }, "dependencies": { "commander": { @@ -17028,8 +16539,8 @@ "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", "dev": true, "requires": { - "commander": "2.13.0", - "source-map": "0.6.1" + "commander": "~2.13.0", + "source-map": "~0.6.1" } } } @@ -17054,10 +16565,10 @@ "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { @@ -17066,7 +16577,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { @@ -17075,10 +16586,10 @@ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } @@ -17089,7 +16600,7 @@ "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", "dev": true, "requires": { - "unique-slug": "2.0.0" + "unique-slug": "^2.0.0" } }, "unique-slug": { @@ -17098,7 +16609,7 @@ "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", "dev": true, "requires": { - "imurmurhash": "0.1.4" + "imurmurhash": "^0.1.4" } }, "unpipe": { @@ -17113,8 +16624,8 @@ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { @@ -17123,9 +16634,9 @@ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { @@ -17159,9 +16670,9 @@ "integrity": "sha1-fx8wIFWz/qDz6B3HjrNnZstl4/E=" }, "upath": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.4.tgz", - "integrity": "sha512-d4SJySNBXDaQp+DPrziv3xGS6w3d2Xt69FijJr86zMPBy23JEloMCEOUBBzuN7xCtjLCnmB9tI/z7SBCahHBOw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.5.tgz", + "integrity": "sha512-qbKn90aDQ0YEwvXoLqj0oiuUYroLX2lVHZ+b+xwjozFasAOC4GneDq5+OaIG5Zj+jFmbz/uO+f7a9qxjktJQww==", "dev": true }, "uri-js": { @@ -17170,7 +16681,7 @@ "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", "dev": true, "requires": { - "punycode": "2.1.0" + "punycode": "^2.1.0" }, "dependencies": { "punycode": { @@ -17212,19 +16723,19 @@ "dev": true }, "url-parse": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.3.0.tgz", - "integrity": "sha512-zPvPA3T7P6M+0iNsgX+iAcAz4GshKrowtQBHHc/28tVsBc8jK7VRCNX+2GEcoE6zDB6XqXhcyiUWPVZY6C70Cg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.0.tgz", + "integrity": "sha512-ERuGxDiQ6Xw/agN4tuoCRbmwRuZP0cJ1lJxJubXr5Q/5cDa78+Dc4wfvtxzhzhkm5VvmW6Mf8EVj9SPGN4l8Lg==", "dev": true, "requires": { - "querystringify": "1.0.0", - "requires-port": "1.0.0" + "querystringify": "^2.0.0", + "requires-port": "^1.0.0" }, "dependencies": { "querystringify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-1.0.0.tgz", - "integrity": "sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.0.0.tgz", + "integrity": "sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw==", "dev": true } } @@ -17234,7 +16745,7 @@ "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", "requires": { - "prepend-http": "2.0.0" + "prepend-http": "^2.0.0" } }, "url-to-options": { @@ -17254,7 +16765,7 @@ "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.2" }, "dependencies": { "kind-of": { @@ -17299,8 +16810,8 @@ "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", "dev": true, "requires": { - "define-properties": "1.1.2", - "object.getownpropertydescriptors": "2.0.3" + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" } }, "utils-merge": { @@ -17325,8 +16836,8 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", "requires": { - "spdx-correct": "3.0.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "vary": { @@ -17341,9 +16852,9 @@ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "dev": true, "requires": { - "assert-plus": "1.0.0", + "assert-plus": "^1.0.0", "core-util-is": "1.0.2", - "extsprintf": "1.3.0" + "extsprintf": "^1.2.0" } }, "vinyl": { @@ -17351,8 +16862,8 @@ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", "requires": { - "clone": "1.0.4", - "clone-stats": "0.0.1", + "clone": "^1.0.0", + "clone-stats": "^0.0.1", "replace-ext": "0.0.1" } }, @@ -17361,12 +16872,12 @@ "resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-2.0.0.tgz", "integrity": "sha1-p+v1/779obfRjRQPyweyI++2dRo=", "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0", - "strip-bom-stream": "2.0.0", - "vinyl": "1.2.0" + "graceful-fs": "^4.1.2", + "pify": "^2.3.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0", + "strip-bom-stream": "^2.0.0", + "vinyl": "^1.1.0" }, "dependencies": { "pify": { @@ -17391,16 +16902,16 @@ "integrity": "sha1-S+eypOSPj8/JzzZIxBnTEcUiFZ0=", "dev": true, "requires": { - "babel-polyfill": "6.26.0", - "chalk": "1.1.3", - "in-publish": "2.0.0", + "babel-polyfill": "^6.3.14", + "chalk": "^1.1.0", + "in-publish": "^2.0.0", "inquirer": "0.11.0", - "lodash": "4.17.5", - "log-update": "1.0.2", - "minimist": "1.2.0", - "node-localstorage": "0.6.0", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" + "lodash": "^4.5.1", + "log-update": "^1.0.2", + "minimist": "^1.2.0", + "node-localstorage": "^0.6.0", + "strip-ansi": "^3.0.0", + "wrap-ansi": "^2.0.0" }, "dependencies": { "ansi-escapes": { @@ -17427,11 +16938,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "cli-cursor": { @@ -17440,7 +16951,7 @@ "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "dev": true, "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "cli-width": { @@ -17455,8 +16966,8 @@ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "inquirer": { @@ -17465,18 +16976,18 @@ "integrity": "sha1-dEi/qSQJKvMR1HFzu6uZDK4rsCc=", "dev": true, "requires": { - "ansi-escapes": "1.4.0", - "ansi-regex": "2.1.1", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-width": "1.1.1", - "figures": "1.7.0", - "lodash": "3.10.1", - "readline2": "1.0.1", - "run-async": "0.1.0", - "rx-lite": "3.1.2", - "strip-ansi": "3.0.1", - "through": "2.3.8" + "ansi-escapes": "^1.1.0", + "ansi-regex": "^2.0.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^1.0.1", + "figures": "^1.3.5", + "lodash": "^3.3.1", + "readline2": "^1.0.1", + "run-async": "^0.1.0", + "rx-lite": "^3.1.2", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" }, "dependencies": { "lodash": { @@ -17495,7 +17006,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -17505,8 +17016,8 @@ "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "dev": true, "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } }, "run-async": { @@ -17515,7 +17026,7 @@ "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.3.0" } }, "rx-lite": { @@ -17530,7 +17041,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -17547,7 +17058,7 @@ "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", "dev": true, "requires": { - "browser-process-hrtime": "0.1.2" + "browser-process-hrtime": "^0.1.2" } }, "walker": { @@ -17556,7 +17067,7 @@ "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", "dev": true, "requires": { - "makeerror": "1.0.11" + "makeerror": "1.0.x" } }, "watch": { @@ -17565,8 +17076,8 @@ "integrity": "sha1-KAlUdsbffJDJYxOJkMClQj60uYY=", "dev": true, "requires": { - "exec-sh": "0.2.1", - "minimist": "1.2.0" + "exec-sh": "^0.2.0", + "minimist": "^1.2.0" }, "dependencies": { "minimist": { @@ -17578,14 +17089,14 @@ } }, "watchpack": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", - "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", "dev": true, "requires": { - "chokidar": "2.0.3", - "graceful-fs": "4.1.11", - "neo-async": "2.5.1" + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" } }, "wbuf": { @@ -17594,7 +17105,7 @@ "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", "dev": true, "requires": { - "minimalistic-assert": "1.0.1" + "minimalistic-assert": "^1.0.0" } }, "webidl-conversions": { @@ -17604,30 +17115,30 @@ "dev": true }, "webpack": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.5.0.tgz", - "integrity": "sha512-6GrZsvQJnG7o7mjbfjp6s5CyMfdopjt1A/X8LcYwceis9ySjqBX6Lusso2wNZ06utHj2ZvfL6L3f7hfgVeJP6g==", - "dev": true, - "requires": { - "acorn": "5.5.3", - "acorn-dynamic-import": "3.0.0", - "ajv": "6.4.0", - "ajv-keywords": "3.1.0", - "chrome-trace-event": "0.1.2", - "enhanced-resolve": "4.0.0", - "eslint-scope": "3.7.1", - "loader-runner": "2.3.0", - "loader-utils": "1.1.0", - "memory-fs": "0.4.1", - "micromatch": "3.1.10", - "mkdirp": "0.5.1", - "neo-async": "2.5.1", - "node-libs-browser": "2.1.0", - "schema-utils": "0.4.5", - "tapable": "1.0.0", - "uglifyjs-webpack-plugin": "1.2.4", - "watchpack": "1.5.0", - "webpack-sources": "1.1.0" + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.6.0.tgz", + "integrity": "sha512-Fu/k/3fZeGtIhuFkiYpIy1UDHhMiGKjG4FFPVuvG+5Os2lWA1ttWpmi9Qnn6AgfZqj9MvhZW/rmj/ip+nHr06g==", + "dev": true, + "requires": { + "acorn": "^5.0.0", + "acorn-dynamic-import": "^3.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^0.1.1", + "enhanced-resolve": "^4.0.0", + "eslint-scope": "^3.7.1", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^0.4.4", + "tapable": "^1.0.0", + "uglifyjs-webpack-plugin": "^1.2.4", + "watchpack": "^1.5.0", + "webpack-sources": "^1.0.1" }, "dependencies": { "ajv": { @@ -17636,16 +17147,16 @@ "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0", + "uri-js": "^3.0.2" } }, "ajv-keywords": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.1.0.tgz", - "integrity": "sha1-rCsnk5xUPpXSwG5/f1wnvkqlQ74=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", + "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", "dev": true }, "arr-diff": { @@ -17666,16 +17177,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -17684,7 +17195,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -17695,13 +17206,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -17710,7 +17221,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -17719,7 +17230,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -17728,7 +17239,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -17737,7 +17248,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -17748,7 +17259,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -17757,7 +17268,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -17768,9 +17279,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -17787,14 +17298,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -17803,7 +17314,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -17812,7 +17323,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -17823,10 +17334,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -17835,7 +17346,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -17846,7 +17357,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -17855,7 +17366,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -17864,9 +17375,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { @@ -17875,7 +17386,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -17884,7 +17395,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -17907,19 +17418,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } @@ -17929,7 +17440,7 @@ "resolved": "https://registry.npmjs.org/webpack-addons/-/webpack-addons-1.1.5.tgz", "integrity": "sha512-MGO0nVniCLFAQz1qv22zM02QPjcpAoJdy7ED0i3Zy7SY1IecgXCm460ib7H/Wq7e9oL5VL6S2BxaObxwIcag0g==", "requires": { - "jscodeshift": "0.4.1" + "jscodeshift": "^0.4.0" }, "dependencies": { "ast-types": { @@ -17947,21 +17458,21 @@ "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.4.1.tgz", "integrity": "sha512-iOX6If+hsw0q99V3n31t4f5VlD1TQZddH08xbT65ZqA7T4Vkx68emrDZMUOLVvCEAJ6NpAk7DECe3fjC/t52AQ==", "requires": { - "async": "1.5.2", - "babel-plugin-transform-flow-strip-types": "6.22.0", - "babel-preset-es2015": "6.24.1", - "babel-preset-stage-1": "6.24.1", - "babel-register": "6.26.0", - "babylon": "6.18.0", - "colors": "1.2.1", - "flow-parser": "0.69.0", - "lodash": "4.17.5", - "micromatch": "2.3.11", + "async": "^1.5.0", + "babel-plugin-transform-flow-strip-types": "^6.8.0", + "babel-preset-es2015": "^6.9.0", + "babel-preset-stage-1": "^6.5.0", + "babel-register": "^6.9.0", + "babylon": "^6.17.3", + "colors": "^1.1.2", + "flow-parser": "^0.*", + "lodash": "^4.13.1", + "micromatch": "^2.3.7", "node-dir": "0.1.8", - "nomnom": "1.8.1", - "recast": "0.12.9", - "temp": "0.8.3", - "write-file-atomic": "1.3.4" + "nomnom": "^1.8.1", + "recast": "^0.12.5", + "temp": "^0.8.1", + "write-file-atomic": "^1.2.0" } }, "recast": { @@ -17970,10 +17481,10 @@ "integrity": "sha512-y7ANxCWmMW8xLOaiopiRDlyjQ9ajKRENBH+2wjntIbk3A6ZR1+BLQttkmSHMY7Arl+AAZFwJ10grg2T6f1WI8A==", "requires": { "ast-types": "0.10.1", - "core-js": "2.5.5", - "esprima": "4.0.0", - "private": "0.1.8", - "source-map": "0.6.1" + "core-js": "^2.4.1", + "esprima": "~4.0.0", + "private": "~0.1.5", + "source-map": "~0.6.1" } }, "source-map": { @@ -17989,13 +17500,13 @@ "integrity": "sha512-Z11Zp3GTvCe6mGbbtma+lMB9xRfJcNtupXfmvFBujyXqLNms6onDnSi9f/Cb2rw6KkD5kgibOfxhN7npZwTiGA==", "dev": true, "requires": { - "loud-rejection": "1.6.0", - "memory-fs": "0.4.1", - "mime": "2.3.1", - "path-is-absolute": "1.0.1", - "range-parser": "1.2.0", - "url-join": "4.0.0", - "webpack-log": "1.2.0" + "loud-rejection": "^1.6.0", + "memory-fs": "~0.4.1", + "mime": "^2.1.0", + "path-is-absolute": "^1.0.0", + "range-parser": "^1.0.3", + "url-join": "^4.0.0", + "webpack-log": "^1.0.1" }, "dependencies": { "mime": { @@ -18013,32 +17524,32 @@ "dev": true, "requires": { "ansi-html": "0.0.7", - "array-includes": "3.0.3", - "bonjour": "3.5.0", - "chokidar": "2.0.3", - "compression": "1.7.2", - "connect-history-api-fallback": "1.5.0", - "debug": "3.1.0", - "del": "3.0.0", - "express": "4.16.3", - "html-entities": "1.2.1", - "http-proxy-middleware": "0.18.0", - "import-local": "1.0.0", + "array-includes": "^3.0.3", + "bonjour": "^3.5.0", + "chokidar": "^2.0.0", + "compression": "^1.5.2", + "connect-history-api-fallback": "^1.3.0", + "debug": "^3.1.0", + "del": "^3.0.0", + "express": "^4.16.2", + "html-entities": "^1.2.0", + "http-proxy-middleware": "~0.18.0", + "import-local": "^1.0.0", "internal-ip": "1.2.0", - "ip": "1.1.5", - "killable": "1.0.0", - "loglevel": "1.6.1", - "opn": "5.3.0", - "portfinder": "1.0.13", - "selfsigned": "1.10.2", - "serve-index": "1.9.1", + "ip": "^1.1.5", + "killable": "^1.0.0", + "loglevel": "^1.4.1", + "opn": "^5.1.0", + "portfinder": "^1.0.9", + "selfsigned": "^1.9.1", + "serve-index": "^1.7.2", "sockjs": "0.3.19", "sockjs-client": "1.1.4", - "spdy": "3.4.7", - "strip-ansi": "3.0.1", - "supports-color": "5.3.0", + "spdy": "^3.4.1", + "strip-ansi": "^3.0.0", + "supports-color": "^5.1.0", "webpack-dev-middleware": "3.1.2", - "webpack-log": "1.2.0", + "webpack-log": "^1.1.2", "yargs": "11.0.0" }, "dependencies": { @@ -18063,12 +17574,12 @@ "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", "dev": true, "requires": { - "globby": "6.1.0", - "is-path-cwd": "1.0.0", - "is-path-in-cwd": "1.0.1", - "p-map": "1.2.0", - "pify": "3.0.0", - "rimraf": "2.2.8" + "globby": "^6.1.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "p-map": "^1.1.1", + "pify": "^3.0.0", + "rimraf": "^2.2.8" } }, "opn": { @@ -18077,7 +17588,7 @@ "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", "dev": true, "requires": { - "is-wsl": "1.1.0" + "is-wsl": "^1.1.0" } }, "strip-ansi": { @@ -18086,7 +17597,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "yargs": { @@ -18095,18 +17606,18 @@ "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", "dev": true, "requires": { - "cliui": "4.0.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" } } } @@ -18117,10 +17628,10 @@ "integrity": "sha512-U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA==", "dev": true, "requires": { - "chalk": "2.3.2", - "log-symbols": "2.2.0", - "loglevelnext": "1.0.4", - "uuid": "3.2.1" + "chalk": "^2.1.0", + "log-symbols": "^2.1.0", + "loglevelnext": "^1.0.1", + "uuid": "^3.1.0" } }, "webpack-sources": { @@ -18129,8 +17640,8 @@ "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", "dev": true, "requires": { - "source-list-map": "2.0.0", - "source-map": "0.6.1" + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" }, "dependencies": { "source-map": { @@ -18147,8 +17658,8 @@ "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", "dev": true, "requires": { - "http-parser-js": "0.4.11", - "websocket-extensions": "0.1.3" + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { @@ -18181,14 +17692,14 @@ "dev": true }, "whatwg-url": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.0.tgz", - "integrity": "sha512-Z0CVh/YE217Foyb488eo+iBv+r7eAQ0wSTyApi9n06jhcA3z6Nidg/EGvl0UFkg7kMdKxfBzzr+o9JF+cevgMg==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.1.tgz", + "integrity": "sha512-FwygsxsXx27x6XXuExA/ox3Ktwcbf+OAvrKmLulotDAiO1Q6ixchPFaHYsis2zZBZSJTR0+dR+JVtf7MlbqZjw==", "dev": true, "requires": { - "lodash.sortby": "4.7.0", - "tr46": "1.0.1", - "webidl-conversions": "4.0.2" + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" } }, "which": { @@ -18196,7 +17707,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -18216,7 +17727,7 @@ "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", "dev": true, "requires": { - "string-width": "1.0.2" + "string-width": "^1.0.2" }, "dependencies": { "ansi-regex": { @@ -18231,7 +17742,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -18240,9 +17751,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -18251,7 +17762,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -18269,13 +17780,13 @@ "integrity": "sha1-NGiCFcyNu3hIOLmqYm5zruRP5LY=", "dev": true, "requires": { - "async": "1.0.0", - "colors": "1.0.3", - "cycle": "1.0.3", - "eyes": "0.1.8", - "isstream": "0.1.2", - "pkginfo": "0.3.1", - "stack-trace": "0.0.10" + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" }, "dependencies": { "async": { @@ -18310,7 +17821,7 @@ "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", "dev": true, "requires": { - "errno": "0.1.7" + "errno": "~0.1.7" } }, "wrap-ansi": { @@ -18318,8 +17829,8 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "ansi-regex": { @@ -18332,7 +17843,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -18340,9 +17851,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -18350,7 +17861,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -18366,7 +17877,7 @@ "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", "dev": true, "requires": { - "mkdirp": "0.5.1" + "mkdirp": "^0.5.1" } }, "write-file-atomic": { @@ -18374,9 +17885,9 @@ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" } }, "ws": { @@ -18385,8 +17896,8 @@ "integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==", "dev": true, "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0" } }, "xml-name-validator": { @@ -18421,18 +17932,18 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz", "integrity": "sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==", "requires": { - "cliui": "4.0.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" } }, "yargs-parser": { @@ -18440,7 +17951,7 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } }, "yeoman-environment": { @@ -18448,19 +17959,19 @@ "resolved": "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.0.6.tgz", "integrity": "sha512-jzHBTTy8EPI4ImV8dpUMt+Q5zELkSU5xvGpndHcHudQ4tqN6YgIWaCGmRFl+HDchwRUkcgyjQ+n6/w5zlJBCPg==", "requires": { - "chalk": "2.3.2", - "debug": "3.1.0", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "globby": "6.1.0", - "grouped-queue": "0.3.3", - "inquirer": "3.3.0", - "is-scoped": "1.0.0", - "lodash": "4.17.5", - "log-symbols": "2.2.0", - "mem-fs": "1.1.3", - "text-table": "0.2.0", - "untildify": "3.0.2" + "chalk": "^2.1.0", + "debug": "^3.1.0", + "diff": "^3.3.1", + "escape-string-regexp": "^1.0.2", + "globby": "^6.1.0", + "grouped-queue": "^0.3.3", + "inquirer": "^3.3.0", + "is-scoped": "^1.0.0", + "lodash": "^4.17.4", + "log-symbols": "^2.1.0", + "mem-fs": "^1.1.0", + "text-table": "^0.2.0", + "untildify": "^3.0.2" }, "dependencies": { "debug": { @@ -18476,54 +17987,54 @@ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.3.2", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx-lite": "4.0.8", - "rx-lite-aggregates": "4.0.8", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" } } } }, "yeoman-generator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-2.0.3.tgz", - "integrity": "sha512-mODmrZ26a94djmGZZuIiomSGlN4wULdou29ZwcySupb2e9FdvoCl7Ps2FqHFjEHio3kOl/iBeaNqrnx3C3NwWg==", - "requires": { - "async": "2.6.0", - "chalk": "2.3.2", - "cli-table": "0.3.1", - "cross-spawn": "5.1.0", - "dargs": "5.1.0", - "dateformat": "3.0.3", - "debug": "3.1.0", - "detect-conflict": "1.0.1", - "error": "7.0.2", - "find-up": "2.1.0", - "github-username": "4.1.0", - "istextorbinary": "2.2.1", - "lodash": "4.17.5", - "make-dir": "1.2.0", - "mem-fs-editor": "3.0.2", - "minimist": "1.2.0", - "pretty-bytes": "4.0.2", - "read-chunk": "2.1.0", - "read-pkg-up": "3.0.0", - "rimraf": "2.6.2", - "run-async": "2.3.0", - "shelljs": "0.8.1", - "text-table": "0.2.0", - "through2": "2.0.3", - "yeoman-environment": "2.0.6" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-2.0.4.tgz", + "integrity": "sha512-Sgvz3MAkOpEIobcpW3rjEl6bOTNnl8SkibP9z7hYKfIGIlw0QDC2k0MAeXvyE2pLqc2M0Duql+6R7/W9GrJojg==", + "requires": { + "async": "^2.6.0", + "chalk": "^2.3.0", + "cli-table": "^0.3.1", + "cross-spawn": "^5.1.0", + "dargs": "^5.1.0", + "dateformat": "^3.0.2", + "debug": "^3.1.0", + "detect-conflict": "^1.0.0", + "error": "^7.0.2", + "find-up": "^2.1.0", + "github-username": "^4.0.0", + "istextorbinary": "^2.1.0", + "lodash": "^4.17.4", + "make-dir": "^1.1.0", + "mem-fs-editor": "^3.0.2", + "minimist": "^1.2.0", + "pretty-bytes": "^4.0.2", + "read-chunk": "^2.1.0", + "read-pkg-up": "^3.0.0", + "rimraf": "^2.6.2", + "run-async": "^2.0.0", + "shelljs": "^0.8.0", + "text-table": "^0.2.0", + "through2": "^2.0.0", + "yeoman-environment": "^2.0.5" }, "dependencies": { "async": { @@ -18531,7 +18042,7 @@ "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", "requires": { - "lodash": "4.17.5" + "lodash": "^4.14.0" } }, "cross-spawn": { @@ -18539,9 +18050,9 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "debug": { @@ -18562,7 +18073,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } }