diff --git a/.dockerignore b/.dockerignore
index 7d0cf7c1..e69de29b 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -1,3 +0,0 @@
-frontend/node_modules
-frontend/npm-debug.log
-venv/
diff --git a/README.md b/README.md
index 96ef661e..8e7fe66d 100644
--- a/README.md
+++ b/README.md
@@ -4,102 +4,28 @@
## How to Setup
-1. Install [git](https://git-scm.com/downloads), [postgresql](https://www.postgresql.org/download/) version >= 9.4, [virtualenv](https://virtualenv.pypa.io/) and [Node.js](https://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps) version >= 6 in your computer, if you don't have it already.
-*Please check that the python version you are using for the project is 2.7.x*.
-*If you are having trouble with postgresql on Windows check this link [postgresqlhelp](http://bobbyong.com/blog/installing-postgresql-on-windoes/).*
-2. Get the source code on your machine via git
- ```
- git clone git@github.com:Cloud-CV/CloudCV.git cloudcv
- ```
- If you have not added `ssh` keys to your GitHub account then get the source code by running the following command
- ```
- git clone https://github.com/Cloud-CV/CloudCV.git cloudcv
- ```
-3. Create a python virtual environment and install python dependencies.
- ```
- cd cloudcv
- virtualenv venv
- source venv/bin/activate # run this command everytime before working on project
- pip install -r requirements/dev.txt
- ```
-4. Rename `settings/dev/settings.sample.py` as `settings/dev/settings.py` and change credentials in `settings/dev/settings.py`
- ```
- cp settings/dev/settings.sample.py settings/dev/settings.py
- ```
- Use your postgres username and password for fields `USER` and `PASSWORD` in `settings/dev/settings.py` file.
-5. Create an empty postgres database and run database migration.
- ```
- sudo -i -u (username)
- createdb cloudcv
- python manage.py migrate --settings=settings.dev.settings
- ```
-6. That's it. Now you can run development server at [http://127.0.0.1:8000](http://127.0.0.1:8000) (for serving backend)
- ```
- python manage.py runserver --settings=settings.dev.settings
- ```
-7. Open a new terminal window with node(>=6) and ruby(gem) install on your machine and type
- ```
- cd frontend
- sudo npm install -g yarn
- yarn install
- ```
- If you running npm install behind a proxy server, use
- ```
- npm config set proxy http://proxy:port
- ```
-8. Now to connect to dev server at [http://127.0.0.1:6003](http://127.0.0.1:6003) (for serving frontend)
- ```
- yarn run dev
- ```
+*(Existing manual installation steps remain unchanged here.)*
-## How to Setup on Windows
+---
-1. Install [git](https://git-scm.com/downloads), [postgresql](https://www.postgresql.org/download/windows); tested with [postgresql installer by bigsql](https://www.openscg.com/bigsql/postgresql/installers.jsp/) version >= 9.4, and [Node.js](https://nodejs.org/en/download/) version >= 6 in your computer & [python 2.7.x](https://www.python.org/downloads/windows/) , if you don't have it already.
-2. Get the source code on your machine via git
- ```
- git clone git@github.com:Cloud-CV/CloudCV.git cloudcv
- ```
- If you have not added `ssh` keys to your GitHub account then get the source code by running the following command
- ```
- git clone https://github.com/Cloud-CV/CloudCV.git cloudcv
- ```
-3. Open a command prompt and Install python dependencies.
- ```
- cd cloudcv
- pip install -r requirements\dev.txt
- ```
-4. Rename `settings/dev/settings.sample.py` as `settings/dev/settings.py` and change credentials in `settings/dev/settings.py`
- ```
- copy settings\dev\settings.sample.py settings\dev\settings.py
- ```
- Use your postgres username and password for fields `USER` and `PASSWORD` in `settings/dev/settings.py` file.
-5. Create an empty postgres database and run database migration.
- ```
- Start Postgresql server
- Open psql prompt
- createdb cloudcv
- In the command prompt,
- python manage.py migrate --settings=settings.dev.settings
- ```
-6. That's it. Now you can run development server at [http://127.0.0.1:8000](http://127.0.0.1:8000) (for serving backend),
- ```
- python manage.py runserver --settings=settings.dev.settings
- ```
-7. Open a new terminal window with node(>=6) and ruby(gem) install on your machine and type
- ```
- cd frontend
- npm install -g yarn
- yarn install
- ```
- If you running npm install behind a proxy server, use
- ```
- npm config set proxy http://proxy:port
- ```
-8. Now to connect to dev server at [http://127.0.0.1:6003](http://127.0.0.1:6003) (for serving frontend)
- ```
- yarn run dev
- ```
+## Running CloudCV using Docker
-## Contribution guidelines
+### Prerequisites
+- Install [Docker](https://docs.docker.com/get-docker/)
+- Install [Docker Compose](https://docs.docker.com/compose/install/)
-If you are interested in contributing to CloudCV, follow our [contribution guidelines](https://github.com/Cloud-CV/CloudCV/blob/master/.github/CONTRIBUTING.md).
+### Steps to Run
+1. Clone the repository:
+ ```sh
+ git clone https://github.com/Cloud-CV/CloudCV.git
+ cd CloudCV
+
+ ### **What Changed?**
+1. **Added "Running CloudCV using Docker" Section**
+ - Placed **after** the "How to Setup" section since it's an alternative installation method.
+2. **Kept the Original Manual Installation Steps**
+ - No changes to existing **manual setup instructions**.
+3. **Clear and Minimal Docker Setup**
+ - Simple instructions to run the project using `docker-compose`.
+
+Now, **update the `README.md` file** with this content, commit, and push it. Then, create a Pull Request (PR) referencing **Issue #99**. Let me know if you need any help!
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 149ce97a..a1450b3a 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -2,26 +2,20 @@ version: "2"
services:
db:
image: postgres
+ environment:
+ POSTGRES_USER: cloudcv
+ POSTGRES_PASSWORD: mysecurepassword # Change this to a strong password
+ POSTGRES_DB: cloudcvdb
+
django:
container_name: django
hostname: django
build:
- context: ./
- dockerfile: docker/prod/django/Dockerfile
- command: /code/docker/prod/django/container-start.sh
+ context: docker/production/django
+ dockerfile: Dockerfile
+ command: /code/docker/production/django/container-start.sh
ports:
- - "8000:8000"
+ - "8000:8000"
depends_on:
- db
- nodejs:
- container_name: nodejs
- hostname: nodejs
- build:
- context: ./
- dockerfile: docker/prod/nodejs/Dockerfile
- environment:
- NODE_ENV: development
- ports:
- - "6003:6003"
- depends_on:
- - django
+
\ No newline at end of file
diff --git a/docker-compose.yml.save b/docker-compose.yml.save
new file mode 100644
index 00000000..4eff494f
--- /dev/null
+++ b/docker-compose.yml.save
@@ -0,0 +1,25 @@
+version: "2"
+services:
+ db:
+ image: postgres
+ django:
+ container_name: django
+ hostname: django
+ build:
+ context: ./
+ dockerfile: docker/prod/django/Dockerfile
+ command: /code/docker/prod/django/container-start.sh
+ ports:
+ - "8000:8000"
+ depends_on:
+ - db
+ nodejs:
+ container_name: nodejs
+ hostname: nodejs context: ./
+ dockerfile: docker/prod/nodejs/Dockerfile
+ environment:
+ NODE_ENV: development
+ ports:
+ - "6003:6003"
+ depends_on:
+ - django
diff --git a/docker/production/django/Dockerfile b/docker/production/django/Dockerfile
index 206bc5e8..e4050cff 100644
--- a/docker/production/django/Dockerfile
+++ b/docker/production/django/Dockerfile
@@ -1,5 +1,5 @@
-FROM python:2.7
-MAINTAINER CloudCV Team
+FROM python:3.11
+LABEL maintainer="CloudCV Team"
ENV PYTHONUNBUFFERED 1
ENV DEBIAN_FRONTEND noninteractive
@@ -17,8 +17,11 @@ RUN mkdir -p /var/run/cloudcv/ && chown -R cloudcv /var/run/cloudcv/ && chmod -R
WORKDIR /code
-COPY /requirements /code/requirements
-RUN pip install -r requirements/prod.txt
+COPY container-start.sh /code/docker/production/django/container-start.sh
+RUN chmod +x /code/docker/production/django/container-start.sh
+COPY requirements.txt /code/requirements.txt
+RUN pip install -r /code/requirements.txt
+
COPY ./ /code/
diff --git a/docker/production/django/container-start.sh b/docker/production/django/container-start.sh
old mode 100644
new mode 100755
diff --git a/docker/production/django/requirements.txt b/docker/production/django/requirements.txt
new file mode 100644
index 00000000..50428308
--- /dev/null
+++ b/docker/production/django/requirements.txt
@@ -0,0 +1,4 @@
+Django>=3.2,<4.0
+djangorestframework
+psycopg2
+gunicorn
\ No newline at end of file
diff --git a/docker/production/nodejs/frontend/.babelrc b/docker/production/nodejs/frontend/.babelrc
new file mode 100644
index 00000000..bedb61fc
--- /dev/null
+++ b/docker/production/nodejs/frontend/.babelrc
@@ -0,0 +1,11 @@
+{
+ "presets": ["react", "es2015"],
+ "env": {
+ "development": {
+ "presets": ["react-hmre"]
+ }
+ },
+ "plugins": [
+ ["import", { libraryName: "antd", style: true }] // `style: true` for less
+ ]
+}
diff --git a/docker/production/nodejs/frontend/.dockerignore b/docker/production/nodejs/frontend/.dockerignore
new file mode 100644
index 00000000..93f13619
--- /dev/null
+++ b/docker/production/nodejs/frontend/.dockerignore
@@ -0,0 +1,2 @@
+node_modules
+npm-debug.log
diff --git a/docker/production/nodejs/frontend/.editorconfig b/docker/production/nodejs/frontend/.editorconfig
new file mode 100644
index 00000000..5d126348
--- /dev/null
+++ b/docker/production/nodejs/frontend/.editorconfig
@@ -0,0 +1,13 @@
+# editorconfig.org
+root = true
+
+[*]
+indent_style = space
+indent_size = 2
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+
+[*.md]
+trim_trailing_whitespace = false
diff --git a/docker/production/nodejs/frontend/.eslintignore b/docker/production/nodejs/frontend/.eslintignore
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/docker/production/nodejs/frontend/.eslintignore
@@ -0,0 +1 @@
+
diff --git a/docker/production/nodejs/frontend/.eslintrc b/docker/production/nodejs/frontend/.eslintrc
new file mode 100644
index 00000000..426639f8
--- /dev/null
+++ b/docker/production/nodejs/frontend/.eslintrc
@@ -0,0 +1,87 @@
+{
+ "extends": [
+ "eslint:recommended",
+ "plugin:import/errors",
+ "plugin:import/warnings"
+ ],
+ "plugins": [
+ "react",
+ "prettier"
+ ],
+ "parserOptions": {
+ "ecmaVersion": 6,
+ "sourceType": "module",
+ "ecmaFeatures": {
+ "jsx": true
+ }
+ },
+ "env": {
+ "es6": true,
+ "browser": true,
+ "node": true,
+ "jquery": true,
+ "mocha": true
+ },
+ "rules": {
+ "prettier/prettier": 1,
+ "object-curly-spacing": [1, "always"],
+ "no-dupe-class-members": 1,
+ "no-iterator": 1,
+ "one-var": [1, "never"],
+ "no-nested-ternary": 1,
+ "no-restricted-syntax": [1, "WithStatement"],
+ "no-duplicate-imports": 1,
+ "no-unneeded-ternary": 1,
+ "no-case-declarations": 1,
+ "dot-notation": 1,
+ "no-useless-constructor": 1,
+ "eqeqeq": 1,
+ "object-shorthand": 1,
+ "prefer-rest-params": 1,
+ "no-array-constructor": 1,
+ "array-callback-return": 0,
+ "no-param-reassign": 1,
+ "prefer-arrow-callback": 1,
+ "no-useless-concat": 1,
+ "prefer-template": 1,
+ "no-console": 1,
+ "no-debugger": 1,
+ "no-var": 1,
+ "no-trailing-spaces": 0,
+ "eol-last": 0,
+ "no-unused-vars": 0,
+ "no-underscore-dangle": 0,
+ "no-alert": 0,
+ "no-lone-blocks": 0,
+ "import/extensions": 1,
+ "react/display-name": [1, {"ignoreTranspilerName": false }],
+ "react/forbid-prop-types": [1, {"forbid": ["any"]}],
+ "react/jsx-boolean-value": 1,
+ "react/prefer-stateless-function": 1,
+ "react/jsx-indent-props": 0,
+ "react/jsx-key": 1,
+ "react/jsx-max-props-per-line": 0,
+ "react/jsx-no-bind": 0,
+ "react/jsx-no-duplicate-props": 1,
+ "react/jsx-no-literals": 0,
+ "react/jsx-no-undef": 1,
+ "react/jsx-pascal-case": 1,
+ "react/jsx-sort-prop-types": 0,
+ "react/jsx-sort-props": 0,
+ "react/jsx-uses-react": 1,
+ "react/jsx-uses-vars": 1,
+ "react/no-danger": 1,
+ "react/no-did-mount-set-state": 1,
+ "react/no-did-update-set-state": 1,
+ "react/no-direct-mutation-state": 1,
+ "react/no-multi-comp": 1,
+ "react/no-is-mounted": 1,
+ "react/no-set-state": 0,
+ "react/no-unknown-property": 1,
+ "react/prefer-es6-class": 1,
+ "react/prop-types": 1,
+ "react/react-in-jsx-scope": 1,
+ "react/self-closing-comp": 1,
+ "react/sort-comp": 1
+ }
+}
diff --git a/docker/production/nodejs/frontend/.eslintrc-build b/docker/production/nodejs/frontend/.eslintrc-build
new file mode 100644
index 00000000..ff103f98
--- /dev/null
+++ b/docker/production/nodejs/frontend/.eslintrc-build
@@ -0,0 +1,87 @@
+{
+ "extends": [
+ "eslint:recommended",
+ "plugin:import/errors",
+ "plugin:import/warnings"
+ ],
+ "plugins": [
+ "react",
+ "prettier"
+ ],
+ "parserOptions": {
+ "ecmaVersion": 6,
+ "sourceType": "module",
+ "ecmaFeatures": {
+ "jsx": true
+ }
+ },
+ "env": {
+ "es6": true,
+ "browser": true,
+ "node": true,
+ "jquery": true,
+ "mocha": true
+ },
+ "rules": {
+ "prettier/prettier": 2,
+ "object-curly-spacing": [2, "always"],
+ "no-dupe-class-members": 2,
+ "no-iterator": 2,
+ "one-var": [2, "never"],
+ "no-nested-ternary": 2,
+ "no-restricted-syntax": [2, "WithStatement"],
+ "no-duplicate-imports": 2,
+ "no-unneeded-ternary": 2,
+ "no-case-declarations": 2,
+ "dot-notation": 2,
+ "no-useless-constructor": 2,
+ "eqeqeq": 2,
+ "object-shorthand": 2,
+ "prefer-rest-params": 2,
+ "no-array-constructor": 2,
+ "array-callback-return": 0,
+ "no-param-reassign": 2,
+ "prefer-arrow-callback": 2,
+ "no-useless-concat": 2,
+ "prefer-template": 2,
+ "no-console": 2,
+ "no-debugger": 2,
+ "no-var": 2,
+ "no-trailing-spaces": 0,
+ "eol-last": 0,
+ "no-unused-vars": 0,
+ "no-underscore-dangle": 0,
+ "no-alert": 0,
+ "no-lone-blocks": 0,
+ "import/extensions": 2,
+ "react/display-name": [2, {"ignoreTranspilerName": false }],
+ "react/forbid-prop-types": [2, {"forbid": ["any"]}],
+ "react/jsx-boolean-value": 2,
+ "react/prefer-stateless-function": 2,
+ "react/jsx-indent-props": 0,
+ "react/jsx-key": 2,
+ "react/jsx-max-props-per-line": 0,
+ "react/jsx-no-bind": 0,
+ "react/jsx-no-duplicate-props": 2,
+ "react/jsx-no-literals": 0,
+ "react/jsx-no-undef": 2,
+ "react/jsx-pascal-case": 2,
+ "react/jsx-sort-prop-types": 0,
+ "react/jsx-sort-props": 0,
+ "react/jsx-uses-react": 2,
+ "react/jsx-uses-vars": 2,
+ "react/no-danger": 2,
+ "react/no-did-mount-set-state": 2,
+ "react/no-did-update-set-state": 2,
+ "react/no-direct-mutation-state": 2,
+ "react/no-multi-comp": 2,
+ "react/no-is-mounted": 2,
+ "react/no-set-state": 0,
+ "react/no-unknown-property": 2,
+ "react/prefer-es6-class": 2,
+ "react/prop-types": 2,
+ "react/react-in-jsx-scope": 2,
+ "react/self-closing-comp": 2,
+ "react/sort-comp": 2
+ }
+}
diff --git a/docker/production/nodejs/frontend/.gitignore b/docker/production/nodejs/frontend/.gitignore
new file mode 100644
index 00000000..da641ae1
--- /dev/null
+++ b/docker/production/nodejs/frontend/.gitignore
@@ -0,0 +1,2 @@
+# Frontend Project Dependencies
+node_modules/
diff --git a/docker/production/nodejs/frontend/config/config.js b/docker/production/nodejs/frontend/config/config.js
new file mode 100644
index 00000000..9a98b7cb
--- /dev/null
+++ b/docker/production/nodejs/frontend/config/config.js
@@ -0,0 +1,2 @@
+export const CLIENT_IP = '0.0.0.0';
+export const CLIENT_PORT = 6003;
diff --git a/docker/production/nodejs/frontend/package.json b/docker/production/nodejs/frontend/package.json
new file mode 100644
index 00000000..792676c3
--- /dev/null
+++ b/docker/production/nodejs/frontend/package.json
@@ -0,0 +1,108 @@
+{
+ "name": "cloudCV",
+ "version": "2.0.0",
+ "description": "",
+ "main": "",
+ "scripts": {
+ "clean-dist": "npm run remove-dist && mkdir dist",
+ "remove-dist": "node_modules/.bin/rimraf ./dist",
+ "build:html": "babel-node server/buildHTML.js",
+ "build": "npm-run-all clean-dist test lint:build build:html && babel-node server/build.js",
+ "build:alias": "babel-node server/build.js",
+ "start": "npm-run-all build && node server/start.js",
+ "open:src": "babel-node server/srcServer.js",
+ "lint": "esw webpack.config.* src server",
+ "lint:build": "node_modules/.bin/esw webpack.config.* src server -c ./.eslintrc-build",
+ "lint:watch": "npm run lint -- --watch",
+ "lint:fix": "eslint src server webpack.config.* --fix",
+ "test": "mocha --reporter spec server/testSetup.js \"src/**/*.test.js\"",
+ "test:watch": "npm run test -- --watch",
+ "dev": "node_modules/.bin/babel-node server/startMessage.js && npm-run-all --parallel open:src lint:watch test:watch"
+ },
+ "browserslist": [
+ "> 0.5%",
+ "ie > 9"
+ ],
+ "author": "CloudCV Team",
+ "license": "GPL-3.0",
+ "dependencies": {
+ "antd": "^3.1.3",
+ "axios": "^0.17.1",
+ "body-parser": "^1.18.2",
+ "express": "^4.16.2",
+ "immutable": "^3.8.2",
+ "nuka-carousel": "^3.0.1",
+ "prop-types": "^15.6.0",
+ "raven-js": "^3.22.0",
+ "react": "^16.0.0",
+ "react-burger-menu": "^2.2.3",
+ "react-dom": "^16.2.1",
+ "react-ga": "^2.4.1",
+ "react-redux": "^5.0.6",
+ "react-router-dom": "^4.2.2",
+ "react-router-redux": "^4.0.6",
+ "react-tabs": "^2.2.1",
+ "react-tap-event-plugin": "^3.0.2",
+ "redux": "^3.7.2",
+ "redux-thunk": "^2.1.0",
+ "socket.io": "^2.0.4",
+ "socket.io-client": "^2.0.4",
+ "superagent": "^3.8.2",
+ "to-string-loader": "^1.1.5"
+ },
+ "devDependencies": {
+ "autoprefixer": "^7.2.5",
+ "babel-cli": "^6.26.0",
+ "babel-core": "^6.26.0",
+ "babel-loader": "^7.1.2",
+ "babel-plugin-import": "^1.6.3",
+ "babel-plugin-react-display-name": "^2.0.0",
+ "babel-plugin-transform-object-rest-spread": "^6.26.0",
+ "babel-polyfill": "^6.26.0",
+ "babel-preset-es2015": "^6.16.0",
+ "babel-preset-react": "^6.16.0",
+ "babel-preset-react-hmre": "^1.1.1",
+ "babel-register": "^6.26.0",
+ "base64-font-loader": "^0.0.4",
+ "colors": "^1.1.2",
+ "compression": "^1.7.1",
+ "cross-env": "5.1.3",
+ "css-loader": "^0.28.8",
+ "enzyme": "^3.3.0",
+ "eslint": "^4.15.0",
+ "eslint-plugin-import": "^2.8.0",
+ "eslint-plugin-jsx-a11y": "^6.0.3",
+ "eslint-plugin-prettier": "^2.4.0",
+ "eslint-plugin-react": "^7.5.1",
+ "eslint-watch": "^3.1.3",
+ "eventsource-polyfill": "^0.9.6",
+ "expect": "^22.0.6",
+ "expose-loader": "^0.7.4",
+ "extract-text-webpack-plugin": "3.0.2",
+ "file-loader": "^1.1.6",
+ "jsdom": "^11.5.1",
+ "less": "^2.7.3",
+ "less-loader": "^4.0.5",
+ "mocha": "^4.1.0",
+ "nock": "^9.1.6",
+ "node-sass": "^4.7.2",
+ "npm-run-all": "^4.1.2",
+ "open": "^0.0.5",
+ "postcss-loader": "^2.0.10",
+ "prettier": "^1.10.2",
+ "react-addons-test-utils": "^15.6.2",
+ "redux-immutable-state-invariant": "^2.1.0",
+ "redux-mock-store": "^1.4.0",
+ "rimraf": "^2.6.2",
+ "sass-loader": "^6.0.6",
+ "style-loader": "^0.19.1",
+ "url-loader": "^0.6.2",
+ "webpack": "^3.10.0",
+ "webpack-dev-middleware": "^2.0.4",
+ "webpack-hot-middleware": "^2.21.0"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/Cloud-CV/CloudCV"
+ }
+}
diff --git a/docker/production/nodejs/frontend/postcss.config.js b/docker/production/nodejs/frontend/postcss.config.js
new file mode 100644
index 00000000..cc3ac210
--- /dev/null
+++ b/docker/production/nodejs/frontend/postcss.config.js
@@ -0,0 +1,3 @@
+module.exports = {
+ plugins: [require("autoprefixer")]
+};
diff --git a/docker/production/nodejs/frontend/server/build.js b/docker/production/nodejs/frontend/server/build.js
new file mode 100644
index 00000000..74371241
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/build.js
@@ -0,0 +1,35 @@
+/*eslint-disable no-console */
+
+import webpack from "webpack";
+import webpackConfig from "../webpack.config.prod";
+import colors from "colors";
+
+process.env.NODE_ENV = "production";
+
+console.log(
+ "Generating minified bundle for production. This will take a moment...".blue
+);
+
+webpack(webpackConfig).run((err, stats) => {
+ if (err) {
+ console.log(err.bold.red);
+ return 1;
+ }
+
+ const jsonStats = stats.toJson();
+
+ if (jsonStats.hasErrors) {
+ return jsonStats.errors.map(error => console.log(error.red));
+ }
+
+ if (jsonStats.hasWarnings) {
+ console.log("Webpack generate the following warnings".bold.yellow);
+ jsonStats.warnings.map(warning => console.log(warning.yellow));
+ }
+
+ console.log(
+ "App compiled in production mode and written to /dist. Ready to roll!".green
+ );
+
+ return 0;
+});
diff --git a/docker/production/nodejs/frontend/server/buildHTML.js b/docker/production/nodejs/frontend/server/buildHTML.js
new file mode 100644
index 00000000..2a93c740
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/buildHTML.js
@@ -0,0 +1,21 @@
+/*eslint-disable no-console */
+
+import fs from "fs";
+import cheerio from "cheerio";
+import colors from "colors";
+
+fs.readFile("src/index.html", "utf8", (err, markup) => {
+ if (err) {
+ return console.log(err.red);
+ }
+
+ const $ = cheerio.load(markup);
+ $("head").prepend(' ');
+
+ fs.writeFile("dist/index.html", $.html(), "utf8", err => {
+ if (err) {
+ return console.log(err.red);
+ }
+ console.log("index.html written to /dist".blue);
+ });
+});
diff --git a/docker/production/nodejs/frontend/server/distServer.js b/docker/production/nodejs/frontend/server/distServer.js
new file mode 100644
index 00000000..adc96fc5
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/distServer.js
@@ -0,0 +1,30 @@
+/* eslint-disable no-console */
+
+import express from "express";
+import path from "path";
+import compression from "compression";
+import bodyParser from "body-parser";
+
+const appConfig = require("../config/config");
+const port = appConfig.CLIENT_PORT || 8080;
+const clientIP = appConfig.CLIENT_IP || "0.0.0.0";
+const app = express();
+
+const http = require("http").Server(app);
+
+app.use(bodyParser.urlencoded({ limit: "500mb", extended: true }));
+app.use(bodyParser.json({ limit: "500mb" }));
+app.use(compression());
+app.use(express.static("dist"));
+
+app.get("*", (req, res) => {
+ res.sendFile(path.resolve(__dirname, "../dist/index.html"));
+});
+
+http.listen(port, err => {
+ if (err) {
+ console.log(err);
+ } else {
+ console.log(`visit http://${clientIP}:${port}`);
+ }
+});
diff --git a/docker/production/nodejs/frontend/server/srcServer.js b/docker/production/nodejs/frontend/server/srcServer.js
new file mode 100644
index 00000000..98e31b91
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/srcServer.js
@@ -0,0 +1,40 @@
+/* eslint-disable no-console */
+
+import express from "express";
+import webpack from "webpack";
+import path from "path";
+import config from "../webpack.config.dev";
+import bodyParser from "body-parser";
+import colors from "colors";
+
+const appConfig = require("../config/config");
+const port = appConfig.CLIENT_PORT || 8080;
+const clientIP = appConfig.CLIENT_IP || "0.0.0.0";
+const app = express();
+const compiler = webpack(config);
+
+const http = require("http").Server(app);
+
+app.use(bodyParser.urlencoded({ limit: "500mb", extended: true }));
+app.use(bodyParser.json({ limit: "500mb" }));
+
+app.use(
+ require("webpack-dev-middleware")(compiler, {
+ noInfo: true,
+ publicPath: config.output.publicPath
+ })
+);
+
+app.use(require("webpack-hot-middleware")(compiler));
+
+app.get("*", (req, res) => {
+ res.sendFile(path.resolve(__dirname, "../src/index.html"));
+});
+
+http.listen(port, err => {
+ if (err) {
+ console.log(err);
+ } else {
+ console.log(`visit http://${clientIP}:${port}`.yellow);
+ }
+});
diff --git a/docker/production/nodejs/frontend/server/start.js b/docker/production/nodejs/frontend/server/start.js
new file mode 100644
index 00000000..7178f208
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/start.js
@@ -0,0 +1,2 @@
+require("babel-core/register");
+require("./distServer.js");
diff --git a/docker/production/nodejs/frontend/server/startMessage.js b/docker/production/nodejs/frontend/server/startMessage.js
new file mode 100644
index 00000000..dce981dd
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/startMessage.js
@@ -0,0 +1,5 @@
+import colors from "colors";
+
+/* eslint-disable no-console */
+
+console.log("Starting app in dev mode...".green);
diff --git a/docker/production/nodejs/frontend/server/testSetup.js b/docker/production/nodejs/frontend/server/testSetup.js
new file mode 100644
index 00000000..aa4afe4c
--- /dev/null
+++ b/docker/production/nodejs/frontend/server/testSetup.js
@@ -0,0 +1,34 @@
+/* eslint-disable no-var*/
+process.env.NODE_ENV = "test";
+
+require("babel-register")();
+
+require.extensions[".css"] = function() {
+ return null;
+};
+require.extensions[".png"] = function() {
+ return null;
+};
+require.extensions[".jpg"] = function() {
+ return null;
+};
+
+const jsdom = require("jsdom");
+const { JSDOM } = jsdom;
+var exposedProperties = ["window", "navigator", "document"];
+
+const { window } = new JSDOM("...");
+const { document } = new JSDOM("...").window;
+
+Object.keys(document.defaultView).forEach(property => {
+ if (typeof global[property] === "undefined") {
+ exposedProperties.push(property);
+ global[property] = document.defaultView[property];
+ }
+});
+
+global.navigator = {
+ userAgent: "node.js"
+};
+
+documentRef = document; //eslint-disable-line no-undef
diff --git a/docker/production/nodejs/frontend/src/actions/actionTypes.js b/docker/production/nodejs/frontend/src/actions/actionTypes.js
new file mode 100644
index 00000000..a24cefc2
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/actions/actionTypes.js
@@ -0,0 +1 @@
+export const TOGGLE_SHOW_QUEUE = "TOGGLE_SHOW_QUEUE";
diff --git a/docker/production/nodejs/frontend/src/actions/sidebarActions.js b/docker/production/nodejs/frontend/src/actions/sidebarActions.js
new file mode 100644
index 00000000..26443d2e
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/actions/sidebarActions.js
@@ -0,0 +1,14 @@
+import * as types from "./actionTypes";
+
+function toggleShowQueueSuccess(value) {
+ return { type: types.TOGGLE_SHOW_QUEUE, value };
+}
+
+export function toggleShowQueue(value) {
+ return function(dispatch) {
+ return new Promise((resolve, reject) => {
+ dispatch(toggleShowQueueSuccess(value));
+ resolve("dispatch showQueue value change call");
+ });
+ };
+}
diff --git a/docker/production/nodejs/frontend/src/actions/store.test.js b/docker/production/nodejs/frontend/src/actions/store.test.js
new file mode 100644
index 00000000..9092e518
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/actions/store.test.js
@@ -0,0 +1,10 @@
+import expect from "expect";
+import { createStore } from "redux";
+import rootReducer from "../reducers";
+import initialState from "../reducers/initialState";
+
+describe("Store Test", () => {
+ it("dummy test - let it pass", () => {
+ expect([1, 2]).toEqual([1, 2]);
+ });
+});
diff --git a/docker/production/nodejs/frontend/src/components/App.js b/docker/production/nodejs/frontend/src/components/App.js
new file mode 100644
index 00000000..c3186be8
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/App.js
@@ -0,0 +1,30 @@
+import React from "react";
+import PropTypes from "prop-types";
+import { Link, Route, Switch, Miss } from "react-router-dom";
+import HomePageComponent from "./home";
+import TeamPageComponent from "./team";
+import ProjectPageComponent from "./projects";
+import AnalyticsComponent from "./analytics";
+import PageNotFoundHandler from "./PageNotFoundHandler";
+import Navbar from "./navbar";
+
+const App = props => {
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ );
+};
+
+export default App;
diff --git a/docker/production/nodejs/frontend/src/components/PageNotFoundHandler.js b/docker/production/nodejs/frontend/src/components/PageNotFoundHandler.js
new file mode 100644
index 00000000..4b43705e
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/PageNotFoundHandler.js
@@ -0,0 +1,11 @@
+import React from "react";
+
+const PageNotfoundHandler = () => {
+ return (
+
+ );
+};
+
+export default PageNotfoundHandler;
diff --git a/docker/production/nodejs/frontend/src/components/analytics/index.js b/docker/production/nodejs/frontend/src/components/analytics/index.js
new file mode 100644
index 00000000..7e89257f
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/analytics/index.js
@@ -0,0 +1,38 @@
+import React from "react";
+import PropTypes from "prop-types";
+import { withRouter } from "react-router-dom";
+import ReactGA from "react-ga";
+
+class Analytics extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {};
+ this.isProduction = process.env.NODE_ENV === "production";
+ this.recordPageView = this.recordPageView.bind(this);
+ }
+
+ componentDidMount() {
+ if (this.isProduction) this.recordPageView();
+ }
+
+ componentDidUpdate(prevProps, prevState) {
+ if (this.isProduction) this.recordPageView();
+ }
+
+ recordPageView() {
+ ReactGA.set({ page: window.location.pathname + window.location.search });
+ ReactGA.pageview(window.location.pathname + window.location.search);
+ }
+
+ render() {
+ return null;
+ }
+}
+
+Analytics.propTypes = {
+ match: PropTypes.object.isRequired,
+ location: PropTypes.object.isRequired,
+ history: PropTypes.object.isRequired
+};
+
+export default withRouter(Analytics);
diff --git a/docker/production/nodejs/frontend/src/components/common/Button.js b/docker/production/nodejs/frontend/src/components/common/Button.js
new file mode 100644
index 00000000..e9448dfe
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/Button.js
@@ -0,0 +1,31 @@
+import React from "react";
+import PropTypes from "prop-types";
+
+const Button = props => {
+ const { extraClass, themeClass } = props;
+ return (
+
+ {props.children}
+
+ );
+};
+
+const themeClassOptions = ["cv-button-light", "cv-button-dark"];
+
+Button.defaultProps = {
+ children: null,
+ extraClass: "",
+ themeClass: themeClassOptions[0]
+};
+
+Button.propTypes = {
+ children: PropTypes.string,
+ extraClass: PropTypes.string,
+ onClick: PropTypes.func,
+ themeClass: PropTypes.oneOf(themeClassOptions)
+};
+
+export default Button;
diff --git a/docker/production/nodejs/frontend/src/components/common/Card.js b/docker/production/nodejs/frontend/src/components/common/Card.js
new file mode 100644
index 00000000..3df39384
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/Card.js
@@ -0,0 +1,35 @@
+import React from "react";
+import PropTypes from "prop-types";
+
+const Card = props => {
+ const { themeClass, extraClass } = props;
+ return (
+
+ );
+};
+
+const themeClassOptions = [
+ "cv-card-light",
+ "cv-card-dark",
+ "cv-card-deep-light"
+];
+
+Card.defaultProps = {
+ children: null,
+ extraClass: "",
+ themeClass: themeClassOptions[0]
+};
+
+Card.propTypes = {
+ children: PropTypes.oneOfType([
+ PropTypes.string,
+ PropTypes.object,
+ PropTypes.array
+ ]),
+ extraClass: PropTypes.string,
+ themeClass: PropTypes.oneOf(themeClassOptions)
+};
+
+export default Card;
diff --git a/docker/production/nodejs/frontend/src/components/common/Preloader.js b/docker/production/nodejs/frontend/src/components/common/Preloader.js
new file mode 100644
index 00000000..e68a2d62
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/Preloader.js
@@ -0,0 +1,11 @@
+import React from "react";
+
+const Preloader = () => {
+ return (
+
+ );
+};
+
+export default Preloader;
diff --git a/docker/production/nodejs/frontend/src/components/common/TimelineCard.js b/docker/production/nodejs/frontend/src/components/common/TimelineCard.js
new file mode 100644
index 00000000..12387c53
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/TimelineCard.js
@@ -0,0 +1,27 @@
+import React from "react";
+import PropTypes from "prop-types";
+import Card from "./Card";
+
+const TimelineCard = props => {
+ const { date } = props;
+ return (
+
+
+ {date}
+
+
+ {props.children}
+
+ );
+};
+
+TimelineCard.propTypes = {
+ date: PropTypes.string.isRequired,
+ children: PropTypes.oneOfType([
+ PropTypes.string,
+ PropTypes.object,
+ PropTypes.array
+ ])
+};
+
+export default TimelineCard;
diff --git a/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselDecorators.js b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselDecorators.js
new file mode 100644
index 00000000..f759677b
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselDecorators.js
@@ -0,0 +1,22 @@
+import CarouselLeft from "./CarouselLeft";
+import CarouselRight from "./CarouselRight";
+import CarouselMid from "./CarouselMid";
+import createReactClass from "create-react-class";
+import React from "react";
+
+const CarouselDecorators = [
+ {
+ component: CarouselLeft,
+ position: "CenterLeft"
+ },
+ {
+ component: CarouselRight,
+ position: "CenterRight"
+ },
+ {
+ component: CarouselMid,
+ position: "BottomCenter"
+ }
+];
+
+export default CarouselDecorators;
diff --git a/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselLeft.js b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselLeft.js
new file mode 100644
index 00000000..2ce351ba
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselLeft.js
@@ -0,0 +1,42 @@
+import React from "react";
+import left from "../../../images/ic_chevron_left.svg";
+import PropTypes from "prop-types";
+
+class CarouselLeft extends React.Component {
+ constructor(props) {
+ super(props);
+ this.handleClick = this.handleClick.bind(this);
+ }
+ handleClick(e) {
+ e.preventDefault();
+ this.props.previousSlide();
+ }
+ getButtonStyles(disabled) {
+ return {
+ border: 0,
+ color: "white",
+ outline: 0,
+ opacity: disabled ? 0.3 : 1,
+ cursor: "pointer"
+ };
+ }
+ render() {
+ return (
+
+ );
+ }
+}
+CarouselLeft.propTypes = {
+ currentSlide: PropTypes.number.isRequired,
+ previousSlide: PropTypes.func.isRequired,
+ wrapAround: PropTypes.bool.isRequired
+};
+
+export default CarouselLeft;
diff --git a/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselMid.js b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselMid.js
new file mode 100644
index 00000000..0d4df0ca
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselMid.js
@@ -0,0 +1,73 @@
+import React from "react";
+import PropTypes from "prop-types";
+
+class CarouselMid extends React.Component {
+ constructor(props) {
+ super(props);
+ this.getIndexes = this.getIndexes.bind(this);
+ this.getListStyles = this.getListStyles.bind(this);
+ this.getListItemStyles = this.getListItemStyles.bind(this);
+ this.getButtonStyles = this.getButtonStyles.bind(this);
+ }
+ getIndexes(count, inc) {
+ let arr = [];
+ for (let i = 0; i < count - (this.props.slidesToShow - 1); i += inc) {
+ arr.push(i);
+ }
+ return arr;
+ }
+ getListStyles() {
+ return {
+ position: "relative",
+ margin: 0,
+ top: -10,
+ padding: 0
+ };
+ }
+ getListItemStyles() {
+ return {
+ listStyleType: "none",
+ display: "inline-block"
+ };
+ }
+ getButtonStyles(active) {
+ return {
+ border: 0,
+ background: "transparent",
+ color: "black",
+ cursor: "pointer",
+ padding: 10,
+ outline: 0,
+ fontSize: 24,
+ opacity: active ? 1 : 0.5
+ };
+ }
+ render() {
+ let self = this;
+ let indexes = this.getIndexes(
+ self.props.slideCount,
+ self.props.slidesToScroll
+ );
+ return (
+
+ {indexes.map(index => {
+ return (
+
+
+ •
+
+
+ );
+ })}
+
+ );
+ }
+}
+CarouselMid.propTypes = {
+ slidesToShow: PropTypes.number.isRequired
+};
+
+export default CarouselMid;
diff --git a/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselRight.js b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselRight.js
new file mode 100644
index 00000000..60e644f3
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/common/carouselDecorators/CarouselRight.js
@@ -0,0 +1,48 @@
+import React from "react";
+import right from "../../../images/ic_chevron_right.svg";
+import PropTypes from "prop-types";
+
+class CarouselRight extends React.Component {
+ constructor(props) {
+ super(props);
+ this.handleClick = this.handleClick.bind(this);
+ }
+ handleClick(e) {
+ e.preventDefault();
+ this.props.nextSlide();
+ }
+ getButtonStyles(disabled) {
+ return {
+ border: 0,
+ color: "white",
+ outline: 0,
+ opacity: disabled ? 0.3 : 1,
+ cursor: "pointer"
+ };
+ }
+ render() {
+ return (
+ =
+ this.props.slideCount && !this.props.wrapAround
+ )}
+ />
+ );
+ }
+}
+CarouselRight.propTypes = {
+ currentSlide: PropTypes.number.isRequired,
+ nextSlide: PropTypes.func.isRequired,
+ wrapAround: PropTypes.bool.isRequired,
+ slidesToScroll: PropTypes.number.isRequired,
+ slideCount: PropTypes.number.isRequired,
+ slidesToShow: PropTypes.number.isRequired
+};
+
+export default CarouselRight;
diff --git a/docker/production/nodejs/frontend/src/components/home/HomeBody.js b/docker/production/nodejs/frontend/src/components/home/HomeBody.js
new file mode 100644
index 00000000..80687fc1
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/HomeBody.js
@@ -0,0 +1,87 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import HomeAboutUs from "./homeBody/HomeAboutUs";
+import HomeNews from "./homeBody/HomeNews";
+import HomeDemos from "./homeBody/HomeDemos";
+import HomeSponsors from "./homeBody/HomeSponsors";
+import HomeShowcase from "./homeBody/HomeShowcase";
+import HomeContactUs from "./homeBody/HomeContactUs";
+import Button from "../common/Button";
+
+const HomeBody = props => {
+ const PROJECT_HEADING = "Projects";
+ const GITHUB_DESC = "Interested in contributing?";
+ const GITHUB_STRING =
+ "We are looking for active open source contributors who could help us taking the projects to next level. Please feel free to visit following links if you are interested in joining our team";
+ const GITHUB_IMAGE = require("../../images/github_logo.png");
+ const GITTER_IMAGE = require("../../images/gitter_logo.png");
+ const GSOC_LOGO = require("../../images/gsoc_logo.png");
+ const GCI_LOGO = require("../../images/gci_logo.png");
+ return (
+
+
+
+
+
+
+
+
{GITHUB_DESC}
+
+
{GITHUB_STRING}
+
+
+
+
GSoC
+
+
+
+
GCI
+
+
+
+
GitHub
+
+
+
+
Gitter
+
+
+
+
+
+ );
+};
+
+export default HomeBody;
diff --git a/docker/production/nodejs/frontend/src/components/home/HomeFooter.js b/docker/production/nodejs/frontend/src/components/home/HomeFooter.js
new file mode 100644
index 00000000..19245032
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/HomeFooter.js
@@ -0,0 +1,12 @@
+import React from "react";
+
+const HomeFooter = props => {
+ const IMAGE = require("../../images/cloudcv_footer.png");
+ return (
+
+
+
+ );
+};
+
+export default HomeFooter;
diff --git a/docker/production/nodejs/frontend/src/components/home/HomeHeader.js b/docker/production/nodejs/frontend/src/components/home/HomeHeader.js
new file mode 100644
index 00000000..8930c3ac
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/HomeHeader.js
@@ -0,0 +1,14 @@
+import React from "react";
+
+const HomeHeader = props => {
+ const DESC_LINE = "Building platforms for reproducible AI Research";
+ return (
+
+
CLOUDCV
+
+ {DESC_LINE}
+
+ );
+};
+
+export default HomeHeader;
diff --git a/docker/production/nodejs/frontend/src/components/home/homeBody/HomeAboutUs.js b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeAboutUs.js
new file mode 100644
index 00000000..082b8da7
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeAboutUs.js
@@ -0,0 +1,25 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import Card from "../../common/Card";
+
+const HomeAboutUs = props => {
+ const ABOUT_US_TITLE = "WHO ARE WE";
+ const ABOUT_US_DESC =
+ "CloudCV is a young open source cloud platform started in 2013 by students and faculty from Machine Learning and Perception Lab at Virginia Tech (now at Georgia Tech) with the aim to make AI research more reproducible. At CloudCV, we are building tools that enable researchers to build, compare and share state-of-the-art algorithms. We believe that one shouldn't have to be an AI expert to have access to cutting edge vision algorithms. Likewise, researchers shouldn't have to worry about building a service around their deep learning models to showcase and share it with others.";
+ return (
+
+
+
+
+ {ABOUT_US_TITLE}
+
+ ?
+
+ {ABOUT_US_DESC}
+
+
+
+ );
+};
+
+export default HomeAboutUs;
diff --git a/docker/production/nodejs/frontend/src/components/home/homeBody/HomeContactUs.js b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeContactUs.js
new file mode 100644
index 00000000..e4a300b3
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeContactUs.js
@@ -0,0 +1,103 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import Button from "../../common/Button";
+import axios from "axios";
+const AJAX_ROOT = process.env.AJAX_ROOT;
+
+const HomeContactUs = props => {
+ const CONTACT_US_TITLE = "Contact Us";
+ const FILE_UPLOAD_TEXT = "Choose File";
+ const FILE_UPLOADED_TEXT = "Image Uploaded";
+ let inputFileTextElement;
+
+ const sendResponse = event => {
+ event.preventDefault();
+ let formElement = document.getElementById("contact-us-form");
+ let formData = new FormData(formElement);
+ axios({
+ method: "post",
+ url: `${process.env.AJAX_ROOT}/api/web/contact/`,
+ data: formData
+ }).then(response => {
+ if (response.status === 201) {
+ formElement.reset();
+ document.getElementById("cv-home-form-success").innerHTML =
+ response.data.message;
+ }
+ });
+ };
+
+ const updateFileUploadText = event => {
+ event.preventDefault();
+ inputFileTextElement.innerHTML = FILE_UPLOADED_TEXT;
+ };
+
+ return (
+
+ );
+};
+
+export default HomeContactUs;
diff --git a/docker/production/nodejs/frontend/src/components/home/homeBody/HomeDemos.js b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeDemos.js
new file mode 100644
index 00000000..8cba244e
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeDemos.js
@@ -0,0 +1,152 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import axios from "axios";
+import Card from "../../common/Card";
+import Button from "../../common/Button";
+import Preloader from "../../common/Preloader";
+import Carousel from "nuka-carousel";
+import CarouselDecorators from "../../common/carouselDecorators/CarouselDecorators";
+
+class HomeDemos extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ isFetching: true,
+ demos: []
+ };
+ this.fetchDemos = this.fetchDemos.bind(this);
+ this.fetchDemos();
+ }
+
+ componentDidMount() {
+ this.updateCarousel();
+ window.addEventListener("resize", this.updateCarousel.bind(this));
+ }
+
+ componentDidUpdate() {
+ this.equalizeCards();
+ }
+
+ componentWillUnmount() {
+ window.removeEventListener("resize", this.updateCarousel.bind(this));
+ }
+
+ updateCarousel() {
+ const SLIDES_TO_SHOW_SMALL = 1;
+ const SLIDES_TO_SHOW_LARGE = 2;
+ this.setState({
+ slidesToShow:
+ window.innerWidth > 800 ? SLIDES_TO_SHOW_LARGE : SLIDES_TO_SHOW_SMALL
+ });
+ }
+
+ equalizeCards() {
+ const cards = document.getElementsByClassName(
+ "cv-home-demos-carousel-card"
+ );
+ const list = document.getElementsByClassName("slider-list");
+ const frame = document.getElementsByClassName("slider-frame");
+ if (frame[0] !== undefined) {
+ const cardWidth = frame[0].offsetWidth / this.state.slidesToShow;
+ for (let i = 0; i < cards.length; i++) {
+ cards[i].style.height = "auto";
+ cards[i].style.width = cardWidth.toString().concat("px");
+ }
+ let max = 0;
+ for (let i = 0; i < cards.length; i++) {
+ if (cards[i].offsetHeight > max) max = cards[i].offsetHeight;
+ }
+ max = max.toString().concat("px");
+ for (let i = 0; i < cards.length; i++) {
+ cards[i].style.height = max;
+ }
+ frame[0].style.height = max;
+ list[0].style.height = max;
+ }
+ }
+
+ fetchDemos() {
+ axios
+ .get(`${process.env.AJAX_ROOT}/api/demos/demos/`)
+ .then(response => {
+ this.setState({ demos: response.data, isFetching: false });
+ })
+ .catch(error => {
+ //Redirect
+ });
+ }
+
+ makeDescription(description) {
+ const limit = 80;
+ if (description.length > limit)
+ return description.substring(0, limit).concat("...");
+ return description;
+ }
+
+ renderCards(demos, carousel) {
+ return demos.map((demo, index) => {
+ return (
+
+ {demo.title}
+
+ {this.makeDescription(demo.description)}
+
+
+
+ Source code
+
+
+
+ Demo
+
+
+
+
+ );
+ });
+ }
+
+ render() {
+ const DEMOS_TITLE = "DEMOS";
+ const CAROUSEL = this.state.demos.length > 2;
+ return (
+
+ {!this.state.isFetching && (
+
+
{DEMOS_TITLE}
+ {CAROUSEL ? (
+
+ {this.renderCards(this.state.demos, CAROUSEL)}
+
+ ) : (
+
+ {this.renderCards(this.state.demos)}
+
+ )}
+
+ )}
+
+ );
+ }
+}
+
+export default HomeDemos;
diff --git a/docker/production/nodejs/frontend/src/components/home/homeBody/HomeNews.js b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeNews.js
new file mode 100644
index 00000000..eff32fae
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeNews.js
@@ -0,0 +1,288 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import TimelineCard from "../../common/TimelineCard";
+import Button from "../../common/Button";
+
+const MIN_ELEMENTS = 18;
+const EVENTS = [
+ {
+ date: "March 2021",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSOC 2021
+
+
+ )
+ },
+ {
+ date: "March 2020",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSOC 2020
+
+
+ )
+ },
+
+ {
+ date: "October 2019",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GCI 2019
+
+
+ )
+ },
+
+ {
+ date: "September 2019",
+ desc: (
+
+ EvalAI and Fabrik are accepted to{" "}
+
+ SOSP Conference 2019
+ , Canada
+
+ )
+ },
+
+ {
+ date: "March 2019",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSOC 2019
+
+
+ )
+ },
+
+ {
+ date: "September 2018",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GCI 2018
+
+
+ )
+ },
+
+ {
+ date: "March 2018",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSOC 2018
+
+
+ )
+ },
+ {
+ date: "November 2017",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GCI 2017
+
+
+ )
+ },
+ {
+ date: "June 2017",
+ desc: (
+
+ CloudCV selected for demo presentation at{" "}
+
+ CVPR 2017
+
+ , Hawaii
+
+ )
+ },
+ {
+ date: "May 2017",
+ desc: (
+
+ CloudCV selected as a semifinalist at{" "}
+
+ LDV Vision Summit 2017
+
+ , New York City
+
+ )
+ },
+ {
+ date: "March 2017",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSoC 2017
+
+
+ )
+ },
+ {
+ date: "May 2016",
+ desc: (
+
+ CloudCV selected for demo presentation at{" "}
+
+ CVPR 2016
+
+ , Las Vegas, NV
+
+ )
+ },
+ {
+ date: "March 2016",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSoC 2016
+
+
+ )
+ },
+ {
+ date: "March 2015",
+ desc: (
+
+ CloudCV selected as a mentoring organisation for{" "}
+
+ GSoC 2015
+
+
+ )
+ },
+ {
+ date: "January 2014",
+ desc: NVIDIA supports CloudCV with a GPU hardware donation
+ },
+ {
+ date: "October 2013",
+ desc: (
+
+ CloudCV has been awarded Amazon Web Services (AWS) in Education: Machine
+ Learning Research Grant
+
+ )
+ }
+];
+
+class HomeNews extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ showFull: EVENTS.length <= MIN_ELEMENTS
+ };
+ this.loadMore = this.loadMore.bind(this);
+ }
+
+ loadMore(event) {
+ this.setState({ showFull: true });
+ }
+
+ render() {
+ const EVENT_ELEMENTS = this.state.showFull
+ ? EVENTS
+ : EVENTS.slice(0, MIN_ELEMENTS);
+ return (
+
+
+
News
+
+
+
+ {EVENT_ELEMENTS.map((event, index) => {
+ return (
+
+ {event.desc}
+
+ );
+ })}
+
+ {!this.state.showFull && (
+
+ Show More
+
+ )}
+
+
+ );
+ }
+}
+
+export default HomeNews;
diff --git a/docker/production/nodejs/frontend/src/components/home/homeBody/HomeShowcase.js b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeShowcase.js
new file mode 100644
index 00000000..edef550e
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeShowcase.js
@@ -0,0 +1,72 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import axios from "axios";
+import Card from "../../common/Card";
+import Button from "../../common/Button";
+import Preloader from "../../common/Preloader";
+
+class HomeShowcase extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ isFetching: true,
+ projects: []
+ };
+ this.fetchProjects = this.fetchProjects.bind(this);
+ this.fetchProjects();
+ }
+
+ fetchProjects() {
+ axios
+ .get(`${process.env.AJAX_ROOT}/api/demos/projects/`)
+ .then(response => {
+ this.setState({ projects: response.data, isFetching: false });
+ })
+ .catch(error => {
+ //Redirect
+ });
+ }
+
+ render() {
+ const SHOWCASE_TITLE = "PROJECTS";
+ return (
+
+ {!this.state.isFetching && (
+
+
{SHOWCASE_TITLE}
+
+ {this.state.projects.map((project, index) => {
+ return (
+
+
+
+
+
+
+ GitHub
+
+
+
+ Documentation
+
+
+
+
+ );
+ })}
+
+
+ )}
+
+ );
+ }
+}
+
+export default HomeShowcase;
diff --git a/docker/production/nodejs/frontend/src/components/home/homeBody/HomeSponsors.js b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeSponsors.js
new file mode 100644
index 00000000..c6ee9fbe
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/homeBody/HomeSponsors.js
@@ -0,0 +1,86 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import Card from "../../common/Card";
+
+const HomeSponsors = props => {
+ const SUPPORT_TITLE = "WE FAVOR OPEN SOURCE";
+ const SUPPORT_DESC =
+ "We use a lot of open source softwares as the basis for our work. Some of them are:";
+ const SUPPORTERS = [
+ {
+ title: "Django",
+ image: require("../../../images/django_logo.svg"),
+ link: "https://www.djangoproject.com/"
+ },
+ {
+ title: "Python",
+ image: require("../../../images/python_logo.png"),
+ link: "https://www.python.org/"
+ },
+ {
+ title: "React",
+ image: require("../../../images/reactjs_logo.svg"),
+ link: "https://facebook.github.io/react/"
+ },
+ {
+ title: "Angular",
+ image: require("../../../images/angular_logo.svg"),
+ link: "https://angular.io/"
+ },
+ {
+ title: "Pytorch",
+ image: require("../../../images/pytorch_logo.png"),
+ link: "http://pytorch.org/"
+ },
+ {
+ title: "Keras",
+ image: require("../../../images/keras_logo.jpg"),
+ link: "https://keras.io/"
+ }
+ ];
+ const SPONSOR_TITLE = "SPONSORS";
+ const SPONSORS = [
+ require("../../../images/supporter_gt.png"),
+ require("../../../images/supporter_virginia.png"),
+ require("../../../images/supporter_aws.png"),
+ require("../../../images/supporter_azure.png"),
+ require("../../../images/supporter_nvidia.png")
+ ];
+ return (
+
+
{SUPPORT_TITLE}
+
+
+
{SUPPORT_DESC}
+
+ {SUPPORTERS.map((company, index) => {
+ return (
+
+
+
+ {company.title}
+
+
+ );
+ })}
+
+
+
{SPONSOR_TITLE}
+
+
+ {SPONSORS.map((company, index) => {
+ return (
+
+ );
+ })}
+
+
+ );
+};
+
+export default HomeSponsors;
diff --git a/docker/production/nodejs/frontend/src/components/home/index.js b/docker/production/nodejs/frontend/src/components/home/index.js
new file mode 100644
index 00000000..314efdf3
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/home/index.js
@@ -0,0 +1,75 @@
+import React from "react";
+import PropTypes from "prop-types";
+import { Link } from "react-router-dom";
+import HomeHeader from "./HomeHeader";
+import HomeBody from "./HomeBody";
+import HomeFooter from "./HomeFooter";
+import Button from "../common/Button";
+
+class HomePage extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {};
+ this.hashLinkScroll = this.hashLinkScroll.bind(this);
+ this.scrollToAboutUs = this.scrollToAboutUs.bind(this);
+ }
+
+ componentDidMount() {
+ this.hashLinkScroll();
+ }
+
+ componentDidUpdate(prevProps, prevState) {
+ this.hashLinkScroll();
+ }
+
+ hashLinkScroll() {
+ const { path } = this.props.match;
+ if (path !== "/") {
+ setTimeout(() => {
+ const id = path.replace("/", "");
+ const element = document.getElementById(id);
+ if (element)
+ element.scrollIntoView({
+ behavior: "smooth"
+ });
+ }, 0);
+ } else {
+ setTimeout(() => {
+ const element = document.body;
+ if (element)
+ element.scrollIntoView({
+ behavior: "smooth"
+ });
+ }, 0);
+ }
+ }
+
+ scrollToAboutUs() {
+ const element = document.getElementById("about");
+ if (element)
+ element.scrollIntoView({
+ behavior: "smooth"
+ });
+ }
+
+ render() {
+ return (
+
+
+
+
+ Know More
+
+
+
+
+
+ );
+ }
+}
+
+HomePage.propTypes = {
+ match: PropTypes.object.isRequired
+};
+
+export default HomePage;
diff --git a/docker/production/nodejs/frontend/src/components/navbar/NavbarItem.js b/docker/production/nodejs/frontend/src/components/navbar/NavbarItem.js
new file mode 100644
index 00000000..2913ada0
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/navbar/NavbarItem.js
@@ -0,0 +1,18 @@
+import React, { Component } from "react";
+import PropTypes from "prop-types";
+import { withRouter } from "react-router-dom";
+
+const NavbarItem = props => {
+ let activeClass = props.active ? "active" : "";
+
+ return (
+ {props.children}
+ );
+};
+
+NavbarItem.propTypes = {
+ active: PropTypes.bool.isRequired,
+ children: PropTypes.object.isRequired
+};
+
+export default NavbarItem;
diff --git a/docker/production/nodejs/frontend/src/components/navbar/index.js b/docker/production/nodejs/frontend/src/components/navbar/index.js
new file mode 100644
index 00000000..b827d0e5
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/navbar/index.js
@@ -0,0 +1,150 @@
+import React, { Component } from "react";
+import PropTypes from "prop-types";
+import { connect } from "react-redux";
+import { bindActionCreators } from "redux";
+import * as sidebarActions from "../../actions/sidebarActions";
+import { Link, withRouter } from "react-router-dom";
+import NavbarItem from "./NavbarItem";
+
+class Navbar extends Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ isOpen: false,
+ isOnTop:
+ (window.pageYOffset ||
+ document.documentElement.scrollTop ||
+ document.body.scrollTop) === 0
+ };
+ this.handleClick = this.handleClick.bind(this);
+ this.handleScroll = this.handleScroll.bind(this);
+ this.showSidebarOnProjectsPage = this.showSidebarOnProjectsPage.bind(this);
+ window.addEventListener("scroll", this.handleScroll);
+ }
+
+ componentWillUnmount() {
+ window.removeEventListener("scroll");
+ }
+
+ showSidebarOnProjectsPage() {
+ this.props.sidebarActions.toggleShowQueue(!this.props.showQueue);
+ }
+
+ handleScroll(event) {
+ let isOnTop =
+ (window.pageYOffset ||
+ document.documentElement.scrollTop ||
+ document.body.scrollTop) === 0;
+ this.setState({ isOnTop });
+ }
+
+ handleClick() {
+ this.setState({ isOpen: !this.state.isOpen });
+ }
+
+ render() {
+ let x = this.props.location.pathname.indexOf("/", 1);
+ let firstPath;
+ if (x !== -1) {
+ firstPath = this.props.location.pathname.substr(1, x - 1);
+ } else {
+ firstPath = this.props.location.pathname.substr(1);
+ }
+ let projectActive = firstPath === "projects";
+ let listItems = [
+ "",
+ // "Projects",
+ "GSoC",
+ "GCI",
+ "Team",
+ "Contribute",
+ "Contact Us"
+ ];
+ listItems = listItems.map((path, index) => {
+ if (path === "GSoC") {
+ return (
+
+
+ {path}
+
+
+ );
+ }
+ if (path === "GCI") {
+ return (
+
+
+ {path}
+
+
+ );
+ }
+ let active = path.toLowerCase() === firstPath;
+ let formattedPath = path.toLowerCase().replace(/ /g, "-");
+ return (
+
+ {path === "" ? "Home" : path}
+
+ );
+ });
+ let listHiddenClass = this.state.isOpen ? "" : "hidden-small";
+ let sidebarIconClass = "cv-navbar-list-icon";
+ let listIconClass = this.state.isOpen
+ ? "cv-navbar-close-icon"
+ : "cv-navbar-list-icon";
+ let navbarClass = this.state.isOnTop ? "" : "navbar-box-shadow";
+ return (
+
+
+
+ {projectActive && (
+
+ )}
+
+
+
+
+
+ {this.state.isOpen && (
+
+ )}
+
+ );
+ }
+}
+
+Navbar.propTypes = {
+ match: PropTypes.object.isRequired,
+ location: PropTypes.object.isRequired,
+ history: PropTypes.object.isRequired,
+ sidebarActions: PropTypes.object.isRequired,
+ showQueue: PropTypes.bool.isRequired
+};
+
+function mapStateToProps(state, ownProps) {
+ return {
+ showQueue: state.sidebar.showQueue,
+ match: ownProps.match,
+ location: ownProps.location,
+ history: ownProps.history
+ };
+}
+
+function mapDispatchToProps(dispatch) {
+ return {
+ sidebarActions: bindActionCreators(sidebarActions, dispatch)
+ };
+}
+
+export default withRouter(connect(mapStateToProps, mapDispatchToProps)(Navbar));
diff --git a/docker/production/nodejs/frontend/src/components/projects/DemoContainer.js b/docker/production/nodejs/frontend/src/components/projects/DemoContainer.js
new file mode 100644
index 00000000..79955643
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/projects/DemoContainer.js
@@ -0,0 +1,171 @@
+import React from "react";
+import PropTypes from "prop-types";
+import styles from "../../styles/demo.scss";
+import axios from "axios";
+const AJAX_ROOT = process.env.AJAX_ROOT;
+import { Tab, Tabs, TabList, TabPanel } from "react-tabs";
+import Button from "../common/Button";
+
+class DemoContainer extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ demo: this.props.demo,
+ height: "auto",
+ loading: this.props.demo.from_origami
+ };
+ this.receiveMessage = this.receiveMessage.bind(this);
+ this.sendStyleSheet = this.sendStyleSheet.bind(this);
+ this.saveInput = this.saveInput.bind(this);
+ this.saveOutput = this.saveOutput.bind(this);
+ this.sendBrokenDemo = this.sendBrokenDemo.bind(this);
+ this.setTimer = this.setTimer.bind(this);
+ this.log = -1;
+ window.addEventListener("message", this.receiveMessage, false);
+ this.setTimer();
+ }
+
+ componentWillReceiveProps(nextProps) {
+ if (nextProps.demo.demo_url !== this.state.demo.demo_url) {
+ this.setState({
+ demo: nextProps.demo,
+ loading: nextProps.demo.from_origami
+ });
+ this.setTimer();
+ }
+ }
+
+ saveInput(data) {
+ let formData = new FormData();
+ Object.entries(data).forEach(([key, value]) => {
+ if (value instanceof Blob) formData.set(key, value, key);
+ else formData.set(key, value);
+ });
+ formData.set("log_type", "Submission");
+ axios({
+ method: "post",
+ url: `${process.env.AJAX_ROOT}/api/logs/${
+ this.state.demo.permalink
+ }/add/`,
+ data: formData
+ })
+ .then(response => {
+ if (response.status === 200) this.log = response.data.success.id;
+ })
+ .catch(error => {});
+ }
+
+ saveOutput(formData) {
+ if (this.log !== -1)
+ axios({
+ method: "post",
+ url: `${process.env.AJAX_ROOT}/api/logs/${this.log}/output/`,
+ data: formData
+ })
+ .then(response => {
+ if (response.status === 200) this.log = -1;
+ })
+ .catch(error => {});
+ }
+
+ sendStyleSheet() {
+ let iframeWindow = document.getElementsByTagName("iframe")[0].contentWindow;
+ let stylesheet = {
+ action: "STYLESHEET_SEND",
+ styles: styles.toString()
+ };
+ iframeWindow.postMessage(stylesheet, "*");
+ }
+
+ receiveMessage(message) {
+ switch (message.data.action) {
+ case "DEMO_ONLOAD":
+ this.sendStyleSheet();
+ this.setState({ loading: false });
+ break;
+ case "INPUT_SUBMITTED":
+ this.saveInput(message.data.payload);
+ break;
+ case "OUTPUT_SUBMITTED":
+ this.saveOutput(message.data.payload);
+ break;
+ }
+ }
+
+ sendBrokenDemo() {
+ let formData = new FormData();
+ formData.set("log_type", "Break");
+ axios({
+ method: "post",
+ url: `${process.env.AJAX_ROOT}/api/logs/${
+ this.state.demo.permalink
+ }/add/`,
+ data: formData
+ })
+ .then(response => {})
+ .catch(error => {});
+ }
+
+ setTimer() {
+ setTimeout(() => {
+ this.setState({ loading: false });
+ }, 10000);
+ }
+
+ render() {
+ return (
+
+
+
+ Demo
+ About
+
+
+ {this.state.loading &&
}
+
+
+
+
+ {this.state.demo.title}
+
+
+ {this.state.demo.description
+ ? this.state.demo.description
+ : "Sorry, no description for the demo is available."}
+
+
+
+ {this.state.demo.paper_description}
+
+
+
+
+
+ Demo not working?
+
+
+ );
+ }
+}
+
+DemoContainer.propTypes = {
+ demo: PropTypes.object.isRequired
+};
+
+export default DemoContainer;
diff --git a/docker/production/nodejs/frontend/src/components/projects/Sidebar.js b/docker/production/nodejs/frontend/src/components/projects/Sidebar.js
new file mode 100644
index 00000000..545232ec
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/projects/Sidebar.js
@@ -0,0 +1,68 @@
+import React from "react";
+import PropTypes from "prop-types";
+import { Link } from "react-router-dom";
+
+class ProjectSidebar extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {};
+ }
+
+ render() {
+ const DEMOS = this.props.demos;
+ const PROJECTS = [
+ {
+ link: "https://evalai.cloudcv.org/",
+ name: "Eval AI"
+ },
+ {
+ link: "http://origami.cloudcv.org/",
+ name: "Origami"
+ },
+ {
+ link: "http://fabrik.cloudcv.org/",
+ name: "Fabrik"
+ }
+ ];
+ return (
+
+
+ Demos
+
+ {DEMOS.map((project, index) => {
+ let activeClass = project.active ? "active" : "";
+ return (
+
+ {project.name}
+
+ );
+ })}
+
+
+
+ Projects
+
+ {PROJECTS.map((project, index) => {
+ return (
+
+
+ {project.name}
+
+
+ );
+ })}
+
+
+
+ );
+ }
+}
+
+ProjectSidebar.propTypes = {
+ demos: PropTypes.array
+};
+
+export default ProjectSidebar;
diff --git a/docker/production/nodejs/frontend/src/components/projects/index.js b/docker/production/nodejs/frontend/src/components/projects/index.js
new file mode 100644
index 00000000..444dc275
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/projects/index.js
@@ -0,0 +1,101 @@
+import React from "react";
+import PropTypes from "prop-types";
+import axios from "axios";
+import { connect } from "react-redux";
+import { bindActionCreators } from "redux";
+import { slide as Menu } from "react-burger-menu";
+import Preloader from "../common/Preloader";
+import Sidebar from "./Sidebar";
+import DemoContainer from "./DemoContainer";
+import * as sidebarActions from "../../actions/sidebarActions";
+const AJAX_ROOT = process.env.AJAX_ROOT;
+
+class Projects extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ isFetching: true,
+ demos: [],
+ showQueue: this.props.showQueue
+ };
+ this.fetchDemos = this.fetchDemos.bind(this);
+ }
+
+ componentDidMount() {
+ this.fetchDemos();
+ }
+
+ componentWillReceiveProps(nextProps) {
+ if (this.state.showQueue !== nextProps.showQueue) {
+ this.setState({ showQueue: nextProps.showQueue });
+ }
+ }
+
+ fetchDemos() {
+ axios
+ .get(`${process.env.AJAX_ROOT}/api/demos/demos/`, {
+ params: { filter: "deployed" }
+ })
+ .then(response => {
+ this.setState({ isFetching: false, demos: response.data });
+ })
+ .catch(error => {});
+ }
+
+ isMenuOpen(state) {
+ this.props.sidebarActions.toggleShowQueue(state.isOpen);
+ }
+
+ render() {
+ if (this.state.isFetching) return ;
+ let activeDemo = null;
+ let sidebarLinks = this.state.demos.map((demo, index) => {
+ let link = `/projects/${demo.permalink}`;
+ let active =
+ this.props.location.pathname === link ||
+ (this.props.location.pathname === "/projects" && index === 0);
+ if (active) activeDemo = demo;
+ return {
+ name: demo.tag_line,
+ link,
+ active
+ };
+ });
+ return (
+
+
+
+
+
+ {activeDemo && }
+
+ );
+ }
+}
+
+Projects.propTypes = {
+ location: PropTypes.object.isRequired,
+ sidebarActions: PropTypes.object.isRequired,
+ showQueue: PropTypes.bool.isRequired
+};
+
+function mapStateToProps(state, ownProps) {
+ return {
+ showQueue: state.sidebar.showQueue
+ };
+}
+
+function mapDispatchToProps(dispatch) {
+ return {
+ sidebarActions: bindActionCreators(sidebarActions, dispatch)
+ };
+}
+
+export default connect(mapStateToProps, mapDispatchToProps)(Projects);
diff --git a/docker/production/nodejs/frontend/src/components/team/PersonCard.js b/docker/production/nodejs/frontend/src/components/team/PersonCard.js
new file mode 100644
index 00000000..4576df51
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/team/PersonCard.js
@@ -0,0 +1,35 @@
+import React from "react";
+import PropTypes from "prop-types";
+import { Link } from "react-router-dom";
+
+const PersonCard = props => {
+ return (
+
+
+
+
+
+
+
+
+ Profile
+
+
+
+
+ {props.name}
+ {props.description}
+
+
+
+ );
+};
+
+PersonCard.propTypes = {
+ name: PropTypes.string.isRequired,
+ description: PropTypes.string.isRequired,
+ image: PropTypes.string.isRequired,
+ link: PropTypes.string
+};
+
+export default PersonCard;
diff --git a/docker/production/nodejs/frontend/src/components/team/TeamSection.js b/docker/production/nodejs/frontend/src/components/team/TeamSection.js
new file mode 100644
index 00000000..11c9e378
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/team/TeamSection.js
@@ -0,0 +1,90 @@
+import React from "react";
+import PropTypes from "prop-types";
+import PersonCard from "./PersonCard";
+
+const TeamSection = props => {
+ const TITLE =
+ props.title === "Team" ? (
+ {props.title}
+ ) : (
+ {props.title}
+ );
+ const MEMBERS = props.members;
+ const YEARS = [2021, 2020, 2019, 2018, 2017, 2016, 2015];
+ const memberElements =
+ props.title === "GSoC Students, Mentors and Interns" ? (
+ YEARS.map((year, index) => {
+ return (
+
+
{year}
+
+ {MEMBERS.map((member, index) => {
+ if (member.year === year) {
+ const NAME = member.name;
+ const DESCRIPTION = member.description;
+ const IMAGE =
+ member.image || require("../../images/default_person.jpg");
+ const LINK =
+ member.personal_website ||
+ (member.linkedin_url ||
+ (member.github_url || `mailto:${member.email}`));
+ return (
+
+ );
+ }
+ })}
+
+
+ );
+ })
+ ) : (
+
+ {MEMBERS.map((member, index) => {
+ const NAME = member.name;
+ const DESCRIPTION = member.description;
+ const IMAGE =
+ member.image || require("../../images/default_person.jpg");
+ const LINK =
+ member.personal_website ||
+ (member.linkedin_url ||
+ (member.github_url || `mailto:${member.email}`));
+ return (
+
+ );
+ })}
+
+ );
+
+ return (
+
+
{TITLE}
+ {memberElements}
+
+ );
+};
+
+TeamSection.defaultProps = {
+ title: "",
+ members: [],
+ extraClass: ""
+};
+
+TeamSection.propTypes = {
+ title: PropTypes.string.isRequired,
+ members: PropTypes.array.isRequired,
+ extraClass: PropTypes.string
+};
+
+export default TeamSection;
diff --git a/docker/production/nodejs/frontend/src/components/team/index.js b/docker/production/nodejs/frontend/src/components/team/index.js
new file mode 100644
index 00000000..ba10c7d3
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/components/team/index.js
@@ -0,0 +1,84 @@
+import React from "react";
+import PropTypes from "prop-types";
+import axios from "axios";
+import TeamSection from "./TeamSection";
+import PersonCard from "./PersonCard";
+import Preloader from "../common/Preloader";
+
+const AJAX_ROOT = process.env.AJAX_ROOT;
+const CORE_TYPE = "Team";
+const INTERN_TYPE = "GSoC Students, Mentors and Interns";
+const CONTRIBUTOR_TYPE = "Contributors";
+
+class Team extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ isFetching: true,
+ coreMembers: [],
+ internMembers: [],
+ contributorMembers: []
+ };
+ this.fetchTeamMembers = this.fetchTeamMembers.bind(this);
+ this.fetchTeamMembers();
+ }
+
+ fetchTeamMembers() {
+ axios
+ .get(`${process.env.AJAX_ROOT}/api/web/team`)
+ .then(response => {
+ this.sortTeamMembers(response.data);
+ })
+ .catch(error => {
+ //Redirect
+ });
+ }
+
+ sortTeamMembers(members) {
+ let coreMembers = [];
+ let internMembers = [];
+ let contributorMembers = [];
+ if (members.length === 0) this.setState({ isFetching: false });
+ members.forEach((member, index, array) => {
+ if (member.team_type === CORE_TYPE) coreMembers.push(member);
+ else if (member.team_type === INTERN_TYPE) internMembers.push(member);
+ else if (member.team_type === CONTRIBUTOR_TYPE)
+ contributorMembers.push(member);
+ if (index === array.length - 1)
+ this.setState({
+ coreMembers,
+ internMembers,
+ contributorMembers,
+ isFetching: false
+ });
+ });
+ }
+
+ render() {
+ return (
+
+ {this.state.isFetching &&
}
+ {!this.state.isFetching && (
+
+
+
+
+
+ )}
+ ;
+
+ );
+ }
+}
+
+export default Team;
diff --git a/docker/production/nodejs/frontend/src/fonts/geometos-webfont.woff b/docker/production/nodejs/frontend/src/fonts/geometos-webfont.woff
new file mode 100644
index 00000000..675bebd5
Binary files /dev/null and b/docker/production/nodejs/frontend/src/fonts/geometos-webfont.woff differ
diff --git a/docker/production/nodejs/frontend/src/fonts/geometos-webfont.woff2 b/docker/production/nodejs/frontend/src/fonts/geometos-webfont.woff2
new file mode 100644
index 00000000..d39faa83
Binary files /dev/null and b/docker/production/nodejs/frontend/src/fonts/geometos-webfont.woff2 differ
diff --git a/docker/production/nodejs/frontend/src/images/angular_logo.svg b/docker/production/nodejs/frontend/src/images/angular_logo.svg
new file mode 100644
index 00000000..09c59e99
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/angular_logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/docker/production/nodejs/frontend/src/images/arxiv_paper.jpg b/docker/production/nodejs/frontend/src/images/arxiv_paper.jpg
new file mode 100644
index 00000000..17b6a9fb
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/arxiv_paper.jpg differ
diff --git a/docker/production/nodejs/frontend/src/images/close.svg b/docker/production/nodejs/frontend/src/images/close.svg
new file mode 100644
index 00000000..e9f2d275
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/close.svg
@@ -0,0 +1,12 @@
+
+Vector
+Created using Figma
+
+
+
+
+
+
+
+
+
diff --git a/docker/production/nodejs/frontend/src/images/cloudcv_footer.png b/docker/production/nodejs/frontend/src/images/cloudcv_footer.png
new file mode 100644
index 00000000..c0fa71cf
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/cloudcv_footer.png differ
diff --git a/docker/production/nodejs/frontend/src/images/cloudcv_logo.png b/docker/production/nodejs/frontend/src/images/cloudcv_logo.png
new file mode 100644
index 00000000..8ddbbe8b
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/cloudcv_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/default_person.jpg b/docker/production/nodejs/frontend/src/images/default_person.jpg
new file mode 100644
index 00000000..16ccf476
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/default_person.jpg differ
diff --git a/docker/production/nodejs/frontend/src/images/django_logo.svg b/docker/production/nodejs/frontend/src/images/django_logo.svg
new file mode 100644
index 00000000..69a46424
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/django_logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/docker/production/nodejs/frontend/src/images/gci_logo.png b/docker/production/nodejs/frontend/src/images/gci_logo.png
new file mode 100644
index 00000000..15a33623
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/gci_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/github_logo.png b/docker/production/nodejs/frontend/src/images/github_logo.png
new file mode 100644
index 00000000..c3a123fd
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/github_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/gitter_logo.png b/docker/production/nodejs/frontend/src/images/gitter_logo.png
new file mode 100644
index 00000000..b3b96348
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/gitter_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/gsoc_logo.png b/docker/production/nodejs/frontend/src/images/gsoc_logo.png
new file mode 100644
index 00000000..a0c7cd69
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/gsoc_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/ic_chevron_left.svg b/docker/production/nodejs/frontend/src/images/ic_chevron_left.svg
new file mode 100644
index 00000000..71fdd9e8
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/ic_chevron_left.svg
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/docker/production/nodejs/frontend/src/images/ic_chevron_right.svg b/docker/production/nodejs/frontend/src/images/ic_chevron_right.svg
new file mode 100644
index 00000000..a7af7378
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/ic_chevron_right.svg
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/docker/production/nodejs/frontend/src/images/keras_logo.jpg b/docker/production/nodejs/frontend/src/images/keras_logo.jpg
new file mode 100644
index 00000000..bb6298cd
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/keras_logo.jpg differ
diff --git a/docker/production/nodejs/frontend/src/images/list.svg b/docker/production/nodejs/frontend/src/images/list.svg
new file mode 100644
index 00000000..765d0709
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/list.svg
@@ -0,0 +1,34 @@
+
+Group
+Created using Figma
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docker/production/nodejs/frontend/src/images/matlab_logo.png b/docker/production/nodejs/frontend/src/images/matlab_logo.png
new file mode 100644
index 00000000..e623404d
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/matlab_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/python_logo.png b/docker/production/nodejs/frontend/src/images/python_logo.png
new file mode 100644
index 00000000..16e494b8
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/python_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/pytorch_logo.png b/docker/production/nodejs/frontend/src/images/pytorch_logo.png
new file mode 100644
index 00000000..8394af2a
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/pytorch_logo.png differ
diff --git a/docker/production/nodejs/frontend/src/images/reactjs_logo.svg b/docker/production/nodejs/frontend/src/images/reactjs_logo.svg
new file mode 100644
index 00000000..6dc60a38
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/images/reactjs_logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/docker/production/nodejs/frontend/src/images/supporter_aws.png b/docker/production/nodejs/frontend/src/images/supporter_aws.png
new file mode 100644
index 00000000..99bbbe2c
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/supporter_aws.png differ
diff --git a/docker/production/nodejs/frontend/src/images/supporter_azure.png b/docker/production/nodejs/frontend/src/images/supporter_azure.png
new file mode 100644
index 00000000..926820d9
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/supporter_azure.png differ
diff --git a/docker/production/nodejs/frontend/src/images/supporter_gt.png b/docker/production/nodejs/frontend/src/images/supporter_gt.png
new file mode 100644
index 00000000..b0df47f5
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/supporter_gt.png differ
diff --git a/docker/production/nodejs/frontend/src/images/supporter_nvidia.png b/docker/production/nodejs/frontend/src/images/supporter_nvidia.png
new file mode 100644
index 00000000..966196e4
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/supporter_nvidia.png differ
diff --git a/docker/production/nodejs/frontend/src/images/supporter_virginia.png b/docker/production/nodejs/frontend/src/images/supporter_virginia.png
new file mode 100644
index 00000000..99659ae5
Binary files /dev/null and b/docker/production/nodejs/frontend/src/images/supporter_virginia.png differ
diff --git a/docker/production/nodejs/frontend/src/index.html b/docker/production/nodejs/frontend/src/index.html
new file mode 100644
index 00000000..58f2c453
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/index.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+ CloudCV
+
+
+
+
+
+
diff --git a/docker/production/nodejs/frontend/src/index.js b/docker/production/nodejs/frontend/src/index.js
new file mode 100644
index 00000000..21ce4a8e
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/index.js
@@ -0,0 +1,31 @@
+import "babel-polyfill";
+import Raven from "raven-js";
+import React from "react";
+import { render } from "react-dom";
+import { Provider } from "react-redux";
+import { BrowserRouter as Router } from "react-router-dom";
+import injectTapEventPlugin from "react-tap-event-plugin";
+import style from "./styles/main.scss";
+
+import App from "./components/App";
+import configureStore from "./store/configureStore";
+import ReactGA from "react-ga";
+
+if (process.env.NODE_ENV === "production") {
+ Raven.config(
+ "https://6d5ebe81f8fb40c0b967b6ff91c80cdb@sentry.io/178146"
+ ).install();
+ ReactGA.initialize("UA-105308910-1");
+}
+
+const store = configureStore();
+injectTapEventPlugin();
+
+render(
+
+
+
+
+ ,
+ document.getElementById("app")
+);
diff --git a/docker/production/nodejs/frontend/src/reducers/index.js b/docker/production/nodejs/frontend/src/reducers/index.js
new file mode 100644
index 00000000..2070da07
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/reducers/index.js
@@ -0,0 +1,8 @@
+//eslint-disable import/default
+
+import { combineReducers } from "redux";
+
+import sidebar from "./sidebarReducer";
+const rootReducer = combineReducers({ sidebar });
+
+export default rootReducer;
diff --git a/docker/production/nodejs/frontend/src/reducers/initialState.js b/docker/production/nodejs/frontend/src/reducers/initialState.js
new file mode 100644
index 00000000..415dc45f
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/reducers/initialState.js
@@ -0,0 +1,5 @@
+export default {
+ sidebar: {
+ showQueue: false
+ }
+};
diff --git a/docker/production/nodejs/frontend/src/reducers/sidebarReducer.js b/docker/production/nodejs/frontend/src/reducers/sidebarReducer.js
new file mode 100644
index 00000000..0cc04b36
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/reducers/sidebarReducer.js
@@ -0,0 +1,11 @@
+import * as types from "../actions/actionTypes";
+import initialState from "./initialState";
+
+export default function sidebarReducer(state = initialState.sidebar, action) {
+ switch (action.type) {
+ case "TOGGLE_SHOW_QUEUE":
+ return Object.assign({}, state, { showQueue: action.value });
+ default:
+ return state;
+ }
+}
diff --git a/docker/production/nodejs/frontend/src/store/configureStore.dev.js b/docker/production/nodejs/frontend/src/store/configureStore.dev.js
new file mode 100644
index 00000000..8d4e5eb7
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/store/configureStore.dev.js
@@ -0,0 +1,12 @@
+import { createStore, applyMiddleware } from "redux";
+import rootReducer from "../reducers";
+import reduxImmutableStateInvariant from "redux-immutable-state-invariant";
+import thunk from "redux-thunk";
+
+export default function configureStore(initialState) {
+ return createStore(
+ rootReducer,
+ initialState,
+ applyMiddleware(thunk, reduxImmutableStateInvariant())
+ );
+}
diff --git a/docker/production/nodejs/frontend/src/store/configureStore.js b/docker/production/nodejs/frontend/src/store/configureStore.js
new file mode 100644
index 00000000..5536ddba
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/store/configureStore.js
@@ -0,0 +1,5 @@
+if (process.env.NODE_ENV === "production") {
+ module.exports = require("./configureStore.prod");
+} else {
+ module.exports = require("./configureStore.dev");
+}
diff --git a/docker/production/nodejs/frontend/src/store/configureStore.prod.js b/docker/production/nodejs/frontend/src/store/configureStore.prod.js
new file mode 100644
index 00000000..39392130
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/store/configureStore.prod.js
@@ -0,0 +1,7 @@
+import { createStore, applyMiddleware } from "redux";
+import rootReducer from "../reducers";
+import thunk from "redux-thunk";
+
+export default function configureStore(initialState) {
+ return createStore(rootReducer, initialState, applyMiddleware(thunk));
+}
diff --git a/docker/production/nodejs/frontend/src/styles/demo.scss b/docker/production/nodejs/frontend/src/styles/demo.scss
new file mode 100644
index 00000000..46547cc0
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/demo.scss
@@ -0,0 +1,168 @@
+@import 'partials/variables';
+@import 'partials/mixins';
+@import 'partials/fonts';
+@import 'partials/reset';
+@import 'partials/animations';
+@import 'partials/typography';
+@import 'partials/theme';
+@import 'partials/tabs';
+
+body {
+ overflow: auto !important;
+}
+
+.ant-row{
+ display: flex;
+ flex-direction: row;
+ flex-wrap: wrap;
+ justify-content: center;
+ width: 100% !important;
+ div{
+ width: 100%;
+ }
+ .ant-col-5{
+ max-width: 23%;
+ margin: 1%;
+ img{
+ height: 100%;
+ width: 100% !important;
+ border-radius: 5%;
+ }
+ }
+}
+
+.origami-demo-wrapper {
+ width: 100%;
+ padding: 2 * $gutter-width;
+}
+
+ .origami-demo-header {
+ text-align: center;
+ }
+
+ .origami-demo-heading {
+ display: inline-block;
+ margin: 0 auto;
+ padding: 2 * $gutter-width;
+ @include text-gradient($heading-color, $secondary-color);
+ }
+
+ .origami-demo-input {
+ padding: 2 * $gutter-width 0;
+ }
+
+ .origami-demo-input-heading {
+ color: $black;
+ }
+
+ .origami-demo-input-components {
+ display: flex;
+ justify-content: space-around;
+
+ > div {
+ width: 22% !important;
+ margin: 2 * $gutter-width 1.5%;
+ border: 1px solid $primary-color;
+ border-radius: 10px;
+ }
+ }
+ .origami-demo-input-text-components {
+ border: none !important;
+
+ input {
+ width: 100% !important;
+ margin: 2 * $gutter-width 1.5%;
+ border-bottom: 1px solid $primary-color;
+ }
+ }
+
+ .origami-demo-input-image-label {
+ text-align: center;
+ font-weight: 700;
+ }
+
+ .origami-demo-input-image-component-desc {
+ text-align: center;
+ }
+
+ .origami-demo-send-button {
+ display: flex;
+ justify-content: center;
+ padding: 4 * $gutter-width 0;
+
+ > div {
+ box-shadow: none !important;
+ background: transparent !important;
+ }
+
+ button {
+ @include font-size(1.2, 1);
+ border-radius: 3*$gutter-width !important;
+ cursor: pointer;
+ font-family: $heading-font-family;
+ padding: 1.7*$gutter-width 4.5*$gutter-width;
+ background: linear-gradient(45deg, $heading-color, $heading-color 30%, $secondary-color 70%, $secondary-color);
+ color: $white;
+ }
+ }
+
+ .origami-demo-output {
+ padding: 2 * $gutter-width 0;
+ }
+
+ .origami-demo-output-heading {
+ color: $black;
+ padding: 3 * $gutter-width 0;
+ }
+
+ .origami-demo-output-components {
+ display: flex;
+ justify-content: space-around;
+
+ > div {
+ width: 22% !important;
+ border: 1px solid $primary-color;
+ border-radius: 10px;
+ margin: 0 1.5%;
+ }
+ }
+
+ .origami-demo-output-text-component {
+ text-align: center;
+ padding: 2%;
+ font-weight: 700;
+ color: $black;
+ }
+
+ .origami-demo-output-image {
+ width: 100%;
+ }
+
+@media #{$bp-mobile} {
+ .origami-demo-heading {
+ width: 100%;
+ }
+
+ .origami-demo-description {
+ width: 100%;
+ }
+
+ .origami-demo-input-components {
+ display: inline-block;
+ width: 100% !important;
+ > div {
+ width: 100% !important;
+ margin: 0px;
+ }
+ }
+
+ .origami-demo-output-components {
+ display: inline-block;
+ width: 100% !important;
+ margin: 0px;
+ > div {
+ width: 75% !important;
+ margin: auto;
+ }
+ }
+}
diff --git a/docker/production/nodejs/frontend/src/styles/main.scss b/docker/production/nodejs/frontend/src/styles/main.scss
new file mode 100644
index 00000000..a851e51f
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/main.scss
@@ -0,0 +1,15 @@
+@import 'partials/variables';
+@import 'partials/mixins';
+@import 'partials/fonts';
+@import 'partials/reset';
+@import 'partials/animations';
+@import 'partials/typography';
+@import 'partials/theme';
+@import 'partials/elements';
+@import 'partials/preloader';
+@import 'partials/navbar';
+@import 'partials/home';
+@import 'partials/timeline';
+@import 'partials/team';
+@import 'partials/tabs';
+@import 'partials/projects';
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_animations.scss b/docker/production/nodejs/frontend/src/styles/partials/_animations.scss
new file mode 100644
index 00000000..ed19c9ff
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_animations.scss
@@ -0,0 +1,24 @@
+@-webkit-keyframes spin {
+ 0% {
+ -webkit-transform: rotate(0deg); /* Chrome, Opera 15+, Safari 3.1+ */
+ -ms-transform: rotate(0deg); /* IE 9 */
+ transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */
+ }
+ 100% {
+ -webkit-transform: rotate(360deg); /* Chrome, Opera 15+, Safari 3.1+ */
+ -ms-transform: rotate(360deg); /* IE 9 */
+ transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */
+ }
+}
+@keyframes spin {
+ 0% {
+ -webkit-transform: rotate(0deg); /* Chrome, Opera 15+, Safari 3.1+ */
+ -ms-transform: rotate(0deg); /* IE 9 */
+ transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */
+ }
+ 100% {
+ -webkit-transform: rotate(360deg); /* Chrome, Opera 15+, Safari 3.1+ */
+ -ms-transform: rotate(360deg); /* IE 9 */
+ transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */
+ }
+}
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_elements.scss b/docker/production/nodejs/frontend/src/styles/partials/_elements.scss
new file mode 100644
index 00000000..9f5c4ee0
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_elements.scss
@@ -0,0 +1,122 @@
+/****MAIN CONTAINER*****/
+
+.cv-container {
+ padding-left: 2*$gutter-width !important;
+ padding-right: 2*$gutter-width !important;
+ max-width: $max-width !important;
+
+ @media #{$bp-lg} {
+ box-sizing: content-box !important;
+ padding-left: calc(50% - #{$half-max-width}) !important;
+ padding-right: calc(50% - #{$half-max-width}) !important;
+ }
+}
+
+ .cv-main {
+ padding-top: 7 * $gutter-width;
+ height: 100%;
+ }
+
+ /******BUTTON******/
+
+.cv-button {
+ @include font-size(1.2, 1);
+ border-radius: 3*$gutter-width;
+ cursor: pointer;
+ font-family: $heading-font-family;
+ padding: 1.7*$gutter-width 4.5*$gutter-width;
+ transition: all 0.2s linear;
+}
+
+ .cv-button-light {
+ color: $heading-color;
+ }
+
+ .cv-button-dark {
+ background: linear-gradient(45deg, $heading-color, $heading-color 30%, $secondary-color 70%, $secondary-color);
+ color: $white;
+
+ &:hover {
+ background: linear-gradient(45deg, $heading-color, $heading-color 50%, $secondary-color 90%, $secondary-color);
+ }
+ }
+
+ .cv-button-small {
+ padding: 1.1*$gutter-width 1.7*$gutter-width;
+ }
+
+/******CARD********/
+
+.cv-card {
+ padding: 5*$gutter-width;
+ border-radius: 0.5 * $gutter-width;
+ position: relative;
+}
+
+.cv-card-light {
+ background: $white;
+ box-shadow: $box-shadow;
+ color: $primary-color;
+}
+
+.cv-card-deep-light {
+ background: $white;
+ box-shadow: $deep-box-shadow;
+ color: $primary-color;
+}
+
+.cv-card-dark {
+ background: linear-gradient(45deg, $heading-color, $secondary-color);
+ color: $white;
+}
+
+/*******ICONS*******/
+
+.cv-icon {
+ height: 3rem;
+ width: 3rem;
+ background-size: contain;
+ cursor: pointer;
+ transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
+ opacity: 0.7;
+
+ &:hover {
+ opacity: 1;
+ }
+}
+
+/********FORM ELEMENTS********/
+
+.cv-input-text {
+ margin: 3 * $gutter-width 0 0 0;
+ padding: 0 0 1 * $gutter-width 0;
+ border-bottom: 2px solid $secondary-color;
+ transition: all 0.3s linear;
+ width: 350px;
+
+ &:focus {
+ border-bottom: 2px solid $heading-color;
+ }
+}
+
+.cv-input-label {
+ display: block;
+ padding: 4 * $gutter-width 0;
+}
+
+.cv-input-file-wrapper {
+ display: inline;
+ position: relative;
+ overflow: hidden;
+ cursor: pointer;
+}
+
+ .cv-input-file {
+ cursor: inherit;
+ min-height: 100%;
+ min-width: 100%;
+ opacity: 0;
+ position: absolute;
+ right: 0;
+ top: 0;
+ }
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_fonts.scss b/docker/production/nodejs/frontend/src/styles/partials/_fonts.scss
new file mode 100644
index 00000000..0507ff85
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_fonts.scss
@@ -0,0 +1,8 @@
+@import url('https://fonts.googleapis.com/css?family=Ubuntu:400,500');
+
+@font-face {
+ font-family: 'geometos';
+ src: url('../fonts/geometos-webfont.woff') format('woff');
+ font-weight: 500;
+ font-style: normal;
+}
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_home.scss b/docker/production/nodejs/frontend/src/styles/partials/_home.scss
new file mode 100644
index 00000000..83d0da5a
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_home.scss
@@ -0,0 +1,402 @@
+/*****HOME STYLES*****/
+
+.cv-home-container {
+ width: 100%;
+}
+
+ .cv-home-header {
+ font-weight: 500;
+ margin-top: 7 * $gutter-width;
+ }
+
+ .cv-home-header-intro, .cv-home-header-desc {
+ @include font-size(1.8, 1.6);
+ }
+
+ .cv-home-header-title {
+ @include text-gradient($heading-color, $secondary-color);
+ @include font-size(5, 2);
+ display: inline-block;
+
+ @media #{$bp-sm} {
+ @include font-size(10, 1.8);
+ letter-spacing: 6rem;
+ }
+ }
+
+ .cv-home-button {
+ margin: 100px 0 0 0;
+ }
+
+ .cv-home-body {
+ padding: 0 0 5*$gutter-width 0;
+ }
+
+ .cv-home-about-us {
+ display: flex;
+ justify-content: center;;
+ align-items: center;
+ flex-wrap: wrap;
+ width: 100%;
+ padding: 14*$gutter-width 0 10*$gutter-width 0;
+ }
+
+ .cv-home-card-container {
+ width: 100%;
+ text-align: justify;
+
+ @media #{$bp-sm} {
+ width: 95%;
+
+ &:first-child {
+ margin-left: 0;
+ }
+
+ &:last-child {
+ margin-right: 0;
+ }
+ }
+ }
+
+ .cv-about-us-card-heading {
+ position: absolute;
+ display: inline-block;
+ white-space: nowrap;
+ margin: 0 auto;
+ right: 0;
+
+ @media #{$bp-sm} {
+ top: 2rem;
+ margin-right:20px;
+ }
+ }
+
+ .cv-about-us-heading-line {
+ @include text-gradient($heading-color, $secondary-color);
+ }
+
+ .cv-question-mark {
+ display: none;
+ @include text-gradient($heading-color, $secondary-color);
+ font-family: $primary-font-family;
+ @include font-size(5, 1);
+ font-weight: 300;
+
+ @media #{$bp-sm} {
+ display: inline;
+ }
+ }
+
+ .cv-about-us-card-desc {
+ margin-top: 10*$gutter-width;
+ }
+
+ .cv-home-showcase {
+ padding: 10*$gutter-width 0 5*$gutter-width 0;
+ }
+
+ .cv-home-showcase-heading {
+ display: inline-block;
+ @include text-gradient($heading-color, $secondary-color);
+ }
+
+ .cv-home-showcase-content {
+ padding-top: 1*$gutter-width;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-wrap: wrap;
+ width: 100%;
+ }
+
+ .cv-home-showcase-card {
+ box-shadow: none;
+ width: 100%;
+ position: relative;
+ margin: 1*$gutter-width 0;
+ padding: 2rem;
+
+ @media #{$bp-sm} {
+ width: 29%;
+ margin: 0 3%;
+
+ &:first-child {
+ margin-left: 0;
+ }
+
+ &:last-child {
+ margin-right: 0;
+ }
+ }
+ }
+
+ .cv-home-showcase-card-image {
+ height: 100px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+
+ img {
+ display: block;
+ width: 60%;
+ }
+ }
+
+ .cv-home-showcase-links {
+ padding-top: 1 * $gutter-width;
+ text-align: center;
+ min-height: 100px;
+ }
+
+ .cv-home-showcase-links {
+ display: flex;
+ justify-content: space-around;
+ }
+
+ .cv-home-demos {
+ padding: 10*$gutter-width 0 5*$gutter-width 0;
+ }
+
+ .cv-home-demos-heading {
+ display: inline-block;
+ @include text-gradient($heading-color, $secondary-color);
+ }
+
+ .cv-home-demos-content {
+ padding-top: 1*$gutter-width;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-wrap: wrap;
+ width: 100%;
+ }
+
+ .cv-home-demos-card {
+ box-shadow: none;
+ width: 100%;
+ position: relative;
+ padding: 2rem;
+ margin: 1*$gutter-width 0;
+
+ @media #{$bp-sm} {
+ width: 29%;
+ margin: 0 3%;
+
+ &:first-child {
+ margin-left: 0;
+ }
+
+ &:last-child {
+ margin-right: 0;
+ }
+ }
+ }
+
+ .cv-home-demos-card-title {
+ text-align: center;
+ font-family: $heading-font-family;
+ @include font-size(3.5, 1);
+ @include text-gradient($heading-color, $secondary-color);
+ @media #{$bp-mobile-small} {
+ @include font-size(3, 1);
+ }
+ }
+
+ .cv-home-demos-card-description {
+ padding-top: 1 * $gutter-width;
+ text-align: center;
+ }
+
+ .cv-home-demos-card-links {
+ padding-top: 1 * $gutter-width;
+ text-align: center;
+ display: flex;
+ justify-content: space-around;
+ }
+
+ .cv-home-demos-source {
+ padding-left: 0;
+ }
+
+ .cv-home-demos-carousel {
+ width: 100% !important;
+ }
+
+ .cv-home-demos-carousel-card {
+ box-shadow: none;
+ display: flex;
+ justify-content: space-between;
+ flex-direction: column;
+ }
+
+ .cv-home-demos-carousel-links {
+ padding-top: 1 * $gutter-width;
+ text-align: center;
+ width: 100%;
+ display: flex;
+ justify-content: space-around;
+ margin-top: auto;
+ align-self: flex-end;
+ }
+
+ .slider-decorator-2 {
+ width: 100%;
+ text-align: center;
+ }
+
+ .carousel-button {
+ border-radius: 50%;
+ cursor: pointer;
+ height: 30px;
+ width: 30px;
+ vertical-align: middle;
+ background: linear-gradient(45deg, $heading-color, $secondary-color);
+ }
+
+ .cv-home-news {
+ padding: 7*$gutter-width 0;
+ position: relative;
+ background: linear-gradient($heading-color, $white 400px);
+ }
+
+ .cv-home-news-title-container {
+ padding: 0 0 4*$gutter-width 0;
+ text-align: center;
+ }
+
+ .cv-home-news-title {
+ display: inline;
+ color: $white;
+ }
+
+ .cv-home-news-timeline-container {
+ text-align: center;
+ }
+
+ .cv-home-projects {
+ padding: 3 * $gutter-width 0 6 * $gutter-width 0;
+ text-align: center;
+
+ h4 {
+ color: $primary-color;
+ margin: 0 0 2 * $gutter-width 0;
+ }
+ }
+
+ .cv-home-sponsors-container {
+ margin-top: 10*$gutter-width;
+ }
+
+ .cv-home-sponsor-card {
+ box-shadow: none;
+ width: 45%;
+ position: relative;
+ margin: 5*$gutter-width 0;
+ padding: 0.5*$gutter-width;
+
+ @media #{$bp-sm} {
+ width: 12%;
+ margin-left: 1%;
+ margin-right: 1%;
+
+ &:first-child {
+ margin-left: 0;
+ }
+
+ &:last-child {
+ margin-right: 0;
+ }
+ }
+ }
+
+ .cv-home-sponsor-card-image {
+ max-height: 80px;
+ margin: 0 auto;
+ display: block;
+ }
+
+ .cv-home-sponsor-card-desc {
+ margin: 2*$gutter-width 0;
+ display: block;
+ text-align: center;
+ }
+
+ .cv-home-sponsors {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ flex-wrap: wrap;
+ }
+
+ .cv-home-spon-card {
+ box-shadow: none;
+ max-height: 80px;
+ max-width: 50%;
+ position: relative;
+ margin: 5*$gutter-width auto;
+ padding: 1*$gutter-width;
+
+ @media #{$bp-sm} {
+ max-height: 100px;
+ max-width: 18%;
+ margin-left: 1%;
+ margin-right: 1%;
+
+ &:first-child {
+ margin-left: 0;
+ }
+
+ &:last-child {
+ margin-right: 0;
+ }
+ }
+ }
+
+ .cv-home-github {
+ text-align: center;
+ padding: 8 * $gutter-width 0 2 * $gutter-width 0;
+
+ h1 {
+ display: inline-block;
+ margin: 0 0 3 * $gutter-width 0;
+ }
+ }
+
+ .cv-home-github-icons {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ }
+
+ .cv-home-gihub-image {
+ margin: 3 * $gutter-width $gutter-width 1 * $gutter-width $gutter-width;
+ width: 7%;
+ max-width: 90px;
+ min-width: 70px;
+ }
+
+ .cv-home-contact-us {
+ padding: 8 * $gutter-width 0 0 0;
+ }
+
+ .cv-home-contact-form {
+ margin: 3 * $gutter-width 0;
+ }
+ .cv-home-contact-form-elements {
+ margin: 5 * $gutter-width 0;
+ }
+
+ .cv-home-form-success {
+ padding: 2 * $gutter-width 0;
+ color: $success-color;
+ display: block;
+ }
+
+ .cv-home-footer {
+ margin: 0;
+ padding: 8 * $gutter-width 0 0 0;
+ }
+ .cv-home-footer-image {
+ width: 100%;
+ height: 100%;
+ }
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_mixins.scss b/docker/production/nodejs/frontend/src/styles/partials/_mixins.scss
new file mode 100644
index 00000000..5d0055e2
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_mixins.scss
@@ -0,0 +1,85 @@
+/*****MIXINS TO MAKE LIFE EASIER*****/
+
+/**
+ * Create vendor-prefixed CSS in one go, e.g.
+ *
+ `@include vendor(border-radius, 4px);`
+ *
+ */
+@mixin vendor($property, $value...){
+ -webkit-#{$property}:$value;
+ -moz-#{$property}:$value;
+ -ms-#{$property}:$value;
+ -o-#{$property}:$value;
+ #{$property}:$value;
+}
+
+/**
+ * Dump background-image styles
+ */
+@mixin dump-bg-image-styles($path) {
+ background-image: url($path);
+ background-position: center;
+ background-repeat: no-repeat;
+}
+
+/**
+ * Used for styling input placeholders
+ */
+@mixin placeholder {
+ &::-webkit-input-placeholder {@content}
+ &:-moz-placeholder {@content}
+ &::-moz-placeholder {@content}
+ &:-ms-input-placeholder {@content}
+}
+
+/**
+ * Used to generate font-size with line height.
+ * @param {decimal} $size
+ */
+@mixin font-size($size, $ratio) {
+ font-size: $size * 10px;
+ font-size: $size * 1rem;
+ line-height: $size * $ratio * 10px;
+ line-height: $size * $ratio * 1rem;
+}
+
+
+/**
+ * Used to generate a responsive container of a fixed aspect ratio.
+ * @param {integer} $width
+ * @param {integer} $height
+ *
+ * `@include aspect-ratio(16:9);`
+ *
+ */
+@mixin aspect-ratio($width, $height) {
+ position: relative;
+ &:before {
+ display: block;
+ content: "";
+ padding-top: ($height / $width) * 100%;
+ }
+ > .maintain-aspect-ratio {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ }
+
+ > .maintain-aspect-ratio img {
+ height: 100%;
+ width: 100%;
+ }
+}
+
+
+@mixin text-gradient($color1, $color2) {
+ color: $color1;
+ -webkit-text-fill-color: transparent;
+ background-image: -webkit-linear-gradient(45deg, $color1, $color1 30%, $color2 70%, $color2);
+ -webkit-background-clip: text;
+}
+
+/****END OF MIXINS SECTION****/
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_navbar.scss b/docker/production/nodejs/frontend/src/styles/partials/_navbar.scss
new file mode 100644
index 00000000..32b3b265
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_navbar.scss
@@ -0,0 +1,138 @@
+/**********NAVBAR*********/
+
+.cv-navbar-container {
+ @include font-size(1.4, 1.4);
+ background: $primary-bg-color;
+ font-family: $heading-font-family;
+ font-weight: 500;
+ display: flex;
+ flex-direction: column-reverse;
+ position: fixed;
+ padding: $gutter-width;
+ top: 0;
+ left: 0;
+ right: 0;
+ box-shadow: $box-shadow;
+ z-index: 10;
+
+ @media #{$bp-sm} {
+ background: $white;
+ flex-direction: row;
+ justify-content: space-between;
+ align-items: center;
+ box-shadow: none;
+ }
+}
+
+ .cv-navbar-list-container {
+ opacity: 1;
+ transition: opacity 0.3s linear;
+ z-index: 10;
+ }
+
+ .cv-navbar-list {
+ list-style-type: none;
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+
+ @media #{$bp-sm} {
+ flex-direction: row;
+ flex-wrap: wrap;
+ position: relative;
+ }
+ }
+
+ .cv-navbar-list-item {
+ margin: $gutter-width 0 $gutter-width 0;
+ transition: all 0.3s linear;
+ position: relative;
+
+ @media #{$bp-sm} {
+ margin-right: 6*$gutter-width;
+ }
+
+ &:after {
+ content: "";
+ top: 100%;
+ left: calc(50% - 0.3rem);
+ position: absolute;
+ width: 0.6rem;
+ height: 0.6rem;
+ background: $secondary-color;
+ border-radius: 100%;
+ opacity: 0;
+ transition: all 0.3s linear;
+ }
+
+ &:last-child {
+ margin-right: 0;
+ }
+
+ &:hover {
+ color: $secondary-color;
+ }
+
+ a {
+ display: block;
+ padding: 0.5 * $gutter-width 0 0.5 * $gutter-width 0;
+ }
+ }
+
+ .cv-navbar-list-item.active {
+ color: $secondary-color;
+
+ &:after {
+ opacity: 1;
+ }
+ }
+
+ .cv-mobile-topbar {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ z-index: 10;
+
+ @media #{$bp-sm} {
+ display: block;
+ }
+ }
+
+ .cv-navbar-brand {
+ width: 5rem;
+ }
+
+ .cv-navbar-brand-image {
+ width: 100%;
+ }
+
+ .cv-navbar-list-icon {
+ @include dump-bg-image-styles($image-list);
+ }
+
+ .cv-navbar-close-icon {
+ @include dump-bg-image-styles($image-close);
+ margin: 0.25rem;
+ width: 2.5rem;
+ height: 2.5rem;
+ }
+
+ @media #{$bp-sm} {
+ .cv-navbar-list-icon, .cv-navbar-close-icon {
+ display: none;
+ }
+ }
+
+ .cv-navbar-overlay {
+ position: fixed;
+ z-index: 9;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+
+ @media #{$bp-sm} {
+ display: none;
+ }
+ }
+
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_preloader.scss b/docker/production/nodejs/frontend/src/styles/partials/_preloader.scss
new file mode 100644
index 00000000..ea229630
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_preloader.scss
@@ -0,0 +1,54 @@
+#loader-wrapper {
+ position: fixed;
+ top: 100px;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 8;
+}
+
+ #loader, #loader:before, #loader:after {
+ border: 3px solid transparent;
+ border-radius: 50%;
+ }
+
+ #loader {
+ display: block;
+ position: relative;
+ left: 50%;
+ top: 40%;
+ width: 100px;
+ height: 100px;
+ margin: -50px 0 0 -50px;
+ z-index: 1500;
+ border-top-color: $heading-color;
+ -webkit-animation: spin 3s linear infinite;
+ animation: spin 3s linear infinite;
+
+ &:before, &:after {
+ content: "";
+ position: absolute;
+ }
+
+ &:before {
+ top: 5px;
+ left: 5px;
+ right: 5px;
+ bottom: 5px;
+ border-top-color: $secondary-color;
+ -webkit-animation: spin 2s linear infinite;
+ animation: spin 2s linear infinite;
+ }
+
+ &:after {
+ top: 15px;
+ left: 15px;
+ right: 15px;
+ bottom: 15px;
+ -webkit-animation: spin 1.5s linear infinite;
+ animation: spin 1.5s linear infinite;
+ border-top-color: $translucent-heading-color;
+ }
+ }
+
+
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_projects.scss b/docker/production/nodejs/frontend/src/styles/partials/_projects.scss
new file mode 100644
index 00000000..0cb943d6
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_projects.scss
@@ -0,0 +1,107 @@
+.cv-project-section {
+ display: flex;
+ min-height: 100%;
+ box-shadow: $box-shadow;
+ overflow-y: hidden;
+}
+ .cv-project-sidebar {
+ @include font-size(1.4, 1.2);
+ width: 15%;
+ max-width: 300px;
+ padding: 3 * $gutter-width 2 * $gutter-width;
+ background: $secondary-bg-color;
+ min-width: 115px;
+
+ @media #{$bp-sm} {
+ display: block;
+ }
+
+ @media #{$bp-xl} {
+ @include font-size(1.8, 1.4);
+ padding-left: 3 * $gutter-width;
+ padding-right: 3 * $gutter-width;
+ }
+ }
+
+ .cv-project-section > .cv-project-sidebar {
+ display: none;
+
+ @media #{$bp-sm} {
+ display: block;
+ }
+ }
+
+ .cv-project-sections {
+ padding: 1.5 * $gutter-width 0;
+ }
+
+ .cv-project-list-heading {
+ padding-bottom: 2 * $gutter-width;
+ }
+
+ .cv-project-list {
+ padding-left: 5px;
+ }
+
+ .cv-project-list-item {
+ padding-bottom: 2 * $gutter-width;
+ }
+
+ .cv-project-list-item.active {
+ color: $white;
+ }
+
+ .cv-project-demo-container {
+ width: 100%;
+ position: relative;
+ @media #{$bp-sm} {
+ width: 85%;
+ flex-grow: 2;
+ }
+ > .react-tabs {
+ display: flex;
+ flex-direction: column;
+ }
+ }
+
+ .cv-project-demo-iframe {
+ min-height: 100%;
+ width: 100%;
+ border:0;
+ }
+
+ .cv-project-demo-not-working {
+ position: absolute;
+ top: 0;
+ right: 0;
+ padding: 0;
+ margin: 1.5rem;
+ }
+
+
+/******MOBILE SIDEBAR*******/
+
+/* General sidebar styles */
+.cv-mobile-sidebar, .bm-overlay {
+ @media #{$bp-sm} {
+ display: none;
+ }
+}
+
+.cv-mobile-sidebar .cv-project-sidebar {
+ height: 100%;
+}
+
+.bm-menu-wrap {
+}
+
+ .bm-menu {
+ padding: 0;
+ }
+
+ /* Styling of overlay */
+ .bm-overlay {
+ background: hsla(0, 0%, 0%, 0.7);
+ }
+
+
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_reset.scss b/docker/production/nodejs/frontend/src/styles/partials/_reset.scss
new file mode 100644
index 00000000..ca1e2034
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_reset.scss
@@ -0,0 +1,76 @@
+// http://meyerweb.com/eric/tools/css/reset/
+// v2.0 | 20110126
+// License: none (public domain)
+//
+
+*, *:before, *:after {
+ box-sizing: border-box;
+}
+
+*:before, *:after {
+ clear: both;
+}
+
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ vertical-align: baseline;
+}
+
+// HTML5 display-role reset for older browsers
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+
+body {
+ line-height: 1;
+}
+
+ol, ul {
+ list-style: none;
+}
+
+blockquote, q {
+ quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+ content: '';
+ content: none;
+}
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+input {
+ outline: none;
+ border: none;
+}
+
+a {
+ text-decoration: none;
+}
+
+button {
+ outline: none;
+ border: none;
+ background: transparent;
+ color: inherit;
+}
+
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_tabs.scss b/docker/production/nodejs/frontend/src/styles/partials/_tabs.scss
new file mode 100644
index 00000000..4cb8ffc2
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_tabs.scss
@@ -0,0 +1,56 @@
+.react-tabs {
+ height: 100%;
+ &__tab-list {
+ font-family: $heading-font-family;
+ @include font-size(1.4, 1.4);
+ margin: 0 0 0;
+ padding: 0;
+ }
+
+ &__tab {
+ display: inline-block;
+ bottom: -0.2rem;
+ position: relative;
+ list-style: none;
+ padding: 1rem 1rem;
+ cursor: pointer;
+
+ &--selected {
+ color: $secondary-color;
+ border-bottom: 0.3rem solid $secondary-color;
+ border-radius: 1rem 1rem 0 0;
+ }
+
+ &--disabled {
+ color: $primary-color;
+ cursor: default;
+ }
+
+ }
+
+ &__tab-panel {
+ display: none;
+ &--selected {
+ color: $secondary-color;
+ height: 100%;
+ display: block;
+ width: 100%;
+ }
+ h3{
+ @include font-size(4,4);
+ white-space: nowrap;
+ }
+ }
+}
+
+.about-text{
+ font-family: $primary-font-family;
+ white-space: pre-line;
+ color: $black;
+ margin-left: 0.7rem;
+ @include font-size(2,2);
+ padding: 1rem;
+ a{
+ color: $heading-color;
+ }
+}
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_team.scss b/docker/production/nodejs/frontend/src/styles/partials/_team.scss
new file mode 100644
index 00000000..3a06647a
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_team.scss
@@ -0,0 +1,146 @@
+.cv-team-section-heading {
+ padding-bottom: 3 * $gutter-width;
+}
+
+.cv-team-core .cv-team-section-heading {
+ text-align: center;
+}
+
+.cv-team-subsection-heading {
+ color: black;
+}
+
+.cv-team-section {
+ margin: 30px 0px;
+}
+
+.cv-team-section-members {
+ display: flex;
+ align-items: start;
+ text-align: center;
+ flex-wrap: wrap;
+}
+
+.cv-team-person-card {
+ width: 40%;
+ position: relative;
+ margin: 3 * $gutter-width 0;
+
+ &:nth-child(2n) {
+ margin-left: 10%;
+ }
+
+ &:nth-child(2n+1) {
+ margin-right: 10%;
+ }
+
+ @media #{$bp-sm} {
+ width: 10%;
+ margin-right: 6%;
+ margin-left: 6%;
+
+ &:nth-child(2n) {
+ margin-left: 6%;
+ }
+
+ &:nth-child(2n+1) {
+ margin-right: 6%;
+ }
+
+ &:nth-child(5n) {
+ margin-right: 0;
+ }
+
+ &:nth-child(5n+1) {
+ margin-left: 0;
+ }
+ }
+}
+
+.cv-team-core .cv-team-person-card {
+ @media #{$bp-sm} {
+ width: 13%;
+ margin-right: 8%;
+ margin-left: 8%;
+
+ &:nth-child(4n) {
+ margin-right: 0;
+ }
+
+ &:nth-child(4n+1) {
+ margin-left: 0;
+ }
+ }
+}
+
+.cv-team-person-card:hover .cv-team-person-card-overlay {
+ opacity: 1;
+}
+
+.cv-team-person-image-border {
+ border-radius: 100%;
+ overflow: hidden;
+ padding: 3%;
+ position: relative;
+ background: linear-gradient(45deg, $heading-color, $secondary-color);
+}
+
+.cv-team-person-image-container {
+ @include aspect-ratio(1, 1);
+ border-radius: 100%;
+ overflow: hidden;
+}
+
+.cv-team-person-card-overlay {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ opacity: 0;
+ z-index: 7;
+ transition: opacity 0.2s linear;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ background: linear-gradient(45deg, $translucent-heading-color, $translucent-secondary-color)
+}
+
+.cv-team-person-card-overlay-text {
+ @include font-size(1.2, 1.2);
+ color: $white;
+ font-family: $heading-font-family;
+ font-weight: bold;
+}
+
+.cv-team-core .cv-team-person-card-overlay-text {
+ @include font-size(1.4, 1.2);
+}
+
+.cv-team-person-card-details {
+ padding: 2*$gutter-width 0;
+ font-family: $heading-font-family;
+}
+
+.cv-team-person-name,
+.cv-team-person-desc {
+ display: block;
+}
+
+.cv-team-person-name {
+ color: $black;
+ @include font-size(1.4, 1.2);
+}
+
+.cv-team-person-desc {
+ padding-top: 2px;
+ @include font-size(1.2, 1.2);
+}
+
+.cv-team-core .cv-team-person-name {
+ @include font-size(1.6, 1.2);
+}
+
+.cv-tema-core .cv-team-person-desc {
+ @include font-size(1.4, 1.2);
+}
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_theme.scss b/docker/production/nodejs/frontend/src/styles/partials/_theme.scss
new file mode 100644
index 00000000..d870c2df
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_theme.scss
@@ -0,0 +1,64 @@
+* {
+ @include placeholder {
+ @include font-size(1.8, 1.2);
+ color: $primary-color;
+ }
+
+}
+
+input:not(output):-moz-ui-invalid {
+ box-shadow:none !important;
+}
+
+body, input {
+ color: $primary-color;
+}
+
+html {
+ height: 100%;
+}
+
+body {
+ padding: 0;
+ height: 100%;
+}
+
+#app,.cv-root-container {
+ height: 100%
+}
+
+h1, h2, h3, h4, h5, h6 {
+ color: $heading-color;
+}
+
+a {
+ color: inherit;
+ cursor: pointer;
+ outline: none;
+}
+
+
+.no-select {
+ user-select: none;
+}
+
+.right-align {
+ text-align: right;
+}
+
+.navbar-box-shadow {
+ box-shadow: $box-shadow !important;
+}
+
+.hidden-small {
+ visibility: hidden;
+ opacity: 0 !important;
+ position: absolute;
+ top: -1000px;
+
+ @media #{$bp-sm} {
+ visibility: visible;
+ opacity: 1 !important;
+ position: static;
+ }
+}
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_timeline.scss b/docker/production/nodejs/frontend/src/styles/partials/_timeline.scss
new file mode 100644
index 00000000..011f47d9
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_timeline.scss
@@ -0,0 +1,213 @@
+
+/*==================================
+ TIMELINE
+==================================*/
+
+ /*-- GENERAL STYLES
+ ------------------------------*/
+ .timeline {
+ line-height: 1.4em;
+ list-style: none;
+ margin: 0;
+ padding: 0 1 * $gutter-width;
+ width: 100%;
+ h1, h2, h3, h4, h5, h6 {
+ line-height: inherit;
+ }
+ }
+
+ /*----- TIMELINE ITEM -----*/
+
+ .timeline-item {
+ padding-left: 40px;
+ position: relative;
+ &:last-child {
+ padding-bottom: 0;
+ }
+ }
+
+ /*----- TIMELINE INFO -----*/
+
+ .timeline-info {
+ @include font-size(1.4, 1.5);
+ color: $black;
+ font-weight: 700;
+ letter-spacing: 3px;
+ margin: 0 0 .5em 0;
+ text-transform: uppercase;
+ white-space: nowrap;
+ }
+ /*----- TIMELINE MARKER -----*/
+
+ .timeline-marker {
+ position: absolute;
+ top: 0; bottom: 0; left: 0;
+ width: 10px;
+ &:before {
+ background: $black;
+ border: 1px solid transparent;
+ border-radius: 100%;
+ content: "";
+ display: block;
+ height: 10px;
+ position: absolute;
+ top: 4px; left: 0;
+ width: 10px;
+ transition: background 0.3s ease-in-out,
+ border 0.3s ease-in-out;
+ }
+ &:after {
+ content: "";
+ width: 1px;
+ background: $black;
+ display: block;
+ position: absolute;
+ top: 24px; bottom: 0; left: 4px;
+ }
+ .timeline-item:last-child &:after {
+ content: none;
+ }
+ }
+ .timeline-item:not(.period):hover .timeline-marker:before {
+ background: transparent;
+ border: 1px solid $black;
+ }
+
+ /*----- TIMELINE CONTENT -----*/
+
+ .timeline-content {
+ text-align: justify;
+ text-justify: inter-word;
+ padding: 2rem 2rem;
+ margin: 1rem 0;
+
+ @include font-size(1.4, 1.5);
+
+ a {
+ color: $heading-color;
+ }
+
+ p:last-child {
+ margin-bottom: 0;
+ }
+ }
+
+ /*----------------------------------------------
+ MOD: TIMELINE SPLIT
+ ----------------------------------------------*/
+
+ .timeline-split {
+ @media (min-width: 768px) {
+ .timeline {
+ display: table;
+ }
+ .timeline-item {
+ display: table-row;
+ padding: 0;
+ }
+ .timeline-info,
+ .timeline-marker,
+ .timeline-content,
+ .period .timeline-info {
+ display: table-cell;
+ vertical-align: top;
+ }
+ .timeline-marker {
+ position: relative;
+ }
+ .timeline-content {
+ padding-left: 30px;
+ }
+ .timeline-info {
+ padding-right: 30px;
+ }
+ .period .timeline-title {
+ position: relative;
+ left: -45px;
+ }
+ }
+ }
+
+ /*----------------------------------------------
+ MOD: TIMELINE CENTERED
+ ----------------------------------------------*/
+
+ .timeline-centered {
+ @extend .timeline-split;
+ @media (min-width: 992px) {
+ &,
+ .timeline-item,
+ .timeline-info,
+ .timeline-marker,
+ .timeline-content {
+ display: block;
+ margin: 0;
+ }
+ .timeline-item {
+ padding-bottom: 40px;
+ overflow: hidden;
+ }
+ .timeline-marker {
+ position: absolute;
+ left: 50%;
+ margin-left: -7.5px;
+ }
+ .timeline-info,
+ .timeline-content {
+ width: 47%;
+ }
+ > .timeline-item:nth-child(odd) .timeline-info {
+ float: left;
+ text-align: right;
+ padding-right: 30px;
+ }
+ > .timeline-item:nth-child(odd) .timeline-content {
+ float: right;
+ text-align: left;
+ padding-left: 30px;
+ }
+ > .timeline-item:nth-child(even) .timeline-info {
+ float: right;
+ text-align: left;
+ padding-left: 30px;
+ }
+ > .timeline-item:nth-child(even) .timeline-content {
+ float: left;
+ text-align: left;
+ padding-right: 30px;
+ }
+ > .timeline-item.period .timeline-content {
+ float: none;
+ padding: 0;
+ width: 100%;
+ text-align: center;
+ }
+ .timeline-item.period {
+ padding: 50px 0 90px;
+ }
+ .period .timeline-marker:after {
+ height: 30px;
+ bottom: 0;
+ top: auto;
+ }
+ .period .timeline-title {
+ left: auto;
+ }
+ }
+ }
+
+ /*----------------------------------------------
+ MOD: MARKER OUTLINE
+ ----------------------------------------------*/
+
+ .marker-outline {
+ .timeline-marker {
+ &:before {
+ background: transparent;
+ border-color: $black;
+ }
+ }
+ .timeline-item:hover .timeline-marker:before {
+ background: $black;
+ }
+ }
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_typography.scss b/docker/production/nodejs/frontend/src/styles/partials/_typography.scss
new file mode 100644
index 00000000..e930e79b
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_typography.scss
@@ -0,0 +1,57 @@
+/*******TYPOGRAPHY*******/
+
+html {
+ font-size: $small-screen-root-font-size;
+
+ @media #{$bp-sm} {
+ font-size: $responsive-root-font-size;
+ }
+
+ @media #{$bp-lg} {
+ font-size: $large-screen-root-font-size;
+ }
+}
+
+body, input, button {
+ @include font-size(1.8, 1.6);
+ font-family: $primary-font-family;
+ font-weight: 300;
+}
+
+* {
+ @include placeholder {
+ @include font-size(1.8, 1.2);
+ font-family: $primary-font-family;
+ font-weight: 300;
+ }
+}
+
+h1, h2, h3, h4, h5, h6 {
+ font-family: $heading-font-family;
+ font-style: normal;
+ font-weight: 500;
+}
+
+h1 {
+ @include font-size(4, 1);
+}
+
+h2 {
+ @include font-size(3.6, 1);
+}
+
+h3 {
+ @include font-size(2.8, 1);
+}
+
+h4 {
+ @include font-size(1.8, 1);
+}
+
+blockquote {
+ @include font-size(2.4, 1);
+}
+
+p {
+ @include font-size(1.8, 1.8);
+}
diff --git a/docker/production/nodejs/frontend/src/styles/partials/_variables.scss b/docker/production/nodejs/frontend/src/styles/partials/_variables.scss
new file mode 100644
index 00000000..0f113ae7
--- /dev/null
+++ b/docker/production/nodejs/frontend/src/styles/partials/_variables.scss
@@ -0,0 +1,59 @@
+/*******VARIABLES FILE*******/
+
+$small-screen-root-font-size: 8px;
+
+$responsive-root-font-size: 0.8333vw;
+
+$large-screen-root-font-size: 10px;
+
+/******TYPOGRAPHY******/
+
+$primary-font-family: "Ubuntu", sans-serif;
+$heading-font-family: "geometos", sans-serif;
+
+/******BREAKPOINTS******/
+
+$max-width: 1160px;
+$half-max-width: $max-width / 2;
+$bp-mobile-small: 'only screen and (max-width: 375px)';
+$bp-mobile: 'only screen and (max-width: 600px)';
+$bp-sm: 'only screen and (min-width: 768px)';
+$bp-md: 'only screen and (min-width: 992px)';
+$bp-lg: 'only screen and (min-width: 1200px)';
+$bp-xl: 'only screen and (min-width: 1500px)';
+$bp-xxl: 'only screen and (min-width: 2000px)';
+
+/****IMAGES****/
+
+$base-path: '../images/';
+$image-list : $base-path + 'list.svg';
+$image-close: $base-path + 'close.svg';
+
+/******COLORS******/
+
+$primary-color: hsla(0, 0%, 59%, 1);
+$secondary-color: hsla(181, 51%, 66%, 1);
+$translucent-secondary-color: hsla(181, 51%, 66%, 0.7);
+$heading-color: hsla(219, 30%, 55%, 1);
+$translucent-heading-color: hsla(219, 30%, 55%, 0.7);
+$primary-bg-color: hsla(193, 100%, 98%, 1);
+$secondary-bg-color: hsla(0, 0%, 10%, 1);
+$link-color: hsla(0, 0%, 0%, 1);
+$link-color--hover: hsla(240, 100%, 47%, 1);
+$link-color--active: hsla(240, 100%, 47%, 1);
+$link-color--visited: hsla(271, 68%, 32%, 1);
+$white: hsla(0, 0%, 100%, 1);
+$black: hsla(0, 0%, 0%, 1);
+$shadow-color: hsla(0, 0%, 60%, 0.5);
+$deep-shadow-color: hsla(0, 0%, 91%, 1);
+$success-color: hsla(116, 46%, 49%, 1);
+/******MARGINS******/
+
+$gutter-width: 1rem;
+
+/******BOX SHADOW******/
+
+$box-shadow: 0 0 2*$gutter-width -0.1*$gutter-width $shadow-color;
+$deep-box-shadow: 0 2em 5rem -0.1rem $deep-shadow-color;
+
+/****END OF VARIABLES****/
diff --git a/docker/production/nodejs/frontend/webpack.config.dev.js b/docker/production/nodejs/frontend/webpack.config.dev.js
new file mode 100644
index 00000000..ded53b1b
--- /dev/null
+++ b/docker/production/nodejs/frontend/webpack.config.dev.js
@@ -0,0 +1,62 @@
+import webpack from "webpack";
+import path from "path";
+
+const GLOBALS = {
+ "process.env.AJAX_ROOT": JSON.stringify(
+ process.env.AJAX_ROOT || "http://localhost:8000"
+ )
+};
+
+export default {
+ devtool: "cheap-module-eval-source-map",
+ entry: [
+ "eventsource-polyfill",
+ "webpack-hot-middleware/client?reload=true",
+ "./src/index"
+ ],
+ target: "web",
+ output: {
+ path: `${__dirname}/dist`,
+ publicPath: "/",
+ filename: "bundle.js"
+ },
+ devServer: {
+ contentBase: "./src"
+ },
+ plugins: [
+ new webpack.DefinePlugin(GLOBALS),
+ new webpack.HotModuleReplacementPlugin(),
+ new webpack.NoEmitOnErrorsPlugin()
+ ],
+ resolve: {
+ modules: [path.join(__dirname, "src"), "node_modules"]
+ },
+ module: {
+ rules: [
+ {
+ test: /\.js$/,
+ include: path.join(__dirname, "src"),
+ use: ["babel-loader"]
+ },
+ {
+ test: /(demo.scss)$/,
+ use: ["to-string-loader", "css-loader", "postcss-loader", "sass-loader"]
+ },
+ {
+ test: /(\.scss)$/,
+ exclude: /(demo.scss)$/,
+ use: ["style-loader", "css-loader", "postcss-loader", "sass-loader"]
+ },
+ {
+ test: /(\.less)$/,
+ use: ["style-loader", "css-loader", "postcss-loader", "less-loader"]
+ },
+ {
+ test: /\.(woff|ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
+ loader: "base64-font-loader"
+ },
+ { test: /\.png$/, loader: "url-loader?limit=8192&mimetype=image/png" },
+ { test: /\.jpg$/, loader: "url-loader?limit=8192&mimetype=image/jpg" }
+ ]
+ }
+};
diff --git a/docker/production/nodejs/frontend/webpack.config.prod.js b/docker/production/nodejs/frontend/webpack.config.prod.js
new file mode 100644
index 00000000..a27c8de8
--- /dev/null
+++ b/docker/production/nodejs/frontend/webpack.config.prod.js
@@ -0,0 +1,84 @@
+import webpack from "webpack";
+import path from "path";
+import ExtractTextPlugin from "extract-text-webpack-plugin";
+
+const GLOBALS = {
+ "process.env.NODE_ENV": JSON.stringify("production"),
+ "process.env.AJAX_ROOT": JSON.stringify(
+ process.env.AJAX_ROOT || "http://localhost:8000"
+ )
+};
+
+export default {
+ entry: "./src/index",
+ target: "web",
+ output: {
+ path: `${__dirname}/dist`,
+ publicPath: "/",
+ filename: "bundle.js"
+ },
+ devServer: {
+ contentBase: "./src"
+ },
+ plugins: [
+ new webpack.DefinePlugin(GLOBALS),
+ new ExtractTextPlugin("style.css"),
+ new webpack.optimize.DedupePlugin(),
+ new webpack.optimize.UglifyJsPlugin()
+ ],
+ resolve: {
+ modules: [path.join(__dirname, "src"), "node_modules"]
+ },
+ module: {
+ rules: [
+ {
+ test: /\.js$/,
+ include: path.join(__dirname, "src"),
+ use: ["babel-loader"]
+ },
+ {
+ test: /(demo.scss)$/,
+ use: ["to-string-loader", "css-loader", "postcss-loader", "sass-loader"]
+ },
+ {
+ test: /(\.scss)$/,
+ exclude: /(demo.scss)$/,
+ use: ExtractTextPlugin.extract({
+ fallback: "style-loader",
+ use: [
+ {
+ loader: "css-loader",
+ options: {
+ minimize: true
+ }
+ },
+ "postcss-loader",
+ "sass-loader"
+ ]
+ })
+ },
+ {
+ test: /(\.less)$/,
+ use: ExtractTextPlugin.extract({
+ fallback: "style-loader",
+ use: [
+ {
+ loader: "css-loader",
+ options: {
+ minimize: true
+ }
+ },
+ "postcss-loader",
+ "less-loader"
+ ]
+ })
+ },
+ {
+ test: /\.(woff|ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
+ loader: "base64-font-loader"
+ },
+ { test: /\.png$/, loader: "url-loader?limit=8192&mimetype=image/png" },
+ { test: /\.jpg$/, loader: "url-loader?limit=8192&mimetype=image/jpg" }
+ ]
+ }
+};
diff --git a/docker/production/nodejs/frontend/yarn.lock b/docker/production/nodejs/frontend/yarn.lock
new file mode 100644
index 00000000..48f398c9
--- /dev/null
+++ b/docker/production/nodejs/frontend/yarn.lock
@@ -0,0 +1,7053 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+"@babel/code-frame@^7.0.0-beta.35":
+ version "7.0.0-beta.37"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.37.tgz#2da1dd3b1b57bfdea777ddc378df7cd12fe40171"
+ dependencies:
+ chalk "^2.0.0"
+ esutils "^2.0.2"
+ js-tokens "^3.0.0"
+
+"@babel/helper-module-imports@^7.0.0-beta.34":
+ version "7.0.0-beta.37"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.37.tgz#e0f34cfbe7eb0d70dc02e1481a236e26d127fb43"
+ dependencies:
+ "@babel/types" "7.0.0-beta.37"
+ lodash "^4.2.0"
+
+"@babel/types@7.0.0-beta.37":
+ version "7.0.0-beta.37"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.37.tgz#fa93af9aa9d85c331729bb923495af04d9b0617d"
+ dependencies:
+ esutils "^2.0.2"
+ lodash "^4.2.0"
+ to-fast-properties "^2.0.0"
+
+"@types/node@*":
+ version "9.3.0"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-9.3.0.tgz#3a129cda7c4e5df2409702626892cb4b96546dd5"
+
+abab@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e"
+
+abbrev@1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
+
+accepts@1.3.3:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca"
+ dependencies:
+ mime-types "~2.1.11"
+ negotiator "0.6.1"
+
+accepts@~1.3.4:
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f"
+ dependencies:
+ mime-types "~2.1.16"
+ negotiator "0.6.1"
+
+acorn-dynamic-import@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4"
+ dependencies:
+ acorn "^4.0.3"
+
+acorn-globals@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.1.0.tgz#ab716025dbe17c54d3ef81d32ece2b2d99fe2538"
+ dependencies:
+ acorn "^5.0.0"
+
+acorn-jsx@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b"
+ dependencies:
+ acorn "^3.0.4"
+
+acorn@^3.0.4:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
+
+acorn@^4.0.3:
+ version "4.0.13"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787"
+
+acorn@^5.0.0, acorn@^5.1.2, acorn@^5.2.1:
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822"
+
+add-dom-event-listener@1.x:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/add-dom-event-listener/-/add-dom-event-listener-1.0.2.tgz#8faed2c41008721cf111da1d30d995b85be42bed"
+ dependencies:
+ object-assign "4.x"
+
+after@0.8.2:
+ version "0.8.2"
+ resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f"
+
+ajv-keywords@^2.0.0, ajv-keywords@^2.1.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762"
+
+ajv@^4.9.1:
+ version "4.11.8"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
+ dependencies:
+ co "^4.6.0"
+ json-stable-stringify "^1.0.1"
+
+ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@^5.2.3, ajv@^5.3.0:
+ version "5.5.2"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
+ dependencies:
+ co "^4.6.0"
+ fast-deep-equal "^1.0.0"
+ fast-json-stable-stringify "^2.0.0"
+ json-schema-traverse "^0.3.0"
+
+align-text@^0.1.1, align-text@^0.1.3:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
+ dependencies:
+ kind-of "^3.0.2"
+ longest "^1.0.1"
+ repeat-string "^1.5.2"
+
+alphanum-sort@^1.0.1, alphanum-sort@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3"
+
+amdefine@>=0.0.4:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
+
+ansi-escapes@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92"
+
+ansi-html@0.0.7:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e"
+
+ansi-regex@^2.0.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
+
+ansi-regex@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
+
+ansi-styles@^2.2.1:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
+
+ansi-styles@^3.1.0, ansi-styles@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88"
+ dependencies:
+ color-convert "^1.9.0"
+
+antd@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/antd/-/antd-3.1.3.tgz#747b7efc953224a8e8f292bffb800804a900ac60"
+ dependencies:
+ array-tree-filter "^2.0.0"
+ babel-runtime "6.x"
+ classnames "~2.2.0"
+ create-react-class "^15.6.0"
+ css-animation "^1.2.5"
+ dom-closest "^0.2.0"
+ enquire.js "^2.1.1"
+ lodash.debounce "^4.0.8"
+ moment "^2.19.3"
+ omit.js "^1.0.0"
+ prop-types "^15.5.7"
+ rc-animate "^2.4.1"
+ rc-calendar "~9.4.0"
+ rc-cascader "~0.12.0"
+ rc-checkbox "~2.1.1"
+ rc-collapse "~1.7.5"
+ rc-dialog "~7.1.0"
+ rc-dropdown "~2.1.0"
+ rc-editor-mention "^1.0.2"
+ rc-form "^2.1.0"
+ rc-input-number "~4.0.0"
+ rc-menu "~6.2.0"
+ rc-notification "~3.0.0"
+ rc-pagination "~1.14.0"
+ rc-progress "~2.2.2"
+ rc-rate "~2.4.0"
+ rc-select "~7.5.0"
+ rc-slider "~8.5.0"
+ rc-steps "~3.0.0"
+ rc-switch "~1.6.0"
+ rc-table "~6.1.0"
+ rc-tabs "~9.1.2"
+ rc-time-picker "~3.2.1"
+ rc-tooltip "~3.7.0"
+ rc-tree "~1.7.0"
+ rc-tree-select "~1.12.0"
+ rc-upload "~2.4.0"
+ rc-util "^4.0.4"
+ react-lazy-load "^3.0.12"
+ react-slick "~0.16.0"
+ shallowequal "^1.0.1"
+ warning "~3.0.0"
+
+anymatch@^1.3.0:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a"
+ dependencies:
+ micromatch "^2.1.5"
+ normalize-path "^2.0.0"
+
+aproba@^1.0.3:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
+
+are-we-there-yet@~1.1.2:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d"
+ dependencies:
+ delegates "^1.0.0"
+ readable-stream "^2.0.6"
+
+argparse@^1.0.7:
+ version "1.0.9"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86"
+ dependencies:
+ sprintf-js "~1.0.2"
+
+aria-query@^0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.7.0.tgz#4af10a1e61573ddea0cf3b99b51c52c05b424d24"
+ dependencies:
+ ast-types-flow "0.0.7"
+
+arr-diff@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf"
+ dependencies:
+ arr-flatten "^1.0.1"
+
+arr-flatten@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
+
+array-equal@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
+
+array-filter@~0.0.0:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec"
+
+array-find-index@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
+
+array-flatten@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
+
+array-includes@^3.0.3:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.7.0"
+
+array-map@~0.0.0:
+ version "0.0.0"
+ resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662"
+
+array-reduce@~0.0.0:
+ version "0.0.0"
+ resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b"
+
+array-tree-filter@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/array-tree-filter/-/array-tree-filter-1.0.1.tgz#0a8ad1eefd38ce88858632f9cc0423d7634e4d5d"
+
+array-tree-filter@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/array-tree-filter/-/array-tree-filter-2.0.0.tgz#20fbc2d5a0de83242c0a9eb90894d4bfb7e2a69e"
+
+array-union@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
+ dependencies:
+ array-uniq "^1.0.1"
+
+array-uniq@^1.0.1:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
+
+array-unique@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
+
+arraybuffer.slice@~0.0.7:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675"
+
+arrify@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
+
+asap@~2.0.3:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
+
+asn1.js@^4.0.0:
+ version "4.9.2"
+ resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.2.tgz#8117ef4f7ed87cd8f89044b5bff97ac243a16c9a"
+ dependencies:
+ bn.js "^4.0.0"
+ inherits "^2.0.1"
+ minimalistic-assert "^1.0.0"
+
+asn1@~0.2.3:
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86"
+
+assert-plus@1.0.0, assert-plus@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
+
+assert-plus@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
+
+assert@^1.1.1:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91"
+ dependencies:
+ util "0.10.3"
+
+assertion-error@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b"
+
+ast-transform@0.0.0:
+ version "0.0.0"
+ resolved "https://registry.yarnpkg.com/ast-transform/-/ast-transform-0.0.0.tgz#74944058887d8283e189d954600947bc98fe0062"
+ dependencies:
+ escodegen "~1.2.0"
+ esprima "~1.0.4"
+ through "~2.3.4"
+
+ast-types-flow@0.0.7:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
+
+ast-types@^0.7.0:
+ version "0.7.8"
+ resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.7.8.tgz#902d2e0d60d071bdcd46dc115e1809ed11c138a9"
+
+async-each@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
+
+async-foreach@^0.1.3:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542"
+
+async-limiter@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8"
+
+async-validator@1.x:
+ version "1.8.2"
+ resolved "https://registry.yarnpkg.com/async-validator/-/async-validator-1.8.2.tgz#b77597226e96242f8d531c0d46ae295f62422ba4"
+ dependencies:
+ babel-runtime "6.x"
+
+async@^2.1.2, async@^2.1.5, async@^2.4.1:
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4"
+ dependencies:
+ lodash "^4.14.0"
+
+asynckit@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
+
+autoprefixer@^6.3.1:
+ version "6.7.7"
+ resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014"
+ dependencies:
+ browserslist "^1.7.6"
+ caniuse-db "^1.0.30000634"
+ normalize-range "^0.1.2"
+ num2fraction "^1.2.2"
+ postcss "^5.2.16"
+ postcss-value-parser "^3.2.3"
+
+autoprefixer@^7.2.5:
+ version "7.2.5"
+ resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.5.tgz#04ccbd0c6a61131b6d13f53d371926092952d192"
+ dependencies:
+ browserslist "^2.11.1"
+ caniuse-lite "^1.0.30000791"
+ normalize-range "^0.1.2"
+ num2fraction "^1.2.2"
+ postcss "^6.0.16"
+ postcss-value-parser "^3.2.3"
+
+aws-sign2@~0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
+
+aws-sign2@~0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
+
+aws4@^1.2.1, aws4@^1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
+
+axios@^0.17.1:
+ version "0.17.1"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-0.17.1.tgz#2d8e3e5d0bdbd7327f91bc814f5c57660f81824d"
+ dependencies:
+ follow-redirects "^1.2.5"
+ is-buffer "^1.1.5"
+
+axobject-query@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-0.1.0.tgz#62f59dbc59c9f9242759ca349960e7a2fe3c36c0"
+ dependencies:
+ ast-types-flow "0.0.7"
+
+babel-cli@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.26.0.tgz#502ab54874d7db88ad00b887a06383ce03d002f1"
+ dependencies:
+ babel-core "^6.26.0"
+ babel-polyfill "^6.26.0"
+ babel-register "^6.26.0"
+ babel-runtime "^6.26.0"
+ commander "^2.11.0"
+ convert-source-map "^1.5.0"
+ fs-readdir-recursive "^1.0.0"
+ glob "^7.1.2"
+ lodash "^4.17.4"
+ output-file-sync "^1.1.2"
+ path-is-absolute "^1.0.1"
+ slash "^1.0.0"
+ source-map "^0.5.6"
+ v8flags "^2.1.1"
+ optionalDependencies:
+ chokidar "^1.6.1"
+
+babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
+ dependencies:
+ chalk "^1.1.3"
+ esutils "^2.0.2"
+ js-tokens "^3.0.2"
+
+babel-core@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8"
+ dependencies:
+ babel-code-frame "^6.26.0"
+ babel-generator "^6.26.0"
+ babel-helpers "^6.24.1"
+ babel-messages "^6.23.0"
+ babel-register "^6.26.0"
+ babel-runtime "^6.26.0"
+ babel-template "^6.26.0"
+ babel-traverse "^6.26.0"
+ babel-types "^6.26.0"
+ babylon "^6.18.0"
+ convert-source-map "^1.5.0"
+ debug "^2.6.8"
+ json5 "^0.5.1"
+ lodash "^4.17.4"
+ minimatch "^3.0.4"
+ path-is-absolute "^1.0.1"
+ private "^0.1.7"
+ slash "^1.0.0"
+ source-map "^0.5.6"
+
+babel-generator@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5"
+ dependencies:
+ babel-messages "^6.23.0"
+ babel-runtime "^6.26.0"
+ babel-types "^6.26.0"
+ detect-indent "^4.0.0"
+ jsesc "^1.3.0"
+ lodash "^4.17.4"
+ source-map "^0.5.6"
+ trim-right "^1.0.1"
+
+babel-helper-builder-react-jsx@^6.24.1:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0"
+ dependencies:
+ babel-runtime "^6.26.0"
+ babel-types "^6.26.0"
+ esutils "^2.0.2"
+
+babel-helper-call-delegate@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d"
+ dependencies:
+ babel-helper-hoist-variables "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-traverse "^6.24.1"
+ babel-types "^6.24.1"
+
+babel-helper-define-map@^6.24.1:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f"
+ dependencies:
+ babel-helper-function-name "^6.24.1"
+ babel-runtime "^6.26.0"
+ babel-types "^6.26.0"
+ lodash "^4.17.4"
+
+babel-helper-function-name@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9"
+ dependencies:
+ babel-helper-get-function-arity "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+ babel-traverse "^6.24.1"
+ babel-types "^6.24.1"
+
+babel-helper-get-function-arity@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-helper-hoist-variables@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-helper-optimise-call-expression@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-helper-regex@^6.24.1:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72"
+ dependencies:
+ babel-runtime "^6.26.0"
+ babel-types "^6.26.0"
+ lodash "^4.17.4"
+
+babel-helper-replace-supers@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a"
+ dependencies:
+ babel-helper-optimise-call-expression "^6.24.1"
+ babel-messages "^6.23.0"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+ babel-traverse "^6.24.1"
+ babel-types "^6.24.1"
+
+babel-helpers@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+
+babel-loader@^7.1.2:
+ version "7.1.2"
+ resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.2.tgz#f6cbe122710f1aa2af4d881c6d5b54358ca24126"
+ dependencies:
+ find-cache-dir "^1.0.0"
+ loader-utils "^1.0.2"
+ mkdirp "^0.5.1"
+
+babel-messages@^6.23.0:
+ version "6.23.0"
+ resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-check-es2015-constants@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-import@^1.6.3:
+ version "1.6.3"
+ resolved "https://registry.yarnpkg.com/babel-plugin-import/-/babel-plugin-import-1.6.3.tgz#f4deeac51ff9f997c9cf38e8d7d7b9142504eaf5"
+ dependencies:
+ "@babel/helper-module-imports" "^7.0.0-beta.34"
+
+babel-plugin-react-display-name@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-react-display-name/-/babel-plugin-react-display-name-2.0.0.tgz#06529b9098f13c2ae2bf23fedf4fe069dd56f52f"
+
+babel-plugin-react-transform@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/babel-plugin-react-transform/-/babel-plugin-react-transform-2.0.2.tgz#515bbfa996893981142d90b1f9b1635de2995109"
+ dependencies:
+ lodash "^4.6.1"
+
+babel-plugin-syntax-flow@^6.18.0:
+ version "6.18.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d"
+
+babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0:
+ version "6.18.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
+
+babel-plugin-syntax-object-rest-spread@^6.8.0:
+ version "6.13.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5"
+
+babel-plugin-transform-es2015-arrow-functions@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-block-scoped-functions@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-block-scoping@^6.24.1:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f"
+ dependencies:
+ babel-runtime "^6.26.0"
+ babel-template "^6.26.0"
+ babel-traverse "^6.26.0"
+ babel-types "^6.26.0"
+ lodash "^4.17.4"
+
+babel-plugin-transform-es2015-classes@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db"
+ dependencies:
+ babel-helper-define-map "^6.24.1"
+ babel-helper-function-name "^6.24.1"
+ babel-helper-optimise-call-expression "^6.24.1"
+ babel-helper-replace-supers "^6.24.1"
+ babel-messages "^6.23.0"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+ babel-traverse "^6.24.1"
+ babel-types "^6.24.1"
+
+babel-plugin-transform-es2015-computed-properties@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+
+babel-plugin-transform-es2015-destructuring@^6.22.0:
+ version "6.23.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-duplicate-keys@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-plugin-transform-es2015-for-of@^6.22.0:
+ version "6.23.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-function-name@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b"
+ dependencies:
+ babel-helper-function-name "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-plugin-transform-es2015-literals@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-modules-amd@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154"
+ dependencies:
+ babel-plugin-transform-es2015-modules-commonjs "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+
+babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a"
+ dependencies:
+ babel-plugin-transform-strict-mode "^6.24.1"
+ babel-runtime "^6.26.0"
+ babel-template "^6.26.0"
+ babel-types "^6.26.0"
+
+babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23"
+ dependencies:
+ babel-helper-hoist-variables "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+
+babel-plugin-transform-es2015-modules-umd@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468"
+ dependencies:
+ babel-plugin-transform-es2015-modules-amd "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+
+babel-plugin-transform-es2015-object-super@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d"
+ dependencies:
+ babel-helper-replace-supers "^6.24.1"
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-parameters@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b"
+ dependencies:
+ babel-helper-call-delegate "^6.24.1"
+ babel-helper-get-function-arity "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-template "^6.24.1"
+ babel-traverse "^6.24.1"
+ babel-types "^6.24.1"
+
+babel-plugin-transform-es2015-shorthand-properties@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-plugin-transform-es2015-spread@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-sticky-regex@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc"
+ dependencies:
+ babel-helper-regex "^6.24.1"
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-plugin-transform-es2015-template-literals@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-typeof-symbol@^6.22.0:
+ version "6.23.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-es2015-unicode-regex@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9"
+ dependencies:
+ babel-helper-regex "^6.24.1"
+ babel-runtime "^6.22.0"
+ regexpu-core "^2.0.0"
+
+babel-plugin-transform-flow-strip-types@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf"
+ dependencies:
+ babel-plugin-syntax-flow "^6.18.0"
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-object-rest-spread@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06"
+ dependencies:
+ babel-plugin-syntax-object-rest-spread "^6.8.0"
+ babel-runtime "^6.26.0"
+
+babel-plugin-transform-react-display-name@^6.23.0:
+ version "6.25.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1"
+ dependencies:
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-react-jsx-self@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e"
+ dependencies:
+ babel-plugin-syntax-jsx "^6.8.0"
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-react-jsx-source@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6"
+ dependencies:
+ babel-plugin-syntax-jsx "^6.8.0"
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-react-jsx@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3"
+ dependencies:
+ babel-helper-builder-react-jsx "^6.24.1"
+ babel-plugin-syntax-jsx "^6.8.0"
+ babel-runtime "^6.22.0"
+
+babel-plugin-transform-regenerator@^6.24.1:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"
+ dependencies:
+ regenerator-transform "^0.10.0"
+
+babel-plugin-transform-strict-mode@^6.24.1:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758"
+ dependencies:
+ babel-runtime "^6.22.0"
+ babel-types "^6.24.1"
+
+babel-polyfill@^6.20.0, babel-polyfill@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153"
+ dependencies:
+ babel-runtime "^6.26.0"
+ core-js "^2.5.0"
+ regenerator-runtime "^0.10.5"
+
+babel-preset-es2015@^6.16.0:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939"
+ dependencies:
+ babel-plugin-check-es2015-constants "^6.22.0"
+ babel-plugin-transform-es2015-arrow-functions "^6.22.0"
+ babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
+ babel-plugin-transform-es2015-block-scoping "^6.24.1"
+ babel-plugin-transform-es2015-classes "^6.24.1"
+ babel-plugin-transform-es2015-computed-properties "^6.24.1"
+ babel-plugin-transform-es2015-destructuring "^6.22.0"
+ babel-plugin-transform-es2015-duplicate-keys "^6.24.1"
+ babel-plugin-transform-es2015-for-of "^6.22.0"
+ babel-plugin-transform-es2015-function-name "^6.24.1"
+ babel-plugin-transform-es2015-literals "^6.22.0"
+ babel-plugin-transform-es2015-modules-amd "^6.24.1"
+ babel-plugin-transform-es2015-modules-commonjs "^6.24.1"
+ babel-plugin-transform-es2015-modules-systemjs "^6.24.1"
+ babel-plugin-transform-es2015-modules-umd "^6.24.1"
+ babel-plugin-transform-es2015-object-super "^6.24.1"
+ babel-plugin-transform-es2015-parameters "^6.24.1"
+ babel-plugin-transform-es2015-shorthand-properties "^6.24.1"
+ babel-plugin-transform-es2015-spread "^6.22.0"
+ babel-plugin-transform-es2015-sticky-regex "^6.24.1"
+ babel-plugin-transform-es2015-template-literals "^6.22.0"
+ babel-plugin-transform-es2015-typeof-symbol "^6.22.0"
+ babel-plugin-transform-es2015-unicode-regex "^6.24.1"
+ babel-plugin-transform-regenerator "^6.24.1"
+
+babel-preset-flow@^6.23.0:
+ version "6.23.0"
+ resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d"
+ dependencies:
+ babel-plugin-transform-flow-strip-types "^6.22.0"
+
+babel-preset-react-hmre@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/babel-preset-react-hmre/-/babel-preset-react-hmre-1.1.1.tgz#d216e60cb5b8d4c873e19ed0f54eaff1437bc492"
+ dependencies:
+ babel-plugin-react-transform "^2.0.2"
+ react-transform-catch-errors "^1.0.2"
+ react-transform-hmr "^1.0.3"
+ redbox-react "^1.2.2"
+
+babel-preset-react@^6.16.0:
+ version "6.24.1"
+ resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380"
+ dependencies:
+ babel-plugin-syntax-jsx "^6.3.13"
+ babel-plugin-transform-react-display-name "^6.23.0"
+ babel-plugin-transform-react-jsx "^6.24.1"
+ babel-plugin-transform-react-jsx-self "^6.22.0"
+ babel-plugin-transform-react-jsx-source "^6.22.0"
+ babel-preset-flow "^6.23.0"
+
+babel-register@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
+ dependencies:
+ babel-core "^6.26.0"
+ babel-runtime "^6.26.0"
+ core-js "^2.5.0"
+ home-or-tmp "^2.0.0"
+ lodash "^4.17.4"
+ mkdirp "^0.5.1"
+ source-map-support "^0.4.15"
+
+babel-runtime@6.x, babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
+ dependencies:
+ core-js "^2.4.0"
+ regenerator-runtime "^0.11.0"
+
+babel-template@^6.24.1, babel-template@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
+ dependencies:
+ babel-runtime "^6.26.0"
+ babel-traverse "^6.26.0"
+ babel-types "^6.26.0"
+ babylon "^6.18.0"
+ lodash "^4.17.4"
+
+babel-traverse@^6.24.1, babel-traverse@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
+ dependencies:
+ babel-code-frame "^6.26.0"
+ babel-messages "^6.23.0"
+ babel-runtime "^6.26.0"
+ babel-types "^6.26.0"
+ babylon "^6.18.0"
+ debug "^2.6.8"
+ globals "^9.18.0"
+ invariant "^2.2.2"
+ lodash "^4.17.4"
+
+babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
+ dependencies:
+ babel-runtime "^6.26.0"
+ esutils "^2.0.2"
+ lodash "^4.17.4"
+ to-fast-properties "^1.0.3"
+
+babylon@^6.18.0:
+ version "6.18.0"
+ resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
+
+backo2@1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947"
+
+balanced-match@^0.4.2:
+ version "0.4.2"
+ resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838"
+
+balanced-match@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
+
+base64-arraybuffer@0.1.5:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8"
+
+base64-font-loader@^0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/base64-font-loader/-/base64-font-loader-0.0.4.tgz#344ed6d7e3c4969433641f67bb0daf549320b824"
+ dependencies:
+ loader-utils "~0.2.5"
+
+base64-js@^1.0.2:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886"
+
+base64id@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6"
+
+bcrypt-pbkdf@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
+ dependencies:
+ tweetnacl "^0.14.3"
+
+better-assert@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522"
+ dependencies:
+ callsite "1.0.0"
+
+big.js@^3.1.3:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
+
+binary-extensions@^1.0.0:
+ version "1.11.0"
+ resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205"
+
+blob@0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921"
+
+block-stream@*:
+ version "0.0.9"
+ resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
+ dependencies:
+ inherits "~2.0.0"
+
+bluebird@^3.5.1:
+ version "3.5.1"
+ resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
+
+bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0:
+ version "4.11.8"
+ resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f"
+
+body-parser@1.18.2, body-parser@^1.18.2:
+ version "1.18.2"
+ resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454"
+ dependencies:
+ bytes "3.0.0"
+ content-type "~1.0.4"
+ debug "2.6.9"
+ depd "~1.1.1"
+ http-errors "~1.6.2"
+ iconv-lite "0.4.19"
+ on-finished "~2.3.0"
+ qs "6.5.1"
+ raw-body "2.3.2"
+ type-is "~1.6.15"
+
+boolbase@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
+
+boom@2.x.x:
+ version "2.10.1"
+ resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f"
+ dependencies:
+ hoek "2.x.x"
+
+boom@4.x.x:
+ version "4.3.1"
+ resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31"
+ dependencies:
+ hoek "4.x.x"
+
+boom@5.x.x:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02"
+ dependencies:
+ hoek "4.x.x"
+
+brace-expansion@^1.1.7:
+ version "1.1.8"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
+ dependencies:
+ balanced-match "^1.0.0"
+ concat-map "0.0.1"
+
+braces@^1.8.2:
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7"
+ dependencies:
+ expand-range "^1.8.1"
+ preserve "^0.2.0"
+ repeat-element "^1.1.2"
+
+brorand@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
+
+browser-process-hrtime@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz#425d68a58d3447f02a04aa894187fce8af8b7b8e"
+
+browser-resolve@^1.8.1:
+ version "1.11.2"
+ resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce"
+ dependencies:
+ resolve "1.1.7"
+
+browser-stdout@1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f"
+
+browserify-aes@^1.0.0, browserify-aes@^1.0.4:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.1.1.tgz#38b7ab55edb806ff2dcda1a7f1620773a477c49f"
+ dependencies:
+ buffer-xor "^1.0.3"
+ cipher-base "^1.0.0"
+ create-hash "^1.1.0"
+ evp_bytestokey "^1.0.3"
+ inherits "^2.0.1"
+ safe-buffer "^5.0.1"
+
+browserify-cipher@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a"
+ dependencies:
+ browserify-aes "^1.0.4"
+ browserify-des "^1.0.0"
+ evp_bytestokey "^1.0.0"
+
+browserify-des@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd"
+ dependencies:
+ cipher-base "^1.0.1"
+ des.js "^1.0.0"
+ inherits "^2.0.1"
+
+browserify-optional@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/browserify-optional/-/browserify-optional-1.0.1.tgz#1e13722cfde0d85f121676c2a72ced533a018869"
+ dependencies:
+ ast-transform "0.0.0"
+ ast-types "^0.7.0"
+ browser-resolve "^1.8.1"
+
+browserify-rsa@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524"
+ dependencies:
+ bn.js "^4.1.0"
+ randombytes "^2.0.1"
+
+browserify-sign@^4.0.0:
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298"
+ dependencies:
+ bn.js "^4.1.1"
+ browserify-rsa "^4.0.0"
+ create-hash "^1.1.0"
+ create-hmac "^1.1.2"
+ elliptic "^6.0.0"
+ inherits "^2.0.1"
+ parse-asn1 "^5.0.0"
+
+browserify-zlib@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f"
+ dependencies:
+ pako "~1.0.5"
+
+browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6:
+ version "1.7.7"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9"
+ dependencies:
+ caniuse-db "^1.0.30000639"
+ electron-to-chromium "^1.2.7"
+
+browserslist@^2.11.1:
+ version "2.11.2"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.2.tgz#76ad768b97a689512fcd9724a8b9d76cdffb18fd"
+ dependencies:
+ caniuse-lite "^1.0.30000791"
+ electron-to-chromium "^1.3.30"
+
+buffer-xor@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
+
+buffer@^4.3.0:
+ version "4.9.1"
+ resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298"
+ dependencies:
+ base64-js "^1.0.2"
+ ieee754 "^1.1.4"
+ isarray "^1.0.0"
+
+builtin-modules@^1.0.0, builtin-modules@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
+
+builtin-status-codes@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
+
+bytes@3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
+
+caller-path@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
+ dependencies:
+ callsites "^0.2.0"
+
+callsite@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20"
+
+callsites@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
+
+camelcase-keys@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
+ dependencies:
+ camelcase "^2.0.0"
+ map-obj "^1.0.0"
+
+camelcase@^1.0.2:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
+
+camelcase@^2.0.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
+
+camelcase@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
+
+camelcase@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
+
+can-use-dom@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/can-use-dom/-/can-use-dom-0.1.0.tgz#22cc4a34a0abc43950f42c6411024a3f6366b45a"
+
+caniuse-api@^1.5.2:
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c"
+ dependencies:
+ browserslist "^1.3.6"
+ caniuse-db "^1.0.30000529"
+ lodash.memoize "^4.1.2"
+ lodash.uniq "^4.5.0"
+
+caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639:
+ version "1.0.30000792"
+ resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000792.tgz#a7dac6dc9f5181b675fd69e5cb06fefb523157f8"
+
+caniuse-lite@^1.0.30000791:
+ version "1.0.30000792"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000792.tgz#d0cea981f8118f3961471afbb43c9a1e5bbf0332"
+
+caseless@~0.11.0:
+ version "0.11.0"
+ resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7"
+
+caseless@~0.12.0:
+ version "0.12.0"
+ resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
+
+center-align@^0.1.1:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
+ dependencies:
+ align-text "^0.1.3"
+ lazy-cache "^1.0.3"
+
+"chai@>=1.9.2 <4.0.0":
+ version "3.5.0"
+ resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247"
+ dependencies:
+ assertion-error "^1.0.1"
+ deep-eql "^0.1.3"
+ type-detect "^1.0.0"
+
+chalk@^1.1.1, chalk@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
+ dependencies:
+ ansi-styles "^2.2.1"
+ escape-string-regexp "^1.0.2"
+ has-ansi "^2.0.0"
+ strip-ansi "^3.0.0"
+ supports-color "^2.0.0"
+
+chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba"
+ dependencies:
+ ansi-styles "^3.1.0"
+ escape-string-regexp "^1.0.5"
+ supports-color "^4.0.0"
+
+chardet@^0.4.0:
+ version "0.4.2"
+ resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2"
+
+cheerio@^1.0.0-rc.2:
+ version "1.0.0-rc.2"
+ resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db"
+ dependencies:
+ css-select "~1.2.0"
+ dom-serializer "~0.1.0"
+ entities "~1.1.1"
+ htmlparser2 "^3.9.1"
+ lodash "^4.15.0"
+ parse5 "^3.0.1"
+
+chokidar@^1.4.3, chokidar@^1.6.1, chokidar@^1.7.0:
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
+ dependencies:
+ anymatch "^1.3.0"
+ async-each "^1.0.0"
+ glob-parent "^2.0.0"
+ inherits "^2.0.1"
+ is-binary-path "^1.0.0"
+ is-glob "^2.0.0"
+ path-is-absolute "^1.0.0"
+ readdirp "^2.0.0"
+ optionalDependencies:
+ fsevents "^1.0.0"
+
+cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
+ dependencies:
+ inherits "^2.0.1"
+ safe-buffer "^5.0.1"
+
+circular-json@^0.3.1:
+ version "0.3.3"
+ resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66"
+
+clap@^1.0.9:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz#4f36745b32008492557f46412d66d50cb99bce51"
+ dependencies:
+ chalk "^1.1.3"
+
+classnames@2.x, classnames@^2.1.1, classnames@^2.2.0, classnames@^2.2.1, classnames@^2.2.3, classnames@^2.2.5, classnames@~2.2.0:
+ version "2.2.5"
+ resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d"
+
+cli-cursor@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
+ dependencies:
+ restore-cursor "^2.0.0"
+
+cli-width@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
+
+cliui@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
+ dependencies:
+ center-align "^0.1.1"
+ right-align "^0.1.1"
+ wordwrap "0.0.2"
+
+cliui@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
+ dependencies:
+ string-width "^1.0.1"
+ strip-ansi "^3.0.1"
+ wrap-ansi "^2.0.0"
+
+clone-deep@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.3.0.tgz#348c61ae9cdbe0edfe053d91ff4cc521d790ede8"
+ dependencies:
+ for-own "^1.0.0"
+ is-plain-object "^2.0.1"
+ kind-of "^3.2.2"
+ shallow-clone "^0.1.2"
+
+clone@^1.0.2:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.3.tgz#298d7e2231660f40c003c2ed3140decf3f53085f"
+
+clone@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb"
+
+co@^4.6.0:
+ version "4.6.0"
+ resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
+
+coa@~1.0.1:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd"
+ dependencies:
+ q "^1.1.2"
+
+code-point-at@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
+
+color-convert@^1.3.0, color-convert@^1.9.0:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed"
+ dependencies:
+ color-name "^1.1.1"
+
+color-name@^1.0.0, color-name@^1.1.1:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
+
+color-string@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991"
+ dependencies:
+ color-name "^1.0.0"
+
+color@^0.11.0:
+ version "0.11.4"
+ resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764"
+ dependencies:
+ clone "^1.0.2"
+ color-convert "^1.3.0"
+ color-string "^0.3.0"
+
+colormin@^1.0.5:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133"
+ dependencies:
+ color "^0.11.0"
+ css-color-names "0.0.4"
+ has "^1.0.1"
+
+colors@0.5.x:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774"
+
+colors@^1.1.2, colors@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
+
+combined-stream@^1.0.5, combined-stream@~1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009"
+ dependencies:
+ delayed-stream "~1.0.0"
+
+commander@2.11.0:
+ version "2.11.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563"
+
+commander@^2.11.0, commander@^2.9.0:
+ version "2.13.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c"
+
+commondir@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
+
+component-bind@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1"
+
+component-classes@1.x, component-classes@^1.2.5, component-classes@^1.2.6:
+ version "1.2.6"
+ resolved "https://registry.yarnpkg.com/component-classes/-/component-classes-1.2.6.tgz#c642394c3618a4d8b0b8919efccbbd930e5cd691"
+ dependencies:
+ component-indexof "0.0.3"
+
+component-emitter@1.2.1, component-emitter@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
+
+component-indexof@0.0.3:
+ version "0.0.3"
+ resolved "https://registry.yarnpkg.com/component-indexof/-/component-indexof-0.0.3.tgz#11d091312239eb8f32c8f25ae9cb002ffe8d3c24"
+
+component-inherit@0.0.3:
+ version "0.0.3"
+ resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143"
+
+compressible@~2.0.11:
+ version "2.0.12"
+ resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.12.tgz#c59a5c99db76767e9876500e271ef63b3493bd66"
+ dependencies:
+ mime-db ">= 1.30.0 < 2"
+
+compression@^1.7.1:
+ version "1.7.1"
+ resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.1.tgz#eff2603efc2e22cf86f35d2eb93589f9875373db"
+ dependencies:
+ accepts "~1.3.4"
+ bytes "3.0.0"
+ compressible "~2.0.11"
+ debug "2.6.9"
+ on-headers "~1.0.1"
+ safe-buffer "5.1.1"
+ vary "~1.1.2"
+
+concat-map@0.0.1:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+
+concat-stream@^1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
+ dependencies:
+ inherits "^2.0.3"
+ readable-stream "^2.2.2"
+ typedarray "^0.0.6"
+
+console-browserify@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
+ dependencies:
+ date-now "^0.1.4"
+
+console-control-strings@^1.0.0, console-control-strings@~1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
+
+constants-browserify@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
+
+contains-path@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
+
+content-disposition@0.5.2:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4"
+
+content-type-parser@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7"
+
+content-type@~1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
+
+convert-source-map@^1.5.0:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5"
+
+cookie-signature@1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
+
+cookie@0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb"
+
+cookiejar@^2.1.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.1.tgz#41ad57b1b555951ec171412a81942b1e8200d34a"
+
+core-js@^1.0.0:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
+
+core-js@^2.4.0, core-js@^2.5.0:
+ version "2.5.3"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e"
+
+core-util-is@1.0.2, core-util-is@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+
+cosmiconfig@^2.1.0, cosmiconfig@^2.1.1:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892"
+ dependencies:
+ is-directory "^0.3.1"
+ js-yaml "^3.4.3"
+ minimist "^1.2.0"
+ object-assign "^4.1.0"
+ os-homedir "^1.0.1"
+ parse-json "^2.2.0"
+ require-from-string "^1.1.0"
+
+create-ecdh@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d"
+ dependencies:
+ bn.js "^4.1.0"
+ elliptic "^6.0.0"
+
+create-hash@^1.1.0, create-hash@^1.1.2:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd"
+ dependencies:
+ cipher-base "^1.0.1"
+ inherits "^2.0.1"
+ ripemd160 "^2.0.0"
+ sha.js "^2.4.0"
+
+create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4:
+ version "1.1.6"
+ resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06"
+ dependencies:
+ cipher-base "^1.0.3"
+ create-hash "^1.1.0"
+ inherits "^2.0.1"
+ ripemd160 "^2.0.0"
+ safe-buffer "^5.0.1"
+ sha.js "^2.4.8"
+
+create-react-class@15.x, create-react-class@^15.5.2, create-react-class@^15.5.3, create-react-class@^15.6.0, create-react-class@^15.6.2:
+ version "15.6.2"
+ resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.6.2.tgz#cf1ed15f12aad7f14ef5f2dfe05e6c42f91ef02a"
+ dependencies:
+ fbjs "^0.8.9"
+ loose-envify "^1.3.1"
+ object-assign "^4.1.1"
+
+cross-env@5.1.3:
+ version "5.1.3"
+ resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.1.3.tgz#f8ae18faac87692b0a8b4d2f7000d4ec3a85dfd7"
+ dependencies:
+ cross-spawn "^5.1.0"
+ is-windows "^1.0.0"
+
+cross-spawn@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982"
+ dependencies:
+ lru-cache "^4.0.1"
+ which "^1.2.9"
+
+cross-spawn@^5.0.1, cross-spawn@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
+ dependencies:
+ lru-cache "^4.0.1"
+ shebang-command "^1.2.0"
+ which "^1.2.9"
+
+cryptiles@2.x.x:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
+ dependencies:
+ boom "2.x.x"
+
+cryptiles@3.x.x:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe"
+ dependencies:
+ boom "5.x.x"
+
+crypto-browserify@^3.11.0:
+ version "3.12.0"
+ resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
+ dependencies:
+ browserify-cipher "^1.0.0"
+ browserify-sign "^4.0.0"
+ create-ecdh "^4.0.0"
+ create-hash "^1.1.0"
+ create-hmac "^1.1.0"
+ diffie-hellman "^5.0.0"
+ inherits "^2.0.1"
+ pbkdf2 "^3.0.3"
+ public-encrypt "^4.0.0"
+ randombytes "^2.0.0"
+ randomfill "^1.0.3"
+
+css-animation@1.x, css-animation@^1.2.5, css-animation@^1.3.2:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/css-animation/-/css-animation-1.4.1.tgz#5b8813125de0fbbbb0bbe1b472ae84221469b7a8"
+ dependencies:
+ babel-runtime "6.x"
+ component-classes "^1.2.5"
+
+css-color-names@0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0"
+
+css-loader@^0.28.8:
+ version "0.28.8"
+ resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.8.tgz#ff36381464dea18fe60f2601a060ba6445886bd5"
+ dependencies:
+ babel-code-frame "^6.26.0"
+ css-selector-tokenizer "^0.7.0"
+ cssnano "^3.10.0"
+ icss-utils "^2.1.0"
+ loader-utils "^1.0.2"
+ lodash.camelcase "^4.3.0"
+ object-assign "^4.1.1"
+ postcss "^5.0.6"
+ postcss-modules-extract-imports "^1.1.0"
+ postcss-modules-local-by-default "^1.2.0"
+ postcss-modules-scope "^1.1.0"
+ postcss-modules-values "^1.3.0"
+ postcss-value-parser "^3.3.0"
+ source-list-map "^2.0.0"
+
+css-select@~1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
+ dependencies:
+ boolbase "~1.0.0"
+ css-what "2.1"
+ domutils "1.5.1"
+ nth-check "~1.0.1"
+
+css-selector-tokenizer@^0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86"
+ dependencies:
+ cssesc "^0.1.0"
+ fastparse "^1.1.1"
+ regexpu-core "^1.0.0"
+
+css-what@2.1:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd"
+
+cssesc@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
+
+cssnano@^3.10.0:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38"
+ dependencies:
+ autoprefixer "^6.3.1"
+ decamelize "^1.1.2"
+ defined "^1.0.0"
+ has "^1.0.1"
+ object-assign "^4.0.1"
+ postcss "^5.0.14"
+ postcss-calc "^5.2.0"
+ postcss-colormin "^2.1.8"
+ postcss-convert-values "^2.3.4"
+ postcss-discard-comments "^2.0.4"
+ postcss-discard-duplicates "^2.0.1"
+ postcss-discard-empty "^2.0.1"
+ postcss-discard-overridden "^0.1.1"
+ postcss-discard-unused "^2.2.1"
+ postcss-filter-plugins "^2.0.0"
+ postcss-merge-idents "^2.1.5"
+ postcss-merge-longhand "^2.0.1"
+ postcss-merge-rules "^2.0.3"
+ postcss-minify-font-values "^1.0.2"
+ postcss-minify-gradients "^1.0.1"
+ postcss-minify-params "^1.0.4"
+ postcss-minify-selectors "^2.0.4"
+ postcss-normalize-charset "^1.1.0"
+ postcss-normalize-url "^3.0.7"
+ postcss-ordered-values "^2.1.0"
+ postcss-reduce-idents "^2.2.2"
+ postcss-reduce-initial "^1.0.0"
+ postcss-reduce-transforms "^1.0.3"
+ postcss-svgo "^2.1.1"
+ postcss-unique-selectors "^2.0.2"
+ postcss-value-parser "^3.2.3"
+ postcss-zindex "^2.0.1"
+
+csso@~2.3.1:
+ version "2.3.2"
+ resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85"
+ dependencies:
+ clap "^1.0.9"
+ source-map "^0.5.3"
+
+cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0":
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b"
+
+"cssstyle@>= 0.2.37 < 0.3.0":
+ version "0.2.37"
+ resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54"
+ dependencies:
+ cssom "0.3.x"
+
+currently-unhandled@^0.4.1:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
+ dependencies:
+ array-find-index "^1.0.1"
+
+d@1:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f"
+ dependencies:
+ es5-ext "^0.10.9"
+
+damerau-levenshtein@^1.0.0:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514"
+
+dashdash@^1.12.0:
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
+ dependencies:
+ assert-plus "^1.0.0"
+
+date-now@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
+
+debug@2.6.9, debug@^2.2.0, debug@^2.6.8, debug@^2.6.9, debug@~2.6.4, debug@~2.6.6, debug@~2.6.9:
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+ dependencies:
+ ms "2.0.0"
+
+debug@3.1.0, debug@^3.0.1, debug@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
+ dependencies:
+ ms "2.0.0"
+
+decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
+
+deep-eql@^0.1.3:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2"
+ dependencies:
+ type-detect "0.1.1"
+
+deep-equal@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
+
+deep-extend@~0.4.0:
+ version "0.4.2"
+ resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f"
+
+deep-is@~0.1.3:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
+
+define-properties@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
+ dependencies:
+ foreach "^2.0.5"
+ object-keys "^1.0.8"
+
+defined@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693"
+
+del@^2.0.2:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
+ dependencies:
+ globby "^5.0.0"
+ is-path-cwd "^1.0.0"
+ is-path-in-cwd "^1.0.0"
+ object-assign "^4.0.1"
+ pify "^2.0.0"
+ pinkie-promise "^2.0.0"
+ rimraf "^2.2.8"
+
+delayed-stream@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
+
+delegates@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
+
+depd@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359"
+
+depd@~1.1.1:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
+
+des.js@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc"
+ dependencies:
+ inherits "^2.0.1"
+ minimalistic-assert "^1.0.0"
+
+destroy@~1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
+
+detect-indent@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
+ dependencies:
+ repeating "^2.0.0"
+
+detect-libc@^1.0.2:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
+
+diff@3.3.1:
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75"
+
+diff@^3.2.0:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c"
+
+diffie-hellman@^5.0.0:
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e"
+ dependencies:
+ bn.js "^4.1.0"
+ miller-rabin "^4.0.0"
+ randombytes "^2.0.0"
+
+discontinuous-range@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a"
+
+doctrine@1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
+ dependencies:
+ esutils "^2.0.2"
+ isarray "^1.0.0"
+
+doctrine@^2.0.0, doctrine@^2.0.2:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
+ dependencies:
+ esutils "^2.0.2"
+
+dom-align@1.x:
+ version "1.6.7"
+ resolved "https://registry.yarnpkg.com/dom-align/-/dom-align-1.6.7.tgz#6858138efb6b77405ce99146d0be5e4f7282813f"
+
+dom-closest@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/dom-closest/-/dom-closest-0.2.0.tgz#ebd9f91d1bf22e8d6f477876bbcd3ec90216c0cf"
+ dependencies:
+ dom-matches ">=1.0.1"
+
+dom-matches@>=1.0.1:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/dom-matches/-/dom-matches-2.0.0.tgz#d2728b416a87533980eb089b848d253cf23a758c"
+
+dom-scroll-into-view@1.x, dom-scroll-into-view@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz#e8f36732dd089b0201a88d7815dc3f88e6d66c7e"
+
+dom-serializer@0, dom-serializer@~0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82"
+ dependencies:
+ domelementtype "~1.1.1"
+ entities "~1.1.1"
+
+dom-walk@^0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018"
+
+domain-browser@^1.1.1:
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc"
+
+domelementtype@1, domelementtype@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2"
+
+domelementtype@~1.1.1:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
+
+domexception@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.0.tgz#81fe5df81b3f057052cde3a9fa9bf536a85b9ab0"
+
+domhandler@^2.3.0:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259"
+ dependencies:
+ domelementtype "1"
+
+domutils@1.5.1:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
+ dependencies:
+ dom-serializer "0"
+ domelementtype "1"
+
+domutils@^1.5.1:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff"
+ dependencies:
+ dom-serializer "0"
+ domelementtype "1"
+
+draft-js@^0.10.0, draft-js@~0.10.0:
+ version "0.10.4"
+ resolved "https://registry.yarnpkg.com/draft-js/-/draft-js-0.10.4.tgz#147741642097c8120d8edc232e9503e8b7fb8d35"
+ dependencies:
+ fbjs "^0.8.15"
+ immutable "~3.7.4"
+ object-assign "^4.1.0"
+
+duplexer@~0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1"
+
+ecc-jsbn@~0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
+ dependencies:
+ jsbn "~0.1.0"
+
+ee-first@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
+
+electron-releases@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/electron-releases/-/electron-releases-2.1.0.tgz#c5614bf811f176ce3c836e368a0625782341fd4e"
+
+electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30:
+ version "1.3.30"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.30.tgz#9666f532a64586651fc56a72513692e820d06a80"
+ dependencies:
+ electron-releases "^2.1.0"
+
+elliptic@^6.0.0:
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df"
+ dependencies:
+ bn.js "^4.4.0"
+ brorand "^1.0.1"
+ hash.js "^1.0.0"
+ hmac-drbg "^1.0.0"
+ inherits "^2.0.1"
+ minimalistic-assert "^1.0.0"
+ minimalistic-crypto-utils "^1.0.0"
+
+emoji-regex@^6.1.0:
+ version "6.5.1"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2"
+
+emojis-list@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
+
+encodeurl@~1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20"
+
+encoding@^0.1.11:
+ version "0.1.12"
+ resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
+ dependencies:
+ iconv-lite "~0.4.13"
+
+engine.io-client@~3.1.0:
+ version "3.1.4"
+ resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.1.4.tgz#4fcf1370b47163bd2ce9be2733972430350d4ea1"
+ dependencies:
+ component-emitter "1.2.1"
+ component-inherit "0.0.3"
+ debug "~2.6.9"
+ engine.io-parser "~2.1.1"
+ has-cors "1.1.0"
+ indexof "0.0.1"
+ parseqs "0.0.5"
+ parseuri "0.0.5"
+ ws "~3.3.1"
+ xmlhttprequest-ssl "~1.5.4"
+ yeast "0.1.2"
+
+engine.io-parser@~2.1.0, engine.io-parser@~2.1.1:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.1.2.tgz#4c0f4cff79aaeecbbdcfdea66a823c6085409196"
+ dependencies:
+ after "0.8.2"
+ arraybuffer.slice "~0.0.7"
+ base64-arraybuffer "0.1.5"
+ blob "0.0.4"
+ has-binary2 "~1.0.2"
+
+engine.io@~3.1.0:
+ version "3.1.4"
+ resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.1.4.tgz#3d0211b70a552ce841ffc7da8627b301a9a4162e"
+ dependencies:
+ accepts "1.3.3"
+ base64id "1.0.0"
+ cookie "0.3.1"
+ debug "~2.6.9"
+ engine.io-parser "~2.1.0"
+ ws "~3.3.1"
+ optionalDependencies:
+ uws "~0.14.4"
+
+enhanced-resolve@^3.4.0:
+ version "3.4.1"
+ resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e"
+ dependencies:
+ graceful-fs "^4.1.2"
+ memory-fs "^0.4.0"
+ object-assign "^4.0.1"
+ tapable "^0.2.7"
+
+enquire.js@^2.1.1, enquire.js@^2.1.6:
+ version "2.1.6"
+ resolved "https://registry.yarnpkg.com/enquire.js/-/enquire.js-2.1.6.tgz#3e8780c9b8b835084c3f60e166dbc3c2a3c89814"
+
+entities@^1.1.1, entities@~1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0"
+
+enzyme@^3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.3.0.tgz#0971abd167f2d4bf3f5bd508229e1c4b6dc50479"
+ dependencies:
+ cheerio "^1.0.0-rc.2"
+ function.prototype.name "^1.0.3"
+ has "^1.0.1"
+ is-boolean-object "^1.0.0"
+ is-callable "^1.1.3"
+ is-number-object "^1.0.3"
+ is-string "^1.0.4"
+ is-subset "^0.1.1"
+ lodash "^4.17.4"
+ object-inspect "^1.5.0"
+ object-is "^1.0.1"
+ object.assign "^4.1.0"
+ object.entries "^1.0.4"
+ object.values "^1.0.4"
+ raf "^3.4.0"
+ rst-selector-parser "^2.2.3"
+
+errno@^0.1.1, errno@^0.1.3:
+ version "0.1.6"
+ resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.6.tgz#c386ce8a6283f14fc09563b71560908c9bf53026"
+ dependencies:
+ prr "~1.0.1"
+
+error-ex@^1.2.0, error-ex@^1.3.1:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
+ dependencies:
+ is-arrayish "^0.2.1"
+
+error-stack-parser@^1.3.6:
+ version "1.3.6"
+ resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-1.3.6.tgz#e0e73b93e417138d1cd7c0b746b1a4a14854c292"
+ dependencies:
+ stackframe "^0.3.1"
+
+es-abstract@^1.4.3, es-abstract@^1.6.1, es-abstract@^1.7.0:
+ version "1.10.0"
+ resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864"
+ dependencies:
+ es-to-primitive "^1.1.1"
+ function-bind "^1.1.1"
+ has "^1.0.1"
+ is-callable "^1.1.3"
+ is-regex "^1.0.4"
+
+es-to-primitive@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
+ dependencies:
+ is-callable "^1.1.1"
+ is-date-object "^1.0.1"
+ is-symbol "^1.0.1"
+
+es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14:
+ version "0.10.37"
+ resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3"
+ dependencies:
+ es6-iterator "~2.0.1"
+ es6-symbol "~3.1.1"
+
+es6-iterator@^2.0.1, es6-iterator@~2.0.1:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"
+ dependencies:
+ d "1"
+ es5-ext "^0.10.35"
+ es6-symbol "^3.1.1"
+
+es6-map@^0.1.3:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0"
+ dependencies:
+ d "1"
+ es5-ext "~0.10.14"
+ es6-iterator "~2.0.1"
+ es6-set "~0.1.5"
+ es6-symbol "~3.1.1"
+ event-emitter "~0.3.5"
+
+es6-set@~0.1.5:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1"
+ dependencies:
+ d "1"
+ es5-ext "~0.10.14"
+ es6-iterator "~2.0.1"
+ es6-symbol "3.1.1"
+ event-emitter "~0.3.5"
+
+es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77"
+ dependencies:
+ d "1"
+ es5-ext "~0.10.14"
+
+es6-weak-map@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f"
+ dependencies:
+ d "1"
+ es5-ext "^0.10.14"
+ es6-iterator "^2.0.1"
+ es6-symbol "^3.1.1"
+
+escape-html@~1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
+
+escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+
+escodegen@^1.9.0:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852"
+ dependencies:
+ esprima "^3.1.3"
+ estraverse "^4.2.0"
+ esutils "^2.0.2"
+ optionator "^0.8.1"
+ optionalDependencies:
+ source-map "~0.5.6"
+
+escodegen@~1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.2.0.tgz#09de7967791cc958b7f89a2ddb6d23451af327e1"
+ dependencies:
+ esprima "~1.0.4"
+ estraverse "~1.5.0"
+ esutils "~1.0.0"
+ optionalDependencies:
+ source-map "~0.1.30"
+
+escope@^3.6.0:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3"
+ dependencies:
+ es6-map "^0.1.3"
+ es6-weak-map "^2.0.1"
+ esrecurse "^4.1.0"
+ estraverse "^4.1.1"
+
+eslint-import-resolver-node@^0.3.1:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a"
+ dependencies:
+ debug "^2.6.9"
+ resolve "^1.5.0"
+
+eslint-module-utils@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449"
+ dependencies:
+ debug "^2.6.8"
+ pkg-dir "^1.0.0"
+
+eslint-plugin-import@^2.8.0:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.8.0.tgz#fa1b6ef31fcb3c501c09859c1b86f1fc5b986894"
+ dependencies:
+ builtin-modules "^1.1.1"
+ contains-path "^0.1.0"
+ debug "^2.6.8"
+ doctrine "1.5.0"
+ eslint-import-resolver-node "^0.3.1"
+ eslint-module-utils "^2.1.1"
+ has "^1.0.1"
+ lodash.cond "^4.3.0"
+ minimatch "^3.0.3"
+ read-pkg-up "^2.0.0"
+
+eslint-plugin-jsx-a11y@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.3.tgz#54583d1ae442483162e040e13cc31865465100e5"
+ dependencies:
+ aria-query "^0.7.0"
+ array-includes "^3.0.3"
+ ast-types-flow "0.0.7"
+ axobject-query "^0.1.0"
+ damerau-levenshtein "^1.0.0"
+ emoji-regex "^6.1.0"
+ jsx-ast-utils "^2.0.0"
+
+eslint-plugin-prettier@^2.4.0:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.4.0.tgz#85cab0775c6d5e3344ef01e78d960f166fb93aae"
+ dependencies:
+ fast-diff "^1.1.1"
+ jest-docblock "^21.0.0"
+
+eslint-plugin-react@^7.5.1:
+ version "7.5.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.5.1.tgz#52e56e8d80c810de158859ef07b880d2f56ee30b"
+ dependencies:
+ doctrine "^2.0.0"
+ has "^1.0.1"
+ jsx-ast-utils "^2.0.0"
+ prop-types "^15.6.0"
+
+eslint-scope@^3.7.1:
+ version "3.7.1"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
+ dependencies:
+ esrecurse "^4.1.0"
+ estraverse "^4.1.1"
+
+eslint-visitor-keys@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
+
+eslint-watch@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/eslint-watch/-/eslint-watch-3.1.3.tgz#e3882a93f02ba4d8a797562fa9c3815e3181c4ba"
+ dependencies:
+ babel-polyfill "^6.20.0"
+ bluebird "^3.5.1"
+ chalk "^2.1.0"
+ chokidar "^1.4.3"
+ debug "^3.0.1"
+ keypress "^0.2.1"
+ lodash "^4.17.4"
+ optionator "^0.8.2"
+ source-map-support "^0.5.0"
+ strip-ansi "^4.0.0"
+ text-table "^0.2.0"
+ unicons "0.0.3"
+
+eslint@^4.15.0:
+ version "4.15.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.15.0.tgz#89ab38c12713eec3d13afac14e4a89e75ef08145"
+ dependencies:
+ ajv "^5.3.0"
+ babel-code-frame "^6.22.0"
+ chalk "^2.1.0"
+ concat-stream "^1.6.0"
+ cross-spawn "^5.1.0"
+ debug "^3.1.0"
+ doctrine "^2.0.2"
+ eslint-scope "^3.7.1"
+ eslint-visitor-keys "^1.0.0"
+ espree "^3.5.2"
+ esquery "^1.0.0"
+ esutils "^2.0.2"
+ file-entry-cache "^2.0.0"
+ functional-red-black-tree "^1.0.1"
+ glob "^7.1.2"
+ globals "^11.0.1"
+ ignore "^3.3.3"
+ imurmurhash "^0.1.4"
+ inquirer "^3.0.6"
+ is-resolvable "^1.0.0"
+ js-yaml "^3.9.1"
+ json-stable-stringify-without-jsonify "^1.0.1"
+ levn "^0.3.0"
+ lodash "^4.17.4"
+ minimatch "^3.0.2"
+ mkdirp "^0.5.1"
+ natural-compare "^1.4.0"
+ optionator "^0.8.2"
+ path-is-inside "^1.0.2"
+ pluralize "^7.0.0"
+ progress "^2.0.0"
+ require-uncached "^1.0.3"
+ semver "^5.3.0"
+ strip-ansi "^4.0.0"
+ strip-json-comments "~2.0.1"
+ table "^4.0.1"
+ text-table "~0.2.0"
+
+espree@^3.5.2:
+ version "3.5.2"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca"
+ dependencies:
+ acorn "^5.2.1"
+ acorn-jsx "^3.0.0"
+
+esprima@^2.6.0:
+ version "2.7.3"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
+
+esprima@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
+
+esprima@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804"
+
+esprima@~1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad"
+
+esquery@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa"
+ dependencies:
+ estraverse "^4.0.0"
+
+esrecurse@^4.1.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163"
+ dependencies:
+ estraverse "^4.1.0"
+ object-assign "^4.0.1"
+
+estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
+
+estraverse@~1.5.0:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71"
+
+esutils@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
+
+esutils@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570"
+
+etag@~1.8.1:
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
+
+eve@~0.5.1:
+ version "0.5.4"
+ resolved "https://registry.yarnpkg.com/eve/-/eve-0.5.4.tgz#67d080b9725291d7e389e34c26860dd97f1debaa"
+
+event-emitter@~0.3.5:
+ version "0.3.5"
+ resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39"
+ dependencies:
+ d "1"
+ es5-ext "~0.10.14"
+
+event-stream@~3.3.0:
+ version "3.3.4"
+ resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571"
+ dependencies:
+ duplexer "~0.1.1"
+ from "~0"
+ map-stream "~0.1.0"
+ pause-stream "0.0.11"
+ split "0.3"
+ stream-combiner "~0.0.4"
+ through "~2.3.1"
+
+eventlistener@0.0.1:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/eventlistener/-/eventlistener-0.0.1.tgz#ed2baabb852227af2bcf889152c72c63ca532eb8"
+
+events@^1.0.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924"
+
+eventsource-polyfill@^0.9.6:
+ version "0.9.6"
+ resolved "https://registry.yarnpkg.com/eventsource-polyfill/-/eventsource-polyfill-0.9.6.tgz#10e0d187f111b167f28fdab918843ce7d818f13c"
+
+evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
+ dependencies:
+ md5.js "^1.3.4"
+ safe-buffer "^5.1.1"
+
+execa@^0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777"
+ dependencies:
+ cross-spawn "^5.0.1"
+ get-stream "^3.0.0"
+ is-stream "^1.1.0"
+ npm-run-path "^2.0.0"
+ p-finally "^1.0.0"
+ signal-exit "^3.0.0"
+ strip-eof "^1.0.0"
+
+exenv@^1.2.0:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d"
+
+expand-brackets@^0.1.4:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
+ dependencies:
+ is-posix-bracket "^0.1.0"
+
+expand-range@^1.8.1:
+ version "1.8.2"
+ resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
+ dependencies:
+ fill-range "^2.1.0"
+
+expect@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-22.0.6.tgz#69e1761ecb5ba354513e546e6187beda79e18078"
+ dependencies:
+ ansi-styles "^3.2.0"
+ jest-diff "^22.0.6"
+ jest-get-type "^22.0.6"
+ jest-matcher-utils "^22.0.6"
+ jest-message-util "^22.0.6"
+ jest-regex-util "^22.0.6"
+
+expose-loader@^0.7.4:
+ version "0.7.4"
+ resolved "https://registry.yarnpkg.com/expose-loader/-/expose-loader-0.7.4.tgz#9bcdd3878b5da9107930b55a03f65afe90b3314a"
+
+express@^4.16.2:
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c"
+ dependencies:
+ accepts "~1.3.4"
+ array-flatten "1.1.1"
+ body-parser "1.18.2"
+ content-disposition "0.5.2"
+ content-type "~1.0.4"
+ cookie "0.3.1"
+ cookie-signature "1.0.6"
+ debug "2.6.9"
+ depd "~1.1.1"
+ encodeurl "~1.0.1"
+ escape-html "~1.0.3"
+ etag "~1.8.1"
+ finalhandler "1.1.0"
+ fresh "0.5.2"
+ merge-descriptors "1.0.1"
+ methods "~1.1.2"
+ on-finished "~2.3.0"
+ parseurl "~1.3.2"
+ path-to-regexp "0.1.7"
+ proxy-addr "~2.0.2"
+ qs "6.5.1"
+ range-parser "~1.2.0"
+ safe-buffer "5.1.1"
+ send "0.16.1"
+ serve-static "1.13.1"
+ setprototypeof "1.1.0"
+ statuses "~1.3.1"
+ type-is "~1.6.15"
+ utils-merge "1.0.1"
+ vary "~1.1.2"
+
+extend@^3.0.0, extend@~3.0.0, extend@~3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
+
+external-editor@^2.0.4:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48"
+ dependencies:
+ chardet "^0.4.0"
+ iconv-lite "^0.4.17"
+ tmp "^0.0.33"
+
+extglob@^0.3.1:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
+ dependencies:
+ is-extglob "^1.0.0"
+
+extract-text-webpack-plugin@3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz#5f043eaa02f9750a9258b78c0a6e0dc1408fb2f7"
+ dependencies:
+ async "^2.4.1"
+ loader-utils "^1.1.0"
+ schema-utils "^0.3.0"
+ webpack-sources "^1.0.1"
+
+extsprintf@1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
+
+extsprintf@^1.2.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
+
+fast-deep-equal@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff"
+
+fast-diff@^1.1.1:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.2.tgz#4b62c42b8e03de3f848460b639079920695d0154"
+
+fast-json-stable-stringify@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
+
+fast-levenshtein@~2.0.4:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
+
+fastparse@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8"
+
+fbjs@^0.8.15, fbjs@^0.8.16, fbjs@^0.8.6, fbjs@^0.8.9:
+ version "0.8.16"
+ resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db"
+ dependencies:
+ core-js "^1.0.0"
+ isomorphic-fetch "^2.1.1"
+ loose-envify "^1.0.0"
+ object-assign "^4.1.0"
+ promise "^7.1.1"
+ setimmediate "^1.0.5"
+ ua-parser-js "^0.7.9"
+
+figures@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
+ dependencies:
+ escape-string-regexp "^1.0.5"
+
+file-entry-cache@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
+ dependencies:
+ flat-cache "^1.2.1"
+ object-assign "^4.0.1"
+
+file-loader@^1.1.6:
+ version "1.1.6"
+ resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.6.tgz#7b9a8f2c58f00a77fddf49e940f7ac978a3ea0e8"
+ dependencies:
+ loader-utils "^1.0.2"
+ schema-utils "^0.3.0"
+
+filename-regex@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
+
+fill-range@^2.1.0:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723"
+ dependencies:
+ is-number "^2.1.0"
+ isobject "^2.0.0"
+ randomatic "^1.1.3"
+ repeat-element "^1.1.2"
+ repeat-string "^1.5.2"
+
+finalhandler@1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5"
+ dependencies:
+ debug "2.6.9"
+ encodeurl "~1.0.1"
+ escape-html "~1.0.3"
+ on-finished "~2.3.0"
+ parseurl "~1.3.2"
+ statuses "~1.3.1"
+ unpipe "~1.0.0"
+
+find-cache-dir@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f"
+ dependencies:
+ commondir "^1.0.1"
+ make-dir "^1.0.0"
+ pkg-dir "^2.0.0"
+
+find-up@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
+ dependencies:
+ path-exists "^2.0.0"
+ pinkie-promise "^2.0.0"
+
+find-up@^2.0.0, find-up@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
+ dependencies:
+ locate-path "^2.0.0"
+
+flat-cache@^1.2.1:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481"
+ dependencies:
+ circular-json "^0.3.1"
+ del "^2.0.2"
+ graceful-fs "^4.1.2"
+ write "^0.2.1"
+
+flatten@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782"
+
+follow-redirects@^1.2.5:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.3.0.tgz#f684871fc116d2e329fda55ef67687f4fabc905c"
+ dependencies:
+ debug "^3.1.0"
+
+for-in@^0.1.3:
+ version "0.1.8"
+ resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1"
+
+for-in@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
+
+for-own@^0.1.4:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
+ dependencies:
+ for-in "^1.0.1"
+
+for-own@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b"
+ dependencies:
+ for-in "^1.0.1"
+
+foreach@^2.0.5:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
+
+forever-agent@~0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
+
+form-data@^2.3.1, form-data@~2.3.1:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf"
+ dependencies:
+ asynckit "^0.4.0"
+ combined-stream "^1.0.5"
+ mime-types "^2.1.12"
+
+form-data@~2.1.1:
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1"
+ dependencies:
+ asynckit "^0.4.0"
+ combined-stream "^1.0.5"
+ mime-types "^2.1.12"
+
+formidable@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9"
+
+forwarded@~0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84"
+
+fresh@0.5.2:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
+
+from@~0:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe"
+
+fs-readdir-recursive@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27"
+
+fs.realpath@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+
+fsevents@^1.0.0:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8"
+ dependencies:
+ nan "^2.3.0"
+ node-pre-gyp "^0.6.39"
+
+fstream-ignore@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105"
+ dependencies:
+ fstream "^1.0.0"
+ inherits "2"
+ minimatch "^3.0.0"
+
+fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2:
+ version "1.0.11"
+ resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171"
+ dependencies:
+ graceful-fs "^4.1.2"
+ inherits "~2.0.0"
+ mkdirp ">=0.5 0"
+ rimraf "2"
+
+function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+
+function.prototype.name@^1.0.3:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327"
+ dependencies:
+ define-properties "^1.1.2"
+ function-bind "^1.1.1"
+ is-callable "^1.1.3"
+
+functional-red-black-tree@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
+
+gauge@~2.7.3:
+ version "2.7.4"
+ resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
+ dependencies:
+ aproba "^1.0.3"
+ console-control-strings "^1.0.0"
+ has-unicode "^2.0.0"
+ object-assign "^4.1.0"
+ signal-exit "^3.0.0"
+ string-width "^1.0.1"
+ strip-ansi "^3.0.1"
+ wide-align "^1.1.0"
+
+gaze@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105"
+ dependencies:
+ globule "^1.0.0"
+
+generate-function@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
+
+generate-object-property@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0"
+ dependencies:
+ is-property "^1.0.0"
+
+get-caller-file@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5"
+
+get-stdin@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
+
+get-stream@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
+
+getpass@^0.1.1:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
+ dependencies:
+ assert-plus "^1.0.0"
+
+glob-base@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
+ dependencies:
+ glob-parent "^2.0.0"
+ is-glob "^2.0.0"
+
+glob-parent@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28"
+ dependencies:
+ is-glob "^2.0.0"
+
+glob@7.1.2, glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2, glob@~7.1.1:
+ version "7.1.2"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
+ dependencies:
+ fs.realpath "^1.0.0"
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "^3.0.4"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
+glob@^6.0.4:
+ version "6.0.4"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22"
+ dependencies:
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "2 || 3"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
+global@^4.3.0:
+ version "4.3.2"
+ resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f"
+ dependencies:
+ min-document "^2.19.0"
+ process "~0.5.1"
+
+globals@^11.0.1:
+ version "11.1.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-11.1.0.tgz#632644457f5f0e3ae711807183700ebf2e4633e4"
+
+globals@^9.18.0:
+ version "9.18.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
+
+globby@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d"
+ dependencies:
+ array-union "^1.0.1"
+ arrify "^1.0.0"
+ glob "^7.0.3"
+ object-assign "^4.0.1"
+ pify "^2.0.0"
+ pinkie-promise "^2.0.0"
+
+globule@^1.0.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09"
+ dependencies:
+ glob "~7.1.1"
+ lodash "~4.17.4"
+ minimatch "~3.0.2"
+
+graceful-fs@^4.1.2, graceful-fs@^4.1.4:
+ version "4.1.11"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
+
+growl@1.10.3:
+ version "1.10.3"
+ resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f"
+
+hammerjs@^2.0.8:
+ version "2.0.8"
+ resolved "https://registry.yarnpkg.com/hammerjs/-/hammerjs-2.0.8.tgz#04ef77862cff2bb79d30f7692095930222bf60f1"
+
+har-schema@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
+
+har-schema@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
+
+har-validator@~2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d"
+ dependencies:
+ chalk "^1.1.1"
+ commander "^2.9.0"
+ is-my-json-valid "^2.12.4"
+ pinkie-promise "^2.0.0"
+
+har-validator@~4.2.1:
+ version "4.2.1"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
+ dependencies:
+ ajv "^4.9.1"
+ har-schema "^1.0.5"
+
+har-validator@~5.0.3:
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd"
+ dependencies:
+ ajv "^5.1.0"
+ har-schema "^2.0.0"
+
+has-ansi@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
+ dependencies:
+ ansi-regex "^2.0.0"
+
+has-binary2@~1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/has-binary2/-/has-binary2-1.0.2.tgz#e83dba49f0b9be4d026d27365350d9f03f54be98"
+ dependencies:
+ isarray "2.0.1"
+
+has-cors@1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39"
+
+has-flag@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa"
+
+has-flag@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51"
+
+has-symbols@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
+
+has-unicode@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
+
+has@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
+ dependencies:
+ function-bind "^1.0.2"
+
+hash-base@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1"
+ dependencies:
+ inherits "^2.0.1"
+
+hash-base@^3.0.0:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918"
+ dependencies:
+ inherits "^2.0.1"
+ safe-buffer "^5.0.1"
+
+hash.js@^1.0.0, hash.js@^1.0.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846"
+ dependencies:
+ inherits "^2.0.3"
+ minimalistic-assert "^1.0.0"
+
+hawk@3.1.3, hawk@~3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4"
+ dependencies:
+ boom "2.x.x"
+ cryptiles "2.x.x"
+ hoek "2.x.x"
+ sntp "1.x.x"
+
+hawk@~6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038"
+ dependencies:
+ boom "4.x.x"
+ cryptiles "3.x.x"
+ hoek "4.x.x"
+ sntp "2.x.x"
+
+he@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
+
+history@^4.7.2:
+ version "4.7.2"
+ resolved "https://registry.yarnpkg.com/history/-/history-4.7.2.tgz#22b5c7f31633c5b8021c7f4a8a954ac139ee8d5b"
+ dependencies:
+ invariant "^2.2.1"
+ loose-envify "^1.2.0"
+ resolve-pathname "^2.2.0"
+ value-equal "^0.4.0"
+ warning "^3.0.0"
+
+hmac-drbg@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
+ dependencies:
+ hash.js "^1.0.3"
+ minimalistic-assert "^1.0.0"
+ minimalistic-crypto-utils "^1.0.1"
+
+hoek@2.x.x:
+ version "2.16.3"
+ resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
+
+hoek@4.x.x:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d"
+
+hoist-non-react-statics@^2.2.1, hoist-non-react-statics@^2.3.0, hoist-non-react-statics@^2.3.1:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz#343db84c6018c650778898240135a1420ee22ce0"
+
+home-or-tmp@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
+ dependencies:
+ os-homedir "^1.0.0"
+ os-tmpdir "^1.0.1"
+
+hosted-git-info@^2.1.4:
+ version "2.5.0"
+ resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c"
+
+html-comment-regex@^1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e"
+
+html-encoding-sniffer@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8"
+ dependencies:
+ whatwg-encoding "^1.0.1"
+
+html-entities@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f"
+
+htmlparser2@^3.9.1:
+ version "3.9.2"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338"
+ dependencies:
+ domelementtype "^1.3.0"
+ domhandler "^2.3.0"
+ domutils "^1.5.1"
+ entities "^1.1.1"
+ inherits "^2.0.1"
+ readable-stream "^2.0.2"
+
+http-errors@1.6.2, http-errors@~1.6.2:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736"
+ dependencies:
+ depd "1.1.1"
+ inherits "2.0.3"
+ setprototypeof "1.0.3"
+ statuses ">= 1.3.1 < 2"
+
+http-signature@~1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
+ dependencies:
+ assert-plus "^0.2.0"
+ jsprim "^1.2.2"
+ sshpk "^1.7.0"
+
+http-signature@~1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
+ dependencies:
+ assert-plus "^1.0.0"
+ jsprim "^1.2.2"
+ sshpk "^1.7.0"
+
+https-browserify@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
+
+iconv-lite@0.4.19, iconv-lite@^0.4.17, iconv-lite@~0.4.13:
+ version "0.4.19"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
+
+icss-replace-symbols@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
+
+icss-utils@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962"
+ dependencies:
+ postcss "^6.0.1"
+
+ieee754@^1.1.4:
+ version "1.1.8"
+ resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
+
+ignore@^3.3.3:
+ version "3.3.7"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021"
+
+image-size@~0.5.0:
+ version "0.5.5"
+ resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c"
+
+immutable@^3.7.4, immutable@^3.8.2:
+ version "3.8.2"
+ resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3"
+
+immutable@~3.7.4:
+ version "3.7.6"
+ resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b"
+
+imurmurhash@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+
+in-publish@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
+
+indent-string@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
+ dependencies:
+ repeating "^2.0.0"
+
+indexes-of@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
+
+indexof@0.0.1:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d"
+
+inflight@^1.0.4:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
+ dependencies:
+ once "^1.3.0"
+ wrappy "1"
+
+inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
+
+inherits@2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
+
+ini@~1.3.0:
+ version "1.3.5"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
+
+inquirer@^3.0.6:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9"
+ dependencies:
+ ansi-escapes "^3.0.0"
+ chalk "^2.0.0"
+ cli-cursor "^2.1.0"
+ cli-width "^2.0.0"
+ external-editor "^2.0.4"
+ figures "^2.0.0"
+ lodash "^4.3.0"
+ mute-stream "0.0.7"
+ run-async "^2.2.0"
+ rx-lite "^4.0.8"
+ rx-lite-aggregates "^4.0.8"
+ string-width "^2.1.0"
+ strip-ansi "^4.0.0"
+ through "^2.3.6"
+
+interpret@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614"
+
+invariant@^2.0.0, invariant@^2.1.0, invariant@^2.2.1, invariant@^2.2.2:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360"
+ dependencies:
+ loose-envify "^1.0.0"
+
+invert-kv@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
+
+ipaddr.js@1.5.2:
+ version "1.5.2"
+ resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0"
+
+is-absolute-url@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6"
+
+is-arrayish@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+
+is-binary-path@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
+ dependencies:
+ binary-extensions "^1.0.0"
+
+is-boolean-object@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.0.tgz#98f8b28030684219a95f375cfbd88ce3405dff93"
+
+is-buffer@^1.0.2, is-buffer@^1.1.5:
+ version "1.1.6"
+ resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
+
+is-builtin-module@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
+ dependencies:
+ builtin-modules "^1.0.0"
+
+is-callable@^1.1.1, is-callable@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
+
+is-date-object@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
+
+is-directory@^0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
+
+is-dotfile@^1.0.0:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"
+
+is-equal-shallow@^0.1.3:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534"
+ dependencies:
+ is-primitive "^2.0.0"
+
+is-extendable@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
+
+is-extglob@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
+
+is-finite@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
+ dependencies:
+ number-is-nan "^1.0.0"
+
+is-fullwidth-code-point@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
+ dependencies:
+ number-is-nan "^1.0.0"
+
+is-fullwidth-code-point@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
+
+is-glob@^2.0.0, is-glob@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
+ dependencies:
+ is-extglob "^1.0.0"
+
+is-my-json-valid@^2.12.4:
+ version "2.17.1"
+ resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.1.tgz#3da98914a70a22f0a8563ef1511a246c6fc55471"
+ dependencies:
+ generate-function "^2.0.0"
+ generate-object-property "^1.1.0"
+ jsonpointer "^4.0.0"
+ xtend "^4.0.0"
+
+is-number-object@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.3.tgz#f265ab89a9f445034ef6aff15a8f00b00f551799"
+
+is-number@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
+ dependencies:
+ kind-of "^3.0.2"
+
+is-number@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
+ dependencies:
+ kind-of "^3.0.2"
+
+is-path-cwd@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
+
+is-path-in-cwd@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc"
+ dependencies:
+ is-path-inside "^1.0.0"
+
+is-path-inside@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036"
+ dependencies:
+ path-is-inside "^1.0.1"
+
+is-plain-obj@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
+
+is-plain-object@^2.0.1:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
+ dependencies:
+ isobject "^3.0.1"
+
+is-posix-bracket@^0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
+
+is-primitive@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
+
+is-promise@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
+
+is-property@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
+
+is-regex@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
+ dependencies:
+ has "^1.0.1"
+
+is-resolvable@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.1.tgz#acca1cd36dbe44b974b924321555a70ba03b1cf4"
+
+is-stream@^1.0.1, is-stream@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
+
+is-string@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64"
+
+is-subset@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6"
+
+is-svg@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9"
+ dependencies:
+ html-comment-regex "^1.1.0"
+
+is-symbol@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
+
+is-typedarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+
+is-utf8@^0.2.0:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
+
+is-windows@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9"
+
+isarray@0.0.1:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
+
+isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+
+isarray@2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e"
+
+isexe@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
+
+isobject@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
+ dependencies:
+ isarray "1.0.0"
+
+isobject@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
+
+isomorphic-fetch@^2.1.1:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
+ dependencies:
+ node-fetch "^1.0.1"
+ whatwg-fetch ">=0.10.0"
+
+isstream@~0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
+
+jest-diff@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.0.6.tgz#38c07187324564ecf6389a980a2f0e86e7e79890"
+ dependencies:
+ chalk "^2.0.1"
+ diff "^3.2.0"
+ jest-get-type "^22.0.6"
+ pretty-format "^22.0.6"
+
+jest-docblock@^21.0.0:
+ version "21.2.0"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414"
+
+jest-get-type@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.0.6.tgz#301fbc0760779fdbad37b6e3239a3c1811aa75cb"
+
+jest-matcher-utils@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.0.6.tgz#55675242b2af1de913f44e00aa4d68a38d349b07"
+ dependencies:
+ chalk "^2.0.1"
+ jest-get-type "^22.0.6"
+ pretty-format "^22.0.6"
+
+jest-message-util@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.0.6.tgz#2b30edce5131a9358f529ad66ff84835ba4ed457"
+ dependencies:
+ "@babel/code-frame" "^7.0.0-beta.35"
+ chalk "^2.0.1"
+ micromatch "^2.3.11"
+ slash "^1.0.0"
+ stack-utils "^1.0.1"
+
+jest-regex-util@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-22.0.6.tgz#cd01d33c5993340f5d61be09b270773787a41d88"
+
+js-base64@^2.1.8, js-base64@^2.1.9:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa"
+
+js-tokens@^3.0.0, js-tokens@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
+
+js-yaml@^3.4.3, js-yaml@^3.9.1:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc"
+ dependencies:
+ argparse "^1.0.7"
+ esprima "^4.0.0"
+
+js-yaml@~3.7.0:
+ version "3.7.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
+ dependencies:
+ argparse "^1.0.7"
+ esprima "^2.6.0"
+
+jsbn@~0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
+
+jsdom@^11.5.1:
+ version "11.5.1"
+ resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.5.1.tgz#5df753b8d0bca20142ce21f4f6c039f99a992929"
+ dependencies:
+ abab "^1.0.3"
+ acorn "^5.1.2"
+ acorn-globals "^4.0.0"
+ array-equal "^1.0.0"
+ browser-process-hrtime "^0.1.2"
+ content-type-parser "^1.0.1"
+ cssom ">= 0.3.2 < 0.4.0"
+ cssstyle ">= 0.2.37 < 0.3.0"
+ domexception "^1.0.0"
+ escodegen "^1.9.0"
+ html-encoding-sniffer "^1.0.1"
+ left-pad "^1.2.0"
+ nwmatcher "^1.4.3"
+ parse5 "^3.0.2"
+ pn "^1.0.0"
+ request "^2.83.0"
+ request-promise-native "^1.0.3"
+ sax "^1.2.1"
+ symbol-tree "^3.2.1"
+ tough-cookie "^2.3.3"
+ webidl-conversions "^4.0.2"
+ whatwg-encoding "^1.0.1"
+ whatwg-url "^6.3.0"
+ xml-name-validator "^2.0.1"
+
+jsesc@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
+
+jsesc@~0.5.0:
+ version "0.5.0"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
+
+json-loader@^0.5.4:
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d"
+
+json-parse-better-errors@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz#50183cd1b2d25275de069e9e71b467ac9eab973a"
+
+json-schema-traverse@^0.3.0:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
+
+json-schema@0.2.3:
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
+
+json-stable-stringify-without-jsonify@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
+
+json-stable-stringify@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
+ dependencies:
+ jsonify "~0.0.0"
+
+json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
+
+json2mq@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/json2mq/-/json2mq-0.2.0.tgz#b637bd3ba9eabe122c83e9720483aeb10d2c904a"
+ dependencies:
+ string-convert "^0.2.0"
+
+json5@^0.5.0, json5@^0.5.1:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
+
+jsonify@~0.0.0:
+ version "0.0.0"
+ resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
+
+jsonpointer@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
+
+jsprim@^1.2.2:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
+ dependencies:
+ assert-plus "1.0.0"
+ extsprintf "1.3.0"
+ json-schema "0.2.3"
+ verror "1.10.0"
+
+jsx-ast-utils@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f"
+ dependencies:
+ array-includes "^3.0.3"
+
+keypress@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/keypress/-/keypress-0.2.1.tgz#1e80454250018dbad4c3fe94497d6e67b6269c77"
+
+kind-of@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5"
+ dependencies:
+ is-buffer "^1.0.2"
+
+kind-of@^3.0.2, kind-of@^3.2.2:
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
+ dependencies:
+ is-buffer "^1.1.5"
+
+kind-of@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
+ dependencies:
+ is-buffer "^1.1.5"
+
+lazy-cache@^0.2.3:
+ version "0.2.7"
+ resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65"
+
+lazy-cache@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
+
+lcid@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
+ dependencies:
+ invert-kv "^1.0.0"
+
+left-pad@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.2.0.tgz#d30a73c6b8201d8f7d8e7956ba9616087a68e0ee"
+
+less-loader@^4.0.5:
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/less-loader/-/less-loader-4.0.5.tgz#ae155a7406cac6acd293d785587fcff0f478c4dd"
+ dependencies:
+ clone "^2.1.1"
+ loader-utils "^1.1.0"
+ pify "^2.3.0"
+
+less@^2.7.3:
+ version "2.7.3"
+ resolved "https://registry.yarnpkg.com/less/-/less-2.7.3.tgz#cc1260f51c900a9ec0d91fb6998139e02507b63b"
+ optionalDependencies:
+ errno "^0.1.1"
+ graceful-fs "^4.1.2"
+ image-size "~0.5.0"
+ mime "^1.2.11"
+ mkdirp "^0.5.0"
+ promise "^7.1.1"
+ request "2.81.0"
+ source-map "^0.5.3"
+
+levn@^0.3.0, levn@~0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
+ dependencies:
+ prelude-ls "~1.1.2"
+ type-check "~0.3.2"
+
+load-json-file@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
+ dependencies:
+ graceful-fs "^4.1.2"
+ parse-json "^2.2.0"
+ pify "^2.0.0"
+ pinkie-promise "^2.0.0"
+ strip-bom "^2.0.0"
+
+load-json-file@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
+ dependencies:
+ graceful-fs "^4.1.2"
+ parse-json "^2.2.0"
+ pify "^2.0.0"
+ strip-bom "^3.0.0"
+
+load-json-file@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
+ dependencies:
+ graceful-fs "^4.1.2"
+ parse-json "^4.0.0"
+ pify "^3.0.0"
+ strip-bom "^3.0.0"
+
+loader-runner@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2"
+
+loader-utils@^0.2.16, loader-utils@~0.2.5:
+ version "0.2.17"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
+ dependencies:
+ big.js "^3.1.3"
+ emojis-list "^2.0.0"
+ json5 "^0.5.0"
+ object-assign "^4.0.1"
+
+loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
+ dependencies:
+ big.js "^3.1.3"
+ emojis-list "^2.0.0"
+ json5 "^0.5.0"
+
+locate-path@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
+ dependencies:
+ p-locate "^2.0.0"
+ path-exists "^3.0.0"
+
+lodash-es@^4.2.0, lodash-es@^4.2.1:
+ version "4.17.4"
+ resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7"
+
+lodash._getnative@^3.0.0:
+ version "3.9.1"
+ resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5"
+
+lodash.assign@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
+
+lodash.camelcase@^4.3.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
+
+lodash.clonedeep@^4.3.2:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
+
+lodash.cond@^4.3.0:
+ version "4.5.2"
+ resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5"
+
+lodash.debounce@^4.0.0, lodash.debounce@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
+
+lodash.flattendeep@^4.4.0:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
+
+lodash.get@^4.4.2:
+ version "4.4.2"
+ resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
+
+lodash.isarguments@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a"
+
+lodash.isarray@^3.0.0:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55"
+
+lodash.isplainobject@^4.0.6:
+ version "4.0.6"
+ resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
+
+lodash.keys@^3.1.2:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a"
+ dependencies:
+ lodash._getnative "^3.0.0"
+ lodash.isarguments "^3.0.0"
+ lodash.isarray "^3.0.0"
+
+lodash.memoize@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
+
+lodash.merge@^4.6.0:
+ version "4.6.0"
+ resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5"
+
+lodash.mergewith@^4.6.0:
+ version "4.6.0"
+ resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55"
+
+lodash.sortby@^4.7.0:
+ version "4.7.0"
+ resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
+
+lodash.tail@^4.1.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664"
+
+lodash.throttle@^4.0.0:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4"
+
+lodash.uniq@^4.5.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
+
+lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.16.5, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1, lodash@~4.17.2, lodash@~4.17.4:
+ version "4.17.4"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
+
+log-symbols@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.1.0.tgz#f35fa60e278832b538dc4dddcbb478a45d3e3be6"
+ dependencies:
+ chalk "^2.0.1"
+
+loglevelnext@^1.0.1:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/loglevelnext/-/loglevelnext-1.0.3.tgz#0f69277e73bbbf2cd61b94d82313216bf87ac66e"
+
+longest@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
+
+loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
+ dependencies:
+ js-tokens "^3.0.0"
+
+loud-rejection@^1.0.0, loud-rejection@^1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
+ dependencies:
+ currently-unhandled "^0.4.1"
+ signal-exit "^3.0.0"
+
+lru-cache@^4.0.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55"
+ dependencies:
+ pseudomap "^1.0.2"
+ yallist "^2.1.2"
+
+macaddress@^0.2.8:
+ version "0.2.8"
+ resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12"
+
+make-dir@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.1.0.tgz#19b4369fe48c116f53c2af95ad102c0e39e85d51"
+ dependencies:
+ pify "^3.0.0"
+
+map-obj@^1.0.0, map-obj@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
+
+map-stream@~0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194"
+
+math-expression-evaluator@^1.2.14:
+ version "1.2.17"
+ resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac"
+
+md5.js@^1.3.4:
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d"
+ dependencies:
+ hash-base "^3.0.0"
+ inherits "^2.0.1"
+
+media-typer@0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
+
+mem@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76"
+ dependencies:
+ mimic-fn "^1.0.0"
+
+memory-fs@^0.4.0, memory-fs@~0.4.1:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
+ dependencies:
+ errno "^0.1.3"
+ readable-stream "^2.0.1"
+
+memorystream@^0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"
+
+meow@^3.7.0:
+ version "3.7.0"
+ resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
+ dependencies:
+ camelcase-keys "^2.0.0"
+ decamelize "^1.1.2"
+ loud-rejection "^1.0.0"
+ map-obj "^1.0.1"
+ minimist "^1.1.3"
+ normalize-package-data "^2.3.4"
+ object-assign "^4.0.1"
+ read-pkg-up "^1.0.1"
+ redent "^1.0.0"
+ trim-newlines "^1.0.0"
+
+merge-descriptors@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
+
+methods@^1.1.1, methods@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
+
+micromatch@^2.1.5, micromatch@^2.3.11:
+ version "2.3.11"
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
+ dependencies:
+ arr-diff "^2.0.0"
+ array-unique "^0.2.1"
+ braces "^1.8.2"
+ expand-brackets "^0.1.4"
+ extglob "^0.3.1"
+ filename-regex "^2.0.0"
+ is-extglob "^1.0.0"
+ is-glob "^2.0.1"
+ kind-of "^3.0.2"
+ normalize-path "^2.0.1"
+ object.omit "^2.0.0"
+ parse-glob "^3.0.4"
+ regex-cache "^0.4.2"
+
+miller-rabin@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
+ dependencies:
+ bn.js "^4.0.0"
+ brorand "^1.0.1"
+
+"mime-db@>= 1.30.0 < 2":
+ version "1.32.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.32.0.tgz#485b3848b01a3cda5f968b4882c0771e58e09414"
+
+mime-db@~1.30.0:
+ version "1.30.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01"
+
+mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17, mime-types@~2.1.7:
+ version "2.1.17"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a"
+ dependencies:
+ mime-db "~1.30.0"
+
+mime@1.4.1:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6"
+
+mime@^1.2.11, mime@^1.4.1:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
+
+mime@^2.1.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-2.2.0.tgz#161e541965551d3b549fa1114391e3a3d55b923b"
+
+mimic-fn@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18"
+
+min-document@^2.19.0:
+ version "2.19.0"
+ resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"
+ dependencies:
+ dom-walk "^0.1.0"
+
+mini-store@^1.0.2:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/mini-store/-/mini-store-1.0.4.tgz#a540fbfdbddd0415daf17a8b0cc8290c9f7d8bd6"
+ dependencies:
+ hoist-non-react-statics "^2.3.1"
+ prop-types "^15.6.0"
+ shallowequal "^1.0.2"
+
+minimalistic-assert@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3"
+
+minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
+
+"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
+ dependencies:
+ brace-expansion "^1.1.7"
+
+minimist@0.0.8:
+ version "0.0.8"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
+
+minimist@^1.1.3, minimist@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
+
+mixin-object@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e"
+ dependencies:
+ for-in "^0.1.3"
+ is-extendable "^0.1.1"
+
+mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
+ dependencies:
+ minimist "0.0.8"
+
+mocha@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/mocha/-/mocha-4.1.0.tgz#7d86cfbcf35cb829e2754c32e17355ec05338794"
+ dependencies:
+ browser-stdout "1.3.0"
+ commander "2.11.0"
+ debug "3.1.0"
+ diff "3.3.1"
+ escape-string-regexp "1.0.5"
+ glob "7.1.2"
+ growl "1.10.3"
+ he "1.1.1"
+ mkdirp "0.5.1"
+ supports-color "4.4.0"
+
+moment@2.x, moment@^2.19.3:
+ version "2.20.1"
+ resolved "https://registry.yarnpkg.com/moment/-/moment-2.20.1.tgz#d6eb1a46cbcc14a2b2f9434112c1ff8907f313fd"
+
+ms@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+
+mute-stream@0.0.7:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
+
+nan@^2.3.0, nan@^2.3.2:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a"
+
+natural-compare@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
+
+nearley@^2.7.10:
+ version "2.11.0"
+ resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.11.0.tgz#5e626c79a6cd2f6ab9e7e5d5805e7668967757ae"
+ dependencies:
+ nomnom "~1.6.2"
+ railroad-diagrams "^1.0.0"
+ randexp "^0.4.2"
+
+negotiator@0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9"
+
+nock@^9.1.6:
+ version "9.1.6"
+ resolved "https://registry.yarnpkg.com/nock/-/nock-9.1.6.tgz#16395af4c45b0fd84d1a4a9668154e16fa6624db"
+ dependencies:
+ chai ">=1.9.2 <4.0.0"
+ debug "^2.2.0"
+ deep-equal "^1.0.0"
+ json-stringify-safe "^5.0.1"
+ lodash "~4.17.2"
+ mkdirp "^0.5.0"
+ propagate "0.4.0"
+ qs "^6.5.1"
+ semver "^5.3.0"
+
+node-fetch@^1.0.1:
+ version "1.7.3"
+ resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
+ dependencies:
+ encoding "^0.1.11"
+ is-stream "^1.0.1"
+
+node-gyp@^3.3.1:
+ version "3.6.2"
+ resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60"
+ dependencies:
+ fstream "^1.0.0"
+ glob "^7.0.3"
+ graceful-fs "^4.1.2"
+ minimatch "^3.0.2"
+ mkdirp "^0.5.0"
+ nopt "2 || 3"
+ npmlog "0 || 1 || 2 || 3 || 4"
+ osenv "0"
+ request "2"
+ rimraf "2"
+ semver "~5.3.0"
+ tar "^2.0.0"
+ which "1"
+
+node-libs-browser@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df"
+ dependencies:
+ assert "^1.1.1"
+ browserify-zlib "^0.2.0"
+ buffer "^4.3.0"
+ console-browserify "^1.1.0"
+ constants-browserify "^1.0.0"
+ crypto-browserify "^3.11.0"
+ domain-browser "^1.1.1"
+ events "^1.0.0"
+ https-browserify "^1.0.0"
+ os-browserify "^0.3.0"
+ path-browserify "0.0.0"
+ process "^0.11.10"
+ punycode "^1.2.4"
+ querystring-es3 "^0.2.0"
+ readable-stream "^2.3.3"
+ stream-browserify "^2.0.1"
+ stream-http "^2.7.2"
+ string_decoder "^1.0.0"
+ timers-browserify "^2.0.4"
+ tty-browserify "0.0.0"
+ url "^0.11.0"
+ util "^0.10.3"
+ vm-browserify "0.0.4"
+
+node-pre-gyp@^0.6.39:
+ version "0.6.39"
+ resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649"
+ dependencies:
+ detect-libc "^1.0.2"
+ hawk "3.1.3"
+ mkdirp "^0.5.1"
+ nopt "^4.0.1"
+ npmlog "^4.0.2"
+ rc "^1.1.7"
+ request "2.81.0"
+ rimraf "^2.6.1"
+ semver "^5.3.0"
+ tar "^2.2.1"
+ tar-pack "^3.4.0"
+
+node-sass@^4.7.2:
+ version "4.7.2"
+ resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.7.2.tgz#9366778ba1469eb01438a9e8592f4262bcb6794e"
+ dependencies:
+ async-foreach "^0.1.3"
+ chalk "^1.1.1"
+ cross-spawn "^3.0.0"
+ gaze "^1.0.0"
+ get-stdin "^4.0.1"
+ glob "^7.0.3"
+ in-publish "^2.0.0"
+ lodash.assign "^4.2.0"
+ lodash.clonedeep "^4.3.2"
+ lodash.mergewith "^4.6.0"
+ meow "^3.7.0"
+ mkdirp "^0.5.1"
+ nan "^2.3.2"
+ node-gyp "^3.3.1"
+ npmlog "^4.0.0"
+ request "~2.79.0"
+ sass-graph "^2.2.4"
+ stdout-stream "^1.4.0"
+ "true-case-path" "^1.0.2"
+
+nomnom@~1.6.2:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.6.2.tgz#84a66a260174408fc5b77a18f888eccc44fb6971"
+ dependencies:
+ colors "0.5.x"
+ underscore "~1.4.4"
+
+"nopt@2 || 3":
+ version "3.0.6"
+ resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
+ dependencies:
+ abbrev "1"
+
+nopt@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
+ dependencies:
+ abbrev "1"
+ osenv "^0.1.4"
+
+normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
+ dependencies:
+ hosted-git-info "^2.1.4"
+ is-builtin-module "^1.0.0"
+ semver "2 || 3 || 4 || 5"
+ validate-npm-package-license "^3.0.1"
+
+normalize-path@^2.0.0, normalize-path@^2.0.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
+ dependencies:
+ remove-trailing-separator "^1.0.1"
+
+normalize-range@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
+
+normalize-url@^1.4.0:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c"
+ dependencies:
+ object-assign "^4.0.1"
+ prepend-http "^1.0.0"
+ query-string "^4.1.0"
+ sort-keys "^1.0.0"
+
+npm-run-all@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.2.tgz#90d62d078792d20669139e718621186656cea056"
+ dependencies:
+ ansi-styles "^3.2.0"
+ chalk "^2.1.0"
+ cross-spawn "^5.1.0"
+ memorystream "^0.3.1"
+ minimatch "^3.0.4"
+ ps-tree "^1.1.0"
+ read-pkg "^3.0.0"
+ shell-quote "^1.6.1"
+ string.prototype.padend "^3.0.0"
+
+npm-run-path@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
+ dependencies:
+ path-key "^2.0.0"
+
+"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
+ dependencies:
+ are-we-there-yet "~1.1.2"
+ console-control-strings "~1.1.0"
+ gauge "~2.7.3"
+ set-blocking "~2.0.0"
+
+nth-check@~1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4"
+ dependencies:
+ boolbase "~1.0.0"
+
+nuka-carousel@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/nuka-carousel/-/nuka-carousel-3.0.1.tgz#acf78df3a6071906663340dca1dcfb23f17fe1d8"
+ dependencies:
+ create-react-class "^15.6.2"
+ exenv "^1.2.0"
+ object-assign "^4.1.0"
+ prop-types "^15.6.0"
+ react-tween-state "^0.1.5"
+
+num2fraction@^1.2.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
+
+number-is-nan@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
+
+nwmatcher@^1.4.3:
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.3.tgz#64348e3b3d80f035b40ac11563d278f8b72db89c"
+
+oauth-sign@~0.8.1, oauth-sign@~0.8.2:
+ version "0.8.2"
+ resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
+
+object-assign@4.x, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1, object-assign@~4.1.0:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
+
+object-component@0.0.3:
+ version "0.0.3"
+ resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291"
+
+object-inspect@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.5.0.tgz#9d876c11e40f485c79215670281b767488f9bfe3"
+
+object-is@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6"
+
+object-keys@^1.0.11, object-keys@^1.0.8:
+ version "1.0.11"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
+
+object.assign@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
+ dependencies:
+ define-properties "^1.1.2"
+ function-bind "^1.1.1"
+ has-symbols "^1.0.0"
+ object-keys "^1.0.11"
+
+object.entries@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.6.1"
+ function-bind "^1.1.0"
+ has "^1.0.1"
+
+object.omit@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
+ dependencies:
+ for-own "^0.1.4"
+ is-extendable "^0.1.1"
+
+object.values@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.6.1"
+ function-bind "^1.1.0"
+ has "^1.0.1"
+
+omit.js@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/omit.js/-/omit.js-1.0.0.tgz#e013cb86a7517b9cf6f7cfb0ddb4297256a99288"
+ dependencies:
+ babel-runtime "^6.23.0"
+
+on-finished@~2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
+ dependencies:
+ ee-first "1.1.1"
+
+on-headers@~1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7"
+
+once@^1.3.0, once@^1.3.3:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+ dependencies:
+ wrappy "1"
+
+onetime@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
+ dependencies:
+ mimic-fn "^1.0.0"
+
+open@^0.0.5:
+ version "0.0.5"
+ resolved "https://registry.yarnpkg.com/open/-/open-0.0.5.tgz#42c3e18ec95466b6bf0dc42f3a2945c3f0cad8fc"
+
+optionator@^0.8.1, optionator@^0.8.2:
+ version "0.8.2"
+ resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
+ dependencies:
+ deep-is "~0.1.3"
+ fast-levenshtein "~2.0.4"
+ levn "~0.3.0"
+ prelude-ls "~1.1.2"
+ type-check "~0.3.2"
+ wordwrap "~1.0.0"
+
+os-browserify@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
+
+os-homedir@^1.0.0, os-homedir@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
+
+os-locale@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
+ dependencies:
+ lcid "^1.0.0"
+
+os-locale@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2"
+ dependencies:
+ execa "^0.7.0"
+ lcid "^1.0.0"
+ mem "^1.1.0"
+
+os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
+
+osenv@0, osenv@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644"
+ dependencies:
+ os-homedir "^1.0.0"
+ os-tmpdir "^1.0.0"
+
+output-file-sync@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76"
+ dependencies:
+ graceful-fs "^4.1.4"
+ mkdirp "^0.5.1"
+ object-assign "^4.1.0"
+
+p-finally@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
+
+p-limit@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c"
+ dependencies:
+ p-try "^1.0.0"
+
+p-locate@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
+ dependencies:
+ p-limit "^1.1.0"
+
+p-try@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
+
+pako@~1.0.5:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258"
+
+parse-asn1@^5.0.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712"
+ dependencies:
+ asn1.js "^4.0.0"
+ browserify-aes "^1.0.0"
+ create-hash "^1.1.0"
+ evp_bytestokey "^1.0.0"
+ pbkdf2 "^3.0.3"
+
+parse-glob@^3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c"
+ dependencies:
+ glob-base "^0.3.0"
+ is-dotfile "^1.0.0"
+ is-extglob "^1.0.0"
+ is-glob "^2.0.0"
+
+parse-json@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
+ dependencies:
+ error-ex "^1.2.0"
+
+parse-json@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0"
+ dependencies:
+ error-ex "^1.3.1"
+ json-parse-better-errors "^1.0.1"
+
+parse5@^3.0.1, parse5@^3.0.2:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c"
+ dependencies:
+ "@types/node" "*"
+
+parseqs@0.0.5:
+ version "0.0.5"
+ resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d"
+ dependencies:
+ better-assert "~1.0.0"
+
+parseuri@0.0.5:
+ version "0.0.5"
+ resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a"
+ dependencies:
+ better-assert "~1.0.0"
+
+parseurl@~1.3.2:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3"
+
+path-browserify@0.0.0:
+ version "0.0.0"
+ resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a"
+
+path-exists@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
+ dependencies:
+ pinkie-promise "^2.0.0"
+
+path-exists@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
+
+path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
+
+path-is-inside@^1.0.1, path-is-inside@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
+
+path-key@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
+
+path-parse@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
+
+path-to-regexp@0.1.7:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
+
+path-to-regexp@^1.7.0:
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d"
+ dependencies:
+ isarray "0.0.1"
+
+path-type@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
+ dependencies:
+ graceful-fs "^4.1.2"
+ pify "^2.0.0"
+ pinkie-promise "^2.0.0"
+
+path-type@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
+ dependencies:
+ pify "^2.0.0"
+
+path-type@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
+ dependencies:
+ pify "^3.0.0"
+
+pause-stream@0.0.11:
+ version "0.0.11"
+ resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445"
+ dependencies:
+ through "~2.3"
+
+pbkdf2@^3.0.3:
+ version "3.0.14"
+ resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz#a35e13c64799b06ce15320f459c230e68e73bade"
+ dependencies:
+ create-hash "^1.1.2"
+ create-hmac "^1.1.4"
+ ripemd160 "^2.0.1"
+ safe-buffer "^5.0.1"
+ sha.js "^2.4.8"
+
+performance-now@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
+
+performance-now@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
+
+pify@^2.0.0, pify@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
+
+pify@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
+
+pinkie-promise@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
+ dependencies:
+ pinkie "^2.0.0"
+
+pinkie@^2.0.0:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
+
+pkg-dir@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
+ dependencies:
+ find-up "^1.0.0"
+
+pkg-dir@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b"
+ dependencies:
+ find-up "^2.1.0"
+
+pluralize@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777"
+
+pn@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb"
+
+postcss-calc@^5.2.0:
+ version "5.3.1"
+ resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e"
+ dependencies:
+ postcss "^5.0.2"
+ postcss-message-helpers "^2.0.0"
+ reduce-css-calc "^1.2.6"
+
+postcss-colormin@^2.1.8:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b"
+ dependencies:
+ colormin "^1.0.5"
+ postcss "^5.0.13"
+ postcss-value-parser "^3.2.3"
+
+postcss-convert-values@^2.3.4:
+ version "2.6.1"
+ resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d"
+ dependencies:
+ postcss "^5.0.11"
+ postcss-value-parser "^3.1.2"
+
+postcss-discard-comments@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d"
+ dependencies:
+ postcss "^5.0.14"
+
+postcss-discard-duplicates@^2.0.1:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932"
+ dependencies:
+ postcss "^5.0.4"
+
+postcss-discard-empty@^2.0.1:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5"
+ dependencies:
+ postcss "^5.0.14"
+
+postcss-discard-overridden@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58"
+ dependencies:
+ postcss "^5.0.16"
+
+postcss-discard-unused@^2.2.1:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433"
+ dependencies:
+ postcss "^5.0.14"
+ uniqs "^2.0.0"
+
+postcss-filter-plugins@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c"
+ dependencies:
+ postcss "^5.0.4"
+ uniqid "^4.0.0"
+
+postcss-load-config@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a"
+ dependencies:
+ cosmiconfig "^2.1.0"
+ object-assign "^4.1.0"
+ postcss-load-options "^1.2.0"
+ postcss-load-plugins "^2.3.0"
+
+postcss-load-options@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c"
+ dependencies:
+ cosmiconfig "^2.1.0"
+ object-assign "^4.1.0"
+
+postcss-load-plugins@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92"
+ dependencies:
+ cosmiconfig "^2.1.1"
+ object-assign "^4.1.0"
+
+postcss-loader@^2.0.10:
+ version "2.0.10"
+ resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.0.10.tgz#090db0540140bd56a7a7f717c41bc29aeef4c674"
+ dependencies:
+ loader-utils "^1.1.0"
+ postcss "^6.0.0"
+ postcss-load-config "^1.2.0"
+ schema-utils "^0.3.0"
+
+postcss-merge-idents@^2.1.5:
+ version "2.1.7"
+ resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270"
+ dependencies:
+ has "^1.0.1"
+ postcss "^5.0.10"
+ postcss-value-parser "^3.1.1"
+
+postcss-merge-longhand@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658"
+ dependencies:
+ postcss "^5.0.4"
+
+postcss-merge-rules@^2.0.3:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721"
+ dependencies:
+ browserslist "^1.5.2"
+ caniuse-api "^1.5.2"
+ postcss "^5.0.4"
+ postcss-selector-parser "^2.2.2"
+ vendors "^1.0.0"
+
+postcss-message-helpers@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e"
+
+postcss-minify-font-values@^1.0.2:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69"
+ dependencies:
+ object-assign "^4.0.1"
+ postcss "^5.0.4"
+ postcss-value-parser "^3.0.2"
+
+postcss-minify-gradients@^1.0.1:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1"
+ dependencies:
+ postcss "^5.0.12"
+ postcss-value-parser "^3.3.0"
+
+postcss-minify-params@^1.0.4:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3"
+ dependencies:
+ alphanum-sort "^1.0.1"
+ postcss "^5.0.2"
+ postcss-value-parser "^3.0.2"
+ uniqs "^2.0.0"
+
+postcss-minify-selectors@^2.0.4:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf"
+ dependencies:
+ alphanum-sort "^1.0.2"
+ has "^1.0.1"
+ postcss "^5.0.14"
+ postcss-selector-parser "^2.0.0"
+
+postcss-modules-extract-imports@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz#b614c9720be6816eaee35fb3a5faa1dba6a05ddb"
+ dependencies:
+ postcss "^6.0.1"
+
+postcss-modules-local-by-default@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069"
+ dependencies:
+ css-selector-tokenizer "^0.7.0"
+ postcss "^6.0.1"
+
+postcss-modules-scope@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90"
+ dependencies:
+ css-selector-tokenizer "^0.7.0"
+ postcss "^6.0.1"
+
+postcss-modules-values@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20"
+ dependencies:
+ icss-replace-symbols "^1.1.0"
+ postcss "^6.0.1"
+
+postcss-normalize-charset@^1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1"
+ dependencies:
+ postcss "^5.0.5"
+
+postcss-normalize-url@^3.0.7:
+ version "3.0.8"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222"
+ dependencies:
+ is-absolute-url "^2.0.0"
+ normalize-url "^1.4.0"
+ postcss "^5.0.14"
+ postcss-value-parser "^3.2.3"
+
+postcss-ordered-values@^2.1.0:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d"
+ dependencies:
+ postcss "^5.0.4"
+ postcss-value-parser "^3.0.1"
+
+postcss-reduce-idents@^2.2.2:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3"
+ dependencies:
+ postcss "^5.0.4"
+ postcss-value-parser "^3.0.2"
+
+postcss-reduce-initial@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea"
+ dependencies:
+ postcss "^5.0.4"
+
+postcss-reduce-transforms@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1"
+ dependencies:
+ has "^1.0.1"
+ postcss "^5.0.8"
+ postcss-value-parser "^3.0.1"
+
+postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90"
+ dependencies:
+ flatten "^1.0.2"
+ indexes-of "^1.0.1"
+ uniq "^1.0.1"
+
+postcss-svgo@^2.1.1:
+ version "2.1.6"
+ resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d"
+ dependencies:
+ is-svg "^2.0.0"
+ postcss "^5.0.14"
+ postcss-value-parser "^3.2.3"
+ svgo "^0.7.0"
+
+postcss-unique-selectors@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d"
+ dependencies:
+ alphanum-sort "^1.0.1"
+ postcss "^5.0.4"
+ uniqs "^2.0.0"
+
+postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15"
+
+postcss-zindex@^2.0.1:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22"
+ dependencies:
+ has "^1.0.1"
+ postcss "^5.0.4"
+ uniqs "^2.0.0"
+
+postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.16:
+ version "5.2.18"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5"
+ dependencies:
+ chalk "^1.1.3"
+ js-base64 "^2.1.9"
+ source-map "^0.5.6"
+ supports-color "^3.2.3"
+
+postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.16:
+ version "6.0.16"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.16.tgz#112e2fe2a6d2109be0957687243170ea5589e146"
+ dependencies:
+ chalk "^2.3.0"
+ source-map "^0.6.1"
+ supports-color "^5.1.0"
+
+prelude-ls@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
+
+prepend-http@^1.0.0:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"
+
+preserve@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
+
+prettier@^1.10.2:
+ version "1.10.2"
+ resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.10.2.tgz#1af8356d1842276a99a5b5529c82dd9e9ad3cc93"
+
+pretty-format@^22.0.6:
+ version "22.0.6"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.0.6.tgz#bbb78e38445f263c2d3b9e281f4b844380990720"
+ dependencies:
+ ansi-regex "^3.0.0"
+ ansi-styles "^3.2.0"
+
+private@^0.1.6, private@^0.1.7:
+ version "0.1.8"
+ resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
+
+process-nextick-args@~1.0.6:
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
+
+process@^0.11.10:
+ version "0.11.10"
+ resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
+
+process@~0.5.1:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf"
+
+progress@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f"
+
+promise@^7.1.1:
+ version "7.3.1"
+ resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
+ dependencies:
+ asap "~2.0.3"
+
+prop-types@15.x, prop-types@^15.5.0, prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.5.9, prop-types@^15.6.0:
+ version "15.6.0"
+ resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.0.tgz#ceaf083022fc46b4a35f69e13ef75aed0d639856"
+ dependencies:
+ fbjs "^0.8.16"
+ loose-envify "^1.3.1"
+ object-assign "^4.1.1"
+
+propagate@0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/propagate/-/propagate-0.4.0.tgz#f3fcca0a6fe06736a7ba572966069617c130b481"
+
+proxy-addr@~2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec"
+ dependencies:
+ forwarded "~0.1.2"
+ ipaddr.js "1.5.2"
+
+prr@~1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
+
+ps-tree@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.1.0.tgz#b421b24140d6203f1ed3c76996b4427b08e8c014"
+ dependencies:
+ event-stream "~3.3.0"
+
+pseudomap@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
+
+public-encrypt@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6"
+ dependencies:
+ bn.js "^4.1.0"
+ browserify-rsa "^4.0.0"
+ create-hash "^1.1.0"
+ parse-asn1 "^5.0.0"
+ randombytes "^2.0.1"
+
+punycode@1.3.2:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
+
+punycode@^1.2.4, punycode@^1.4.1:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
+
+punycode@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d"
+
+q@^1.1.2:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
+
+qs@6.5.1, qs@^6.5.1, qs@~6.5.1:
+ version "6.5.1"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8"
+
+qs@~6.3.0:
+ version "6.3.2"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c"
+
+qs@~6.4.0:
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
+
+query-string@^4.1.0:
+ version "4.3.4"
+ resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb"
+ dependencies:
+ object-assign "^4.1.0"
+ strict-uri-encode "^1.0.0"
+
+querystring-es3@^0.2.0:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
+
+querystring@0.2.0, querystring@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
+
+raf@^3.1.0, raf@^3.4.0:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.0.tgz#a28876881b4bc2ca9117d4138163ddb80f781575"
+ dependencies:
+ performance-now "^2.1.0"
+
+railroad-diagrams@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e"
+
+randexp@^0.4.2:
+ version "0.4.6"
+ resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3"
+ dependencies:
+ discontinuous-range "1.0.0"
+ ret "~0.1.10"
+
+randomatic@^1.1.3:
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c"
+ dependencies:
+ is-number "^3.0.0"
+ kind-of "^4.0.0"
+
+randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80"
+ dependencies:
+ safe-buffer "^5.1.0"
+
+randomfill@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.3.tgz#b96b7df587f01dd91726c418f30553b1418e3d62"
+ dependencies:
+ randombytes "^2.0.5"
+ safe-buffer "^5.1.0"
+
+range-parser@^1.0.3, range-parser@~1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
+
+raven-js@^3.22.0:
+ version "3.22.0"
+ resolved "https://registry.yarnpkg.com/raven-js/-/raven-js-3.22.0.tgz#b216571da70896dabae42ddd0eb12c2cfcf53510"
+
+raw-body@2.3.2:
+ version "2.3.2"
+ resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89"
+ dependencies:
+ bytes "3.0.0"
+ http-errors "1.6.2"
+ iconv-lite "0.4.19"
+ unpipe "1.0.0"
+
+rc-align@2.x:
+ version "2.3.5"
+ resolved "https://registry.yarnpkg.com/rc-align/-/rc-align-2.3.5.tgz#5085cfa4d685ee9d030b9afd2971eb370c5e80a1"
+ dependencies:
+ babel-runtime "^6.26.0"
+ dom-align "1.x"
+ prop-types "^15.5.8"
+ rc-util "^4.0.4"
+
+rc-animate@2.x, rc-animate@^2.0.2, rc-animate@^2.3.0, rc-animate@^2.4.1:
+ version "2.4.4"
+ resolved "https://registry.yarnpkg.com/rc-animate/-/rc-animate-2.4.4.tgz#a05a784c747beef140d99ff52b6117711bef4b1e"
+ dependencies:
+ babel-runtime "6.x"
+ css-animation "^1.3.2"
+ prop-types "15.x"
+
+rc-calendar@~9.4.0:
+ version "9.4.0"
+ resolved "https://registry.yarnpkg.com/rc-calendar/-/rc-calendar-9.4.0.tgz#1fa9dacaabd69120524147916c0357f1bae127d1"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "2.x"
+ create-react-class "^15.5.2"
+ moment "2.x"
+ prop-types "^15.5.8"
+ rc-trigger "^2.2.0"
+ rc-util "^4.1.1"
+
+rc-cascader@~0.12.0:
+ version "0.12.1"
+ resolved "https://registry.yarnpkg.com/rc-cascader/-/rc-cascader-0.12.1.tgz#0148514a8dd747c2335527c172ea0cf44180f940"
+ dependencies:
+ array-tree-filter "^1.0.0"
+ prop-types "^15.5.8"
+ rc-trigger "^2.2.0"
+ rc-util "^4.0.4"
+ shallow-equal "^1.0.0"
+
+rc-checkbox@~2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/rc-checkbox/-/rc-checkbox-2.1.1.tgz#7b2d3632285eaad9cad78612a6643d7d34589e72"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "2.x"
+ prop-types "15.x"
+ rc-util "^4.0.4"
+
+rc-collapse@~1.7.5:
+ version "1.7.7"
+ resolved "https://registry.yarnpkg.com/rc-collapse/-/rc-collapse-1.7.7.tgz#16c9fe691f0191f16c9c2eda39989bfc1a19fa2b"
+ dependencies:
+ classnames "2.x"
+ css-animation "1.x"
+ prop-types "^15.5.6"
+ rc-animate "2.x"
+
+rc-dialog@~7.1.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/rc-dialog/-/rc-dialog-7.1.0.tgz#ffc18c8f799f1cbc343e9f3a1bd9190a1cb62079"
+ dependencies:
+ babel-runtime "6.x"
+ create-react-class "^15.5.2"
+ object-assign "~4.1.0"
+ rc-animate "2.x"
+ rc-util "^4.1.0"
+
+rc-dropdown@~2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/rc-dropdown/-/rc-dropdown-2.1.0.tgz#ae39db67e593ef4ed889dee99ef13ae3994a5c7f"
+ dependencies:
+ babel-runtime "^6.26.0"
+ prop-types "^15.5.8"
+ rc-trigger "^2.2.2"
+
+rc-editor-core@~0.8.3:
+ version "0.8.3"
+ resolved "https://registry.yarnpkg.com/rc-editor-core/-/rc-editor-core-0.8.3.tgz#0be6a37a10152ae6d58bd2ecfefdf2c80ce0689a"
+ dependencies:
+ babel-runtime "^6.26.0"
+ draft-js "^0.10.0"
+ immutable "^3.7.4"
+ lodash "^4.16.5"
+ prop-types "^15.5.8"
+ setimmediate "^1.0.5"
+
+rc-editor-mention@^1.0.2:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/rc-editor-mention/-/rc-editor-mention-1.1.4.tgz#b151d76faa3313300b967507da217f0fea1c9912"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "^2.2.5"
+ dom-scroll-into-view "^1.2.0"
+ draft-js "~0.10.0"
+ prop-types "^15.5.8"
+ rc-animate "^2.3.0"
+ rc-editor-core "~0.8.3"
+
+rc-form@^2.1.0:
+ version "2.1.7"
+ resolved "https://registry.yarnpkg.com/rc-form/-/rc-form-2.1.7.tgz#3e01c5e19838038b65a58014e2802deb088b60b7"
+ dependencies:
+ async-validator "1.x"
+ babel-runtime "6.x"
+ create-react-class "^15.5.3"
+ dom-scroll-into-view "1.x"
+ hoist-non-react-statics "^2.3.1"
+ lodash "^4.17.4"
+ warning "^3.0.0"
+
+rc-hammerjs@~0.6.0:
+ version "0.6.9"
+ resolved "https://registry.yarnpkg.com/rc-hammerjs/-/rc-hammerjs-0.6.9.tgz#9a4ddbda1b2ec8f9b9596091a6a989842a243907"
+ dependencies:
+ babel-runtime "6.x"
+ hammerjs "^2.0.8"
+ prop-types "^15.5.9"
+
+rc-input-number@~4.0.0:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/rc-input-number/-/rc-input-number-4.0.2.tgz#09651d5fc05c7f6a1e2111dbfad7ed5743fa7595"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "^2.2.0"
+ prop-types "^15.5.7"
+ rmc-feedback "^1.0.0"
+
+rc-menu@^6.1.0, rc-menu@~6.2.0:
+ version "6.2.5"
+ resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-6.2.5.tgz#cb27585cfb6a2e9c2cb09a122df1980ec807bfc8"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "2.x"
+ create-react-class "^15.5.2"
+ dom-scroll-into-view "1.x"
+ prop-types "^15.5.6"
+ rc-animate "2.x"
+ rc-trigger "^2.3.0"
+ rc-util "^4.1.0"
+
+rc-notification@~3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/rc-notification/-/rc-notification-3.0.1.tgz#9ddcb831895ad40943a7e1df34951aa705173bce"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "2.x"
+ prop-types "^15.5.8"
+ rc-animate "2.x"
+ rc-util "^4.0.4"
+
+rc-pagination@~1.14.0:
+ version "1.14.0"
+ resolved "https://registry.yarnpkg.com/rc-pagination/-/rc-pagination-1.14.0.tgz#c0f34901941b35d65365baf73a5237084042b97e"
+ dependencies:
+ babel-runtime "6.x"
+ prop-types "^15.5.7"
+
+rc-progress@~2.2.2:
+ version "2.2.5"
+ resolved "https://registry.yarnpkg.com/rc-progress/-/rc-progress-2.2.5.tgz#e61d0544bf9d4208e5ba32fc50962159e7f952a3"
+ dependencies:
+ babel-runtime "6.x"
+ prop-types "^15.5.8"
+
+rc-rate@~2.4.0:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/rc-rate/-/rc-rate-2.4.0.tgz#97ebcc5876e2e498b9f5f65ced256d8ab54e5f06"
+ dependencies:
+ babel-runtime "^6.26.0"
+ classnames "^2.2.5"
+ prop-types "^15.5.8"
+ rc-util "^4.3.0"
+
+rc-select@~7.5.0:
+ version "7.5.1"
+ resolved "https://registry.yarnpkg.com/rc-select/-/rc-select-7.5.1.tgz#738aaa3a3a0256914e76c6be81ba3464e28fa12f"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "2.x"
+ component-classes "1.x"
+ dom-scroll-into-view "1.x"
+ prop-types "^15.5.8"
+ rc-animate "2.x"
+ rc-menu "^6.1.0"
+ rc-trigger "^2.2.0"
+ rc-util "^4.0.4"
+ warning "^3.0.0"
+
+rc-slider@~8.5.0:
+ version "8.5.0"
+ resolved "https://registry.yarnpkg.com/rc-slider/-/rc-slider-8.5.0.tgz#6fae97d8ba59a012af69a00409f21925b8954cf5"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "^2.2.5"
+ prop-types "^15.5.4"
+ rc-tooltip "^3.7.0"
+ rc-util "^4.0.4"
+ shallowequal "^1.0.1"
+ warning "^3.0.0"
+
+rc-steps@~3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/rc-steps/-/rc-steps-3.0.1.tgz#fa886eb93d223173ef9a05396f32186992549535"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "^2.2.3"
+ lodash.debounce "^4.0.8"
+ prop-types "^15.5.7"
+
+rc-switch@~1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/rc-switch/-/rc-switch-1.6.0.tgz#c2d7369bdb87c1fd45e84989a27c1fb2f201d2fd"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "^2.2.1"
+ prop-types "^15.5.6"
+
+rc-table@~6.1.0:
+ version "6.1.3"
+ resolved "https://registry.yarnpkg.com/rc-table/-/rc-table-6.1.3.tgz#738de9b32afcc0a2ec3c1061576ddf437d1f7d48"
+ dependencies:
+ babel-runtime "6.x"
+ component-classes "^1.2.6"
+ lodash.get "^4.4.2"
+ lodash.merge "^4.6.0"
+ mini-store "^1.0.2"
+ prop-types "^15.5.8"
+ rc-util "^4.0.4"
+ shallowequal "^1.0.2"
+ warning "^3.0.0"
+
+rc-tabs@~9.1.2:
+ version "9.1.11"
+ resolved "https://registry.yarnpkg.com/rc-tabs/-/rc-tabs-9.1.11.tgz#cb259d312b4b238f4e5a90dc0efb88000d8e9535"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "2.x"
+ create-react-class "15.x"
+ lodash.debounce "^4.0.8"
+ prop-types "15.x"
+ rc-hammerjs "~0.6.0"
+ rc-util "^4.0.4"
+ warning "^3.0.0"
+
+rc-time-picker@~3.2.1:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/rc-time-picker/-/rc-time-picker-3.2.1.tgz#e105fed32814bb95f37dbc60b49495cd787abfa2"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "2.x"
+ moment "2.x"
+ prop-types "^15.5.8"
+ rc-trigger "^2.2.0"
+
+rc-tooltip@^3.7.0, rc-tooltip@~3.7.0:
+ version "3.7.0"
+ resolved "https://registry.yarnpkg.com/rc-tooltip/-/rc-tooltip-3.7.0.tgz#3afbf109865f7cdcfe43752f3f3f501f7be37aaa"
+ dependencies:
+ babel-runtime "6.x"
+ prop-types "^15.5.8"
+ rc-trigger "^2.2.2"
+
+rc-tree-select@~1.12.0:
+ version "1.12.3"
+ resolved "https://registry.yarnpkg.com/rc-tree-select/-/rc-tree-select-1.12.3.tgz#7bde797bf8b5c54657ba0e1d0831df1fdb3cf505"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "^2.2.1"
+ object-assign "^4.0.1"
+ prop-types "^15.5.8"
+ rc-animate "^2.0.2"
+ rc-tree "~1.7.1"
+ rc-trigger "^2.2.2"
+ rc-util "^4.0.2"
+
+rc-tree@~1.7.0, rc-tree@~1.7.1:
+ version "1.7.10"
+ resolved "https://registry.yarnpkg.com/rc-tree/-/rc-tree-1.7.10.tgz#8d93d73fa3a91ebf6dde4ebaa98e750a9c8fe154"
+ dependencies:
+ babel-runtime "^6.23.0"
+ classnames "2.x"
+ prop-types "^15.5.8"
+ rc-animate "2.x"
+ rc-util "^4.0.4"
+ warning "^3.0.0"
+
+rc-trigger@^2.2.0, rc-trigger@^2.2.2, rc-trigger@^2.3.0:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/rc-trigger/-/rc-trigger-2.3.3.tgz#406c5ddea594aca71d067852f27d91a5f3a653b8"
+ dependencies:
+ babel-runtime "6.x"
+ create-react-class "15.x"
+ prop-types "15.x"
+ rc-align "2.x"
+ rc-animate "2.x"
+ rc-util "^4.3.0"
+
+rc-upload@~2.4.0:
+ version "2.4.4"
+ resolved "https://registry.yarnpkg.com/rc-upload/-/rc-upload-2.4.4.tgz#28e1e6a3e44d1b1f92e57e21927cfa2763ac2a21"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "^2.2.5"
+ prop-types "^15.5.7"
+ warning "2.x"
+
+rc-util@^4.0.2, rc-util@^4.0.4, rc-util@^4.1.0, rc-util@^4.1.1, rc-util@^4.3.0:
+ version "4.3.1"
+ resolved "https://registry.yarnpkg.com/rc-util/-/rc-util-4.3.1.tgz#79f0adb30f449c1b29d7c5cdb2d82c193920c362"
+ dependencies:
+ add-dom-event-listener "1.x"
+ babel-runtime "6.x"
+ prop-types "^15.5.10"
+ shallowequal "^0.2.2"
+
+rc@^1.1.7:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.3.tgz#51575a900f8dd68381c710b4712c2154c3e2035b"
+ dependencies:
+ deep-extend "~0.4.0"
+ ini "~1.3.0"
+ minimist "^1.2.0"
+ strip-json-comments "~2.0.1"
+
+react-addons-test-utils@^15.6.2:
+ version "15.6.2"
+ resolved "https://registry.yarnpkg.com/react-addons-test-utils/-/react-addons-test-utils-15.6.2.tgz#c12b6efdc2247c10da7b8770d185080a7b047156"
+
+react-burger-menu@^2.2.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/react-burger-menu/-/react-burger-menu-2.2.3.tgz#43edbb826f1bf069cadcbb0f11aa8febdad8c7ee"
+ dependencies:
+ browserify-optional "^1.0.0"
+ classnames "^2.1.1"
+ eve "~0.5.1"
+ prop-types "^15.5.8"
+ snapsvg-cjs "0.0.6"
+
+react-deep-force-update@^1.0.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.1.tgz#bcd31478027b64b3339f108921ab520b4313dc2c"
+
+react-dom@^16.2.1:
+ version "16.2.1"
+ resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.2.1.tgz#5cfb32f66267ece7b3850466bf3b219d4911fc1a"
+ dependencies:
+ fbjs "^0.8.16"
+ loose-envify "^1.1.0"
+ object-assign "^4.1.1"
+ prop-types "^15.6.0"
+
+react-ga@^2.4.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/react-ga/-/react-ga-2.4.1.tgz#dfbd5f028ed39a07067f7a8bf57dc0d240000767"
+ optionalDependencies:
+ prop-types "^15.6.0"
+ react "^15.6.2 || ^16.0"
+
+react-lazy-load@^3.0.12:
+ version "3.0.13"
+ resolved "https://registry.yarnpkg.com/react-lazy-load/-/react-lazy-load-3.0.13.tgz#3b0a92d336d43d3f0d73cbe6f35b17050b08b824"
+ dependencies:
+ eventlistener "0.0.1"
+ lodash.debounce "^4.0.0"
+ lodash.throttle "^4.0.0"
+ prop-types "^15.5.8"
+
+react-proxy@^1.1.7:
+ version "1.1.8"
+ resolved "https://registry.yarnpkg.com/react-proxy/-/react-proxy-1.1.8.tgz#9dbfd9d927528c3aa9f444e4558c37830ab8c26a"
+ dependencies:
+ lodash "^4.6.1"
+ react-deep-force-update "^1.0.0"
+
+react-redux@^5.0.6:
+ version "5.0.6"
+ resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.0.6.tgz#23ed3a4f986359d68b5212eaaa681e60d6574946"
+ dependencies:
+ hoist-non-react-statics "^2.2.1"
+ invariant "^2.0.0"
+ lodash "^4.2.0"
+ lodash-es "^4.2.0"
+ loose-envify "^1.1.0"
+ prop-types "^15.5.10"
+
+react-router-dom@^4.2.2:
+ version "4.2.2"
+ resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.2.2.tgz#c8a81df3adc58bba8a76782e946cbd4eae649b8d"
+ dependencies:
+ history "^4.7.2"
+ invariant "^2.2.2"
+ loose-envify "^1.3.1"
+ prop-types "^15.5.4"
+ react-router "^4.2.0"
+ warning "^3.0.0"
+
+react-router-redux@^4.0.6:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/react-router-redux/-/react-router-redux-4.0.8.tgz#227403596b5151e182377dab835b5d45f0f8054e"
+
+react-router@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/react-router/-/react-router-4.2.0.tgz#61f7b3e3770daeb24062dae3eedef1b054155986"
+ dependencies:
+ history "^4.7.2"
+ hoist-non-react-statics "^2.3.0"
+ invariant "^2.2.2"
+ loose-envify "^1.3.1"
+ path-to-regexp "^1.7.0"
+ prop-types "^15.5.4"
+ warning "^3.0.0"
+
+react-slick@~0.16.0:
+ version "0.16.0"
+ resolved "https://registry.yarnpkg.com/react-slick/-/react-slick-0.16.0.tgz#27385fb88503d208be081d37267ddec961209a7b"
+ dependencies:
+ can-use-dom "^0.1.0"
+ classnames "^2.2.5"
+ create-react-class "^15.5.2"
+ enquire.js "^2.1.6"
+ json2mq "^0.2.0"
+ object-assign "^4.1.0"
+ slick-carousel "^1.6.0"
+
+react-tabs@^2.2.1:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/react-tabs/-/react-tabs-2.2.1.tgz#0331d26173c56e7af4fdbfb6225e62683cfdda52"
+ dependencies:
+ classnames "^2.2.0"
+ prop-types "^15.5.0"
+
+react-tap-event-plugin@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/react-tap-event-plugin/-/react-tap-event-plugin-3.0.2.tgz#280371677b881c31376e0027a0b86d2c6de039ee"
+ dependencies:
+ fbjs "^0.8.6"
+
+react-transform-catch-errors@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/react-transform-catch-errors/-/react-transform-catch-errors-1.0.2.tgz#1b4d4a76e97271896fc16fe3086c793ec88a9eeb"
+
+react-transform-hmr@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/react-transform-hmr/-/react-transform-hmr-1.0.4.tgz#e1a40bd0aaefc72e8dfd7a7cda09af85066397bb"
+ dependencies:
+ global "^4.3.0"
+ react-proxy "^1.1.7"
+
+react-tween-state@^0.1.5:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/react-tween-state/-/react-tween-state-0.1.5.tgz#e98b066551efb93cb92dd1be14995c2e3deae339"
+ dependencies:
+ raf "^3.1.0"
+ tween-functions "^1.0.1"
+
+"react@^15.6.2 || ^16.0", react@^16.0.0:
+ version "16.2.0"
+ resolved "https://registry.yarnpkg.com/react/-/react-16.2.0.tgz#a31bd2dab89bff65d42134fa187f24d054c273ba"
+ dependencies:
+ fbjs "^0.8.16"
+ loose-envify "^1.1.0"
+ object-assign "^4.1.1"
+ prop-types "^15.6.0"
+
+read-pkg-up@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
+ dependencies:
+ find-up "^1.0.0"
+ read-pkg "^1.0.0"
+
+read-pkg-up@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
+ dependencies:
+ find-up "^2.0.0"
+ read-pkg "^2.0.0"
+
+read-pkg@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
+ dependencies:
+ load-json-file "^1.0.0"
+ normalize-package-data "^2.3.2"
+ path-type "^1.0.0"
+
+read-pkg@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8"
+ dependencies:
+ load-json-file "^2.0.0"
+ normalize-package-data "^2.3.2"
+ path-type "^2.0.0"
+
+read-pkg@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
+ dependencies:
+ load-json-file "^4.0.0"
+ normalize-package-data "^2.3.2"
+ path-type "^3.0.0"
+
+readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.2.2, readable-stream@^2.2.6, readable-stream@^2.3.3:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c"
+ dependencies:
+ core-util-is "~1.0.0"
+ inherits "~2.0.3"
+ isarray "~1.0.0"
+ process-nextick-args "~1.0.6"
+ safe-buffer "~5.1.1"
+ string_decoder "~1.0.3"
+ util-deprecate "~1.0.1"
+
+readdirp@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
+ dependencies:
+ graceful-fs "^4.1.2"
+ minimatch "^3.0.2"
+ readable-stream "^2.0.2"
+ set-immediate-shim "^1.0.1"
+
+redbox-react@^1.2.2:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.5.0.tgz#04dab11557d26651bf3562a67c22ace56c5d3967"
+ dependencies:
+ error-stack-parser "^1.3.6"
+ object-assign "^4.0.1"
+ prop-types "^15.5.4"
+ sourcemapped-stacktrace "^1.1.6"
+
+redent@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
+ dependencies:
+ indent-string "^2.1.0"
+ strip-indent "^1.0.1"
+
+reduce-css-calc@^1.2.6:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716"
+ dependencies:
+ balanced-match "^0.4.2"
+ math-expression-evaluator "^1.2.14"
+ reduce-function-call "^1.0.1"
+
+reduce-function-call@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99"
+ dependencies:
+ balanced-match "^0.4.2"
+
+redux-immutable-state-invariant@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/redux-immutable-state-invariant/-/redux-immutable-state-invariant-2.1.0.tgz#308fd3cc7415a0e7f11f51ec997b6379c7055ce1"
+ dependencies:
+ invariant "^2.1.0"
+ json-stringify-safe "^5.0.1"
+
+redux-mock-store@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/redux-mock-store/-/redux-mock-store-1.4.0.tgz#cdc87650f5759f293588fecc9cac2b057d95190d"
+ dependencies:
+ lodash.isplainobject "^4.0.6"
+
+redux-thunk@^2.1.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.2.0.tgz#e615a16e16b47a19a515766133d1e3e99b7852e5"
+
+redux@^3.7.2:
+ version "3.7.2"
+ resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b"
+ dependencies:
+ lodash "^4.2.1"
+ lodash-es "^4.2.1"
+ loose-envify "^1.1.0"
+ symbol-observable "^1.0.3"
+
+regenerate@^1.2.1:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f"
+
+regenerator-runtime@^0.10.5:
+ version "0.10.5"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658"
+
+regenerator-runtime@^0.11.0:
+ version "0.11.1"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
+
+regenerator-transform@^0.10.0:
+ version "0.10.1"
+ resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd"
+ dependencies:
+ babel-runtime "^6.18.0"
+ babel-types "^6.19.0"
+ private "^0.1.6"
+
+regex-cache@^0.4.2:
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd"
+ dependencies:
+ is-equal-shallow "^0.1.3"
+
+regexpu-core@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b"
+ dependencies:
+ regenerate "^1.2.1"
+ regjsgen "^0.2.0"
+ regjsparser "^0.1.4"
+
+regexpu-core@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240"
+ dependencies:
+ regenerate "^1.2.1"
+ regjsgen "^0.2.0"
+ regjsparser "^0.1.4"
+
+regjsgen@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
+
+regjsparser@^0.1.4:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"
+ dependencies:
+ jsesc "~0.5.0"
+
+remove-trailing-separator@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
+
+repeat-element@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a"
+
+repeat-string@^1.5.2:
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
+
+repeating@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
+ dependencies:
+ is-finite "^1.0.0"
+
+request-promise-core@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6"
+ dependencies:
+ lodash "^4.13.1"
+
+request-promise-native@^1.0.3:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5"
+ dependencies:
+ request-promise-core "1.1.1"
+ stealthy-require "^1.1.0"
+ tough-cookie ">=2.3.3"
+
+request@2, request@^2.83.0:
+ version "2.83.0"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356"
+ dependencies:
+ aws-sign2 "~0.7.0"
+ aws4 "^1.6.0"
+ caseless "~0.12.0"
+ combined-stream "~1.0.5"
+ extend "~3.0.1"
+ forever-agent "~0.6.1"
+ form-data "~2.3.1"
+ har-validator "~5.0.3"
+ hawk "~6.0.2"
+ http-signature "~1.2.0"
+ is-typedarray "~1.0.0"
+ isstream "~0.1.2"
+ json-stringify-safe "~5.0.1"
+ mime-types "~2.1.17"
+ oauth-sign "~0.8.2"
+ performance-now "^2.1.0"
+ qs "~6.5.1"
+ safe-buffer "^5.1.1"
+ stringstream "~0.0.5"
+ tough-cookie "~2.3.3"
+ tunnel-agent "^0.6.0"
+ uuid "^3.1.0"
+
+request@2.81.0:
+ version "2.81.0"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
+ dependencies:
+ aws-sign2 "~0.6.0"
+ aws4 "^1.2.1"
+ caseless "~0.12.0"
+ combined-stream "~1.0.5"
+ extend "~3.0.0"
+ forever-agent "~0.6.1"
+ form-data "~2.1.1"
+ har-validator "~4.2.1"
+ hawk "~3.1.3"
+ http-signature "~1.1.0"
+ is-typedarray "~1.0.0"
+ isstream "~0.1.2"
+ json-stringify-safe "~5.0.1"
+ mime-types "~2.1.7"
+ oauth-sign "~0.8.1"
+ performance-now "^0.2.0"
+ qs "~6.4.0"
+ safe-buffer "^5.0.1"
+ stringstream "~0.0.4"
+ tough-cookie "~2.3.0"
+ tunnel-agent "^0.6.0"
+ uuid "^3.0.0"
+
+request@~2.79.0:
+ version "2.79.0"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
+ dependencies:
+ aws-sign2 "~0.6.0"
+ aws4 "^1.2.1"
+ caseless "~0.11.0"
+ combined-stream "~1.0.5"
+ extend "~3.0.0"
+ forever-agent "~0.6.1"
+ form-data "~2.1.1"
+ har-validator "~2.0.6"
+ hawk "~3.1.3"
+ http-signature "~1.1.0"
+ is-typedarray "~1.0.0"
+ isstream "~0.1.2"
+ json-stringify-safe "~5.0.1"
+ mime-types "~2.1.7"
+ oauth-sign "~0.8.1"
+ qs "~6.3.0"
+ stringstream "~0.0.4"
+ tough-cookie "~2.3.0"
+ tunnel-agent "~0.4.1"
+ uuid "^3.0.0"
+
+require-directory@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
+
+require-from-string@^1.1.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418"
+
+require-main-filename@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
+
+require-uncached@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
+ dependencies:
+ caller-path "^0.1.0"
+ resolve-from "^1.0.0"
+
+resolve-from@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
+
+resolve-pathname@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879"
+
+resolve@1.1.7:
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
+
+resolve@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36"
+ dependencies:
+ path-parse "^1.0.5"
+
+restore-cursor@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
+ dependencies:
+ onetime "^2.0.0"
+ signal-exit "^3.0.2"
+
+ret@~0.1.10:
+ version "0.1.15"
+ resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
+
+right-align@^0.1.1:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
+ dependencies:
+ align-text "^0.1.1"
+
+rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1, rimraf@^2.6.2:
+ version "2.6.2"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
+ dependencies:
+ glob "^7.0.5"
+
+ripemd160@^2.0.0, ripemd160@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7"
+ dependencies:
+ hash-base "^2.0.0"
+ inherits "^2.0.1"
+
+rmc-feedback@^1.0.0:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/rmc-feedback/-/rmc-feedback-1.0.4.tgz#fba066059ae2057ac0e0b53ea7ce982c8f4f7f19"
+ dependencies:
+ babel-runtime "6.x"
+ classnames "^2.2.5"
+
+rst-selector-parser@^2.2.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz#81b230ea2fcc6066c89e3472de794285d9b03d91"
+ dependencies:
+ lodash.flattendeep "^4.4.0"
+ nearley "^2.7.10"
+
+run-async@^2.2.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
+ dependencies:
+ is-promise "^2.1.0"
+
+rx-lite-aggregates@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be"
+ dependencies:
+ rx-lite "*"
+
+rx-lite@*, rx-lite@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
+
+safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
+
+sass-graph@^2.2.4:
+ version "2.2.4"
+ resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49"
+ dependencies:
+ glob "^7.0.0"
+ lodash "^4.0.0"
+ scss-tokenizer "^0.2.3"
+ yargs "^7.0.0"
+
+sass-loader@^6.0.6:
+ version "6.0.6"
+ resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-6.0.6.tgz#e9d5e6c1f155faa32a4b26d7a9b7107c225e40f9"
+ dependencies:
+ async "^2.1.5"
+ clone-deep "^0.3.0"
+ loader-utils "^1.0.1"
+ lodash.tail "^4.1.1"
+ pify "^3.0.0"
+
+sax@^1.2.1, sax@~1.2.1:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
+
+schema-utils@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf"
+ dependencies:
+ ajv "^5.0.0"
+
+scss-tokenizer@^0.2.3:
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1"
+ dependencies:
+ js-base64 "^2.1.8"
+ source-map "^0.4.2"
+
+"semver@2 || 3 || 4 || 5", semver@^5.3.0:
+ version "5.4.1"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
+
+semver@~5.3.0:
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
+
+send@0.16.1:
+ version "0.16.1"
+ resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3"
+ dependencies:
+ debug "2.6.9"
+ depd "~1.1.1"
+ destroy "~1.0.4"
+ encodeurl "~1.0.1"
+ escape-html "~1.0.3"
+ etag "~1.8.1"
+ fresh "0.5.2"
+ http-errors "~1.6.2"
+ mime "1.4.1"
+ ms "2.0.0"
+ on-finished "~2.3.0"
+ range-parser "~1.2.0"
+ statuses "~1.3.1"
+
+serve-static@1.13.1:
+ version "1.13.1"
+ resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719"
+ dependencies:
+ encodeurl "~1.0.1"
+ escape-html "~1.0.3"
+ parseurl "~1.3.2"
+ send "0.16.1"
+
+set-blocking@^2.0.0, set-blocking@~2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
+
+set-immediate-shim@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
+
+setimmediate@^1.0.4, setimmediate@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
+
+setprototypeof@1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04"
+
+setprototypeof@1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656"
+
+sha.js@^2.4.0, sha.js@^2.4.8:
+ version "2.4.9"
+ resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d"
+ dependencies:
+ inherits "^2.0.1"
+ safe-buffer "^5.0.1"
+
+shallow-clone@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060"
+ dependencies:
+ is-extendable "^0.1.1"
+ kind-of "^2.0.1"
+ lazy-cache "^0.2.3"
+ mixin-object "^2.0.1"
+
+shallow-equal@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.0.0.tgz#508d1838b3de590ab8757b011b25e430900945f7"
+
+shallowequal@^0.2.2:
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-0.2.2.tgz#1e32fd5bcab6ad688a4812cb0cc04efc75c7014e"
+ dependencies:
+ lodash.keys "^3.1.2"
+
+shallowequal@^1.0.1, shallowequal@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.0.2.tgz#1561dbdefb8c01408100319085764da3fcf83f8f"
+
+shebang-command@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
+ dependencies:
+ shebang-regex "^1.0.0"
+
+shebang-regex@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
+
+shell-quote@^1.6.1:
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767"
+ dependencies:
+ array-filter "~0.0.0"
+ array-map "~0.0.0"
+ array-reduce "~0.0.0"
+ jsonify "~0.0.0"
+
+signal-exit@^3.0.0, signal-exit@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
+
+slash@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
+
+slice-ansi@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
+ dependencies:
+ is-fullwidth-code-point "^2.0.0"
+
+slick-carousel@^1.6.0:
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/slick-carousel/-/slick-carousel-1.8.1.tgz#a4bfb29014887bb66ce528b90bd0cda262cc8f8d"
+
+snapsvg-cjs@0.0.6:
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/snapsvg-cjs/-/snapsvg-cjs-0.0.6.tgz#3b2f56af2573d3d364c3ed5bf8885745f4d2dde1"
+ dependencies:
+ snapsvg "0.5.1"
+
+snapsvg@0.5.1:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/snapsvg/-/snapsvg-0.5.1.tgz#0caf52c79189a290746fc446cc5e863f6bdddfe3"
+ dependencies:
+ eve "~0.5.1"
+
+sntp@1.x.x:
+ version "1.0.9"
+ resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198"
+ dependencies:
+ hoek "2.x.x"
+
+sntp@2.x.x:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8"
+ dependencies:
+ hoek "4.x.x"
+
+socket.io-adapter@~1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz#2a805e8a14d6372124dd9159ad4502f8cb07f06b"
+
+socket.io-client@2.0.4, socket.io-client@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.0.4.tgz#0918a552406dc5e540b380dcd97afc4a64332f8e"
+ dependencies:
+ backo2 "1.0.2"
+ base64-arraybuffer "0.1.5"
+ component-bind "1.0.0"
+ component-emitter "1.2.1"
+ debug "~2.6.4"
+ engine.io-client "~3.1.0"
+ has-cors "1.1.0"
+ indexof "0.0.1"
+ object-component "0.0.3"
+ parseqs "0.0.5"
+ parseuri "0.0.5"
+ socket.io-parser "~3.1.1"
+ to-array "0.1.4"
+
+socket.io-parser@~3.1.1:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.1.2.tgz#dbc2282151fc4faebbe40aeedc0772eba619f7f2"
+ dependencies:
+ component-emitter "1.2.1"
+ debug "~2.6.4"
+ has-binary2 "~1.0.2"
+ isarray "2.0.1"
+
+socket.io@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.0.4.tgz#c1a4590ceff87ecf13c72652f046f716b29e6014"
+ dependencies:
+ debug "~2.6.6"
+ engine.io "~3.1.0"
+ socket.io-adapter "~1.1.0"
+ socket.io-client "2.0.4"
+ socket.io-parser "~3.1.1"
+
+sort-keys@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad"
+ dependencies:
+ is-plain-obj "^1.0.0"
+
+source-list-map@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085"
+
+source-map-support@^0.4.15:
+ version "0.4.18"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
+ dependencies:
+ source-map "^0.5.6"
+
+source-map-support@^0.5.0:
+ version "0.5.0"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.0.tgz#2018a7ad2bdf8faf2691e5fddab26bed5a2bacab"
+ dependencies:
+ source-map "^0.6.0"
+
+source-map@0.5.6:
+ version "0.5.6"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
+
+source-map@^0.4.2:
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
+ dependencies:
+ amdefine ">=0.0.4"
+
+source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.6:
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
+
+source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+
+source-map@~0.1.30:
+ version "0.1.43"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346"
+ dependencies:
+ amdefine ">=0.0.4"
+
+sourcemapped-stacktrace@^1.1.6:
+ version "1.1.8"
+ resolved "https://registry.yarnpkg.com/sourcemapped-stacktrace/-/sourcemapped-stacktrace-1.1.8.tgz#6b7a3f1a6fb15f6d40e701e23ce404553480d688"
+ dependencies:
+ source-map "0.5.6"
+
+spdx-correct@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40"
+ dependencies:
+ spdx-license-ids "^1.0.2"
+
+spdx-expression-parse@~1.0.0:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c"
+
+spdx-license-ids@^1.0.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
+
+split@0.3:
+ version "0.3.3"
+ resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f"
+ dependencies:
+ through "2"
+
+sprintf-js@~1.0.2:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
+
+sshpk@^1.7.0:
+ version "1.13.1"
+ resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3"
+ dependencies:
+ asn1 "~0.2.3"
+ assert-plus "^1.0.0"
+ dashdash "^1.12.0"
+ getpass "^0.1.1"
+ optionalDependencies:
+ bcrypt-pbkdf "^1.0.0"
+ ecc-jsbn "~0.1.1"
+ jsbn "~0.1.0"
+ tweetnacl "~0.14.0"
+
+stack-utils@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620"
+
+stackframe@^0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-0.3.1.tgz#33aa84f1177a5548c8935533cbfeb3420975f5a4"
+
+"statuses@>= 1.3.1 < 2":
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087"
+
+statuses@~1.3.1:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e"
+
+stdout-stream@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b"
+ dependencies:
+ readable-stream "^2.0.1"
+
+stealthy-require@^1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
+
+stream-browserify@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db"
+ dependencies:
+ inherits "~2.0.1"
+ readable-stream "^2.0.2"
+
+stream-combiner@~0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14"
+ dependencies:
+ duplexer "~0.1.1"
+
+stream-http@^2.7.2:
+ version "2.7.2"
+ resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.2.tgz#40a050ec8dc3b53b33d9909415c02c0bf1abfbad"
+ dependencies:
+ builtin-status-codes "^3.0.0"
+ inherits "^2.0.1"
+ readable-stream "^2.2.6"
+ to-arraybuffer "^1.0.0"
+ xtend "^4.0.0"
+
+strict-uri-encode@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
+
+string-convert@^0.2.0:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/string-convert/-/string-convert-0.2.1.tgz#6982cc3049fbb4cd85f8b24568b9d9bf39eeff97"
+
+string-width@^1.0.1, string-width@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
+ dependencies:
+ code-point-at "^1.0.0"
+ is-fullwidth-code-point "^1.0.0"
+ strip-ansi "^3.0.0"
+
+string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
+ dependencies:
+ is-fullwidth-code-point "^2.0.0"
+ strip-ansi "^4.0.0"
+
+string.prototype.padend@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.4.3"
+ function-bind "^1.0.2"
+
+string_decoder@^1.0.0, string_decoder@~1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab"
+ dependencies:
+ safe-buffer "~5.1.0"
+
+stringstream@~0.0.4, stringstream@~0.0.5:
+ version "0.0.5"
+ resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878"
+
+strip-ansi@^3.0.0, strip-ansi@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
+ dependencies:
+ ansi-regex "^2.0.0"
+
+strip-ansi@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
+ dependencies:
+ ansi-regex "^3.0.0"
+
+strip-bom@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
+ dependencies:
+ is-utf8 "^0.2.0"
+
+strip-bom@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
+
+strip-eof@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
+
+strip-indent@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
+ dependencies:
+ get-stdin "^4.0.1"
+
+strip-json-comments@~2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
+
+style-loader@^0.19.1:
+ version "0.19.1"
+ resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.19.1.tgz#591ffc80bcefe268b77c5d9ebc0505d772619f85"
+ dependencies:
+ loader-utils "^1.0.2"
+ schema-utils "^0.3.0"
+
+superagent@^3.8.2:
+ version "3.8.2"
+ resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.8.2.tgz#e4a11b9d047f7d3efeb3bbe536d9ec0021d16403"
+ dependencies:
+ component-emitter "^1.2.0"
+ cookiejar "^2.1.0"
+ debug "^3.1.0"
+ extend "^3.0.0"
+ form-data "^2.3.1"
+ formidable "^1.1.1"
+ methods "^1.1.1"
+ mime "^1.4.1"
+ qs "^6.5.1"
+ readable-stream "^2.0.5"
+
+supports-color@4.4.0:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e"
+ dependencies:
+ has-flag "^2.0.0"
+
+supports-color@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
+
+supports-color@^3.2.3:
+ version "3.2.3"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
+ dependencies:
+ has-flag "^1.0.0"
+
+supports-color@^4.0.0, supports-color@^4.2.1:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b"
+ dependencies:
+ has-flag "^2.0.0"
+
+supports-color@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.1.0.tgz#058a021d1b619f7ddf3980d712ea3590ce7de3d5"
+ dependencies:
+ has-flag "^2.0.0"
+
+svgo@^0.7.0:
+ version "0.7.2"
+ resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5"
+ dependencies:
+ coa "~1.0.1"
+ colors "~1.1.2"
+ csso "~2.3.1"
+ js-yaml "~3.7.0"
+ mkdirp "~0.5.1"
+ sax "~1.2.1"
+ whet.extend "~0.9.9"
+
+symbol-observable@^1.0.3:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.1.0.tgz#5c68fd8d54115d9dfb72a84720549222e8db9b32"
+
+symbol-tree@^3.2.1:
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6"
+
+table@^4.0.1:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36"
+ dependencies:
+ ajv "^5.2.3"
+ ajv-keywords "^2.1.0"
+ chalk "^2.1.0"
+ lodash "^4.17.4"
+ slice-ansi "1.0.0"
+ string-width "^2.1.1"
+
+tapable@^0.2.7:
+ version "0.2.8"
+ resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22"
+
+tar-pack@^3.4.0:
+ version "3.4.1"
+ resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f"
+ dependencies:
+ debug "^2.2.0"
+ fstream "^1.0.10"
+ fstream-ignore "^1.0.5"
+ once "^1.3.3"
+ readable-stream "^2.1.4"
+ rimraf "^2.5.1"
+ tar "^2.2.1"
+ uid-number "^0.0.6"
+
+tar@^2.0.0, tar@^2.2.1:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
+ dependencies:
+ block-stream "*"
+ fstream "^1.0.2"
+ inherits "2"
+
+text-table@^0.2.0, text-table@~0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
+
+through@2, through@^2.3.6, through@~2.3, through@~2.3.1, through@~2.3.4:
+ version "2.3.8"
+ resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
+
+timers-browserify@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6"
+ dependencies:
+ setimmediate "^1.0.4"
+
+tmp@^0.0.33:
+ version "0.0.33"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
+ dependencies:
+ os-tmpdir "~1.0.2"
+
+to-array@0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890"
+
+to-arraybuffer@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
+
+to-fast-properties@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
+
+to-fast-properties@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
+
+to-string-loader@^1.1.5:
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/to-string-loader/-/to-string-loader-1.1.5.tgz#7b7aa17891b7bb4947a7a11bfb03b5fde9c6e695"
+ dependencies:
+ loader-utils "^0.2.16"
+
+tough-cookie@>=2.3.3, tough-cookie@^2.3.3, tough-cookie@~2.3.0, tough-cookie@~2.3.3:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561"
+ dependencies:
+ punycode "^1.4.1"
+
+tr46@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09"
+ dependencies:
+ punycode "^2.1.0"
+
+trim-newlines@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
+
+trim-right@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
+
+"true-case-path@^1.0.2":
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62"
+ dependencies:
+ glob "^6.0.4"
+
+tty-browserify@0.0.0:
+ version "0.0.0"
+ resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
+
+tunnel-agent@^0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
+ dependencies:
+ safe-buffer "^5.0.1"
+
+tunnel-agent@~0.4.1:
+ version "0.4.3"
+ resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
+
+tween-functions@^1.0.1:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/tween-functions/-/tween-functions-1.2.0.tgz#1ae3a50e7c60bb3def774eac707acbca73bbc3ff"
+
+tweetnacl@^0.14.3, tweetnacl@~0.14.0:
+ version "0.14.5"
+ resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
+
+type-check@~0.3.2:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
+ dependencies:
+ prelude-ls "~1.1.2"
+
+type-detect@0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822"
+
+type-detect@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2"
+
+type-is@~1.6.15:
+ version "1.6.15"
+ resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410"
+ dependencies:
+ media-typer "0.3.0"
+ mime-types "~2.1.15"
+
+typedarray@^0.0.6:
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
+
+ua-parser-js@^0.7.9:
+ version "0.7.17"
+ resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac"
+
+uglify-js@^2.8.29:
+ version "2.8.29"
+ resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
+ dependencies:
+ source-map "~0.5.1"
+ yargs "~3.10.0"
+ optionalDependencies:
+ uglify-to-browserify "~1.0.0"
+
+uglify-to-browserify@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
+
+uglifyjs-webpack-plugin@^0.4.6:
+ version "0.4.6"
+ resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309"
+ dependencies:
+ source-map "^0.5.6"
+ uglify-js "^2.8.29"
+ webpack-sources "^1.0.1"
+
+uid-number@^0.0.6:
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
+
+ultron@~1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"
+
+underscore@~1.4.4:
+ version "1.4.4"
+ resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604"
+
+unicons@0.0.3:
+ version "0.0.3"
+ resolved "https://registry.yarnpkg.com/unicons/-/unicons-0.0.3.tgz#6e6a7a1a6eaebb01ca3d8b12ad9687279eaba524"
+
+uniq@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
+
+uniqid@^4.0.0:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1"
+ dependencies:
+ macaddress "^0.2.8"
+
+uniqs@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02"
+
+unpipe@1.0.0, unpipe@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
+
+url-join@^2.0.2:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/url-join/-/url-join-2.0.5.tgz#5af22f18c052a000a48d7b82c5e9c2e2feeda728"
+
+url-loader@^0.6.2:
+ version "0.6.2"
+ resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.6.2.tgz#a007a7109620e9d988d14bce677a1decb9a993f7"
+ dependencies:
+ loader-utils "^1.0.2"
+ mime "^1.4.1"
+ schema-utils "^0.3.0"
+
+url@^0.11.0:
+ version "0.11.0"
+ resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
+ dependencies:
+ punycode "1.3.2"
+ querystring "0.2.0"
+
+user-home@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
+
+util-deprecate@~1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+
+util@0.10.3, util@^0.10.3:
+ version "0.10.3"
+ resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
+ dependencies:
+ inherits "2.0.1"
+
+utils-merge@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
+
+uuid@^3.0.0, uuid@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
+
+uws@~0.14.4:
+ version "0.14.5"
+ resolved "https://registry.yarnpkg.com/uws/-/uws-0.14.5.tgz#67aaf33c46b2a587a5f6666d00f7691328f149dc"
+
+v8flags@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4"
+ dependencies:
+ user-home "^1.1.1"
+
+validate-npm-package-license@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc"
+ dependencies:
+ spdx-correct "~1.0.0"
+ spdx-expression-parse "~1.0.0"
+
+value-equal@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-0.4.0.tgz#c5bdd2f54ee093c04839d71ce2e4758a6890abc7"
+
+vary@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
+
+vendors@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22"
+
+verror@1.10.0:
+ version "1.10.0"
+ resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
+ dependencies:
+ assert-plus "^1.0.0"
+ core-util-is "1.0.2"
+ extsprintf "^1.2.0"
+
+vm-browserify@0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73"
+ dependencies:
+ indexof "0.0.1"
+
+warning@2.x:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/warning/-/warning-2.1.0.tgz#21220d9c63afc77a8c92111e011af705ce0c6901"
+ dependencies:
+ loose-envify "^1.0.0"
+
+warning@^3.0.0, warning@~3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c"
+ dependencies:
+ loose-envify "^1.0.0"
+
+watchpack@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.4.0.tgz#4a1472bcbb952bd0a9bb4036801f954dfb39faac"
+ dependencies:
+ async "^2.1.2"
+ chokidar "^1.7.0"
+ graceful-fs "^4.1.2"
+
+webidl-conversions@^4.0.1, webidl-conversions@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
+
+webpack-dev-middleware@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-2.0.4.tgz#7d8943a609121021bb72772a41636e229346cb41"
+ dependencies:
+ loud-rejection "^1.6.0"
+ memory-fs "~0.4.1"
+ mime "^2.1.0"
+ path-is-absolute "^1.0.0"
+ range-parser "^1.0.3"
+ url-join "^2.0.2"
+ webpack-log "^1.0.1"
+
+webpack-hot-middleware@^2.21.0:
+ version "2.21.0"
+ resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.21.0.tgz#7b3c113a7a4b301c91e0749573c7aab28b414b52"
+ dependencies:
+ ansi-html "0.0.7"
+ html-entities "^1.2.0"
+ querystring "^0.2.0"
+ strip-ansi "^3.0.0"
+
+webpack-log@^1.0.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-1.1.1.tgz#a0c7beb385245da7b2172afe46c02cf3a471ef31"
+ dependencies:
+ chalk "^2.1.0"
+ log-symbols "^2.1.0"
+ loglevelnext "^1.0.1"
+ uuid "^3.1.0"
+
+webpack-sources@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.1.0.tgz#a101ebae59d6507354d71d8013950a3a8b7a5a54"
+ dependencies:
+ source-list-map "^2.0.0"
+ source-map "~0.6.1"
+
+webpack@^3.10.0:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.10.0.tgz#5291b875078cf2abf42bdd23afe3f8f96c17d725"
+ dependencies:
+ acorn "^5.0.0"
+ acorn-dynamic-import "^2.0.0"
+ ajv "^5.1.5"
+ ajv-keywords "^2.0.0"
+ async "^2.1.2"
+ enhanced-resolve "^3.4.0"
+ escope "^3.6.0"
+ interpret "^1.0.0"
+ json-loader "^0.5.4"
+ json5 "^0.5.1"
+ loader-runner "^2.3.0"
+ loader-utils "^1.1.0"
+ memory-fs "~0.4.1"
+ mkdirp "~0.5.0"
+ node-libs-browser "^2.0.0"
+ source-map "^0.5.3"
+ supports-color "^4.2.1"
+ tapable "^0.2.7"
+ uglifyjs-webpack-plugin "^0.4.6"
+ watchpack "^1.4.0"
+ webpack-sources "^1.0.1"
+ yargs "^8.0.2"
+
+whatwg-encoding@^1.0.1:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3"
+ dependencies:
+ iconv-lite "0.4.19"
+
+whatwg-fetch@>=0.10.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84"
+
+whatwg-url@^6.3.0:
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.4.0.tgz#08fdf2b9e872783a7a1f6216260a1d66cc722e08"
+ dependencies:
+ lodash.sortby "^4.7.0"
+ tr46 "^1.0.0"
+ webidl-conversions "^4.0.1"
+
+whet.extend@~0.9.9:
+ version "0.9.9"
+ resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"
+
+which-module@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
+
+which-module@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
+
+which@1, which@^1.2.9:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a"
+ dependencies:
+ isexe "^2.0.0"
+
+wide-align@^1.1.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710"
+ dependencies:
+ string-width "^1.0.2"
+
+window-size@0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
+
+wordwrap@0.0.2:
+ version "0.0.2"
+ resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
+
+wordwrap@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
+
+wrap-ansi@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
+ dependencies:
+ string-width "^1.0.1"
+ strip-ansi "^3.0.1"
+
+wrappy@1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+
+write@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
+ dependencies:
+ mkdirp "^0.5.1"
+
+ws@~3.3.1:
+ version "3.3.3"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2"
+ dependencies:
+ async-limiter "~1.0.0"
+ safe-buffer "~5.1.0"
+ ultron "~1.1.0"
+
+xml-name-validator@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635"
+
+xmlhttprequest-ssl@~1.5.4:
+ version "1.5.5"
+ resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e"
+
+xtend@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
+
+y18n@^3.2.1:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
+
+yallist@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
+
+yargs-parser@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a"
+ dependencies:
+ camelcase "^3.0.0"
+
+yargs-parser@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9"
+ dependencies:
+ camelcase "^4.1.0"
+
+yargs@^7.0.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8"
+ dependencies:
+ camelcase "^3.0.0"
+ cliui "^3.2.0"
+ decamelize "^1.1.1"
+ get-caller-file "^1.0.1"
+ os-locale "^1.4.0"
+ read-pkg-up "^1.0.1"
+ require-directory "^2.1.1"
+ require-main-filename "^1.0.1"
+ set-blocking "^2.0.0"
+ string-width "^1.0.2"
+ which-module "^1.0.0"
+ y18n "^3.2.1"
+ yargs-parser "^5.0.0"
+
+yargs@^8.0.2:
+ version "8.0.2"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360"
+ dependencies:
+ camelcase "^4.1.0"
+ cliui "^3.2.0"
+ decamelize "^1.1.1"
+ get-caller-file "^1.0.1"
+ os-locale "^2.0.0"
+ read-pkg-up "^2.0.0"
+ require-directory "^2.1.1"
+ require-main-filename "^1.0.1"
+ set-blocking "^2.0.0"
+ string-width "^2.0.0"
+ which-module "^2.0.0"
+ y18n "^3.2.1"
+ yargs-parser "^7.0.0"
+
+yargs@~3.10.0:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
+ dependencies:
+ camelcase "^1.0.2"
+ cliui "^2.1.0"
+ decamelize "^1.0.0"
+ window-size "0.1.0"
+
+yeast@0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419"