Kitware / HPCCloud-deploy

VM Deploy for HPC-Cloud
Apache License 2.0
18 stars 4 forks source link

NPM install HPCCloud fail main VM creation #116

Open felixveysseyre opened 6 years ago

felixveysseyre commented 6 years ago

Hello,

I try to create the HPCCloud VM in development mode in order to work on a custom HPCCloud project.

I have cloned latest HPCCloud-deploy project:

git clone https://github.com/Kitware/HPCCloud-deploy.git

I have cloned latest HPCCLoud project, under the name of hpccloud:

git clone https://github.com/Kitware/HPCCloud.git hpccloud

I start the VM building process:

cd HPCCloud-deploy
DEVELOPMENT=1 vagrant up

I got the following error:

TASK [hpccloud : Run npm install] ** task path: /Users/felixveysseyre/Projects/Cemosis/HPCCloud-deploy/ansible/roles/hpccloud/tasks/main.yml:56 fatal: [hpccloud-vm]: FAILED! => {"changed": false, "cmd": "/usr/local/bin/npm install", "failed": true, "msg": "npm WARN deprecated css-list@0.1.3:****@1.5.8: wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.\nnpm WARN deprecated babel-preset-es2015@6.6.0:****@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5\nnpm WARN deprecated graceful-fs@3.0.11:****@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130\nnpm WARN deprecated babel-preset-es2015@6.16.0:****@>= 5 but none was installed.\nnpm ERR! Linux 3.13.0-119-generic\nnpm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"install\"\nnpm ERR! node v6.11.5\nnpm ERR! npm v3.10.10\nnpm ERR! path /opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js\nnpm ERR! code ENOENT\nnpm ERR! errno -2\nnpm ERR! syscall chmod\n\nnpm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js'\nnpm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js'\nnpm ERR! enoent This is most likely not a problem with npm itself\nnpm ERR! enoent and is related to npm not being able to find a file.\nnpm ERR! enoent \n\nnpm ERR! Please include the following file with any support request:\nnpm ERR! /opt/hpccloud/hpccloud/npm-debug.log", "rc": 254, "stderr": "npm WARN deprecated css-list@0.1.3: Deprecated.\nnpm WARN deprecated node-uuid@1.4.8: Use uuid module instead\nnpm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue\nnpm WARN deprecated wrench@1.5.8: wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.\nnpm WARN deprecated babel-preset-es2015@6.6.0: 🙌 Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! \nnpm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue\nnpm WARN deprecated gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5\nnpm WARN deprecated graceful-fs@3.0.11: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js\nnpm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue\nnpm WARN deprecated graceful-fs@1.2.3: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js\nnpm WARN deprecated npmconf@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npm\nnpm WARN deprecated @semantic-release/condition-travis@4.1.4: Use semantic-release@12.0.0 instead\nnpm WARN deprecated @semantic-release/last-release-npm@1.2.1: Use @semantic-release/npm instead\nnpm WARN deprecated conventional-changelog@0.0.17: Please update conventional-changelog to >1.0.0. If you are running the cli, use conventional-changelog-cli\nnpm WARN deprecated point-geometry@0.0.0: This module has moved: please install @mapbox/point-geometry instead\nnpm WARN deprecated unitbezier@0.0.0: This module has moved: switch to @mapbox/unitbezier\nnpm WARN deprecated feature-filter@2.2.0: This package has been merged into the 'mapbox-gl-style-spec' package\nnpm WARN deprecated shelf-pack@1.1.0: This module is now under the @mapbox namespace: install @mapbox/shelf-pack instead\nnpm WARN deprecated mapbox-gl-function@1.3.0: This package has been merged with the 'mapbox-gl-style-spec' package\nnpm WARN deprecated vector-tile@1.3.0: This module has moved: please install @mapbox/vector-tile instead\nnpm WARN deprecated mapbox-gl-js-supported@1.1.0: This project has been renamed to mapbox-gl-supported. Install using mapbox-gl-supported instead.\nnpm WARN deprecated mapbox-gl-style-spec@8.11.0: This package has been replaced by @mapbox/mapbox-gl-style-spec\nnpm WARN deprecated geojson-area@0.1.0: This module is now under the @mapbox namespace: install @mapbox/geojson-area instead\nnpm WARN deprecated tough-cookie@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130\nnpm WARN deprecated babel-preset-es2015@6.16.0: 🙌 Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! \nnpm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):\nnpm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {\"os\":\"darwin\",\"arch\":\"any\"} (current: {\"os\":\"linux\",\"arch\":\"x64\"})\nnpm WARN less-loader@2.2.3 requires a peer of less@^2.3.1 but none was installed.\nnpm WARN minifyify@7.3.5 requires a peer of browserify@>= 5 but none was installed.\nnpm ERR! Linux 3.13.0-119-generic\nnpm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"install\"\nnpm ERR! node v6.11.5\nnpm ERR! npm v3.10.10\nnpm ERR! path /opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js\nnpm ERR! code ENOENT\nnpm ERR! errno -2\nnpm ERR! syscall chmod\n\nnpm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js'\nnpm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js'\nnpm ERR! enoent This is most likely not a problem with npm itself\nnpm ERR! enoent and is related to npm not being able to find a file.\nnpm ERR! enoent \n\nnpm ERR! Please include the following file with any support request:\nnpm ERR! /opt/hpccloud/hpccloud/npm-debug.log\n", "stderr_lines": ["npm WARN deprecated css-list@0.1.3: Deprecated.", "npm WARN deprecated node-uuid@1.4.8: Use uuid module instead", "npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue", "npm WARN deprecated wrench@1.5.8: wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.", "npm WARN deprecated babel-preset-es2015@6.6.0: 🙌 Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! ", "npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue", "npm WARN deprecated gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5", "npm WARN deprecated graceful-fs@3.0.11: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js", "npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue", "npm WARN deprecated graceful-fs@1.2.3: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js", "npm WARN deprecated npmconf@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npm", "npm WARN deprecated @semantic-release/condition-travis@4.1.4: Use semantic-release@12.0.0 instead", "npm WARN deprecated @semantic-release/last-release-npm@1.2.1: Use @semantic-release/npm instead", "npm WARN deprecated conventional-changelog@0.0.17: Please update conventional-changelog to >1.0.0. If you are running the cli, use conventional-changelog-cli", "npm WARN deprecated point-geometry@0.0.0: This module has moved: please install @mapbox/point-geometry instead", "npm WARN deprecated unitbezier@0.0.0: This module has moved: switch to @mapbox/unitbezier", "npm WARN deprecated feature-filter@2.2.0: This package has been merged into the 'mapbox-gl-style-spec' package", "npm WARN deprecated shelf-pack@1.1.0: This module is now under the @mapbox namespace: install @mapbox/shelf-pack instead", "npm WARN deprecated mapbox-gl-function@1.3.0: This package has been merged with the 'mapbox-gl-style-spec' package", "npm WARN deprecated vector-tile@1.3.0: This module has moved: please install @mapbox/vector-tile instead", "npm WARN deprecated mapbox-gl-js-supported@1.1.0: This project has been renamed to mapbox-gl-supported. Install using mapbox-gl-supported instead.", "npm WARN deprecated mapbox-gl-style-spec@8.11.0: This package has been replaced by @mapbox/mapbox-gl-style-spec", "npm WARN deprecated geojson-area@0.1.0: This module is now under the @mapbox namespace: install @mapbox/geojson-area instead", "npm WARN deprecated tough-cookie@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130", "npm WARN deprecated babel-preset-es2015@6.16.0: 🙌 Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! ", "npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):", "npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {\"os\":\"darwin\",\"arch\":\"any\"} (current: {\"os\":\"linux\",\"arch\":\"x64\"})", "npm WARN less-loader@2.2.3 requires a peer of less@^2.3.1 but none was installed.", "npm WARN minifyify@7.3.5 requires a peer of browserify@>= 5 but none was installed.", "npm ERR! Linux 3.13.0-119-generic", "npm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"install\"", "npm ERR! node v6.11.5", "npm ERR! npm v3.10.10", "npm ERR! path /opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js", "npm ERR! code ENOENT", "npm ERR! errno -2", "npm ERR! syscall chmod", "", "npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js'", "npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js'", "npm ERR! enoent This is most likely not a problem with npm itself", "npm ERR! enoent and is related to npm not being able to find a file.", "npm ERR! enoent ", "", "npm ERR! Please include the following file with any support request:", "npm ERR! /opt/hpccloud/hpccloud/npm-debug.log"], "stdout": "hpc-cloud@0.9.0 /opt/hpccloud/hpccloud\n├─┬ axios@0.15.3 \n│ └─┬ follow-redirects@1.0.0 \n│ └─┬ debug@2.6.9 \n│ └── ms@2.0.0 \n├─┬ babel-polyfill@6.9.1 \n│ ├─┬ babel-runtime@6.26.0 \n│ │ ├── core-js@2.5.3 \n│ │ └── regenerator-runtime@0.11.1 \n│ ├── core-js@2.5.3 \n│ └── regenerator-runtime@0.9.6 \n├── bootstrap@3.3.7 \n├─┬ candela@0.9.1 \n│ ├─┬ brace@0.7.0 \n│ │ └── w3c-blob@0.0.1 \n│ ├── d3@3.5.17 \n│ ├─┬ datalib@1.8.0 \n│ │ ├── d3-dsv@0.1.14 \n│ │ ├── d3-format@0.4.2 \n│ │ ├── d3-time@0.1.1 \n│ │ ├── d3-time-format@0.2.1 \n│ │ ├─┬ request@2.83.0 \n│ │ │ ├── aws-sign2@0.7.0 \n│ │ │ ├── aws4@1.6.0 \n│ │ │ ├── caseless@0.12.0 \n│ │ │ ├─┬ form-data@2.3.1 \n│ │ │ │ └── asynckit@0.4.0 \n│ │ │ ├─┬ har-validator@5.0.3 \n│ │ │ │ ├─┬ ajv@5.5.2 \n│ │ │ │ │ ├── fast-deep-equal@1.0.0 \n│ │ │ │ │ ├── fast-json-stable-stringify@2.0.0 \n│ │ │ │ │ └── json-schema-traverse@0.3.1 \n│ │ │ │ └── har-schema@2.0.0 \n│ │ │ ├─┬ hawk@6.0.2 \n│ │ │ │ ├── boom@4.3.1 \n│ │ │ │ ├─┬ cryptiles@3.1.2 \n│ │ │ │ │ └── boom@5.2.0 \n│ │ │ │ ├── hoek@4.2.0 \n│ │ │ │ └── sntp@2.1.0 \n│ │ │ ├─┬ http-signature@1.2.0 \n│ │ │ │ └── assert-plus@1.0.0 \n│ │ │ ├── performance-now@2.1.0 \n│ │ │ ├── safe-buffer@5.1.1 \n│ │ │ ├── tunnel-agent@0.6.0 \n│ │ │ └── uuid@3.2.1 \n│ │ ├─┬ sync-request@2.2.0 \n│ │ │ ├── http-response-object@1.1.0 \n│ │ │ ├─┬ spawn-sync@1.0.15 \n│ │ │ │ └── os-shim@0.1.3 \n│ │ │ └─┬ then-request@2.2.0 \n│ │ │ ├── caseless@0.11.0 \n│ │ │ └─┬ http-basic@2.5.1 \n│ │ │ └── caseless@0.11.0 \n│ │ └─┬ topojson@1.6.27 \n│ │ ├── d3-queue@2.0.3 \n│ │ ├── optimist@0.3.7 \n│ │ ├── rw@1.3.3 \n│ │ └─┬ shapefile@0.3.1 \n│ │ ├── d3-queue@1.2.3 \n│ │ └── iconv-lite@0.2.11 \n│ ├─┬ font-awesome-webpack@0.0.4 \n│ │ ├─┬ css-loader@0.17.0 \n│ │ │ ├─┬ postcss@4.1.16 \n│ │ │ │ ├── es6-promise@2.3.0 \n│ │ │ │ └── source-map@0.4.4 \n│ │ │ ├── postcss-modules-extract-imports@0.0.5 \n│ │ │ ├── postcss-modules-local-by-default@0.0.12 \n│ │ │ └── postcss-modules-scope@0.0.8 \n│ │ ├── UNMET PEER DEPENDENCY less@^2.3.1\n│ │ ├── less-loader@2.2.3 \n│ │ └── style-loader@0.12.4 \n│ ├── is_js@0.9.0 \n│ ├── jquery@2.2.4 \n│ ├── jquery-deparam@0.5.3 \n│ ├── LineUpJS@0.2.0 (git+https://github.com/Caleydo/lineup.js.git#0cd7f3f2ad06c498c09612daf5f3e2a36c07536d)\n│ ├── onset@0.3.0 (git+https://github.com/Kitware/setvis.git#506bfccff63b0c8f5c39a81d299ed310e5e8fbff)\n│ ├── underscore@1.8.3 \n│ ├── UpSet@0.0.1 (git+https://github.com/VCG/upset.git#6e8b7a172443dd6b4f4324d1a3368287e9e9c089)\n│ └─┬ vega@2.6.5 \n│ ├── canvas@1.6.9 \n│ ├─┬ d3-cloud@1.2.4 \n│ │ └── d3-dispatch@1.0.3 \n│ ├─┬ d3-geo-projection@0.2.16 \n│ │ └─┬ brfs@1.4.3 \n│ │ ├─┬ quote-stream@1.0.2 \n│ │ │ └── buffer-equal@0.0.1 \n│ │ └── through2@2.0.3 \n│ ├── vega-dataflow@1.4.3 \n│ ├── vega-event-selector@1.1.0 \n│ ├── vega-expression@1.2.1 \n│ ├── vega-logging@1.0.2 \n│ ├── vega-scenegraph@1.1.0 \n│ └─┬ yargs@3.32.0 \n│ ├── camelcase@2.1.1 \n│ ├─┬ cliui@3.2.0 \n│ │ └── wrap-ansi@2.1.0 \n│ ├── decamelize@1.2.0 \n│ ├─┬ os-locale@1.4.0 \n│ │ └─┬ lcid@1.0.0 \n│ │ └── invert-kv@1.0.0 \n│ ├─┬ string-width@1.0.2 \n│ │ ├── code-point-at@1.1.0 \n│ │ └─┬ is-fullwidth-code-point@1.0.0 \n│ │ └── number-is-nan@1.0.1 \n│ ├── window-size@0.1.4 \n│ └── y18n@3.2.1 \n├─┬ codecov.io@0.1.6 \n│ ├─┬ request@2.42.0 \n│ │ ├── aws-sign2@0.5.0 \n│ │ ├─┬ bl@0.9.5 \n│ │ │ └─┬ readable-stream@1.0.34 \n│ │ │ ├── isarray@0.0.1 \n│ │ │ └── string_decoder@0.10.31 \n│ │ ├── caseless@0.6.0 \n│ │ ├── forever-agent@0.5.2 \n│ │ ├─┬ form-data@0.1.4 \n│ │ │ └─┬ combined-stream@0.0.7 \n│ │ │ └── delayed-stream@0.0.5 \n│ │ ├─┬ hawk@1.1.1 \n│ │ │ ├── boom@0.4.2 \n│ │ │ ├── cryptiles@0.2.2 \n│ │ │ ├── hoek@0.9.1 \n│ │ │ └── sntp@0.2.4 \n│ │ ├─┬ http-signature@0.10.1 \n│ │ │ ├── asn1@0.1.11 \n│ │ │ ├── assert-plus@0.1.5 \n│ │ │ └── ctype@0.5.3 \n│ │ ├── json-stringify-safe@5.0.1 \n│ │ ├── mime-types@1.0.2 \n│ │ ├── node-uuid@1.4.8 \n│ │ ├── oauth-sign@0.4.0 \n│ │ ├── qs@1.2.2 \n│ │ ├── stringstream@0.0.5 \n│ │ ├── tough-cookie@2.3.3 \n│ │ └── tunnel-agent@0.4.3 \n│ └─┬ urlgrey@0.4.0 \n│ └─┬ tape@2.3.0 \n│ ├── deep-equal@0.1.2 \n│ ├── defined@0.0.0 \n│ ├── jsonify@0.0.0 \n│ ├── resumer@0.0.0 \n│ ├── split@0.2.10 \n│ ├─┬ stream-combiner@0.0.4 \n│ │ └── duplexer@0.1.1 \n│ └── through@2.3.8 \n├─┬ commander@2.9.0 \n│ └── graceful-readlink@1.0.1 \n├─┬ expect@1.20.1 \n│ ├─┬ define-properties@1.1.2 \n│ │ └── foreach@2.0.5 \n│ ├─┬ has@1.0.1 \n│ │ └── function-bind@1.1.1 \n│ ├─┬ is-equal@1.5.5 \n│ │ ├── is-arrow-function@2.0.3 \n│ │ ├── is-boolean-object@1.0.0 \n│ │ ├── is-callable@1.1.3 \n│ │ ├── is-date-object@1.0.1 \n│ │ ├── is-generator-function@1.0.7 \n│ │ ├── is-number-object@1.0.3 \n│ │ ├── is-string@1.0.4 \n│ │ ├── is-symbol@1.0.1 \n│ │ └─┬ object.entries@1.0.4 \n│ │ └─┬ es-abstract@1.10.0 \n│ │ └── es-to-primitive@1.1.1 \n│ ├── is-regex@1.0.4 \n│ ├── object-inspect@1.5.0 \n│ ├── object-keys@1.0.11 \n│ └── tmatch@2.0.1 \n├── font-awesome@4.7.0 \n├── gl-matrix@2.3.1 \n├── hammerjs@2.0.6 \n├─┬ istanbul-instrumenter-loader@0.2.0 \n│ ├─┬ istanbul@0.4.5 \n│ │ ├── abbrev@1.0.9 \n│ │ ├── async@1.5.2 \n│ │ ├─┬ escodegen@1.8.1 \n│ │ │ ├── estraverse@1.9.3 \n│ │ │ ├── esutils@2.0.2 \n│ │ │ └── source-map@0.2.0 \n│ │ ├── esprima@2.7.3 \n│ │ ├── glob@5.0.15 \n│ │ ├─┬ handlebars@4.0.11 \n│ │ │ ├── async@1.5.2 \n│ │ │ ├─┬ optimist@0.6.1 \n│ │ │ │ └── minimist@0.0.10 \n│ │ │ └── source-map@0.4.4 \n│ │ ├─┬ js-yaml@3.10.0 \n│ │ │ ├─┬ argparse@1.0.9 \n│ │ │ │ └── sprintf-js@1.0.3 \n│ │ │ └── esprima@4.0.0 \n│ │ ├─┬ mkdirp@0.5.1 \n│ │ │ └── minimist@0.0.8 \n│ │ ├── nopt@3.0.6 \n│ │ ├─┬ once@1.4.0 \n│ │ │ └── wrappy@1.0.2 \n│ │ ├── resolve@1.1.7 \n│ │ ├─┬ supports-color@3.2.3 \n│ │ │ └── has-flag@1.0.0 \n│ │ ├── which@1.3.0 \n│ │ └── wordwrap@1.0.0 \n│ ├─┬ loader-utils@0.2.17 \n│ │ ├── big.js@3.2.0 \n│ │ ├── emojis-list@2.1.0 \n│ │ └── json5@0.5.1 \n│ └── object-assign@4.1.1 \n├─┬ jasmine@2.4.1 \n│ ├── exit@0.1.2 \n│ ├─┬ glob@3.2.11 \n│ │ ├── inherits@2.0.3 \n│ │ └─┬ minimatch@0.3.0 \n│ │ ├── lru-cache@2.7.3 \n│ │ └── sigmund@1.0.1 \n│ └── jasmine-core@2.4.1 \n├─┬ karma@0.13.22 \n│ ├── batch@0.5.3 \n│ ├── bluebird@2.11.0 \n│ ├─┬ body-parser@1.18.2 \n│ │ ├── bytes@3.0.0 \n│ │ ├── content-type@1.0.4 \n│ │ ├── depd@1.1.2 \n│ │ ├─┬ http-errors@1.6.2 \n│ │ │ ├── depd@1.1.1 \n│ │ │ ├── setprototypeof@1.0.3 \n│ │ │ └── statuses@1.4.0 \n│ │ ├── iconv-lite@0.4.19 \n│ │ ├─┬ on-finished@2.3.0 \n│ │ │ └── ee-first@1.1.1 \n│ │ ├── qs@6.5.1 \n│ │ ├─┬ raw-body@2.3.2 \n│ │ │ └── unpipe@1.0.0 \n│ │ └─┬ type-is@1.6.15 \n│ │ └── media-typer@0.3.0 \n│ ├─┬ chokidar@1.7.0 \n│ │ ├─┬ anymatch@1.3.2 \n│ │ │ ├─┬ micromatch@2.3.11 \n│ │ │ │ ├─┬ arr-diff@2.0.0 \n│ │ │ │ │ └── arr-flatten@1.1.0 \n│ │ │ │ ├─┬ braces@1.8.5 \n│ │ │ │ │ ├─┬ expand-range@1.8.2 \n│ │ │ │ │ │ └─┬ fill-range@2.2.3 \n│ │ │ │ │ │ ├── is-number@2.1.0 \n│ │ │ │ │ │ ├── isobject@2.1.0 \n│ │ │ │ │ │ ├─┬ randomatic@1.1.7 \n│ │ │ │ │ │ │ ├─┬ is-number@3.0.0 \n│ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ └── kind-of@4.0.0 \n│ │ │ │ │ │ └── repeat-string@1.6.1 \n│ │ │ │ │ ├── preserve@0.2.0 \n│ │ │ │ │ └── repeat-element@1.1.2 \n│ │ │ │ ├─┬ expand-brackets@0.1.5 \n│ │ │ │ │ └── is-posix-bracket@0.1.1 \n│ │ │ │ ├── extglob@0.3.2 \n│ │ │ │ ├── filename-regex@2.0.1 \n│ │ │ │ ├─┬ kind-of@3.2.2 \n│ │ │ │ │ └── is-buffer@1.1.6 \n│ │ │ │ ├─┬ object.omit@2.0.1 \n│ │ │ │ │ ├─┬ for-own@0.1.5 \n│ │ │ │ │ │ └── for-in@1.0.2 \n│ │ │ │ │ └── is-extendable@0.1.1 \n│ │ │ │ ├─┬ parse-glob@3.0.4 \n│ │ │ │ │ ├── glob-base@0.3.0 \n│ │ │ │ │ └── is-dotfile@1.0.3 \n│ │ │ │ └─┬ regex-cache@0.4.4 \n│ │ │ │ └─┬ is-equal-shallow@0.1.3 \n│ │ │ │ └── is-primitive@2.0.0 \n│ │ │ └─┬ normalize-path@2.1.1 \n│ │ │ └── remove-trailing-separator@1.1.0 \n│ │ ├── async-each@1.0.1 \n│ │ ├── glob-parent@2.0.0 \n│ │ ├─┬ is-binary-path@1.0.1 \n│ │ │ └── binary-extensions@1.11.0 \n│ │ ├─┬ is-glob@2.0.1 \n│ │ │ └── is-extglob@1.0.0 \n│ │ ├── path-is-absolute@1.0.1 \n│ │ └─┬ readdirp@2.1.0 \n│ │ └── set-immediate-shim@1.0.1 \n│ ├── colors@1.1.2 \n│ ├─┬ connect@3.6.5 \n│ │ ├─┬ finalhandler@1.0.6 \n│ │ │ └── statuses@1.3.1 \n│ │ ├── parseurl@1.3.2 \n│ │ └── utils-merge@1.0.1 \n│ ├── core-js@2.5.3 \n│ ├── di@0.0.1 \n│ ├─┬ dom-serialize@2.2.1 \n│ │ ├── custom-event@1.0.1 \n│ │ ├── ent@2.2.0 \n│ │ ├── extend@3.0.1 \n│ │ └── void-elements@2.0.1 \n│ ├─┬ expand-braces@0.1.2 \n│ │ ├── array-slice@0.2.3 \n│ │ ├── array-unique@0.2.1 \n│ │ └─┬ braces@0.1.5 \n│ │ └─┬ expand-range@0.1.1 \n│ │ ├── is-number@0.1.1 \n│ │ └── repeat-string@0.2.2 \n│ ├─┬ glob@7.1.2 \n│ │ ├── fs.realpath@1.0.0 \n│ │ └── inflight@1.0.6 \n│ ├── graceful-fs@4.1.11 \n│ ├─┬ http-proxy@1.16.2 \n│ │ ├── eventemitter3@1.2.0 \n│ │ └── requires-port@1.0.0 \n│ ├── isbinaryfile@3.0.2 \n│ ├── lodash@3.10.1 \n│ ├─┬ log4js@0.6.38 \n│ │ ├─┬ readable-stream@1.0.34 \n│ │ │ ├── core-util-is@1.0.2 \n│ │ │ ├── isarray@0.0.1 \n│ │ │ └── string_decoder@0.10.31 \n│ │ └── semver@4.3.6 \n│ ├── mime@1.6.0 \n│ ├─┬ minimatch@3.0.4 \n│ │ └─┬ brace-expansion@1.1.8 \n│ │ ├── balanced-match@1.0.0 \n│ │ └── concat-map@0.0.1 \n│ ├─┬ optimist@0.6.1 \n│ │ ├── minimist@0.0.10 \n│ │ └── wordwrap@0.0.3 \n│ ├── rimraf@2.6.2 \n│ ├─┬ socket.io@1.7.4 \n│ │ ├─┬ debug@2.3.3 \n│ │ │ └── ms@0.7.2 \n│ │ ├─┬ engine.io@1.8.5 \n│ │ │ ├── base64id@1.0.0 \n│ │ │ ├─┬ debug@2.3.3 \n│ │ │ │ └── ms@0.7.2 \n│ │ │ ├─┬ engine.io-parser@1.3.2 \n│ │ │ │ ├── after@0.8.2 \n│ │ │ │ ├── arraybuffer.slice@0.0.6 \n│ │ │ │ ├── base64-arraybuffer@0.1.5 \n│ │ │ │ ├── blob@0.0.4 \n│ │ │ │ └── wtf-8@1.0.0 \n│ │ │ └── ws@1.1.5 \n│ │ ├─┬ has-binary@0.1.7 \n│ │ │ └── isarray@0.0.1 \n│ │ ├── object-assign@4.1.0 \n│ │ ├─┬ socket.io-adapter@0.5.0 \n│ │ │ └─┬ debug@2.3.3 \n│ │ │ └── ms@0.7.2 \n│ │ ├─┬ socket.io-client@1.7.4 \n│ │ │ ├── backo2@1.0.2 \n│ │ │ ├── component-bind@1.0.0 \n│ │ │ ├── component-emitter@1.2.1 \n│ │ │ ├─┬ debug@2.3.3 \n│ │ │ │ └── ms@0.7.2 \n│ │ │ ├─┬ engine.io-client@1.8.5 \n│ │ │ │ ├── component-emitter@1.2.1 \n│ │ │ │ ├── component-inherit@0.0.3 \n│ │ │ │ ├─┬ debug@2.3.3 \n│ │ │ │ │ └── ms@0.7.2 \n│ │ │ │ ├── has-cors@1.1.0 \n│ │ │ │ ├── parsejson@0.0.3 \n│ │ │ │ ├── parseqs@0.0.5 \n│ │ │ │ ├── ws@1.1.5 \n│ │ │ │ ├── xmlhttprequest-ssl@1.5.3 \n│ │ │ │ └── yeast@0.1.2 \n│ │ │ ├── indexof@0.0.1 \n│ │ │ ├── object-component@0.0.3 \n│ │ │ ├─┬ parseuri@0.0.5 \n│ │ │ │ └─┬ better-assert@1.0.2 \n│ │ │ │ └── callsite@1.0.0 \n│ │ │ └── to-array@0.1.4 \n│ │ └─┬ socket.io-parser@2.3.1 \n│ │ ├── component-emitter@1.1.2 \n│ │ ├─┬ debug@2.2.0 \n│ │ │ └── ms@0.7.1 \n│ │ ├── isarray@0.0.1 \n│ │ └── json3@3.3.2 \n│ ├── source-map@0.5.7 \n│ └─┬ useragent@2.2.1 \n│ ├── lru-cache@2.2.4 \n│ └─┬ tmp@0.0.33 \n│ └── os-tmpdir@1.0.2 \n├─┬ karma-coverage@1.0.0 \n│ ├─┬ dateformat@1.0.12 \n│ │ ├── get-stdin@4.0.1 \n│ │ └─┬ meow@3.7.0 \n│ │ ├── camelcase-keys@2.1.0 \n│ │ ├─┬ loud-rejection@1.6.0 \n│ │ │ ├─┬ currently-unhandled@0.4.1 \n│ │ │ │ └── array-find-index@1.0.2 \n│ │ │ └── signal-exit@3.0.2 \n│ │ ├── map-obj@1.0.1 \n│ │ ├─┬ normalize-package-data@2.4.0 \n│ │ │ ├── hosted-git-info@2.5.0 \n│ │ │ ├── is-builtin-module@1.0.0 \n│ │ │ └─┬ validate-npm-package-license@3.0.1 \n│ │ │ ├─┬ spdx-correct@1.0.2 \n│ │ │ │ └── spdx-license-ids@1.2.2 \n│ │ │ └── spdx-expression-parse@1.0.4 \n│ │ ├─┬ read-pkg-up@1.0.1 \n│ │ │ └─┬ read-pkg@1.1.0 \n│ │ │ ├─┬ load-json-file@1.1.0 \n│ │ │ │ ├─┬ parse-json@2.2.0 \n│ │ │ │ │ └─┬ error-ex@1.3.1 \n│ │ │ │ │ └── is-arrayish@0.2.1 \n│ │ │ │ └── strip-bom@2.0.0 \n│ │ │ └── path-type@1.1.0 \n│ │ ├─┬ redent@1.0.0 \n│ │ │ ├── indent-string@2.1.0 \n│ │ │ └── strip-indent@1.0.1 \n│ │ └── trim-newlines@1.0.0 \n│ └── source-map@0.5.7 \n├── karma-jasmine@1.0.2 \n├─┬ karma-phantomjs-launcher@1.0.0 \n│ └── lodash@4.17.4 \n├── karma-sourcemap-loader@0.3.7 \n├─┬ karma-spec-reporter@0.0.26 \n│ └── colors@0.6.2 \n├─┬ karma-webpack@1.7.0 \n│ ├── async@0.9.2 \n│ ├── lodash@3.10.1 \n│ ├─┬ source-map@0.1.43 \n│ │ └── amdefine@1.0.1 \n│ └─┬ webpack-dev-middleware@1.12.2 \n│ ├─┬ memory-fs@0.4.1 \n│ │ └─┬ errno@0.1.6 \n│ │ └── prr@1.0.1 \n│ ├── mime@1.6.0 \n│ ├── range-parser@1.2.0 \n│ └── time-stamp@2.0.0 \n├─┬ kw-doc@1.0.18 \n│ ├─┬ gh-pages@0.10.0 \n│ │ ├── async@1.5.2 \n│ │ ├── glob@7.0.6 \n│ │ ├── graceful-fs@4.1.2 \n│ │ ├── q@1.4.1 \n│ │ ├─┬ q-io@1.13.2 \n│ │ │ ├─┬ collections@0.2.2 \n│ │ │ │ └── weak-map@1.0.0 \n│ │ │ ├── mimeparse@0.1.4 \n│ │ │ ├── qs@1.2.2 \n│ │ │ └── url2@0.0.0 \n│ │ └── wrench@1.5.8 \n│ └── shelljs@0.7.4 \n├─┬ kw-web-suite@2.0.0 \n│ ├─┬ autoprefixer@6.3.6 \n│ │ ├── browserslist@1.3.6 \n│ │ ├── caniuse-db@1.0.30000793 \n│ │ ├── normalize-range@0.1.2 \n│ │ ├── num2fraction@1.2.2 \n│ │ ├─┬ postcss@5.2.18 \n│ │ │ ├── js-base64@2.1.9 \n│ │ │ └── source-map@0.5.7 \n│ │ └── postcss-value-parser@3.3.0 \n│ ├─┬ babel-core@6.8.0 \n│ │ ├─┬ babel-code-frame@6.26.0 \n│ │ │ └── esutils@2.0.2 \n│ │ ├─┬ babel-generator@6.26.0 \n│ │ │ ├── jsesc@1.3.0 \n│ │ │ ├── source-map@0.5.7 \n│ │ │ └── trim-right@1.0.1 \n│ │ ├── babel-helpers@6.24.1 \n│ │ ├── babel-messages@6.23.0 \n│ │ ├─┬ babel-register@6.26.0 \n│ │ │ ├─┬ babel-core@6.26.0 \n│ │ │ │ └── source-map@0.5.7 \n│ │ │ ├── core-js@2.5.3 \n│ │ │ └─┬ source-map-support@0.4.18 \n│ │ │ └── source-map@0.5.7 \n│ │ ├── babel-template@6.26.0 \n│ │ ├── babel-traverse@6.26.0 \n│ │ ├─┬ babel-types@6.26.0 \n│ │ │ ├── esutils@2.0.2 \n│ │ │ └── to-fast-properties@1.0.3 \n│ │ ├── babylon@6.18.0 \n│ │ ├── convert-source-map@1.5.1 \n│ │ ├── json5@0.4.0 \n│ │ ├── lodash@3.10.1 \n│ │ ├── minimatch@2.0.10 \n│ │ ├── path-exists@1.0.0 \n│ │ ├── private@0.1.8 \n│ │ ├── shebang-regex@1.0.0 \n│ │ ├── slash@1.0.0 \n│ │ └── source-map@0.5.7 \n│ ├─┬ babel-eslint@6.0.4 \n│ │ ├── lodash.assign@4.2.0 \n│ │ └── lodash.pickby@4.6.0 \n│ ├── babel-loader@6.2.4 \n│ ├─┬ babel-polyfill@6.8.0 \n│ │ ├── babel-regenerator-runtime@6.5.0 \n│ │ └── core-js@2.5.3 \n│ ├─┬ babel-preset-es2015@6.6.0 \n│ │ ├── babel-plugin-check-es2015-constants@6.22.0 \n│ │ ├── babel-plugin-transform-es2015-arrow-functions@6.22.0 \n│ │ ├── babel-plugin-transform-es2015-block-scoped-functions@6.22.0 \n│ │ ├── babel-plugin-transform-es2015-block-scoping@6.26.0 \n│ │ ├─┬ babel-plugin-transform-es2015-classes@6.24.1 \n│ │ │ ├── babel-helper-define-map@6.26.0 \n│ │ │ ├── babel-helper-function-name@6.24.1 \n│ │ │ ├── babel-helper-optimise-call-expression@6.24.1 \n│ │ │ └── babel-helper-replace-supers@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-computed-properties@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-destructuring@6.23.0 \n│ │ ├── babel-plugin-transform-es2015-duplicate-keys@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-for-of@6.23.0 \n│ │ ├── babel-plugin-transform-es2015-function-name@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-literals@6.22.0 \n│ │ ├─┬ babel-plugin-transform-es2015-modules-commonjs@6.26.0 \n│ │ │ └── babel-plugin-transform-strict-mode@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-object-super@6.24.1 \n│ │ ├─┬ babel-plugin-transform-es2015-parameters@6.24.1 \n│ │ │ ├── babel-helper-call-delegate@6.24.1 \n│ │ │ └── babel-helper-get-function-arity@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-shorthand-properties@6.24.1 \n│ │ ├── babel-plugin-transform-es2015-spread@6.22.0 \n│ │ ├─┬ babel-plugin-transform-es2015-sticky-regex@6.24.1 \n│ │ │ └── babel-helper-regex@6.26.0 \n│ │ ├── babel-plugin-transform-es2015-template-literals@6.22.0 \n│ │ ├── babel-plugin-transform-es2015-typeof-symbol@6.23.0 \n│ │ ├─┬ babel-plugin-transform-es2015-unicode-regex@6.24.1 \n│ │ │ └─┬ regexpu-core@2.0.0 \n│ │ │ ├── regenerate@1.3.3 \n│ │ │ ├── regjsgen@0.2.0 \n│ │ │ └─┬ regjsparser@0.1.5 \n│ │ │ └── jsesc@0.5.0 \n│ │ └─┬ babel-plugin-transform-regenerator@6.26.0 \n│ │ └── regenerator-transform@0.10.1 \n│ ├─┬ babel-preset-react@6.5.0 \n│ │ ├── babel-plugin-syntax-flow@6.18.0 \n│ │ ├── babel-plugin-syntax-jsx@6.18.0 \n│ │ ├── babel-plugin-transform-flow-strip-types@6.22.0 \n│ │ ├── babel-plugin-transform-react-display-name@6.25.0 \n│ │ ├─┬ babel-plugin-transform-react-jsx@6.24.1 \n│ │ │ └─┬ babel-helper-builder-react-jsx@6.26.0 \n│ │ │ └── esutils@2.0.2 \n│ │ └── babel-plugin-transform-react-jsx-source@6.22.0 \n│ ├─┬ commitizen@2.8.1 \n│ │ ├─┬ chalk@1.1.3 \n│ │ │ ├── ansi-styles@2.2.1 \n│ │ │ ├── escape-string-regexp@1.0.5 \n│ │ │ ├── has-ansi@2.0.0 \n│ │ │ └── supports-color@2.0.0 \n│ │ ├── dedent@0.6.0 \n│ │ ├─┬ detect-indent@4.0.0 \n│ │ │ └─┬ repeating@2.0.1 \n│ │ │ └── is-finite@1.0.2 \n│ │ ├─┬ find-node-modules@1.0.1 \n│ │ │ ├─┬ findup-sync@0.2.1 \n│ │ │ │ └─┬ glob@4.3.5 \n│ │ │ │ └── minimatch@2.0.10 \n│ │ │ └── merge@1.2.0 \n│ │ ├── find-root@1.1.0 \n│ │ ├── glob@7.0.3 \n│ │ ├─┬ gulp@3.9.1 \n│ │ │ ├── archy@1.0.0 \n│ │ │ ├── deprecated@0.0.1 \n│ │ │ ├─┬ gulp-util@3.0.8 \n│ │ │ │ ├── array-differ@1.0.0 \n│ │ │ │ ├── array-uniq@1.0.3 \n│ │ │ │ ├── beeper@1.1.1 \n│ │ │ │ ├── dateformat@2.2.0 \n│ │ │ │ ├─┬ fancy-log@1.3.2 \n│ │ │ │ │ ├─┬ ansi-gray@0.1.1 \n│ │ │ │ │ │ └── ansi-wrap@0.1.0 \n│ │ │ │ │ ├── color-support@1.1.3 \n│ │ │ │ │ └── time-stamp@1.1.0 \n│ │ │ │ ├─┬ gulplog@1.0.0 \n│ │ │ │ │ └── glogg@1.0.0 \n│ │ │ │ ├─┬ has-gulplog@0.1.0 \n│ │ │ │ │ └── sparkles@1.0.0 \n│ │ │ │ ├── lodash._reescape@3.0.0 \n│ │ │ │ ├── lodash._reevaluate@3.0.0 \n│ │ │ │ ├── lodash._reinterpolate@3.0.0 \n│ │ │ │ ├─┬ lodash.template@3.6.2 \n│ │ │ │ │ ├── lodash._basecopy@3.0.1 \n│ │ │ │ │ ├── lodash._basetostring@3.0.1 \n│ │ │ │ │ ├── lodash._basevalues@3.0.0 \n│ │ │ │ │ ├── lodash._isiterateecall@3.0.9 \n│ │ │ │ │ ├── lodash.escape@3.2.0 \n│ │ │ │ │ ├─┬ lodash.keys@3.1.2 \n│ │ │ │ │ │ ├── lodash._getnative@3.9.1 \n│ │ │ │ │ │ └── lodash.isarguments@3.1.0 \n│ │ │ │ │ ├── lodash.restparam@3.6.1 \n│ │ │ │ │ └── lodash.templatesettings@3.1.1 \n│ │ │ │ ├─┬ multipipe@0.1.2 \n│ │ │ │ │ └─┬ duplexer2@0.0.2 \n│ │ │ │ │ └─┬ readable-stream@1.1.14 \n│ │ │ │ │ ├── isarray@0.0.1 \n│ │ │ │ │ └── string_decoder@0.10.31 \n│ │ │ │ ├── object-assign@3.0.0 \n│ │ │ │ ├── replace-ext@0.0.1 \n│ │ │ │ └─┬ vinyl@0.5.3 \n│ │ │ │ └── clone-stats@0.0.1 \n│ │ │ ├─┬ liftoff@2.5.0 \n│ │ │ │ ├─┬ findup-sync@2.0.0 \n│ │ │ │ │ ├── detect-file@1.0.0 \n│ │ │ │ │ ├─┬ is-glob@3.1.0 \n│ │ │ │ │ │ └── is-extglob@2.1.1 \n│ │ │ │ │ ├─┬ micromatch@3.1.5 \n│ │ │ │ │ │ ├── arr-diff@4.0.0 \n│ │ │ │ │ │ ├── array-unique@0.3.2 \n│ │ │ │ │ │ ├─┬ braces@2.3.0 \n│ │ │ │ │ │ │ ├─┬ fill-range@4.0.0 \n│ │ │ │ │ │ │ │ ├─┬ is-number@3.0.0 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ └─┬ to-regex-range@2.1.1 \n│ │ │ │ │ │ │ │ └── is-number@3.0.0 \n│ │ │ │ │ │ │ ├── isobject@3.0.1 \n│ │ │ │ │ │ │ ├─┬ snapdragon-node@2.1.1 \n│ │ │ │ │ │ │ │ ├── isobject@3.0.1 \n│ │ │ │ │ │ │ │ └── snapdragon-util@3.0.1 \n│ │ │ │ │ │ │ └─┬ split-string@3.1.0 \n│ │ │ │ │ │ │ └─┬ extend-shallow@3.0.2 \n│ │ │ │ │ │ │ ├── assign-symbols@1.0.0 \n│ │ │ │ │ │ │ └── is-extendable@1.0.1 \n│ │ │ │ │ │ ├─┬ define-property@1.0.0 \n│ │ │ │ │ │ │ └─┬ is-descriptor@1.0.2 \n│ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@1.0.0 \n│ │ │ │ │ │ │ │ └── kind-of@6.0.2 \n│ │ │ │ │ │ │ ├─┬ is-data-descriptor@1.0.0 \n│ │ │ │ │ │ │ │ └── kind-of@6.0.2 \n│ │ │ │ │ │ │ └── kind-of@6.0.2 \n│ │ │ │ │ │ ├── extend-shallow@2.0.1 \n│ │ │ │ │ │ ├─┬ extglob@2.0.4 \n│ │ │ │ │ │ │ └─┬ expand-brackets@2.1.4 \n│ │ │ │ │ │ │ ├─┬ define-property@0.2.5 \n│ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ │ └── posix-character-classes@0.1.1 \n│ │ │ │ │ │ ├── fragment-cache@0.2.1 \n│ │ │ │ │ │ ├── kind-of@6.0.2 \n│ │ │ │ │ │ ├─┬ nanomatch@1.2.7 \n│ │ │ │ │ │ │ ├── arr-diff@4.0.0 \n│ │ │ │ │ │ │ ├── array-unique@0.3.2 \n│ │ │ │ │ │ │ ├─┬ is-odd@1.0.0 \n│ │ │ │ │ │ │ │ └── is-number@3.0.0 \n│ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ ├── regex-not@1.0.0 \n│ │ │ │ │ │ ├─┬ snapdragon@0.8.1 \n│ │ │ │ │ │ │ ├─┬ base@0.11.2 \n│ │ │ │ │ │ │ │ ├─┬ cache-base@1.0.1 \n│ │ │ │ │ │ │ │ │ ├─┬ collection-visit@1.0.0 \n│ │ │ │ │ │ │ │ │ │ ├── map-visit@1.0.0 \n│ │ │ │ │ │ │ │ │ │ └─┬ object-visit@1.0.1 \n│ │ │ │ │ │ │ │ │ │ └── isobject@3.0.1 \n│ │ │ │ │ │ │ │ │ ├── component-emitter@1.2.1 \n│ │ │ │ │ │ │ │ │ ├── get-value@2.0.6 \n│ │ │ │ │ │ │ │ │ ├─┬ has-value@1.0.0 \n│ │ │ │ │ │ │ │ │ │ ├─┬ has-values@1.0.0 \n│ │ │ │ │ │ │ │ │ │ │ ├─┬ is-number@3.0.0 \n│ │ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ │ │ │ └── kind-of@4.0.0 \n│ │ │ │ │ │ │ │ │ │ └── isobject@3.0.1 \n│ │ │ │ │ │ │ │ │ ├── isobject@3.0.1 \n│ │ │ │ │ │ │ │ │ ├── set-value@2.0.0 \n│ │ │ │ │ │ │ │ │ ├── to-object-path@0.3.0 \n│ │ │ │ │ │ │ │ │ ├─┬ union-value@1.0.0 \n│ │ │ │ │ │ │ │ │ │ └── set-value@0.4.3 \n│ │ │ │ │ │ │ │ │ └─┬ unset-value@1.0.0 \n│ │ │ │ │ │ │ │ │ ├─┬ has-value@0.3.1 \n│ │ │ │ │ │ │ │ │ │ ├── has-values@0.1.4 \n│ │ │ │ │ │ │ │ │ │ └── isobject@2.1.0 \n│ │ │ │ │ │ │ │ │ └── isobject@3.0.1 \n│ │ │ │ │ │ │ │ ├─┬ class-utils@0.3.6 \n│ │ │ │ │ │ │ │ │ ├── arr-union@3.1.0 \n│ │ │ │ │ │ │ │ │ ├─┬ define-property@0.2.5 \n│ │ │ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ │ │ │ ├── isobject@3.0.1 \n│ │ │ │ │ │ │ │ │ └─┬ static-extend@0.1.2 \n│ │ │ │ │ │ │ │ │ ├─┬ define-property@0.2.5 \n│ │ │ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ │ │ │ └─┬ object-copy@0.1.0 \n│ │ │ │ │ │ │ │ │ ├── copy-descriptor@0.1.1 \n│ │ │ │ │ │ │ │ │ └─┬ define-property@0.2.5 \n│ │ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ ├── is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ ├── is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ │ │ ├── component-emitter@1.2.1 \n│ │ │ │ │ │ │ │ ├── isobject@3.0.1 \n│ │ │ │ │ │ │ │ ├─┬ mixin-deep@1.3.0 \n│ │ │ │ │ │ │ │ │ └── is-extendable@1.0.1 \n│ │ │ │ │ │ │ │ └── pascalcase@0.1.1 \n│ │ │ │ │ │ │ ├─┬ define-property@0.2.5 \n│ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ │ ├── source-map@0.5.7 \n│ │ │ │ │ │ │ ├─┬ source-map-resolve@0.5.1 \n│ │ │ │ │ │ │ │ ├── atob@2.0.3 \n│ │ │ │ │ │ │ │ ├── decode-uri-component@0.2.0 \n│ │ │ │ │ │ │ │ ├── resolve-url@0.2.1 \n│ │ │ │ │ │ │ │ ├── source-map-url@0.4.0 \n│ │ │ │ │ │ │ │ └── urix@0.1.0 \n│ │ │ │ │ │ │ └─┬ use@2.0.2 \n│ │ │ │ │ │ │ ├─┬ define-property@0.2.5 \n│ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ │ │ ├── isobject@3.0.1 \n│ │ │ │ │ │ │ └─┬ lazy-cache@2.0.2 \n│ │ │ │ │ │ │ └── set-getter@0.1.0 \n│ │ │ │ │ │ └─┬ to-regex@3.0.1 \n│ │ │ │ │ │ └─┬ define-property@0.2.5 \n│ │ │ │ │ │ └─┬ is-descriptor@0.1.6 \n│ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 \n│ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 \n│ │ │ │ │ │ │ └── kind-of@3.2.2 \n│ │ │ │ │ │ └── kind-of@5.1.0 \n│ │ │ │ │ └─┬ resolve-dir@1.0.1 \n│ │ │ │ │ └─┬ global-modules@1.0.0 \n│ │ │ │ │ └── global-prefix@1.0.2 \n│ │ │ │ ├─┬ fined@1.1.0 \n│ │ │ │ │ ├─┬ expand-tilde@2.0.2 \n│ │ │ │ │ │ └─┬ homedir-polyfill@1.0.1 \n│ │ │ │ │ │ └── parse-passwd@1.0.0 \n│ │ │ │ │ ├─┬ object.defaults@1.1.0 \n│ │ │ │ │ │ ├── array-each@1.0.1 \n│ │ │ │ │ │ ├── array-slice@1.1.0 \n│ │ │ │ │ │ ├── for-own@1.0.0 \n│ │ │ │ │ │ └── isobject@3.0.1 \n│ │ │ │ │ ├─┬ object.pick@1.3.0 \n│ │ │ │ │ │ └── isobject@3.0.1 \n│ │ │ │ │ └─┬ parse-filepath@1.0.2 \n│ │ │ │ │ ├─┬ is-absolute@1.0.0 \n│ │ │ │ │ │ ├─┬ is-relative@1.0.0 \n│ │ │ │ │ │ │ └── is-unc-path@1.0.0 \n│ │ │ │ │ │ └── is-windows@1.0.1 \n│ │ │ │ │ ├── map-cache@0.2.2 \n│ │ │ │ │ └─┬ path-root@0.1.1 \n│ │ │ │ │ └── path-root-regex@0.1.2 \n│ │ │ │ ├── flagged-respawn@1.0.0 \n│ │ │ │ ├─┬ is-plain-object@2.0.4 \n│ │ │ │ │ └── isobject@3.0.1 \n│ │ │ │ └─┬ object.map@1.0.1 \n│ │ │ │ ├── for-own@1.0.0 \n│ │ │ │ └── make-iterator@1.0.0 \n│ │ │ ├─┬ orchestrator@0.3.8 \n│ │ │ │ ├─┬ end-of-stream@0.1.5 \n│ │ │ │ │ └── once@1.3.3 \n│ │ │ │ ├── sequencify@0.0.7 \n│ │ │ │ └── stream-consume@0.1.0 \n│ │ │ ├── pretty-hrtime@1.0.3 \n│ │ │ ├── tildify@1.2.0 \n│ │ │ ├─┬ v8flags@2.1.1 \n│ │ │ │ └── user-home@1.1.1 \n│ │ │ └─┬ vinyl-fs@0.3.14 \n│ │ │ ├── defaults@1.0.3 \n│ │ │ ├─┬ glob-stream@3.1.18 \n│ │ │ │ ├── glob@4.5.3 \n│ │ │ │ ├─┬ glob2base@0.0.12 \n│ │ │ │ │ └── find-index@0.1.1 \n│ │ │ │ ├── minimatch@2.0.10 \n│ │ │ │ ├── ordered-read-streams@0.1.0 \n│ │ │ │ ├─┬ through2@0.6.5 \n│ │ │ │ │ └─┬ readable-stream@1.0.34 \n│ │ │ │ │ ├── isarray@0.0.1 \n│ │ │ │ │ └── string_decoder@0.10.31 \n│ │ │ │ └── unique-stream@1.0.0 \n│ │ │ ├─┬ glob-watcher@0.0.6 \n│ │ │ │ └─┬ gaze@0.5.2 \n│ │ │ │ └─┬ globule@0.1.0 \n│ │ │ │ ├─┬ glob@3.1.21 \n│ │ │ │ │ ├── graceful-fs@1.2.3 \n│ │ │ │ │ └── inherits@1.0.2 \n│ │ │ │ ├── lodash@1.0.2 \n│ │ │ │ └── minimatch@0.2.14 \n│ │ │ ├─┬ graceful-fs@3.0.11 \n│ │ │ │ └── natives@1.1.1 \n│ │ │ ├─┬ strip-bom@1.0.0 \n│ │ │ │ ├── first-chunk-stream@1.0.0 \n│ │ │ │ └── is-utf8@0.2.1 \n│ │ │ ├─┬ through2@0.6.5 \n│ │ │ │ └─┬ readable-stream@1.0.34 \n│ │ │ │ ├── isarray@0.0.1 \n│ │ │ │ └── string_decoder@0.10.31 \n│ │ │ └─┬ vinyl@0.4.6 \n│ │ │ └── clone@0.2.0 \n│ │ ├─┬ gulp-git@1.7.1 \n│ │ │ ├── any-shell-escape@0.1.1 \n│ │ │ ├── require-dir@0.1.0 \n│ │ │ └─┬ through2@0.6.5 \n│ │ │ └─┬ readable-stream@1.0.34 \n│ │ │ ├── isarray@0.0.1 \n│ │ │ └── string_decoder@0.10.31 \n│ │ ├─┬ home-or-tmp@2.0.0 \n│ │ │ └── os-homedir@1.0.2 \n│ │ ├─┬ inquirer@1.0.2 \n│ │ │ ├── ansi-escapes@1.4.0 \n│ │ │ ├─┬ cli-cursor@1.0.2 \n│ │ │ │ └─┬ restore-cursor@1.0.1 \n│ │ │ │ ├── exit-hook@1.1.1 \n│ │ │ │ └── onetime@1.1.0 \n│ │ │ ├── cli-width@2.2.0 \n│ │ │ ├── figures@1.7.0 \n│ │ │ ├── mute-stream@0.0.6 \n│ │ │ ├─┬ run-async@2.3.0 \n│ │ │ │ └── is-promise@2.1.0 \n│ │ │ └── rx@4.1.0 \n│ │ ├── lodash@4.11.1 \n│ │ ├── minimist@1.2.0 \n│ │ ├── shelljs@0.5.3 \n│ │ └── strip-json-comments@2.0.1 \n│ ├─┬ css-loader@0.23.1 \n│ │ ├─┬ css-selector-tokenizer@0.5.4 \n│ │ │ └── cssesc@0.1.0 \n│ │ ├─┬ cssnano@2.6.1 \n│ │ │ ├─┬ autoprefixer-core@5.2.1 \n│ │ │ │ └── browserslist@0.4.0 \n│ │ │ ├── balanced-match@0.2.1 \n│ │ │ ├── css-list@0.1.3 \n│ │ │ ├── defined@1.0.0 \n│ │ │ ├── indexes-of@1.0.1 \n│ │ │ ├─┬ postcss-calc@4.1.0 \n│ │ │ │ ├── postcss-message-helpers@2.0.0 \n│ │ │ │ └─┬ reduce-css-calc@1.3.0 \n│ │ │ │ ├── balanced-match@0.4.2 \n│ │ │ │ └── math-expression-evaluator@1.2.17 \n│ │ │ ├─┬ postcss-colormin@1.2.7 \n│ │ │ │ ├─┬ color@0.10.1 \n│ │ │ │ │ ├── color-convert@0.5.3 \n│ │ │ │ │ └─┬ color-string@0.3.0 \n│ │ │ │ │ └── color-name@1.1.3 \n│ │ │ │ ├─┬ colormin@1.1.2 \n│ │ │ │ │ ├─┬ color@0.11.4 \n│ │ │ │ │ │ └── color-convert@1.9.1 \n│ │ │ │ │ └── css-color-names@0.0.4 \n│ │ │ │ └─┬ reduce-function-call@1.0.2 \n│ │ │ │ └── balanced-match@0.4.2 \n│ │ │ ├─┬ postcss-convert-values@1.3.1 \n│ │ │ │ └── postcss-value-parser@1.4.2 \n│ │ │ ├─┬ postcss-discard-comments@1.2.1 \n│ │ │ │ └── node-balanced@0.0.14 \n│ │ │ ├── postcss-discard-duplicates@1.2.1 \n│ │ │ ├── postcss-discard-empty@1.1.2 \n│ │ │ ├─┬ postcss-discard-unused@1.0.3 \n│ │ │ │ ├── flatten@0.0.1 \n│ │ │ │ └── uniqs@2.0.0 \n│ │ │ ├─┬ postcss-filter-plugins@1.0.1 \n│ │ │ │ └── uniqid@1.0.0 \n│ │ │ ├─┬ postcss-font-family@1.2.1 \n│ │ │ │ └── object-assign@3.0.0 \n│ │ │ ├── postcss-merge-idents@1.0.2 \n│ │ │ ├── postcss-merge-longhand@1.0.2 \n│ │ │ ├── postcss-merge-rules@1.3.6 \n│ │ │ ├── postcss-minify-font-weight@1.0.1 \n│ │ │ ├─┬ postcss-minify-selectors@1.5.0 \n│ │ │ │ ├── javascript-natural-sort@0.7.1 \n│ │ │ │ ├── normalize-selector@0.2.0 \n│ │ │ │ └─┬ postcss-selector-parser@1.3.3 \n│ │ │ │ ├── flatten@1.0.2 \n│ │ │ │ └── uniq@1.0.1 \n│ │ │ ├─┬ postcss-normalize-url@2.1.3 \n│ │ │ │ ├── is-absolute-url@2.1.0 \n│ │ │ │ └─┬ normalize-url@1.9.1 \n│ │ │ │ ├── prepend-http@1.0.4 \n│ │ │ │ ├── query-string@4.3.4 \n│ │ │ │ └─┬ sort-keys@1.1.2 \n│ │ │ │ └── is-plain-obj@1.1.0 \n│ │ │ ├── postcss-ordered-values@1.1.1 \n│ │ │ ├── postcss-reduce-idents@1.0.3 \n│ │ │ ├─┬ postcss-single-charset@0.3.0 \n│ │ │ │ └─┬ fs-extra@0.14.0 \n│ │ │ │ └── ncp@1.0.1 \n│ │ │ ├── postcss-unique-selectors@1.0.1 \n│ │ │ ├── postcss-zindex@1.1.3 \n│ │ │ ├─┬ read-file-stdin@0.2.1 \n│ │ │ │ └── gather-stream@1.0.0 \n│ │ │ └── write-file-stdout@0.0.2 \n│ │ ├─┬ lodash.camelcase@3.0.1 \n│ │ │ └─┬ lodash._createcompounder@3.0.0 \n│ │ │ ├─┬ lodash.deburr@3.2.0 \n│ │ │ │ └── lodash._root@3.0.1 \n│ │ │ └── lodash.words@3.2.0 \n│ │ ├─┬ postcss@5.2.18 \n│ │ │ └── source-map@0.5.7 \n│ │ ├─┬ postcss-modules-extract-imports@1.1.0 \n│ │ │ └─┬ postcss@6.0.16 \n│ │ │ ├─┬ chalk@2.3.0 \n│ │ │ │ ├─┬ ansi-styles@3.2.0 \n│ │ │ │ │ └── color-convert@1.9.1 \n│ │ │ │ └── supports-color@4.5.0 \n│ │ │ ├── source-map@0.6.1 \n│ │ │ └─┬ supports-color@5.1.0 \n│ │ │ └── has-flag@2.0.0 \n│ │ ├─┬ postcss-modules-local-by-default@1.2.0 \n│ │ │ ├─┬ css-selector-tokenizer@0.7.0 \n│ │ │ │ └── regexpu-core@1.0.0 \n│ │ │ └─┬ postcss@6.0.16 \n│ │ │ ├─┬ chalk@2.3.0 \n│ │ │ │ └── supports-color@4.5.0 \n│ │ │ ├── source-map@0.6.1 \n│ │ │ └── supports-color@5.1.0 \n│ │ ├─┬ postcss-modules-scope@1.1.0 \n│ │ │ ├── css-selector-tokenizer@0.7.0 \n│ │ │ └─┬ postcss@6.0.16 \n│ │ │ ├─┬ chalk@2.3.0 \n│ │ │ │ └── supports-color@4.5.0 \n│ │ │ ├── source-map@0.6.1 \n│ │ │ └── supports-color@5.1.0 \n│ │ ├─┬ postcss-modules-values@1.3.0 \n│ │ │ ├── icss-replace-symbols@1.1.0 \n│ │ │ └─┬ postcss@6.0.16 \n│ │ │ ├─┬ chalk@2.3.0 \n│ │ │ │ ├─┬ ansi-styles@3.2.0 \n│ │ │ │ │ └── color-convert@1.9.1 \n│ │ │ │ └── supports-color@4.5.0 \n│ │ │ ├── source-map@0.6.1 \n│ │ │ └─┬ supports-color@5.1.0 \n│ │ │ └── has-flag@2.0.0 \n│ │ └── source-list-map@0.1.8 \n│ ├─┬ cz-conventional-changelog@1.1.6 \n│ │ └── word-wrap@1.2.3 \n│ ├─┬ eslint@2.9.0 \n│ │ ├─┬ concat-stream@1.6.0 \n│ │ │ └── typedarray@0.0.6 \n│ │ ├─┬ doctrine@1.5.0 \n│ │ │ ├── esutils@2.0.2 \n│ │ │ └── isarray@1.0.0 \n│ │ ├─┬ es6-map@0.1.5 \n│ │ │ ├── d@1.0.0 \n│ │ │ ├── es5-ext@0.10.38 \n│ │ │ ├── es6-iterator@2.0.3 \n│ │ │ └── event-emitter@0.3.5 \n│ │ ├─┬ escope@3.6.0 \n│ │ │ ├── es6-weak-map@2.0.2 \n│ │ │ ├─┬ esrecurse@4.2.0 \n│ │ │ │ └── estraverse@4.2.0 \n│ │ │ └── estraverse@4.2.0 \n│ │ ├─┬ espree@3.1.4 \n│ │ │ ├── acorn@3.3.0 \n│ │ │ └─┬ acorn-jsx@3.0.1 \n│ │ │ └── acorn@3.3.0 \n│ │ ├── estraverse@4.2.0 \n│ │ ├── esutils@2.0.2 \n│ │ ├─┬ file-entry-cache@1.3.1 \n│ │ │ └─┬ flat-cache@1.3.0 \n│ │ │ ├── circular-json@0.3.3 \n│ │ │ ├─┬ del@2.2.2 \n│ │ │ │ ├─┬ globby@5.0.0 \n│ │ │ │ │ ├── array-union@1.0.2 \n│ │ │ │ │ └── arrify@1.0.1 \n│ │ │ │ ├── is-path-cwd@1.0.0 \n│ │ │ │ ├─┬ is-path-in-cwd@1.0.0 \n│ │ │ │ │ └── is-path-inside@1.0.1 \n│ │ │ │ └── pify@2.3.0 \n│ │ │ └── write@0.2.1 \n│ │ ├── globals@9.18.0 \n│ │ ├── ignore@3.3.7 \n│ │ ├── imurmurhash@0.1.4 \n│ │ ├─┬ inquirer@0.12.0 \n│ │ │ ├── ansi-regex@2.1.1 \n│ │ │ ├─┬ readline2@1.0.1 \n│ │ │ │ └── mute-stream@0.0.5 \n│ │ │ ├── run-async@0.1.0 \n│ │ │ └── rx-lite@3.1.2 \n│ │ ├─┬ is-my-json-valid@2.17.1 \n│ │ │ ├── generate-function@2.0.0 \n│ │ │ ├─┬ generate-object-property@1.2.0 \n│ │ │ │ └── is-property@1.0.2 \n│ │ │ ├── jsonpointer@4.0.1 \n│ │ │ └── xtend@4.0.1 \n│ │ ├── is-resolvable@1.0.1 \n│ │ ├── json-stable-stringify@1.0.1 \n│ │ ├─┬ optionator@0.8.2 \n│ │ │ ├── deep-is@0.1.3 \n│ │ │ ├── fast-levenshtein@2.0.6 \n│ │ │ ├── prelude-ls@1.1.2 \n│ │ │ ├── type-check@0.3.2 \n│ │ │ └── wordwrap@1.0.0 \n│ │ ├── path-is-inside@1.0.2 \n│ │ ├── pluralize@1.2.1 \n│ │ ├─┬ require-uncached@1.0.3 \n│ │ │ ├─┬ caller-path@0.1.0 \n│ │ │ │ └── callsites@0.2.0 \n│ │ │ └── resolve-from@1.0.1 \n│ │ ├── shelljs@0.6.1 \n│ │ ├── strip-json-comments@1.0.4 \n│ │ ├─┬ table@3.8.3 \n│ │ │ ├─┬ ajv@4.11.8 \n│ │ │ │ └── co@4.6.0 \n│ │ │ ├── ajv-keywords@1.5.1 \n│ │ │ ├── slice-ansi@0.0.4 \n│ │ │ └─┬ string-width@2.1.1 \n│ │ │ ├── is-fullwidth-code-point@2.0.0 \n│ │ │ └─┬ strip-ansi@4.0.0 \n│ │ │ └── ansi-regex@3.0.0 \n│ │ ├── text-table@0.2.0 \n│ │ └── user-home@2.0.0 \n│ ├─┬ eslint-config-airbnb@8.0.0 \n│ │ └── eslint-config-airbnb-base@1.0.4 \n│ ├── eslint-loader@1.3.0 \n│ ├─┬ eslint-plugin-import@1.6.1 \n│ │ ├── builtin-modules@1.1.1 \n│ │ ├─┬ doctrine@1.2.3 \n│ │ │ └── esutils@2.0.2 \n│ │ ├── es6-set@0.1.5 \n│ │ ├── es6-symbol@3.1.1 \n│ │ ├── eslint-import-resolver-node@0.2.3 \n│ │ ├── lodash.cond@4.5.2 \n│ │ ├── lodash.endswith@4.2.1 \n│ │ ├── lodash.find@4.6.0 \n│ │ └─┬ pkg-up@1.0.0 \n│ │ └─┬ find-up@1.1.2 \n│ │ └── path-exists@2.1.0 \n│ ├── eslint-plugin-jsx-a11y@1.0.4 \n│ ├── eslint-plugin-react@5.0.1 \n│ ├── expose-loader@0.7.1 \n│ ├── file-loader@0.8.5 \n│ ├─┬ html-loader@0.4.3 \n│ │ ├─┬ es6-templates@0.2.3 \n│ │ │ └─┬ recast@0.11.23 \n│ │ │ ├── ast-types@0.9.6 \n│ │ │ ├── esprima@3.1.3 \n│ │ │ └── source-map@0.5.7 \n│ │ ├── fastparse@1.1.1 \n│ │ └─┬ html-minifier@1.5.0 \n│ │ ├─┬ change-case@2.3.1 \n│ │ │ ├── camel-case@1.2.2 \n│ │ │ ├── constant-case@1.1.2 \n│ │ │ ├── dot-case@1.1.2 \n│ │ │ ├── is-lower-case@1.1.3 \n│ │ │ ├── is-upper-case@1.1.2 \n│ │ │ ├── lower-case@1.1.4 \n│ │ │ ├── lower-case-first@1.0.2 \n│ │ │ ├── param-case@1.1.2 \n│ │ │ ├── pascal-case@1.1.2 \n│ │ │ ├── path-case@1.1.2 \n│ │ │ ├── sentence-case@1.1.3 \n│ │ │ ├── snake-case@1.1.2 \n│ │ │ ├── swap-case@1.1.2 \n│ │ │ ├── title-case@1.1.2 \n│ │ │ ├── upper-case@1.1.3 \n│ │ │ └── upper-case-first@1.1.2 \n│ │ ├─┬ clean-css@3.4.28 \n│ │ │ ├── commander@2.8.1 \n│ │ │ └── source-map@0.4.4 \n│ │ ├─┬ concat-stream@1.5.2 \n│ │ │ └─┬ readable-stream@2.0.6 \n│ │ │ └── string_decoder@0.10.31 \n│ │ ├── he@1.0.0 \n│ │ ├─┬ ncname@1.0.0 \n│ │ │ └── xml-char-classes@1.0.0 \n│ │ ├── relateurl@0.2.7 \n│ │ └─┬ uglify-js@2.6.4 \n│ │ ├── async@0.2.10 \n│ │ ├── source-map@0.5.7 \n│ │ └─┬ yargs@3.10.0 \n│ │ ├── camelcase@1.2.1 \n│ │ ├─┬ cliui@2.1.0 \n│ │ │ └── wordwrap@0.0.2 \n│ │ └── window-size@0.1.0 \n│ ├─┬ html-webpack-plugin@2.16.0 \n│ │ ├── bluebird@3.5.1 \n│ │ ├─┬ pretty-error@2.1.1 \n│ │ │ ├─┬ renderkid@2.0.1 \n│ │ │ │ ├─┬ css-select@1.2.0 \n│ │ │ │ │ ├── css-what@2.1.0 \n│ │ │ │ │ └── domutils@1.5.1 \n│ │ │ │ ├─┬ dom-converter@0.1.4 \n│ │ │ │ │ └── utila@0.3.3 \n│ │ │ │ ├─┬ htmlparser2@3.3.0 \n│ │ │ │ │ ├── domhandler@2.1.0 \n│ │ │ │ │ ├── domutils@1.1.6 \n│ │ │ │ │ └─┬ readable-stream@1.0.34 \n│ │ │ │ │ ├── isarray@0.0.1 \n│ │ │ │ │ └── string_decoder@0.10.31 \n│ │ │ │ └── utila@0.3.3 \n│ │ │ └── utila@0.4.0 \n│ │ └── toposort@0.2.12 \n│ ├── json-loader@0.5.4 \n│ ├─┬ node-libs-browser@1.0.0 \n│ │ ├── assert@1.4.1 \n│ │ ├─┬ browserify-zlib@0.1.4 \n│ │ │ └── pako@0.2.9 \n│ │ ├─┬ buffer@4.9.1 \n│ │ │ ├── base64-js@1.2.1 \n│ │ │ └── ieee754@1.1.8 \n│ │ ├─┬ console-browserify@1.1.0 \n│ │ │ └── date-now@0.1.4 \n│ │ ├── constants-browserify@1.0.0 \n│ │ ├─┬ crypto-browserify@3.12.0 \n│ │ │ ├─┬ browserify-cipher@1.0.0 \n│ │ │ │ ├─┬ browserify-aes@1.1.1 \n│ │ │ │ │ └── buffer-xor@1.0.3 \n│ │ │ │ ├─┬ browserify-des@1.0.0 \n│ │ │ │ │ └── des.js@1.0.0 \n│ │ │ │ └─┬ evp_bytestokey@1.0.3 \n│ │ │ │ └─┬ md5.js@1.3.4 \n│ │ │ │ └── hash-base@3.0.4 \n│ │ │ ├─┬ browserify-sign@4.0.4 \n│ │ │ │ ├── bn.js@4.11.8 \n│ │ │ │ ├── browserify-rsa@4.0.1 \n│ │ │ │ ├─┬ elliptic@6.4.0 \n│ │ │ │ │ ├── brorand@1.1.0 \n│ │ │ │ │ ├── hash.js@1.1.3 \n│ │ │ │ │ ├── hmac-drbg@1.0.1 \n│ │ │ │ │ ├── minimalistic-assert@1.0.0 \n│ │ │ │ │ └── minimalistic-crypto-utils@1.0.1 \n│ │ │ │ └─┬ parse-asn1@5.1.0 \n│ │ │ │ └── asn1.js@4.9.2 \n│ │ │ ├── create-ecdh@4.0.0 \n│ │ │ ├─┬ create-hash@1.1.3 \n│ │ │ │ ├── cipher-base@1.0.4 \n│ │ │ │ ├─┬ ripemd160@2.0.1 \n│ │ │ │ │ └── hash-base@2.0.2 \n│ │ │ │ └── sha.js@2.4.9 \n│ │ │ ├── create-hmac@1.1.6 \n│ │ │ ├─┬ diffie-hellman@5.0.2 \n│ │ │ │ └── miller-rabin@4.0.1 \n│ │ │ ├── pbkdf2@3.0.14 \n│ │ │ ├── public-encrypt@4.0.0 \n│ │ │ ├── randombytes@2.0.6 \n│ │ │ └── randomfill@1.0.3 \n│ │ ├── domain-browser@1.1.7 \n│ │ ├── events@1.1.1 \n│ │ ├─┬ http-browserify@1.7.0 \n│ │ │ └── Base64@0.2.1 \n│ │ ├── https-browserify@0.0.1 \n│ │ ├── os-browserify@0.2.1 \n│ │ ├── path-browserify@0.0.0 \n│ │ ├── process@0.11.10 \n│ │ ├── punycode@1.4.1 \n│ │ ├── querystring-es3@0.2.1 \n│ │ ├─┬ readable-stream@2.3.3 \n│ │ │ ├── process-nextick-args@1.0.7 \n│ │ │ ├── string_decoder@1.0.3 \n│ │ │ └── util-deprecate@1.0.2 \n│ │ ├── stream-browserify@2.0.1 \n│ │ ├── string_decoder@0.10.31 \n│ │ ├── timers-browserify@1.4.2 \n│ │ ├── tty-browserify@0.0.0 \n│ │ ├─┬ url@0.11.0 \n│ │ │ ├── punycode@1.3.2 \n│ │ │ └── querystring@0.2.0 \n│ │ ├─┬ util@0.10.3 \n│ │ │ └── inherits@2.0.1 \n│ │ └── vm-browserify@0.0.4 \n│ ├─┬ postcss-loader@0.9.1 \n│ │ └─┬ postcss@5.2.18 \n│ │ └── source-map@0.5.7 \n│ ├─┬ semantic-release@4.3.5 \n│ │ ├─┬ @semantic-release/commit-analyzer@2.0.0 \n│ │ │ └─┬ conventional-changelog@0.0.17 \n│ │ │ ├─┬ event-stream@3.3.4 \n│ │ │ │ ├── from@0.1.7 \n│ │ │ │ ├── map-stream@0.1.0 \n│ │ │ │ ├── pause-stream@0.0.11 \n│ │ │ │ └── split@0.3.3 \n│ │ │ ├── lodash@3.10.1 \n│ │ │ └─┬ normalize-package-data@1.0.3 \n│ │ │ └── github-url-from-username-repo@1.0.2 \n│ │ ├─┬ @semantic-release/condition-travis@4.1.4 \n│ │ │ └── semver@5.5.0 \n│ │ ├── @semantic-release/error@1.0.0 \n│ │ ├─┬ @semantic-release/last-release-npm@1.2.1 \n│ │ │ └─┬ npm-registry-client@7.5.0 \n│ │ │ ├─┬ npm-package-arg@4.2.1 \n│ │ │ │ └── semver@5.5.0 \n│ │ │ ├─┬ npmlog@4.1.2 \n│ │ │ │ ├── are-we-there-yet@1.1.4 \n│ │ │ │ ├── console-control-strings@1.1.0 \n│ │ │ │ ├─┬ gauge@2.7.4 \n│ │ │ │ │ ├── aproba@1.2.0 \n│ │ │ │ │ └── wide-align@1.1.2 \n│ │ │ │ └── set-blocking@2.0.0 \n│ │ │ ├── retry@0.10.1 \n│ │ │ └── slide@1.1.6 \n│ │ ├─┬ @semantic-release/release-notes-generator@2.0.0 \n│ │ │ └── github-url-from-git@1.5.0 \n│ │ ├─┬ git-head@1.20.1 \n│ │ │ └─┬ git-refs@1.1.3 \n│ │ │ ├─┬ path-object@2.3.0 \n│ │ │ │ └─┬ lodash.assign@3.2.0 \n│ │ │ │ ├── lodash._baseassign@3.2.0 \n│ │ │ │ └─┬ lodash._createassigner@3.1.1 \n│ │ │ │ └── lodash._bindcallback@3.0.1 \n│ │ │ └─┬ walk@2.3.9 \n│ │ │ └── foreachasync@3.0.0 \n│ │ ├── github@0.2.4 \n│ │ ├── lodash@3.10.1 \n│ │ ├── nerf-dart@1.0.0 \n│ │ ├─┬ npmconf@2.1.2 \n│ │ │ ├─┬ config-chain@1.1.11 \n│ │ │ │ └── proto-list@1.2.4 \n│ │ │ ├── ini@1.3.5 \n│ │ │ ├── once@1.3.3 \n│ │ │ ├── osenv@0.1.4 \n│ │ │ └── uid-number@0.0.5 \n│ │ ├─┬ npmlog@1.2.1 \n│ │ │ ├── ansi@0.3.1 \n│ │ │ ├─┬ are-we-there-yet@1.0.6 \n│ │ │ │ └── delegates@1.0.0 \n│ │ │ └─┬ gauge@1.2.7 \n│ │ │ ├── has-unicode@2.0.1 \n│ │ │ ├── lodash.pad@4.5.1 \n│ │ │ ├── lodash.padend@4.6.1 \n│ │ │ └── lodash.padstart@4.6.1 \n│ │ ├── parse-github-repo-url@1.4.1 \n│ │ ├── require-relative@0.8.7 \n│ │ ├─┬ run-auto@1.1.3 \n│ │ │ └── dezalgo@1.0.3 \n│ │ ├── run-series@1.1.4 \n│ │ └── semver@5.5.0 \n│ ├── shader-loader@1.1.4 \n│ ├── shelljs@0.7.0 \n│ ├── style-loader@0.13.1 \n│ ├─┬ svg-sprite-loader@0.0.18 \n│ │ ├─┬ cheerio@0.19.0 \n│ │ │ ├─┬ css-select@1.0.0 \n│ │ │ │ ├── boolbase@1.0.0 \n│ │ │ │ ├── css-what@1.0.0 \n│ │ │ │ ├── domutils@1.4.3 \n│ │ │ │ └── nth-check@1.0.1 \n│ │ │ ├─┬ dom-serializer@0.1.0 \n│ │ │ │ └── domelementtype@1.1.3 \n│ │ │ ├── entities@1.1.1 \n│ │ │ ├─┬ htmlparser2@3.8.3 \n│ │ │ │ ├── domelementtype@1.3.0 \n│ │ │ │ ├── domhandler@2.3.0 \n│ │ │ │ ├── domutils@1.5.1 \n│ │ │ │ ├── entities@1.0.0 \n│ │ │ │ └─┬ readable-stream@1.1.14 \n│ │ │ │ ├── isarray@0.0.1 \n│ │ │ │ └── string_decoder@0.10.31 \n│ │ │ └── lodash@3.10.1 \n│ │ ├── image-size@0.3.5 \n│ │ └── sniffr@1.1.4 \n│ ├─┬ url-loader@0.5.7 \n│ │ └── mime@1.2.11 \n│ ├─┬ webpack@1.13.0 \n│ │ ├── acorn@3.3.0 \n│ │ ├── async@1.5.2 \n│ │ ├── clone@1.0.3 \n│ │ ├─┬ enhanced-resolve@0.9.1 \n│ │ │ └── memory-fs@0.2.0 \n│ │ ├── interpret@0.6.6 \n│ │ ├── memory-fs@0.3.0 \n│ │ ├─┬ node-libs-browser@0.6.0 \n│ │ │ ├── constants-browserify@0.0.1 \n│ │ │ ├─┬ crypto-browserify@3.2.8 \n│ │ │ │ ├── pbkdf2-compat@2.0.1 \n│ │ │ │ ├── ripemd160@0.2.0 \n│ │ │ │ └── sha.js@2.2.6 \n│ │ │ ├── https-browserify@0.0.0 \n│ │ │ ├── os-browserify@0.1.2 \n│ │ │ ├─┬ readable-stream@1.1.14 \n│ │ │ │ └── isarray@0.0.1 \n│ │ │ ├─┬ stream-browserify@1.0.0 \n│ │ │ │ └── readable-stream@1.1.14 \n│ │ │ ├── string_decoder@0.10.31 \n│ │ │ └─┬ url@0.10.3 \n│ │ │ └── punycode@1.3.2 \n│ │ ├─┬ optimist@0.6.1 \n│ │ │ └── minimist@0.0.10 \n│ │ ├── tapable@0.1.10 \n│ │ ├─┬ uglify-js@2.6.4 \n│ │ │ ├── async@0.2.10 \n│ │ │ ├── source-map@0.5.7 \n│ │ │ ├── uglify-to-browserify@1.0.2 \n│ │ │ └─┬ yargs@3.10.0 \n│ │ │ ├── camelcase@1.2.1 \n│ │ │ ├─┬ cliui@2.1.0 \n│ │ │ │ ├─┬ center-align@0.1.3 \n│ │ │ │ │ ├─┬ align-text@0.1.4 \n│ │ │ │ │ │ └── longest@1.0.1 \n│ │ │ │ │ └── lazy-cache@1.0.4 \n│ │ │ │ ├── right-align@0.1.3 \n│ │ │ │ └── wordwrap@0.0.2 \n│ │ │ └── window-size@0.1.0 \n│ │ ├── watchpack@0.2.9 \n│ │ └─┬ webpack-core@0.6.9 \n│ │ └── source-map@0.4.4 \n│ └─┬ webpack-dev-server@1.14.1 \n│ ├─┬ compression@1.7.1 \n│ │ ├── accepts@1.3.4 \n│ │ ├── compressible@2.0.12 \n│ │ └── on-headers@1.0.1 \n│ ├── connect-history-api-fallback@1.1.0 \n│ ├─┬ express@4.16.2 \n│ │ ├── accepts@1.3.4 \n│ │ ├── etag@1.8.1 \n│ │ ├── finalhandler@1.1.0 \n│ │ ├── fresh@0.5.2 \n│ │ ├─┬ proxy-addr@2.0.2 \n│ │ │ └── ipaddr.js@1.5.2 \n│ │ ├─┬ send@0.16.1 \n│ │ │ ├── mime@1.4.1 \n│ │ │ └── statuses@1.3.1 \n│ │ ├── serve-static@1.13.1 \n│ │ ├── setprototypeof@1.1.0 \n│ │ └── statuses@1.3.1 \n│ ├─┬ optimist@0.6.1 \n│ │ └── minimist@0.0.10 \n│ ├─┬ serve-index@1.9.1 \n│ │ ├── accepts@1.3.4 \n│ │ └── batch@0.6.1 \n│ ├─┬ sockjs@0.3.19 \n│ │ └─┬ faye-websocket@0.10.0 \n│ │ └─┬ websocket-driver@0.7.0 \n│ │ ├── http-parser-js@0.4.9 \n│ │ └── websocket-extensions@0.1.3 \n│ ├─┬ sockjs-client@1.1.4 \n│ │ ├─┬ eventsource@0.1.6 \n│ │ │ └─┬ original@1.0.0 \n│ │ │ └─┬ url-parse@1.0.5 \n│ │ │ └── querystringify@0.0.4 \n│ │ ├── faye-websocket@0.11.1 \n│ │ └─┬ url-parse@1.2.0 \n│ │ └── querystringify@1.0.0 \n│ ├── stream-cache@0.0.2 \n│ └── strip-ansi@3.0.1 \n├─┬ monologue.js@0.3.5 \n│ ├── lodash@3.10.1 \n│ └─┬ riveter@0.2.0 \n│ └── lodash@2.4.2 \n├── mout@0.11.1 \n├── normalize.css@5.0.0 \n├── open@0.0.5 \n├─┬ phantomjs-prebuilt@2.1.7 \n│ ├─┬ extract-zip@1.5.0 \n│ │ ├─┬ concat-stream@1.5.0 \n│ │ │ └─┬ readable-stream@2.0.6 \n│ │ │ └── string_decoder@0.10.31 \n│ │ ├── debug@0.7.4 \n│ │ ├─┬ mkdirp@0.5.0 \n│ │ │ └── minimist@0.0.8 \n│ │ └─┬ yauzl@2.4.1 \n│ │ └─┬ fd-slicer@1.0.1 \n│ │ └── pend@1.2.0 \n│ ├─┬ fs-extra@0.26.7 \n│ │ ├── jsonfile@2.4.0 \n│ │ └── klaw@1.3.1 \n│ ├─┬ hasha@2.2.0 \n│ │ ├── is-stream@1.1.0 \n│ │ └─┬ pinkie-promise@2.0.1 \n│ │ └── pinkie@2.0.4 \n│ ├── kew@0.7.0 \n│ ├── progress@1.1.8 \n│ ├─┬ request@2.67.0 \n│ │ ├── aws-sign2@0.6.0 \n│ │ ├─┬ bl@1.0.3 \n│ │ │ └─┬ readable-stream@2.0.6 \n│ │ │ └── string_decoder@0.10.31 \n│ │ ├── caseless@0.11.0 \n│ │ ├─┬ combined-stream@1.0.5 \n│ │ │ └── delayed-stream@1.0.0 \n│ │ ├── forever-agent@0.6.1 \n│ │ ├─┬ form-data@1.0.1 \n│ │ │ └── async@2.6.0 \n│ │ ├── har-validator@2.0.6 \n│ │ ├─┬ hawk@3.1.3 \n│ │ │ ├── boom@2.10.1 \n│ │ │ ├── cryptiles@2.0.5 \n│ │ │ ├── hoek@2.16.3 \n│ │ │ └── sntp@1.0.9 \n│ │ ├─┬ http-signature@1.1.1 \n│ │ │ ├── assert-plus@0.2.0 \n│ │ │ ├─┬ jsprim@1.4.1 \n│ │ │ │ ├── extsprintf@1.3.0 \n│ │ │ │ ├── json-schema@0.2.3 \n│ │ │ │ └── verror@1.10.0 \n│ │ │ └─┬ sshpk@1.13.1 \n│ │ │ ├── asn1@0.2.3 \n│ │ │ ├── bcrypt-pbkdf@1.0.1 \n│ │ │ ├── dashdash@1.14.1 \n│ │ │ ├── ecc-jsbn@0.1.1 \n│ │ │ ├── getpass@0.1.7 \n│ │ │ ├── jsbn@0.1.1 \n│ │ │ └── tweetnacl@0.14.5 \n│ │ ├── is-typedarray@1.0.0 \n│ │ ├── isstream@0.1.2 \n│ │ ├─┬ mime-types@2.1.17 \n│ │ │ └── mime-db@1.30.0 \n│ │ ├── node-uuid@1.4.8 \n│ │ ├── oauth-sign@0.8.2 \n│ │ ├── qs@5.2.1 \n│ │ ├── tough-cookie@2.2.2 \n│ │ └── tunnel-agent@0.4.3 \n│ ├─┬ request-progress@2.0.1 \n│ │ └── throttleit@1.0.0 \n│ └─┬ which@1.2.14 \n│ └── isexe@2.0.0 \n├─┬ pvw-visualizer@2.0.18 \n│ └── shelljs@0.7.4 \n├─┬ react@15.4.2 \n│ ├─┬ fbjs@0.8.16 \n│ │ ├── core-js@1.2.7 \n│ │ ├─┬ isomorphic-fetch@2.2.1 \n│ │ │ ├─┬ node-fetch@1.7.3 \n│ │ │ │ └── encoding@0.1.12 \n│ │ │ └── whatwg-fetch@2.0.3 \n│ │ ├─┬ promise@7.3.1 \n│ │ │ └── asap@2.0.6 \n│ │ ├── setimmediate@1.0.5 \n│ │ └── ua-parser-js@0.7.17 \n│ └─┬ loose-envify@1.3.1 \n│ └── js-tokens@3.0.2 \n├── react-addons-test-utils@15.4.2 \n├── react-dom@15.4.2 \n├─┬ react-redux@4.4.6 \n│ ├── hoist-non-react-statics@1.2.0 \n│ └── invariant@2.2.2 \n├─┬ react-router@2.0.1 \n│ ├─┬ history@2.1.2 \n│ │ ├── deep-equal@1.0.1 \n│ │ └─┬ query-string@3.0.3 \n│ │ └── strict-uri-encode@1.1.0 \n│ └── warning@2.1.0 \n├── react-router-redux@4.0.7 \n├─┬ redux@3.3.1 \n│ └── lodash-es@4.17.4 \n├─┬ redux-actions-assertions@1.3.0 \n│ └─┬ redux-actions-assertions-js@1.1.0 \n│ ├── lodash.clonedeep@4.5.0 \n│ ├── lodash.findindex@4.6.0 \n│ ├── lodash.flattendeep@4.4.0 \n│ ├─┬ redux@3.7.2 \n│ │ └── symbol-observable@1.1.0 \n│ └─┬ redux-mock-store@1.4.0 \n│ └── lodash.isplainobject@4.0.6 \n├── redux-thunk@2.1.0 \n├── reselect@2.5.3 \n├─┬ shelljs@0.7.6 \n│ ├── interpret@1.1.0 \n│ └─┬ rechoir@0.6.2 \n│ └─┬ resolve@1.5.0 \n│ └── path-parse@1.0.5 \n├─┬ simput@1.3.24 \n│ ├─┬ autoprefixer@6.5.0 \n│ │ ├── browserslist@1.4.0 \n│ │ ├── postcss@5.2.18 \n│ │ └── postcss-value-parser@3.3.0 \n│ ├─┬ babel-core@6.17.0 \n│ │ ├── json5@0.4.0 \n│ │ ├── path-exists@1.0.0 \n│ │ └── source-map@0.5.7 \n│ ├── babel-eslint@7.0.0 \n│ ├── babel-loader@6.2.5 \n│ ├─┬ babel-polyfill@6.16.0 \n│ │ └── core-js@2.5.3 \n│ ├─┬ babel-preset-es2015@6.16.0 \n│ │ ├── babel-plugin-transform-es2015-modules-amd@6.24.1 \n│ │ ├─┬ babel-plugin-transform-es2015-modules-systemjs@6.24.1 \n│ │ │ └── babel-helper-hoist-variables@6.24.1 \n│ │ └── babel-plugin-transform-es2015-modules-umd@6.24.1 \n│ ├─┬ babel-preset-react@6.16.0 \n│ │ └── babel-plugin-transform-react-jsx-self@6.22.0 \n│ ├─┬ body-parser@1.16.0 \n│ │ ├── bytes@2.4.0 \n│ │ ├─┬ debug@2.6.0 \n│ │ │ └── ms@0.7.2 \n│ │ ├─┬ http-errors@1.5.1 \n│ │ │ └── setprototypeof@1.0.2 \n│ │ ├── iconv-lite@0.4.15 \n│ │ ├── qs@6.2.1 \n│ │ └── raw-body@2.2.0 \n│ ├─┬ css-loader@0.25.0 \n│ │ ├─┬ css-selector-tokenizer@0.6.0 \n│ │ │ └── regexpu-core@1.0.0 \n│ │ ├─┬ postcss-modules-extract-imports@1.1.0 \n│ │ │ └─┬ postcss@6.0.16 \n│ │ │ ├─┬ chalk@2.3.0 \n│ │ │ │ ├─┬ ansi-styles@3.2.0 \n│ │ │ │ │ └── color-convert@1.9.1 \n│ │ │ │ └── supports-color@4.5.0 \n│ │ │ ├── source-map@0.6.1 \n│ │ │ └─┬ supports-color@5.1.0 \n│ │ │ └── has-flag@2.0.0 \n│ │ ├─┬ postcss-modules-local-by-default@1.2.0 \n│ │ │ ├── css-selector-tokenizer@0.7.0 \n│ │ │ └─┬ postcss@6.0.16 \n│ │ │ ├─┬ chalk@2.3.0 \n│ │ │ │ └── supports-color@4.5.0 \n│ │ │ ├── source-map@0.6.1 \n│ │ │ └── supports-color@5.1.0 \n│ │ └─┬ postcss-modules-scope@1.1.0 \n│ │ ├── css-selector-tokenizer@0.7.0 \n│ │ └─┬ postcss@6.0.16 \n│ │ ├─┬ chalk@2.3.0 \n│ │ │ └── supports-color@4.5.0 \n│ │ ├── source-map@0.6.1 \n│ │ └── supports-color@5.1.0 \n│ ├─┬ eslint@3.7.1 \n│ │ ├─┬ espree@3.5.2 \n│ │ │ └── acorn@5.3.0 \n│ │ ├── estraverse@4.2.0 \n│ │ ├── esutils@2.0.2 \n│ │ ├── file-entry-cache@2.0.0 \n│ │ ├─┬ inquirer@0.12.0 \n│ │ │ └── run-async@0.1.0 \n│ │ ├── levn@0.3.0 \n│ │ ├── natural-compare@1.4.0 \n│ │ ├── shelljs@0.6.1 \n│ │ ├── strip-bom@3.0.0 \n│ │ ├── strip-json-comments@1.0.4 \n│ │ └── user-home@2.0.0 \n│ ├─┬ eslint-config-airbnb@12.0.0 \n│ │ └── eslint-config-airbnb-base@8.0.0 \n│ ├─┬ eslint-import-resolver-webpack@0.6.0 \n│ │ ├── array-find@1.0.0 \n│ │ ├── find-root@0.1.2 \n│ │ ├─┬ is-absolute@0.2.6 \n│ │ │ ├─┬ is-relative@0.2.1 \n│ │ │ │ └─┬ is-unc-path@0.1.2 \n│ │ │ │ └── unc-path-regex@0.1.2 \n│ │ │ └── is-windows@0.2.0 \n│ │ ├─┬ lodash.get@3.7.0 \n│ │ │ ├── lodash._baseget@3.7.2 \n│ │ │ └─┬ lodash._topath@3.8.1 \n│ │ │ └── lodash.isarray@3.0.4 \n│ │ └── semver@5.5.0 \n│ ├─┬ eslint-loader@1.5.0 \n│ │ └─┬ find-cache-dir@0.1.1 \n│ │ └── commondir@1.0.1 \n│ ├─┬ eslint-plugin-import@1.16.0 \n│ │ ├── contains-path@0.1.0 \n│ │ ├── doctrine@1.3.0 \n│ │ └── pkg-dir@1.0.0 \n│ ├─┬ eslint-plugin-jsx-a11y@2.2.2 \n│ │ ├── damerau-levenshtein@1.0.4 \n│ │ └── jsx-ast-utils@1.4.1 \n│ ├── eslint-plugin-react@6.3.0 \n│ ├─┬ express@4.14.1 \n│ │ ├─┬ accepts@1.3.3 \n│ │ │ └── negotiator@0.6.1 \n│ │ ├── array-flatten@1.1.1 \n│ │ ├── content-disposition@0.5.2 \n│ │ ├── cookie@0.3.1 \n│ │ ├── cookie-signature@1.0.6 \n│ │ ├─┬ debug@2.2.0 \n│ │ │ └── ms@0.7.1 \n│ │ ├── encodeurl@1.0.1 \n│ │ ├── escape-html@1.0.3 \n│ │ ├── etag@1.7.0 \n│ │ ├─┬ finalhandler@0.5.1 \n│ │ │ ├─┬ debug@2.2.0 \n│ │ │ │ └── ms@0.7.1 \n│ │ │ └── statuses@1.3.1 \n│ │ ├── fresh@0.3.0 \n│ │ ├── merge-descriptors@1.0.1 \n│ │ ├── methods@1.1.2 \n│ │ ├── path-to-regexp@0.1.7 \n│ │ ├─┬ proxy-addr@1.1.5 \n│ │ │ ├── forwarded@0.1.2 \n│ │ │ └── ipaddr.js@1.4.0 \n│ │ ├── qs@6.2.0 \n│ │ ├─┬ send@0.14.2 \n│ │ │ ├─┬ debug@2.2.0 \n│ │ │ │ └── ms@0.7.1 \n│ │ │ ├── destroy@1.0.4 \n│ │ │ ├── mime@1.3.4 \n│ │ │ └── statuses@1.3.1 \n│ │ ├── serve-static@1.11.2 \n│ │ ├── utils-merge@1.0.0 \n│ │ └── vary@1.1.2 \n│ ├── file-loader@0.9.0 \n│ ├─┬ handlebars@4.0.6 \n│ │ ├── async@1.5.2 \n│ │ ├─┬ optimist@0.6.1 \n│ │ │ └── minimist@0.0.10 \n│ │ ├── source-map@0.4.4 \n│ │ └─┬ uglify-js@2.8.29 \n│ │ ├── source-map@0.5.7 \n│ │ └─┬ yargs@3.10.0 \n│ │ ├── camelcase@1.2.1 \n│ │ ├─┬ cliui@2.1.0 \n│ │ │ └── wordwrap@0.0.2 \n│ │ └── window-size@0.1.0 \n│ ├─┬ handlebars-loader@1.4.0 \n│ │ └── async@0.2.10 \n│ ├─┬ html-loader@0.4.4 \n│ │ └─┬ html-minifier@3.5.8 \n│ │ ├─┬ camel-case@3.0.0 \n│ │ │ └── no-case@2.3.2 \n│ │ ├── clean-css@4.1.9 \n│ │ ├── commander@2.12.2 \n│ │ ├── he@1.1.1 \n│ │ ├── param-case@2.1.1 \n│ │ └─┬ uglify-js@3.3.7 \n│ │ ├── commander@2.13.0 \n│ │ └── source-map@0.6.1 \n│ ├─┬ html-webpack-plugin@2.22.0 \n│ │ ├── bluebird@3.5.1 \n│ │ ├─┬ html-minifier@2.1.7 \n│ │ │ ├─┬ change-case@3.0.1 \n│ │ │ │ ├── constant-case@2.0.0 \n│ │ │ │ ├── dot-case@2.1.1 \n│ │ │ │ ├── header-case@1.0.1 \n│ │ │ │ ├── pascal-case@2.0.1 \n│ │ │ │ ├── path-case@2.1.1 \n│ │ │ │ ├── sentence-case@2.1.1 \n│ │ │ │ ├── snake-case@2.1.0 \n│ │ │ │ └── title-case@2.1.1 \n│ │ │ ├─┬ clean-css@3.4.28 \n│ │ │ │ ├── commander@2.8.1 \n│ │ │ │ └── source-map@0.4.4 \n│ │ │ └─┬ uglify-js@2.6.4 \n│ │ │ ├── async@0.2.10 \n│ │ │ └── source-map@0.5.7 \n│ │ └── toposort@1.0.6 \n│ ├── ini@1.3.4 \n│ ├── postcss-loader@0.13.0 \n│ ├── shader-loader@1.3.0 \n│ ├─┬ string-replace-loader@1.0.5 \n│ │ └── lodash@3.10.1 \n│ ├── style-loader@0.13.1 \n│ ├── svg-sprite-loader@0.0.29 \n│ ├─┬ webpack@1.13.2 \n│ │ ├── acorn@3.3.0 \n│ │ ├── interpret@0.6.6 \n│ │ ├── memory-fs@0.3.0 \n│ │ ├─┬ node-libs-browser@0.6.0 \n│ │ │ ├── constants-browserify@0.0.1 \n│ │ │ ├─┬ crypto-browserify@3.2.8 \n│ │ │ │ ├── ripemd160@0.2.0 \n│ │ │ │ └── sha.js@2.2.6 \n│ │ │ ├── https-browserify@0.0.0 \n│ │ │ ├── os-browserify@0.1.2 \n│ │ │ ├─┬ readable-stream@1.1.14 \n│ │ │ │ └── isarray@0.0.1 \n│ │ │ ├─┬ stream-browserify@1.0.0 \n│ │ │ │ └─┬ readable-stream@1.1.14 \n│ │ │ │ └── isarray@0.0.1 \n│ │ │ ├── string_decoder@0.10.31 \n│ │ │ └─┬ url@0.10.3 \n│ │ │ └── punycode@1.3.2 \n│ │ └─┬ uglify-js@2.6.4 \n│ │ ├── async@0.2.10 \n│ │ └─┬ yargs@3.10.0 \n│ │ ├── camelcase@1.2.1 \n│ │ ├─┬ cliui@2.1.0 \n│ │ │ └── wordwrap@0.0.2 \n│ │ └── window-size@0.1.0 \n│ └─┬ webpack-dev-server@1.16.2 \n│ ├── connect-history-api-fallback@1.5.0 \n│ └─┬ http-proxy-middleware@0.17.4 \n│ └─┬ is-glob@3.1.0 \n│ └── is-extglob@2.1.1 \n├─┬ vtk.js@2.15.0 \n│ ├── blueimp-md5@2.3.0 \n│ ├─┬ jszip@3.1.3 \n│ │ ├── core-js@2.3.0 \n│ │ ├── es6-promise@3.0.2 \n│ │ ├─┬ lie@3.1.1 \n│ │ │ └── immediate@3.0.6 \n│ │ ├── pako@1.0.6 \n│ │ └─┬ readable-stream@2.0.6 \n│ │ └── string_decoder@0.10.31 \n│ ├── pako@1.0.1 \n│ ├── seedrandom@2.4.2 \n│ └── shelljs@0.7.4 \n└─┬ ws@0.8.1 \n ├─┬ bufferutil@1.2.1 \n │ ├── bindings@1.2.1 \n │ └── nan@2.8.0 \n ├── options@0.0.6 \n ├── ultron@1.0.2 \n └─┬ utf-8-validate@1.2.2 \n └── nan@2.4.0 \n\n", "stdout_lines": ["hpc-cloud@0.9.0 /opt/hpccloud/hpccloud", "├─┬ axios@0.15.3 ", "│ └─┬ follow-redirects@1.0.0 ", "│ └─┬ debug@2.6.9 ", "│ └── ms@2.0.0 ", "├─┬ babel-polyfill@6.9.1 ", "│ ├─┬ babel-runtime@6.26.0 ", "│ │ ├── core-js@2.5.3 ", "│ │ └── regenerator-runtime@0.11.1 ", "│ ├── core-js@2.5.3 ", "│ └── regenerator-runtime@0.9.6 ", "├── bootstrap@3.3.7 ", "├─┬ candela@0.9.1 ", "│ ├─┬ brace@0.7.0 ", "│ │ └── w3c-blob@0.0.1 ", "│ ├── d3@3.5.17 ", "│ ├─┬ datalib@1.8.0 ", "│ │ ├── d3-dsv@0.1.14 ", "│ │ ├── d3-format@0.4.2 ", "│ │ ├── d3-time@0.1.1 ", "│ │ ├── d3-time-format@0.2.1 ", "│ │ ├─┬ request@2.83.0 ", "│ │ │ ├── aws-sign2@0.7.0 ", "│ │ │ ├── aws4@1.6.0 ", "│ │ │ ├── caseless@0.12.0 ", "│ │ │ ├─┬ form-data@2.3.1 ", "│ │ │ │ └── asynckit@0.4.0 ", "│ │ │ ├─┬ har-validator@5.0.3 ", "│ │ │ │ ├─┬ ajv@5.5.2 ", "│ │ │ │ │ ├── fast-deep-equal@1.0.0 ", "│ │ │ │ │ ├── fast-json-stable-stringify@2.0.0 ", "│ │ │ │ │ └── json-schema-traverse@0.3.1 ", "│ │ │ │ └── har-schema@2.0.0 ", "│ │ │ ├─┬ hawk@6.0.2 ", "│ │ │ │ ├── boom@4.3.1 ", "│ │ │ │ ├─┬ cryptiles@3.1.2 ", "│ │ │ │ │ └── boom@5.2.0 ", "│ │ │ │ ├── hoek@4.2.0 ", "│ │ │ │ └── sntp@2.1.0 ", "│ │ │ ├─┬ http-signature@1.2.0 ", "│ │ │ │ └── assert-plus@1.0.0 ", "│ │ │ ├── performance-now@2.1.0 ", "│ │ │ ├── safe-buffer@5.1.1 ", "│ │ │ ├── tunnel-agent@0.6.0 ", "│ │ │ └── uuid@3.2.1 ", "│ │ ├─┬ sync-request@2.2.0 ", "│ │ │ ├── http-response-object@1.1.0 ", "│ │ │ ├─┬ spawn-sync@1.0.15 ", "│ │ │ │ └── os-shim@0.1.3 ", "│ │ │ └─┬ then-request@2.2.0 ", "│ │ │ ├── caseless@0.11.0 ", "│ │ │ └─┬ http-basic@2.5.1 ", "│ │ │ └── caseless@0.11.0 ", "│ │ └─┬ topojson@1.6.27 ", "│ │ ├── d3-queue@2.0.3 ", "│ │ ├── optimist@0.3.7 ", "│ │ ├── rw@1.3.3 ", "│ │ └─┬ shapefile@0.3.1 ", "│ │ ├── d3-queue@1.2.3 ", "│ │ └── iconv-lite@0.2.11 ", "│ ├─┬ font-awesome-webpack@0.0.4 ", "│ │ ├─┬ css-loader@0.17.0 ", "│ │ │ ├─┬ postcss@4.1.16 ", "│ │ │ │ ├── es6-promise@2.3.0 ", "│ │ │ │ └── source-map@0.4.4 ", "│ │ │ ├── postcss-modules-extract-imports@0.0.5 ", "│ │ │ ├── postcss-modules-local-by-default@0.0.12 ", "│ │ │ └── postcss-modules-scope@0.0.8 ", "│ │ ├── UNMET PEER DEPENDENCY less@^2.3.1", "│ │ ├── less-loader@2.2.3 ", "│ │ └── style-loader@0.12.4 ", "│ ├── is_js@0.9.0 ", "│ ├── jquery@2.2.4 ", "│ ├── jquery-deparam@0.5.3 ", "│ ├── LineUpJS@0.2.0 (git+https://github.com/Caleydo/lineup.js.git#0cd7f3f2ad06c498c09612daf5f3e2a36c07536d)", "│ ├── onset@0.3.0 (git+https://github.com/Kitware/setvis.git#506bfccff63b0c8f5c39a81d299ed310e5e8fbff)", "│ ├── underscore@1.8.3 ", "│ ├── UpSet@0.0.1 (git+https://github.com/VCG/upset.git#6e8b7a172443dd6b4f4324d1a3368287e9e9c089)", "│ └─┬ vega@2.6.5 ", "│ ├── canvas@1.6.9 ", "│ ├─┬ d3-cloud@1.2.4 ", "│ │ └── d3-dispatch@1.0.3 ", "│ ├─┬ d3-geo-projection@0.2.16 ", "│ │ └─┬ brfs@1.4.3 ", "│ │ ├─┬ quote-stream@1.0.2 ", "│ │ │ └── buffer-equal@0.0.1 ", "│ │ └── through2@2.0.3 ", "│ ├── vega-dataflow@1.4.3 ", "│ ├── vega-event-selector@1.1.0 ", "│ ├── vega-expression@1.2.1 ", "│ ├── vega-logging@1.0.2 ", "│ ├── vega-scenegraph@1.1.0 ", "│ └─┬ yargs@3.32.0 ", "│ ├── camelcase@2.1.1 ", "│ ├─┬ cliui@3.2.0 ", "│ │ └── wrap-ansi@2.1.0 ", "│ ├── decamelize@1.2.0 ", "│ ├─┬ os-locale@1.4.0 ", "│ │ └─┬ lcid@1.0.0 ", "│ │ └── invert-kv@1.0.0 ", "│ ├─┬ string-width@1.0.2 ", "│ │ ├── code-point-at@1.1.0 ", "│ │ └─┬ is-fullwidth-code-point@1.0.0 ", "│ │ └── number-is-nan@1.0.1 ", "│ ├── window-size@0.1.4 ", "│ └── y18n@3.2.1 ", "├─┬ codecov.io@0.1.6 ", "│ ├─┬ request@2.42.0 ", "│ │ ├── aws-sign2@0.5.0 ", "│ │ ├─┬ bl@0.9.5 ", "│ │ │ └─┬ readable-stream@1.0.34 ", "│ │ │ ├── isarray@0.0.1 ", "│ │ │ └── string_decoder@0.10.31 ", "│ │ ├── caseless@0.6.0 ", "│ │ ├── forever-agent@0.5.2 ", "│ │ ├─┬ form-data@0.1.4 ", "│ │ │ └─┬ combined-stream@0.0.7 ", "│ │ │ └── delayed-stream@0.0.5 ", "│ │ ├─┬ hawk@1.1.1 ", "│ │ │ ├── boom@0.4.2 ", "│ │ │ ├── cryptiles@0.2.2 ", "│ │ │ ├── hoek@0.9.1 ", "│ │ │ └── sntp@0.2.4 ", "│ │ ├─┬ http-signature@0.10.1 ", "│ │ │ ├── asn1@0.1.11 ", "│ │ │ ├── assert-plus@0.1.5 ", "│ │ │ └── ctype@0.5.3 ", "│ │ ├── json-stringify-safe@5.0.1 ", "│ │ ├── mime-types@1.0.2 ", "│ │ ├── node-uuid@1.4.8 ", "│ │ ├── oauth-sign@0.4.0 ", "│ │ ├── qs@1.2.2 ", "│ │ ├── stringstream@0.0.5 ", "│ │ ├── tough-cookie@2.3.3 ", "│ │ └── tunnel-agent@0.4.3 ", "│ └─┬ urlgrey@0.4.0 ", "│ └─┬ tape@2.3.0 ", "│ ├── deep-equal@0.1.2 ", "│ ├── defined@0.0.0 ", "│ ├── jsonify@0.0.0 ", "│ ├── resumer@0.0.0 ", "│ ├── split@0.2.10 ", "│ ├─┬ stream-combiner@0.0.4 ", "│ │ └── duplexer@0.1.1 ", "│ └── through@2.3.8 ", "├─┬ commander@2.9.0 ", "│ └── graceful-readlink@1.0.1 ", "├─┬ expect@1.20.1 ", "│ ├─┬ define-properties@1.1.2 ", "│ │ └── foreach@2.0.5 ", "│ ├─┬ has@1.0.1 ", "│ │ └── function-bind@1.1.1 ", "│ ├─┬ is-equal@1.5.5 ", "│ │ ├── is-arrow-function@2.0.3 ", "│ │ ├── is-boolean-object@1.0.0 ", "│ │ ├── is-callable@1.1.3 ", "│ │ ├── is-date-object@1.0.1 ", "│ │ ├── is-generator-function@1.0.7 ", "│ │ ├── is-number-object@1.0.3 ", "│ │ ├── is-string@1.0.4 ", "│ │ ├── is-symbol@1.0.1 ", "│ │ └─┬ object.entries@1.0.4 ", "│ │ └─┬ es-abstract@1.10.0 ", "│ │ └── es-to-primitive@1.1.1 ", "│ ├── is-regex@1.0.4 ", "│ ├── object-inspect@1.5.0 ", "│ ├── object-keys@1.0.11 ", "│ └── tmatch@2.0.1 ", "├── font-awesome@4.7.0 ", "├── gl-matrix@2.3.1 ", "├── hammerjs@2.0.6 ", "├─┬ istanbul-instrumenter-loader@0.2.0 ", "│ ├─┬ istanbul@0.4.5 ", "│ │ ├── abbrev@1.0.9 ", "│ │ ├── async@1.5.2 ", "│ │ ├─┬ escodegen@1.8.1 ", "│ │ │ ├── estraverse@1.9.3 ", "│ │ │ ├── esutils@2.0.2 ", "│ │ │ └── source-map@0.2.0 ", "│ │ ├── esprima@2.7.3 ", "│ │ ├── glob@5.0.15 ", "│ │ ├─┬ handlebars@4.0.11 ", "│ │ │ ├── async@1.5.2 ", "│ │ │ ├─┬ optimist@0.6.1 ", "│ │ │ │ └── minimist@0.0.10 ", "│ │ │ └── source-map@0.4.4 ", "│ │ ├─┬ js-yaml@3.10.0 ", "│ │ │ ├─┬ argparse@1.0.9 ", "│ │ │ │ └── sprintf-js@1.0.3 ", "│ │ │ └── esprima@4.0.0 ", "│ │ ├─┬ mkdirp@0.5.1 ", "│ │ │ └── minimist@0.0.8 ", "│ │ ├── nopt@3.0.6 ", "│ │ ├─┬ once@1.4.0 ", "│ │ │ └── wrappy@1.0.2 ", "│ │ ├── resolve@1.1.7 ", "│ │ ├─┬ supports-color@3.2.3 ", "│ │ │ └── has-flag@1.0.0 ", "│ │ ├── which@1.3.0 ", "│ │ └── wordwrap@1.0.0 ", "│ ├─┬ loader-utils@0.2.17 ", "│ │ ├── big.js@3.2.0 ", "│ │ ├── emojis-list@2.1.0 ", "│ │ └── json5@0.5.1 ", "│ └── object-assign@4.1.1 ", "├─┬ jasmine@2.4.1 ", "│ ├── exit@0.1.2 ", "│ ├─┬ glob@3.2.11 ", "│ │ ├── inherits@2.0.3 ", "│ │ └─┬ minimatch@0.3.0 ", "│ │ ├── lru-cache@2.7.3 ", "│ │ └── sigmund@1.0.1 ", "│ └── jasmine-core@2.4.1 ", "├─┬ karma@0.13.22 ", "│ ├── batch@0.5.3 ", "│ ├── bluebird@2.11.0 ", "│ ├─┬ body-parser@1.18.2 ", "│ │ ├── bytes@3.0.0 ", "│ │ ├── content-type@1.0.4 ", "│ │ ├── depd@1.1.2 ", "│ │ ├─┬ http-errors@1.6.2 ", "│ │ │ ├── depd@1.1.1 ", "│ │ │ ├── setprototypeof@1.0.3 ", "│ │ │ └── statuses@1.4.0 ", "│ │ ├── iconv-lite@0.4.19 ", "│ │ ├─┬ on-finished@2.3.0 ", "│ │ │ └── ee-first@1.1.1 ", "│ │ ├── qs@6.5.1 ", "│ │ ├─┬ raw-body@2.3.2 ", "│ │ │ └── unpipe@1.0.0 ", "│ │ └─┬ type-is@1.6.15 ", "│ │ └── media-typer@0.3.0 ", "│ ├─┬ chokidar@1.7.0 ", "│ │ ├─┬ anymatch@1.3.2 ", "│ │ │ ├─┬ micromatch@2.3.11 ", "│ │ │ │ ├─┬ arr-diff@2.0.0 ", "│ │ │ │ │ └── arr-flatten@1.1.0 ", "│ │ │ │ ├─┬ braces@1.8.5 ", "│ │ │ │ │ ├─┬ expand-range@1.8.2 ", "│ │ │ │ │ │ └─┬ fill-range@2.2.3 ", "│ │ │ │ │ │ ├── is-number@2.1.0 ", "│ │ │ │ │ │ ├── isobject@2.1.0 ", "│ │ │ │ │ │ ├─┬ randomatic@1.1.7 ", "│ │ │ │ │ │ │ ├─┬ is-number@3.0.0 ", "│ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ └── kind-of@4.0.0 ", "│ │ │ │ │ │ └── repeat-string@1.6.1 ", "│ │ │ │ │ ├── preserve@0.2.0 ", "│ │ │ │ │ └── repeat-element@1.1.2 ", "│ │ │ │ ├─┬ expand-brackets@0.1.5 ", "│ │ │ │ │ └── is-posix-bracket@0.1.1 ", "│ │ │ │ ├── extglob@0.3.2 ", "│ │ │ │ ├── filename-regex@2.0.1 ", "│ │ │ │ ├─┬ kind-of@3.2.2 ", "│ │ │ │ │ └── is-buffer@1.1.6 ", "│ │ │ │ ├─┬ object.omit@2.0.1 ", "│ │ │ │ │ ├─┬ for-own@0.1.5 ", "│ │ │ │ │ │ └── for-in@1.0.2 ", "│ │ │ │ │ └── is-extendable@0.1.1 ", "│ │ │ │ ├─┬ parse-glob@3.0.4 ", "│ │ │ │ │ ├── glob-base@0.3.0 ", "│ │ │ │ │ └── is-dotfile@1.0.3 ", "│ │ │ │ └─┬ regex-cache@0.4.4 ", "│ │ │ │ └─┬ is-equal-shallow@0.1.3 ", "│ │ │ │ └── is-primitive@2.0.0 ", "│ │ │ └─┬ normalize-path@2.1.1 ", "│ │ │ └── remove-trailing-separator@1.1.0 ", "│ │ ├── async-each@1.0.1 ", "│ │ ├── glob-parent@2.0.0 ", "│ │ ├─┬ is-binary-path@1.0.1 ", "│ │ │ └── binary-extensions@1.11.0 ", "│ │ ├─┬ is-glob@2.0.1 ", "│ │ │ └── is-extglob@1.0.0 ", "│ │ ├── path-is-absolute@1.0.1 ", "│ │ └─┬ readdirp@2.1.0 ", "│ │ └── set-immediate-shim@1.0.1 ", "│ ├── colors@1.1.2 ", "│ ├─┬ connect@3.6.5 ", "│ │ ├─┬ finalhandler@1.0.6 ", "│ │ │ └── statuses@1.3.1 ", "│ │ ├── parseurl@1.3.2 ", "│ │ └── utils-merge@1.0.1 ", "│ ├── core-js@2.5.3 ", "│ ├── di@0.0.1 ", "│ ├─┬ dom-serialize@2.2.1 ", "│ │ ├── custom-event@1.0.1 ", "│ │ ├── ent@2.2.0 ", "│ │ ├── extend@3.0.1 ", "│ │ └── void-elements@2.0.1 ", "│ ├─┬ expand-braces@0.1.2 ", "│ │ ├── array-slice@0.2.3 ", "│ │ ├── array-unique@0.2.1 ", "│ │ └─┬ braces@0.1.5 ", "│ │ └─┬ expand-range@0.1.1 ", "│ │ ├── is-number@0.1.1 ", "│ │ └── repeat-string@0.2.2 ", "│ ├─┬ glob@7.1.2 ", "│ │ ├── fs.realpath@1.0.0 ", "│ │ └── inflight@1.0.6 ", "│ ├── graceful-fs@4.1.11 ", "│ ├─┬ http-proxy@1.16.2 ", "│ │ ├── eventemitter3@1.2.0 ", "│ │ └── requires-port@1.0.0 ", "│ ├── isbinaryfile@3.0.2 ", "│ ├── lodash@3.10.1 ", "│ ├─┬ log4js@0.6.38 ", "│ │ ├─┬ readable-stream@1.0.34 ", "│ │ │ ├── core-util-is@1.0.2 ", "│ │ │ ├── isarray@0.0.1 ", "│ │ │ └── string_decoder@0.10.31 ", "│ │ └── semver@4.3.6 ", "│ ├── mime@1.6.0 ", "│ ├─┬ minimatch@3.0.4 ", "│ │ └─┬ brace-expansion@1.1.8 ", "│ │ ├── balanced-match@1.0.0 ", "│ │ └── concat-map@0.0.1 ", "│ ├─┬ optimist@0.6.1 ", "│ │ ├── minimist@0.0.10 ", "│ │ └── wordwrap@0.0.3 ", "│ ├── rimraf@2.6.2 ", "│ ├─┬ socket.io@1.7.4 ", "│ │ ├─┬ debug@2.3.3 ", "│ │ │ └── ms@0.7.2 ", "│ │ ├─┬ engine.io@1.8.5 ", "│ │ │ ├── base64id@1.0.0 ", "│ │ │ ├─┬ debug@2.3.3 ", "│ │ │ │ └── ms@0.7.2 ", "│ │ │ ├─┬ engine.io-parser@1.3.2 ", "│ │ │ │ ├── after@0.8.2 ", "│ │ │ │ ├── arraybuffer.slice@0.0.6 ", "│ │ │ │ ├── base64-arraybuffer@0.1.5 ", "│ │ │ │ ├── blob@0.0.4 ", "│ │ │ │ └── wtf-8@1.0.0 ", "│ │ │ └── ws@1.1.5 ", "│ │ ├─┬ has-binary@0.1.7 ", "│ │ │ └── isarray@0.0.1 ", "│ │ ├── object-assign@4.1.0 ", "│ │ ├─┬ socket.io-adapter@0.5.0 ", "│ │ │ └─┬ debug@2.3.3 ", "│ │ │ └── ms@0.7.2 ", "│ │ ├─┬ socket.io-client@1.7.4 ", "│ │ │ ├── backo2@1.0.2 ", "│ │ │ ├── component-bind@1.0.0 ", "│ │ │ ├── component-emitter@1.2.1 ", "│ │ │ ├─┬ debug@2.3.3 ", "│ │ │ │ └── ms@0.7.2 ", "│ │ │ ├─┬ engine.io-client@1.8.5 ", "│ │ │ │ ├── component-emitter@1.2.1 ", "│ │ │ │ ├── component-inherit@0.0.3 ", "│ │ │ │ ├─┬ debug@2.3.3 ", "│ │ │ │ │ └── ms@0.7.2 ", "│ │ │ │ ├── has-cors@1.1.0 ", "│ │ │ │ ├── parsejson@0.0.3 ", "│ │ │ │ ├── parseqs@0.0.5 ", "│ │ │ │ ├── ws@1.1.5 ", "│ │ │ │ ├── xmlhttprequest-ssl@1.5.3 ", "│ │ │ │ └── yeast@0.1.2 ", "│ │ │ ├── indexof@0.0.1 ", "│ │ │ ├── object-component@0.0.3 ", "│ │ │ ├─┬ parseuri@0.0.5 ", "│ │ │ │ └─┬ better-assert@1.0.2 ", "│ │ │ │ └── callsite@1.0.0 ", "│ │ │ └── to-array@0.1.4 ", "│ │ └─┬ socket.io-parser@2.3.1 ", "│ │ ├── component-emitter@1.1.2 ", "│ │ ├─┬ debug@2.2.0 ", "│ │ │ └── ms@0.7.1 ", "│ │ ├── isarray@0.0.1 ", "│ │ └── json3@3.3.2 ", "│ ├── source-map@0.5.7 ", "│ └─┬ useragent@2.2.1 ", "│ ├── lru-cache@2.2.4 ", "│ └─┬ tmp@0.0.33 ", "│ └── os-tmpdir@1.0.2 ", "├─┬ karma-coverage@1.0.0 ", "│ ├─┬ dateformat@1.0.12 ", "│ │ ├── get-stdin@4.0.1 ", "│ │ └─┬ meow@3.7.0 ", "│ │ ├── camelcase-keys@2.1.0 ", "│ │ ├─┬ loud-rejection@1.6.0 ", "│ │ │ ├─┬ currently-unhandled@0.4.1 ", "│ │ │ │ └── array-find-index@1.0.2 ", "│ │ │ └── signal-exit@3.0.2 ", "│ │ ├── map-obj@1.0.1 ", "│ │ ├─┬ normalize-package-data@2.4.0 ", "│ │ │ ├── hosted-git-info@2.5.0 ", "│ │ │ ├── is-builtin-module@1.0.0 ", "│ │ │ └─┬ validate-npm-package-license@3.0.1 ", "│ │ │ ├─┬ spdx-correct@1.0.2 ", "│ │ │ │ └── spdx-license-ids@1.2.2 ", "│ │ │ └── spdx-expression-parse@1.0.4 ", "│ │ ├─┬ read-pkg-up@1.0.1 ", "│ │ │ └─┬ read-pkg@1.1.0 ", "│ │ │ ├─┬ load-json-file@1.1.0 ", "│ │ │ │ ├─┬ parse-json@2.2.0 ", "│ │ │ │ │ └─┬ error-ex@1.3.1 ", "│ │ │ │ │ └── is-arrayish@0.2.1 ", "│ │ │ │ └── strip-bom@2.0.0 ", "│ │ │ └── path-type@1.1.0 ", "│ │ ├─┬ redent@1.0.0 ", "│ │ │ ├── indent-string@2.1.0 ", "│ │ │ └── strip-indent@1.0.1 ", "│ │ └── trim-newlines@1.0.0 ", "│ └── source-map@0.5.7 ", "├── karma-jasmine@1.0.2 ", "├─┬ karma-phantomjs-launcher@1.0.0 ", "│ └── lodash@4.17.4 ", "├── karma-sourcemap-loader@0.3.7 ", "├─┬ karma-spec-reporter@0.0.26 ", "│ └── colors@0.6.2 ", "├─┬ karma-webpack@1.7.0 ", "│ ├── async@0.9.2 ", "│ ├── lodash@3.10.1 ", "│ ├─┬ source-map@0.1.43 ", "│ │ └── amdefine@1.0.1 ", "│ └─┬ webpack-dev-middleware@1.12.2 ", "│ ├─┬ memory-fs@0.4.1 ", "│ │ └─┬ errno@0.1.6 ", "│ │ └── prr@1.0.1 ", "│ ├── mime@1.6.0 ", "│ ├── range-parser@1.2.0 ", "│ └── time-stamp@2.0.0 ", "├─┬ kw-doc@1.0.18 ", "│ ├─┬ gh-pages@0.10.0 ", "│ │ ├── async@1.5.2 ", "│ │ ├── glob@7.0.6 ", "│ │ ├── graceful-fs@4.1.2 ", "│ │ ├── q@1.4.1 ", "│ │ ├─┬ q-io@1.13.2 ", "│ │ │ ├─┬ collections@0.2.2 ", "│ │ │ │ └── weak-map@1.0.0 ", "│ │ │ ├── mimeparse@0.1.4 ", "│ │ │ ├── qs@1.2.2 ", "│ │ │ └── url2@0.0.0 ", "│ │ └── wrench@1.5.8 ", "│ └── shelljs@0.7.4 ", "├─┬ kw-web-suite@2.0.0 ", "│ ├─┬ autoprefixer@6.3.6 ", "│ │ ├── browserslist@1.3.6 ", "│ │ ├── caniuse-db@1.0.30000793 ", "│ │ ├── normalize-range@0.1.2 ", "│ │ ├── num2fraction@1.2.2 ", "│ │ ├─┬ postcss@5.2.18 ", "│ │ │ ├── js-base64@2.1.9 ", "│ │ │ └── source-map@0.5.7 ", "│ │ └── postcss-value-parser@3.3.0 ", "│ ├─┬ babel-core@6.8.0 ", "│ │ ├─┬ babel-code-frame@6.26.0 ", "│ │ │ └── esutils@2.0.2 ", "│ │ ├─┬ babel-generator@6.26.0 ", "│ │ │ ├── jsesc@1.3.0 ", "│ │ │ ├── source-map@0.5.7 ", "│ │ │ └── trim-right@1.0.1 ", "│ │ ├── babel-helpers@6.24.1 ", "│ │ ├── babel-messages@6.23.0 ", "│ │ ├─┬ babel-register@6.26.0 ", "│ │ │ ├─┬ babel-core@6.26.0 ", "│ │ │ │ └── source-map@0.5.7 ", "│ │ │ ├── core-js@2.5.3 ", "│ │ │ └─┬ source-map-support@0.4.18 ", "│ │ │ └── source-map@0.5.7 ", "│ │ ├── babel-template@6.26.0 ", "│ │ ├── babel-traverse@6.26.0 ", "│ │ ├─┬ babel-types@6.26.0 ", "│ │ │ ├── esutils@2.0.2 ", "│ │ │ └── to-fast-properties@1.0.3 ", "│ │ ├── babylon@6.18.0 ", "│ │ ├── convert-source-map@1.5.1 ", "│ │ ├── json5@0.4.0 ", "│ │ ├── lodash@3.10.1 ", "│ │ ├── minimatch@2.0.10 ", "│ │ ├── path-exists@1.0.0 ", "│ │ ├── private@0.1.8 ", "│ │ ├── shebang-regex@1.0.0 ", "│ │ ├── slash@1.0.0 ", "│ │ └── source-map@0.5.7 ", "│ ├─┬ babel-eslint@6.0.4 ", "│ │ ├── lodash.assign@4.2.0 ", "│ │ └── lodash.pickby@4.6.0 ", "│ ├── babel-loader@6.2.4 ", "│ ├─┬ babel-polyfill@6.8.0 ", "│ │ ├── babel-regenerator-runtime@6.5.0 ", "│ │ └── core-js@2.5.3 ", "│ ├─┬ babel-preset-es2015@6.6.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.26.0 ", "│ │ ├─┬ babel-plugin-transform-es2015-classes@6.24.1 ", "│ │ │ ├── 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-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-commonjs@6.26.0 ", "│ │ │ └── babel-plugin-transform-strict-mode@6.24.1 ", "│ │ ├── babel-plugin-transform-es2015-object-super@6.24.1 ", "│ │ ├─┬ babel-plugin-transform-es2015-parameters@6.24.1 ", "│ │ │ ├── babel-helper-call-delegate@6.24.1 ", "│ │ │ └── babel-helper-get-function-arity@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-helper-regex@6.26.0 ", "│ │ ├── 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 ", "│ │ │ └─┬ regexpu-core@2.0.0 ", "│ │ │ ├── regenerate@1.3.3 ", "│ │ │ ├── regjsgen@0.2.0 ", "│ │ │ └─┬ regjsparser@0.1.5 ", "│ │ │ └── jsesc@0.5.0 ", "│ │ └─┬ babel-plugin-transform-regenerator@6.26.0 ", "│ │ └── regenerator-transform@0.10.1 ", "│ ├─┬ babel-preset-react@6.5.0 ", "│ │ ├── babel-plugin-syntax-flow@6.18.0 ", "│ │ ├── babel-plugin-syntax-jsx@6.18.0 ", "│ │ ├── babel-plugin-transform-flow-strip-types@6.22.0 ", "│ │ ├── babel-plugin-transform-react-display-name@6.25.0 ", "│ │ ├─┬ babel-plugin-transform-react-jsx@6.24.1 ", "│ │ │ └─┬ babel-helper-builder-react-jsx@6.26.0 ", "│ │ │ └── esutils@2.0.2 ", "│ │ └── babel-plugin-transform-react-jsx-source@6.22.0 ", "│ ├─┬ commitizen@2.8.1 ", "│ │ ├─┬ chalk@1.1.3 ", "│ │ │ ├── ansi-styles@2.2.1 ", "│ │ │ ├── escape-string-regexp@1.0.5 ", "│ │ │ ├── has-ansi@2.0.0 ", "│ │ │ └── supports-color@2.0.0 ", "│ │ ├── dedent@0.6.0 ", "│ │ ├─┬ detect-indent@4.0.0 ", "│ │ │ └─┬ repeating@2.0.1 ", "│ │ │ └── is-finite@1.0.2 ", "│ │ ├─┬ find-node-modules@1.0.1 ", "│ │ │ ├─┬ findup-sync@0.2.1 ", "│ │ │ │ └─┬ glob@4.3.5 ", "│ │ │ │ └── minimatch@2.0.10 ", "│ │ │ └── merge@1.2.0 ", "│ │ ├── find-root@1.1.0 ", "│ │ ├── glob@7.0.3 ", "│ │ ├─┬ gulp@3.9.1 ", "│ │ │ ├── archy@1.0.0 ", "│ │ │ ├── deprecated@0.0.1 ", "│ │ │ ├─┬ gulp-util@3.0.8 ", "│ │ │ │ ├── array-differ@1.0.0 ", "│ │ │ │ ├── array-uniq@1.0.3 ", "│ │ │ │ ├── beeper@1.1.1 ", "│ │ │ │ ├── dateformat@2.2.0 ", "│ │ │ │ ├─┬ fancy-log@1.3.2 ", "│ │ │ │ │ ├─┬ ansi-gray@0.1.1 ", "│ │ │ │ │ │ └── ansi-wrap@0.1.0 ", "│ │ │ │ │ ├── color-support@1.1.3 ", "│ │ │ │ │ └── time-stamp@1.1.0 ", "│ │ │ │ ├─┬ gulplog@1.0.0 ", "│ │ │ │ │ └── glogg@1.0.0 ", "│ │ │ │ ├─┬ has-gulplog@0.1.0 ", "│ │ │ │ │ └── sparkles@1.0.0 ", "│ │ │ │ ├── lodash._reescape@3.0.0 ", "│ │ │ │ ├── lodash._reevaluate@3.0.0 ", "│ │ │ │ ├── lodash._reinterpolate@3.0.0 ", "│ │ │ │ ├─┬ lodash.template@3.6.2 ", "│ │ │ │ │ ├── lodash._basecopy@3.0.1 ", "│ │ │ │ │ ├── lodash._basetostring@3.0.1 ", "│ │ │ │ │ ├── lodash._basevalues@3.0.0 ", "│ │ │ │ │ ├── lodash._isiterateecall@3.0.9 ", "│ │ │ │ │ ├── lodash.escape@3.2.0 ", "│ │ │ │ │ ├─┬ lodash.keys@3.1.2 ", "│ │ │ │ │ │ ├── lodash._getnative@3.9.1 ", "│ │ │ │ │ │ └── lodash.isarguments@3.1.0 ", "│ │ │ │ │ ├── lodash.restparam@3.6.1 ", "│ │ │ │ │ └── lodash.templatesettings@3.1.1 ", "│ │ │ │ ├─┬ multipipe@0.1.2 ", "│ │ │ │ │ └─┬ duplexer2@0.0.2 ", "│ │ │ │ │ └─┬ readable-stream@1.1.14 ", "│ │ │ │ │ ├── isarray@0.0.1 ", "│ │ │ │ │ └── string_decoder@0.10.31 ", "│ │ │ │ ├── object-assign@3.0.0 ", "│ │ │ │ ├── replace-ext@0.0.1 ", "│ │ │ │ └─┬ vinyl@0.5.3 ", "│ │ │ │ └── clone-stats@0.0.1 ", "│ │ │ ├─┬ liftoff@2.5.0 ", "│ │ │ │ ├─┬ findup-sync@2.0.0 ", "│ │ │ │ │ ├── detect-file@1.0.0 ", "│ │ │ │ │ ├─┬ is-glob@3.1.0 ", "│ │ │ │ │ │ └── is-extglob@2.1.1 ", "│ │ │ │ │ ├─┬ micromatch@3.1.5 ", "│ │ │ │ │ │ ├── arr-diff@4.0.0 ", "│ │ │ │ │ │ ├── array-unique@0.3.2 ", "│ │ │ │ │ │ ├─┬ braces@2.3.0 ", "│ │ │ │ │ │ │ ├─┬ fill-range@4.0.0 ", "│ │ │ │ │ │ │ │ ├─┬ is-number@3.0.0 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ └─┬ to-regex-range@2.1.1 ", "│ │ │ │ │ │ │ │ └── is-number@3.0.0 ", "│ │ │ │ │ │ │ ├── isobject@3.0.1 ", "│ │ │ │ │ │ │ ├─┬ snapdragon-node@2.1.1 ", "│ │ │ │ │ │ │ │ ├── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ └── snapdragon-util@3.0.1 ", "│ │ │ │ │ │ │ └─┬ split-string@3.1.0 ", "│ │ │ │ │ │ │ └─┬ extend-shallow@3.0.2 ", "│ │ │ │ │ │ │ ├── assign-symbols@1.0.0 ", "│ │ │ │ │ │ │ └── is-extendable@1.0.1 ", "│ │ │ │ │ │ ├─┬ define-property@1.0.0 ", "│ │ │ │ │ │ │ └─┬ is-descriptor@1.0.2 ", "│ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@1.0.0 ", "│ │ │ │ │ │ │ │ └── kind-of@6.0.2 ", "│ │ │ │ │ │ │ ├─┬ is-data-descriptor@1.0.0 ", "│ │ │ │ │ │ │ │ └── kind-of@6.0.2 ", "│ │ │ │ │ │ │ └── kind-of@6.0.2 ", "│ │ │ │ │ │ ├── extend-shallow@2.0.1 ", "│ │ │ │ │ │ ├─┬ extglob@2.0.4 ", "│ │ │ │ │ │ │ └─┬ expand-brackets@2.1.4 ", "│ │ │ │ │ │ │ ├─┬ define-property@0.2.5 ", "│ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ │ └── posix-character-classes@0.1.1 ", "│ │ │ │ │ │ ├── fragment-cache@0.2.1 ", "│ │ │ │ │ │ ├── kind-of@6.0.2 ", "│ │ │ │ │ │ ├─┬ nanomatch@1.2.7 ", "│ │ │ │ │ │ │ ├── arr-diff@4.0.0 ", "│ │ │ │ │ │ │ ├── array-unique@0.3.2 ", "│ │ │ │ │ │ │ ├─┬ is-odd@1.0.0 ", "│ │ │ │ │ │ │ │ └── is-number@3.0.0 ", "│ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ ├── regex-not@1.0.0 ", "│ │ │ │ │ │ ├─┬ snapdragon@0.8.1 ", "│ │ │ │ │ │ │ ├─┬ base@0.11.2 ", "│ │ │ │ │ │ │ │ ├─┬ cache-base@1.0.1 ", "│ │ │ │ │ │ │ │ │ ├─┬ collection-visit@1.0.0 ", "│ │ │ │ │ │ │ │ │ │ ├── map-visit@1.0.0 ", "│ │ │ │ │ │ │ │ │ │ └─┬ object-visit@1.0.1 ", "│ │ │ │ │ │ │ │ │ │ └── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ │ ├── component-emitter@1.2.1 ", "│ │ │ │ │ │ │ │ │ ├── get-value@2.0.6 ", "│ │ │ │ │ │ │ │ │ ├─┬ has-value@1.0.0 ", "│ │ │ │ │ │ │ │ │ │ ├─┬ has-values@1.0.0 ", "│ │ │ │ │ │ │ │ │ │ │ ├─┬ is-number@3.0.0 ", "│ │ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ │ │ │ └── kind-of@4.0.0 ", "│ │ │ │ │ │ │ │ │ │ └── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ │ ├── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ │ ├── set-value@2.0.0 ", "│ │ │ │ │ │ │ │ │ ├── to-object-path@0.3.0 ", "│ │ │ │ │ │ │ │ │ ├─┬ union-value@1.0.0 ", "│ │ │ │ │ │ │ │ │ │ └── set-value@0.4.3 ", "│ │ │ │ │ │ │ │ │ └─┬ unset-value@1.0.0 ", "│ │ │ │ │ │ │ │ │ ├─┬ has-value@0.3.1 ", "│ │ │ │ │ │ │ │ │ │ ├── has-values@0.1.4 ", "│ │ │ │ │ │ │ │ │ │ └── isobject@2.1.0 ", "│ │ │ │ │ │ │ │ │ └── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ ├─┬ class-utils@0.3.6 ", "│ │ │ │ │ │ │ │ │ ├── arr-union@3.1.0 ", "│ │ │ │ │ │ │ │ │ ├─┬ define-property@0.2.5 ", "│ │ │ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ │ │ │ ├── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ │ └─┬ static-extend@0.1.2 ", "│ │ │ │ │ │ │ │ │ ├─┬ define-property@0.2.5 ", "│ │ │ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ │ │ │ └─┬ object-copy@0.1.0 ", "│ │ │ │ │ │ │ │ │ ├── copy-descriptor@0.1.1 ", "│ │ │ │ │ │ │ │ │ └─┬ define-property@0.2.5 ", "│ │ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ ├── is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ ├── is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ │ │ ├── component-emitter@1.2.1 ", "│ │ │ │ │ │ │ │ ├── isobject@3.0.1 ", "│ │ │ │ │ │ │ │ ├─┬ mixin-deep@1.3.0 ", "│ │ │ │ │ │ │ │ │ └── is-extendable@1.0.1 ", "│ │ │ │ │ │ │ │ └── pascalcase@0.1.1 ", "│ │ │ │ │ │ │ ├─┬ define-property@0.2.5 ", "│ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ │ ├── source-map@0.5.7 ", "│ │ │ │ │ │ │ ├─┬ source-map-resolve@0.5.1 ", "│ │ │ │ │ │ │ │ ├── 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 ", "│ │ │ │ │ │ │ └─┬ use@2.0.2 ", "│ │ │ │ │ │ │ ├─┬ define-property@0.2.5 ", "│ │ │ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ │ │ ├── isobject@3.0.1 ", "│ │ │ │ │ │ │ └─┬ lazy-cache@2.0.2 ", "│ │ │ │ │ │ │ └── set-getter@0.1.0 ", "│ │ │ │ │ │ └─┬ to-regex@3.0.1 ", "│ │ │ │ │ │ └─┬ define-property@0.2.5 ", "│ │ │ │ │ │ └─┬ is-descriptor@0.1.6 ", "│ │ │ │ │ │ ├─┬ is-accessor-descriptor@0.1.6 ", "│ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ ├─┬ is-data-descriptor@0.1.4 ", "│ │ │ │ │ │ │ └── kind-of@3.2.2 ", "│ │ │ │ │ │ └── kind-of@5.1.0 ", "│ │ │ │ │ └─┬ resolve-dir@1.0.1 ", "│ │ │ │ │ └─┬ global-modules@1.0.0 ", "│ │ │ │ │ └── global-prefix@1.0.2 ", "│ │ │ │ ├─┬ fined@1.1.0 ", "│ │ │ │ │ ├─┬ expand-tilde@2.0.2 ", "│ │ │ │ │ │ └─┬ homedir-polyfill@1.0.1 ", "│ │ │ │ │ │ └── parse-passwd@1.0.0 ", "│ │ │ │ │ ├─┬ object.defaults@1.1.0 ", "│ │ │ │ │ │ ├── array-each@1.0.1 ", "│ │ │ │ │ │ ├── array-slice@1.1.0 ", "│ │ │ │ │ │ ├── for-own@1.0.0 ", "│ │ │ │ │ │ └── isobject@3.0.1 ", "│ │ │ │ │ ├─┬ object.pick@1.3.0 ", "│ │ │ │ │ │ └── isobject@3.0.1 ", "│ │ │ │ │ └─┬ parse-filepath@1.0.2 ", "│ │ │ │ │ ├─┬ is-absolute@1.0.0 ", "│ │ │ │ │ │ ├─┬ is-relative@1.0.0 ", "│ │ │ │ │ │ │ └── is-unc-path@1.0.0 ", "│ │ │ │ │ │ └── is-windows@1.0.1 ", "│ │ │ │ │ ├── map-cache@0.2.2 ", "│ │ │ │ │ └─┬ path-root@0.1.1 ", "│ │ │ │ │ └── path-root-regex@0.1.2 ", "│ │ │ │ ├── flagged-respawn@1.0.0 ", "│ │ │ │ ├─┬ is-plain-object@2.0.4 ", "│ │ │ │ │ └── isobject@3.0.1 ", "│ │ │ │ └─┬ object.map@1.0.1 ", "│ │ │ │ ├── for-own@1.0.0 ", "│ │ │ │ └── make-iterator@1.0.0 ", "│ │ │ ├─┬ orchestrator@0.3.8 ", "│ │ │ │ ├─┬ end-of-stream@0.1.5 ", "│ │ │ │ │ └── once@1.3.3 ", "│ │ │ │ ├── sequencify@0.0.7 ", "│ │ │ │ └── stream-consume@0.1.0 ", "│ │ │ ├── pretty-hrtime@1.0.3 ", "│ │ │ ├── tildify@1.2.0 ", "│ │ │ ├─┬ v8flags@2.1.1 ", "│ │ │ │ └── user-home@1.1.1 ", "│ │ │ └─┬ vinyl-fs@0.3.14 ", "│ │ │ ├── defaults@1.0.3 ", "│ │ │ ├─┬ glob-stream@3.1.18 ", "│ │ │ │ ├── glob@4.5.3 ", "│ │ │ │ ├─┬ glob2base@0.0.12 ", "│ │ │ │ │ └── find-index@0.1.1 ", "│ │ │ │ ├── minimatch@2.0.10 ", "│ │ │ │ ├── ordered-read-streams@0.1.0 ", "│ │ │ │ ├─┬ through2@0.6.5 ", "│ │ │ │ │ └─┬ readable-stream@1.0.34 ", "│ │ │ │ │ ├── isarray@0.0.1 ", "│ │ │ │ │ └── string_decoder@0.10.31 ", "│ │ │ │ └── unique-stream@1.0.0 ", "│ │ │ ├─┬ glob-watcher@0.0.6 ", "│ │ │ │ └─┬ gaze@0.5.2 ", "│ │ │ │ └─┬ globule@0.1.0 ", "│ │ │ │ ├─┬ glob@3.1.21 ", "│ │ │ │ │ ├── graceful-fs@1.2.3 ", "│ │ │ │ │ └── inherits@1.0.2 ", "│ │ │ │ ├── lodash@1.0.2 ", "│ │ │ │ └── minimatch@0.2.14 ", "│ │ │ ├─┬ graceful-fs@3.0.11 ", "│ │ │ │ └── natives@1.1.1 ", "│ │ │ ├─┬ strip-bom@1.0.0 ", "│ │ │ │ ├── first-chunk-stream@1.0.0 ", "│ │ │ │ └── is-utf8@0.2.1 ", "│ │ │ ├─┬ through2@0.6.5 ", "│ │ │ │ └─┬ readable-stream@1.0.34 ", "│ │ │ │ ├── isarray@0.0.1 ", "│ │ │ │ └── string_decoder@0.10.31 ", "│ │ │ └─┬ vinyl@0.4.6 ", "│ │ │ └── clone@0.2.0 ", "│ │ ├─┬ gulp-git@1.7.1 ", "│ │ │ ├── any-shell-escape@0.1.1 ", "│ │ │ ├── require-dir@0.1.0 ", "│ │ │ └─┬ through2@0.6.5 ", "│ │ │ └─┬ readable-stream@1.0.34 ", "│ │ │ ├── isarray@0.0.1 ", "│ │ │ └── string_decoder@0.10.31 ", "│ │ ├─┬ home-or-tmp@2.0.0 ", "│ │ │ └── os-homedir@1.0.2 ", "│ │ ├─┬ inquirer@1.0.2 ", "│ │ │ ├── ansi-escapes@1.4.0 ", "│ │ │ ├─┬ cli-cursor@1.0.2 ", "│ │ │ │ └─┬ restore-cursor@1.0.1 ", "│ │ │ │ ├── exit-hook@1.1.1 ", "│ │ │ │ └── onetime@1.1.0 ", "│ │ │ ├── cli-width@2.2.0 ", "│ │ │ ├── figures@1.7.0 ", "│ │ │ ├── mute-stream@0.0.6 ", "│ │ │ ├─┬ run-async@2.3.0 ", "│ │ │ │ └── is-promise@2.1.0 ", "│ │ │ └── rx@4.1.0 ", "│ │ ├── lodash@4.11.1 ", "│ │ ├── minimist@1.2.0 ", "│ │ ├── shelljs@0.5.3 ", "│ │ └── strip-json-comments@2.0.1 ", "│ ├─┬ css-loader@0.23.1 ", "│ │ ├─┬ css-selector-tokenizer@0.5.4 ", "│ │ │ └── cssesc@0.1.0 ", "│ │ ├─┬ cssnano@2.6.1 ", "│ │ │ ├─┬ autoprefixer-core@5.2.1 ", "│ │ │ │ └── browserslist@0.4.0 ", "│ │ │ ├── balanced-match@0.2.1 ", "│ │ │ ├── css-list@0.1.3 ", "│ │ │ ├── defined@1.0.0 ", "│ │ │ ├── indexes-of@1.0.1 ", "│ │ │ ├─┬ postcss-calc@4.1.0 ", "│ │ │ │ ├── postcss-message-helpers@2.0.0 ", "│ │ │ │ └─┬ reduce-css-calc@1.3.0 ", "│ │ │ │ ├── balanced-match@0.4.2 ", "│ │ │ │ └── math-expression-evaluator@1.2.17 ", "│ │ │ ├─┬ postcss-colormin@1.2.7 ", "│ │ │ │ ├─┬ color@0.10.1 ", "│ │ │ │ │ ├── color-convert@0.5.3 ", "│ │ │ │ │ └─┬ color-string@0.3.0 ", "│ │ │ │ │ └── color-name@1.1.3 ", "│ │ │ │ ├─┬ colormin@1.1.2 ", "│ │ │ │ │ ├─┬ color@0.11.4 ", "│ │ │ │ │ │ └── color-convert@1.9.1 ", "│ │ │ │ │ └── css-color-names@0.0.4 ", "│ │ │ │ └─┬ reduce-function-call@1.0.2 ", "│ │ │ │ └── balanced-match@0.4.2 ", "│ │ │ ├─┬ postcss-convert-values@1.3.1 ", "│ │ │ │ └── postcss-value-parser@1.4.2 ", "│ │ │ ├─┬ postcss-discard-comments@1.2.1 ", "│ │ │ │ └── node-balanced@0.0.14 ", "│ │ │ ├── postcss-discard-duplicates@1.2.1 ", "│ │ │ ├── postcss-discard-empty@1.1.2 ", "│ │ │ ├─┬ postcss-discard-unused@1.0.3 ", "│ │ │ │ ├── flatten@0.0.1 ", "│ │ │ │ └── uniqs@2.0.0 ", "│ │ │ ├─┬ postcss-filter-plugins@1.0.1 ", "│ │ │ │ └── uniqid@1.0.0 ", "│ │ │ ├─┬ postcss-font-family@1.2.1 ", "│ │ │ │ └── object-assign@3.0.0 ", "│ │ │ ├── postcss-merge-idents@1.0.2 ", "│ │ │ ├── postcss-merge-longhand@1.0.2 ", "│ │ │ ├── postcss-merge-rules@1.3.6 ", "│ │ │ ├── postcss-minify-font-weight@1.0.1 ", "│ │ │ ├─┬ postcss-minify-selectors@1.5.0 ", "│ │ │ │ ├── javascript-natural-sort@0.7.1 ", "│ │ │ │ ├── normalize-selector@0.2.0 ", "│ │ │ │ └─┬ postcss-selector-parser@1.3.3 ", "│ │ │ │ ├── flatten@1.0.2 ", "│ │ │ │ └── uniq@1.0.1 ", "│ │ │ ├─┬ postcss-normalize-url@2.1.3 ", "│ │ │ │ ├── is-absolute-url@2.1.0 ", "│ │ │ │ └─┬ normalize-url@1.9.1 ", "│ │ │ │ ├── prepend-http@1.0.4 ", "│ │ │ │ ├── query-string@4.3.4 ", "│ │ │ │ └─┬ sort-keys@1.1.2 ", "│ │ │ │ └── is-plain-obj@1.1.0 ", "│ │ │ ├── postcss-ordered-values@1.1.1 ", "│ │ │ ├── postcss-reduce-idents@1.0.3 ", "│ │ │ ├─┬ postcss-single-charset@0.3.0 ", "│ │ │ │ └─┬ fs-extra@0.14.0 ", "│ │ │ │ └── ncp@1.0.1 ", "│ │ │ ├── postcss-unique-selectors@1.0.1 ", "│ │ │ ├── postcss-zindex@1.1.3 ", "│ │ │ ├─┬ read-file-stdin@0.2.1 ", "│ │ │ │ └── gather-stream@1.0.0 ", "│ │ │ └── write-file-stdout@0.0.2 ", "│ │ ├─┬ lodash.camelcase@3.0.1 ", "│ │ │ └─┬ lodash._createcompounder@3.0.0 ", "│ │ │ ├─┬ lodash.deburr@3.2.0 ", "│ │ │ │ └── lodash._root@3.0.1 ", "│ │ │ └── lodash.words@3.2.0 ", "│ │ ├─┬ postcss@5.2.18 ", "│ │ │ └── source-map@0.5.7 ", "│ │ ├─┬ postcss-modules-extract-imports@1.1.0 ", "│ │ │ └─┬ postcss@6.0.16 ", "│ │ │ ├─┬ chalk@2.3.0 ", "│ │ │ │ ├─┬ ansi-styles@3.2.0 ", "│ │ │ │ │ └── color-convert@1.9.1 ", "│ │ │ │ └── supports-color@4.5.0 ", "│ │ │ ├── source-map@0.6.1 ", "│ │ │ └─┬ supports-color@5.1.0 ", "│ │ │ └── has-flag@2.0.0 ", "│ │ ├─┬ postcss-modules-local-by-default@1.2.0 ", "│ │ │ ├─┬ css-selector-tokenizer@0.7.0 ", "│ │ │ │ └── regexpu-core@1.0.0 ", "│ │ │ └─┬ postcss@6.0.16 ", "│ │ │ ├─┬ chalk@2.3.0 ", "│ │ │ │ └── supports-color@4.5.0 ", "│ │ │ ├── source-map@0.6.1 ", "│ │ │ └── supports-color@5.1.0 ", "│ │ ├─┬ postcss-modules-scope@1.1.0 ", "│ │ │ ├── css-selector-tokenizer@0.7.0 ", "│ │ │ └─┬ postcss@6.0.16 ", "│ │ │ ├─┬ chalk@2.3.0 ", "│ │ │ │ └── supports-color@4.5.0 ", "│ │ │ ├── source-map@0.6.1 ", "│ │ │ └── supports-color@5.1.0 ", "│ │ ├─┬ postcss-modules-values@1.3.0 ", "│ │ │ ├── icss-replace-symbols@1.1.0 ", "│ │ │ └─┬ postcss@6.0.16 ", "│ │ │ ├─┬ chalk@2.3.0 ", "│ │ │ │ ├─┬ ansi-styles@3.2.0 ", "│ │ │ │ │ └── color-convert@1.9.1 ", "│ │ │ │ └── supports-color@4.5.0 ", "│ │ │ ├── source-map@0.6.1 ", "│ │ │ └─┬ supports-color@5.1.0 ", "│ │ │ └── has-flag@2.0.0 ", "│ │ └── source-list-map@0.1.8 ", "│ ├─┬ cz-conventional-changelog@1.1.6 ", "│ │ └── word-wrap@1.2.3 ", "│ ├─┬ eslint@2.9.0 ", "│ │ ├─┬ concat-stream@1.6.0 ", "│ │ │ └── typedarray@0.0.6 ", "│ │ ├─┬ doctrine@1.5.0 ", "│ │ │ ├── esutils@2.0.2 ", "│ │ │ └── isarray@1.0.0 ", "│ │ ├─┬ es6-map@0.1.5 ", "│ │ │ ├── d@1.0.0 ", "│ │ │ ├── es5-ext@0.10.38 ", "│ │ │ ├── es6-iterator@2.0.3 ", "│ │ │ └── event-emitter@0.3.5 ", "│ │ ├─┬ escope@3.6.0 ", "│ │ │ ├── es6-weak-map@2.0.2 ", "│ │ │ ├─┬ esrecurse@4.2.0 ", "│ │ │ │ └── estraverse@4.2.0 ", "│ │ │ └── estraverse@4.2.0 ", "│ │ ├─┬ espree@3.1.4 ", "│ │ │ ├── acorn@3.3.0 ", "│ │ │ └─┬ acorn-jsx@3.0.1 ", "│ │ │ └── acorn@3.3.0 ", "│ │ ├── estraverse@4.2.0 ", "│ │ ├── esutils@2.0.2 ", "│ │ ├─┬ file-entry-cache@1.3.1 ", "│ │ │ └─┬ flat-cache@1.3.0 ", "│ │ │ ├── circular-json@0.3.3 ", "│ │ │ ├─┬ del@2.2.2 ", "│ │ │ │ ├─┬ globby@5.0.0 ", "│ │ │ │ │ ├── array-union@1.0.2 ", "│ │ │ │ │ └── arrify@1.0.1 ", "│ │ │ │ ├── is-path-cwd@1.0.0 ", "│ │ │ │ ├─┬ is-path-in-cwd@1.0.0 ", "│ │ │ │ │ └── is-path-inside@1.0.1 ", "│ │ │ │ └── pify@2.3.0 ", "│ │ │ └── write@0.2.1 ", "│ │ ├── globals@9.18.0 ", "│ │ ├── ignore@3.3.7 ", "│ │ ├── imurmurhash@0.1.4 ", "│ │ ├─┬ inquirer@0.12.0 ", "│ │ │ ├── ansi-regex@2.1.1 ", "│ │ │ ├─┬ readline2@1.0.1 ", "│ │ │ │ └── mute-stream@0.0.5 ", "│ │ │ ├── run-async@0.1.0 ", "│ │ │ └── rx-lite@3.1.2 ", "│ │ ├─┬ is-my-json-valid@2.17.1 ", "│ │ │ ├── generate-function@2.0.0 ", "│ │ │ ├─┬ generate-object-property@1.2.0 ", "│ │ │ │ └── is-property@1.0.2 ", "│ │ │ ├── jsonpointer@4.0.1 ", "│ │ │ └── xtend@4.0.1 ", "│ │ ├── is-resolvable@1.0.1 ", "│ │ ├── json-stable-stringify@1.0.1 ", "│ │ ├─┬ optionator@0.8.2 ", "│ │ │ ├── deep-is@0.1.3 ", "│ │ │ ├── fast-levenshtein@2.0.6 ", "│ │ │ ├── prelude-ls@1.1.2 ", "│ │ │ ├── type-check@0.3.2 ", "│ │ │ └── wordwrap@1.0.0 ", "│ │ ├── path-is-inside@1.0.2 ", "│ │ ├── pluralize@1.2.1 ", "│ │ ├─┬ require-uncached@1.0.3 ", "│ │ │ ├─┬ caller-path@0.1.0 ", "│ │ │ │ └── callsites@0.2.0 ", "│ │ │ └── resolve-from@1.0.1 ", "│ │ ├── shelljs@0.6.1 ", "│ │ ├── strip-json-comments@1.0.4 ", "│ │ ├─┬ table@3.8.3 ", "│ │ │ ├─┬ ajv@4.11.8 ", "│ │ │ │ └── co@4.6.0 ", "│ │ │ ├── ajv-keywords@1.5.1 ", "│ │ │ ├── slice-ansi@0.0.4 ", "│ │ │ └─┬ string-width@2.1.1 ", "│ │ │ ├── is-fullwidth-code-point@2.0.0 ", "│ │ │ └─┬ strip-ansi@4.0.0 ", "│ │ │ └── ansi-regex@3.0.0 ", "│ │ ├── text-table@0.2.0 ", "│ │ └── user-home@2.0.0 ", "│ ├─┬ eslint-config-airbnb@8.0.0 ", "│ │ └── eslint-config-airbnb-base@1.0.4 ", "│ ├── eslint-loader@1.3.0 ", "│ ├─┬ eslint-plugin-import@1.6.1 ", "│ │ ├── builtin-modules@1.1.1 ", "│ │ ├─┬ doctrine@1.2.3 ", "│ │ │ └── esutils@2.0.2 ", "│ │ ├── es6-set@0.1.5 ", "│ │ ├── es6-symbol@3.1.1 ", "│ │ ├── eslint-import-resolver-node@0.2.3 ", "│ │ ├── lodash.cond@4.5.2 ", "│ │ ├── lodash.endswith@4.2.1 ", "│ │ ├── lodash.find@4.6.0 ", "│ │ └─┬ pkg-up@1.0.0 ", "│ │ └─┬ find-up@1.1.2 ", "│ │ └── path-exists@2.1.0 ", "│ ├── eslint-plugin-jsx-a11y@1.0.4 ", "│ ├── eslint-plugin-react@5.0.1 ", "│ ├── expose-loader@0.7.1 ", "│ ├── file-loader@0.8.5 ", "│ ├─┬ html-loader@0.4.3 ", "│ │ ├─┬ es6-templates@0.2.3 ", "│ │ │ └─┬ recast@0.11.23 ", "│ │ │ ├── ast-types@0.9.6 ", "│ │ │ ├── esprima@3.1.3 ", "│ │ │ └── source-map@0.5.7 ", "│ │ ├── fastparse@1.1.1 ", "│ │ └─┬ html-minifier@1.5.0 ", "│ │ ├─┬ change-case@2.3.1 ", "│ │ │ ├── camel-case@1.2.2 ", "│ │ │ ├── constant-case@1.1.2 ", "│ │ │ ├── dot-case@1.1.2 ", "│ │ │ ├── is-lower-case@1.1.3 ", "│ │ │ ├── is-upper-case@1.1.2 ", "│ │ │ ├── lower-case@1.1.4 ", "│ │ │ ├── lower-case-first@1.0.2 ", "│ │ │ ├── param-case@1.1.2 ", "│ │ │ ├── pascal-case@1.1.2 ", "│ │ │ ├── path-case@1.1.2 ", "│ │ │ ├── sentence-case@1.1.3 ", "│ │ │ ├── snake-case@1.1.2 ", "│ │ │ ├── swap-case@1.1.2 ", "│ │ │ ├── title-case@1.1.2 ", "│ │ │ ├── upper-case@1.1.3 ", "│ │ │ └── upper-case-first@1.1.2 ", "│ │ ├─┬ clean-css@3.4.28 ", "│ │ │ ├── commander@2.8.1 ", "│ │ │ └── source-map@0.4.4 ", "│ │ ├─┬ concat-stream@1.5.2 ", "│ │ │ └─┬ readable-stream@2.0.6 ", "│ │ │ └── string_decoder@0.10.31 ", "│ │ ├── he@1.0.0 ", "│ │ ├─┬ ncname@1.0.0 ", "│ │ │ └── xml-char-classes@1.0.0 ", "│ │ ├── relateurl@0.2.7 ", "│ │ └─┬ uglify-js@2.6.4 ", "│ │ ├── async@0.2.10 ", "│ │ ├── source-map@0.5.7 ", "│ │ └─┬ yargs@3.10.0 ", "│ │ ├── camelcase@1.2.1 ", "│ │ ├─┬ cliui@2.1.0 ", "│ │ │ └── wordwrap@0.0.2 ", "│ │ └── window-size@0.1.0 ", "│ ├─┬ html-webpack-plugin@2.16.0 ", "│ │ ├── bluebird@3.5.1 ", "│ │ ├─┬ pretty-error@2.1.1 ", "│ │ │ ├─┬ renderkid@2.0.1 ", "│ │ │ │ ├─┬ css-select@1.2.0 ", "│ │ │ │ │ ├── css-what@2.1.0 ", "│ │ │ │ │ └── domutils@1.5.1 ", "│ │ │ │ ├─┬ dom-converter@0.1.4 ", "│ │ │ │ │ └── utila@0.3.3 ", "│ │ │ │ ├─┬ htmlparser2@3.3.0 ", "│ │ │ │ │ ├── domhandler@2.1.0 ", "│ │ │ │ │ ├── domutils@1.1.6 ", "│ │ │ │ │ └─┬ readable-stream@1.0.34 ", "│ │ │ │ │ ├── isarray@0.0.1 ", "│ │ │ │ │ └── string_decoder@0.10.31 ", "│ │ │ │ └── utila@0.3.3 ", "│ │ │ └── utila@0.4.0 ", "│ │ └── toposort@0.2.12 ", "│ ├── json-loader@0.5.4 ", "│ ├─┬ node-libs-browser@1.0.0 ", "│ │ ├── assert@1.4.1 ", "│ │ ├─┬ browserify-zlib@0.1.4 ", "│ │ │ └── pako@0.2.9 ", "│ │ ├─┬ buffer@4.9.1 ", "│ │ │ ├── base64-js@1.2.1 ", "│ │ │ └── ieee754@1.1.8 ", "│ │ ├─┬ console-browserify@1.1.0 ", "│ │ │ └── date-now@0.1.4 ", "│ │ ├── constants-browserify@1.0.0 ", "│ │ ├─┬ crypto-browserify@3.12.0 ", "│ │ │ ├─┬ browserify-cipher@1.0.0 ", "│ │ │ │ ├─┬ browserify-aes@1.1.1 ", "│ │ │ │ │ └── buffer-xor@1.0.3 ", "│ │ │ │ ├─┬ browserify-des@1.0.0 ", "│ │ │ │ │ └── des.js@1.0.0 ", "│ │ │ │ └─┬ evp_bytestokey@1.0.3 ", "│ │ │ │ └─┬ md5.js@1.3.4 ", "│ │ │ │ └── hash-base@3.0.4 ", "│ │ │ ├─┬ browserify-sign@4.0.4 ", "│ │ │ │ ├── bn.js@4.11.8 ", "│ │ │ │ ├── browserify-rsa@4.0.1 ", "│ │ │ │ ├─┬ elliptic@6.4.0 ", "│ │ │ │ │ ├── brorand@1.1.0 ", "│ │ │ │ │ ├── hash.js@1.1.3 ", "│ │ │ │ │ ├── hmac-drbg@1.0.1 ", "│ │ │ │ │ ├── minimalistic-assert@1.0.0 ", "│ │ │ │ │ └── minimalistic-crypto-utils@1.0.1 ", "│ │ │ │ └─┬ parse-asn1@5.1.0 ", "│ │ │ │ └── asn1.js@4.9.2 ", "│ │ │ ├── create-ecdh@4.0.0 ", "│ │ │ ├─┬ create-hash@1.1.3 ", "│ │ │ │ ├── cipher-base@1.0.4 ", "│ │ │ │ ├─┬ ripemd160@2.0.1 ", "│ │ │ │ │ └── hash-base@2.0.2 ", "│ │ │ │ └── sha.js@2.4.9 ", "│ │ │ ├── create-hmac@1.1.6 ", "│ │ │ ├─┬ diffie-hellman@5.0.2 ", "│ │ │ │ └── miller-rabin@4.0.1 ", "│ │ │ ├── pbkdf2@3.0.14 ", "│ │ │ ├── public-encrypt@4.0.0 ", "│ │ │ ├── randombytes@2.0.6 ", "│ │ │ └── randomfill@1.0.3 ", "│ │ ├── domain-browser@1.1.7 ", "│ │ ├── events@1.1.1 ", "│ │ ├─┬ http-browserify@1.7.0 ", "│ │ │ └── Base64@0.2.1 ", "│ │ ├── https-browserify@0.0.1 ", "│ │ ├── os-browserify@0.2.1 ", "│ │ ├── path-browserify@0.0.0 ", "│ │ ├── process@0.11.10 ", "│ │ ├── punycode@1.4.1 ", "│ │ ├── querystring-es3@0.2.1 ", "│ │ ├─┬ readable-stream@2.3.3 ", "│ │ │ ├── process-nextick-args@1.0.7 ", "│ │ │ ├── string_decoder@1.0.3 ", "│ │ │ └── util-deprecate@1.0.2 ", "│ │ ├── stream-browserify@2.0.1 ", "│ │ ├── string_decoder@0.10.31 ", "│ │ ├── timers-browserify@1.4.2 ", "│ │ ├── tty-browserify@0.0.0 ", "│ │ ├─┬ url@0.11.0 ", "│ │ │ ├── punycode@1.3.2 ", "│ │ │ └── querystring@0.2.0 ", "│ │ ├─┬ util@0.10.3 ", "│ │ │ └── inherits@2.0.1 ", "│ │ └── vm-browserify@0.0.4 ", "│ ├─┬ postcss-loader@0.9.1 ", "│ │ └─┬ postcss@5.2.18 ", "│ │ └── source-map@0.5.7 ", "│ ├─┬ semantic-release@4.3.5 ", "│ │ ├─┬ @semantic-release/commit-analyzer@2.0.0 ", "│ │ │ └─┬ conventional-changelog@0.0.17 ", "│ │ │ ├─┬ event-stream@3.3.4 ", "│ │ │ │ ├── from@0.1.7 ", "│ │ │ │ ├── map-stream@0.1.0 ", "│ │ │ │ ├── pause-stream@0.0.11 ", "│ │ │ │ └── split@0.3.3 ", "│ │ │ ├── lodash@3.10.1 ", "│ │ │ └─┬ normalize-package-data@1.0.3 ", "│ │ │ └── github-url-from-username-repo@1.0.2 ", "│ │ ├─┬ @semantic-release/condition-travis@4.1.4 ", "│ │ │ └── semver@5.5.0 ", "│ │ ├── @semantic-release/error@1.0.0 ", "│ │ ├─┬ @semantic-release/last-release-npm@1.2.1 ", "│ │ │ └─┬ npm-registry-client@7.5.0 ", "│ │ │ ├─┬ npm-package-arg@4.2.1 ", "│ │ │ │ └── semver@5.5.0 ", "│ │ │ ├─┬ npmlog@4.1.2 ", "│ │ │ │ ├── are-we-there-yet@1.1.4 ", "│ │ │ │ ├── console-control-strings@1.1.0 ", "│ │ │ │ ├─┬ gauge@2.7.4 ", "│ │ │ │ │ ├── aproba@1.2.0 ", "│ │ │ │ │ └── wide-align@1.1.2 ", "│ │ │ │ └── set-blocking@2.0.0 ", "│ │ │ ├── retry@0.10.1 ", "│ │ │ └── slide@1.1.6 ", "│ │ ├─┬ @semantic-release/release-notes-generator@2.0.0 ", "│ │ │ └── github-url-from-git@1.5.0 ", "│ │ ├─┬ git-head@1.20.1 ", "│ │ │ └─┬ git-refs@1.1.3 ", "│ │ │ ├─┬ path-object@2.3.0 ", "│ │ │ │ └─┬ lodash.assign@3.2.0 ", "│ │ │ │ ├── lodash._baseassign@3.2.0 ", "│ │ │ │ └─┬ lodash._createassigner@3.1.1 ", "│ │ │ │ └── lodash._bindcallback@3.0.1 ", "│ │ │ └─┬ walk@2.3.9 ", "│ │ │ └── foreachasync@3.0.0 ", "│ │ ├── github@0.2.4 ", "│ │ ├── lodash@3.10.1 ", "│ │ ├── nerf-dart@1.0.0 ", "│ │ ├─┬ npmconf@2.1.2 ", "│ │ │ ├─┬ config-chain@1.1.11 ", "│ │ │ │ └── proto-list@1.2.4 ", "│ │ │ ├── ini@1.3.5 ", "│ │ │ ├── once@1.3.3 ", "│ │ │ ├── osenv@0.1.4 ", "│ │ │ └── uid-number@0.0.5 ", "│ │ ├─┬ npmlog@1.2.1 ", "│ │ │ ├── ansi@0.3.1 ", "│ │ │ ├─┬ are-we-there-yet@1.0.6 ", "│ │ │ │ └── delegates@1.0.0 ", "│ │ │ └─┬ gauge@1.2.7 ", "│ │ │ ├── has-unicode@2.0.1 ", "│ │ │ ├── lodash.pad@4.5.1 ", "│ │ │ ├── lodash.padend@4.6.1 ", "│ │ │ └── lodash.padstart@4.6.1 ", "│ │ ├── parse-github-repo-url@1.4.1 ", "│ │ ├── require-relative@0.8.7 ", "│ │ ├─┬ run-auto@1.1.3 ", "│ │ │ └── dezalgo@1.0.3 ", "│ │ ├── run-series@1.1.4 ", "│ │ └── semver@5.5.0 ", "│ ├── shader-loader@1.1.4 ", "│ ├── shelljs@0.7.0 ", "│ ├── style-loader@0.13.1 ", "│ ├─┬ svg-sprite-loader@0.0.18 ", "│ │ ├─┬ cheerio@0.19.0 ", "│ │ │ ├─┬ css-select@1.0.0 ", "│ │ │ │ ├── boolbase@1.0.0 ", "│ │ │ │ ├── css-what@1.0.0 ", "│ │ │ │ ├── domutils@1.4.3 ", "│ │ │ │ └── nth-check@1.0.1 ", "│ │ │ ├─┬ dom-serializer@0.1.0 ", "│ │ │ │ └── domelementtype@1.1.3 ", "│ │ │ ├── entities@1.1.1 ", "│ │ │ ├─┬ htmlparser2@3.8.3 ", "│ │ │ │ ├── domelementtype@1.3.0 ", "│ │ │ │ ├── domhandler@2.3.0 ", "│ │ │ │ ├── domutils@1.5.1 ", "│ │ │ │ ├── entities@1.0.0 ", "│ │ │ │ └─┬ readable-stream@1.1.14 ", "│ │ │ │ ├── isarray@0.0.1 ", "│ │ │ │ └── string_decoder@0.10.31 ", "│ │ │ └── lodash@3.10.1 ", "│ │ ├── image-size@0.3.5 ", "│ │ └── sniffr@1.1.4 ", "│ ├─┬ url-loader@0.5.7 ", "│ │ └── mime@1.2.11 ", "│ ├─┬ webpack@1.13.0 ", "│ │ ├── acorn@3.3.0 ", "│ │ ├── async@1.5.2 ", "│ │ ├── clone@1.0.3 ", "│ │ ├─┬ enhanced-resolve@0.9.1 ", "│ │ │ └── memory-fs@0.2.0 ", "│ │ ├── interpret@0.6.6 ", "│ │ ├── memory-fs@0.3.0 ", "│ │ ├─┬ node-libs-browser@0.6.0 ", "│ │ │ ├── constants-browserify@0.0.1 ", "│ │ │ ├─┬ crypto-browserify@3.2.8 ", "│ │ │ │ ├── pbkdf2-compat@2.0.1 ", "│ │ │ │ ├── ripemd160@0.2.0 ", "│ │ │ │ └── sha.js@2.2.6 ", "│ │ │ ├── https-browserify@0.0.0 ", "│ │ │ ├── os-browserify@0.1.2 ", "│ │ │ ├─┬ readable-stream@1.1.14 ", "│ │ │ │ └── isarray@0.0.1 ", "│ │ │ ├─┬ stream-browserify@1.0.0 ", "│ │ │ │ └── readable-stream@1.1.14 ", "│ │ │ ├── string_decoder@0.10.31 ", "│ │ │ └─┬ url@0.10.3 ", "│ │ │ └── punycode@1.3.2 ", "│ │ ├─┬ optimist@0.6.1 ", "│ │ │ └── minimist@0.0.10 ", "│ │ ├── tapable@0.1.10 ", "│ │ ├─┬ uglify-js@2.6.4 ", "│ │ │ ├── async@0.2.10 ", "│ │ │ ├── source-map@0.5.7 ", "│ │ │ ├── uglify-to-browserify@1.0.2 ", "│ │ │ └─┬ yargs@3.10.0 ", "│ │ │ ├── camelcase@1.2.1 ", "│ │ │ ├─┬ cliui@2.1.0 ", "│ │ │ │ ├─┬ center-align@0.1.3 ", "│ │ │ │ │ ├─┬ align-text@0.1.4 ", "│ │ │ │ │ │ └── longest@1.0.1 ", "│ │ │ │ │ └── lazy-cache@1.0.4 ", "│ │ │ │ ├── right-align@0.1.3 ", "│ │ │ │ └── wordwrap@0.0.2 ", "│ │ │ └── window-size@0.1.0 ", "│ │ ├── watchpack@0.2.9 ", "│ │ └─┬ webpack-core@0.6.9 ", "│ │ └── source-map@0.4.4 ", "│ └─┬ webpack-dev-server@1.14.1 ", "│ ├─┬ compression@1.7.1 ", "│ │ ├── accepts@1.3.4 ", "│ │ ├── compressible@2.0.12 ", "│ │ └── on-headers@1.0.1 ", "│ ├── connect-history-api-fallback@1.1.0 ", "│ ├─┬ express@4.16.2 ", "│ │ ├── accepts@1.3.4 ", "│ │ ├── etag@1.8.1 ", "│ │ ├── finalhandler@1.1.0 ", "│ │ ├── fresh@0.5.2 ", "│ │ ├─┬ proxy-addr@2.0.2 ", "│ │ │ └── ipaddr.js@1.5.2 ", "│ │ ├─┬ send@0.16.1 ", "│ │ │ ├── mime@1.4.1 ", "│ │ │ └── statuses@1.3.1 ", "│ │ ├── serve-static@1.13.1 ", "│ │ ├── setprototypeof@1.1.0 ", "│ │ └── statuses@1.3.1 ", "│ ├─┬ optimist@0.6.1 ", "│ │ └── minimist@0.0.10 ", "│ ├─┬ serve-index@1.9.1 ", "│ │ ├── accepts@1.3.4 ", "│ │ └── batch@0.6.1 ", "│ ├─┬ sockjs@0.3.19 ", "│ │ └─┬ faye-websocket@0.10.0 ", "│ │ └─┬ websocket-driver@0.7.0 ", "│ │ ├── http-parser-js@0.4.9 ", "│ │ └── websocket-extensions@0.1.3 ", "│ ├─┬ sockjs-client@1.1.4 ", "│ │ ├─┬ eventsource@0.1.6 ", "│ │ │ └─┬ original@1.0.0 ", "│ │ │ └─┬ url-parse@1.0.5 ", "│ │ │ └── querystringify@0.0.4 ", "│ │ ├── faye-websocket@0.11.1 ", "│ │ └─┬ url-parse@1.2.0 ", "│ │ └── querystringify@1.0.0 ", "│ ├── stream-cache@0.0.2 ", "│ └── strip-ansi@3.0.1 ", "├─┬ monologue.js@0.3.5 ", "│ ├── lodash@3.10.1 ", "│ └─┬ riveter@0.2.0 ", "│ └── lodash@2.4.2 ", "├── mout@0.11.1 ", "├── normalize.css@5.0.0 ", "├── open@0.0.5 ", "├─┬ phantomjs-prebuilt@2.1.7 ", "│ ├─┬ extract-zip@1.5.0 ", "│ │ ├─┬ concat-stream@1.5.0 ", "│ │ │ └─┬ readable-stream@2.0.6 ", "│ │ │ └── string_decoder@0.10.31 ", "│ │ ├── debug@0.7.4 ", "│ │ ├─┬ mkdirp@0.5.0 ", "│ │ │ └── minimist@0.0.8 ", "│ │ └─┬ yauzl@2.4.1 ", "│ │ └─┬ fd-slicer@1.0.1 ", "│ │ └── pend@1.2.0 ", "│ ├─┬ fs-extra@0.26.7 ", "│ │ ├── jsonfile@2.4.0 ", "│ │ └── klaw@1.3.1 ", "│ ├─┬ hasha@2.2.0 ", "│ │ ├── is-stream@1.1.0 ", "│ │ └─┬ pinkie-promise@2.0.1 ", "│ │ └── pinkie@2.0.4 ", "│ ├── kew@0.7.0 ", "│ ├── progress@1.1.8 ", "│ ├─┬ request@2.67.0 ", "│ │ ├── aws-sign2@0.6.0 ", "│ │ ├─┬ bl@1.0.3 ", "│ │ │ └─┬ readable-stream@2.0.6 ", "│ │ │ └── string_decoder@0.10.31 ", "│ │ ├── caseless@0.11.0 ", "│ │ ├─┬ combined-stream@1.0.5 ", "│ │ │ └── delayed-stream@1.0.0 ", "│ │ ├── forever-agent@0.6.1 ", "│ │ ├─┬ form-data@1.0.1 ", "│ │ │ └── async@2.6.0 ", "│ │ ├── har-validator@2.0.6 ", "│ │ ├─┬ hawk@3.1.3 ", "│ │ │ ├── boom@2.10.1 ", "│ │ │ ├── cryptiles@2.0.5 ", "│ │ │ ├── hoek@2.16.3 ", "│ │ │ └── sntp@1.0.9 ", "│ │ ├─┬ http-signature@1.1.1 ", "│ │ │ ├── assert-plus@0.2.0 ", "│ │ │ ├─┬ jsprim@1.4.1 ", "│ │ │ │ ├── extsprintf@1.3.0 ", "│ │ │ │ ├── json-schema@0.2.3 ", "│ │ │ │ └── verror@1.10.0 ", "│ │ │ └─┬ sshpk@1.13.1 ", "│ │ │ ├── asn1@0.2.3 ", "│ │ │ ├── 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 ", "│ │ ├── is-typedarray@1.0.0 ", "│ │ ├── isstream@0.1.2 ", "│ │ ├─┬ mime-types@2.1.17 ", "│ │ │ └── mime-db@1.30.0 ", "│ │ ├── node-uuid@1.4.8 ", "│ │ ├── oauth-sign@0.8.2 ", "│ │ ├── qs@5.2.1 ", "│ │ ├── tough-cookie@2.2.2 ", "│ │ └── tunnel-agent@0.4.3 ", "│ ├─┬ request-progress@2.0.1 ", "│ │ └── throttleit@1.0.0 ", "│ └─┬ which@1.2.14 ", "│ └── isexe@2.0.0 ", "├─┬ pvw-visualizer@2.0.18 ", "│ └── shelljs@0.7.4 ", "├─┬ react@15.4.2 ", "│ ├─┬ fbjs@0.8.16 ", "│ │ ├── core-js@1.2.7 ", "│ │ ├─┬ isomorphic-fetch@2.2.1 ", "│ │ │ ├─┬ node-fetch@1.7.3 ", "│ │ │ │ └── encoding@0.1.12 ", "│ │ │ └── whatwg-fetch@2.0.3 ", "│ │ ├─┬ promise@7.3.1 ", "│ │ │ └── asap@2.0.6 ", "│ │ ├── setimmediate@1.0.5 ", "│ │ └── ua-parser-js@0.7.17 ", "│ └─┬ loose-envify@1.3.1 ", "│ └── js-tokens@3.0.2 ", "├── react-addons-test-utils@15.4.2 ", "├── react-dom@15.4.2 ", "├─┬ react-redux@4.4.6 ", "│ ├── hoist-non-react-statics@1.2.0 ", "│ └── invariant@2.2.2 ", "├─┬ react-router@2.0.1 ", "│ ├─┬ history@2.1.2 ", "│ │ ├── deep-equal@1.0.1 ", "│ │ └─┬ query-string@3.0.3 ", "│ │ └── strict-uri-encode@1.1.0 ", "│ └── warning@2.1.0 ", "├── react-router-redux@4.0.7 ", "├─┬ redux@3.3.1 ", "│ └── lodash-es@4.17.4 ", "├─┬ redux-actions-assertions@1.3.0 ", "│ └─┬ redux-actions-assertions-js@1.1.0 ", "│ ├── lodash.clonedeep@4.5.0 ", "│ ├── lodash.findindex@4.6.0 ", "│ ├── lodash.flattendeep@4.4.0 ", "│ ├─┬ redux@3.7.2 ", "│ │ └── symbol-observable@1.1.0 ", "│ └─┬ redux-mock-store@1.4.0 ", "│ └── lodash.isplainobject@4.0.6 ", "├── redux-thunk@2.1.0 ", "├── reselect@2.5.3 ", "├─┬ shelljs@0.7.6 ", "│ ├── interpret@1.1.0 ", "│ └─┬ rechoir@0.6.2 ", "│ └─┬ resolve@1.5.0 ", "│ └── path-parse@1.0.5 ", "├─┬ simput@1.3.24 ", "│ ├─┬ autoprefixer@6.5.0 ", "│ │ ├── browserslist@1.4.0 ", "│ │ ├── postcss@5.2.18 ", "│ │ └── postcss-value-parser@3.3.0 ", "│ ├─┬ babel-core@6.17.0 ", "│ │ ├── json5@0.4.0 ", "│ │ ├── path-exists@1.0.0 ", "│ │ └── source-map@0.5.7 ", "│ ├── babel-eslint@7.0.0 ", "│ ├── babel-loader@6.2.5 ", "│ ├─┬ babel-polyfill@6.16.0 ", "│ │ └── core-js@2.5.3 ", "│ ├─┬ babel-preset-es2015@6.16.0 ", "│ │ ├── babel-plugin-transform-es2015-modules-amd@6.24.1 ", "│ │ ├─┬ babel-plugin-transform-es2015-modules-systemjs@6.24.1 ", "│ │ │ └── babel-helper-hoist-variables@6.24.1 ", "│ │ └── babel-plugin-transform-es2015-modules-umd@6.24.1 ", "│ ├─┬ babel-preset-react@6.16.0 ", "│ │ └── babel-plugin-transform-react-jsx-self@6.22.0 ", "│ ├─┬ body-parser@1.16.0 ", "│ │ ├── bytes@2.4.0 ", "│ │ ├─┬ debug@2.6.0 ", "│ │ │ └── ms@0.7.2 ", "│ │ ├─┬ http-errors@1.5.1 ", "│ │ │ └── setprototypeof@1.0.2 ", "│ │ ├── iconv-lite@0.4.15 ", "│ │ ├── qs@6.2.1 ", "│ │ └── raw-body@2.2.0 ", "│ ├─┬ css-loader@0.25.0 ", "│ │ ├─┬ css-selector-tokenizer@0.6.0 ", "│ │ │ └── regexpu-core@1.0.0 ", "│ │ ├─┬ postcss-modules-extract-imports@1.1.0 ", "│ │ │ └─┬ postcss@6.0.16 ", "│ │ │ ├─┬ chalk@2.3.0 ", "│ │ │ │ ├─┬ ansi-styles@3.2.0 ", "│ │ │ │ │ └── color-convert@1.9.1 ", "│ │ │ │ └── supports-color@4.5.0 ", "│ │ │ ├── source-map@0.6.1 ", "│ │ │ └─┬ supports-color@5.1.0 ", "│ │ │ └── has-flag@2.0.0 ", "│ │ ├─┬ postcss-modules-local-by-default@1.2.0 ", "│ │ │ ├── css-selector-tokenizer@0.7.0 ", "│ │ │ └─┬ postcss@6.0.16 ", "│ │ │ ├─┬ chalk@2.3.0 ", "│ │ │ │ └── supports-color@4.5.0 ", "│ │ │ ├── source-map@0.6.1 ", "│ │ │ └── supports-color@5.1.0 ", "│ │ └─┬ postcss-modules-scope@1.1.0 ", "│ │ ├── css-selector-tokenizer@0.7.0 ", "│ │ └─┬ postcss@6.0.16 ", "│ │ ├─┬ chalk@2.3.0 ", "│ │ │ └── supports-color@4.5.0 ", "│ │ ├── source-map@0.6.1 ", "│ │ └── supports-color@5.1.0 ", "│ ├─┬ eslint@3.7.1 ", "│ │ ├─┬ espree@3.5.2 ", "│ │ │ └── acorn@5.3.0 ", "│ │ ├── estraverse@4.2.0 ", "│ │ ├── esutils@2.0.2 ", "│ │ ├── file-entry-cache@2.0.0 ", "│ │ ├─┬ inquirer@0.12.0 ", "│ │ │ └── run-async@0.1.0 ", "│ │ ├── levn@0.3.0 ", "│ │ ├── natural-compare@1.4.0 ", "│ │ ├── shelljs@0.6.1 ", "│ │ ├── strip-bom@3.0.0 ", "│ │ ├── strip-json-comments@1.0.4 ", "│ │ └── user-home@2.0.0 ", "│ ├─┬ eslint-config-airbnb@12.0.0 ", "│ │ └── eslint-config-airbnb-base@8.0.0 ", "│ ├─┬ eslint-import-resolver-webpack@0.6.0 ", "│ │ ├── array-find@1.0.0 ", "│ │ ├── find-root@0.1.2 ", "│ │ ├─┬ is-absolute@0.2.6 ", "│ │ │ ├─┬ is-relative@0.2.1 ", "│ │ │ │ └─┬ is-unc-path@0.1.2 ", "│ │ │ │ └── unc-path-regex@0.1.2 ", "│ │ │ └── is-windows@0.2.0 ", "│ │ ├─┬ lodash.get@3.7.0 ", "│ │ │ ├── lodash._baseget@3.7.2 ", "│ │ │ └─┬ lodash._topath@3.8.1 ", "│ │ │ └── lodash.isarray@3.0.4 ", "│ │ └── semver@5.5.0 ", "│ ├─┬ eslint-loader@1.5.0 ", "│ │ └─┬ find-cache-dir@0.1.1 ", "│ │ └── commondir@1.0.1 ", "│ ├─┬ eslint-plugin-import@1.16.0 ", "│ │ ├── contains-path@0.1.0 ", "│ │ ├── doctrine@1.3.0 ", "│ │ └── pkg-dir@1.0.0 ", "│ ├─┬ eslint-plugin-jsx-a11y@2.2.2 ", "│ │ ├── damerau-levenshtein@1.0.4 ", "│ │ └── jsx-ast-utils@1.4.1 ", "│ ├── eslint-plugin-react@6.3.0 ", "│ ├─┬ express@4.14.1 ", "│ │ ├─┬ accepts@1.3.3 ", "│ │ │ └── negotiator@0.6.1 ", "│ │ ├── array-flatten@1.1.1 ", "│ │ ├── content-disposition@0.5.2 ", "│ │ ├── cookie@0.3.1 ", "│ │ ├── cookie-signature@1.0.6 ", "│ │ ├─┬ debug@2.2.0 ", "│ │ │ └── ms@0.7.1 ", "│ │ ├── encodeurl@1.0.1 ", "│ │ ├── escape-html@1.0.3 ", "│ │ ├── etag@1.7.0 ", "│ │ ├─┬ finalhandler@0.5.1 ", "│ │ │ ├─┬ debug@2.2.0 ", "│ │ │ │ └── ms@0.7.1 ", "│ │ │ └── statuses@1.3.1 ", "│ │ ├── fresh@0.3.0 ", "│ │ ├── merge-descriptors@1.0.1 ", "│ │ ├── methods@1.1.2 ", "│ │ ├── path-to-regexp@0.1.7 ", "│ │ ├─┬ proxy-addr@1.1.5 ", "│ │ │ ├── forwarded@0.1.2 ", "│ │ │ └── ipaddr.js@1.4.0 ", "│ │ ├── qs@6.2.0 ", "│ │ ├─┬ send@0.14.2 ", "│ │ │ ├─┬ debug@2.2.0 ", "│ │ │ │ └── ms@0.7.1 ", "│ │ │ ├── destroy@1.0.4 ", "│ │ │ ├── mime@1.3.4 ", "│ │ │ └── statuses@1.3.1 ", "│ │ ├── serve-static@1.11.2 ", "│ │ ├── utils-merge@1.0.0 ", "│ │ └── vary@1.1.2 ", "│ ├── file-loader@0.9.0 ", "│ ├─┬ handlebars@4.0.6 ", "│ │ ├── async@1.5.2 ", "│ │ ├─┬ optimist@0.6.1 ", "│ │ │ └── minimist@0.0.10 ", "│ │ ├── source-map@0.4.4 ", "│ │ └─┬ uglify-js@2.8.29 ", "│ │ ├── source-map@0.5.7 ", "│ │ └─┬ yargs@3.10.0 ", "│ │ ├── camelcase@1.2.1 ", "│ │ ├─┬ cliui@2.1.0 ", "│ │ │ └── wordwrap@0.0.2 ", "│ │ └── window-size@0.1.0 ", "│ ├─┬ handlebars-loader@1.4.0 ", "│ │ └── async@0.2.10 ", "│ ├─┬ html-loader@0.4.4 ", "│ │ └─┬ html-minifier@3.5.8 ", "│ │ ├─┬ camel-case@3.0.0 ", "│ │ │ └── no-case@2.3.2 ", "│ │ ├── clean-css@4.1.9 ", "│ │ ├── commander@2.12.2 ", "│ │ ├── he@1.1.1 ", "│ │ ├── param-case@2.1.1 ", "│ │ └─┬ uglify-js@3.3.7 ", "│ │ ├── commander@2.13.0 ", "│ │ └── source-map@0.6.1 ", "│ ├─┬ html-webpack-plugin@2.22.0 ", "│ │ ├── bluebird@3.5.1 ", "│ │ ├─┬ html-minifier@2.1.7 ", "│ │ │ ├─┬ change-case@3.0.1 ", "│ │ │ │ ├── constant-case@2.0.0 ", "│ │ │ │ ├── dot-case@2.1.1 ", "│ │ │ │ ├── header-case@1.0.1 ", "│ │ │ │ ├── pascal-case@2.0.1 ", "│ │ │ │ ├── path-case@2.1.1 ", "│ │ │ │ ├── sentence-case@2.1.1 ", "│ │ │ │ ├── snake-case@2.1.0 ", "│ │ │ │ └── title-case@2.1.1 ", "│ │ │ ├─┬ clean-css@3.4.28 ", "│ │ │ │ ├── commander@2.8.1 ", "│ │ │ │ └── source-map@0.4.4 ", "│ │ │ └─┬ uglify-js@2.6.4 ", "│ │ │ ├── async@0.2.10 ", "│ │ │ └── source-map@0.5.7 ", "│ │ └── toposort@1.0.6 ", "│ ├── ini@1.3.4 ", "│ ├── postcss-loader@0.13.0 ", "│ ├── shader-loader@1.3.0 ", "│ ├─┬ string-replace-loader@1.0.5 ", "│ │ └── lodash@3.10.1 ", "│ ├── style-loader@0.13.1 ", "│ ├── svg-sprite-loader@0.0.29 ", "│ ├─┬ webpack@1.13.2 ", "│ │ ├── acorn@3.3.0 ", "│ │ ├── interpret@0.6.6 ", "│ │ ├── memory-fs@0.3.0 ", "│ │ ├─┬ node-libs-browser@0.6.0 ", "│ │ │ ├── constants-browserify@0.0.1 ", "│ │ │ ├─┬ crypto-browserify@3.2.8 ", "│ │ │ │ ├── ripemd160@0.2.0 ", "│ │ │ │ └── sha.js@2.2.6 ", "│ │ │ ├── https-browserify@0.0.0 ", "│ │ │ ├── os-browserify@0.1.2 ", "│ │ │ ├─┬ readable-stream@1.1.14 ", "│ │ │ │ └── isarray@0.0.1 ", "│ │ │ ├─┬ stream-browserify@1.0.0 ", "│ │ │ │ └─┬ readable-stream@1.1.14 ", "│ │ │ │ └── isarray@0.0.1 ", "│ │ │ ├── string_decoder@0.10.31 ", "│ │ │ └─┬ url@0.10.3 ", "│ │ │ └── punycode@1.3.2 ", "│ │ └─┬ uglify-js@2.6.4 ", "│ │ ├── async@0.2.10 ", "│ │ └─┬ yargs@3.10.0 ", "│ │ ├── camelcase@1.2.1 ", "│ │ ├─┬ cliui@2.1.0 ", "│ │ │ └── wordwrap@0.0.2 ", "│ │ └── window-size@0.1.0 ", "│ └─┬ webpack-dev-server@1.16.2 ", "│ ├── connect-history-api-fallback@1.5.0 ", "│ └─┬ http-proxy-middleware@0.17.4 ", "│ └─┬ is-glob@3.1.0 ", "│ └── is-extglob@2.1.1 ", "├─┬ vtk.js@2.15.0 ", "│ ├── blueimp-md5@2.3.0 ", "│ ├─┬ jszip@3.1.3 ", "│ │ ├── core-js@2.3.0 ", "│ │ ├── es6-promise@3.0.2 ", "│ │ ├─┬ lie@3.1.1 ", "│ │ │ └── immediate@3.0.6 ", "│ │ ├── pako@1.0.6 ", "│ │ └─┬ readable-stream@2.0.6 ", "│ │ └── string_decoder@0.10.31 ", "│ ├── pako@1.0.1 ", "│ ├── seedrandom@2.4.2 ", "│ └── shelljs@0.7.4 ", "└─┬ ws@0.8.1 ", " ├─┬ bufferutil@1.2.1 ", " │ ├── bindings@1.2.1 ", " │ └── nan@2.8.0 ", " ├── options@0.0.6 ", " ├── ultron@1.0.2 ", " └─┬ utf-8-validate@1.2.2 ", " └── nan@2.4.0 ", ""]} to retry, use: --limit @/Users/felixveysseyre/Projects/Cemosis/HPCCloud-deploy/ansible/site.retry

PLAY RECAP ***** hpccloud-vm : ok=35 changed=25 unreachable=0 failed=1

Ansible failed to complete successfully. Any error output should be visible above. Please fix these errors and try again.

Here is the issue correctly formatted:

npm ERR! Linux 3.13.0-119-generic npm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"install\" npm ERR! node v6.11.5 npm ERR! npm v3.10.10 npm ERR! path /opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js npm ERR! code ENOENT npm ERR! errno -2 npm ERR! syscall chmod

npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js' npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/esprima/bin/esparse.js' npm ERR! enoent This is most likely not a problem with npm itself npm ERR! enoent and is related to npm not being able to find a file. npm ERR! enoent

npm ERR! Please include the following file with any support request: npm ERR! /opt/hpccloud/hpccloud/npm-debug.log

Mac OSX: 10.11.2 Vagrant: 1.9.5 Ansible: 2.3.0.0 (local), 2.1.0.0 (on VM)

Thanks

felixveysseyre commented 6 years ago

I try to manually run the npm install command:

vagrant ssh
sudo -iu hpccloud
cd /opt/hpccloud/hpccloud/
rm -Rf node_modules
npm install

I got the same error but for another package:

npm ERR! Linux 3.13.0-119-generic npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" npm ERR! node v6.11.5 npm ERR! npm v3.10.10 npm ERR! path /opt/hpccloud/hpccloud/node_modules/sshpk/bin/sshpk-sign npm ERR! code ENOENT npm ERR! errno -2 npm ERR! syscall chmod

npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/sshpk/bin/sshpk-sign' npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/sshpk/bin/sshpk-sign' npm ERR! enoent This is most likely not a problem with npm itself npm ERR! enoent and is related to npm not being able to find a file. npm ERR! enoent

npm ERR! Please include the following file with any support request: npm ERR! /opt/hpccloud/hpccloud/npm-debug.log

felixveysseyre commented 6 years ago

Retrying again, I got the same kind of issues but never the exact same one:

npm ERR! Linux 3.13.0-119-generic npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" npm ERR! node v6.11.5 npm ERR! npm v3.10.10 npm ERR! path /opt/hpccloud/hpccloud/node_modules/d3-dsv/bin/csv2tsv npm ERR! code ENOENT npm ERR! errno -2 npm ERR! syscall chmod

npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/d3-dsv/bin/csv2tsv' npm ERR! enoent ENOENT: no such file or directory, chmod '/opt/hpccloud/hpccloud/node_modules/d3-dsv/bin/csv2tsv' npm ERR! enoent This is most likely not a problem with npm itself npm ERR! enoent and is related to npm not being able to find a file. npm ERR! enoent

npm ERR! Please include the following file with any support request: npm ERR! /opt/hpccloud/hpccloud/npm-debug.log

felixveysseyre commented 6 years ago

I tried to run the installing step from the host and it ran smoothly.

node: v6.9.2 (vs v6.11.5) npm: v3.10.9 (vs v3.10.10)

felixveysseyre commented 6 years ago

Trying to clone latest HPCCloud repository directly inside the VM using hpccloud user, I am able to install the project without any issue:

vagrant ssh
sudo -iu hpccloud
cd /opt/hpccloud
git clone https://github.com/Kitware/HPCCloud.git
cd HPCCloud
npm install

More interesting, if I copy hpccloud directory with hpccloud user, I am able to install the project without any issue:

vagrant ssh
sudo -iu hpccloud
cd /opt/hpccloud/
cp -R hpccloud hpccloud2
cd hpccloud2
npm install

Since the only changes between hpccloud and hpccloud2 directories are permissions (some of hpccloud directory files belongs to 1003 group instead of hpccloud), it seems like a permission issue.

cjh1 commented 6 years ago

@felixveysseyre I think you are right, try this #117, it changes the gid to 1002. Not sure why this isn't causing a problem on linux.

felixveysseyre commented 6 years ago

117 Did not change anything :(

cjh1 commented 6 years ago

You recreated the VM? What is the group for the shared directory now?

felixveysseyre commented 6 years ago

Yes, from scratch:

vagrant destroy
DEVELOPMENT=1 vagrant up

The error I got from NPM is:

npm ERR! Linux 3.13.0-119-generic npm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"run\" \"build:release\" npm ERR! node v6.11.5 npm ERR! npm v3.10.10 npm ERR! file sh npm ERR! code ELIFECYCLE npm ERR! errno ENOENT npm ERR! syscall spawn npm ERR! hpc-cloud@0.9.0 build:release: fix-autobahn && NODE_ENV='production' webpack -p --progress --colors npm ERR! spawn ENOENT npm ERR! npm ERR! Failed at the hpc-cloud@0.9.0 build:release script 'fix-autobahn && NODE_ENV='production' webpack -p --progress --colors'. npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the hpc-cloud package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! fix-autobahn && NODE_ENV='production' webpack -p --progress --colors npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs hpc-cloud npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm owner ls hpc-cloud npm ERR! There is likely additional logging output above.

Everything seem to belong to hpccloud user now:

hpccloud@vagrant-ubuntu-trusty-64:/opt/hpccloud$ ls -alsh
total 16K
4.0K drwxr-xr-x  5 hpccloud hpccloud 4.0K Jan 18 08:43 .
4.0K drwxr-xr-x  3 root     root     4.0K Jan 18 08:41 ..
4.0K drwxr-xr-x 10 root     root     4.0K Jan 18 08:43 cumulus
   0 drwxr-xr-x  1 hpccloud hpccloud  782 Jan 18 08:45 hpccloud
4.0K drwxr-x---  2 hpccloud hpccloud 4.0K Jan 18 08:43 keys
hpccloud@vagrant-ubuntu-trusty-64:/opt/hpccloud/hpccloud$ ls -alsh
total 64K
   0 drwxr-xr-x 1 hpccloud hpccloud  782 Jan 18 08:45 .
4.0K drwxr-xr-x 5 hpccloud hpccloud 4.0K Jan 18 08:43 ..
   0 drwxr-xr-x 1 hpccloud hpccloud  136 Jan 17 08:38 bin
   0 drwxr-xr-x 1 hpccloud hpccloud  850 Jan 17 08:38 dist
   0 drwxr-xr-x 1 hpccloud hpccloud  238 Jan 17 08:38 docs
4.0K -rw-r--r-- 1 hpccloud hpccloud 3.6K Jan 17 08:38 ec2_instance_types.py
4.0K -rw-r--r-- 1 hpccloud hpccloud  463 Jan 17 08:38 .editorconfig
4.0K -rw-r--r-- 1 hpccloud hpccloud 1.4K Jan 17 08:38 .eslintrc.js
   0 drwxr-xr-x 1 hpccloud hpccloud  442 Jan 17 08:38 .git
4.0K -rw-r--r-- 1 hpccloud hpccloud  115 Jan 17 08:38 .gitignore
 12K -rw-r--r-- 1 hpccloud hpccloud  10K Jan 17 08:38 LICENSE
   0 drwxr-xr-x 1 hpccloud hpccloud  43K Jan 18 08:44 node_modules
4.0K -rw-r--r-- 1 hpccloud hpccloud 2.9K Jan 18 08:45 npm-debug.log
4.0K -rw-r--r-- 1 hpccloud hpccloud   50 Jan 17 08:38 .npmignore
4.0K -rw-r--r-- 1 hpccloud hpccloud 3.3K Jan 17 08:38 package.json
4.0K -rw-r--r-- 1 hpccloud hpccloud 1.4K Jan 17 08:38 README.md
4.0K -rw-r--r-- 1 hpccloud hpccloud   94 Jan 17 08:38 requirements.txt
   0 drwxr-xr-x 1 hpccloud hpccloud  170 Jan 17 08:38 server
   0 drwxr-xr-x 1 hpccloud hpccloud  408 Jan 17 08:38 src
   0 drwxr-xr-x 1 hpccloud hpccloud  680 Jan 17 08:38 style
4.0K -rw-r--r-- 1 hpccloud hpccloud 3.0K Jan 17 08:38 .travis.yml
4.0K -rw-r--r-- 1 hpccloud hpccloud 1.9K Jan 17 08:38 URLS.md
4.0K -rw-r--r-- 1 hpccloud hpccloud 2.1K Jan 17 08:38 webpack.config.js
felixveysseyre commented 6 years ago

Looking at it again, it changed something. We now pass the hpccloud : Run npm install task but fail at the one after: hpccloud : Run npm run build.

I got the same result while executing manually the build process.

Here is the complete stack:

hpccloud@vagrant-ubuntu-trusty-64:/opt/hpccloud/hpccloud$ cat npm-debug.log
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'build' ]
2 info using npm@3.10.10
3 info using node@v6.11.5
4 verbose run-script [ 'prebuild', 'build', 'postbuild' ]
5 info lifecycle hpc-cloud@0.9.0~prebuild: hpc-cloud@0.9.0
6 verbose lifecycle hpc-cloud@0.9.0~prebuild: unsafe-perm in lifecycle true
7 verbose lifecycle hpc-cloud@0.9.0~prebuild: PATH: /usr/local/lib/node_modules/npm/bin/node-gyp-bin:/opt/hpccloud/hpccloud/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
8 verbose lifecycle hpc-cloud@0.9.0~prebuild: CWD: /opt/hpccloud/hpccloud
9 silly lifecycle hpc-cloud@0.9.0~prebuild: Args: [ '-c', 'npm run check' ]
10 silly lifecycle hpc-cloud@0.9.0~prebuild: Returned: code: 0  signal: null
11 info lifecycle hpc-cloud@0.9.0~build: hpc-cloud@0.9.0
12 verbose lifecycle hpc-cloud@0.9.0~build: unsafe-perm in lifecycle true
13 verbose lifecycle hpc-cloud@0.9.0~build: PATH: /usr/local/lib/node_modules/npm/bin/node-gyp-bin:/opt/hpccloud/hpccloud/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
14 verbose lifecycle hpc-cloud@0.9.0~build: CWD: /opt/hpccloud/hpccloud
15 silly lifecycle hpc-cloud@0.9.0~build: Args: [ '-c', 'fix-autobahn && webpack --progress --colors' ]
16 info lifecycle hpc-cloud@0.9.0~build: Failed to exec build script
17 verbose stack Error: hpc-cloud@0.9.0 build: `fix-autobahn && webpack --progress --colors`
17 verbose stack spawn ENOENT
17 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:33:16)
17 verbose stack     at emitTwo (events.js:106:13)
17 verbose stack     at ChildProcess.emit (events.js:191:7)
17 verbose stack     at maybeClose (internal/child_process.js:920:16)
17 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:230:5)
18 verbose pkgid hpc-cloud@0.9.0
19 verbose cwd /opt/hpccloud/hpccloud
20 error Linux 3.13.0-119-generic
21 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "build"
22 error node v6.11.5
23 error npm  v3.10.10
24 error file sh
25 error code ELIFECYCLE
26 error errno ENOENT
27 error syscall spawn
28 error hpc-cloud@0.9.0 build: `fix-autobahn && webpack --progress --colors`
28 error spawn ENOENT
29 error Failed at the hpc-cloud@0.9.0 build script 'fix-autobahn && webpack --progress --colors'.
29 error Make sure you have the latest version of node.js and npm installed.
29 error If you do, this is most likely a problem with the hpc-cloud package,
29 error not with npm itself.
29 error Tell the author that this fails on your system:
29 error     fix-autobahn && webpack --progress --colors
29 error You can get information on how to open an issue for this project with:
29 error     npm bugs hpc-cloud
29 error Or if that isn't available, you can get their info via:
29 error     npm owner ls hpc-cloud
29 error There is likely additional logging output above.
30 verbose exit [ 1, true ]

Trying to build a manually fetched HPCCloud repository does not produce the same issue.

Does it make any sense to you ?

EDIT: Looking again at the error, I found on the line before NPM error statements, the folowwing message: sh: 1: webpack: not found However, there is a opt/hpccloud/hpccloud/node_modules/webpack/bin/webpack.js file.

cjh1 commented 6 years ago

So the first error in the log is webpack: not found?

jourdain commented 6 years ago

Is it possible that npm/node are too old. We need npm 3+

felixveysseyre commented 6 years ago

@cjh1, yes it is. I don't understand why, but when the HPCCloud project is used, in the one share with the host. NPM can not find webpack.

@jourdain NPM version 3.10.10 is used in our case.

jourdain commented 6 years ago

Did you run npm install on the host? I bet it can not be run from the VM as a shared directory.

felixveysseyre commented 6 years ago

@jourdain npm install can be run without any problem now. This only npm run build:*** which is failing.

If I clone manually the repo in another directory, I can run installation and building commands without any problem.

jourdain commented 6 years ago

To me it seems to be related to write issue in that shared directory...

felixveysseyre commented 6 years ago

@jourdain How could I check that ?

jourdain commented 6 years ago

I don't know. But usually the logic when you are in DEV mode is that you do your build/dev on your actual machine and the VM is just reading it to expose the new ui via its web server.

Not the other way around.

felixveysseyre commented 6 years ago

Make sense to me.

Should we disable the ansible building task when in DEV ?