From 4b15bd260ab32e019f3a2c574307e9734280da0f Mon Sep 17 00:00:00 2001 From: Kyle Mathews Date: Tue, 11 Apr 2017 15:21:12 -0700 Subject: [PATCH] Use Redux for internal state plus add prototype for data hot reloading fixes #777 (#788) * Use DataTree instead of Abstract Syntax Tree The idea for how to do things was taken from compilers but since we're not actually parsing syntax into a tree, using AST terminology is confusing. DataTree seems like a more sensible name. * Add a watch command for all packages and update contributing instructions * Add trailing slash when creating script tags for prefixed sites * Add redux, convert all globals except pages to use it * Add more tests + convert node api signature to (args, pluginOptions) to make same as browser/ssr api signature * Use Redux for managing data nodes + initial rough implemenation of hot reloading * Move raw action dispatching to action creator * Add nodes tests * Update windows docs * Update CONTRIBUTING.md * Somewhat reliable draining * Upgrade gatsbygram for PR * Up sites to latest canary --- CONTRIBUTING.md | 19 +- docs/docs/gatsby-on-windows.md | 15 +- examples/gatsbygram/gatsby-node.js | 18 +- examples/gatsbygram/package.json | 25 +- examples/gatsbygram/yarn.lock | 3957 ++++++++++------- package.json | 2 +- .../gatsby-parser-json/src/gatsby-node.js | 34 +- packages/gatsby-parser-remark/package.json | 1 + .../gatsby-parser-remark/src/gatsby-node.js | 71 +- .../gatsby-parser-sharp/src/gatsby-node.js | 48 +- .../gatsby-parser-yaml/src/gatsby-node.js | 35 +- .../src/gatsby-node.js | 10 +- .../gatsby-plugin-glamor/src/gatsby-node.js | 6 +- .../gatsby-plugin-manifest/src/gatsby-node.js | 2 +- .../gatsby-plugin-offline/src/gatsby-node.js | 2 +- .../gatsby-plugin-preact/src/gatsby-node.js | 3 +- .../src/gatsby-node.js | 9 +- .../gatsby-source-filesystem/package.json | 1 + .../src/gatsby-node.js | 152 +- .../src/index.js | 4 +- .../src/index.js | 4 +- .../gatsby-typegen-remark/src/gatsby-node.js | 50 +- .../gatsby-typegen-sharp/src/gatsby-node.js | 24 +- packages/gatsby/lib/bin/cli.js | 10 + packages/gatsby/lib/bootstrap/create-path.js | 2 + packages/gatsby/lib/bootstrap/index.js | 227 +- packages/gatsby/lib/joi-schemas/joi.js | 10 +- .../__tests__/__snapshots__/nodes.js.snap | 22 + .../__tests__/__snapshots__/pages.js.snap | 80 + .../__snapshots__/site-config.js.snap | 12 + packages/gatsby/lib/redux/__tests__/nodes.js | 46 + packages/gatsby/lib/redux/__tests__/pages.js | 60 + .../gatsby/lib/redux/__tests__/site-config.js | 37 + packages/gatsby/lib/redux/actions.js | 93 + packages/gatsby/lib/redux/index.js | 46 + packages/gatsby/lib/redux/plugin-runner.js | 12 + .../page-data-dependencies.js.snap | 16 + .../__tests__/page-data-dependencies.js | 77 + packages/gatsby/lib/redux/reducers/config.js | 29 + .../lib/redux/reducers/flattened-plugins.js | 8 + packages/gatsby/lib/redux/reducers/index.js | 12 + .../gatsby/lib/redux/reducers/last-action.js | 3 + packages/gatsby/lib/redux/reducers/nodes.js | 16 + .../redux/reducers/page-data-dependencies.js | 47 + packages/gatsby/lib/redux/reducers/pages.js | 24 + packages/gatsby/lib/redux/reducers/plugins.js | 8 + packages/gatsby/lib/redux/reducers/program.js | 11 + packages/gatsby/lib/redux/reducers/schema.js | 8 + packages/gatsby/lib/redux/reducers/status.js | 11 + ...t.js.snap => data-tree-utils-test.js.snap} | 4 +- ...-utils-test.js => data-tree-utils-test.js} | 23 +- .../__tests__/infer-graphql-type-test.js | 1 + .../lib/schema/build-connection-fields.js | 2 +- .../lib/schema/build-node-connections.js | 11 +- .../gatsby/lib/schema/build-node-types.js | 70 +- .../{ast-utils.js => data-tree-utils.js} | 2 +- packages/gatsby/lib/schema/index.js | 73 +- .../lib/schema/infer-graphql-input-fields.js | 5 +- .../gatsby/lib/schema/infer-graphql-type.js | 26 +- packages/gatsby/lib/schema/run-sift.js | 15 +- packages/gatsby/lib/schema/site-schema.js | 6 +- packages/gatsby/lib/utils/api-runner-node.js | 40 +- packages/gatsby/lib/utils/babel-config.js | 2 + packages/gatsby/lib/utils/build-html.js | 4 +- packages/gatsby/lib/utils/build.js | 4 +- packages/gatsby/lib/utils/develop.js | 25 +- packages/gatsby/lib/utils/globals.js | 6 +- packages/gatsby/lib/utils/js-chunk-names.js | 8 +- packages/gatsby/lib/utils/query-runner.js | 198 +- packages/gatsby/lib/utils/webpack.config.js | 20 +- packages/gatsby/package.json | 4 + www/gatsby-node.js | 70 +- www/package.json | 42 +- www/pages/blog/index.js | 2 +- www/templates/template-blog-post.js | 2 +- www/yarn.lock | 906 +++- 76 files changed, 4748 insertions(+), 2242 deletions(-) create mode 100644 packages/gatsby/lib/redux/__tests__/__snapshots__/nodes.js.snap create mode 100644 packages/gatsby/lib/redux/__tests__/__snapshots__/pages.js.snap create mode 100644 packages/gatsby/lib/redux/__tests__/__snapshots__/site-config.js.snap create mode 100644 packages/gatsby/lib/redux/__tests__/nodes.js create mode 100644 packages/gatsby/lib/redux/__tests__/pages.js create mode 100644 packages/gatsby/lib/redux/__tests__/site-config.js create mode 100644 packages/gatsby/lib/redux/actions.js create mode 100644 packages/gatsby/lib/redux/index.js create mode 100644 packages/gatsby/lib/redux/plugin-runner.js create mode 100644 packages/gatsby/lib/redux/reducers/__tests__/__snapshots__/page-data-dependencies.js.snap create mode 100644 packages/gatsby/lib/redux/reducers/__tests__/page-data-dependencies.js create mode 100644 packages/gatsby/lib/redux/reducers/config.js create mode 100644 packages/gatsby/lib/redux/reducers/flattened-plugins.js create mode 100644 packages/gatsby/lib/redux/reducers/index.js create mode 100644 packages/gatsby/lib/redux/reducers/last-action.js create mode 100644 packages/gatsby/lib/redux/reducers/nodes.js create mode 100644 packages/gatsby/lib/redux/reducers/page-data-dependencies.js create mode 100644 packages/gatsby/lib/redux/reducers/pages.js create mode 100644 packages/gatsby/lib/redux/reducers/plugins.js create mode 100644 packages/gatsby/lib/redux/reducers/program.js create mode 100644 packages/gatsby/lib/redux/reducers/schema.js create mode 100644 packages/gatsby/lib/redux/reducers/status.js rename packages/gatsby/lib/schema/__tests__/__snapshots__/{ast-utils-test.js.snap => data-tree-utils-test.js.snap} (82%) rename packages/gatsby/lib/schema/__tests__/{ast-utils-test.js => data-tree-utils-test.js} (74%) rename packages/gatsby/lib/schema/{ast-utils.js => data-tree-utils.js} (96%) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0efaf6712e4b7..1e0189f6d36cf 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,17 +22,16 @@ The usual contributing steps are: * Install yarn, lerna, and gatsby-dev-cli globaly: `npm install -g yarn lerna gatsby-dev-cli@canary` * Checkout to the 1.0 branch: `git checkout 1.0` * Install dependencies: `yarn && lerna bootstrap` -* Make sure tests are passing for you: `lerna run test` +* Make sure tests are passing for you: `yarn run test` * Create a topic branch: `git checkout -b topics/new-feature-name` -* Run `yarn build` or `npm run build` to do an initial build of all packages - and ensure there are no errors. -* Now navigate to the package you want to modify and run `yarn run watch` to - watch that package's code and compile your changes on the fly as you work. -* Use the `gatsby-dev` command to copy built files from package(s) you're - working on to a Gatsby site. In each site you want to work on, run - `gatsby-dev` and as arguments, pass a space-seperated list of packages e.g. - `gatsby-dev gatsby gatsby-typegen-remark`. The first time you run the command, - you'll also need to set the path to your cloned repository. +* Run `yarn run watch` to do an initial build of all packages and watch for + changes to packages' source code and compile changes on the fly as you + work. +* Use the `gatsby-dev` command to copy files from your cloned copy of Gatsby + to test Gatsby sites. To use, go to a site you want to work on and run + `gatsby-dev`. This will copy over the built version of every gatsby + package the site is using. Note: the first time you run the command, + you'll also need to set the path to clone of the Gatsby repository. * Add tests and code for your changes. * Once you‘re done, make sure all tests still pass: `yarn test` * Commit and push to your fork. diff --git a/docs/docs/gatsby-on-windows.md b/docs/docs/gatsby-on-windows.md index 2b2d681d3f340..29c6e3e8cb1a4 100644 --- a/docs/docs/gatsby-on-windows.md +++ b/docs/docs/gatsby-on-windows.md @@ -2,8 +2,17 @@ title: Gatsby on windows --- -## Install build environment +## Setting up your environment for building native Node.js modules. -To be able to run Gatsby and especially sharp (a dependency to have a powerful image processor), you need to have a functional build environment (Python and Visual C++ Build Tools). +Many Gatsby plugins and themes require building native Node.js modules e.g. +[Sharp (a common Gatsby dependency used for image +processing)](/docs/packages/gatsby-plugin-sharp/). To do so, you need a +functional build environment (Python and Visual C++ Build Tools). -The easy way to have this build env on windows is to run `npm install --global windows-build-tools` on an admin powershell console. \ No newline at end of file +The easy way to setup your build environment on Windows is to install the +[`windows-build-tools`](https://github.com/felixrieseberg/windows-build-tools) +package by runnning `npm install --global windows-build-tools` on an admin +powershell console. On installing this package, it downloads and installs the +Visual C++ Build Tools 2015, provided free of charge by Microsoft. These tools +are required to compile popular native modules. It will also install Python +2.7, configuring your machine and npm appropriately. diff --git a/examples/gatsbygram/gatsby-node.js b/examples/gatsbygram/gatsby-node.js index 94526e47d72e2..06798f016e667 100644 --- a/examples/gatsbygram/gatsby-node.js +++ b/examples/gatsbygram/gatsby-node.js @@ -8,14 +8,15 @@ const slash = require("slash") // called after the Gatsby bootstrap is finished so you have // access to any information necessary to programatically // create pages. -exports.createPages = ({ args }) => - new Promise((resolve, reject) => { +exports.createPages = ({ graphql, actionCreators }) => { + const { upsertPage } = actionCreators + + return new Promise((resolve, reject) => { // The “graphql” function allows us to run arbitrary // queries against this Gatsbygram's graphql schema. Think of // it like Gatsbygram has a built-in database constructed // from static data that you can run queries against. - const { graphql } = args - const pages = [] + // // Post is a data node type derived from data/posts.json // which is created when scrapping Instagram. “allPosts” // is a "connection" (a GraphQL convention for accessing @@ -46,7 +47,10 @@ exports.createPages = ({ args }) => // already includes an ID field, we just use that for // each page's path. _.each(result.data.allPosts.edges, edge => { - pages.push({ + // Gatsby uses Redux to manage its internal state. + // Plugins and sites can use functions like "upsertPage" + // to interact with Gatsby. + upsertPage({ // Each page is required to have a `path` as well // as a template component. The `context` is // optional but is often necessary so the template @@ -58,7 +62,7 @@ exports.createPages = ({ args }) => }, }) }) - - resolve(pages) + resolve() }) }) +} diff --git a/examples/gatsbygram/package.json b/examples/gatsbygram/package.json index b5a0c5d789225..dc48517026b18 100644 --- a/examples/gatsbygram/package.json +++ b/examples/gatsbygram/package.json @@ -5,18 +5,19 @@ "version": "1.0.0", "author": "Kyle Mathews ", "dependencies": { - "gatsby": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-link": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-parser-json": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-parser-sharp": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-glamor": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-google-analytics": "^1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-manifest": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-offline": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-sharp": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-source-filesystem": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-filesystem": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-sharp": "1.0.0-alpha12-alpha.d7d6ef64", + "gatsby": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-link": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-parser-json": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-parser-sharp": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-glamor": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-google-analytics": "^1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-manifest": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-offline": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-sharp": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-source-filesystem": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-filesystem": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-sharp": "1.0.0-alpha12-alpha.1fdb9004", + "instagram-screen-scrape": "^2.0.0", "lodash": "^4.16.4", "mkdirp": "^0.5.1", "mousetrap": "^1.6.0", diff --git a/examples/gatsbygram/yarn.lock b/examples/gatsbygram/yarn.lock index 62e9037071eca..76245ab2cb517 100644 --- a/examples/gatsbygram/yarn.lock +++ b/examples/gatsbygram/yarn.lock @@ -2,9 +2,131 @@ # yarn lockfile v1 +"@types/accepts@*": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.2.tgz#52897ad5a51f05ea2f57f8e8136085c7d1c385a5" + +"@types/body-parser@0.0.33": + version "0.0.33" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-0.0.33.tgz#33ca1498fc37e51c5df0c81cae34569e7041e025" + dependencies: + "@types/express" "*" + +"@types/boom@0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/boom/-/boom-0.0.32.tgz#5dfd349b4e7ebe2c73ca8d39ab05687dd403f9a1" + dependencies: + "@types/node" "*" + +"@types/chai@^3.4.34": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-3.5.0.tgz#45e2dc2af9a5727be846af6e61d08ffc45d5b2ca" + +"@types/connect@^3.4.30": + version "3.4.30" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.30.tgz#0a8ede309ce0ebdba2f0534e574692511dd71eb6" + dependencies: + "@types/node" "*" + +"@types/cookies@*", "@types/cookies@^0.5.30": + version "0.5.30" + resolved "https://registry.yarnpkg.com/@types/cookies/-/cookies-0.5.30.tgz#de798b61d6c6da77d6559ab1db4c6f3c8b4935bd" + dependencies: + "@types/node" "*" + +"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.0.36": + version "4.0.44" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.0.44.tgz#a1c3bd5d80e93c72fba91a03f5412c47f21d4ae7" + dependencies: + "@types/node" "*" + +"@types/express@*", "@types/express@^4.0.33": + version "4.0.35" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.0.35.tgz#6267c7b60a51fac473467b3c4a02cd1e441805fe" + dependencies: + "@types/express-serve-static-core" "*" + "@types/serve-static" "*" + +"@types/fibers@0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/fibers/-/fibers-0.0.29.tgz#4c815209a717ede505c3040b4e3a31a7f5239d49" + +"@types/hapi@^13.0.35": + version "13.0.38" + resolved "https://registry.yarnpkg.com/@types/hapi/-/hapi-13.0.38.tgz#3671ab29fd465d61e394718ce546b7d5ef21a331" + dependencies: + "@types/node" "*" + +"@types/http-assert@*": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.2.0.tgz#0b82993036e86c6ff2944e033b73b57e85ccdcab" + +"@types/http-errors@^1.3.29": + version "1.5.34" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-1.5.34.tgz#d6a56f25d7b95dd07047680bf825632e29796815" + +"@types/keygrip@*": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/keygrip/-/keygrip-1.0.1.tgz#ff540462d2fb4d0a88441ceaf27d287b01c3d878" + +"@types/koa-bodyparser@^3.0.19": + version "3.0.23" + resolved "https://registry.yarnpkg.com/@types/koa-bodyparser/-/koa-bodyparser-3.0.23.tgz#0e719b708d463d1ea31a25971c485c2e4eb6ced4" + dependencies: + "@types/koa" "*" + +"@types/koa-compose@*": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@types/koa-compose/-/koa-compose-3.2.2.tgz#dc106e000bbf92a3ac900f756df47344887ee847" + +"@types/koa-router@^7.0.21": + version "7.0.22" + resolved "https://registry.yarnpkg.com/@types/koa-router/-/koa-router-7.0.22.tgz#92b4b533f074036250892fe35bb6329ee9242def" + dependencies: + "@types/koa" "*" + +"@types/koa@*", "@types/koa@^2.0.33": + version "2.0.39" + resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.0.39.tgz#45ba1249d8849b9b0ff8c1d6d2f80b0838b89ffa" + dependencies: + "@types/accepts" "*" + "@types/cookies" "*" + "@types/http-assert" "*" + "@types/keygrip" "*" + "@types/koa-compose" "*" + "@types/node" "*" + +"@types/mime@*", "@types/mime@0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-0.0.29.tgz#fbcfd330573b912ef59eeee14602bface630754b" + +"@types/multer@0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/multer/-/multer-0.0.32.tgz#f89c751227dc20b7c933c309a3e7467c499fcdec" + dependencies: + "@types/express" "*" + +"@types/node@*", "@types/node@^6.0.41": + version "6.0.68" + resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.68.tgz#0c43b6b8b9445feb86a0fbd3457e3f4bc591e66d" + +"@types/serve-static@*", "@types/serve-static@^1.7.31": + version "1.7.31" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.7.31.tgz#15456de8d98d6b4cff31be6c6af7492ae63f521a" + dependencies: + "@types/express-serve-static-core" "*" + "@types/mime" "*" + +JSONStream@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.10.0.tgz#74349d0d89522b71f30f0a03ff9bd20ca6f12ac0" + dependencies: + jsonparse "0.0.5" + through ">=2.2.7 <3" + abbrev@1: - version "1.0.9" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" + version "1.1.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" accept@1.x.x: version "1.1.0" @@ -20,16 +142,17 @@ accepts@^1.3.0, accepts@^1.3.3, accepts@~1.3.3: mime-types "~2.1.11" negotiator "0.6.1" -acorn-jsx@^3.0.1: - 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.0, acorn@^3.0.4: +acorn@^3.0.0: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" +ajv@^4.9.1: + version "4.11.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.6.tgz#947e93049790942b2a2d60a8289b28924d39f987" + dependencies: + co "^4.6.0" + json-stable-stringify "^1.0.1" + 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" @@ -43,8 +166,8 @@ alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" amdefine@>=0.0.4: - version "1.0.0" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.0.tgz#fd17474700cb5cc9c2b709f0be9d23ce3c198c33" + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" ammo@1.x.x: version "1.0.1" @@ -59,9 +182,13 @@ ansi-align@^1.1.0: dependencies: string-width "^1.0.1" -ansi-html@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.6.tgz#bda8e33dd2ee1c20f54c08eb405713cbfc0ed80e" +ansi-escapes@^1.1.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" ansi-red@^0.1.1: version "0.1.1" @@ -70,8 +197,8 @@ ansi-red@^0.1.1: ansi-wrap "0.1.0" ansi-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107" + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" ansi-styles@^2.2.1: version "2.2.1" @@ -100,9 +227,35 @@ anymatch@^1.3.0: arrify "^1.0.0" micromatch "^2.1.5" +apollo-server@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-0.3.3.tgz#3b6876c1d8bf56f51736375fa48f60dccada75a8" + dependencies: + "@types/body-parser" "0.0.33" + "@types/boom" "0.0.32" + "@types/chai" "^3.4.34" + "@types/connect" "^3.4.30" + "@types/cookies" "^0.5.30" + "@types/express" "^4.0.33" + "@types/express-serve-static-core" "^4.0.36" + "@types/fibers" "0.0.29" + "@types/hapi" "^13.0.35" + "@types/http-errors" "^1.3.29" + "@types/koa" "^2.0.33" + "@types/koa-bodyparser" "^3.0.19" + "@types/koa-router" "^7.0.21" + "@types/mime" "0.0.29" + "@types/multer" "0.0.32" + "@types/node" "^6.0.41" + "@types/serve-static" "^1.7.31" + boom "^4.0.0" + http-errors "^1.5.0" + source-map-support "^0.4.2" + typed-graphql "^1.0.2" + aproba@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.0.4.tgz#2713680775e7614c8ba186c065d4e2e52d1072c0" + version "1.1.1" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab" archive-type@^3.0.0, archive-type@^3.0.1: version "3.2.0" @@ -165,6 +318,13 @@ array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" +array.prototype.find@^2.0.1: + version "2.0.4" + resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.7.0" + arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -174,8 +334,8 @@ asap@~2.0.3: resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f" asn1.js@^4.0.0: - version "4.8.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.8.1.tgz#3949b7f5fd1e8bedc13be3abebf477f93490c810" + version "4.9.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" dependencies: bn.js "^4.0.0" inherits "^2.0.1" @@ -185,14 +345,14 @@ 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-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - assert@^1.1.1: version "1.4.1" resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" @@ -207,6 +367,12 @@ async-each@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" +async@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.0.0.tgz#d0900ad385af13804540a109c42166e3ae7b2b9d" + dependencies: + lodash "^4.8.0" + async@^0.9.0: version "0.9.2" resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" @@ -216,8 +382,8 @@ async@^1.3.0, async@^1.5.0: resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" async@^2.1.2, async@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" + version "2.3.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.3.0.tgz#1013d1051047dd320fe24e494d5c66ecaf6147d9" dependencies: lodash "^4.14.0" @@ -230,14 +396,14 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" autoprefixer@^6.0.2, autoprefixer@^6.3.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.5.1.tgz#ae759a5221e709f3da17c2d656230e67c43cbb75" + version "6.7.7" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" dependencies: - browserslist "~1.4.0" - caniuse-db "^1.0.30000554" + browserslist "^1.7.6" + caniuse-db "^1.0.30000634" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^5.2.4" + postcss "^5.2.16" postcss-value-parser "^3.2.3" aws-sign2@~0.6.0: @@ -245,8 +411,8 @@ aws-sign2@~0.6.0: resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" aws4@^1.2.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755" + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" b64@2.x.x: version "2.0.1" @@ -255,17 +421,17 @@ b64@2.x.x: hoek "2.x.x" babel-cli@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.18.0.tgz#92117f341add9dead90f6fa7d0a97c0cc08ec186" + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.24.1.tgz#207cd705bba61489b2ea41b5312341cf6aca2283" dependencies: - babel-core "^6.18.0" - babel-polyfill "^6.16.0" - babel-register "^6.18.0" - babel-runtime "^6.9.0" + babel-core "^6.24.1" + babel-polyfill "^6.23.0" + babel-register "^6.24.1" + babel-runtime "^6.22.0" commander "^2.8.1" convert-source-map "^1.1.0" fs-readdir-recursive "^1.0.0" - glob "^5.0.5" + glob "^7.0.0" lodash "^4.2.0" output-file-sync "^1.1.0" path-is-absolute "^1.0.0" @@ -273,29 +439,29 @@ babel-cli@^6.18.0: source-map "^0.5.0" v8flags "^2.0.10" optionalDependencies: - chokidar "^1.0.0" + chokidar "^1.6.1" -babel-code-frame@^6.11.0, babel-code-frame@^6.20.0: - version "6.20.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.20.0.tgz#b968f839090f9a8bc6d41938fb96cb84f7387b26" +babel-code-frame@^6.11.0, babel-code-frame@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" dependencies: chalk "^1.1.0" esutils "^2.0.2" - js-tokens "^2.0.0" - -babel-core@^6.18.0, babel-core@^6.18.2, babel-core@^6.9.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.21.0.tgz#75525480c21c803f826ef3867d22c19f080a3724" - dependencies: - babel-code-frame "^6.20.0" - babel-generator "^6.21.0" - babel-helpers "^6.16.0" - babel-messages "^6.8.0" - babel-register "^6.18.0" - babel-runtime "^6.20.0" - babel-template "^6.16.0" - babel-traverse "^6.21.0" - babel-types "^6.21.0" + js-tokens "^3.0.0" + +babel-core@^6.18.2, babel-core@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.24.1.tgz#8c428564dce1e1f41fb337ec34f4c3b022b5ad83" + dependencies: + babel-code-frame "^6.22.0" + babel-generator "^6.24.1" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" babylon "^6.11.0" convert-source-map "^1.1.0" debug "^2.1.1" @@ -307,169 +473,169 @@ babel-core@^6.18.0, babel-core@^6.18.2, babel-core@^6.9.0: slash "^1.0.0" source-map "^0.5.0" -babel-generator@^6.21.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.21.0.tgz#605f1269c489a1c75deeca7ea16d43d4656c8494" +babel-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.24.1.tgz#e715f486c58ded25649d888944d52aa07c5d9497" dependencies: - babel-messages "^6.8.0" - babel-runtime "^6.20.0" - babel-types "^6.21.0" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" detect-indent "^4.0.0" jsesc "^1.3.0" lodash "^4.2.0" source-map "^0.5.0" + trim-right "^1.0.1" -babel-helper-bindify-decorators@^6.8.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.8.0.tgz#b34805a30b1433cc0042f7054f88a7133c144909" +babel-helper-bindify-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" dependencies: - babel-runtime "^6.0.0" - babel-traverse "^6.8.0" - babel-types "^6.8.0" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-builder-binary-assignment-operator-visitor@^6.8.0: - version "6.15.0" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.15.0.tgz#39e9ee143f797b642262e4646c681c32089ef1ab" +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" dependencies: - babel-helper-explode-assignable-expression "^6.8.0" - babel-runtime "^6.0.0" - babel-types "^6.15.0" + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-builder-react-jsx@^6.8.0: - version "6.9.0" - resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.9.0.tgz#a633978d669c4c9dcad716cc577ee3e0bb8ae723" +babel-helper-builder-react-jsx@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.24.1.tgz#0ad7917e33c8d751e646daca4e77cc19377d2cbc" dependencies: - babel-runtime "^6.9.0" - babel-types "^6.9.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" esutils "^2.0.0" - lodash "^4.2.0" -babel-helper-call-delegate@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.18.0.tgz#05b14aafa430884b034097ef29e9f067ea4133bd" +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.18.0" - babel-runtime "^6.0.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-define-map@^6.18.0, babel-helper-define-map@^6.8.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.18.0.tgz#8d6c85dc7fbb4c19be3de40474d18e97c3676ec2" +babel-helper-define-map@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.24.1.tgz#7a9747f258d8947d32d515f6aa1c7bd02204a080" dependencies: - babel-helper-function-name "^6.18.0" - babel-runtime "^6.9.0" - babel-types "^6.18.0" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" lodash "^4.2.0" -babel-helper-explode-assignable-expression@^6.8.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.8.0.tgz#9b3525e05b761c3b88919d730a28bad1967e6556" +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" dependencies: - babel-runtime "^6.0.0" - babel-traverse "^6.8.0" - babel-types "^6.8.0" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-explode-class@^6.8.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.8.0.tgz#196a228cc69ea57308695e4ebd1a36cf3f8eca3d" +babel-helper-explode-class@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" dependencies: - babel-helper-bindify-decorators "^6.8.0" - babel-runtime "^6.0.0" - babel-traverse "^6.8.0" - babel-types "^6.8.0" + babel-helper-bindify-decorators "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-function-name@^6.18.0, babel-helper-function-name@^6.8.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz#68ec71aeba1f3e28b2a6f0730190b754a9bf30e6" +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.18.0" - babel-runtime "^6.0.0" - babel-template "^6.8.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-get-function-arity@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.18.0.tgz#a5b19695fd3f9cdfc328398b47dafcd7094f9f24" +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.0.0" - babel-types "^6.18.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-hoist-variables@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.18.0.tgz#a835b5ab8b46d6de9babefae4d98ea41e866b82a" +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.0.0" - babel-types "^6.18.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-optimise-call-expression@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.18.0.tgz#9261d0299ee1a4f08a6dd28b7b7c777348fd8f0f" +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.0.0" - babel-types "^6.18.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-regex@^6.8.0: - version "6.9.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.9.0.tgz#c74265fde180ff9a16735fee05e63cadb9e0b057" +babel-helper-regex@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.24.1.tgz#d36e22fab1008d79d88648e32116868128456ce8" dependencies: - babel-runtime "^6.9.0" - babel-types "^6.9.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" lodash "^4.2.0" -babel-helper-remap-async-to-generator@^6.16.0, babel-helper-remap-async-to-generator@^6.16.2: - version "6.16.2" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.16.2.tgz#24315bde8326c60022dc053cce84cfe38d724b82" +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" dependencies: - babel-helper-function-name "^6.8.0" - babel-runtime "^6.0.0" - babel-template "^6.16.0" - babel-traverse "^6.16.0" - babel-types "^6.16.0" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-replace-supers@^6.18.0, babel-helper-replace-supers@^6.8.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.18.0.tgz#28ec69877be4144dbd64f4cc3a337e89f29a924e" +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.18.0" - babel-messages "^6.8.0" - babel-runtime "^6.0.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" + babel-helper-optimise-call-expression "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helpers@^6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.16.0.tgz#1095ec10d99279460553e67eb3eee9973d3867e3" +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.0.0" - babel-template "^6.16.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" babel-loader@^6.2.7: - version "6.2.10" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.2.10.tgz#adefc2b242320cd5d15e65b31cea0e8b1b02d4b0" + version "6.4.1" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.4.1.tgz#0b34112d5b0748a8dcdbf51acf6f9bd42d50b8ca" dependencies: find-cache-dir "^0.1.1" - loader-utils "^0.2.11" + loader-utils "^0.2.16" mkdirp "^0.5.1" object-assign "^4.0.1" -babel-messages@^6.8.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.8.0.tgz#bf504736ca967e6d65ef0adb5a2a5f947c8e0eb9" +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.0.0" + babel-runtime "^6.22.0" babel-plugin-add-module-exports@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/babel-plugin-add-module-exports/-/babel-plugin-add-module-exports-0.2.1.tgz#9ae9a1f4a8dc67f0cdec4f4aeda1e43a5ff65e25" -babel-plugin-check-es2015-constants@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.8.0.tgz#dbf024c32ed37bfda8dee1e76da02386a8d26fe7" +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.0.0" + babel-runtime "^6.22.0" babel-plugin-glamor@^3.0.0-1: version "3.0.0-1" @@ -483,9 +649,9 @@ babel-plugin-syntax-async-generators@^6.5.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" -babel-plugin-syntax-class-constructor-call@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.13.0.tgz#96fb2e9f177dca22824065de4392f2fe3486b765" +babel-plugin-syntax-class-constructor-call@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" babel-plugin-syntax-class-properties@^6.8.0: version "6.13.0" @@ -499,6 +665,10 @@ babel-plugin-syntax-do-expressions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d" +babel-plugin-syntax-dynamic-import@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" + babel-plugin-syntax-exponentiation-operator@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" @@ -507,501 +677,505 @@ babel-plugin-syntax-export-extensions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" -babel-plugin-syntax-flow@^6.3.13, babel-plugin-syntax-flow@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.13.0.tgz#9af0cd396087bf7677053e1afa52f206c0416f17" +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-function-bind@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.13.0.tgz#e741ff3992c578310be45c571bcd90a2f9c5586e" + 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-syntax-trailing-function-commas@^6.3.13: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.13.0.tgz#2b84b7d53dd744f94ff1fad7669406274b23f541" +babel-plugin-syntax-trailing-function-commas@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" + +babel-plugin-transform-amd-system-wrapper@^0.3.3: + version "0.3.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-amd-system-wrapper/-/babel-plugin-transform-amd-system-wrapper-0.3.4.tgz#8d85dda78a300bf89b3b89167b6eabe7648c8a1a" + dependencies: + babel-template "^6.9.0" -babel-plugin-transform-async-generator-functions@^6.17.0: - version "6.17.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.17.0.tgz#d0b5a2b2f0940f2b245fa20a00519ed7bc6cae54" +babel-plugin-transform-async-generator-functions@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" dependencies: - babel-helper-remap-async-to-generator "^6.16.2" + babel-helper-remap-async-to-generator "^6.24.1" babel-plugin-syntax-async-generators "^6.5.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-async-to-generator@^6.16.0, babel-plugin-transform-async-to-generator@^6.8.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.16.0.tgz#19ec36cb1486b59f9f468adfa42ce13908ca2999" +babel-plugin-transform-async-to-generator@^6.24.1, babel-plugin-transform-async-to-generator@^6.8.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" dependencies: - babel-helper-remap-async-to-generator "^6.16.0" + babel-helper-remap-async-to-generator "^6.24.1" babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.0.0" - -babel-plugin-transform-cjs-system-require@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-cjs-system-require/-/babel-plugin-transform-cjs-system-require-0.1.1.tgz#ffef26d31bc270e82bdbbd437db2777e85162a29" + babel-runtime "^6.22.0" -babel-plugin-transform-cjs-system-wrapper@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-cjs-system-wrapper/-/babel-plugin-transform-cjs-system-wrapper-0.2.1.tgz#e855078877b56d4d1b92b9f91b37f599db0200e3" +babel-plugin-transform-cjs-system-wrapper@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-cjs-system-wrapper/-/babel-plugin-transform-cjs-system-wrapper-0.6.0.tgz#e6eddad07b0412a103fe3667f13a48824ba8fba9" dependencies: - babel-plugin-transform-cjs-system-require "^0.1.1" babel-template "^6.9.0" -babel-plugin-transform-class-constructor-call@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.8.0.tgz#6e740bc80f16d295fa598d92518666020a906192" +babel-plugin-transform-class-constructor-call@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9" dependencies: - babel-plugin-syntax-class-constructor-call "^6.8.0" - babel-runtime "^6.0.0" - babel-template "^6.8.0" + babel-plugin-syntax-class-constructor-call "^6.18.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-class-properties@^6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.16.0.tgz#969bca24d34e401d214f36b8af5c1346859bc904" +babel-plugin-transform-class-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" dependencies: - babel-helper-function-name "^6.8.0" + babel-helper-function-name "^6.24.1" babel-plugin-syntax-class-properties "^6.8.0" - babel-runtime "^6.9.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-decorators@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.13.0.tgz#82d65c1470ae83e2d13eebecb0a1c2476d62da9d" +babel-plugin-transform-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" dependencies: - babel-helper-define-map "^6.8.0" - babel-helper-explode-class "^6.8.0" + babel-helper-explode-class "^6.24.1" babel-plugin-syntax-decorators "^6.13.0" - babel-runtime "^6.0.0" - babel-template "^6.8.0" - babel-types "^6.13.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-do-expressions@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.8.0.tgz#fda692af339835cc255bb7544efb8f7c1306c273" +babel-plugin-transform-do-expressions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb" dependencies: babel-plugin-syntax-do-expressions "^6.8.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-arrow-functions@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.8.0.tgz#5b63afc3181bdc9a8c4d481b5a4f3f7d7fef3d9d" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-block-scoped-functions@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.8.0.tgz#ed95d629c4b5a71ae29682b998f70d9833eb366d" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-block-scoping@^6.18.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.21.0.tgz#e840687f922e70fb2c42bb13501838c174a115ed" +babel-plugin-transform-es2015-block-scoping@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.24.1.tgz#76c295dc3a4741b1665adfd3167215dcff32a576" dependencies: - babel-runtime "^6.20.0" - babel-template "^6.15.0" - babel-traverse "^6.21.0" - babel-types "^6.21.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" lodash "^4.2.0" -babel-plugin-transform-es2015-classes@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.18.0.tgz#ffe7a17321bf83e494dcda0ae3fc72df48ffd1d9" - dependencies: - babel-helper-define-map "^6.18.0" - babel-helper-function-name "^6.18.0" - babel-helper-optimise-call-expression "^6.18.0" - babel-helper-replace-supers "^6.18.0" - babel-messages "^6.8.0" - babel-runtime "^6.9.0" - babel-template "^6.14.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" +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.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.8.0.tgz#f51010fd61b3bd7b6b60a5fdfd307bb7a5279870" +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-helper-define-map "^6.8.0" - babel-runtime "^6.0.0" - babel-template "^6.8.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-destructuring@^6.18.0: - version "6.19.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.19.0.tgz#ff1d911c4b3f4cab621bd66702a869acd1900533" +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.9.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-duplicate-keys@^6.6.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.8.0.tgz#fd8f7f7171fc108cc1c70c3164b9f15a81c25f7d" +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.0.0" - babel-types "^6.8.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-for-of@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.18.0.tgz#4c517504db64bf8cfc119a6b8f177211f2028a70" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-function-name@^6.9.0: - version "6.9.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.9.0.tgz#8c135b17dbd064e5bba56ec511baaee2fca82719" +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.8.0" - babel-runtime "^6.9.0" - babel-types "^6.9.0" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-literals@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.8.0.tgz#50aa2e5c7958fc2ab25d74ec117e0cc98f046468" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-amd@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.18.0.tgz#49a054cbb762bdf9ae2d8a807076cfade6141e40" +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.18.0" - babel-runtime "^6.0.0" - babel-template "^6.8.0" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-modules-commonjs@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.18.0.tgz#c15ae5bb11b32a0abdcc98a5837baa4ee8d67bcc" +babel-plugin-transform-es2015-modules-commonjs@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz#d3e310b40ef664a36622200097c6d440298f2bfe" dependencies: - babel-plugin-transform-strict-mode "^6.18.0" - babel-runtime "^6.0.0" - babel-template "^6.16.0" - babel-types "^6.18.0" + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-modules-systemjs@^6.18.0, babel-plugin-transform-es2015-modules-systemjs@^6.6.5: - version "6.19.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.19.0.tgz#50438136eba74527efa00a5b0fefaf1dc4071da6" +babel-plugin-transform-es2015-modules-systemjs@^6.24.1, babel-plugin-transform-es2015-modules-systemjs@^6.6.5: + 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.18.0" - babel-runtime "^6.11.6" - babel-template "^6.14.0" + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-modules-umd@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.18.0.tgz#23351770ece5c1f8e83ed67cb1d7992884491e50" +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.18.0" - babel-runtime "^6.0.0" - babel-template "^6.8.0" + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-object-super@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.8.0.tgz#1b858740a5a4400887c23dcff6f4d56eea4a24c5" +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.8.0" - babel-runtime "^6.0.0" + babel-helper-replace-supers "^6.24.1" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-parameters@^6.18.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.21.0.tgz#46a655e6864ef984091448cdf024d87b60b2a7d8" +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.18.0" - babel-helper-get-function-arity "^6.18.0" - babel-runtime "^6.9.0" - babel-template "^6.16.0" - babel-traverse "^6.21.0" - babel-types "^6.21.0" + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-shorthand-properties@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.18.0.tgz#e2ede3b7df47bf980151926534d1dd0cbea58f43" +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.0.0" - babel-types "^6.18.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-spread@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.8.0.tgz#0217f737e3b821fa5a669f187c6ed59205f05e9c" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-sticky-regex@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.8.0.tgz#e73d300a440a35d5c64f5c2a344dc236e3df47be" +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.8.0" - babel-runtime "^6.0.0" - babel-types "^6.8.0" + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-template-literals@^6.6.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.8.0.tgz#86eb876d0a2c635da4ec048b4f7de9dfc897e66b" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-typeof-symbol@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.18.0.tgz#0b14c48629c90ff47a0650077f6aa699bee35798" +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.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-unicode-regex@^6.3.13: - version "6.11.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.11.0.tgz#6298ceabaad88d50a3f4f392d8de997260f6ef2c" +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.8.0" - babel-runtime "^6.0.0" + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" regexpu-core "^2.0.0" -babel-plugin-transform-exponentiation-operator@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.8.0.tgz#db25742e9339eade676ca9acec46f955599a68a4" +babel-plugin-transform-exponentiation-operator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.8.0" + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-export-extensions@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.8.0.tgz#fa80ff655b636549431bfd38f6b817bd82e47f5b" +babel-plugin-transform-export-extensions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" dependencies: babel-plugin-syntax-export-extensions "^6.8.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-flow-strip-types@^6.3.13: - version "6.14.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.14.0.tgz#35ceb03f8770934044bab1a76f7e4ee0aa9220f9" +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.8.0" - babel-runtime "^6.0.0" + babel-plugin-syntax-flow "^6.18.0" + babel-runtime "^6.22.0" -babel-plugin-transform-function-bind@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.8.0.tgz#e7f334ce69f50d28fe850a822eaaab9fa4f4d821" +babel-plugin-transform-function-bind@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97" dependencies: babel-plugin-syntax-function-bind "^6.8.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-global-system-wrapper@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-global-system-wrapper/-/babel-plugin-transform-global-system-wrapper-0.0.1.tgz#afb469cec0e04689b9fe7e8b1fd280fc94a6d8f2" +babel-plugin-transform-global-system-wrapper@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-global-system-wrapper/-/babel-plugin-transform-global-system-wrapper-0.3.0.tgz#ddea2a2dc3f802593bdc0d026edb887763a53d6a" dependencies: babel-template "^6.9.0" babel-plugin-transform-object-assign@^6.8.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-assign/-/babel-plugin-transform-object-assign-6.8.0.tgz#76e17f2dc0f36f14f548b9afd7aaef58d29ebb75" + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-assign/-/babel-plugin-transform-object-assign-6.22.0.tgz#f99d2f66f1a0b0d498e346c5359684740caa20ba" dependencies: - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-object-rest-spread@^6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.16.0.tgz#db441d56fffc1999052fdebe2e2f25ebd28e36a9" +babel-plugin-transform-object-rest-spread@^6.22.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.23.0.tgz#875d6bc9be761c58a2ae3feee5dc4895d8c7f921" dependencies: babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-react-display-name@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.8.0.tgz#f7a084977383d728bdbdc2835bba0159577f660e" +babel-plugin-transform-react-display-name@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.23.0.tgz#4398910c358441dc4cef18787264d0412ed36b37" dependencies: - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-react-jsx-self@^6.11.0: - version "6.11.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.11.0.tgz#605c9450c1429f97a930f7e1dfe3f0d9d0dbd0f4" +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.9.0" + babel-runtime "^6.22.0" -babel-plugin-transform-react-jsx-source@^6.3.13, babel-plugin-transform-react-jsx-source@^6.9.0: - version "6.9.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.9.0.tgz#af684a05c2067a86e0957d4f343295ccf5dccf00" +babel-plugin-transform-react-jsx-source@^6.22.0, babel-plugin-transform-react-jsx-source@^6.9.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.9.0" + babel-runtime "^6.22.0" -babel-plugin-transform-react-jsx@^6.3.13: - version "6.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.8.0.tgz#94759942f70af18c617189aa7f3593f1644a71ab" +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.8.0" + babel-helper-builder-react-jsx "^6.24.1" babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.0.0" + babel-runtime "^6.22.0" -babel-plugin-transform-regenerator@^6.16.0: - version "6.16.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.16.1.tgz#a75de6b048a14154aae14b0122756c5bed392f59" +babel-plugin-transform-regenerator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz#b8da305ad43c3c99b4848e4fe4037b770d23c418" dependencies: - babel-runtime "^6.9.0" - babel-types "^6.16.0" - private "~0.1.5" + regenerator-transform "0.9.11" babel-plugin-transform-runtime@^6.15.0: - version "6.15.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.15.0.tgz#3d75b4d949ad81af157570273846fb59aeb0d57c" + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz#88490d446502ea9b8e7efb0fe09ec4d99479b1ee" dependencies: - babel-runtime "^6.9.0" + babel-runtime "^6.22.0" -babel-plugin-transform-strict-mode@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.18.0.tgz#df7cf2991fe046f44163dcd110d5ca43bc652b9d" +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.0.0" - babel-types "^6.18.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-system-register@0.0.1: +babel-plugin-transform-system-register@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-system-register/-/babel-plugin-transform-system-register-0.0.1.tgz#9dff40390c2763ac518f0b2ad7c5ea4f65a5be25" -babel-polyfill@^6.16.0: - version "6.20.0" - resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.20.0.tgz#de4a371006139e20990aac0be367d398331204e7" +babel-polyfill@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" dependencies: - babel-runtime "^6.20.0" + babel-runtime "^6.22.0" core-js "^2.4.0" regenerator-runtime "^0.10.0" babel-preset-es2015@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.18.0.tgz#b8c70df84ec948c43dcf2bf770e988eb7da88312" - dependencies: - babel-plugin-check-es2015-constants "^6.3.13" - babel-plugin-transform-es2015-arrow-functions "^6.3.13" - babel-plugin-transform-es2015-block-scoped-functions "^6.3.13" - babel-plugin-transform-es2015-block-scoping "^6.18.0" - babel-plugin-transform-es2015-classes "^6.18.0" - babel-plugin-transform-es2015-computed-properties "^6.3.13" - babel-plugin-transform-es2015-destructuring "^6.18.0" - babel-plugin-transform-es2015-duplicate-keys "^6.6.0" - babel-plugin-transform-es2015-for-of "^6.18.0" - babel-plugin-transform-es2015-function-name "^6.9.0" - babel-plugin-transform-es2015-literals "^6.3.13" - babel-plugin-transform-es2015-modules-amd "^6.18.0" - babel-plugin-transform-es2015-modules-commonjs "^6.18.0" - babel-plugin-transform-es2015-modules-systemjs "^6.18.0" - babel-plugin-transform-es2015-modules-umd "^6.18.0" - babel-plugin-transform-es2015-object-super "^6.3.13" - babel-plugin-transform-es2015-parameters "^6.18.0" - babel-plugin-transform-es2015-shorthand-properties "^6.18.0" - babel-plugin-transform-es2015-spread "^6.3.13" - babel-plugin-transform-es2015-sticky-regex "^6.3.13" - babel-plugin-transform-es2015-template-literals "^6.6.0" - babel-plugin-transform-es2015-typeof-symbol "^6.18.0" - babel-plugin-transform-es2015-unicode-regex "^6.3.13" - babel-plugin-transform-regenerator "^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@^6.11.1: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.16.0.tgz#aa117d60de0928607e343c4828906e4661824316" + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380" dependencies: - babel-plugin-syntax-flow "^6.3.13" babel-plugin-syntax-jsx "^6.3.13" - babel-plugin-transform-flow-strip-types "^6.3.13" - babel-plugin-transform-react-display-name "^6.3.13" - babel-plugin-transform-react-jsx "^6.3.13" - babel-plugin-transform-react-jsx-self "^6.11.0" - babel-plugin-transform-react-jsx-source "^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-preset-stage-0@^6.5.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.16.0.tgz#f5a263c420532fd57491f1a7315b3036e428f823" - dependencies: - babel-plugin-transform-do-expressions "^6.3.13" - babel-plugin-transform-function-bind "^6.3.13" - babel-preset-stage-1 "^6.16.0" - -babel-preset-stage-1@^6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.16.0.tgz#9d31fbbdae7b17c549fd3ac93e3cf6902695e479" - dependencies: - babel-plugin-transform-class-constructor-call "^6.3.13" - babel-plugin-transform-export-extensions "^6.3.13" - babel-preset-stage-2 "^6.16.0" - -babel-preset-stage-2@^6.16.0: - version "6.17.0" - resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.17.0.tgz#dc4f84582781353cef36c41247eae5e36c4cae0d" - dependencies: - babel-plugin-transform-class-properties "^6.16.0" - babel-plugin-transform-decorators "^6.13.0" - babel-preset-stage-3 "^6.17.0" - -babel-preset-stage-3@^6.17.0: - version "6.17.0" - resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.17.0.tgz#b6638e46db6e91e3f889013d8ce143917c685e39" - dependencies: - babel-plugin-syntax-trailing-function-commas "^6.3.13" - babel-plugin-transform-async-generator-functions "^6.17.0" - babel-plugin-transform-async-to-generator "^6.16.0" - babel-plugin-transform-exponentiation-operator "^6.3.13" - babel-plugin-transform-object-rest-spread "^6.16.0" - -babel-register@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.18.0.tgz#892e2e03865078dd90ad2c715111ec4449b32a68" - dependencies: - babel-core "^6.18.0" - babel-runtime "^6.11.6" + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz#5642d15042f91384d7e5af8bc88b1db95b039e6a" + dependencies: + babel-plugin-transform-do-expressions "^6.22.0" + babel-plugin-transform-function-bind "^6.22.0" + babel-preset-stage-1 "^6.24.1" + +babel-preset-stage-1@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0" + dependencies: + babel-plugin-transform-class-constructor-call "^6.24.1" + babel-plugin-transform-export-extensions "^6.22.0" + babel-preset-stage-2 "^6.24.1" + +babel-preset-stage-2@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" + dependencies: + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-plugin-transform-class-properties "^6.24.1" + babel-plugin-transform-decorators "^6.24.1" + babel-preset-stage-3 "^6.24.1" + +babel-preset-stage-3@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" + dependencies: + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-generator-functions "^6.24.1" + babel-plugin-transform-async-to-generator "^6.24.1" + babel-plugin-transform-exponentiation-operator "^6.24.1" + babel-plugin-transform-object-rest-spread "^6.22.0" + +babel-register@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" + dependencies: + babel-core "^6.24.1" + babel-runtime "^6.22.0" core-js "^2.4.0" home-or-tmp "^2.0.0" lodash "^4.2.0" mkdirp "^0.5.1" source-map-support "^0.4.2" -babel-runtime@^6.0.0, babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime@^6.20.0, babel-runtime@^6.6.1, babel-runtime@^6.9.0, babel-runtime@^6.9.1, babel-runtime@^6.9.2: - version "6.20.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.20.0.tgz#87300bdcf4cd770f09bf0048c64204e17806d16f" +babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.6.1, babel-runtime@^6.9.2: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" dependencies: core-js "^2.4.0" regenerator-runtime "^0.10.0" -babel-template@^6.14.0, babel-template@^6.15.0, babel-template@^6.16.0, babel-template@^6.7.0, babel-template@^6.8.0, babel-template@^6.9.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.16.0.tgz#e149dd1a9f03a35f817ddbc4d0481988e7ebc8ca" +babel-template@^6.24.1, babel-template@^6.7.0, babel-template@^6.9.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.24.1.tgz#04ae514f1f93b3a2537f2a0f60a5a45fb8308333" dependencies: - babel-runtime "^6.9.0" - babel-traverse "^6.16.0" - babel-types "^6.16.0" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" babylon "^6.11.0" lodash "^4.2.0" -babel-traverse@^6.16.0, babel-traverse@^6.18.0, babel-traverse@^6.21.0, babel-traverse@^6.8.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.21.0.tgz#69c6365804f1a4f69eb1213f85b00a818b8c21ad" +babel-traverse@^6.18.0, babel-traverse@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.24.1.tgz#ab36673fd356f9a0948659e7b338d5feadb31695" dependencies: - babel-code-frame "^6.20.0" - babel-messages "^6.8.0" - babel-runtime "^6.20.0" - babel-types "^6.21.0" - babylon "^6.11.0" + babel-code-frame "^6.22.0" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + babylon "^6.15.0" debug "^2.2.0" globals "^9.0.0" invariant "^2.2.0" lodash "^4.2.0" -babel-types@^6.13.0, babel-types@^6.15.0, babel-types@^6.16.0, babel-types@^6.18.0, babel-types@^6.21.0, babel-types@^6.8.0, babel-types@^6.9.0: - version "6.21.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.21.0.tgz#314b92168891ef6d3806b7f7a917fdf87c11a4b2" +babel-types@^6.19.0, babel-types@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.24.1.tgz#a136879dc15b3606bda0d90c1fc74304c2ff0975" dependencies: - babel-runtime "^6.20.0" + babel-runtime "^6.22.0" esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^1.0.1" -babylon@^6.11.0, babylon@^6.13.1: - version "6.14.1" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.14.1.tgz#956275fab72753ad9b3435d7afe58f8bf0a29815" +babylon@^6.11.0, babylon@^6.13.1, babylon@^6.15.0: + version "6.16.1" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.16.1.tgz#30c5a22f481978a9e7f8cdfdf496b11d94b404d3" bail@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.1.tgz#912579de8b391aadf3c5fdf4cd2a0fc225df3bc2" -balanced-match@0.1.0, balanced-match@~0.1.0: +balanced-match@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.1.0.tgz#b504bd05869b39259dd0c5efc35d843176dccc4a" @@ -1013,21 +1187,37 @@ balanced-match@^0.4.1, balanced-match@^0.4.2: version "0.4.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" +base-64@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb" + base64-js@^1.0.2: version "1.2.0" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" +base64id@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/base64id/-/base64id-0.1.0.tgz#02ce0fdeee0cef4f40080e1e73e834f0b1bfce3f" + +base64url@2.0.0, base64url@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" + basename@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/basename/-/basename-0.1.2.tgz#d6039bef939863160c78048cced3c5e7f88cb261" +basic-auth@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.1.0.tgz#45221ee429f7ee1e5035be3f51533f1cdfd29884" + batch@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464" bcrypt-pbkdf@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4" + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" dependencies: tweetnacl "^0.14.3" @@ -1084,14 +1274,14 @@ bin-wrapper@^3.0.0: os-filter-obj "^1.0.0" binary-extensions@^1.0.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.7.0.tgz#6c1610db163abfb34edfe42fa423343a1e01185d" + version "1.8.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" bl@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" + version "1.2.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.0.tgz#1397e7ec42c5f5dc387470c500e34a9f6be9ea98" dependencies: - readable-stream "~2.0.5" + readable-stream "^2.0.5" block-stream@*: version "0.0.9" @@ -1100,13 +1290,28 @@ block-stream@*: inherits "~2.0.0" bluebird@^3.0.5, bluebird@^3.3.4, bluebird@^3.4.6, bluebird@^3.4.7: - version "3.4.7" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3" + version "3.5.0" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.6" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" +body-parser@^1.15.0: + version "1.17.1" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.17.1.tgz#75b3bc98ddd6e7e0d8ffe750dfaca5c66993fa47" + dependencies: + bytes "2.4.0" + content-type "~1.0.2" + debug "2.6.1" + depd "~1.1.0" + http-errors "~1.6.1" + iconv-lite "0.4.15" + on-finished "~2.3.0" + qs "6.4.0" + raw-body "~2.2.0" + type-is "~1.6.14" + boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" @@ -1123,6 +1328,12 @@ boom@^3.2.2: dependencies: hoek "4.x.x" +boom@^4.0.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" + dependencies: + hoek "4.x.x" + boxen@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/boxen/-/boxen-0.6.0.tgz#8364d4248ac34ff0ef1b2f2bf49a6c60ce0d81b6" @@ -1138,8 +1349,8 @@ boxen@^0.6.0: widest-line "^1.0.0" brace-expansion@^1.0.0: - version "1.1.6" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9" + version "1.1.7" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59" dependencies: balanced-match "^0.4.1" concat-map "0.0.1" @@ -1153,8 +1364,8 @@ braces@^1.8.2: repeat-element "^1.1.2" brorand@^1.0.1: - version "1.0.6" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.0.6.tgz#4028706b915f91f7b349a2e0bf3c376039d216e5" + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" browserify-aes@0.4.0: version "0.4.0" @@ -1196,8 +1407,8 @@ browserify-rsa@^4.0.0: randombytes "^2.0.1" browserify-sign@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.0.tgz#10773910c3c206d5420a46aad8694f820b85968f" + 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" @@ -1213,13 +1424,14 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -browserslist@^1.0.0, browserslist@^1.0.1, browserslist@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.4.0.tgz#9cfdcf5384d9158f5b70da2aa00b30e8ff019049" +browserslist@^1.0.0, 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.30000539" + caniuse-db "^1.0.30000639" + electron-to-chromium "^1.2.7" -bser@^1.0.2: +bser@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/bser/-/bser-1.0.2.tgz#381116970b2a6deea5646dd15dd7278444b56169" dependencies: @@ -1229,11 +1441,15 @@ buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" +buffer-equal-constant-time@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + buffer-peek-stream@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-peek-stream/-/buffer-peek-stream-1.0.1.tgz#53b47570a1347787c5bad4ca2ca3021f9d8b3cfd" -buffer-shims@^1.0.0: +buffer-shims@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" @@ -1258,35 +1474,19 @@ buffer@^4.3.0, buffer@^4.9.0: ieee754 "^1.1.4" isarray "^1.0.0" -"bufferjs@>= 2.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/bufferjs/-/bufferjs-3.0.1.tgz#0692e829cb10a10550e647390b035eb06c38e8ef" - -"bufferstream@>= 0.6.2": - version "0.6.2" - resolved "https://registry.yarnpkg.com/bufferstream/-/bufferstream-0.6.2.tgz#a5f27e10d3c760084d14b35126615007319e3731" - dependencies: - bufferjs ">= 2.0.0" - optionalDependencies: - buffertools ">= 1.0.3" - -"buffertools@>= 1.0.3": - version "2.1.4" - resolved "https://registry.yarnpkg.com/buffertools/-/buffertools-2.1.4.tgz#62d4e1584c0090a0c7d3587f25934a84b8b38de4" - builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" -builtin-status-codes@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-2.0.0.tgz#6f22003baacf003ccd287afe6872151fddc58579" +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" bundle-loader@^0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/bundle-loader/-/bundle-loader-0.5.4.tgz#07c38ee906e0a0e700fd476a21834701ea7066f3" + version "0.5.5" + resolved "https://registry.yarnpkg.com/bundle-loader/-/bundle-loader-0.5.5.tgz#11fd7b08edf86a1d708efcb1eca62ca51f6c368a" dependencies: - loader-utils "0.2.x" + loader-utils "^1.0.2" bytes@2.3.0: version "2.3.0" @@ -1322,27 +1522,26 @@ camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" -caniuse-api@^1.3.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.5.2.tgz#8f393c682f661c0a997b77bba6e826483fb3600e" +caniuse-api@^1.5.2, caniuse-api@^1.5.3: + version "1.6.1" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" dependencies: - browserslist "^1.0.1" - caniuse-db "^1.0.30000346" - lodash.memoize "^4.1.0" - lodash.uniq "^4.3.0" - shelljs "^0.7.0" + browserslist "^1.3.6" + caniuse-db "^1.0.30000529" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" -caniuse-db@^1.0.30000346, caniuse-db@^1.0.30000539, caniuse-db@^1.0.30000554: - version "1.0.30000559" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000559.tgz#afbd68916dd23bfd549c26520c78631fb5e2e393" +caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: + version "1.0.30000649" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000649.tgz#1ee1754a6df235450c8b7cd15e0ebf507221a86a" capture-stack-trace@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" -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" catbox-memory@1.x.x: version "1.1.2" @@ -1404,24 +1603,45 @@ chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: supports-color "^2.0.0" character-entities-html4@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.0.1.tgz#c550d23c052574a61a8925f9d503faff6305c026" + version "1.1.0" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.0.tgz#1ab08551d3ce1fa1df08d00fb9ca1defb147a06c" character-entities-legacy@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.0.1.tgz#f659037653f9beeace2e9d44490c72a4d4fe3857" + version "1.1.0" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.0.tgz#b18aad98f6b7bcc646c1e4c81f9f1956376a561a" character-entities@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.1.0.tgz#704c928e2d2a879a3db6a926a6dd68fcd2bec7ac" + version "1.2.0" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.0.tgz#a683e2cf75dbe8b171963531364e58e18a1b155f" character-reference-invalid@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.0.1.tgz#cc413afbedb03554c2321fbff9356ec937505eaf" + version "1.1.0" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.0.tgz#dec9ad1dfb9f8d06b4fcdaa2adc3c4fd97af1e68" charenc@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.1.tgz#004cff9feaf102382ed12db58dd6f962796d6e88" + version "0.0.2" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + +cheerio@^0.22.0: + version "0.22.0" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e" + dependencies: + css-select "~1.2.0" + dom-serializer "~0.1.0" + entities "~1.1.1" + htmlparser2 "^3.9.1" + lodash.assignin "^4.0.9" + lodash.bind "^4.1.4" + lodash.defaults "^4.0.1" + lodash.filter "^4.4.0" + lodash.flatten "^4.2.0" + lodash.foreach "^4.3.0" + lodash.map "^4.4.0" + lodash.merge "^4.4.0" + lodash.pick "^4.2.1" + lodash.reduce "^4.4.0" + lodash.reject "^4.4.0" + lodash.some "^4.4.0" chokidar@^1.0.0, chokidar@^1.6.1: version "1.6.1" @@ -1438,6 +1658,10 @@ chokidar@^1.0.0, chokidar@^1.6.1: optionalDependencies: fsevents "^1.0.0" +chownr@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" + chunk-manifest-webpack-plugin@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/chunk-manifest-webpack-plugin/-/chunk-manifest-webpack-plugin-0.1.0.tgz#6138488fc21ddab4ccfb7c1c11d51bb80a943186" @@ -1451,8 +1675,8 @@ cipher-base@^1.0.0, cipher-base@^1.0.1: inherits "^2.0.1" clap@^1.0.9: - version "1.1.1" - resolved "https://registry.yarnpkg.com/clap/-/clap-1.1.1.tgz#a8a93e0bfb7581ac199c4f001a5525a724ce696d" + version "1.1.3" + resolved "https://registry.yarnpkg.com/clap/-/clap-1.1.3.tgz#b3bd36e93dd4cbfb395a3c26896352445265c05b" dependencies: chalk "^1.1.3" @@ -1460,6 +1684,16 @@ cli-boxes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" +cli-cursor@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" + dependencies: + restore-cursor "^1.0.1" + +cli-width@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" + cliui@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" @@ -1492,6 +1726,10 @@ co@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/co/-/co-3.1.0.tgz#4ea54ea5a08938153185e15210c68d9092bc1b78" +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.1" resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.1.tgz#7f959346cfc8719e3f7233cd6852854a7c67d8a3" @@ -1499,46 +1737,34 @@ coa@~1.0.1: q "^1.1.2" code-point-at@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.0.1.tgz#1104cd34f9b5b45d3eba88f1babc1924e1ce35fb" - dependencies: - number-is-nan "^1.0.0" + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" coffee-react-transform@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/coffee-react-transform/-/coffee-react-transform-4.0.0.tgz#731a79fd445a56e93926c72e983eff937f7c6fde" -coffee-script@^1.9.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.11.1.tgz#bf1c47ad64443a0d95d12df2b147cc0a4daad6e9" +coffee-script@^1.12.4, coffee-script@^1.9.1: + version "1.12.5" + resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.12.5.tgz#809f4585419112bbfe46a073ad7543af18c27346" collapse-white-space@^1.0.0, collapse-white-space@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.2.tgz#9c463fb9c6d190d2dcae21a356a01bcae9eeef6d" -color-convert@0.5.x, color-convert@^0.5.3: +color-convert@^0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" color-convert@^1.3.0, color-convert@^1.8.2: - version "1.8.2" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.8.2.tgz#be868184d7c8631766d54e7078e2672d7c7e3339" + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" dependencies: color-name "^1.1.1" -color-name@1.0.x: - version "1.0.1" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.0.1.tgz#6b34b2b29b7716013972b0b9d5bedcfbb6718df8" - color-name@^1.0.0, color-name@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.1.tgz#4b1415304cf50028ea81643643bd82ea05803689" - -color-string@0.2.x: - version "0.2.4" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.2.4.tgz#221ff64234f71aaa3e13bc8c7e8c95f3cdd8f81a" - dependencies: - color-name "1.0.x" + version "1.1.2" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.2.tgz#5c8ab72b64bd2215d617ae9559ebb148475cf98d" color-string@^0.3.0: version "0.3.0" @@ -1547,8 +1773,8 @@ color-string@^0.3.0: color-name "^1.0.0" color-string@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.4.0.tgz#2b47f8565fb0eb52f9f77c801992b8ca55d6e898" + version "1.5.2" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.2.tgz#26e45814bc3c9a7cbd6751648a41434514a773a9" dependencies: color-name "^1.0.0" simple-swizzle "^0.2.2" @@ -1560,28 +1786,14 @@ color@^0.10.1: color-convert "^0.5.3" color-string "^0.3.0" -color@^0.11.0: - version "0.11.3" - resolved "https://registry.yarnpkg.com/color/-/color-0.11.3.tgz#4bad1d0d52499dd00dbd6f0868442467e49394e6" +color@^0.11.0, color@^0.11.3, color@^0.11.4: + 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" -color@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/color/-/color-0.7.3.tgz#ab3ae4bc6cb8cfadb5d749c40f34aea088104f89" - dependencies: - color-convert "0.5.x" - color-string "0.2.x" - -color@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/color/-/color-0.9.0.tgz#91146d460cdd5543ea1fa20aa0b597337509b64d" - dependencies: - color-convert "^0.5.3" - color-string "^0.3.0" - color@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/color/-/color-1.0.3.tgz#e48e832d85f14ef694fb468811c2d5cfe729b55d" @@ -1613,7 +1825,7 @@ comma-separated-tokens@^1.0.1: dependencies: trim "0.0.1" -commander@2.9.0, commander@2.9.x, commander@^2.8.1, commander@^2.9.0: +commander@2.9.0, commander@2.9.x, commander@^2.2.0, commander@^2.8.1, commander@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" dependencies: @@ -1643,11 +1855,15 @@ compass-vertical-rhythm@^1.3.0: object-assign "^4.1.0" parse-unit "^1.0.1" +component-emitter@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.0.tgz#ccd113a86388d06482d03de3fc7df98526ba8efe" + compressible@~2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.8.tgz#7162e6c46d3b9d200ffb45cb4e4a0f7832732503" + version "2.0.10" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.10.tgz#feda1c7f7617912732b29bf8cf26252a20b9eecd" dependencies: - mime-db ">= 1.23.0 < 2" + mime-db ">= 1.27.0 < 2" compression@^1.5.2: version "1.6.2" @@ -1712,11 +1928,11 @@ constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" -content-disposition@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.1.tgz#87476c6a67c8daa87e32e87616df883ba7fb071b" +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@^1.0.0, content-type@~1.0.2: +content-type@^1.0.2, content-type@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.2.tgz#b7d113aee7a8dd27bd21133c4dc2529df1721eed" @@ -1735,8 +1951,8 @@ convert-css-length@^1.0.1: parse-unit "^1.0.1" convert-source-map@^1.1.0, convert-source-map@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67" + version "1.5.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" cookie-signature@1.0.6: version "1.0.6" @@ -1758,6 +1974,13 @@ 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" +cors@^2.7.1: + version "2.8.3" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.3.tgz#4cf78e1d23329a7496b2fc2225b77ca5bb5eb802" + dependencies: + object-assign "^4" + vary "^1" + create-ecdh@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" @@ -1787,18 +2010,19 @@ create-hmac@^1.1.0, create-hmac@^1.1.2: create-hash "^1.1.0" inherits "^2.0.1" -cross-env@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-3.1.3.tgz#58cd8231808f50089708b091f7dd37275a8e8154" +create-react-class@^15.5.2: + version "15.5.2" + resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.5.2.tgz#6a8758348df660b88326a0e764d569f274aad681" dependencies: - cross-spawn "^3.0.1" + fbjs "^0.8.9" + object-assign "^4.1.1" -cross-spawn@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" +cross-env@^3.1.1: + version "3.2.4" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-3.2.4.tgz#9e0585f277864ed421ce756f81a980ff0d698aba" dependencies: - lru-cache "^4.0.1" - which "^1.2.9" + cross-spawn "^5.1.0" + is-windows "^1.0.0" cross-spawn@^4.0.0: version "4.0.2" @@ -1807,9 +2031,17 @@ cross-spawn@^4.0.0: lru-cache "^4.0.1" which "^1.2.9" +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" + crypt@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.1.tgz#5f11b21a6c05ef1b5e79708366da6374ece1e6a2" + version "0.0.2" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" cryptiles@2.x.x: version "2.0.5" @@ -1855,13 +2087,13 @@ css-color-names@0.0.4: resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" css-loader@^0.26.1: - version "0.26.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.26.1.tgz#2ba7f20131b93597496b3e9bb500785a49cd29ea" + version "0.26.4" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.26.4.tgz#b61e9e30db94303e6ffc892f10ecd09ad025a1fd" dependencies: babel-code-frame "^6.11.0" css-selector-tokenizer "^0.7.0" cssnano ">=2.6.1 <4" - loader-utils "~0.2.2" + loader-utils "^1.0.2" lodash.camelcase "^4.3.0" object-assign "^4.0.1" postcss "^5.0.6" @@ -1869,11 +2101,20 @@ css-loader@^0.26.1: postcss-modules-local-by-default "^1.0.1" postcss-modules-scope "^1.0.0" postcss-modules-values "^1.1.0" - source-list-map "^0.1.4" + source-list-map "^0.1.7" + +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-parser@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-selector-parser/-/css-selector-parser-1.2.0.tgz#82daaff4f69c4a776721b3b6beedd7f1f509cc94" + version "1.3.0" + resolved "https://registry.yarnpkg.com/css-selector-parser/-/css-selector-parser-1.3.0.tgz#5f1ad43e2d8eefbfdc304fcd39a521664943e3eb" css-selector-tokenizer@^0.6.0: version "0.6.0" @@ -1891,13 +2132,17 @@ css-selector-tokenizer@^0.7.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@>=2.6.1 <4": - version "3.7.7" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.7.7.tgz#27fac611380c6a49d6f722c0537e5a988a785010" + 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" @@ -1932,9 +2177,9 @@ cssesc@^0.1.0: postcss-value-parser "^3.2.3" postcss-zindex "^2.0.1" -csso@~2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/csso/-/csso-2.2.1.tgz#51fbb5347e50e81e6ed51668a48490ae6fe2afe2" +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" @@ -1945,21 +2190,19 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" +cycle@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2" + d@1: version "1.0.0" resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" dependencies: es5-ext "^0.10.9" -d@^0.1.1, d@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/d/-/d-0.1.1.tgz#da184c535d18d8ee7ba2aa229b914009fae11309" - dependencies: - es5-ext "~0.10.2" - dashdash@^1.12.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.0.tgz#29e486c5418bf0f356034a993d51686a33e84141" + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" dependencies: assert-plus "^1.0.0" @@ -1982,9 +2225,15 @@ dateformat@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" -debug@^2.1.1, debug@^2.2.0, debug@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b" +debug@2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.1.tgz#79855090ba2c4e3115cc7d8769491d58f0491351" + dependencies: + ms "0.7.2" + +debug@2.6.3, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.6.0: + version "2.6.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.3.tgz#0f7eb8c30965ec08c72accfa0130c8b79984141d" dependencies: ms "0.7.2" @@ -2070,6 +2319,13 @@ deep-extend@^0.4.0, deep-extend@~0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253" +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" @@ -2082,10 +2338,14 @@ delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" -depd@~1.1.0: +depd@1.1.0, depd@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" +deprecated-decorator@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/deprecated-decorator/-/deprecated-decorator-0.1.6.tgz#00966317b7a12fe92f3cc831f7583af329b86c37" + des.js@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" @@ -2097,11 +2357,11 @@ destroy@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" -detab@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/detab/-/detab-1.0.2.tgz#01bc2a4abe7bc7cc67c3039808edbae47049a0ee" +detab@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.0.tgz#485bd7954d2348092e998f7ff1a79fd9869d9b50" dependencies: - repeat-string "^1.5.2" + repeat-string "^1.5.4" detect-file@^0.1.0: version "0.1.0" @@ -2115,9 +2375,11 @@ detect-indent@^4.0.0: dependencies: repeating "^2.0.0" -detect-port@^1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.0.7.tgz#f8cddc7b996fb8f8019a5ab50c4b5f3a9b51b046" +detect-port@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.1.1.tgz#abb24845a0e0501d2a4313dfde93c2671f6ba998" + dependencies: + debug "^2.6.0" diffie-hellman@^5.0.0: version "5.0.2" @@ -2138,7 +2400,7 @@ dom-helpers@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-2.4.0.tgz#9bb4b245f637367b1fa670274272aa28fe06c367" -dom-serializer@0: +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: @@ -2173,7 +2435,7 @@ domhandler@^2.3.0: dependencies: domelementtype "1" -domutils@^1.5.1: +domutils@1.5.1, domutils@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" dependencies: @@ -2186,6 +2448,10 @@ dot-prop@^3.0.0: dependencies: is-obj "^1.0.0" +double-ended-queue@^2.1.0-0: + version "2.1.0-0" + resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" + download@^4.0.0, download@^4.1.2: version "4.4.3" resolved "https://registry.yarnpkg.com/download/-/download-4.4.3.tgz#aa55fdad392d95d4b68e8c2be03e0c2aa21ba9ac" @@ -2244,26 +2510,40 @@ ecc-jsbn@~0.1.1: dependencies: jsbn "~0.1.0" +ecdsa-sig-formatter@1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz#4bc926274ec3b5abb5016e7e1d60921ac262b2a1" + dependencies: + base64url "^2.0.0" + safe-buffer "^5.0.1" + ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" -ejs@^2.3.4: - version "2.5.2" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.2.tgz#21444ba09386f0c65b6eafb96a3d51bcb3be80d1" +ejs@^2.3.4, ejs@^2.4.1: + version "2.5.6" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.6.tgz#479636bfa3fe3b1debd52087f0acb204b4f19c88" + +electron-to-chromium@^1.2.7: + version "1.3.3" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.3.tgz#651eb63fe89f39db70ffc8dbd5d9b66958bc6a0e" element-class@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/element-class/-/element-class-0.2.2.tgz#9d3bbd0767f9013ef8e1c8ebe722c1402a60050e" elliptic@^6.0.0: - version "6.3.2" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.3.2.tgz#e4c81e0829cf0a65ab70e998b8232723b5c1bc48" + 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" emojis-list@^2.0.0: version "2.1.0" @@ -2286,10 +2566,10 @@ end-of-stream@1.0.0: once "~1.3.0" end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.1.0.tgz#e9353258baa9108965efc41cb0ef8ade2f3cfb07" + version "1.4.0" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" dependencies: - once "~1.3.0" + once "^1.4.0" enhanced-resolve@~0.9.0: version "0.9.1" @@ -2304,8 +2584,8 @@ entities@^1.1.1, entities@~1.1.1: resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" err-code@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.1.tgz#739d71b6851f24d050ea18c79a5b722420771d59" + version "1.1.2" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960" errno@^0.1.3: version "0.1.4" @@ -2314,8 +2594,8 @@ errno@^0.1.3: prr "~0.0.0" error-ex@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.0.tgz#e67b43f3e82c96ea3a584ffee0b9fc3325d802d9" + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" dependencies: is-arrayish "^0.2.1" @@ -2325,35 +2605,52 @@ error-stack-parser@^1.3.6: dependencies: stackframe "^0.3.1" -es5-ext@^0.10.12, es5-ext@^0.10.7, es5-ext@^0.10.8, es5-ext@^0.10.9, es5-ext@~0.10.11, es5-ext@~0.10.2: - version "0.10.12" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.12.tgz#aa84641d4db76b62abba5e45fd805ecbab140047" +es-abstract@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c" + dependencies: + es-to-primitive "^1.1.1" + function-bind "^1.1.0" + is-callable "^1.1.3" + is-regex "^1.0.3" + +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.12, es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14: + version "0.10.15" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.15.tgz#c330a5934c1ee21284a7c081a86e5fd937c91ea6" dependencies: es6-iterator "2" es6-symbol "~3.1" -es6-iterator@2: - version "2.0.0" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.0.tgz#bd968567d61635e33c0b80727613c9cb4b096bac" +es6-iterator@2, es6-iterator@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512" dependencies: - d "^0.1.1" - es5-ext "^0.10.7" - es6-symbol "3" + d "1" + es5-ext "^0.10.14" + es6-symbol "^3.1" es6-promise@^3.0.2: version "3.3.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" es6-promise@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.0.5.tgz#7882f30adde5b240ccfa7f7d78c548330951ae42" + version "4.1.0" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.1.0.tgz#dda03ca8f9f89bc597e689842929de7ba8cebdf0" -es6-symbol@3, es6-symbol@~3.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.0.tgz#94481c655e7a7cad82eba832d97d5433496d7ffa" +es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" dependencies: - d "~0.1.1" - es5-ext "~0.10.11" + d "1" + es5-ext "~0.10.14" es6-template-strings@^2.0.0: version "2.0.1" @@ -2363,13 +2660,13 @@ es6-template-strings@^2.0.0: esniff "^1.1" es6-weak-map@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.1.tgz#0d2bbd8827eb5fb4ba8f97fbfea50d43db21ea81" + version "2.0.2" + resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" dependencies: - d "^0.1.1" - es5-ext "^0.10.8" - es6-iterator "2" - es6-symbol "3" + 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" @@ -2380,11 +2677,14 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" eslint-plugin-react@^6.5.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.8.0.tgz#741ab5438a094532e5ce1bbb935d6832356f492d" + version "6.10.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz#c5435beb06774e12c7db2f6abaddcbf900cd3f78" dependencies: + array.prototype.find "^2.0.1" doctrine "^1.2.2" + has "^1.0.1" jsx-ast-utils "^1.3.4" + object.assign "^4.0.4" esniff@^1.1: version "1.1.0" @@ -2397,17 +2697,21 @@ esprima@^2.6.0: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" +esprima@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + esutils@^2.0.0, esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -etag@~1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8" +etag@~1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051" eval@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.1.tgz#73f745040b1272969fa02d21ade99fc312818776" + version "0.1.2" + resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.2.tgz#9f7103284c105a66df4030b2b3273165837013da" dependencies: require-like ">= 0.1.1" @@ -2419,7 +2723,7 @@ events@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" -eventsource@~0.1.6: +eventsource@0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" dependencies: @@ -2455,13 +2759,14 @@ exec-sh@^0.2.0: merge "^1.1.3" execa@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.5.0.tgz#a57456764b990e3e52f6eff7f17a9cc2ff2e7ccc" + version "0.5.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.5.1.tgz#de3fb85cb8d6e91c85bcbceb164581785cb57b36" dependencies: cross-spawn "^4.0.0" get-stream "^2.2.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" @@ -2475,6 +2780,14 @@ exenv@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.0.tgz#3835f127abf075bfe082d0aed4484057c78e3c89" +exenv@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.1.tgz#75de1c8dee02e952b102aa17f8875973e0df14f9" + +exit-hook@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -2487,49 +2800,55 @@ expand-range@^1.8.1: dependencies: fill-range "^2.1.0" -expand-tilde@^1.2.0, expand-tilde@^1.2.1, expand-tilde@^1.2.2: +expand-tilde@^1.2.0, expand-tilde@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449" dependencies: os-homedir "^1.0.1" +expirymanager@0.9.x: + version "0.9.3" + resolved "https://registry.yarnpkg.com/expirymanager/-/expirymanager-0.9.3.tgz#e5f6b3ba00d8d76cf63311c2b71d7dfc9bde3e4f" + express-graphql@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/express-graphql/-/express-graphql-0.6.1.tgz#cd9d144ac4d191b34a4261ac3a56fa407d5e19e8" + version "0.6.4" + resolved "https://registry.yarnpkg.com/express-graphql/-/express-graphql-0.6.4.tgz#e51c6281d075613feac72b3fb569440602d3dfe4" dependencies: accepts "^1.3.0" - content-type "^1.0.0" + content-type "^1.0.2" http-errors "^1.3.0" raw-body "^2.1.0" express@^4.13.3, express@^4.14.0: - version "4.14.0" - resolved "https://registry.yarnpkg.com/express/-/express-4.14.0.tgz#c1ee3f42cdc891fb3dc650a8922d51ec847d0d66" + version "4.15.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.15.2.tgz#af107fc148504457f2dca9a6f2571d7129b97b35" dependencies: accepts "~1.3.3" array-flatten "1.1.1" - content-disposition "0.5.1" + content-disposition "0.5.2" content-type "~1.0.2" cookie "0.3.1" cookie-signature "1.0.6" - debug "~2.2.0" + debug "2.6.1" depd "~1.1.0" encodeurl "~1.0.1" escape-html "~1.0.3" - etag "~1.7.0" - finalhandler "0.5.0" - fresh "0.3.0" + etag "~1.8.0" + finalhandler "~1.0.0" + fresh "0.5.0" merge-descriptors "1.0.1" methods "~1.1.2" on-finished "~2.3.0" parseurl "~1.3.1" path-to-regexp "0.1.7" - proxy-addr "~1.1.2" - qs "6.2.0" + proxy-addr "~1.1.3" + qs "6.4.0" range-parser "~1.2.0" - send "0.14.1" - serve-static "~1.11.1" - type-is "~1.6.13" + send "0.15.1" + serve-static "1.12.1" + setprototypeof "1.0.3" + statuses "~1.3.1" + type-is "~1.6.14" utils-merge "1.0.0" vary "~1.1.0" @@ -2543,6 +2862,14 @@ extend@^3.0.0, extend@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" +external-editor@^1.0.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-1.1.1.tgz#12d7b0db850f7ff7e7081baf4005700060c4600b" + dependencies: + extend "^3.0.0" + spawn-sync "^1.0.15" + tmp "^0.0.29" + extglob@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" @@ -2579,28 +2906,20 @@ faye-websocket@^0.10.0: websocket-driver ">=0.5.1" faye-websocket@~0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.0.tgz#d9ccf0e789e7db725d74bc4877d23aa42972ac50" + version "0.11.1" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" dependencies: websocket-driver ">=0.5.1" fb-watchman@^1.8.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-1.9.0.tgz#6f268f1f347a6b3c875d1e89da7e1ed79adfc0ec" + version "1.9.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-1.9.2.tgz#a24cf47827f82d38fb59a69ad70b76e3b6ae7383" dependencies: - bser "^1.0.2" + bser "1.0.2" -fbjs@0.1.0-alpha.10: - version "0.1.0-alpha.10" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.1.0-alpha.10.tgz#46e457c09cbefb51fc752a3e030e7b67fcc384c8" - dependencies: - core-js "^1.0.0" - promise "^7.0.3" - whatwg-fetch "^0.9.0" - -fbjs@^0.8.1, fbjs@^0.8.4, fbjs@^0.8.8: - version "0.8.8" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.8.tgz#02f1b6e0ea0d46c24e0b51a2d24df069563a5ad6" +fbjs@^0.8.8, fbjs@^0.8.9: + version "0.8.12" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.12.tgz#10b5d92f76d45575fd63a217d4ea02bea2f8ed04" dependencies: core-js "^1.0.0" isomorphic-fetch "^2.1.1" @@ -2663,14 +2982,16 @@ filled-array@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/filled-array/-/filled-array-1.1.0.tgz#c3c4f6c663b923459a9aa29912d2d031f1507f84" -finalhandler@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.0.tgz#e9508abece9b6dba871a6942a1d7911b91911ac7" +finalhandler@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.1.tgz#bcd15d1689c0e5ed729b6f7f541a6df984117db8" dependencies: - debug "~2.2.0" + debug "2.6.3" + encodeurl "~1.0.1" escape-html "~1.0.3" on-finished "~2.3.0" - statuses "~1.3.0" + parseurl "~1.3.1" + statuses "~1.3.1" unpipe "~1.0.0" find-cache-dir@^0.1.1: @@ -2713,18 +3034,6 @@ findup-sync@0.4.2, findup-sync@^0.4.2: micromatch "^2.3.7" resolve-dir "^0.1.0" -fined@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/fined/-/fined-1.0.2.tgz#5b28424b760d7598960b7ef8480dff8ad3660e97" - dependencies: - expand-tilde "^1.2.1" - lodash.assignwith "^4.0.7" - lodash.isempty "^4.2.1" - lodash.isplainobject "^4.0.4" - lodash.isstring "^4.0.1" - lodash.pick "^4.2.1" - parse-filepath "^1.0.1" - first-chunk-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" @@ -2739,27 +3048,41 @@ flat@^2.0.1: dependencies: is-buffer "~1.1.2" -flatten@1.0.2, flatten@^1.0.2: +flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" -for-in@^0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.6.tgz#c9f96e89bfad18a545af5ec3ed352a1d9e5b4dc8" +fleximap@0.9.x: + version "0.9.10" + resolved "https://registry.yarnpkg.com/fleximap/-/fleximap-0.9.10.tgz#1aa50ff6a8fea0037cc378e38ddacc091025ac10" -for-own@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.4.tgz#0149b41a39088c7515f51ebe1c1386d45f935072" +flux-standard-action@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/flux-standard-action/-/flux-standard-action-1.2.0.tgz#d2d41612dde4cebddd11a76cfead8e84fc69ebdc" + dependencies: + lodash "^4.0.0" + +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 "^0.1.5" + 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.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4" + 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" @@ -2769,13 +3092,13 @@ forwarded@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.0.tgz#19ef9874c4ae1c297bcf078fde63a09b66a84363" -fresh@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f" +fresh@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" front-matter@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/front-matter/-/front-matter-2.1.0.tgz#0bdff42cbad2b35c07ac7085811789759f9858c0" + version "2.1.2" + resolved "https://registry.yarnpkg.com/front-matter/-/front-matter-2.1.2.tgz#f75983b9f2f413be658c93dfd7bd8ce4078f5cdb" dependencies: js-yaml "^3.4.6" @@ -2783,6 +3106,13 @@ fs-exists-sync@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" +fs-extra@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.0.0.tgz#337352bded4a0b714f3eb84de8cea765e9d37600" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + fs-extra@^0.30.0: version "0.30.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" @@ -2810,13 +3140,13 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" fsevents@^1.0.0: - version "1.0.14" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.0.14.tgz#558e8cc38643d8ef40fe45158486d0d25758eee4" + version "1.1.1" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.1.tgz#f19fd28f43eeaf761680e519a203c4d0b3d31aff" dependencies: nan "^2.3.0" node-pre-gyp "^0.6.29" -fstream-ignore@~1.0.5: +fstream-ignore@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" dependencies: @@ -2824,40 +3154,40 @@ fstream-ignore@~1.0.5: inherits "2" minimatch "^3.0.0" -fstream@^1.0.0, fstream@^1.0.2, fstream@~1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.10.tgz#604e8a92fe26ffd9f6fae30399d4984e1ab22822" +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.0.2, function-bind@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" -gatsby-link@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-link/-/gatsby-link-1.0.0-alpha12-alpha.d7d6ef64.tgz#d32c70f223038652bc156962b082c34560e6b3cd" +gatsby-link@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-link/-/gatsby-link-1.0.0-alpha12-alpha.1fdb9004.tgz#b63ad1ed366e24d1fabbc6b07a4142fc2d15dad7" -gatsby-parser-json@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-parser-json/-/gatsby-parser-json-1.0.0-alpha12-alpha.d7d6ef64.tgz#361d0072f393daea609d2669c50c1b12bccb2844" +gatsby-parser-json@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-parser-json/-/gatsby-parser-json-1.0.0-alpha12-alpha.1fdb9004.tgz#c26e5d12bc6ec4e6b8dab313796c77a7355fd1ec" dependencies: bluebird "^3.4.6" unist-util-select "^1.5.0" -gatsby-parser-sharp@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-parser-sharp/-/gatsby-parser-sharp-1.0.0-alpha12-alpha.d7d6ef64.tgz#6dd4f20eeb2b8d9e2bd92e9a371f7878f8565186" +gatsby-parser-sharp@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-parser-sharp/-/gatsby-parser-sharp-1.0.0-alpha12-alpha.1fdb9004.tgz#bc072e471beff98f075fec68f96e3484d4aa5548" dependencies: bluebird "^3.4.6" unist-util-select "^1.5.0" -gatsby-plugin-glamor@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-glamor/-/gatsby-plugin-glamor-1.0.0-alpha12-alpha.d7d6ef64.tgz#79a4eabb9b26b14fd854df25a6b2ff9dafdce68c" +gatsby-plugin-glamor@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-glamor/-/gatsby-plugin-glamor-1.0.0-alpha12-alpha.1fdb9004.tgz#432711f4c862b1f63901bd92bc0c89e77c3fb064" dependencies: babel-plugin-glamor "^3.0.0-1" glamor next @@ -2865,27 +3195,27 @@ gatsby-plugin-glamor@1.0.0-alpha12-alpha.d7d6ef64: glamor-react "^3.0.0-1" glamor-server next -gatsby-plugin-google-analytics@^1.0.0-alpha12-alpha.d7d6ef64: +gatsby-plugin-google-analytics@^1.0.0-alpha12-alpha.1fdb9004: version "1.0.0-alpha12-alpha.faff3fa9" resolved "https://registry.yarnpkg.com/gatsby-plugin-google-analytics/-/gatsby-plugin-google-analytics-1.0.0-alpha12-alpha.faff3fa9.tgz#4f78c79607bfbea146b3c6d026dcb3a2073a2588" dependencies: react-ga "^2.1.2" -gatsby-plugin-manifest@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-manifest/-/gatsby-plugin-manifest-1.0.0-alpha12-alpha.d7d6ef64.tgz#1b68293739679911a3bd300185fd097564c6e53a" +gatsby-plugin-manifest@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-manifest/-/gatsby-plugin-manifest-1.0.0-alpha12-alpha.1fdb9004.tgz#1f63ea4372aa27b93b778e3efca9fdb04721d383" dependencies: bluebird "^3.4.7" -gatsby-plugin-offline@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-offline/-/gatsby-plugin-offline-1.0.0-alpha12-alpha.d7d6ef64.tgz#4e6f576decc44951bd7ae1499e0f284631f747b8" +gatsby-plugin-offline@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-offline/-/gatsby-plugin-offline-1.0.0-alpha12-alpha.1fdb9004.tgz#935bacf697dda7dd09f701a8c88ebfae59260569" dependencies: sw-precache "^5.0.0" -gatsby-plugin-sharp@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-sharp/-/gatsby-plugin-sharp-1.0.0-alpha12-alpha.d7d6ef64.tgz#92ff3cd57abc619da8e81e190a2b028b556defaa" +gatsby-plugin-sharp@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-sharp/-/gatsby-plugin-sharp-1.0.0-alpha12-alpha.1fdb9004.tgz#b1c739f27e22d2ad378536dd6a18e0a835e02e6d" dependencies: async "^2.1.4" bluebird "^3.4.7" @@ -2896,16 +3226,17 @@ gatsby-plugin-sharp@1.0.0-alpha12-alpha.d7d6ef64: progress "^1.1.8" qs "^6.3.0" queue "^4.0.1" - sharp "^0.17.1" + sharp "^0.17.3" -gatsby-source-filesystem@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-source-filesystem/-/gatsby-source-filesystem-1.0.0-alpha12-alpha.d7d6ef64.tgz#743abddf169b909c19f75c8e425db74970a3a09a" +gatsby-source-filesystem@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-source-filesystem/-/gatsby-source-filesystem-1.0.0-alpha12-alpha.1fdb9004.tgz#a54c5a84c75c9fa236bc892d796012c3cd640ea7" dependencies: async "^2.1.2" babel-cli "^6.18.0" babel-preset-es2015 "^6.18.0" bluebird "^3.4.6" + chokidar "^1.6.1" fs-extra "^1.0.0" glob "^7.1.1" graphql "^0.8.2" @@ -2919,24 +3250,24 @@ gatsby-source-filesystem@1.0.0-alpha12-alpha.d7d6ef64: slash "^1.0.0" unist-builder "^1.0.2" -gatsby-typegen-filesystem@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-filesystem/-/gatsby-typegen-filesystem-1.0.0-alpha12-alpha.d7d6ef64.tgz#1d9e613e12ba287ae287fe8b95f22bc769ddb616" +gatsby-typegen-filesystem@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-filesystem/-/gatsby-typegen-filesystem-1.0.0-alpha12-alpha.1fdb9004.tgz#6f450c704260cf045f6f1cc14859df6f6c3ff86e" dependencies: unist-util-select "^1.5.0" -gatsby-typegen-sharp@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-sharp/-/gatsby-typegen-sharp-1.0.0-alpha12-alpha.d7d6ef64.tgz#2a07e131cf763b0ae040cc0db986f83c8d0dfec7" +gatsby-typegen-sharp@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-sharp/-/gatsby-typegen-sharp-1.0.0-alpha12-alpha.1fdb9004.tgz#6795cdd76b645150bb78168db6913dced56306af" dependencies: graphql "^0.8.2" image-size "^0.5.1" lodash "^4.17.2" sharp "^0.17.0" -gatsby@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby/-/gatsby-1.0.0-alpha12-alpha.d7d6ef64.tgz#34a9369bfdaded76caa0992ff5123bdce9835694" +gatsby@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby/-/gatsby-1.0.0-alpha12-alpha.1fdb9004.tgz#c65616934a4a95aa2f8d24dfcdec7aec09dd87fb" dependencies: async "^2.1.2" babel-core "^6.18.2" @@ -2961,19 +3292,20 @@ gatsby@1.0.0-alpha12-alpha.d7d6ef64: commander "^2.9.0" css-loader "^0.26.1" debug "^2.6.0" - detect-port "^1.0.5" + detect-port "^1.1.1" eslint-plugin-react "^6.5.0" express "^4.14.0" express-graphql "^0.6.1" extract-text-webpack-plugin "^1.0.1" file-loader "^0.9.0" flat "^2.0.1" + flux-standard-action "^1.2.0" front-matter "^2.1.0" fs-extra "^0.30.0" glob "^7.1.0" graphql "^0.8.2" graphql-relay "^0.4.3" - graphql-skip-limit "^1.0.0-alpha12-alpha.d7d6ef64" + graphql-skip-limit "^1.0.0-alpha12-alpha.1fdb9004" graphql-union-input-type "^0.2.1" gray-matter "^2.1.0" hapi "^8.5.1" @@ -3014,9 +3346,12 @@ gatsby@1.0.0-alpha12-alpha.d7d6ef64: react-hot-loader "^3.0.0-beta.6" react-router "^2.8.1" react-router-scroll "^0.3.3" + redux "^3.6.0" remark "^6.2.0" remark-html "^5.0.1" remark-parse "^2.2.0" + remote-redux-devtools "^0.5.7" + remotedev-server "^0.3.0-beta-3" sanitize-html "^1.13.0" sift "^3.2.6" slash "^1.0.0" @@ -3055,13 +3390,12 @@ gauge@~1.2.5: lodash.padend "^4.1.0" lodash.padstart "^4.1.0" -gauge@~2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.6.0.tgz#d35301ad18e96902b4751dcbbe40f4218b942a46" +gauge@~2.7.1: + version "2.7.3" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.3.tgz#1c23855f962f17b3ad3d0dc7443f304542edfe09" dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" - has-color "^0.1.7" has-unicode "^2.0.0" object-assign "^4.1.0" signal-exit "^3.0.0" @@ -3069,15 +3403,9 @@ gauge@~2.6.0: strip-ansi "^3.0.1" wide-align "^1.1.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-params@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/get-params/-/get-params-0.1.2.tgz#bae0dfaba588a0c60d7834c0d8dc2ff60eeef2fe" get-proxy@^1.0.1: version "1.1.0" @@ -3106,6 +3434,10 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" +getport@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/getport/-/getport-0.1.0.tgz#abddf3d5d1e77dd967ccfa2b036a0a1fb26fd7f7" + glamor-inline@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/glamor-inline/-/glamor-inline-1.0.5.tgz#865d232a74e8da10d5f43d5a599ba784d2633c56" @@ -3165,7 +3497,7 @@ glob-stream@^5.3.2: to-absolute-glob "^0.1.1" unique-stream "^2.0.2" -glob@5.0.x, glob@^5.0.3, glob@^5.0.5: +glob@5.0.x, glob@^5.0.3: version "5.0.15" resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" dependencies: @@ -3204,13 +3536,13 @@ global-modules@^0.2.3: is-windows "^0.2.0" global-prefix@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.4.tgz#05158db1cde2dd491b455e290eb3ab8bfc45c6e1" + version "0.1.5" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f" dependencies: + homedir-polyfill "^1.0.0" ini "^1.3.4" is-windows "^0.2.0" - osenv "^0.1.3" - which "^1.2.10" + which "^1.2.12" global@^4.3.0: version "4.3.1" @@ -3220,8 +3552,8 @@ global@^4.3.0: process "~0.5.1" globals@^9.0.0: - version "9.14.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.14.0.tgz#8859936af0038741263053b39d0e76ca241e4034" + version "9.17.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.17.0.tgz#0c0ca696d9b9bb694d2e5470bd37777caad50286" globby@^5.0.0: version "5.0.0" @@ -3276,14 +3608,10 @@ got@^6.7.1: unzip-response "^2.0.1" url-parse-lax "^1.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11: +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" -graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.4, graceful-fs@^4.1.6: - version "4.1.9" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.9.tgz#baacba37d19d11f9d146d3578bc99958c3787e29" - "graceful-readlink@>= 1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" @@ -3292,27 +3620,39 @@ graphql-relay@^0.4.3, graphql-relay@^0.4.4: version "0.4.4" resolved "https://registry.yarnpkg.com/graphql-relay/-/graphql-relay-0.4.4.tgz#876a654445b6af4539f81cb9befd5cd7ead129dd" -graphql-skip-limit@^1.0.0-alpha12-alpha.d7d6ef64: +graphql-skip-limit@^1.0.0-alpha12-alpha.1fdb9004: version "1.0.0-alpha12-alpha.faff3fa9" resolved "https://registry.yarnpkg.com/graphql-skip-limit/-/graphql-skip-limit-1.0.0-alpha12-alpha.faff3fa9.tgz#bcc4436d70c1e61807496e4084367bcb2c5c84ea" +graphql-tools@^0.8.1: + version "0.8.4" + resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-0.8.4.tgz#3cf4b2a650e0322b655ca274ec24914b608fb562" + dependencies: + deprecated-decorator "^0.1.6" + lodash "^4.3.0" + uuid "^3.0.1" + optionalDependencies: + typed-graphql "^1.0.2" + graphql-union-input-type@^0.2.1: - version "0.2.2" - resolved "https://registry.yarnpkg.com/graphql-union-input-type/-/graphql-union-input-type-0.2.2.tgz#b38c3982b1ce71a5594b46a9a8e49276f4251777" + version "0.2.3" + resolved "https://registry.yarnpkg.com/graphql-union-input-type/-/graphql-union-input-type-0.2.3.tgz#5d74fd32df65458cb03b45d1843e4ea43f214dbd" -graphql@^0.8.2: +graphql@^0.8.0, graphql@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.8.2.tgz#eb1bb524b38104bbf2c9157f9abc67db2feba7d2" dependencies: iterall "1.0.2" gray-matter@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-2.1.0.tgz#df14c28793a9219720482c3996d12f548200ff75" + version "2.1.1" + resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-2.1.1.tgz#3042d9adec2a1ded6a7707a9ed2380f8a17a430e" dependencies: ansi-red "^0.1.1" + coffee-script "^1.12.4" extend-shallow "^2.0.1" - js-yaml "^3.4.3" + js-yaml "^3.8.1" + toml "^2.3.2" gray-percentage@^2.0.0: version "2.0.0" @@ -3416,14 +3756,16 @@ hapi@^8.5.1: topo "1.x.x" vision "2.x.x" -har-validator@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" dependencies: - chalk "^1.1.1" - commander "^2.9.0" - is-my-json-valid "^2.12.4" - pinkie-promise "^2.0.0" + ajv "^4.9.1" + har-schema "^1.0.5" has-ansi@^2.0.0: version "2.0.0" @@ -3431,7 +3773,7 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-color@^0.1.7, has-color@~0.1.0: +has-color@~0.1.0: version "0.1.7" resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f" @@ -3455,12 +3797,16 @@ has@^1.0.1: dependencies: function-bind "^1.0.2" -hash.js@^1.0.0: +hash.js@^1.0.0, hash.js@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.0.3.tgz#1332ff00156c0a0ffdd8236013d07b77a0451573" dependencies: inherits "^2.0.1" +hashmap@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hashmap/-/hashmap-2.1.0.tgz#fe163aa781db4665bbd76f554e390c8c55ce920a" + hast-util-is-element@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-1.0.0.tgz#3f7216978b2ae14d98749878782675f33be3ce00" @@ -3472,9 +3818,9 @@ hast-util-sanitize@^1.0.0: has "^1.0.1" xtend "^4.0.1" -hast-util-to-html@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-2.1.0.tgz#b5537172a1ea569dbf3d954911887de0cfeb2a8e" +hast-util-to-html@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-3.0.0.tgz#19a257cd7af464777c1cccf4d2d53d33147466c1" dependencies: ccount "^1.0.0" comma-separated-tokens "^1.0.1" @@ -3511,8 +3857,8 @@ heavy@3.x.x: joi "6.x.x" highlight.js@^9.8.0: - version "9.9.0" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.9.0.tgz#b9995dcfdc2773e307a34f0460d92b9a474782c0" + version "9.10.0" + resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.10.0.tgz#f9f0b14c0be00f0e4fb1e577b749fed9e6f52f55" history@^2.1.2: version "2.1.2" @@ -3523,13 +3869,21 @@ history@^2.1.2: query-string "^3.0.0" warning "^2.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, hoek@^2.14.x, hoek@^2.9.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" hoek@4.x.x: - version "4.1.0" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.1.0.tgz#4a4557460f69842ed463aa00628cc26d2683afa7" + version "4.1.1" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.1.1.tgz#9cc573ffba2b7b408fb5e9c2a13796be94cddce9" hoist-non-react-statics@^1.2.0: version "1.2.0" @@ -3542,9 +3896,15 @@ home-or-tmp@^2.0.0: os-homedir "^1.0.0" os-tmpdir "^1.0.1" +homedir-polyfill@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" + dependencies: + parse-passwd "^1.0.0" + hosted-git-info@^2.1.4: - version "2.1.5" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" + version "2.4.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.4.1.tgz#4b0445e41c004a8bd1337773a4ff790ca40318c8" html-comment-regex@^1.1.0: version "1.1.1" @@ -3558,9 +3918,9 @@ html-void-elements@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.1.tgz#f929bea267a19e3535950502ca12c159f1b559af" -htmlparser2@^3.9.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.1.tgz#621b7a58bc9acd003f7af0a2c9a00aa67c8505d2" +htmlparser2@^3.9.0, 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" @@ -3569,26 +3929,35 @@ htmlparser2@^3.9.0: inherits "^2.0.1" readable-stream "^2.0.2" -http-errors@^1.3.0, http-errors@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.0.tgz#b1cb3d8260fd8e2386cad3189045943372d48211" +http-errors@^1.3.0, http-errors@^1.5.0, http-errors@~1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.1.tgz#5f8b8ed98aca545656bf572997387f904a722257" dependencies: - inherits "2.0.1" - setprototypeof "1.0.1" - statuses ">= 1.3.0 < 2" + depd "1.1.0" + inherits "2.0.3" + setprototypeof "1.0.3" + statuses ">= 1.3.1 < 2" + +http-errors@~1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750" + dependencies: + inherits "2.0.3" + setprototypeof "1.0.2" + statuses ">= 1.3.1 < 2" http-proxy-middleware@~0.17.1: - version "0.17.2" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.2.tgz#572d517a6d2fb1063a469de294eed96066352007" + version "0.17.4" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" dependencies: - http-proxy "^1.15.1" - is-glob "^3.0.0" - lodash "^4.16.2" + http-proxy "^1.16.2" + is-glob "^3.1.0" + lodash "^4.17.2" micromatch "^2.3.11" -http-proxy@^1.15.1: - version "1.15.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.15.1.tgz#91a6088172e79bc0e821d5eb04ce702f32446393" +http-proxy@^1.16.2: + version "1.16.2" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" dependencies: eventemitter3 "1.x.x" requires-port "1.x.x" @@ -3605,9 +3974,9 @@ https-browserify@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" -iconv-lite@0.4.13, iconv-lite@~0.4.13: - version "0.4.13" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" +iconv-lite@0.4.15, iconv-lite@~0.4.13: + version "0.4.15" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" icss-replace-symbols@^1.0.2: version "1.0.2" @@ -3676,7 +4045,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -3688,13 +4057,42 @@ ini@^1.3.4, ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" -interpret@^0.6.4: +inquirer@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-1.1.3.tgz#6cd2a93f709fa50779731fd2262c698155cab2fa" + dependencies: + ansi-escapes "^1.1.0" + chalk "^1.0.0" + cli-cursor "^1.0.1" + cli-width "^2.0.0" + external-editor "^1.0.1" + figures "^1.3.5" + lodash "^4.3.0" + mute-stream "0.0.6" + pinkie-promise "^2.0.0" + run-async "^2.2.0" + rx "^4.1.0" + string-width "^1.0.1" + strip-ansi "^3.0.0" + through "^2.3.6" + +instagram-screen-scrape@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/instagram-screen-scrape/-/instagram-screen-scrape-2.0.0.tgz#d1c31fc9d716829750e64524a52b8ed0cd2aaf84" + dependencies: + JSONStream "^0.10.0" + argparse "^1.0.7" + readable-stream "^2.0.4" + request "^2.65.0" + tough-cookie "^2.2.1" + +interpret@^0.6.4, interpret@^0.6.5: version "0.6.6" resolved "https://registry.yarnpkg.com/interpret/-/interpret-0.6.6.tgz#fecd7a18e7ce5ca6abfb953e1f86213a49f1625b" interpret@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.1.tgz#d579fb7f693b858004947af39fa0db49f795602c" + version "1.0.2" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.2.tgz#f4f623f0bb7122f15f5717c8e254b8161b5c5b2d" invariant@^2.0.0, invariant@^2.1.0, invariant@^2.2.0, invariant@^2.2.1, invariant@^2.2.2: version "2.2.2" @@ -3710,9 +4108,9 @@ ip-regex@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-1.0.3.tgz#dc589076f659f419c222039a33316f1c7387effd" -ipaddr.js@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.1.1.tgz#c791d95f52b29c1247d5df80ada39b8a73647230" +ipaddr.js@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.3.0.tgz#1e03a52fdad83a8bbb2b25cbf4998b4cffcd3dec" iron@2.x.x: version "2.1.3" @@ -3723,8 +4121,8 @@ iron@2.x.x: hoek "2.x.x" is-absolute-url@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.0.0.tgz#9c4b20b0e5c0cbef9a479a367ede6f991679f359" + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" is-absolute@^0.1.5: version "0.1.7" @@ -3769,8 +4167,8 @@ is-binary-path@^1.0.0: binary-extensions "^1.0.0" is-buffer@^1.0.2, is-buffer@^1.1.4, is-buffer@~1.1.1, is-buffer@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b" + version "1.1.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" is-builtin-module@^1.0.0: version "1.0.0" @@ -3782,6 +4180,14 @@ is-bzip2@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-bzip2/-/is-bzip2-1.0.0.tgz#5ee58eaa5a2e9c80e21407bedf23ae5ac091b3fc" +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-decimal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.0.tgz#940579b6ea63c628080a69e62bda88c8470b4fe0" @@ -3805,8 +4211,8 @@ is-extglob@^1.0.0: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" is-extglob@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.0.tgz#33411a482b046bf95e6b0cb27ee2711af4cf15ad" + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" is-finite@^1.0.0: version "1.0.2" @@ -3826,7 +4232,7 @@ is-glob@^2.0.0, is-glob@^2.0.1: dependencies: is-extglob "^1.0.0" -is-glob@^3.0.0, is-glob@^3.1.0: +is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" dependencies: @@ -3840,15 +4246,6 @@ is-hexadecimal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.0.tgz#5c459771d2af9a2e3952781fd54fcb1bcfe4113c" -is-my-json-valid@^2.12.4: - version "2.15.0" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz#936edda3ca3c211fd98f3b2d3e08da43f7b2915b" - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - is-natural-number@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/is-natural-number/-/is-natural-number-2.1.1.tgz#7d4c5728377ef386c3e194a9911bf57c6dc335e7" @@ -3883,14 +4280,20 @@ is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" +is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" is-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" +is-regex@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + dependencies: + has "^1.0.1" + is-relative-url@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-relative-url/-/is-relative-url-2.0.0.tgz#72902d7fe04b3d4792e7db15f9db84b7204c9cef" @@ -3920,11 +4323,15 @@ is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0: resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" is-svg@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.0.1.tgz#f93ab3bf1d6bbca30e9753cd3485b1300eebc013" + 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-tar@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-tar/-/is-tar-1.0.0.tgz#2f6b2e1792c1f5bb36519acaa9d65c0d26fe853d" @@ -3934,8 +4341,8 @@ is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" is-unc-path@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.1.tgz#ab2533d77ad733561124c3dc0f5cd8b90054c86b" + version "0.1.2" + resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.2.tgz#6ab053a72573c10250ff416a3814c35178af39b9" dependencies: unc-path-regex "^0.1.0" @@ -3959,6 +4366,10 @@ is-windows@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" +is-windows@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.0.tgz#c61d61020c3ebe99261b781bd3d1622395f547f8" + is-word-character@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.0.tgz#a3a9e5ddad70c5c2ee36f4a9cfc9a53f44535247" @@ -3967,10 +4378,6 @@ is-zip@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-zip/-/is-zip-1.0.0.tgz#47b0a8ff4d38a76431ccfd99a8e15a4c86ba2325" -is@~0.2.6: - version "0.2.7" - resolved "https://registry.yarnpkg.com/is/-/is-0.2.7.tgz#3b34a2c48f359972f35042849193ae7264b63562" - isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -3987,9 +4394,13 @@ isemail@2.x.x: version "2.2.1" resolved "https://registry.yarnpkg.com/isemail/-/isemail-2.2.1.tgz#0353d3d9a62951080c262c2aa0a42b8ea8e9e2a6" -isexe@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0" +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +isnumeric@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/isnumeric/-/isnumeric-0.2.0.tgz#a2347ba360de19e33d0ffd590fddf7755cbf2e64" isobject@^2.0.0: version "2.1.0" @@ -4055,8 +4466,8 @@ joi@^8.4.2: topo "2.x.x" joi@^9.1.1: - version "9.1.1" - resolved "https://registry.yarnpkg.com/joi/-/joi-9.1.1.tgz#357a04c3ad424abcb9790829be8c01a131d93500" + version "9.2.0" + resolved "https://registry.yarnpkg.com/joi/-/joi-9.2.0.tgz#3385ac790192130cbe230e802ec02c9215bbfeda" dependencies: hoek "4.x.x" isemail "2.x.x" @@ -4068,24 +4479,35 @@ js-base64@^2.1.9: version "2.1.9" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" -js-tokens@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-1.0.3.tgz#14e56eb68c8f1a92c43d59f5014ec29dc20f2ae1" +js-data@^2.9.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/js-data/-/js-data-2.10.0.tgz#8ddaa1b5e5b81384b29bc4d949bc8cc09be16d84" -js-tokens@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-2.0.0.tgz#79903f5563ee778cc1162e6dcf1a0027c97f9cb5" +js-tokens@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" -js-yaml@^3.4.3, js-yaml@^3.4.6, js-yaml@^3.5.2, js-yaml@~3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.6.1.tgz#6e5fe67d8b205ce4d22fad05b7781e8dadcc4b30" +js-yaml@^3.4.6, js-yaml@^3.5.2, js-yaml@^3.8.1: + version "3.8.3" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.3.tgz#33a05ec481c850c8875929166fe1beb61c728766" + dependencies: + argparse "^1.0.7" + esprima "^3.1.1" + +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" +jsan@^3.1.0, jsan@^3.1.5: + version "3.1.7" + resolved "https://registry.yarnpkg.com/jsan/-/jsan-3.1.7.tgz#60513271c3011df2d6c627f645fb246847ff4056" + jsbn@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd" + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" jsesc@^1.3.0: version "1.3.0" @@ -4103,7 +4525,7 @@ 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@^1.0.0: +json-stable-stringify@^1.0.0, 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: @@ -4118,8 +4540,8 @@ json3@^3.3.2: resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" json5@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.0.tgz#9b20715b026cbe3778fd769edccd822d8332a5b2" + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" jsonfile@^2.1.0: version "2.4.0" @@ -4131,13 +4553,23 @@ 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.0" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.0.tgz#6661e161d2fc445f19f98430231343722e1fcbd5" +jsonparse@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-0.0.5.tgz#330542ad3f0a654665b778f3eb2d9a9fa507ac64" + +jsonwebtoken@7.2.1: + version "7.2.1" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-7.2.1.tgz#0fc7217473fc02b4c9aa1e188aa70b51bba4fccb" + dependencies: + joi "^6.10.1" + jws "^3.1.4" + lodash.once "^4.0.0" + ms "^0.7.1" + xtend "^4.0.1" jspm-github@^0.14.11: - version "0.14.11" - resolved "https://registry.yarnpkg.com/jspm-github/-/jspm-github-0.14.11.tgz#5093b3a79289d63ff6e3982f3b527878ac808d5c" + version "0.14.13" + resolved "https://registry.yarnpkg.com/jspm-github/-/jspm-github-0.14.13.tgz#326e5217d3639b21609293b01e7e18775dd3dcc7" dependencies: bluebird "^3.0.5" expand-tilde "^1.2.0" @@ -4150,9 +4582,9 @@ jspm-github@^0.14.11: tar-fs "^1.13.0" which "^1.0.9" -jspm-npm@^0.29.5: - version "0.29.7" - resolved "https://registry.yarnpkg.com/jspm-npm/-/jspm-npm-0.29.7.tgz#029159c3fe210d20f6965821697082e9a2be40ce" +jspm-npm@^0.30.2: + version "0.30.2" + resolved "https://registry.yarnpkg.com/jspm-npm/-/jspm-npm-0.30.2.tgz#56de14b1315904dcb87b47878a1161b180ef2319" dependencies: bluebird "^3.0.5" buffer-peek-stream "^1.0.1" @@ -4160,16 +4592,14 @@ jspm-npm@^0.29.5: mkdirp "^0.5.1" readdirp "^2.0.0" request "^2.58.0" - rmdir "^1.1.0" semver "^5.0.1" - systemjs-builder "^0.15.20" tar-fs "^1.13.0" traceur "0.0.105" which "^1.1.1" jspm-registry@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/jspm-registry/-/jspm-registry-0.4.1.tgz#2a30c419906ad71d4da692d1532009dd201c5b14" + version "0.4.4" + resolved "https://registry.yarnpkg.com/jspm-registry/-/jspm-registry-0.4.4.tgz#d53166035a87cdce585d62baa397568546996d70" dependencies: graceful-fs "^4.1.3" rimraf "^2.3.2" @@ -4177,8 +4607,8 @@ jspm-registry@^0.4.1: semver "^4.3.3" jspm@^0.17.0-beta.13: - version "0.17.0-beta.29" - resolved "https://registry.yarnpkg.com/jspm/-/jspm-0.17.0-beta.29.tgz#b75f13db7734ba492285409bb57499fb6956e7b2" + version "0.17.0-beta.41" + resolved "https://registry.yarnpkg.com/jspm/-/jspm-0.17.0-beta.41.tgz#07ca6165a60668466da175db07a1f3bdcd7529af" dependencies: bluebird "^3.0.5" chalk "^1.1.1" @@ -4186,7 +4616,7 @@ jspm@^0.17.0-beta.13: glob "^6.0.1" graceful-fs "^4.1.2" jspm-github "^0.14.11" - jspm-npm "^0.29.5" + jspm-npm "^0.30.2" jspm-registry "^0.4.1" liftoff "^2.2.0" minimatch "^3.0.0" @@ -4197,26 +4627,43 @@ jspm@^0.17.0-beta.13: rimraf "^2.4.4" sane "^1.3.3" semver "^5.1.0" - systemjs "0.19.39" - systemjs-builder "0.15.32" + systemjs "0.20.10" + systemjs-builder "0.16.4" traceur "0.0.105" uglify-js "^2.6.1" jsprim@^1.2.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252" + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" dependencies: + assert-plus "1.0.0" extsprintf "1.0.2" json-schema "0.2.3" verror "1.3.6" jsx-ast-utils@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.3.5.tgz#9ba6297198d9f754594d62e59496ffb923778dd4" + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.0.tgz#5afe38868f56bc8cc7aeaef0100ba8c75bd12591" dependencies: - acorn-jsx "^3.0.1" object-assign "^4.1.0" +jwa@^1.1.4: + version "1.1.5" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.1.5.tgz#a0552ce0220742cd52e153774a32905c30e756e5" + dependencies: + base64url "2.0.0" + buffer-equal-constant-time "1.0.1" + ecdsa-sig-formatter "1.0.9" + safe-buffer "^5.0.1" + +jws@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.1.4.tgz#f9e8b9338e8a847277d6444b1464f61880e050a2" + dependencies: + base64url "^2.0.0" + jwa "^1.1.4" + safe-buffer "^5.0.1" + kebab-case@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/kebab-case/-/kebab-case-1.0.0.tgz#3f9e4990adcad0c686c0e701f7645868f75f91eb" @@ -4228,14 +4675,37 @@ kilt@^1.1.x: hoek "2.x.x" kind-of@^3.0.2: - version "3.0.4" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.0.4.tgz#7b8ecf18a4e17f8269d73b501c9f232c96887a74" + version "3.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47" dependencies: is-buffer "^1.0.2" klaw@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.0.tgz#8857bfbc1d824badf13d3d0241d8bbe46fb12f73" + version "1.3.1" + resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" + optionalDependencies: + graceful-fs "^4.1.9" + +knex@0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/knex/-/knex-0.11.10.tgz#f16d1df618c022e331e016baa9190edc44ef0dc4" + dependencies: + bluebird "^3.3.4" + chalk "^1.0.0" + commander "^2.2.0" + debug "^2.1.3" + inherits "~2.0.1" + interpret "^0.6.5" + liftoff "~2.2.0" + lodash "^4.6.0" + minimist "~1.1.0" + mkdirp "^0.5.0" + node-uuid "~1.4.0" + pg-connection-string "^0.1.3" + pool2 "^1.1.0" + readable-stream "^1.1.12" + tildify "~1.0.0" + v8flags "^2.0.2" latest-version@^2.0.0: version "2.0.0" @@ -4263,23 +4733,23 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" -liftoff@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.3.0.tgz#a98f2ff67183d8ba7cfaca10548bd7ff0550b385" +liftoff@^2.2.0, liftoff@~2.2.0: + version "2.2.5" + resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.2.5.tgz#998c2876cff484b103e4423b93d356da44734c91" dependencies: extend "^3.0.0" findup-sync "^0.4.2" - fined "^1.0.1" flagged-respawn "^0.3.2" - lodash.isplainobject "^4.0.4" - lodash.isstring "^4.0.1" - lodash.mapvalues "^4.4.0" rechoir "^0.6.2" resolve "^1.1.7" +linked-list@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/linked-list/-/linked-list-0.1.0.tgz#798b0ff97d1b92a4fd08480f55aea4e9d49d37bf" + linkify-it@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.0.2.tgz#994629a4adfa5a7d34e08c075611575ab9b6fcfc" + version "2.0.3" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.0.3.tgz#d94a4648f9b1c179d64fa97291268bdb6ce9434f" dependencies: uc.micro "^1.0.1" @@ -4294,21 +4764,33 @@ load-json-file@^1.0.0, load-json-file@^1.1.0: strip-bom "^2.0.0" load-plugin@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-plugin/-/load-plugin-2.0.0.tgz#bfcc69aa2916263c45befcbb2b54cc4ec0e3b4d5" + version "2.1.0" + resolved "https://registry.yarnpkg.com/load-plugin/-/load-plugin-2.1.0.tgz#5c688c560261997b47dfd0a7361faeb152acf7f5" dependencies: npm-prefix "^1.2.0" resolve-from "^2.0.0" -loader-utils@0.2.x, loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.16, loader-utils@^0.2.3, loader-utils@^0.2.7, loader-utils@~0.2.2, loader-utils@~0.2.5: - version "0.2.16" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.16.tgz#f08632066ed8282835dff88dfb52704765adee6d" +loader-utils@0.2.x, loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.16, loader-utils@^0.2.3, 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.2: + 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" + +lodash-es@^4.2.1: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7" + lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" @@ -4349,15 +4831,23 @@ lodash.assign@^4.0.3, lodash.assign@^4.0.6, lodash.assign@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" -lodash.assignwith@^4.0.7: +lodash.assignin@^4.0.9: version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz#127a97f02adc41751a954d24b0de17e100e038eb" + resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" + +lodash.bind@^4.1.4: + version "4.2.1" + resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" -lodash.defaults@^4.2.0: +lodash.clonedeep@4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + +lodash.defaults@^4.0.1, lodash.defaults@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" @@ -4367,9 +4857,17 @@ lodash.escape@^3.0.0: dependencies: lodash._root "^3.0.0" -lodash.indexof@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/lodash.indexof/-/lodash.indexof-4.0.5.tgz#53714adc2cddd6ed87638f893aa9b6c24e31ef3c" +lodash.filter@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" + +lodash.flatten@^4.2.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" + +lodash.foreach@^4.3.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" lodash.isarguments@^3.0.0: version "3.1.0" @@ -4379,31 +4877,19 @@ lodash.isarray@^3.0.0: version "3.0.4" resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" -lodash.isempty@^4.2.1: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.isempty/-/lodash.isempty-4.4.0.tgz#6f86cbedd8be4ec987be9aaf33c9684db1b31e7e" - lodash.isequal@^4.0.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.4.0.tgz#6295768e98e14dc15ce8d362ef6340db82852031" + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" lodash.isnumber@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" -lodash.isplainobject@^4.0.4: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - lodash.iteratee@^4.5.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.iteratee/-/lodash.iteratee-4.7.0.tgz#be4177db289a8ccc3c0990f1db26b5b22fc1554c" -lodash.keys@^3.0.0: +lodash.keys@^3.0.0, lodash.keys@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" dependencies: @@ -4411,14 +4897,22 @@ lodash.keys@^3.0.0: lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" -lodash.mapvalues@^4.4.0: +lodash.map@^4.4.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz#1bafa5005de9dd6f4f26668c30ca37230cc9689c" + resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" -lodash.memoize@^4.1.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.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5" + +lodash.once@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + lodash.pad@^4.1.0: version "4.5.1" resolved "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz#4330949a833a7c8da22cc20f6a26c4d59debba70" @@ -4435,10 +4929,22 @@ lodash.pick@^4.2.1: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" +lodash.reduce@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" + +lodash.reject@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415" + lodash.restparam@^3.0.0: version "3.6.1" resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" +lodash.some@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" + lodash.template@^3.0.0: version "3.6.2" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" @@ -4473,7 +4979,7 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "~3.0.0" -lodash.uniq@^4.3.0: +lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" @@ -4485,14 +4991,10 @@ lodash@4.11.1: version "4.11.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.11.1.tgz#a32106eb8e2ec8e82c241611414773c9df15f8bc" -lodash@^4.1.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.16.2, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.6.1: +lodash@^4.0.0, lodash@^4.1.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.16.4, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.0, lodash@^4.6.1, lodash@^4.8.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" -lodash@^4.16.4: - version "4.16.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.16.4.tgz#01ce306b9bad1319f2a5528674f88297aeb70127" - log-symbols@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" @@ -4519,10 +5021,10 @@ longest@^1.0.0, longest@^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: - version "1.2.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.2.0.tgz#69a65aad3de542cf4ee0f4fe74e8e33c709ccb0f" + version "1.3.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" dependencies: - js-tokens "^1.0.1" + js-tokens "^3.0.0" loud-rejection@^1.0.0: version "1.6.0" @@ -4553,8 +5055,8 @@ lru-cache@2.6.x: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.6.5.tgz#e56d6354148ede8d7707b58d143220fd08df0fd5" lru-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.1.tgz#1343955edaf2e37d9b9e7ee7241e27c4b9fb72be" + version "4.0.2" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e" dependencies: pseudomap "^1.0.1" yallist "^2.0.0" @@ -4595,15 +5097,13 @@ markdown-table@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-0.4.0.tgz#890c2c1b3bfe83fb00e4129b8e4cfe645270f9d1" -markdown-table@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.0.0.tgz#5f768d5ae1b98f31ce673cd24686251decf2c460" +markdown-table@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.1.0.tgz#1f5ae61659ced8808d882554c32e8b3f38dd1143" math-expression-evaluator@^1.2.14: - version "1.2.14" - resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.14.tgz#39511771ed9602405fba9affff17eb4d2a3843ab" - dependencies: - lodash.indexof "^4.0.5" + version "1.2.16" + resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.16.tgz#b357fa1ca9faefb8e48d10c14ef2bcb2d9f0a7c9" md5-file@^3.1.1: version "3.1.1" @@ -4624,24 +5124,27 @@ mdast-util-compact@^1.0.0: unist-util-modify-children "^1.0.0" unist-util-visit "^1.1.0" -mdast-util-definitions@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-1.1.1.tgz#48e839f0299beda9ad5812d19fa2e2e073f307db" +mdast-util-definitions@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-1.2.0.tgz#00f67b4289ed36bafc0977b558414ac0c5023b24" dependencies: + has "^1.0.1" unist-util-visit "^1.0.0" -mdast-util-to-hast@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-1.0.0.tgz#230b57b2908cb2ea61ad537c58143565c763a512" +mdast-util-to-hast@^2.1.1: + version "2.4.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-2.4.0.tgz#63ce8e43c61d8e5728954a3515e0c936a3b26cea" dependencies: collapse-white-space "^1.0.0" - detab "^1.0.2" - mdast-util-definitions "^1.1.1" + detab "^2.0.0" + has "^1.0.1" + mdast-util-definitions "^1.2.0" normalize-uri "^1.0.0" trim "0.0.1" trim-lines "^1.0.0" unist-builder "^1.0.1" - unist-util-position "^2.0.1" + unist-util-generated "^1.1.0" + unist-util-position "^3.0.0" unist-util-visit "^1.1.0" xtend "^4.0.1" @@ -4664,6 +5167,13 @@ memory-fs@~0.3.0: errno "^0.1.3" readable-stream "^2.0.1" +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" + meow@^3.1.0, meow@^3.3.0, meow@^3.5.0, meow@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" @@ -4722,21 +5232,17 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.x.x, "mime-db@>= 1.23.0 < 2", mime-db@~1.24.0: - version "1.24.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.24.0.tgz#e2d13f939f0016c6e4e9ad25a8652f126c467f0c" +mime-db@1.x.x, "mime-db@>= 1.27.0 < 2", mime-db@~1.27.0: + version "1.27.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" -mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.7: - version "2.1.12" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.12.tgz#152ba256777020dd4663f54c2e7bc26381e71729" +mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.7: + version "2.1.15" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" dependencies: - mime-db "~1.24.0" + mime-db "~1.27.0" -mime@1.2.x: - version "1.2.11" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" - -mime@1.3.4, mime@^1.3.4: +mime@1.3.4, mime@1.3.x, mime@^1.3.4: version "1.3.4" resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" @@ -4757,6 +5263,10 @@ 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: version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" @@ -4773,10 +5283,18 @@ minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" +minimist@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.1.0.tgz#cdf225e8898f840a258ded44fc91776770afdc93" + minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +minimist@~1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.1.3.tgz#3bedfd91a92d39016fcfaa1c681e8faa1a1efda8" + "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" @@ -4790,18 +5308,28 @@ modularscale@^1.0.2: lodash.isnumber "^3.0.0" moment@2.x.x, moment@^2.16.0: - version "2.17.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.17.1.tgz#fed9506063f36b10f066c8b59a144d7faebe1d82" + version "2.18.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" + +morgan@^1.7.0: + version "1.8.1" + resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.8.1.tgz#f93023d3887bd27b78dfd6023cea7892ee27a4b1" + dependencies: + basic-auth "~1.1.0" + debug "2.6.1" + depd "~1.1.0" + on-finished "~2.3.0" + on-headers "~1.0.1" mousetrap@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mousetrap/-/mousetrap-1.6.0.tgz#0168fcabb11d07669e87490324c981208121ac4d" + version "1.6.1" + resolved "https://registry.yarnpkg.com/mousetrap/-/mousetrap-1.6.1.tgz#2a085f5c751294c75e7e81f6ec2545b29cbf42d9" ms@0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" -ms@0.7.2: +ms@0.7.2, ms@^0.7.1: version "0.7.2" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" @@ -4811,9 +5339,24 @@ multipipe@^0.1.2: dependencies: duplexer2 "0.0.2" -nan@^2.3.0, nan@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.0.tgz#aa8f1e34531d807e9e27755b234b4a6ec0c152a8" +mute-stream@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.6.tgz#48962b19e169fd1dfc240b3f1e7317627bbc47db" + +nan@^2.3.0, nan@^2.5.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.1.tgz#8c84f7b14c96b89f57fbc838012180ec8ca39a01" + +nan@~2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.4.0.tgz#fb3c59d45fe4effe215f0b890f8adf6eb32d2232" + +ncom@0.11.x: + version "0.11.1" + resolved "https://registry.yarnpkg.com/ncom/-/ncom-0.11.1.tgz#e41f98a13c486d353f11e967217657cecc81329b" + dependencies: + sc-domain "1.x.x" + sc-formatter "3.0.x" ncp@^2.0.0: version "2.0.0" @@ -4912,46 +5455,38 @@ node-libs-browser@^2.0.0: util "^0.10.3" vm-browserify "0.0.4" -node-pre-gyp@^0.6.29: - version "0.6.30" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.30.tgz#64d3073a6f573003717ccfe30c89023297babba1" +node-pre-gyp@^0.6.29, node-pre-gyp@~0.6.31: + version "0.6.34" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.34.tgz#94ad1c798a11d7fc67381b50d47f8cc18d9799f7" dependencies: - mkdirp "~0.5.0" - nopt "~3.0.1" - npmlog "4.x" - rc "~1.1.0" - request "2.x" - rimraf "~2.5.0" - semver "~5.3.0" - tar "~2.2.0" - tar-pack "~3.1.0" + 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-status-codes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" -node.extend@1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/node.extend/-/node.extend-1.0.8.tgz#bab04379f7383f4587990c9df07b6a7f65db772b" - dependencies: - is "~0.2.6" - object-keys "~0.4.0" - -node.flow@1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/node.flow/-/node.flow-1.2.3.tgz#e1c44a82aeca8d78b458a77fb3dc642f2eba2649" - dependencies: - node.extend "1.0.8" +node-uuid@^1.4.0, node-uuid@~1.4.0: + version "1.4.8" + resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" -nopt@~3.0.1: - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" +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.3.5" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.5.tgz#8d924f142960e1777e7ffe170543631cc7cb02df" + version "2.3.6" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.6.tgz#498fa420c96401f787402ba21e600def9f981fff" dependencies: hosted-git-info "^2.1.4" is-builtin-module "^1.0.0" @@ -4959,20 +5494,22 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: validate-npm-package-license "^3.0.1" normalize-path@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a" + 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-uri@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/normalize-uri/-/normalize-uri-1.0.0.tgz#c2407bca400808202a108f6776e335ca03bfa69f" + version "1.1.0" + resolved "https://registry.yarnpkg.com/normalize-uri/-/normalize-uri-1.1.0.tgz#01fb440c7fd059b9d9be8645aac14341efd059dd" normalize-url@^1.4.0: - version "1.6.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.6.1.tgz#a9f254fa065bbc2934461c0c09423815976155a2" + 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" @@ -5001,16 +5538,16 @@ npmlog@2.0.3: are-we-there-yet "~1.1.2" gauge "~1.2.5" -npmlog@4.x: - version "4.0.0" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.0.tgz#e094503961c70c1774eb76692080e8d578a9f88f" +npmlog@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" dependencies: are-we-there-yet "~1.1.2" console-control-strings "~1.1.0" - gauge "~2.6.0" + gauge "~2.7.1" set-blocking "~2.0.0" -nth-check@^1.0.1: +nth-check@^1.0.1, nth-check@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" dependencies: @@ -5040,19 +5577,27 @@ object-assign@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" -object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" +object-assign@^4, object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-keys@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" +object-keys@^1.0.10, 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.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc" + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.0" + object-keys "^1.0.10" object.omit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.0.tgz#868597333d54e60662940bb458605dd6ae12fe94" + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" dependencies: - for-own "^0.1.3" + for-own "^0.1.4" is-extendable "^0.1.1" observable@^2.1.4: @@ -5079,13 +5624,13 @@ 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.1, once@^1.3.3: +once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: wrappy "1" -once@~1.3.0, once@~1.3.3: +once@~1.3.0: version "1.3.3" resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" dependencies: @@ -5117,6 +5662,10 @@ optimist@~0.6.0, optimist@~0.6.1: minimist "~0.0.1" wordwrap "~0.0.2" +options@>=0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" + ordered-read-streams@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz#7137e69b3298bb342247a1bbee3881c80e2fd78b" @@ -5148,13 +5697,17 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: +os-shim@^0.1.2: + version "0.1.3" + resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917" + +os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -osenv@^0.1.0, osenv@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.3.tgz#83cf05c6d6458fc4d5ac6362ea325d92f2754217" +osenv@^0.1.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" @@ -5185,8 +5738,8 @@ pako@~0.2.0: resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" parse-asn1@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.0.0.tgz#35060f6d5015d37628c770f4e091a0b5a278bc23" + 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" @@ -5229,6 +5782,10 @@ parse-json@^2.1.0, parse-json@^2.2.0: dependencies: error-ex "^1.2.0" +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + parse-unit@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-unit/-/parse-unit-1.0.1.tgz#7e1bb6d5bef3874c28e392526a2541170291eecf" @@ -5263,6 +5820,10 @@ 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-root-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" @@ -5309,6 +5870,10 @@ pend@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + pez@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/pez/-/pez-1.0.0.tgz#844318a5ce7092eeddffa295e18079ac779fa018" @@ -5319,6 +5884,10 @@ pez@1.x.x: hoek "2.x.x" nigel "1.x.x" +pg-connection-string@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-0.1.3.tgz#da1847b20940e42ee1492beaf65d49d91b245df7" + pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -5364,8 +5933,8 @@ pkg-resolve@^0.1.7: resolve "^1.1.7" pleeease-filters@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pleeease-filters/-/pleeease-filters-3.0.0.tgz#35a4d4c2086413eabc2ce17aaa2ec29054e3075c" + version "3.0.1" + resolved "https://registry.yarnpkg.com/pleeease-filters/-/pleeease-filters-3.0.1.tgz#4dfe0e8f1046613517c64b728bc80608a7ebf22f" dependencies: onecolor "~2.4.0" postcss "^5.0.4" @@ -5378,6 +5947,15 @@ pngquant-bin@^3.0.0: bin-wrapper "^3.0.0" logalot "^2.0.0" +pool2@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/pool2/-/pool2-1.4.1.tgz#32fbd4f6a37764599002faeab8a0494a2a76a2d0" + dependencies: + debug "^2.1.3" + double-ended-queue "^2.1.0-0" + hashmap "^2.0.1" + simple-backoff "^1.0.0" + postcss-apply@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/postcss-apply/-/postcss-apply-0.3.0.tgz#a2f37c5bdfa881e4c15f4f245ec0cd96dd2e70d5" @@ -5416,10 +5994,10 @@ postcss-color-function@^2.0.0: postcss-value-parser "^3.3.0" postcss-color-gray@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-3.0.0.tgz#dd65f7ad7bec4b63b458a5de88d6dd49c86cbf7b" + version "3.0.1" + resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-3.0.1.tgz#74432ede66dd83b1d1363565c68b376e18ff6770" dependencies: - color "^0.7.3" + color "^0.11.3" postcss "^5.0.4" postcss-message-helpers "^2.0.0" reduce-function-call "^1.0.1" @@ -5432,22 +6010,37 @@ postcss-color-hex-alpha@^2.0.0: postcss "^5.0.4" postcss-message-helpers "^2.0.0" +postcss-color-hsl@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-color-hsl/-/postcss-color-hsl-1.0.5.tgz#f53bb1c348310ce307ad89e3181a864738b5e687" + dependencies: + postcss "^5.2.0" + postcss-value-parser "^3.3.0" + units-css "^0.4.0" + postcss-color-hwb@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-hwb/-/postcss-color-hwb-2.0.0.tgz#2c0d30a9563158f41eb3f6bddfdf1dae9cadae37" + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-color-hwb/-/postcss-color-hwb-2.0.1.tgz#d63afaf9b70cb595f900a29c9fe57bf2a32fabec" dependencies: - color "^0.10.1" + color "^0.11.4" postcss "^5.0.4" postcss-message-helpers "^2.0.0" reduce-function-call "^1.0.1" postcss-color-rebeccapurple@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-2.0.0.tgz#5a88225aeb924a1e3e8e2ea066c5cf4fe39d818a" + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-2.0.1.tgz#74c6444e7cbb7d85613b5f7286df7a491608451c" dependencies: - color "^0.9.0" + color "^0.11.4" postcss "^5.0.4" +postcss-color-rgb@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/postcss-color-rgb/-/postcss-color-rgb-1.1.4.tgz#f29243e22e8e8c13434474092372d4ce605be8bc" + dependencies: + postcss "^5.2.0" + postcss-value-parser "^3.3.0" + postcss-color-rgba-fallback@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/postcss-color-rgba-fallback/-/postcss-color-rgba-fallback-2.2.0.tgz#6d29491be5990a93173d47e7c76f5810b09402ba" @@ -5457,26 +6050,26 @@ postcss-color-rgba-fallback@^2.0.0: rgb-hex "^1.0.0" postcss-colormin@^2.1.8: - version "2.2.1" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.1.tgz#dc5421b6ae6f779ef6bfd47352b94abe59d0316b" + 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.4.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.4.1.tgz#45dce4d4e33b7d967b97a4d937f270ea98d2fe7a" + 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-cssnext@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/postcss-cssnext/-/postcss-cssnext-2.8.0.tgz#fbaef792185967457812f66355d0c24707bb8cf3" + version "2.10.0" + resolved "https://registry.yarnpkg.com/postcss-cssnext/-/postcss-cssnext-2.10.0.tgz#30e0dddcfb978eae2523a340aa2c8ba49c5d7103" dependencies: autoprefixer "^6.0.2" - caniuse-api "^1.3.2" + caniuse-api "^1.5.3" chalk "^1.1.1" pixrem "^3.0.0" pleeease-filters "^3.0.0" @@ -5487,12 +6080,15 @@ postcss-cssnext@^2.8.0: postcss-color-function "^2.0.0" postcss-color-gray "^3.0.0" postcss-color-hex-alpha "^2.0.0" + postcss-color-hsl "^1.0.5" postcss-color-hwb "^2.0.0" postcss-color-rebeccapurple "^2.0.0" + postcss-color-rgb "^1.1.4" postcss-color-rgba-fallback "^2.0.0" postcss-custom-media "^5.0.0" postcss-custom-properties "^5.0.0" postcss-custom-selectors "^3.0.0" + postcss-font-family-system-ui "^1.0.1" postcss-font-variant "^2.0.0" postcss-initial "^1.3.1" postcss-media-minmax "^2.1.0" @@ -5510,10 +6106,10 @@ postcss-custom-media@^5.0.0: postcss "^5.0.0" postcss-custom-properties@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-5.0.1.tgz#e07d4f6c78e547cf04274f120f490d236e33ea19" + version "5.0.2" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-5.0.2.tgz#9719d78f2da9cf9f53810aebc23d4656130aceb1" dependencies: - balanced-match "~0.1.0" + balanced-match "^0.4.2" postcss "^5.0.0" postcss-custom-selectors@^3.0.0: @@ -5531,8 +6127,8 @@ postcss-discard-comments@^2.0.4: postcss "^5.0.14" postcss-discard-duplicates@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.0.1.tgz#5fae3f1a71df3e19cffb37309d1a7dba56c4589c" + 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" @@ -5549,10 +6145,9 @@ postcss-discard-overridden@^0.1.1: postcss "^5.0.16" postcss-discard-unused@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.1.tgz#5d021f021a6ed6cec7310d4603794a75ddd53232" + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" dependencies: - flatten "1.0.2" postcss "^5.0.14" uniqs "^2.0.0" @@ -5563,6 +6158,14 @@ postcss-filter-plugins@^2.0.0: postcss "^5.0.4" uniqid "^4.0.0" +postcss-font-family-system-ui@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/postcss-font-family-system-ui/-/postcss-font-family-system-ui-1.0.2.tgz#3e1a5e3fb7e31e5e9e71439ccb0e8014556927c7" + dependencies: + lodash "^4.17.4" + postcss "^5.2.12" + postcss-value-parser "^3.3.0" + postcss-font-variant@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-2.0.1.tgz#7ca29103f59fa02ca3ace2ca22b2f756853d4ef8" @@ -5583,8 +6186,8 @@ postcss-import@^8.2.0: pkg-resolve "^0.1.7" postcss-initial@^1.3.1: - version "1.5.2" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-1.5.2.tgz#61eb5ad871e7991aadfb3f497b16fe61aea92ffb" + version "1.5.3" + resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-1.5.3.tgz#20c3e91c96822ddb1bed49508db96d56bac377d0" dependencies: lodash.template "^4.2.4" postcss "^5.0.19" @@ -5611,16 +6214,19 @@ postcss-merge-idents@^2.1.5: postcss-value-parser "^3.1.1" postcss-merge-longhand@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.1.tgz#ff59b5dec6d586ce2cea183138f55c5876fa9cdc" + 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.0.10" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.0.10.tgz#54b360be804e7e69a5c7222635247b92a3569e9b" + 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: @@ -5636,15 +6242,15 @@ postcss-minify-font-values@^1.0.2: postcss-value-parser "^3.0.2" postcss-minify-gradients@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.3.tgz#09d228148c942fa8126679de9ff7738b54919fe3" + 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.1.3" + postcss-value-parser "^3.3.0" postcss-minify-params@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.0.5.tgz#82d602643b8616a61fb3634d7ede0289836d67f9" + 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" @@ -5652,10 +6258,11 @@ postcss-minify-params@^1.0.4: uniqs "^2.0.0" postcss-minify-selectors@^2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.0.5.tgz#4e1f966fb49c95266804016ba9a3c6645bb601e0" + 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" @@ -5693,14 +6300,14 @@ postcss-nesting@^2.0.5: postcss "^5.0.19" postcss-normalize-charset@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.0.tgz#2fbd30e12248c442981d31ea2484d46fd0628970" + 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.7" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.7.tgz#6bd90d0a4bc5a1df22c26ea65c53257dc3829f4e" + 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" @@ -5708,8 +6315,8 @@ postcss-normalize-url@^3.0.7: postcss-value-parser "^3.2.3" postcss-ordered-values@^2.1.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.2.tgz#be8b511741fab2dac8e614a2302e9d10267b0771" + 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" @@ -5728,22 +6335,23 @@ postcss-pseudoelements@^3.0.0: postcss "^5.0.4" postcss-reduce-idents@^2.2.2: - version "2.3.0" - resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.3.0.tgz#a697b52953ed6825ffea404e26a4f105d8b8d569" + 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.0" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.0.tgz#8f739b938289ef2e48936d7101783e4741ca9bbb" + 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.3" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.3.tgz#fc193e435a973c10f9801c74700a830f79643343" + 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" @@ -5784,17 +6392,17 @@ postcss-selector-parser@^1.1.4: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.1.tgz#fdbf696103b12b0a64060e5610507f410491f7c8" +postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.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.5" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.5.tgz#46fc0363f01bab6a36a9abb01c229fcc45363094" + 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" @@ -5809,25 +6417,26 @@ postcss-unique-selectors@^2.0.2: 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.1.3, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.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.1.1" - resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.1.1.tgz#ea3fbe656c9738aa8729e2ee96ec2a46089b720f" + 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.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.19, postcss@^5.0.2, postcss@^5.0.21, postcss@^5.0.3, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.1.1, postcss@^5.2.0, postcss@^5.2.4: - version "5.2.4" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.4.tgz#8eb4bee3e5c4e091585b116df32d8db24a535f21" +postcss@^5.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.19, postcss@^5.0.2, postcss@^5.0.21, postcss@^5.0.3, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.1.1, postcss@^5.2.0, postcss@^5.2.12, postcss@^5.2.16: + version "5.2.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.16.tgz#732b3100000f9ff8379a48a53839ed097376ad57" dependencies: chalk "^1.1.3" js-base64 "^2.1.9" source-map "^0.5.6" - supports-color "^3.1.2" + supports-color "^3.2.3" prepend-http@^1.0.0, prepend-http@^1.0.1: version "1.0.4" @@ -5841,9 +6450,9 @@ pretty-bytes@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9" -private@^0.1.6, private@~0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.6.tgz#55c6a976d0f9bafb9924851350fe47b9b5fbb7c1" +private@^0.1.6: + version "0.1.7" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" process-nextick-args@~1.0.6: version "1.0.7" @@ -5871,12 +6480,18 @@ promise.pipe@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/promise.pipe/-/promise.pipe-3.0.0.tgz#b8f729867f54353996e6d8e86f3bbd56882e32a6" -promise@^7.0.3, promise@^7.1.1: +promise@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.1.1.tgz#489654c692616b8aa55b0724fa809bb7db49c5bf" dependencies: asap "~2.0.3" +prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@~15.5.7: + version "15.5.7" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.7.tgz#231c4f29cdd82e355011d4889386ca9059544dd1" + dependencies: + fbjs "^0.8.9" + proper-lockfile@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-1.2.0.tgz#ceff5dd89d3e5f10fb75e1e8e76bc75801a59c34" @@ -5890,12 +6505,12 @@ property-information@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/property-information/-/property-information-3.1.0.tgz#1581bf8a445dfbfef759775a86700e8dda18b4a1" -proxy-addr@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.2.tgz#b4cc5f22610d9535824c123aef9d3cf73c40ba37" +proxy-addr@~1.1.3: + version "1.1.4" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.4.tgz#27e545f6960a44a627d9b44467e35c1b6b4ce2f3" dependencies: forwarded "~0.1.0" - ipaddr.js "1.1.1" + ipaddr.js "1.3.0" prr@~0.0.0: version "0.0.0" @@ -5916,8 +6531,8 @@ public-encrypt@^4.0.0: randombytes "^2.0.1" pump@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.1.tgz#f1f1409fb9bd1085bbdb576b43b84ec4b5eadc1a" + version "1.0.2" + resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.2.tgz#3b3ee6512f94f0e575538c17995f9f16990a5d51" dependencies: end-of-stream "^1.1.0" once "^1.3.1" @@ -5926,33 +6541,29 @@ 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.2.4, punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" purdy@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/purdy/-/purdy-2.2.0.tgz#ad74be54b0e8b108d107aa7cbfba2a38d24168b6" + version "2.2.1" + resolved "https://registry.yarnpkg.com/purdy/-/purdy-2.2.1.tgz#76787564da04f8ef7e9672987bf1d21a726699c4" dependencies: chalk "0.4.x" hoek "2.x.x" - joi "^6.10.1" + joi "6.x.x" q@^1.1.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" + version "1.5.0" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" qs@4.x.x: version "4.0.0" resolved "https://registry.yarnpkg.com/qs/-/qs-4.0.0.tgz#c31d9b74ec27df75e543a86c78728ed8d4623607" -qs@6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.0.tgz#3b7848c03c2dece69a9522b0fae8c4126d745f3b" - -qs@^6.3.0, qs@~6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442" +qs@6.4.0, qs@^6.3.0, qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" query-string@^3.0.0: version "3.0.3" @@ -5961,8 +6572,8 @@ query-string@^3.0.0: strict-uri-encode "^1.0.0" query-string@^4.1.0, query-string@^4.2.2: - version "4.3.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.1.tgz#54baada6713eafc92be75c47a731f2ebd09cd11d" + version "4.3.2" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.2.tgz#ec0fd765f58a50031a3968c2431386f8947a5cdd" dependencies: object-assign "^4.1.0" strict-uri-encode "^1.0.0" @@ -5980,14 +6591,14 @@ querystringify@0.0.x: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c" queue@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/queue/-/queue-4.0.1.tgz#18bb2f4c1f8d99fb643da9fead89869256291617" + version "4.2.1" + resolved "https://registry.yarnpkg.com/queue/-/queue-4.2.1.tgz#5318ed8a227a9734e6bfeeb24a057782922751db" dependencies: inherits "~2.0.0" randomatic@^1.1.3: - version "1.1.5" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.5.tgz#5e9ef5f2d573c67bd2b8124ae90b5156e457840b" + version "1.1.6" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb" dependencies: is-number "^2.0.2" kind-of "^3.0.2" @@ -6000,26 +6611,26 @@ 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" -raw-body@^2.1.0: - version "2.1.7" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.1.7.tgz#adfeace2e4fb3098058014d08c072dcc59758774" +raw-body@^2.1.0, raw-body@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.2.0.tgz#994976cf6a5096a41162840492f0bdc5d6e7fb96" dependencies: bytes "2.4.0" - iconv-lite "0.4.13" + iconv-lite "0.4.15" unpipe "1.0.0" raw-loader@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" -rc@^1.0.1, rc@^1.1.0, rc@^1.1.2, rc@^1.1.6, rc@~1.1.0: - version "1.1.6" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.1.6.tgz#43651b76b6ae53b5c802f1151fa3fc3b059969c9" +rc@^1.0.1, rc@^1.1.0, rc@^1.1.2, rc@^1.1.6, rc@^1.1.7: + version "1.2.1" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" dependencies: deep-extend "~0.4.0" ini "~1.3.0" minimist "^1.2.0" - strip-json-comments "~1.0.4" + strip-json-comments "~2.0.1" react-deep-force-update@^2.0.1: version "2.0.1" @@ -6032,18 +6643,21 @@ react-document-title@^2.0.1: react-side-effect "^1.0.2" react-dom@^15.4.0: - version "15.4.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-15.4.1.tgz#d54c913261aaedb17adc20410d029dcc18a1344a" + version "15.5.4" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-15.5.4.tgz#ba0c28786fd52ed7e4f2135fe0288d462aef93da" dependencies: - fbjs "^0.8.1" + fbjs "^0.8.9" loose-envify "^1.1.0" object-assign "^4.1.0" + prop-types "~15.5.7" react-ga@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/react-ga/-/react-ga-2.1.2.tgz#7af206c5e8761d7176e15773fe826acdb70ac653" + version "2.2.0" + resolved "https://registry.yarnpkg.com/react-ga/-/react-ga-2.2.0.tgz#45235de1356e4d988d9b82214d615a08489c9291" dependencies: + create-react-class "^15.5.2" object-assign "^4.0.1" + prop-types "^15.5.6" react-gravatar@^2.6.1: version "2.6.1" @@ -6075,8 +6689,8 @@ react-icons@^2.2.3: react-icon-base "2.0.4" react-modal@^1.6.5: - version "1.6.5" - resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-1.6.5.tgz#f720d99bd81b1def5c2c32e0ffaa48bdaf484862" + version "1.7.3" + resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-1.7.3.tgz#9745448f280c92290ab1ab05c3d34ae708ef9ab3" dependencies: element-class "^0.2.0" exenv "1.2.0" @@ -6107,22 +6721,24 @@ react-router@^2.8.1: warning "^3.0.0" react-side-effect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-1.0.2.tgz#98e354decdbf0281e4223d87852d33e345eda561" + version "1.1.0" + resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-1.1.0.tgz#57209f7ebc940d55e0fda82fe51422654175d609" dependencies: - fbjs "0.1.0-alpha.10" + exenv "^1.2.1" + shallowequal "^0.2.2" react-typography@^0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/react-typography/-/react-typography-0.15.0.tgz#0c7680bcbb12a681950c2187df66c43aa4b02034" react@^15.4.0, react@^15.4.1: - version "15.4.1" - resolved "https://registry.yarnpkg.com/react/-/react-15.4.1.tgz#498e918602677a3983cd0fd206dfe700389a0dd6" + version "15.5.4" + resolved "https://registry.yarnpkg.com/react/-/react-15.5.4.tgz#fa83eb01506ab237cdc1c8c3b1cea8de012bf047" dependencies: - fbjs "^0.8.4" + fbjs "^0.8.9" loose-envify "^1.1.0" object-assign "^4.1.0" + prop-types "^15.5.7" read-all-stream@^3.0.0: version "3.1.0" @@ -6161,48 +6777,25 @@ read-pkg@^1.0.0: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.0, "readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.1.0, readable-stream@^2.1.5, readable-stream@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e" - dependencies: - buffer-shims "^1.0.0" - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - -readable-stream@~1.1.9: - version "1.1.13" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e" +readable-stream@^1.1.12, readable-stream@~1.1.9: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@~2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - -readable-stream@~2.1.4: - version "2.1.5" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" +readable-stream@^2.0.0, "readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6: + version "2.2.9" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.9.tgz#cf78ec6f4a6d1eb43d26488cac97f042e74b7fc8" dependencies: - buffer-shims "^1.0.0" + buffer-shims "~1.0.0" core-util-is "~1.0.0" inherits "~2.0.1" isarray "~1.0.0" process-nextick-args "~1.0.6" - string_decoder "~0.10.x" + string_decoder "~1.0.0" util-deprecate "~1.0.1" readdirp@^2.0.0: @@ -6220,18 +6813,19 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -"recursive-readdir@https://github.com/KyleAMathews/recursive-readdir.git": +"recursive-readdir@git+https://github.com/KyleAMathews/recursive-readdir.git": version "2.1.0" - resolved "https://github.com/KyleAMathews/recursive-readdir.git#fbfe835d2e75a977db2d1e794214aa26ecdb0671" + resolved "git+https://github.com/KyleAMathews/recursive-readdir.git#fbfe835d2e75a977db2d1e794214aa26ecdb0671" dependencies: minimatch "3.0.2" redbox-react@^1.2.5: - version "1.3.2" - resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.3.2.tgz#bc12ca4f88705d29aaace7a12183d3ec14dd33f1" + version "1.3.6" + resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.3.6.tgz#70314c57c066257eb70b0a24dc794b5cef4f1c4e" dependencies: error-stack-parser "^1.3.6" object-assign "^4.0.1" + prop-types "^15.5.4" redent@^1.0.0: version "1.0.0" @@ -6249,18 +6843,42 @@ reduce-css-calc@^1.2.6, reduce-css-calc@^1.2.7: reduce-function-call "^1.0.1" reduce-function-call@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.1.tgz#fa02e126e695824263cab91d3a5b0fdc1dd27a9a" + 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-devtools-instrument@^1.3.3: + version "1.8.0" + resolved "https://registry.yarnpkg.com/redux-devtools-instrument/-/redux-devtools-instrument-1.8.0.tgz#db1840ed3d8152af6792913698e3424c119de9aa" + dependencies: + lodash "^4.2.0" + symbol-observable "^1.0.2" + +redux@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/redux/-/redux-3.6.0.tgz#887c2b3d0b9bd86eca2be70571c27654c19e188d" dependencies: - balanced-match "~0.1.0" + lodash "^4.2.1" + lodash-es "^4.2.1" + loose-envify "^1.1.0" + symbol-observable "^1.0.2" regenerate@^1.2.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.1.tgz#0300203a5d2fdcf89116dce84275d011f5903f33" + version "1.3.2" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" regenerator-runtime@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz#257f41961ce44558b18f7814af48c17559f9faeb" + version "0.10.3" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.3.tgz#8c4367a904b51ea62a908ac310bf99ff90a82a3e" + +regenerator-transform@0.9.11: + version "0.9.11" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.11.tgz#3a7d067520cb7b7176769eb5ff868691befe1283" + dependencies: + babel-runtime "^6.18.0" + babel-types "^6.19.0" + private "^0.1.6" regex-cache@^0.4.2: version "0.4.3" @@ -6290,8 +6908,8 @@ regexpu-core@^2.0.0: regjsparser "^0.1.4" registry-auth-token@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.1.0.tgz#997c08256e0c7999837b90e944db39d8a790276b" + version "3.1.2" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.1.2.tgz#1b9e51a185c930da34a9894b12a52ea998f1adaf" dependencies: rc "^1.1.6" @@ -6312,12 +6930,12 @@ regjsparser@^0.1.4: jsesc "~0.5.0" remark-html@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/remark-html/-/remark-html-5.0.1.tgz#9507fb51e8ebe2abf3b5a5c3337562c01f58f413" + version "5.2.0" + resolved "https://registry.yarnpkg.com/remark-html/-/remark-html-5.2.0.tgz#c67151f1168354b73b1c3650e678c398267785f6" dependencies: hast-util-sanitize "^1.0.0" - hast-util-to-html "^2.0.0" - mdast-util-to-hast "^1.0.0" + hast-util-to-html "^3.0.0" + mdast-util-to-hast "^2.1.1" xtend "^4.0.1" remark-parse@^1.1.0: @@ -6335,8 +6953,8 @@ remark-parse@^1.1.0: vfile-location "^2.0.0" remark-parse@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-2.2.0.tgz#92a8e7750d4fbfd53cd460adad686014f2a7f43b" + version "2.3.0" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-2.3.0.tgz#ced58bfbef9999374f9ff33fbc2e63fe2b0c5c37" dependencies: collapse-white-space "^1.0.2" has "^1.0.1" @@ -6369,8 +6987,8 @@ remark-stringify@^1.1.0: unherit "^1.0.4" remark-stringify@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-2.3.0.tgz#5c5d1fd69fa39d185d62e675f545ee2fd48df87d" + version "2.4.0" + resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-2.4.0.tgz#38dd286153139a082e9d9f17e2d49919792cec2f" dependencies: ccount "^1.0.0" is-alphanumeric "^1.0.0" @@ -6378,7 +6996,7 @@ remark-stringify@^2.2.0: is-whitespace-character "^1.0.0" longest-streak "^2.0.1" markdown-escapes "^1.0.0" - markdown-table "^1.0.0" + markdown-table "^1.1.0" mdast-util-compact "^1.0.0" parse-entities "^1.0.2" repeat-string "^1.5.4" @@ -6404,13 +7022,66 @@ remark@^6.2.0: remark-stringify "^2.2.0" unified "^5.0.0" +remote-redux-devtools@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/remote-redux-devtools/-/remote-redux-devtools-0.5.7.tgz#bc3219ed4eef347a5b4162acad8c9424e692df02" + dependencies: + jsan "^3.1.5" + querystring "^0.2.0" + redux-devtools-instrument "^1.3.3" + remotedev-utils "^0.1.1" + socketcluster-client "^5.1.1" + +remotedev-serialize@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/remotedev-serialize/-/remotedev-serialize-0.1.0.tgz#074768e98cb7aa806f45994eeb0c8af95120ee32" + dependencies: + jsan "^3.1.0" + +remotedev-server@^0.3.0-beta-3: + version "0.3.0-beta-3" + resolved "https://registry.yarnpkg.com/remotedev-server/-/remotedev-server-0.3.0-beta-3.tgz#61da48332b333064032de3551d78b17a8afadc19" + dependencies: + apollo-server "^0.3.3" + body-parser "^1.15.0" + chalk "^1.1.3" + cors "^2.7.1" + ejs "^2.4.1" + express "^4.13.3" + getport "^0.1.0" + graphql "^0.8.0" + graphql-tools "^0.8.1" + js-data "^2.9.0" + knex "0.11.10" + lodash "^4.15.0" + minimist "^1.2.0" + morgan "^1.7.0" + node-uuid "^1.4.0" + semver "^5.3.0" + socketcluster "^5.0.4" + sqlite3 "^3.1.8" + +remotedev-utils@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/remotedev-utils/-/remotedev-utils-0.1.3.tgz#6e3f6611d0f58cecb100fc506dd1009af53dc955" + dependencies: + get-params "^0.1.2" + jsan "^3.1.5" + lodash "^4.0.0" + remotedev-serialize "^0.1.0" + shortid "^2.2.6" + +remove-trailing-separator@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4" + 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, repeat-string@^1.5.4: - version "1.5.4" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.5.4.tgz#64ec0c91e0f4b475f90d5b643651e3e6e5b6c2d5" + 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" @@ -6426,18 +7097,18 @@ replace-ext@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" -request@2.x, request@^2.58.0, request@^2.67.0, request@^2.74.0, request@^2.79.0: - version "2.79.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" +request@^2.58.0, request@^2.65.0, request@^2.67.0, request@^2.74.0, request@^2.79.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.11.0" + 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 "~2.0.6" + har-validator "~4.2.1" hawk "~3.1.3" http-signature "~1.1.0" is-typedarray "~1.0.0" @@ -6445,10 +7116,12 @@ request@2.x, request@^2.58.0, request@^2.67.0, request@^2.74.0, request@^2.79.0: json-stringify-safe "~5.0.1" mime-types "~2.1.7" oauth-sign "~0.8.1" - qs "~6.3.0" + 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.4.1" + tunnel-agent "^0.6.0" uuid "^3.0.0" "require-like@>= 0.1.1": @@ -6475,12 +7148,21 @@ resolve-from@^2.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" resolve@^1.1.6, resolve@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + version "1.3.2" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235" + dependencies: + path-parse "^1.0.5" + +restore-cursor@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" + dependencies: + exit-hook "^1.0.0" + onetime "^1.0.0" retry@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.0.tgz#649e15ca408422d98318161935e7f7d652d435dd" + version "0.10.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" rgb-hex@^1.0.0: version "1.0.0" @@ -6496,9 +7178,9 @@ right-align@^0.1.1: dependencies: align-text "^0.1.1" -rimraf@2, rimraf@^2.2.6, rimraf@^2.2.8, rimraf@^2.3.2, rimraf@^2.4.4, rimraf@^2.5.4, rimraf@~2.5.0, rimraf@~2.5.1: - version "2.5.4" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" +rimraf@2, rimraf@^2.2.6, rimraf@^2.2.8, rimraf@^2.3.2, rimraf@^2.4.4, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" dependencies: glob "^7.0.5" @@ -6510,30 +7192,35 @@ ripemd160@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-1.0.1.tgz#93a4bbd4942bc574b69a8fa57c71de10ecca7d6e" -rmdir@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/rmdir/-/rmdir-1.2.0.tgz#4fe0357cb06168c258e73e968093dc4e8a0f3253" - dependencies: - node.flow "1.2.3" - -rollup@^0.36.0: - version "0.36.3" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.36.3.tgz#c89ac479828924ff8f69c1d44541cb4ea2fc11fc" +rollup@^0.36.3: + version "0.36.4" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.36.4.tgz#a224494c5386c1d73d38f7bb86f69f5eb011a3d2" dependencies: source-map-support "^0.4.0" rsvp@^3.0.13, rsvp@^3.0.18: - version "3.3.3" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.3.3.tgz#34633caaf8bc66ceff4be3c2e1dffd032538a813" + version "3.5.0" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.5.0.tgz#a62c573a4ae4e1dfd0697ebc6242e79c681eaa34" + +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@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" safe-buffer@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" sane@^1.3.3: - version "1.4.1" - resolved "https://registry.yarnpkg.com/sane/-/sane-1.4.1.tgz#88f763d74040f5f0c256b6163db399bf110ac715" + version "1.6.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-1.6.0.tgz#9610c452307a135d29c1fdfe2547034180c46775" dependencies: + anymatch "^1.3.0" exec-sh "^0.2.0" fb-watchman "^1.8.0" minimatch "^3.0.2" @@ -6542,16 +7229,85 @@ sane@^1.3.3: watch "~0.10.0" sanitize-html@^1.13.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.13.0.tgz#4ee17cbec516bfe32f2ce6686a569d7e6b4f3631" + version "1.14.1" + resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.14.1.tgz#730ffa2249bdf18333effe45b286173c9c5ad0b8" dependencies: htmlparser2 "^3.9.0" regexp-quote "0.0.0" xtend "^4.0.0" sax@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" + version "1.2.2" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" + +sc-auth@~3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/sc-auth/-/sc-auth-3.2.1.tgz#91729995e3a38cbd5e76151ba6bba8137409725f" + dependencies: + jsonwebtoken "7.2.1" + sc-errors "1.0.x" + +sc-broker-cluster@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/sc-broker-cluster/-/sc-broker-cluster-4.0.0.tgz#d0f57f1e33104adc24a2a1c1d4fc5209ab6a0d2e" + dependencies: + async "2.0.0" + sc-broker "2.3.x" + sc-channel "1.0.x" + sc-domain "1.x.x" + sc-hasher "1.x.x" + socketcluster-server "5.x.x" + +sc-broker@2.3.x: + version "2.3.2" + resolved "https://registry.yarnpkg.com/sc-broker/-/sc-broker-2.3.2.tgz#4215c187319ae6b277025ff887dcf6a9d73d1d98" + dependencies: + expirymanager "0.9.x" + fleximap "0.9.x" + ncom "0.11.x" + sc-domain "1.x.x" + +sc-channel@1.0.x, sc-channel@~1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/sc-channel/-/sc-channel-1.0.6.tgz#b38bd47a993e78290fbc53467867f6b2a0a08639" + dependencies: + sc-emitter "1.x.x" + +sc-domain@1.x.x, sc-domain@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sc-domain/-/sc-domain-1.0.1.tgz#aa402509b879ba76012e9732dc1d07f653b834bc" + +sc-emitter@1.x.x, sc-emitter@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/sc-emitter/-/sc-emitter-1.1.0.tgz#ef119d4222f4c64f887b486964ef11116cdd0e75" + dependencies: + component-emitter "1.2.0" + +sc-errors@1.0.x: + version "1.0.6" + resolved "https://registry.yarnpkg.com/sc-errors/-/sc-errors-1.0.6.tgz#80e77c36348b2c88bbe7ead8dc63be61f34b7103" + dependencies: + cycle "1.0.3" + +sc-errors@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/sc-errors/-/sc-errors-1.1.0.tgz#dc2f83df68ce64f6a96cc9c5e2015570ad272dbe" + dependencies: + cycle "1.0.3" + +sc-formatter@3.0.x, sc-formatter@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/sc-formatter/-/sc-formatter-3.0.0.tgz#c91b1fe56c260abd5a6a2e6af98c724bc7998a38" + +sc-hasher@1.x.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/sc-hasher/-/sc-hasher-1.0.0.tgz#bb22ae1f5a295b847c70aff4515536224950ff11" + +sc-simple-broker@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sc-simple-broker/-/sc-simple-broker-2.0.0.tgz#2de6fd35235a0b76d7ae6349d1c7f9dd1e18091c" + dependencies: + sc-channel "~1.0.6" scroll-behavior@^0.8.0: version "0.8.2" @@ -6582,7 +7338,7 @@ semver-truncate@^1.0.0: dependencies: semver "^5.3.0" -"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@~5.3.0: +"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" @@ -6590,23 +7346,23 @@ semver@^4.0.3, semver@^4.3.3: version "4.3.6" resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" -send@0.14.1: - version "0.14.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.14.1.tgz#a954984325392f51532a7760760e459598c89f7a" +send@0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.15.1.tgz#8a02354c26e6f5cca700065f5f0cdeba90ec7b5f" dependencies: - debug "~2.2.0" + debug "2.6.1" depd "~1.1.0" destroy "~1.0.4" encodeurl "~1.0.1" escape-html "~1.0.3" - etag "~1.7.0" - fresh "0.3.0" - http-errors "~1.5.0" + etag "~1.8.0" + fresh "0.5.0" + http-errors "~1.6.1" mime "1.3.4" - ms "0.7.1" + ms "0.7.2" on-finished "~2.3.0" range-parser "~1.2.0" - statuses "~1.3.0" + statuses "~1.3.1" serve-index@^1.7.2: version "1.8.0" @@ -6620,14 +7376,14 @@ serve-index@^1.7.2: mime-types "~2.1.11" parseurl "~1.3.1" -serve-static@~1.11.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.1.tgz#d6cce7693505f733c759de57befc1af76c0f0805" +serve-static@1.12.1: + version "1.12.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.1.tgz#7443a965e3ced647aceb5639fa06bf4d1bbe0039" dependencies: encodeurl "~1.0.1" escape-html "~1.0.3" parseurl "~1.3.1" - send "0.14.1" + send "0.15.1" serviceworker-cache-polyfill@^4.0.0: version "4.0.0" @@ -6649,32 +7405,52 @@ 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.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.1.tgz#52009b27888c4dc48f591949c0a8275834c1ca7e" +setprototypeof@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.2.tgz#81a552141ec104b88e89ce383103ad5c66564d08" + +setprototypeof@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" sha.js@2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba" sha.js@^2.3.6: - version "2.4.5" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.5.tgz#27d171efcc82a118b99639ff581660242b506e7c" + version "2.4.8" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" dependencies: inherits "^2.0.1" -sharp@^0.17.0, sharp@^0.17.1: - version "0.17.1" - resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.17.1.tgz#aeb8ab921691b016a00f042d61f152144cd20f9d" +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" + +sharp@^0.17.0, sharp@^0.17.3: + version "0.17.3" + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.17.3.tgz#484cd2a70c900370948dcc43e165f78306bff48a" dependencies: caw "^2.0.0" color "^1.0.3" got "^6.7.1" - nan "^2.5.0" + nan "^2.5.1" semver "^5.3.0" tar "^2.2.1" -shelljs@0.7.0, shelljs@^0.7.0: +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" + +shelljs@0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.0.tgz#3f6f2e4965cec565f65ff3861d644f879281a576" dependencies: @@ -6683,8 +7459,12 @@ shelljs@0.7.0, shelljs@^0.7.0: rechoir "^0.6.2" shellsubstitute@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/shellsubstitute/-/shellsubstitute-1.1.0.tgz#970b2459c5af53deb34284f15a4af95f50911c69" + version "1.2.0" + resolved "https://registry.yarnpkg.com/shellsubstitute/-/shellsubstitute-1.2.0.tgz#e4f702a50c518b0f6fe98451890d705af29b6b70" + +shortid@^2.2.6: + version "2.2.8" + resolved "https://registry.yarnpkg.com/shortid/-/shortid-2.2.8.tgz#033b117d6a2e975804f6f0969dbe7d3d0b355131" shot@1.x.x: version "1.7.0" @@ -6693,12 +7473,16 @@ shot@1.x.x: hoek "2.x.x" sift@^3.2.6: - version "3.2.6" - resolved "https://registry.yarnpkg.com/sift/-/sift-3.2.6.tgz#ae1b7493614df5fb5f6557732d4f4f026ef340c8" + version "3.3.0" + resolved "https://registry.yarnpkg.com/sift/-/sift-3.3.0.tgz#40b2edbc6d22a4f3339dcc677c90626bf44c08fb" signal-exit@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.1.tgz#5a4c884992b63a7acd9badb7894c3ee9cfccad81" + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +simple-backoff@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-backoff/-/simple-backoff-1.0.0.tgz#a4fa290ec01969c07ca136fe8bbfb40e0ef35ac2" simple-swizzle@^0.2.2: version "0.2.2" @@ -6726,12 +7510,61 @@ sntp@1.x.x: dependencies: hoek "2.x.x" +socketcluster-client@^5.1.1: + version "5.3.0" + resolved "https://registry.yarnpkg.com/socketcluster-client/-/socketcluster-client-5.3.0.tgz#3491f5e7319a9361c54de6f718582b7ffec1fed1" + dependencies: + base-64 "0.1.0" + linked-list "0.1.0" + lodash.clonedeep "4.5.0" + querystring "0.2.0" + sc-channel "1.0.x" + sc-emitter "1.x.x" + sc-errors "1.0.x" + sc-formatter "3.0.x" + ws "1.1.2" + +socketcluster-server@5.x.x, socketcluster-server@~5.10.2: + version "5.10.2" + resolved "https://registry.yarnpkg.com/socketcluster-server/-/socketcluster-server-5.10.2.tgz#d4ce2316b54b5f50e8d771382ffc72bc16e022dd" + dependencies: + async "2.0.0" + base64id "0.1.0" + lodash.clonedeep "4.5.0" + sc-auth "~3.2.1" + sc-domain "~1.0.1" + sc-emitter "~1.1.0" + sc-errors "~1.1.0" + sc-formatter "~3.0.0" + sc-simple-broker "~2.0.0" + uuid "3.0.1" + uws "0.14.1" + ws "1.1.1" + +socketcluster@^5.0.4: + version "5.9.1" + resolved "https://registry.yarnpkg.com/socketcluster/-/socketcluster-5.9.1.tgz#110ab264e3325c6cf5ecfc1a04c4343a9d806844" + dependencies: + async "2.0.0" + base64id "0.1.0" + fs-extra "2.0.0" + inquirer "1.1.3" + minimist "1.1.0" + sc-auth "~3.2.1" + sc-broker-cluster "~4.0.0" + sc-domain "~1.0.1" + sc-emitter "~1.1.0" + sc-errors "~1.1.0" + socketcluster-server "~5.10.2" + uid-number "0.0.5" + uuid "3.0.1" + sockjs-client@^1.0.3: - version "1.1.1" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.1.tgz#284843e9a9784d7c474b1571b3240fca9dda4bb0" + version "1.1.2" + resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.2.tgz#f0212a8550e4c9468c8cceaeefd2e3493c033ad5" dependencies: debug "^2.2.0" - eventsource "~0.1.6" + eventsource "0.1.6" faye-websocket "~0.11.0" inherits "^2.0.1" json3 "^3.3.2" @@ -6750,15 +7583,19 @@ sort-keys@^1.0.0: dependencies: is-plain-obj "^1.0.0" -source-list-map@^0.1.4, source-list-map@~0.1.0, source-list-map@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.7.tgz#d4b5ce2a46535c72c7e8527c71a77d250618172e" +source-list-map@^0.1.7, source-list-map@~0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" + +source-list-map@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-1.1.1.tgz#1a33ac210ca144d1e561f906ebccab5669ff4cb4" source-map-support@^0.4.0, source-map-support@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.4.tgz#0df5765a05a560c91bc8f8641cf79f2affc0322e" + version "0.4.14" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.14.tgz#9d4463772598b86271b4f523f6c1f4e02a7d6aef" dependencies: - source-map "^0.5.3" + source-map "^0.5.6" source-map-support@~0.2.8: version "0.2.10" @@ -6789,8 +7626,8 @@ source-map@~0.1.38: amdefine ">=0.0.4" space-separated-tokens@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.0.0.tgz#1cd6d40b439ee38a61c36582fb997b9b722a3c8d" + version "1.1.0" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.0.tgz#9e8c60407aa527742cd9eaee2541dec639f1269b" dependencies: trim "0.0.1" @@ -6798,6 +7635,13 @@ sparkles@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" +spawn-sync@^1.0.15: + version "1.0.15" + resolved "https://registry.yarnpkg.com/spawn-sync/-/spawn-sync-1.0.15.tgz#b00799557eb7fb0c8376c29d44e8a1ea67e57476" + dependencies: + concat-stream "^1.4.7" + os-shim "^0.1.2" + spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" @@ -6816,6 +7660,13 @@ sprintf-js@^1.0.3, sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" +sqlite3@^3.1.8: + version "3.1.8" + resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-3.1.8.tgz#4cbcf965d8b901d1b1015cbc7fc415aae157dfaa" + dependencies: + nan "~2.4.0" + node-pre-gyp "~0.6.31" + squeak@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/squeak/-/squeak-1.3.0.tgz#33045037b64388b567674b84322a6521073916c3" @@ -6825,8 +7676,8 @@ squeak@^1.0.0: lpad-align "^1.0.1" sshpk@^1.7.0: - version "1.10.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0" + version "1.11.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.11.0.tgz#2d8d5ebb4a6fab28ffba37fa62a90f4a3ea59d77" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -6863,16 +7714,18 @@ statehood@2.x.x: joi "6.x.x" static-site-generator-webpack-plugin@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-3.1.0.tgz#7d722a46bbe7ab94bb04ec7912f4677ba3a437da" + version "3.4.1" + resolved "https://registry.yarnpkg.com/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-3.4.1.tgz#6ee22468830bc546798a37e0fca6fd699cc93b81" dependencies: bluebird "^3.0.5" + cheerio "^0.22.0" eval "^0.1.0" - webpack-sources "^0.1.2" + url "^0.11.0" + webpack-sources "^0.2.0" -"statuses@>= 1.3.0 < 2", statuses@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.0.tgz#8e55758cb20e7682c1f4fce8dcab30bf01d1e07a" +"statuses@>= 1.3.1 < 2", statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" stream-browserify@^2.0.1: version "2.0.1" @@ -6893,12 +7746,12 @@ stream-combiner2@^1.1.1: readable-stream "^2.0.2" stream-http@^2.3.1: - version "2.5.0" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.5.0.tgz#585eee513217ed98fe199817e7313b6f772a6802" + version "2.7.0" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.0.tgz#cec1f4e3b494bc4a81b451808970f8b20b4ed5f6" dependencies: - builtin-status-codes "^2.0.0" + builtin-status-codes "^3.0.0" inherits "^2.0.1" - readable-stream "^2.1.0" + readable-stream "^2.2.6" to-arraybuffer "^1.0.0" xtend "^4.0.0" @@ -6922,12 +7775,21 @@ string_decoder@^0.10.25, string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" +string_decoder@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.0.tgz#f06f41157b664d86069f84bdbdc9b0d8ab281667" + dependencies: + buffer-shims "~1.0.0" + stringify-entities@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-1.2.0.tgz#b53ab7fc33972cab0d7a1006a82f1318af4572e1" + version "1.3.0" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-1.3.0.tgz#2244a516c4f1e8e01b73dad01023016776abd917" dependencies: character-entities-html4 "^1.0.0" character-entities-legacy "^1.0.0" + has "^1.0.1" + is-alphanumerical "^1.0.0" + is-hexadecimal "^1.0.0" stringstream@~0.0.4: version "0.0.5" @@ -6977,9 +7839,9 @@ strip-indent@^1.0.1: dependencies: get-stdin "^4.0.1" -strip-json-comments@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" +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" strip-outer@^1.0.0: version "1.0.0" @@ -6988,10 +7850,10 @@ strip-outer@^1.0.0: escape-string-regexp "^1.0.2" style-loader@^0.13.0: - version "0.13.1" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.13.1.tgz#468280efbc0473023cd3a6cd56e33b5a1d7fc3a9" + version "0.13.2" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.13.2.tgz#74533384cf698c7104c7951150b49717adc2f3bb" dependencies: - loader-utils "^0.2.7" + loader-utils "^1.0.2" subtext@1.x.x: version "1.1.1" @@ -7014,27 +7876,27 @@ 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.1.0, supports-color@^3.1.1, supports-color@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" +supports-color@^3.1.0, supports-color@^3.1.1, 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" svgo@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.1.tgz#287320fed972cb097e72c2bb1685f96fe08f8034" + 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.2.1" - js-yaml "~3.6.1" + csso "~2.3.1" + js-yaml "~3.7.0" mkdirp "~0.5.1" sax "~1.2.1" whet.extend "~0.9.9" sw-precache@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/sw-precache/-/sw-precache-5.0.0.tgz#0e3ef85bd8666dfc72f4dd0f89d3abcb3543a2cf" + version "5.1.0" + resolved "https://registry.yarnpkg.com/sw-precache/-/sw-precache-5.1.0.tgz#0d79a0574fc85dc425340dc457dc45d4c5c2c9d5" dependencies: dom-urls "^1.1.0" es6-promise "^4.0.5" @@ -7048,39 +7910,48 @@ sw-precache@^5.0.0: update-notifier "^1.0.3" sw-toolbox@^3.4.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/sw-toolbox/-/sw-toolbox-3.5.1.tgz#99cbd5783a37a271ce514fd4c3022144b3169052" + version "3.6.0" + resolved "https://registry.yarnpkg.com/sw-toolbox/-/sw-toolbox-3.6.0.tgz#26df1d1c70348658e4dea2884319149b7b3183b5" dependencies: path-to-regexp "^1.0.1" serviceworker-cache-polyfill "^4.0.0" +symbol-observable@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d" + symbol@^0.2.1: version "0.2.3" resolved "https://registry.yarnpkg.com/symbol/-/symbol-0.2.3.tgz#3b9873b8a901e47c6efe21526a3ac372ef28bbc7" -systemjs-builder@0.15.32, systemjs-builder@^0.15.20: - version "0.15.32" - resolved "https://registry.yarnpkg.com/systemjs-builder/-/systemjs-builder-0.15.32.tgz#66795f104792b0302eba40950f29ed53a791cc3e" +systemjs-builder@0.16.4: + version "0.16.4" + resolved "https://registry.yarnpkg.com/systemjs-builder/-/systemjs-builder-0.16.4.tgz#516b3451c191fa17eb598f6e0254990b9aa97432" dependencies: - babel-core "^6.9.0" - babel-plugin-transform-cjs-system-wrapper "^0.2.1" + babel-core "^6.18.2" + babel-plugin-transform-amd-system-wrapper "^0.3.3" + babel-plugin-transform-cjs-system-wrapper "^0.6.0" babel-plugin-transform-es2015-modules-systemjs "^6.6.5" - babel-plugin-transform-global-system-wrapper "0.0.1" - babel-plugin-transform-system-register "0.0.1" + babel-plugin-transform-global-system-wrapper "^0.3.0" + babel-plugin-transform-system-register "^0.0.1" bluebird "^3.3.4" data-uri-to-buffer "0.0.4" es6-template-strings "^2.0.0" glob "^7.0.3" mkdirp "^0.5.1" - rollup "^0.36.0" + rollup "^0.36.3" source-map "^0.5.3" - systemjs "^0.19.39" + systemjs "^0.19.46" traceur "0.0.105" uglify-js "^2.6.1" -systemjs@0.19.39, systemjs@^0.19.39: - version "0.19.39" - resolved "https://registry.yarnpkg.com/systemjs/-/systemjs-0.19.39.tgz#e513e6f91a25a37b8b607c51c7989ee0d67b9356" +systemjs@0.20.10: + version "0.20.10" + resolved "https://registry.yarnpkg.com/systemjs/-/systemjs-0.20.10.tgz#53ece512717fa10fcbf67b4e95fdb7c094219be8" + +systemjs@^0.19.46: + version "0.19.47" + resolved "https://registry.yarnpkg.com/systemjs/-/systemjs-0.19.47.tgz#c8c93937180f3f5481c769cd2720763fb4a31c6f" dependencies: when "^3.7.5" @@ -7089,25 +7960,26 @@ tapable@^0.1.8, tapable@~0.1.8: resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz#29c35707c2b70e50d07482b5d202e8ed446dafd4" tar-fs@^1.13.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.14.0.tgz#f99cc074bf33bed21cd921a21720797bb18e6c96" + version "1.15.2" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.15.2.tgz#761f5b32932c7b39461a60d537faea0d8084830c" dependencies: - mkdirp "^0.5.0" + chownr "^1.0.1" + mkdirp "^0.5.1" pump "^1.0.0" tar-stream "^1.1.2" -tar-pack@~3.1.0: - version "3.1.4" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.1.4.tgz#bc8cf9a22f5832739f12f3910dac1eb97b49708c" +tar-pack@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" 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" + 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-stream@^1.1.1, tar-stream@^1.1.2: version "1.5.2" @@ -7118,7 +7990,7 @@ tar-stream@^1.1.1, tar-stream@^1.1.2: readable-stream "^2.0.0" xtend "^4.0.0" -tar@^2.2.1, tar@~2.2.0, tar@~2.2.1: +tar@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" dependencies: @@ -7127,8 +7999,8 @@ tar@^2.2.1, tar@~2.2.0, tar@~2.2.1: inherits "2" tcomb@^3.2.13: - version "3.2.15" - resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-3.2.15.tgz#09e40f447976d1d9c07ff465b8377342a8fe67e1" + version "3.2.20" + resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-3.2.20.tgz#823e689dcf3518d82c4b6c890a822aa6916692cd" tempfile@^1.0.0: version "1.1.1" @@ -7158,6 +8030,16 @@ through2@^2.0.0, through2@~2.0.0: readable-stream "^2.1.5" xtend "~4.0.1" +"through@>=2.2.7 <3", through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +tildify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.0.0.tgz#2a021db5e8fbde0a8f8b4df37adaa8fb1d39d7dd" + dependencies: + user-home "^1.0.0" + time-stamp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" @@ -7167,8 +8049,8 @@ timed-out@^3.0.0: resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217" timed-out@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.0.tgz#b0fb98d7fed4f36b028698122769c07ef87a8690" + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" timers-browserify@^2.0.2: version "2.0.2" @@ -7180,6 +8062,12 @@ tinytim@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/tinytim/-/tinytim-0.1.1.tgz#c968a1e5559ad9553224ef7627bab34e3caef8a8" +tmp@^0.0.29: + version "0.0.29" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.29.tgz#f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0" + dependencies: + os-tmpdir "~1.0.1" + tmpl@1.0.x: version "1.0.4" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" @@ -7198,9 +8086,9 @@ to-fast-properties@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" -toml@^2.2.2: - version "2.3.0" - resolved "https://registry.yarnpkg.com/toml/-/toml-2.3.0.tgz#ee1b84beb08e2a813dd83bf2fc0d48470f0d727e" +toml@^2.2.2, toml@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/toml/-/toml-2.3.2.tgz#5eded5ca42887924949fd06eb0e955656001e834" topo@1.x.x: version "1.1.0" @@ -7214,9 +8102,11 @@ topo@2.x.x: dependencies: hoek "4.x.x" -tough-cookie@~2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.1.tgz#99c77dfbb7d804249e8a299d4cb0fd81fef083fd" +tough-cookie@^2.2.1, tough-cookie@~2.3.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" + dependencies: + punycode "^1.4.1" tracer@^0.8.7: version "0.8.7" @@ -7237,8 +8127,8 @@ traceur@0.0.105: source-map-support "~0.2.8" trim-lines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-1.0.0.tgz#c30caf5d15513443f44ce86e5cf338ec3b1fb25d" + version "1.1.0" + resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-1.1.0.tgz#9926d03ede13ba18f7d42222631fb04c79ff26fe" trim-newlines@^1.0.0: version "1.0.0" @@ -7250,9 +8140,13 @@ trim-repeated@^1.0.0: dependencies: escape-string-regexp "^1.0.2" +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + trim-trailing-lines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.0.0.tgz#dbb638247a2232f669121c458fccd48fc2670c8e" + version "1.1.0" + resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.0.tgz#7aefbb7808df9d669f6da2e438cac8c46ada7684" trim@0.0.1: version "0.0.1" @@ -7266,25 +8160,35 @@ 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.4.0, tunnel-agent@~0.4.1: +tunnel-agent@^0.4.0: version "0.4.3" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" +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" + tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.3" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.3.tgz#3da382f670f25ded78d7b3d1792119bca0b7132d" + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" -type-is@~1.6.13: - version "1.6.13" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.13.tgz#6e83ba7bc30cd33a7bb0b7fb00737a2085bf9d08" +type-is@~1.6.14: + 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.11" + mime-types "~2.1.15" type-of@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/type-of/-/type-of-2.0.1.tgz#e72a1741896568e9f628378d816d6912f7f23972" +typed-graphql@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-graphql/-/typed-graphql-1.0.2.tgz#4c0f788775d552df4d4ec3d73f25469252f40fb8" + typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -7310,8 +8214,8 @@ typography@^0.15.0: typography-normalize "^0.14.0" ua-parser-js@^0.7.9: - version "0.7.10" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.10.tgz#917559ddcce07cbc09ece7d80495e4c268f4ef9f" + version "0.7.12" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.12.tgz#04c81a99bdd5dc52263ea29d24c6bf8d4818a4bb" uc.micro@^1.0.1: version "1.0.3" @@ -7330,10 +8234,18 @@ 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" -uid-number@~0.0.6: +uid-number@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.5.tgz#5a3db23ef5dbd55b81fce0ec9a2ac6fccdebb81e" + +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.0.x: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" + unc-path-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" @@ -7353,10 +8265,8 @@ unherit@^1.0.4: xtend "^4.0.1" "unicode@>= 0.3.1": - version "0.6.1" - resolved "https://registry.yarnpkg.com/unicode/-/unicode-0.6.1.tgz#ec69e3c4537e2b9650b826133bcb068f0445d0bc" - dependencies: - bufferstream ">= 0.6.2" + version "9.0.1" + resolved "https://registry.yarnpkg.com/unicode/-/unicode-9.0.1.tgz#104706272c6464c574801be1b086f7245cf25158" unified@^4.1.1: version "4.2.1" @@ -7387,8 +8297,8 @@ uniq@^1.0.1: resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" uniqid@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.0.tgz#33d9679f65022f48988a03fd24e7dcaf8f109eca" + version "4.1.1" + resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" dependencies: macaddress "^0.2.8" @@ -7417,13 +8327,17 @@ unist-util-find@^1.0.1: remark "^5.0.1" unist-util-visit "^1.1.0" +unist-util-generated@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.0.tgz#8c95657ff12b32eaffe0731fbb37da6995fae01b" + unist-util-is@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-2.0.0.tgz#e536472c4f78739e164d0859fc3201b97cf46e7c" unist-util-modify-children@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unist-util-modify-children/-/unist-util-modify-children-1.0.0.tgz#2301dde0bfcb7cbb5cb9170e57bf795c6d9619eb" + version "1.1.0" + resolved "https://registry.yarnpkg.com/unist-util-modify-children/-/unist-util-modify-children-1.1.0.tgz#559203ae85d7a76283277be1abfbaf595a177ead" dependencies: array-iterate "^1.0.0" @@ -7433,9 +8347,9 @@ unist-util-parents@^0.1.2: dependencies: es6-weak-map "^2.0.1" -unist-util-position@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-2.0.1.tgz#1a639df0a0940460a2d8b205e9be704fe07518ec" +unist-util-position@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.0.0.tgz#e6e1e03eeeb81c5e1afe553e8d4adfbd7c0d8f82" unist-util-remove-position@^1.0.0: version "1.1.0" @@ -7452,12 +8366,21 @@ unist-util-select@^1.5.0: nth-check "^1.0.1" unist-util-stringify-position@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.0.0.tgz#8401ec843c08bfc484820920a6c9663505c75a31" + version "1.1.0" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.0.tgz#e8ba9d6b6af891b5f8336b3a31c63a9dc85c2af0" + dependencies: + has "^1.0.1" unist-util-visit@^1.0.0, unist-util-visit@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.1.0.tgz#2029869661db425ee082a82e2e02dd6cfc95db99" + version "1.1.1" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.1.1.tgz#e917a3b137658b335cb4420c7da2e74d928e4e94" + +units-css@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/units-css/-/units-css-0.4.0.tgz#d6228653a51983d7c16ff28f8b9dc3b1ffed3a07" + dependencies: + isnumeric "^0.2.0" + viewport-dimensions "^0.2.0" unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" @@ -7491,15 +8414,15 @@ update-notifier@^1.0.3: xdg-basedir "^2.0.0" urijs@^1.16.1: - version "1.18.7" - resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.18.7.tgz#613ee4194452fe66b872d62468946df93a941492" + version "1.18.10" + resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.18.10.tgz#b94463eaba59a1a796036a467bb633c667f221ab" url-loader@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.5.7.tgz#67e8779759f8000da74994906680c943a9b0925d" + version "0.5.8" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.5.8.tgz#b9183b1801e0f847718673673040bc9dc1c715c5" dependencies: - loader-utils "0.2.x" - mime "1.2.x" + loader-utils "^1.0.2" + mime "1.3.x" url-parse-lax@^1.0.0: version "1.0.0" @@ -7515,8 +8438,8 @@ url-parse@1.0.x: requires-port "1.0.x" url-parse@^1.1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.6.tgz#ab8ff5aea1388071961255e2236147c52ca5fc48" + version "1.1.8" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.8.tgz#7a65b3a8d57a1e86af6b4e2276e34774167c0156" dependencies: querystringify "0.0.x" requires-port "1.0.x" @@ -7534,7 +8457,7 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" -user-home@^1.1.1: +user-home@^1.0.0, user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" @@ -7552,17 +8475,21 @@ utils-merge@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" +uuid@3.0.1, uuid@^3.0.0, uuid@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" + uuid@^2.0.1, uuid@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" -uuid@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" +uws@0.14.1: + version "0.14.1" + resolved "https://registry.yarnpkg.com/uws/-/uws-0.14.1.tgz#89b8eb7bced272c65621472e878c57f4e0e00640" -v8flags@^2.0.10: - version "2.0.11" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881" +v8flags@^2.0.10, v8flags@^2.0.2: + version "2.0.12" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.12.tgz#73235d9f7176f8e8833fb286795445f7938d84e5" dependencies: user-home "^1.1.1" @@ -7577,9 +8504,9 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" -vary@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.0.tgz#e1e5affbbd16ae768dd2674394b9ad3022653140" +vary@^1, vary@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" vendors@^1.0.0: version "1.0.1" @@ -7600,8 +8527,8 @@ vfile@^1.0.0: resolved "https://registry.yarnpkg.com/vfile/-/vfile-1.4.0.tgz#c0fd6fa484f8debdb771f68c31ed75d88da97fe7" vfile@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-2.0.0.tgz#88620500e36bad025a0b01cc25106dbcb3090548" + version "2.0.1" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-2.0.1.tgz#bd48e68e8a2322dff0d162a37f45e70d9bb30466" dependencies: has "^1.0.1" is-buffer "^1.1.4" @@ -7609,6 +8536,10 @@ vfile@^2.0.0: unist-util-stringify-position "^1.0.0" x-is-string "^0.1.0" +viewport-dimensions@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/viewport-dimensions/-/viewport-dimensions-0.2.0.tgz#de740747db5387fd1725f5175e91bac76afdf36c" + vinyl-assign@^1.0.1: version "1.2.1" resolved "https://registry.yarnpkg.com/vinyl-assign/-/vinyl-assign-1.2.1.tgz#4d198891b5515911d771a8cd9c5480a46a074a45" @@ -7738,17 +8669,17 @@ webpack-core@~0.6.9: source-map "~0.4.1" webpack-dev-middleware@^1.4.0, webpack-dev-middleware@^1.8.4: - version "1.8.4" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.8.4.tgz#e8765c9122887ce9e3abd4cc9c3eb31b61e0948d" + version "1.10.1" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.10.1.tgz#c6b4cf428139cf1aefbe06a0c00fdb4f8da2f893" dependencies: - memory-fs "~0.3.0" + memory-fs "~0.4.1" mime "^1.3.4" path-is-absolute "^1.0.0" range-parser "^1.0.3" webpack-dev-server@^1.16.1: - version "1.16.2" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-1.16.2.tgz#8bebc2c4ce1c45a15c72dd769d9ba08db306a793" + version "1.16.3" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-1.16.3.tgz#cbb6a0d3e7c8eb5453b3e9befcbe843219f62661" dependencies: compression "^1.5.2" connect-history-api-fallback "^1.3.0" @@ -7765,10 +8696,10 @@ webpack-dev-server@^1.16.1: webpack-dev-middleware "^1.4.0" webpack-hot-middleware@^2.13.2: - version "2.14.0" - resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.14.0.tgz#64bb8cf056ba84c699d148840ae77e54179abb6d" + version "2.18.0" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.18.0.tgz#a16bb535b83a6ac94a78ac5ebce4f3059e8274d3" dependencies: - ansi-html "0.0.6" + ansi-html "0.0.7" html-entities "^1.2.0" querystring "^0.2.0" strip-ansi "^3.0.0" @@ -7790,20 +8721,27 @@ webpack-require@0.0.16: source-map "^0.4.4" webpack "^1.11.0" -webpack-sources@^0.1.0, webpack-sources@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.2.tgz#057a3f3255f8ba561b901d9150589aa103a57e65" +webpack-sources@^0.1.0: + version "0.1.5" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.5.tgz#aa1f3abf0f0d74db7111c40e500b84f966640750" + dependencies: + source-list-map "~0.1.7" + source-map "~0.5.3" + +webpack-sources@^0.2.0: + version "0.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.2.3.tgz#17c62bfaf13c707f9d02c479e0dcdde8380697fb" dependencies: - source-list-map "~0.1.0" + source-list-map "^1.1.1" source-map "~0.5.3" webpack-stats-plugin@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/webpack-stats-plugin/-/webpack-stats-plugin-0.1.4.tgz#400dd3967e12e54a54eb968ba368c0d7af334eb2" + version "0.1.5" + resolved "https://registry.yarnpkg.com/webpack-stats-plugin/-/webpack-stats-plugin-0.1.5.tgz#29e5f12ebfd53158d31d656a113ac1f7b86179d9" webpack-validator@^2.2.7: - version "2.2.9" - resolved "https://registry.yarnpkg.com/webpack-validator/-/webpack-validator-2.2.9.tgz#89a26d513fabf0d6e39f7edb2837ad1d80a358bf" + version "2.3.0" + resolved "https://registry.yarnpkg.com/webpack-validator/-/webpack-validator-2.3.0.tgz#235c6ea69aa930a90262bbbf9bd45ad8bd497310" dependencies: basename "0.1.2" chalk "1.1.3" @@ -7848,26 +8786,22 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7" whatwg-fetch@>=0.10.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-1.0.0.tgz#01c2ac4df40e236aaa18480e3be74bd5c8eb798e" - -whatwg-fetch@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-0.9.0.tgz#0e3684c6cb9995b43efc9df03e4c365d95fd9cc0" + version "2.0.3" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" when@^3.7.5: - version "3.7.7" - resolved "https://registry.yarnpkg.com/when/-/when-3.7.7.tgz#aba03fc3bb736d6c88b091d013d8a8e590d84718" + version "3.7.8" + resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" whet.extend@~0.9.9: version "0.9.9" resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" -which@^1.0.9, which@^1.1.1, which@^1.2.10, which@^1.2.9: - version "1.2.11" - resolved "https://registry.yarnpkg.com/which/-/which-1.2.11.tgz#c8b2eeea6b8c1659fa7c1dd4fdaabe9533dc5e8b" +which@^1.0.9, which@^1.1.1, which@^1.2.12, which@^1.2.9: + version "1.2.14" + resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" dependencies: - isexe "^1.1.1" + isexe "^2.0.0" wide-align@^1.1.0: version "1.1.0" @@ -7898,10 +8832,11 @@ wordwrap@~0.0.2: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" wrap-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.0.0.tgz#7d30f8f873f9a5bbc3a64dabc8d177e071ae426f" + 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" wrap-fn@^0.1.0: version "0.1.5" @@ -7928,6 +8863,20 @@ write-file-atomic@^1.1.2: imurmurhash "^0.1.4" slide "^1.1.5" +ws@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.1.tgz#082ddb6c641e85d4bb451f03d52f06eabdb1f018" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + +ws@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + x-is-string@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" @@ -7947,8 +8896,8 @@ y18n@^3.2.1: resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" yallist@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.0.0.tgz#306c543835f09ee1a4cb23b7bce9ab341c91cdd4" + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" yaml-js@^0.1.4: version "0.1.4" diff --git a/package.json b/package.json index 8705bb27f1da0..3456f4c32c87a 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "publish-next": "lerna run build; lerna publish --npm-tag=next", "test": "jest", "test_bkup": "npm run lint && npm run test-node && npm run test-integration", - "watch": "lerna run watch" + "watch": "lerna run watch --no-sort --stream --concurrency 999" }, "devDependencies": { "babel-preset-flow": "^6.23.0" diff --git a/packages/gatsby-parser-json/src/gatsby-node.js b/packages/gatsby-parser-json/src/gatsby-node.js index 4199cb53d4fa8..cc56149198c4f 100644 --- a/packages/gatsby-parser-json/src/gatsby-node.js +++ b/packages/gatsby-parser-json/src/gatsby-node.js @@ -5,28 +5,24 @@ const _ = require("lodash") const { loadNodeContents } = require("gatsby-source-filesystem") -async function modifyAST({ args }) { - const { ast } = args - const files = select( - ast, - ` - File[extension="json"] - ` - ) - const contents = await Promise.map(files, file => loadNodeContents(file)) - files.forEach((file, index) => { - const fileContents = contents[index] - const JSONArray = JSON.parse(fileContents).map(obj => ({ +async function onNodeCreate({ node, actionCreators }) { + const { createNode, updateNode } = actionCreators + if (node.extension === `json`) { + const content = await loadNodeContents(node) + // TODO validate that the JSON object has an id field? + // Or just add an id if one isn't set? + const JSONArray = JSON.parse(content).map(obj => ({ ...obj, - _sourceNodeId: file.id, - type: _.capitalize(file.name), + _sourceNodeId: node.id, + parent: node.id, + type: _.capitalize(node.name), children: [], })) - file.children = file.children.concat(JSONArray) - }) - - return ast + node.children = node.children.concat(JSONArray.map(n => n.id)) + updateNode(node) + _.each(JSONArray, j => createNode(j)) + } } -exports.modifyAST = modifyAST +exports.onNodeCreate = onNodeCreate diff --git a/packages/gatsby-parser-remark/package.json b/packages/gatsby-parser-remark/package.json index ac9d1665ecd06..df8a135197b4b 100644 --- a/packages/gatsby-parser-remark/package.json +++ b/packages/gatsby-parser-remark/package.json @@ -6,6 +6,7 @@ "dependencies": { "bluebird": "^3.4.6", "gray-matter": "^2.1.0", + "lodash": "^4.17.4", "unist-util-select": "^1.5.0" }, "devDependencies": { diff --git a/packages/gatsby-parser-remark/src/gatsby-node.js b/packages/gatsby-parser-remark/src/gatsby-node.js index a95ee10fbf56e..9fdcaf125c911 100644 --- a/packages/gatsby-parser-remark/src/gatsby-node.js +++ b/packages/gatsby-parser-remark/src/gatsby-node.js @@ -2,46 +2,47 @@ const select = require("unist-util-select") const Promise = require("bluebird") const fs = require("fs") const grayMatter = require("gray-matter") +const _ = require("lodash") const { loadNodeContents } = require("gatsby-source-filesystem") -async function modifyAST({ args }) { - console.time(`parse markdown file`) - const { ast } = args +async function onNodeCreate({ node, getNode, actionCreators }) { + const { createNode, updateNode, connectNodes } = actionCreators + // List of markdown extensions taken from // https://github.com/github/markup/blob/cf74e842dfd082d8001417c1bb94edd2ae06d61b/lib/github/markup/markdown.rb#L28 - const files = select( - ast, - ` - File[extension="md"], - File[extension="rmd"], - File[extension="mkd"], - File[extension="mkdn"], - File[extension="mdwn"], - File[extension="mdown"], - File[extension="litcoffee"], - File[extension="markdown"] - ` - ) - const contents = await Promise.map(files, file => loadNodeContents(file)) - files.forEach((file, index) => { - const data = grayMatter(contents[index]) - const markdownNode = { - _sourceNodeId: file.id, - type: `MarkdownRemark`, - id: `${file.id} >> MarkdownRemark`, - children: [], - src: data.content, - } - markdownNode.frontmatter = { - _sourceNodeId: file.id, - ...data.data, - } + const extensions = [ + "md", + "rmd", + "mkd", + "mkdn", + "mdwn", + "mdown", + "litcoffee", + "markdown", + ] + if (!_.includes(extensions, node.extension)) { + return + } + + const content = await loadNodeContents(node) + const data = grayMatter(content) + const markdownNode = { + _sourceNodeId: node.id, + parent: node.id, + type: `MarkdownRemark`, + id: `${node.id} >> MarkdownRemark`, + children: [], + src: data.content, + } + markdownNode.frontmatter = { + _sourceNodeId: node.id, + ...data.data, + } - file.children.push(markdownNode) - }) - console.timeEnd(`parse markdown file`) - return ast + node.children = node.children.concat([markdownNode.id]) + updateNode(node) + createNode(markdownNode) } -exports.modifyAST = modifyAST +exports.onNodeCreate = onNodeCreate diff --git a/packages/gatsby-parser-sharp/src/gatsby-node.js b/packages/gatsby-parser-sharp/src/gatsby-node.js index c7e07ed19b3a9..4d520d65e75ac 100644 --- a/packages/gatsby-parser-sharp/src/gatsby-node.js +++ b/packages/gatsby-parser-sharp/src/gatsby-node.js @@ -1,31 +1,23 @@ -const select = require("unist-util-select") -const Promise = require("bluebird") +const _ = require("lodash") -exports.modifyAST = ({ args }) => - new Promise(resolve => { - const { ast } = args - const files = select( - ast, - ` - File[extension="jpeg"], - File[extension="jpg"], - File[extension="png"], - File[extension="webp"], - File[extension="tif"], - File[extension="tiff"], - File[extension="svg"] - ` - ) - files.forEach(file => { - const imageNode = { - _sourceNodeId: file.id, - type: `ImageSharp`, - id: `${file.id} >> ImageSharp`, - children: [], - } +async function onNodeCreate({ node, actionCreators }) { + const { createNode, updateNode } = actionCreators + const extensions = ["jpeg", "jpg", "png", "webp", "tif", "tiff", "svg"] + if (!_.includes(extensions, node.extension)) { + return + } - file.children.push(imageNode) - }) + const imageNode = { + _sourceNodeId: node.id, + parent: node.id, + type: `ImageSharp`, + id: `${node.id} >> ImageSharp`, + children: [], + } - return resolve(ast) - }) + node.children = node.children.concat([imageNode.id]) + updateNode(node) + createNode(imageNode) +} + +exports.onNodeCreate = onNodeCreate diff --git a/packages/gatsby-parser-yaml/src/gatsby-node.js b/packages/gatsby-parser-yaml/src/gatsby-node.js index 8caca4598ab28..78b61dfdda31b 100644 --- a/packages/gatsby-parser-yaml/src/gatsby-node.js +++ b/packages/gatsby-parser-yaml/src/gatsby-node.js @@ -5,29 +5,24 @@ const jsYaml = require("js-yaml") const _ = require("lodash") const { loadNodeContents } = require("gatsby-source-filesystem") -async function modifyAST({ args }) { - const { ast } = args - const files = select( - ast, - ` - File[extension="yaml"], - File[extension="yml"] - ` - ) - const contents = await Promise.map(files, file => loadNodeContents(file)) - files.forEach((file, index) => { - const fileContents = contents[index] - const yamlArray = jsYaml.load(fileContents).map(obj => ({ +async function onNodeCreate({ node, actionCreators }) { + const { createNode, updateNode } = actionCreators + if (node.extension === `yaml` || node.extension === `yml`) { + const content = await loadNodeContents(node) + // TODO validate that yaml object has an id field? + // Or just add an id if one isn't set? + const yamlArray = jsYaml.load(content).map(obj => ({ ...obj, - _sourceNodeId: file.id, - type: _.capitalize(file.name), + parent: node.id, + _sourceNodeId: node.id, + type: _.capitalize(node.name), children: [], })) - file.children = file.children.concat(yamlArray) - }) - - return ast + node.children = node.children.concat(yamlArray) + updateNode(node) + _.each(yamlArray, y => createNode(y)) + } } -exports.modifyAST = modifyAST +exports.onNodeCreate = onNodeCreate diff --git a/packages/gatsby-plugin-coffeescript/src/gatsby-node.js b/packages/gatsby-plugin-coffeescript/src/gatsby-node.js index 79ecf9722156c..3e7d4ba057a07 100644 --- a/packages/gatsby-plugin-coffeescript/src/gatsby-node.js +++ b/packages/gatsby-plugin-coffeescript/src/gatsby-node.js @@ -8,9 +8,8 @@ export function resolvableExtensions() { return [`.coffee`, `.cjsx`] } -export function modifyWebpackConfig(ctx) { - // we need to use Babel to get around the ES6 export issue - const { config } = ctx.args +export function modifyWebpackConfig({ config }) { + // We need to use Babel to get around the ES6 export issue. config.loader("coffee", { test: COFFEE, loaders: ["babel", "coffee"], @@ -21,9 +20,8 @@ export function modifyWebpackConfig(ctx) { }) } -export function preprocessSource(ctx) { - const { args: { filename, contents }, pluginOptions } = ctx - // don't need to account for ES6, Babylon can parse it +export function preprocessSource({ filename, contents }, pluginOptions) { + // Don't need to account for ES6, Babylon can parse it. if (CJSX.test(filename)) { return compile(transform(contents), pluginOptions) } else if (COFFEE.test(filename)) { diff --git a/packages/gatsby-plugin-glamor/src/gatsby-node.js b/packages/gatsby-plugin-glamor/src/gatsby-node.js index a696338e65aa7..9e3f2440a5c50 100644 --- a/packages/gatsby-plugin-glamor/src/gatsby-node.js +++ b/packages/gatsby-plugin-glamor/src/gatsby-node.js @@ -1,8 +1,7 @@ const webpack = require("webpack") // Add Glamor support -exports.modifyWebpackConfig = ({ args }) => { - const { config } = args +exports.modifyWebpackConfig = ({ config }) => { return config.plugin(`Glamor`, webpack.ProvidePlugin, [ { Glamor: `glamor-react`, @@ -11,8 +10,7 @@ exports.modifyWebpackConfig = ({ args }) => { } // Add Glamor support -exports.modifyBabelrc = ({ args }) => { - const { babelrc } = args +exports.modifyBabelrc = ({ babelrc }) => { babelrc.plugins.push([ `transform-react-jsx`, { pragma: `Glamor.createElement` }, diff --git a/packages/gatsby-plugin-manifest/src/gatsby-node.js b/packages/gatsby-plugin-manifest/src/gatsby-node.js index 19f853b638d83..9c5301c44a2df 100644 --- a/packages/gatsby-plugin-manifest/src/gatsby-node.js +++ b/packages/gatsby-plugin-manifest/src/gatsby-node.js @@ -1,7 +1,7 @@ const fs = require("fs") const Promise = require("bluebird") -exports.postBuild = ({ pluginOptions }) => +exports.postBuild = (args, pluginOptions) => new Promise(resolve => { const manifest = { ...pluginOptions } delete manifest.plugins diff --git a/packages/gatsby-plugin-offline/src/gatsby-node.js b/packages/gatsby-plugin-offline/src/gatsby-node.js index 4cf88eaa0b69c..e1949f5d1ca7c 100644 --- a/packages/gatsby-plugin-offline/src/gatsby-node.js +++ b/packages/gatsby-plugin-offline/src/gatsby-node.js @@ -10,7 +10,7 @@ exports.createPages = () => [ }, ] -exports.postBuild = ({ pluginOptions }) => { +exports.postBuild = (args, pluginOptions) => { const rootDir = `public` const options = { diff --git a/packages/gatsby-plugin-preact/src/gatsby-node.js b/packages/gatsby-plugin-preact/src/gatsby-node.js index 4316ebe5b7054..d4ab42d7ca52d 100644 --- a/packages/gatsby-plugin-preact/src/gatsby-node.js +++ b/packages/gatsby-plugin-preact/src/gatsby-node.js @@ -1,5 +1,4 @@ -exports.modifyWebpackConfig = ({ args }) => { - const { config, stage } = args +exports.modifyWebpackConfig = ({ config, stage }) => { // Requiring the server version of React-dom is hardcoded right now // in the development server. So we'll just avoid loading Preact there // for now. diff --git a/packages/gatsby-plugin-typescript/src/gatsby-node.js b/packages/gatsby-plugin-typescript/src/gatsby-node.js index 7640a9b7c3383..d1ee38861252e 100644 --- a/packages/gatsby-plugin-typescript/src/gatsby-node.js +++ b/packages/gatsby-plugin-typescript/src/gatsby-node.js @@ -11,8 +11,7 @@ export function resolvableExtensions(ctx) { return [".ts", ".tsx"] } -export function modifyWebpackConfig(ctx) { - const { args: { config }, pluginOptions: { compilerOptions } } = ctx +export function modifyWebpackConfig({ config }, { compilerOptions }) { // CommonJS to keep Webpack happy. const copts = Object.assign(compilerDefaults, compilerOptions, { module: "commonjs", @@ -28,11 +27,7 @@ export function modifyWebpackConfig(ctx) { }) } -export function preprocessSource(ctx) { - const { - args: { contents, filename }, - pluginOptions: { compilerOptions }, - } = ctx +export function preprocessSource({ contents, filename }, { compilerOptions }) { // overwrite defaults with custom compiler options const copts = Object.assign(compilerDefaults, compilerOptions, { target: "esnext", diff --git a/packages/gatsby-source-filesystem/package.json b/packages/gatsby-source-filesystem/package.json index b03292302a13e..aa5f2ac3addad 100644 --- a/packages/gatsby-source-filesystem/package.json +++ b/packages/gatsby-source-filesystem/package.json @@ -17,6 +17,7 @@ "babel-cli": "^6.18.0", "babel-preset-es2015": "^6.18.0", "bluebird": "^3.4.6", + "chokidar": "^1.6.1", "fs-extra": "^1.0.0", "glob": "^7.1.1", "graphql": "^0.8.2", diff --git a/packages/gatsby-source-filesystem/src/gatsby-node.js b/packages/gatsby-source-filesystem/src/gatsby-node.js index 0c4644b3bd759..2d5e76455a939 100644 --- a/packages/gatsby-source-filesystem/src/gatsby-node.js +++ b/packages/gatsby-source-filesystem/src/gatsby-node.js @@ -8,90 +8,78 @@ const fs = require("fs") const prettyBytes = require("pretty-bytes") const u = require("unist-builder") const slash = require("slash") +const _ = require("lodash") +const chokidar = require("chokidar") -exports.sourceNodes = ({ args, pluginOptions }) => - new Promise((resolve, reject) => { - console.time(`glob`) - recursive( - pluginOptions.path, - [ - `.*.un~`, - `.gitignore`, - `.npmignore`, - `.babelrc`, - `yarn.lock`, - `../**/dist/**`, - ], - (err, files) => { - console.timeEnd(`glob`) - console.log(`total files`, files.length) - - // Parse files - const mappedFiles = files.map(file => { - const slashed = slash(file) - return { - ...path.parse(slashed), - absolutePath: slashed, - } +function readFile(file, pluginOptions, cb) { + const slashed = slash(file) + const slashedFile = { + ...path.parse(slashed), + absolutePath: slashed, + } + md5File(slashedFile.absolutePath, (md5Err, hash) => { + fs.stat(slashedFile.absolutePath, (statErr, stats) => { + // Stringify date objects. + const newFile = JSON.parse( + JSON.stringify({ + type: `File`, + id: slashedFile.absolutePath, + sourceName: pluginOptions.name, + children: [], + relativePath: slash( + path.posix.relative(pluginOptions.path, slashedFile.absolutePath) + ), + extension: slashedFile.ext.slice(1).toLowerCase(), + size: stats.size, + prettySize: prettyBytes(stats.size), + modifiedTime: stats.mtime, + accessTime: stats.atime, + changeTime: stats.ctime, + birthTime: stats.birthtime, + hash, + ...slashedFile, + ...stats, }) + ) + cb(null, newFile) + }) + }) +} - console.time(`hash files`) - // Get hash for each file. - mapLimit( - mappedFiles, - 15, - (file, cb) => md5File(file.absolutePath, cb), - (e, hashes) => { - hashes.forEach((hash, index) => { - mappedFiles[index].hash = hash - }) - console.timeEnd(`hash files`) - - console.time(`stat files`) - mapLimit( - mappedFiles, - 15, - (file, cb) => fs.stat(file.absolutePath, cb), - (er, stats) => { - stats.forEach((stat, index) => { - mappedFiles[index] = { - ...stat, - ...mappedFiles[index], - } - }) - console.timeEnd(`stat files`) +exports.sourceNodes = ({ actionCreators }, pluginOptions) => { + const { createNode, updateSourcePluginStatus } = actionCreators + updateSourcePluginStatus({ + plugin: `source-filesystem --- ${pluginOptions.name}`, + ready: false, + }) + let testNode + const watcher = chokidar.watch(pluginOptions.path, { + ignored: [ + `**/*.un~`, + `**/.gitignore`, + `**/.npmignore`, + `**/.babelrc`, + `**/yarn.lock`, + `**/node_modules`, + `../**/dist/**`, + ], + }) - console.log(`total files`, mappedFiles.length) - console.time(`create filesystem ast`) - // Create Unist nodes - const ast = u(`rootDirectory`, {}, pluginOptions.path) - ast.children = [] - mappedFiles.forEach(file => { - ast.children.push({ - ...JSON.parse(JSON.stringify(file)), // Stringify date objects. - type: `File`, - id: file.absolutePath, - sourceName: pluginOptions.name, - children: [], - relativePath: slash( - path.relative(pluginOptions.path, file.absolutePath) - ), - extension: file.ext.slice(1).toLowerCase(), - size: file.size, - prettySize: prettyBytes(file.size), - modifiedTime: file.mtime.toJSON(), - accessTime: file.atime.toJSON(), - changeTime: file.ctime.toJSON(), - birthTime: file.birthtime.toJSON(), - hash: file.hash, - }) - }) - console.timeEnd(`create filesystem ast`) - return resolve(ast) - } - ) - } - ) - } - ) + watcher.on(`add`, path => { + // console.log("Added file at", path); + readFile(path, pluginOptions, (err, file) => createNode(file)) + }) + watcher.on(`change`, path => { + console.log("changed file at", path) + readFile(path, pluginOptions, (err, file) => createNode(file)) }) + watcher.on(`ready`, () => { + updateSourcePluginStatus({ + plugin: `source-filesystem --- ${pluginOptions.name}`, + ready: true, + }) + }) + + // TODO add delete support. + return +} diff --git a/packages/gatsby-typegen-remark-copy-linked-files/src/index.js b/packages/gatsby-typegen-remark-copy-linked-files/src/index.js index 461e9fd81b9fb..61875f4437459 100644 --- a/packages/gatsby-typegen-remark-copy-linked-files/src/index.js +++ b/packages/gatsby-typegen-remark-copy-linked-files/src/index.js @@ -4,12 +4,12 @@ const fsExtra = require("fs-extra") const path = require("path") const _ = require("lodash") -module.exports = ({ files, markdownNode, markdownAST }) => { +module.exports = ({ files, markdownNode, markdownAST, getNode }) => { // Copy linked files to the public directory and modify the AST to point to // new location of the files. const visitor = link => { if (isRelativeUrl(link.url)) { - const linkPath = path.join(markdownNode.parent.dir, link.url) + const linkPath = path.join(getNode(markdownNode.parent).dir, link.url) const linkNode = _.find(files, file => { if (file && file.absolutePath) { return file.absolutePath === linkPath diff --git a/packages/gatsby-typegen-remark-responsive-image/src/index.js b/packages/gatsby-typegen-remark-responsive-image/src/index.js index 6a7b8f5f2ed52..735200155f1f4 100644 --- a/packages/gatsby-typegen-remark-responsive-image/src/index.js +++ b/packages/gatsby-typegen-remark-responsive-image/src/index.js @@ -13,7 +13,7 @@ const Promise = require("bluebird") // 4. Create the responsive images. // 5. Set the html w/ aspect ratio helper. module.exports = ( - { files, markdownNode, markdownAST, pluginOptions, linkPrefix } + { files, markdownNode, markdownAST, pluginOptions, linkPrefix, getNode } ) => { const defaults = { maxWidth: 650, @@ -52,7 +52,7 @@ module.exports = ( // Ignore gifs as we can't process them. if (isRelativeUrl(node.url) && node.url.slice(-3) !== `gif`) { const imagePath = path.posix.join( - markdownNode.parent.dir, + getNode(markdownNode.parent).dir, node.url ) const imageNode = _.find(files, file => { diff --git a/packages/gatsby-typegen-remark/src/gatsby-node.js b/packages/gatsby-typegen-remark/src/gatsby-node.js index 5e9b96ee09bcd..6e6a73dd59559 100644 --- a/packages/gatsby-typegen-remark/src/gatsby-node.js +++ b/packages/gatsby-typegen-remark/src/gatsby-node.js @@ -22,14 +22,26 @@ const inspect = require("unist-util-inspect") const Promise = require("bluebird") const prune = require("underscore.string/prune") -exports.extendNodeType = ({ args, pluginOptions }) => - new Promise((resolve, reject) => { - const { ast, type, linkPrefix } = args - if (type.name !== `MarkdownRemark`) { - return resolve({}) - } +const astPromiseCache = {} + +// Delete Markdown AST cache when the node is recreated +// e.g. the user saves a change to the file. +exports.onNodeCreate = ({ node }) => { + if (node.type === `MarkdownRemark`) { + delete astPromiseCache[node.id] + } +} - const files = select(ast, `File`) +exports.extendNodeType = ( + { type, allNodes, linkPrefix, getNode }, + pluginOptions +) => { + if (type.name !== `MarkdownRemark`) { + return {} + } + + return new Promise((resolve, reject) => { + const files = allNodes.filter(n => n.type === `File`) // Setup Remark. const remark = new Remark({ @@ -38,7 +50,6 @@ exports.extendNodeType = ({ args, pluginOptions }) => pedantic: true, }) - const astPromiseCache = {} async function getAST(markdownNode) { if (astPromiseCache[markdownNode.id]) { return astPromiseCache[markdownNode.id] @@ -52,6 +63,7 @@ exports.extendNodeType = ({ args, pluginOptions }) => return requiredPlugin.mutateSource({ markdownNode, files, + getNode, pluginOptions: plugin.pluginOptions, }) } else { @@ -65,7 +77,7 @@ exports.extendNodeType = ({ args, pluginOptions }) => // // source plugins identify nodes, provide id, initial parse, know // when nodes are created/removed/deleted - // get passed cached AST and return list of clean and dirty nodes. + // get passed cached DataTree and return list of clean and dirty nodes. // Also get passed `dirtyNodes` function which they can call with an array // of node ids which will then get re-parsed and the inferred schema // recreated (if inferring schema gets too expensive, can also @@ -74,7 +86,7 @@ exports.extendNodeType = ({ args, pluginOptions }) => // // parse plugins take data from source nodes and extend it, never mutate // it. Freeze all nodes once done so typegen plugins can't change it - // this lets us save off the AST at that point as well as create + // this lets us save off the DataTree at that point as well as create // indexes. // // typegen plugins identify further types of data that should be lazily @@ -88,23 +100,9 @@ exports.extendNodeType = ({ args, pluginOptions }) => // queries are based on which source nodes. Also if connection of what // which are always rerun if their underlying nodes change.. // - // every node type in AST gets a schema type automatically. + // every node type in DataTree gets a schema type automatically. // typegen plugins just modify the auto-generated types to add derived fields // as well as computationally expensive fields. - - // Use PrismJS to add syntax highlighting to code blocks. - // TODO move this to its own plugin w/ peerDependency to this. - // this should parse ast. everything it puts on markdown nodes - // should be namespaced with remark_ - // stage 0 — source nodes - // stage 1 — generic parse, identify types - // stage 2 — dive deeper — remark - // stage 3 — work on sub-asts e.g. markdown - // stage 4 — compile to graphql types. - // how to order work? Stages? People will get confused about what stage to - // use... - // explicitly mark dependecies — e.g. remark has plugins to parse its AST - // which remark controls when these run. Promise.all( pluginOptions.plugins.map(plugin => { const requiredPlugin = require(plugin.resolve) @@ -112,6 +110,7 @@ exports.extendNodeType = ({ args, pluginOptions }) => return requiredPlugin({ markdownAST, markdownNode, + getNode, files, pluginOptions: plugin.pluginOptions, linkPrefix, @@ -254,3 +253,4 @@ exports.extendNodeType = ({ args, pluginOptions }) => }, }) }) +} diff --git a/packages/gatsby-typegen-sharp/src/gatsby-node.js b/packages/gatsby-typegen-sharp/src/gatsby-node.js index 0c2e1e833e64f..02d2dc210f23f 100644 --- a/packages/gatsby-typegen-sharp/src/gatsby-node.js +++ b/packages/gatsby-typegen-sharp/src/gatsby-node.js @@ -12,8 +12,10 @@ const { responsiveResolution, } = require("gatsby-plugin-sharp") -exports.extendNodeType = ({ args }) => { - if (args.type.name !== `ImageSharp`) { +exports.extendNodeType = ( + { type, linkPrefix, getNodeAndSavePathDependency } +) => { + if (type.name !== `ImageSharp`) { return {} } @@ -47,10 +49,10 @@ exports.extendNodeType = ({ args }) => { defaultValue: 50, }, }, - resolve(image, fieldArgs) { + resolve(image, fieldArgs, context) { const promise = responsiveResolution({ - file: image.parent, - args: { ...fieldArgs, linkPrefix: args.linkPrefix }, + file: getNodeAndSavePathDependency(image.parent, context.path), + args: { ...fieldArgs, linkPrefix }, }) return promise }, @@ -82,10 +84,10 @@ exports.extendNodeType = ({ args }) => { defaultValue: 50, }, }, - resolve(image, fieldArgs) { + resolve(image, fieldArgs, context) { return responsiveSizes({ - file: image.parent, - args: { ...fieldArgs, linkPrefix: args.linkPrefix }, + file: getNodeAndSavePathDependency(image.parent, context.path), + args: { ...fieldArgs, linkPrefix }, }) }, }, @@ -128,9 +130,9 @@ exports.extendNodeType = ({ args }) => { defaultValue: false, }, }, - resolve(image, fieldArgs) { + resolve(image, fieldArgs, context) { return new Promise(resolve => { - const file = image.parent + const file = getNodeAndSavePathDependency(image.parent, context.path) if (fieldArgs.base64) { resolve( base64({ @@ -141,7 +143,7 @@ exports.extendNodeType = ({ args }) => { resolve( queueImageResizing({ file, - args: { ...fieldArgs, linkPrefix: args.linkPrefix }, + args: { ...fieldArgs, linkPrefix }, }) ) } diff --git a/packages/gatsby/lib/bin/cli.js b/packages/gatsby/lib/bin/cli.js index dbc5e077621a5..c64d5eb87278c 100644 --- a/packages/gatsby/lib/bin/cli.js +++ b/packages/gatsby/lib/bin/cli.js @@ -2,8 +2,18 @@ const program = require("commander") const packageJson = require("../../package.json") const path = require("path") const _ = require("lodash") +const Promise = require("bluebird") console.log(`bin/cli: time since started:`, process.uptime()) +// Improve Promise error handling. Maybe... what's the best +// practice for this these days? +Promise.onPossiblyUnhandledRejection(error => { + throw error +}) +process.on(`unhandledRejection`, error => { + console.error(`UNHANDLED REJECTION`, error.stack) +}) + const defaultHost = process.platform === `win32` ? `localhost` : `0.0.0.0` const directory = path.resolve(`.`) diff --git a/packages/gatsby/lib/bootstrap/create-path.js b/packages/gatsby/lib/bootstrap/create-path.js index 6ef264b6c8db5..814f2f753b14c 100644 --- a/packages/gatsby/lib/bootstrap/create-path.js +++ b/packages/gatsby/lib/bootstrap/create-path.js @@ -11,6 +11,8 @@ module.exports = (basePath: string, filePath: string): string => { name = `` } + // Use path.posix to force forward slash paths. Otherwise on windows + // node.js will add backward slashes. const pagePath = path.posix.join(`/`, dirname, name, `/`) return pagePath diff --git a/packages/gatsby/lib/bootstrap/index.js b/packages/gatsby/lib/bootstrap/index.js index 70b99a0ce1e3d..e98f31d2bc62e 100644 --- a/packages/gatsby/lib/bootstrap/index.js +++ b/packages/gatsby/lib/bootstrap/index.js @@ -11,22 +11,31 @@ import Joi from "joi" import chalk from "chalk" import apiRunnerNode from "../utils/api-runner-node" import { graphql } from "graphql" -import { pagesDB, siteDB, programDB } from "../utils/globals" -import { gatsbyConfigSchema, pageSchema } from "../joi-schemas/joi" import { layoutComponentChunkName } from "../utils/js-chunk-names" +import { store } from "../redux" +const { boundActionCreators } = require("../redux/actions") + +// Override console.log to add the source file + line number. +// ["log", "warn"].forEach(function(method) { +// var old = console[method]; +// console[method] = function() { +// var stack = new Error().stack.split(/\n/); +// // Chrome includes a single "Error" line, FF doesn't. +// if (stack[0].indexOf("Error") === 0) { +// stack = stack.slice(1); +// } +// var args = [].slice.apply(arguments).concat([stack[1].trim()]); +// return old.apply(console, args); +// }; +// }); + +const preferDefault = m => (m && m.default) || m const mkdirs = Promise.promisify(fs.mkdirs) const copy = Promise.promisify(fs.copy) const removeDir = Promise.promisify(fs.remove) const glob = Promise.promisify(globCB) -Promise.onPossiblyUnhandledRejection(error => { - throw error -}) -process.on(`unhandledRejection`, error => { - console.error(`UNHANDLED REJECTION`, error.stack) -}) - // Path creator. // Auto-create pages. // algorithm is glob /pages directory for js/jsx/cjsx files *not* @@ -35,11 +44,12 @@ process.on(`unhandledRejection`, error => { const autoPathCreator = async (program: any) => { const pagesDirectory = path.posix.join(program.directory, `pages`) const exts = program.extensions.map(e => `*${e}`).join("|") - const files = await glob(`${pagesDirectory}/**/?(${exts})`) + // The promisified version wasn't working for some reason + // so we'll use sync for now. + const files = glob.sync(`${pagesDirectory}/**/?(${exts})`) // Create initial page objects. let autoPages = files.map(filePath => ({ component: filePath, - componentChunkName: layoutComponentChunkName(program.directory, filePath), path: filePath, })) @@ -64,24 +74,22 @@ const autoPathCreator = async (program: any) => { path: createPath(pagesDirectory, page.component), })) - // Validate pages. + // Add pages autoPages.forEach(page => { - const { error } = Joi.validate(page, pageSchema) - if (error) { - console.log(chalk.blue.bgYellow(`A page object failed validation`)) - console.log(page) - console.log(chalk.bold.red(error)) - } + boundActionCreators.upsertPage(page) }) - return autoPages } module.exports = async (program: any) => { console.log(`lib/bootstrap/index.js time since started:`, process.uptime()) + // Fix program directory path for windows env program.directory = slash(program.directory) - // Set the program to the globals programDB - programDB(program) + + store.dispatch({ + type: "SET_PROGRAM", + payload: program, + }) // Try opening the site's gatsby-config.js file. console.time(`open and validate gatsby-config.js`) @@ -94,28 +102,20 @@ module.exports = async (program: any) => { process.exit() } - // Add config to site object. - let normalizedConfig - if (config.default) { - normalizedConfig = config.default - siteDB(siteDB().set(`config`, config.default)) - } else { - normalizedConfig = config - siteDB(siteDB().set(`config`, config)) - } + config = preferDefault(config) + + store.dispatch({ + type: "SET_SITE_CONFIG", + payload: config, + }) - // Validate gatsby-config.js - const result = Joi.validate(normalizedConfig, gatsbyConfigSchema) - if (result.error) { - console.log(chalk.blue.bgYellow(`gatsby.config.js failed validation`)) - console.log(chalk.bold.red(result.error)) - console.log(normalizedConfig) - process.exit() - } console.timeEnd(`open and validate gatsby-config.js`) // Instantiate plugins. const plugins = [] + // Create fake little site with a plugin for testing this + // w/ snapshots. Move plugin processing to its own module. + // Also test adding to redux store. const processPlugin = plugin => { if (_.isString(plugin)) { const resolvedPath = path.dirname(require.resolve(plugin)) @@ -153,8 +153,8 @@ module.exports = async (program: any) => { } } - if (normalizedConfig.plugins) { - normalizedConfig.plugins.forEach(plugin => { + if (config.plugins) { + config.plugins.forEach(plugin => { plugins.push(processPlugin(plugin)) }) } @@ -184,8 +184,15 @@ module.exports = async (program: any) => { extractPlugins(plugin) }) - siteDB(siteDB().set(`plugins`, plugins)) - siteDB(siteDB().set(`flattenedPlugins`, flattenedPlugins)) + store.dispatch({ + type: "SET_SITE_PLUGINS", + payload: plugins, + }) + + store.dispatch({ + type: "SET_SITE_FLATTENED_PLUGINS", + payload: flattenedPlugins, + }) // Ensure the public directory is created. await mkdirs(`${program.directory}/public`) @@ -260,116 +267,58 @@ module.exports = async (program: any) => { console.timeEnd(`copy gatsby files`) // Create Schema. - console.time(`create schema`) - const schema = await require(`../schema`)() - // const schema = await require(`../schema`)() - const graphqlRunner = (query, context) => - graphql(schema, query, context, context, context) - console.timeEnd(`create schema`) - - // TODO create new folder structure for files to reflect major systems. - // - // directory structure - // /pages --> source plugins by default turn these files into pages. - // /drafts --> source plugins can have a development option which would add - // drafts but only in dev server. - // /layouts --> layout components e.g. blog-post.js, tag-page.js - // /components --> this is convention only but dumping ground for react.js components - // /data --> default json, yaml, csv, toml source plugins extract data from these. - // /assets --> anything here is copied verbatim to /public - // /public --> build place - // / --> html.js, gatsby-node.js, gatsby-browser.js, gatsby-config.js + await require(`../schema`)() - // Collect pages. - let pages = await apiRunnerNode(`createPages`, { graphql: graphqlRunner }, [ - ]) - pages = _.flatten(pages) - - if (_.isArray(pages) && pages.length > 0) { - // Add chunkName. - pages.forEach(page => { - page.componentChunkName = layoutComponentChunkName( - program.directory, - page.component - ) - }) - - // Validate pages. - if (pages) { - pages.forEach(page => { - const { error } = Joi.validate(page, pageSchema) - if (error) { - console.log(chalk.blue.bgYellow(`A page object failed validation`)) - console.log(chalk.bold.red(error)) - console.log(`page object`) - console.log(page) - } - }) - } - console.log(`validated pages`) - } else { - pages = [] + const graphqlRunner = (query, context) => { + const schema = store.getState().schema + return graphql(schema, query, context, context, context) } - // Save pages to in-memory database. - const pagesMap = new Map() - pages.forEach(page => { - pagesMap.set(page.path, page) - }) - pagesDB(pagesMap) - console.log(`added pages to in-memory db`) - // Collect resolvable extensions and attach to program. + // TODO refactor this to use Redux. const extensions = [`.js`, `.jsx`] const apiResults = await apiRunnerNode("resolvableExtensions") program.extensions = apiResults.reduce((a, b) => a.concat(b), extensions) + // Collect pages. + await apiRunnerNode(`createPages`, { + graphql: graphqlRunner, + }) + // TODO move this to own source plugin per component type - // (js/cjsx/typescript, etc.) - const autoPages = await autoPathCreator(program, pages) - if (autoPages) { - const pagesMap = new Map() - autoPages.forEach(page => pagesMap.set(page.path, page)) - pagesDB(new Map([...pagesDB(), ...pagesMap])) + // (js/cjsx/typescript, etc.). Only do after there's themes + // so can cement default /pages setup in default core theme. + autoPathCreator(program) + + // Copy /404/ to /404.html as many static site hosting companies expect + // site 404 pages to be named this. + // https://www.gatsbyjs.org/docs/add-404-page/ + const exists404html = _.some( + store.getState().pages, + p => p.path === `/404.html` + ) + if (!exists404html) { + store.getState().pages.forEach(page => { + if (page.path === `/404/`) { + boundActionCreators.upsertPage({ + ...page, + path: `/404.html`, + }) + } + }) } - // Rewrite /404/ to /404.html - const rewrittenPages = new Map(); - [...pagesDB()].forEach(page => { - if (page[0] === `/404/`) { - page[1].path = `/404.html` - rewrittenPages.set(`/404.html`, page[1]) - } else { - rewrittenPages.set(page[0], page[1]) - } - }) - pagesDB(new Map([...rewrittenPages])) console.log(`created js pages`) - const modifiedPages = await apiRunnerNode( - `onPostCreatePages`, - pagesDB(), - pagesDB() - ) + return new Promise(resolve => { + queryRunner(thing => { + apiRunnerNode(`generateSideEffects`).then(() => { + console.log( + `bootstrap finished, time since started: ${process.uptime()}` + ) - // Validate pages. - modifiedPages.forEach(page => { - const { error } = Joi.validate(page, pageSchema) - if (error) { - console.log(chalk.blue.bgYellow(`A page object failed validation`)) - console.log(chalk.bold.red(error)) - console.log(`page object`) - console.log(page) - } + resolve({ graphqlRunner }) + }) + }) }) - console.log(`validated modified pages`) - - // console.log(`bootstrap finished, time since started:`, process.uptime()) - // cb(null, schema) - - await queryRunner(program, graphqlRunner) - await apiRunnerNode(`generateSideEffects`) - console.log(`bootstrap finished, time since started: ${process.uptime()}`) - - return { schema, graphqlRunner } } diff --git a/packages/gatsby/lib/joi-schemas/joi.js b/packages/gatsby/lib/joi-schemas/joi.js index 65b55409890a3..77c1bba4b453c 100644 --- a/packages/gatsby/lib/joi-schemas/joi.js +++ b/packages/gatsby/lib/joi-schemas/joi.js @@ -12,6 +12,14 @@ export const pageSchema = Joi.object() path: Joi.string().required(), component: Joi.string().required(), componentChunkName: Joi.string().required(), - data: Joi.object(), + context: Joi.object(), + }) + .unknown() + +export const nodeSchema = Joi.object() + .keys({ + // TODO ids can be ints as well. + id: Joi.string().required(), + type: Joi.string().required(), }) .unknown() diff --git a/packages/gatsby/lib/redux/__tests__/__snapshots__/nodes.js.snap b/packages/gatsby/lib/redux/__tests__/__snapshots__/nodes.js.snap new file mode 100644 index 0000000000000..73e6709cef269 --- /dev/null +++ b/packages/gatsby/lib/redux/__tests__/__snapshots__/nodes.js.snap @@ -0,0 +1,22 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Create and update nodes allows creating nodes 1`] = ` +Object { + "payload": Object { + "id": "hi", + "pickle": true, + "type": "Test", + }, + "type": "CREATE_NODE", +} +`; + +exports[`Create and update nodes allows creating nodes 2`] = ` +Object { + "hi": Object { + "id": "hi", + "pickle": true, + "type": "Test", + }, +} +`; diff --git a/packages/gatsby/lib/redux/__tests__/__snapshots__/pages.js.snap b/packages/gatsby/lib/redux/__tests__/__snapshots__/pages.js.snap new file mode 100644 index 0000000000000..36a0492525144 --- /dev/null +++ b/packages/gatsby/lib/redux/__tests__/__snapshots__/pages.js.snap @@ -0,0 +1,80 @@ +exports[`Add pages allows you to add multiple pages 1`] = ` +Object { + "pages": Array [ + Object { + "component": "/whatever/index.js", + "componentChunkName": "page-component---whatever-index-js", + "path": "/hi/", + }, + Object { + "component": "/whatever/index.js", + "componentChunkName": "page-component---whatever-index-js", + "path": "/hi/pizza/", + }, + ], +} +`; + +exports[`Add pages allows you to add pages 1`] = ` +Object { + "payload": Object { + "component": "/whatever/index.js", + "componentChunkName": "page-component---whatever-index-js", + "path": "/hi/", + }, + "type": "UPSERT_PAGE", +} +`; + +exports[`Add pages allows you to add pages 2`] = ` +Object { + "pages": Array [ + Object { + "component": "/whatever/index.js", + "componentChunkName": "page-component---whatever-index-js", + "path": "/hi/", + }, + ], +} +`; + +exports[`Add pages allows you to add pages with context 1`] = ` +Object { + "payload": Object { + "component": "/whatever/index.js", + "componentChunkName": "page-component---whatever-index-js", + "context": Object { + "id": 123, + }, + "path": "/hi/", + }, + "type": "UPSERT_PAGE", +} +`; + +exports[`Add pages allows you to add pages with context 2`] = ` +Object { + "pages": Array [ + Object { + "component": "/whatever/index.js", + "componentChunkName": "page-component---whatever-index-js", + "context": Object { + "id": 123, + }, + "path": "/hi/", + }, + ], +} +`; + +exports[`Add pages allows you to update existing pages (based on path) 1`] = ` +Object { + "pages": Array [ + Object { + "component": "/whatever2/index.js", + "componentChunkName": "page-component---whatever-2-index-js", + "path": "/hi/", + }, + ], +} +`; diff --git a/packages/gatsby/lib/redux/__tests__/__snapshots__/site-config.js.snap b/packages/gatsby/lib/redux/__tests__/__snapshots__/site-config.js.snap new file mode 100644 index 0000000000000..5ac4b4f7e52e4 --- /dev/null +++ b/packages/gatsby/lib/redux/__tests__/__snapshots__/site-config.js.snap @@ -0,0 +1,12 @@ +exports[`add site config Validates configs with unsupported options 1`] = `"The site\'s gatsby.config.js failed validation"`; + +exports[`add site config allow you to add basic site config 1`] = ` +Object { + "config": Object { + "plugins": Array [], + "siteMetadata": Object { + "title": "yo testing", + }, + }, +} +`; diff --git a/packages/gatsby/lib/redux/__tests__/nodes.js b/packages/gatsby/lib/redux/__tests__/nodes.js new file mode 100644 index 0000000000000..1bc5656e0351c --- /dev/null +++ b/packages/gatsby/lib/redux/__tests__/nodes.js @@ -0,0 +1,46 @@ +const { actions, boundActions } = require("../actions"); +const nodeReducer = require("../reducers/nodes"); + +describe(`Create and update nodes`, () => { + // TODO add these back when we stop directly consoleing errors. + // Right now makes tests noisy. + // + // it(`validates created nodes`, () => { + // const action = actions.createNode({ + // type: `Test`, + // }); + // expect(action.type).toEqual(`VALIDATION_ERROR`); + // }); + // it(`validates updated nodes`, () => { + // const action = actions.updateNode({ + // type: `Test`, + // }); + // expect(action.type).toEqual(`VALIDATION_ERROR`); + // }); + + it(`allows creating nodes`, () => { + const action = actions.createNode({ + id: `hi`, + type: `Test`, + pickle: true, + }); + expect(action).toMatchSnapshot(); + expect(nodeReducer(undefined, action)).toMatchSnapshot(); + }); + + it(`allows updating nodes`, () => { + const action = actions.createNode({ + id: `hi`, + type: `Test`, + pickle: true, + }); + const updateAction = actions.createNode({ + id: `hi`, + type: `Test`, + pickle: false, + }); + let state = nodeReducer(undefined, action); + state = nodeReducer(state, updateAction); + expect(state["hi"].pickle).toEqual(false); + }); +}); diff --git a/packages/gatsby/lib/redux/__tests__/pages.js b/packages/gatsby/lib/redux/__tests__/pages.js new file mode 100644 index 0000000000000..76097c4b2028b --- /dev/null +++ b/packages/gatsby/lib/redux/__tests__/pages.js @@ -0,0 +1,60 @@ +const { store, reducer } = require("../index"); +const { actions, boundActions } = require("../actions"); + +describe(`Add pages`, () => { + it(`allows you to add pages`, () => { + const action = actions.upsertPage({ + path: `/hi/`, + component: `/whatever/index.js`, + }); + const state = reducer({ pages: [] }, action); + expect(action).toMatchSnapshot(); + expect(state).toMatchSnapshot(); + }); + + it(`allows you to add pages with context`, () => { + const action = actions.upsertPage({ + path: `/hi/`, + component: `/whatever/index.js`, + context: { + id: 123, + }, + }); + const state = reducer({ pages: [] }, action); + expect(action).toMatchSnapshot(); + expect(state).toMatchSnapshot(); + }); + + it(`allows you to add multiple pages`, () => { + const action = actions.upsertPage({ + path: `/hi/`, + component: `/whatever/index.js`, + }); + const action2 = actions.upsertPage({ + path: `/hi/pizza/`, + component: `/whatever/index.js`, + }); + let state = reducer({ pages: [] }, action); + state = reducer(state, action2); + expect(state).toMatchSnapshot(); + expect(state.pages.length).toEqual(2); + }); + + it(`allows you to update existing pages (based on path)`, () => { + const action = actions.upsertPage({ + path: `/hi/`, + component: `/whatever/index.js`, + }); + + // Change the component + const action2 = actions.upsertPage({ + path: `/hi/`, + component: `/whatever2/index.js`, + }); + + let state = reducer({ pages: [] }, action); + state = reducer(state, action2); + expect(state).toMatchSnapshot(); + expect(state.pages.length).toEqual(1); + }); +}); diff --git a/packages/gatsby/lib/redux/__tests__/site-config.js b/packages/gatsby/lib/redux/__tests__/site-config.js new file mode 100644 index 0000000000000..a0e2c258a402a --- /dev/null +++ b/packages/gatsby/lib/redux/__tests__/site-config.js @@ -0,0 +1,37 @@ +import { store, reducer } from "../index.js"; + +describe(`add site config`, () => { + it(`allow you to add basic site config`, () => { + const config = { + siteMetadata: { + title: "yo testing", + }, + plugins: [], + }; + const state = reducer( + {}, + { + type: "SET_SITE_CONFIG", + payload: config, + } + ); + expect(state).toMatchSnapshot(); + }); + + it(`Validates configs with unsupported options`, () => { + const config = { + someRandomThing: "hi people", + plugins: [], + }; + function runReducer() { + return reducer( + {}, + { + type: "SET_SITE_CONFIG", + payload: config, + } + ); + } + expect(runReducer).toThrowErrorMatchingSnapshot(); + }); +}); diff --git a/packages/gatsby/lib/redux/actions.js b/packages/gatsby/lib/redux/actions.js new file mode 100644 index 0000000000000..148ce36f0a785 --- /dev/null +++ b/packages/gatsby/lib/redux/actions.js @@ -0,0 +1,93 @@ +import Joi from "joi" +import chalk from "chalk" +const _ = require("lodash") +const { bindActionCreators } = require("redux") + +const { store } = require("./index") +import * as joiSchemas from "../joi-schemas/joi" +import { layoutComponentChunkName } from "../utils/js-chunk-names" + +const actions = {} + +actions.upsertPage = page => { + page.componentChunkName = layoutComponentChunkName(page.component) + const result = Joi.validate(page, joiSchemas.pageSchema) + if (result.error) { + console.log( + chalk.blue.bgYellow(`The upserted page didn't pass validation`) + ) + console.log(chalk.bold.red(result.error)) + console.log(page) + return + } + + return { + type: "UPSERT_PAGE", + payload: page, + } +} + +actions.updateNode = node => { + if (!_.isObject(node)) { + return console.log( + chalk.bold.red( + `The node passed to the "updateNode" action creator must be an object` + ) + ) + } + const result = Joi.validate(node, joiSchemas.nodeSchema) + if (result.error) { + console.log(chalk.bold.red(`The updated node didn't pass validation`)) + console.log(chalk.bold.red(result.error)) + console.log(node) + return { type: `VALIDATION_ERROR`, error: true } + } + + return { + type: "UPDATE_NODE", + payload: node, + } +} + +actions.createNode = node => { + if (!_.isObject(node)) { + return console.log( + chalk.bold.red( + `The node passed to the "createNode" action creator must be an object` + ) + ) + } + const result = Joi.validate(node, joiSchemas.nodeSchema) + if (result.error) { + console.log(chalk.bold.red(`The new node didn't pass validation`)) + console.log(chalk.bold.red(result.error)) + console.log(node) + return { type: `VALIDATION_ERROR`, error: true } + } + + return { + type: "CREATE_NODE", + payload: node, + } +} + +actions.updateSourcePluginStatus = status => { + return { + type: `UPDATE_SOURCE_PLUGIN_STATUS`, + payload: status, + } +} + +actions.addPageDependency = ({ path, nodeId, connection }) => { + return { + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path, + nodeId, + connection, + }, + } +} + +exports.actions = actions +exports.boundActionCreators = bindActionCreators(actions, store.dispatch) diff --git a/packages/gatsby/lib/redux/index.js b/packages/gatsby/lib/redux/index.js new file mode 100644 index 0000000000000..cb092514b97bc --- /dev/null +++ b/packages/gatsby/lib/redux/index.js @@ -0,0 +1,46 @@ +const Redux = require("redux") +const _ = require("lodash") +const { composeWithDevTools } = require("remote-redux-devtools") +const apiRunnerNode = require("../utils/api-runner-node") + +// Reducers +const reducers = require("./reducers") + +const initialState = {} + +const composeEnhancers = composeWithDevTools({ + realtime: true, + port: 19999, + name: `gatsby-redux`, +}) + +const store = Redux.createStore( + Redux.combineReducers({ ...reducers }), + initialState, + composeEnhancers(Redux.applyMiddleware()) +) + +exports.store = store +exports.getNodes = () => { + return _.values(store.getState().nodes) +} +const getNode = id => { + return store.getState().nodes[id] +} +exports.getNode = getNode + +exports.getNodeAndSavePathDependency = (id, path) => { + const node = getNode(id) + store.dispatch({ + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path, + nodeId: id, + }, + }) + return node +} + +// Start plugin runner which listens to the store +// and invokes Gatsby API based on actions. +require("./plugin-runner") diff --git a/packages/gatsby/lib/redux/plugin-runner.js b/packages/gatsby/lib/redux/plugin-runner.js new file mode 100644 index 0000000000000..fbd3661729d5a --- /dev/null +++ b/packages/gatsby/lib/redux/plugin-runner.js @@ -0,0 +1,12 @@ +// Invoke plugins for certain actions. + +const { store } = require("./index") +const apiRunnerNode = require("../utils/api-runner-node") + +store.subscribe(() => { + const state = store.getState() + if (state.lastAction.type === "CREATE_NODE") { + const node = state.nodes[state.lastAction.payload.id] + apiRunnerNode(`onNodeCreate`, { node }) + } +}) diff --git a/packages/gatsby/lib/redux/reducers/__tests__/__snapshots__/page-data-dependencies.js.snap b/packages/gatsby/lib/redux/reducers/__tests__/__snapshots__/page-data-dependencies.js.snap new file mode 100644 index 0000000000000..8697108dd2313 --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/__tests__/__snapshots__/page-data-dependencies.js.snap @@ -0,0 +1,16 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`add page data dependency lets you add both a node and connection in one action 1`] = ` +Object { + "connections": Object { + "MarkdownRemark": Array [ + "/hi/", + ], + }, + "nodes": Object { + "SuperCoolNode": Array [ + "/hi/", + ], + }, +} +`; diff --git a/packages/gatsby/lib/redux/reducers/__tests__/page-data-dependencies.js b/packages/gatsby/lib/redux/reducers/__tests__/page-data-dependencies.js new file mode 100644 index 0000000000000..cab5b1b01e04d --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/__tests__/page-data-dependencies.js @@ -0,0 +1,77 @@ +const reducer = require("../page-data-dependencies"); + +describe(`add page data dependency`, () => { + it(`lets you add a node dependency`, () => { + const action = { + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path: `/hi/`, + nodeId: `123`, + }, + }; + + expect(reducer(undefined, action)).toEqual({ + connections: {}, + nodes: { + "123": [`/hi/`], + }, + }); + }); + it(`lets you add a connection dependency`, () => { + const action = { + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path: `/hi/`, + connection: `MarkdownRemark`, + }, + }; + + expect(reducer(undefined, action)).toEqual({ + connections: { + MarkdownRemark: ["/hi/"], + }, + nodes: {}, + }); + }); + it(`removes duplicate paths`, () => { + const action = { + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path: `/hi/`, + nodeId: 1, + connection: `MarkdownRemark`, + }, + }; + const action2 = { + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path: `/hi2/`, + nodeId: 1, + connection: `MarkdownRemark`, + }, + }; + + let state = reducer(undefined, action); + // Do it again + state = reducer(state, action); + // Add different action + state = reducer(state, action2); + + expect(state.connections["MarkdownRemark"].length).toEqual(2); + expect(state.nodes[1].length).toEqual(2); + }); + it(`lets you add both a node and connection in one action`, () => { + const action = { + type: `ADD_PAGE_DEPENDENCY`, + payload: { + path: `/hi/`, + connection: `MarkdownRemark`, + nodeId: `SuperCoolNode`, + }, + }; + + let state = reducer(undefined, action); + + expect(state).toMatchSnapshot(); + }); +}); diff --git a/packages/gatsby/lib/redux/reducers/config.js b/packages/gatsby/lib/redux/reducers/config.js new file mode 100644 index 0000000000000..498184726708c --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/config.js @@ -0,0 +1,29 @@ +const Joi = require("joi"); +const chalk = require("chalk"); + +const { gatsbyConfigSchema } = require("../../joi-schemas/joi"); + +module.exports = (state = {}, action) => { + switch (action.type) { + case "SET_SITE_CONFIG": + // Validate the config. + const result = Joi.validate(action.payload, gatsbyConfigSchema); + // TODO use Redux for capturing errors from different + // parts of Gatsby so a) can capture richer errors and b) be + // more flexible how to display them. + if (result.error) { + console.log( + chalk.blue.bgYellow(`The site's gatsby.config.js failed validation`) + ); + console.log(chalk.bold.red(result.error)); + console.log(action.payload); + throw new Error(`The site's gatsby.config.js failed validation`); + return; + } + return { + ...action.payload, + }; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/flattened-plugins.js b/packages/gatsby/lib/redux/reducers/flattened-plugins.js new file mode 100644 index 0000000000000..8efa943a7d9b7 --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/flattened-plugins.js @@ -0,0 +1,8 @@ +module.exports = (state = [], action) => { + switch (action.type) { + case "SET_SITE_FLATTENED_PLUGINS": + return [...action.payload]; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/index.js b/packages/gatsby/lib/redux/reducers/index.js new file mode 100644 index 0000000000000..920170c56e374 --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/index.js @@ -0,0 +1,12 @@ +module.exports = { + program: require("./program"), + nodes: require("./nodes"), + lastAction: require("./last-action"), + plugins: require("./plugins"), + flattenedPlugins: require("./flattened-plugins"), + config: require("./config"), + pages: require("./pages"), + schema: require("./schema"), + status: require("./status"), + pageDataDependencies: require("./page-data-dependencies"), +}; diff --git a/packages/gatsby/lib/redux/reducers/last-action.js b/packages/gatsby/lib/redux/reducers/last-action.js new file mode 100644 index 0000000000000..13fac38578428 --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/last-action.js @@ -0,0 +1,3 @@ +module.exports = (state = null, action) => { + return action; +}; diff --git a/packages/gatsby/lib/redux/reducers/nodes.js b/packages/gatsby/lib/redux/reducers/nodes.js new file mode 100644 index 0000000000000..40d94c78f68f4 --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/nodes.js @@ -0,0 +1,16 @@ +module.exports = (state = {}, action) => { + switch (action.type) { + case "CREATE_NODE": + return { + ...state, + [action.payload.id]: action.payload, + }; + case "UPDATE_NODE": + return { + ...state, + [action.payload.id]: action.payload, + }; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/page-data-dependencies.js b/packages/gatsby/lib/redux/reducers/page-data-dependencies.js new file mode 100644 index 0000000000000..79d76388d3a8f --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/page-data-dependencies.js @@ -0,0 +1,47 @@ +const _ = require("lodash"); + +module.exports = (state = { nodes: {}, connections: {} }, action) => { + switch (action.type) { + case "ADD_PAGE_DEPENDENCY": + if (action.payload.path === "") { + return state; + } + + // If this nodeId not set yet. + if (action.payload.nodeId) { + if (!_.has(state, `nodes.${action.payload.nodeId}`)) { + state.nodes[action.payload.nodeId] = [action.payload.path]; + } else { + if ( + _.includes(state.nodes[action.payload.nodeId], action.payload.path) + ) { + state.nodes[action.payload.nodeId] = state.nodes[ + action.payload.nodeId + ].concat([action.payload.path]); + } + } + } + + // If this connection not set yet. + if (action.payload.connection) { + if (!_.has(state, `connections.${action.payload.connection}`)) { + state.connections[action.payload.connection] = [action.payload.path]; + } else { + if ( + !_.includes( + state.connections[action.payload.connection], + action.payload.path + ) + ) { + state.connections[action.payload.connection] = state.connections[ + action.payload.connection + ].concat([action.payload.path]); + } + } + } + + return state; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/pages.js b/packages/gatsby/lib/redux/reducers/pages.js new file mode 100644 index 0000000000000..927357485874b --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/pages.js @@ -0,0 +1,24 @@ +const _ = require("lodash"); + +module.exports = (state = [], action) => { + switch (action.type) { + case "UPSERT_PAGE": + const index = _.findIndex(state, p => { + return p.path === action.payload.path; + }); + // If the path already exists, overwrite it. + // Otherwise, add it to the end. + if (index !== -1) { + return [ + ...state + .slice(0, index) + .concat(action.payload) + .concat(state.slice(index + 1)), + ]; + } else { + return [...state.concat(action.payload)]; + } + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/plugins.js b/packages/gatsby/lib/redux/reducers/plugins.js new file mode 100644 index 0000000000000..f19db8c6a762e --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/plugins.js @@ -0,0 +1,8 @@ +module.exports = (state = [], action) => { + switch (action.type) { + case "SET_SITE_PLUGINS": + return [...action.payload]; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/program.js b/packages/gatsby/lib/redux/reducers/program.js new file mode 100644 index 0000000000000..fec90c169957b --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/program.js @@ -0,0 +1,11 @@ +module.exports = (state = { directory: `/` }, action) => { + switch (action.type) { + case "SET_PROGRAM": + return { + ...action.payload, + }; + + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/schema.js b/packages/gatsby/lib/redux/reducers/schema.js new file mode 100644 index 0000000000000..f72ef3e3770ef --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/schema.js @@ -0,0 +1,8 @@ +module.exports = (state = {}, action) => { + switch (action.type) { + case "SET_SCHEMA": + return action.payload; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/redux/reducers/status.js b/packages/gatsby/lib/redux/reducers/status.js new file mode 100644 index 0000000000000..d169773034dff --- /dev/null +++ b/packages/gatsby/lib/redux/reducers/status.js @@ -0,0 +1,11 @@ +module.exports = (state = {}, action) => { + switch (action.type) { + case "UPDATE_SOURCE_PLUGIN_STATUS": + return { + ...state, + [action.payload.plugin]: action.payload.ready, + }; + default: + return state; + } +}; diff --git a/packages/gatsby/lib/schema/__tests__/__snapshots__/ast-utils-test.js.snap b/packages/gatsby/lib/schema/__tests__/__snapshots__/data-tree-utils-test.js.snap similarity index 82% rename from packages/gatsby/lib/schema/__tests__/__snapshots__/ast-utils-test.js.snap rename to packages/gatsby/lib/schema/__tests__/__snapshots__/data-tree-utils-test.js.snap index 26a2f8fddef23..b7d33d7f7292a 100644 --- a/packages/gatsby/lib/schema/__tests__/__snapshots__/ast-utils-test.js.snap +++ b/packages/gatsby/lib/schema/__tests__/__snapshots__/data-tree-utils-test.js.snap @@ -1,6 +1,6 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`Gatsby AST utils build enum values for fields from array on nodes 1`] = ` +exports[`Gatsby data tree utils build enum values for fields from array on nodes 1`] = ` Object { "anArray": Object { "field": "anArray", @@ -29,7 +29,7 @@ Object { } `; -exports[`Gatsby AST utils builds field examples from an array of nodes 1`] = ` +exports[`Gatsby data tree utils builds field examples from an array of nodes 1`] = ` Object { "anArray": Array [ 1, diff --git a/packages/gatsby/lib/schema/__tests__/ast-utils-test.js b/packages/gatsby/lib/schema/__tests__/data-tree-utils-test.js similarity index 74% rename from packages/gatsby/lib/schema/__tests__/ast-utils-test.js rename to packages/gatsby/lib/schema/__tests__/data-tree-utils-test.js index df3e02f601787..58a5a95716d8f 100644 --- a/packages/gatsby/lib/schema/__tests__/ast-utils-test.js +++ b/packages/gatsby/lib/schema/__tests__/data-tree-utils-test.js @@ -1,6 +1,9 @@ -const { extractFieldExamples, buildFieldEnumValues } = require("../ast-utils") +const { + extractFieldExamples, + buildFieldEnumValues, +} = require("../data-tree-utils"); -describe(`Gatsby AST utils`, () => { +describe(`Gatsby data tree utils`, () => { const nodes = [ { name: `The Mad Max`, @@ -26,17 +29,17 @@ describe(`Gatsby AST utils`, () => { circle: `happy`, }, }, - ] + ]; it(`builds field examples from an array of nodes`, () => { - expect(extractFieldExamples({ nodes })).toMatchSnapshot() - }) + expect(extractFieldExamples({ nodes })).toMatchSnapshot(); + }); it(`ignores fields that have a null value`, () => { - expect(extractFieldExamples({ nodes }).iAmNull).not.toBeDefined() - }) + expect(extractFieldExamples({ nodes }).iAmNull).not.toBeDefined(); + }); it(`build enum values for fields from array on nodes`, () => { - expect(buildFieldEnumValues(nodes)).toMatchSnapshot() - }) -}) + expect(buildFieldEnumValues(nodes)).toMatchSnapshot(); + }); +}); diff --git a/packages/gatsby/lib/schema/__tests__/infer-graphql-type-test.js b/packages/gatsby/lib/schema/__tests__/infer-graphql-type-test.js index 2d452dd5a88cd..4e6cd8e4cb586 100644 --- a/packages/gatsby/lib/schema/__tests__/infer-graphql-type-test.js +++ b/packages/gatsby/lib/schema/__tests__/infer-graphql-type-test.js @@ -91,6 +91,7 @@ test(`Infers graphql type from array of nodes`, () => { { hair: 2, anArray: [1, 2, 5, 4], + externalUrl: null, date: `1984`, frontmatter: { date: `1984`, diff --git a/packages/gatsby/lib/schema/build-connection-fields.js b/packages/gatsby/lib/schema/build-connection-fields.js index 37181c9c20b84..27fbd42ae0e85 100644 --- a/packages/gatsby/lib/schema/build-connection-fields.js +++ b/packages/gatsby/lib/schema/build-connection-fields.js @@ -12,7 +12,7 @@ const { connectionFromArray, } = require("graphql-skip-limit") -const { buildFieldEnumValues } = require("./ast-utils") +const { buildFieldEnumValues } = require("./data-tree-utils") module.exports = type => { //nodes, nodeType) => { diff --git a/packages/gatsby/lib/schema/build-node-connections.js b/packages/gatsby/lib/schema/build-node-connections.js index 628ce8217b463..ebce2bc02cddd 100644 --- a/packages/gatsby/lib/schema/build-node-connections.js +++ b/packages/gatsby/lib/schema/build-node-connections.js @@ -13,6 +13,7 @@ const { inferInputObjectStructureFromNodes, } = require(`./infer-graphql-input-fields`) const buildConnectionFields = require("./build-connection-fields") +const { getNodes } = require("../redux") module.exports = (types: any) => { const connections = {} @@ -36,12 +37,18 @@ module.exports = (types: any) => { ...connectionArgs, ...inferredInputFields, }, - resolve(object, resolveArgs) { + resolve(object, resolveArgs, b, { rootValue }) { + let path + if (typeof rootValue !== `undefined`) { + path = rootValue.path + } const runSift = require("./run-sift") + const latestNodes = _.filter(getNodes(), n => n.type === type.name) return runSift({ args: resolveArgs, - nodes, + nodes: latestNodes, connection: true, + path, }) }, } diff --git a/packages/gatsby/lib/schema/build-node-types.js b/packages/gatsby/lib/schema/build-node-types.js index 49e9f21cb4b82..989096772430a 100644 --- a/packages/gatsby/lib/schema/build-node-types.js +++ b/packages/gatsby/lib/schema/build-node-types.js @@ -19,18 +19,22 @@ const { inferInputObjectStructureFromNodes, } = require(`./infer-graphql-input-fields`) const nodeInterface = require("./node-interface") -const { siteDB } = require("../utils/globals") +const { + store, + getNodes, + getNode, + getNodeAndSavePathDependency, +} = require("../redux") + +const { boundActionCreators } = require("../redux/actions") +const { addPageDependency } = boundActionCreators -module.exports = async (ast: any) => +module.exports = async () => new Promise(resolve => { - const allNodes = select(ast, `*`) const processedTypes = {} - // Identify node types in the AST. - const types = _.groupBy(allNodes, node => node.type) - // Delete root and rootDirectory. - delete types.root - delete types.rootDirectory + // Identify node types in the data. + const types = _.groupBy(getNodes(), node => node.type) const createNodeFields = type => { const defaultNodeFields = { @@ -45,17 +49,24 @@ module.exports = async (ast: any) => parent: { type: nodeInterface, description: `The parent of this node.`, + resolve(node, a, context) { + return getNodeAndSavePathDependency(node.parent, context.path) + }, }, children: { type: new GraphQLList(nodeInterface), description: `The children of this node.`, + resolve(node, a, context) { + return node.children.map(id => + getNodeAndSavePathDependency(id, context.path)) + }, }, } const inferredFields = inferObjectStructureFromNodes({ nodes: type.nodes, types: _.values(processedTypes), - allNodes, + allNodes: getNodes(), }) return { @@ -77,7 +88,7 @@ module.exports = async (ast: any) => } apiRunner(`extendNodeType`, { type: nodeType, - ast, + allNodes: getNodes(), }).then(fieldsFromPlugins => { const mergedFieldsFromPlugins = _.merge(...fieldsFromPlugins) nodeType.fieldsFromPlugins = mergedFieldsFromPlugins @@ -102,24 +113,29 @@ module.exports = async (ast: any) => args: { ...inputArgs, }, - resolve(a, args) { + resolve(a, args, context) { const runSift = require("./run-sift") + const latestNodes = _.filter( + getNodes(), + n => n.type === typeName + ) return runSift({ args, - nodes, - })[0] + nodes: latestNodes, + path: context.path, + }) }, } nodeType.field = { name: _.camelCase(`${typeName} field`), type: nodeType.nodeObjectType, - resolve: (node, a, b, { fieldName }) => { - const mapping = siteDB().get(`config`).mapping + resolve: (node, a, context, { fieldName }) => { + const mapping = store.getState().config.mapping const fieldSelector = `${node.___path}.${fieldName}` let fieldValue = node[fieldName] const sourceFileNode = _.find( - allNodes, + getNodes(), n => n.type === `File` && n.id === node._sourceNodeId ) @@ -132,10 +148,14 @@ module.exports = async (ast: any) => path.resolve(sourceFileNode.dir, fieldValue) ) const linkedFileNode = _.find( - allNodes, + getNodes(), n => n.type === `File` && n.id === fileLinkPath ) if (linkedFileNode) { + addPageDependency({ + path: context.path, + nodeId: linkedFileNode.id, + }) return linkedFileNode } } @@ -148,21 +168,33 @@ module.exports = async (ast: any) => // and try to resolve it. Probably a better way is that each typegen // plugin can define a custom resolve function which handles special // logic for alternative ways of adding links between nodes. - let linkedFileNode = allNodes.find( + let linkedFileNode + //linkedFileNode = select(dataTree, `${linkedType}[id="${node[fieldName]}"]`)[0] + linkedFileNode = _.find( + getNodes(), n => n.type === linkedType && n.id === node[fieldName] ) if (linkedFileNode) { + addPageDependency({ + path: context.path, + nodeId: linkedFileNode.id, + }) return linkedFileNode } else if (linkedType === `File`) { const fileLinkPath = slash( path.resolve(sourceFileNode.dir, node[fieldName]) ) - linkedFileNode = allNodes.find( + linkedFileNode = _.find( + getNodes(), n => n.type === `File` && n.id === fileLinkPath ) if (linkedFileNode) { + addPageDependency({ + path: context.path, + nodeId: linkedFileNode.id, + }) return linkedFileNode } else { console.error( diff --git a/packages/gatsby/lib/schema/ast-utils.js b/packages/gatsby/lib/schema/data-tree-utils.js similarity index 96% rename from packages/gatsby/lib/schema/ast-utils.js rename to packages/gatsby/lib/schema/data-tree-utils.js index b849c32250327..b3df40912558f 100644 --- a/packages/gatsby/lib/schema/ast-utils.js +++ b/packages/gatsby/lib/schema/data-tree-utils.js @@ -23,7 +23,7 @@ const extractFieldExamples = (exports.extractFieldExamples = ( truthyExamples[k] = v } }) - examples = _.merge(examples, truthyExamples) + examples = _.assign(examples, truthyExamples) } }) diff --git a/packages/gatsby/lib/schema/index.js b/packages/gatsby/lib/schema/index.js index 96c89fa4e3705..8aca78dac4071 100644 --- a/packages/gatsby/lib/schema/index.js +++ b/packages/gatsby/lib/schema/index.js @@ -6,33 +6,17 @@ const { GraphQLObjectType, } = require("graphql") -const { programDB } = require("../utils/globals") const siteSchema = require("./site-schema") const apiRunner = require("../utils/api-runner-node") const buildNodeTypes = require("./build-node-types") const buildNodeConnections = require("./build-node-connections") +const { store } = require("../redux") +const queryRunner = require("../utils/query-runner") -module.exports = async () => { - console.time(`building ast`) - const sourceAST = await apiRunner(`sourceNodes`) - let root = { type: `root`, children: sourceAST } - // Add parent reference to each source node. - sourceAST.forEach(sourceNode => { - sourceNode.parent = root - }) - await apiRunner(`modifyAST`, { ast: root }) - // Add parents reference to each node. - root = parents(root) - console.timeEnd(`building ast`) - +async function buildSchema() { console.time(`building schema`) - // For each type in the AST, create a graphql field, by first infering fields - // from fields in AST nodes and then allowing plugins to add additional node - // fields, then create connections for each node type. - // [ { type, nodes, name } ] - const typesGQL = await buildNodeTypes(root) + const typesGQL = await buildNodeTypes() const connections = buildNodeConnections(_.values(typesGQL)) - console.timeEnd(`building schema`) const schema = new GraphQLSchema({ query: new GraphQLObjectType({ @@ -45,5 +29,52 @@ module.exports = async () => { }), }), }) - return schema + + console.timeEnd(`building schema`) + store.dispatch({ + type: `SET_SCHEMA`, + payload: schema, + }) + + return +} + +// This seems like the most sensible way to decide when the the initial +// search for nodes is finished. At least for filesystem based nodes. For +// source plugins pulling from remote systems, there'll probably need to be +// an explicit API for them to let Gatsby core know that a sync is complete. +const debounceNodeCreation = cb => { + const updateNode = _.debounce(cb, 250) + store.subscribe(() => { + const state = store.getState() + if ( + state.lastAction.type === "CREATE_NODE" || + state.lastAction.type === `UPDATE_NODE` || + state.lastAction.type === `UPDATE_SOURCE_PLUGIN_STATUS` + ) { + updateNode() + } + }) +} + +module.exports = () => { + return new Promise(resolve => { + console.time(`sourcing and parsing nodes`) + apiRunner(`sourceNodes`) + let builtSchema = false + debounceNodeCreation(() => { + const state = store.getState() + // Check if the schema has been built yet and if + // all source plugins have reported that they're ready. + if (!builtSchema && _.every(_.values(state.status))) { + console.timeEnd(`sourcing and parsing nodes`) + builtSchema = true + // Resolve promise once the schema is built. + buildSchema().then(() => resolve()) + } else { + // Run the query runner now. + queryRunner() + } + }) + }) } diff --git a/packages/gatsby/lib/schema/infer-graphql-input-fields.js b/packages/gatsby/lib/schema/infer-graphql-input-fields.js index bbe87eb89bb7d..5e2c3970aca70 100644 --- a/packages/gatsby/lib/schema/infer-graphql-input-fields.js +++ b/packages/gatsby/lib/schema/infer-graphql-input-fields.js @@ -13,7 +13,10 @@ const _ = require("lodash") const moment = require("moment") const typeOf = require("type-of") -const { extractFieldExamples, buildFieldEnumValues } = require("./ast-utils") +const { + extractFieldExamples, + buildFieldEnumValues, +} = require("./data-tree-utils") const typeFields = type => { switch (type) { diff --git a/packages/gatsby/lib/schema/infer-graphql-type.js b/packages/gatsby/lib/schema/infer-graphql-type.js index 293d00c626e0f..7690d92f3eec5 100644 --- a/packages/gatsby/lib/schema/infer-graphql-type.js +++ b/packages/gatsby/lib/schema/infer-graphql-type.js @@ -11,8 +11,10 @@ const _ = require("lodash") const moment = require("moment") const parseFilepath = require("parse-filepath") const mime = require("mime") -const { siteDB } = require("../utils/globals") const isRelative = require("is-relative-url") +const { store, getNodes } = require("../redux") +const { boundActionCreators } = require("../redux/actions") +const { addPageDependency } = boundActionCreators const inferGraphQLType = ({ value, fieldName, ...otherArgs }) => { if (Array.isArray(value)) { @@ -146,7 +148,7 @@ const inferObjectStructureFromNodes = (exports.inferObjectStructureFromNodes = ( delete fieldExamples.children } - const config = siteDB().get(`config`) + const config = store.getState().config let mapping if (config) { mapping = config.mapping @@ -160,13 +162,22 @@ const inferObjectStructureFromNodes = (exports.inferObjectStructureFromNodes = ( const matchedTypes = types.filter( type => type.name === mapping[fieldSelector] ) - const findNode = fieldValue => { + if (_.isEmpty(matchedTypes)) { + console.log( + `Couldn't find a matching node type for "${fieldSelector}"` + ) + return + } + const findNode = (fieldValue, path) => { const linkedType = mapping[fieldSelector] + console.log("findNode", linkedType, fieldValue) const linkedNode = _.find( - allNodes, + getNodes(), n => n.type === linkedType && n.id === fieldValue ) if (linkedNode) { + console.log(`ADD_PAGE_DEPENDENCY`, path, linkedNode.id) + addPageDependency({ path, nodeId: linkedNode.id }) return linkedNode } } @@ -177,20 +188,21 @@ const inferObjectStructureFromNodes = (exports.inferObjectStructureFromNodes = ( let fieldValue = node[fieldName] if (fieldValue) { - return fieldValue.map(value => findNode(value)) + return fieldValue.map(value => findNode(value, b.path)) } else { return null } }, } } else { + console.log(matchedTypes) inferredFields[k] = { type: matchedTypes[0].nodeObjectType, resolve: (node, a, b, { fieldName }) => { let fieldValue = node[fieldName] if (fieldValue) { - return findNode(fieldValue) + return findNode(fieldValue, b.path) } else { return null } @@ -222,7 +234,7 @@ const inferObjectStructureFromNodes = (exports.inferObjectStructureFromNodes = ( fieldName: k, nodes, types, - allNodes, + allNodes: getNodes(), }) } }) diff --git a/packages/gatsby/lib/schema/run-sift.js b/packages/gatsby/lib/schema/run-sift.js index 732607dfa1a33..937e689107d26 100644 --- a/packages/gatsby/lib/schema/run-sift.js +++ b/packages/gatsby/lib/schema/run-sift.js @@ -4,13 +4,16 @@ const _ = require("lodash") const { connectionFromArray, } = require("graphql-skip-limit") +const { store } = require("../redux/") +const { boundActionCreators } = require("../redux/actions") +const { addPageDependency } = boundActionCreators type Node = { id: String, type: String, }; -module.exports = ({ args, nodes, connection = false }) => { +module.exports = ({ args, nodes, connection = false, path = "" }) => { // Clone args as for some reason graphql-js removes the constructor // from nested objects which breaks a check in sift.js. const clonedArgs = JSON.parse(JSON.stringify(args)) @@ -68,8 +71,16 @@ module.exports = ({ args, nodes, connection = false }) => { if (connection) { const connectionArray = connectionFromArray(result, args) connectionArray.totalCount = result.length + addPageDependency({ + path, + connection: result[0].type, + }) return connectionArray } else { - return result + addPageDependency({ + path, + nodeId: result[0].id, + }) + return result[0] } } diff --git a/packages/gatsby/lib/schema/site-schema.js b/packages/gatsby/lib/schema/site-schema.js index e0d7cf37d42bd..39597e0fdb976 100644 --- a/packages/gatsby/lib/schema/site-schema.js +++ b/packages/gatsby/lib/schema/site-schema.js @@ -5,10 +5,10 @@ import _ from "lodash" //import pagesSchema from './pages-schema' const { inferObjectStructureFromNodes } = require("./infer-graphql-type") -const { siteDB } = require("../utils/globals") +const { store } = require("../redux") module.exports = () => { - const config = siteDB().get(`config`) + const config = store.getState().config // Create site/page types. const metadataFields = () => { const fields = inferObjectStructureFromNodes({ @@ -60,7 +60,7 @@ module.exports = () => { site: { type: siteType, resolve() { - return siteDB().get(`config`) + return store.getState().config }, }, } diff --git a/packages/gatsby/lib/utils/api-runner-node.js b/packages/gatsby/lib/utils/api-runner-node.js index 954e657ad236f..87dc9d937ad05 100644 --- a/packages/gatsby/lib/utils/api-runner-node.js +++ b/packages/gatsby/lib/utils/api-runner-node.js @@ -1,22 +1,38 @@ const Promise = require("bluebird") const glob = require("glob") const _ = require("lodash") -const { siteDB, programDB } = require("../utils/globals") const mapSeries = require("async/mapSeries") const runAPI = (plugin, api, args) => { let linkPrefix = `` - if (programDB().prefixLinks) { - linkPrefix = siteDB().get(`config`).linkPrefix + const { + store, + getNodes, + getNode, + getNodeAndSavePathDependency, + } = require("../redux") + const { boundActionCreators } = require("../redux/actions") + if (store.getState().program.prefixLinks) { + linkPrefix = store.getState().config.linkPrefix } const gatsbyNode = require(`${plugin.resolve}/gatsby-node`) if (gatsbyNode[api]) { - console.log(`calling api handler in ${plugin.resolve} for api ${api}`) - const result = gatsbyNode[api]({ - args: { ...args, linkPrefix }, - pluginOptions: plugin.pluginOptions, - }) + if (!_.includes([`onNodeCreate`], api)) { + console.log(`calling api handler in ${plugin.resolve} for api ${api}`) + } + const result = gatsbyNode[api]( + { + ...args, + linkPrefix, + actionCreators: boundActionCreators, + store, + getNodes, + getNode, + getNodeAndSavePathDependency, + }, + plugin.pluginOptions + ) return Promise.resolve(result) } @@ -27,9 +43,10 @@ const runAPI = (plugin, api, args) => { let filteredPlugins const hasAPIFile = plugin => glob.sync(`${plugin.resolve}/gatsby-node*`)[0] -module.exports = async (api, args = {}) => - new Promise(resolve => { - const plugins = siteDB().get(`flattenedPlugins`) +module.exports = async (api, args = {}) => { + return new Promise(resolve => { + const { store } = require("../redux") + const plugins = store.getState().flattenedPlugins // Get the list of plugins that implement gatsby-node if (!filteredPlugins) { filteredPlugins = plugins.filter(plugin => hasAPIFile(plugin)) @@ -48,3 +65,4 @@ module.exports = async (api, args = {}) => } ) }) +} diff --git a/packages/gatsby/lib/utils/babel-config.js b/packages/gatsby/lib/utils/babel-config.js index 6a4b97625b711..8f5db4ddbbf2e 100644 --- a/packages/gatsby/lib/utils/babel-config.js +++ b/packages/gatsby/lib/utils/babel-config.js @@ -8,6 +8,8 @@ import objectAssign from "object-assign" import invariant from "invariant" import apiRunnerNode from "./api-runner-node" +// TODO update this to store Babelrc config in Redux store. + /** * Uses babel-core helpers to resolve the plugin given it's name. It * resolves plugins in the following order: diff --git a/packages/gatsby/lib/utils/build-html.js b/packages/gatsby/lib/utils/build-html.js index 399b7c6516207..3947e92d7bcb4 100644 --- a/packages/gatsby/lib/utils/build-html.js +++ b/packages/gatsby/lib/utils/build-html.js @@ -3,7 +3,7 @@ import webpack from "webpack" import Promise from "bluebird" import fs from "fs" import webpackConfig from "./webpack.config" -import { pagesDB } from "./globals" +const { store } = require("../redux") const debug = require("debug")("gatsby:html") @@ -12,7 +12,7 @@ module.exports = async (program: any) => { debug(`generating static HTML`) // Reduce pages objects to an array of paths. - const pages = [...pagesDB().values()].map(page => page.path) + const pages = store.getState().pages.map(page => page.path) // Static site generation. const compilerConfig = await webpackConfig( diff --git a/packages/gatsby/lib/utils/build.js b/packages/gatsby/lib/utils/build.js index 4a24744a67986..da73a7090e6fb 100644 --- a/packages/gatsby/lib/utils/build.js +++ b/packages/gatsby/lib/utils/build.js @@ -10,7 +10,7 @@ import buildProductionBundle from "./build-javascript" import postBuild from "./post-build" import bootstrap from "../bootstrap" import apiRunnerNode from "./api-runner-node" -import { pagesDB } from "./globals" +const { store } = require("../redux") async function html(program: any) { const directory = program.directory @@ -29,7 +29,7 @@ async function html(program: any) { // file. fs.writeFileSync( `${program.directory}/public/tmp-pages.json`, - JSON.stringify([...pagesDB().values()]) + JSON.stringify(store.getState().pages) ) await buildHTML(program).catch(err => console.log(`Generating HTML failed`, err)) diff --git a/packages/gatsby/lib/utils/develop.js b/packages/gatsby/lib/utils/develop.js index 5868ffbc3a9bb..bbf5513aace15 100644 --- a/packages/gatsby/lib/utils/develop.js +++ b/packages/gatsby/lib/utils/develop.js @@ -11,6 +11,11 @@ const ReactDOMServer = require("react-dom/server") const rl = require("readline") const parsePath = require("parse-filepath") const _ = require("lodash") +const remotedev = require("remotedev-server") +const { store } = require("../redux") + +// Start the dev server for Redux. +remotedev({ hostname: "localhost", port: 19999 }) const rlInterface = rl.createInterface({ input: process.stdin, @@ -22,12 +27,9 @@ const debug = require("debug")("gatsby:application") async function startServer(program) { const directory = program.directory - // Load pages for the site. - const { schema } = await bootstrap(program) + // Start bootstrap process. + await bootstrap(program) - // Generate random port for webpack to listen on. - // Perhaps should check if port is open. - //const webpackPort = Math.round(Math.random() * 1000 + 1000) const compilerConfig = await webpackConfig( program, directory, @@ -45,11 +47,12 @@ async function startServer(program) { } // We use the program port not the webpack-dev-server port as if you import - // files in your html.js they won't be available through the webpack-dev-server. - // By using the program port, requesting these imported files might accidentally work - // as the imported files will be available in /public. TODO test how expensive - // it'd be to do an actual static compile of the html.js on startup to avoid - // this discprenecy between dev and prod. + // files in your html.js they won't be available through the + // webpack-dev-server. By using the program port, requesting these + // imported files might accidentally work as the imported files will be + // available in /public. TODO test how expensive it'd be to do an actual + // static compile of the html.js on startup to avoid this discprenecy + // between dev and prod. const htmlCompilerConfig = await webpackConfig( program, directory, @@ -79,7 +82,7 @@ async function startServer(program) { app.use( `/graphql`, graphqlHTTP({ - schema, + schema: store.getState().schema, graphiql: true, }) ) diff --git a/packages/gatsby/lib/utils/globals.js b/packages/gatsby/lib/utils/globals.js index bb94e3a0b1c3f..75a2bb86400e6 100644 --- a/packages/gatsby/lib/utils/globals.js +++ b/packages/gatsby/lib/utils/globals.js @@ -2,8 +2,4 @@ const s = require(`observable`).signal const pages = s() pages(new Map()) -const site = s() -site(new Map()) -exports.siteDB = site -exports.pagesDB = pages -exports.programDB = s() +exports.rootDataTree = s() diff --git a/packages/gatsby/lib/utils/js-chunk-names.js b/packages/gatsby/lib/utils/js-chunk-names.js index 7484bffd0d5f9..a1974a65ca6d7 100644 --- a/packages/gatsby/lib/utils/js-chunk-names.js +++ b/packages/gatsby/lib/utils/js-chunk-names.js @@ -1,12 +1,18 @@ import _ from "lodash" const path = require("path") +const { store } = require("../redux") const pathChunkName = path => { const name = path === `/` ? `index` : _.kebabCase(path) return `path---${name}` } -const layoutComponentChunkName = (directory, componentPath) => { +const layoutComponentChunkName = componentPath => { + const program = store.getState().program + let directory = `/` + if (program && program.directory) { + directory = program.directory + } const name = path.relative(directory, componentPath) return `page-component---${_.kebabCase(name)}` } diff --git a/packages/gatsby/lib/utils/query-runner.js b/packages/gatsby/lib/utils/query-runner.js index 3f9d560e15632..a0f3a082d51e3 100644 --- a/packages/gatsby/lib/utils/query-runner.js +++ b/packages/gatsby/lib/utils/query-runner.js @@ -8,9 +8,36 @@ import parseFilepath from "parse-filepath" import glob from "glob" import apiRunnerNode from "./api-runner-node" import Promise from "bluebird" +const { store } = require("../redux") +const { boundActionCreators } = require("../redux/actions") import slash from "slash" -import { pagesDB, siteDB, programDB } from "./globals" import { layoutComponentChunkName, pathChunkName } from "./js-chunk-names" +import { graphql as graphqlFunction } from "graphql" + +let initialQueriesDone = false +let invalidPages = [] + +store.subscribe(() => { + const state = store.getState() + if (state.lastAction.type === "CREATE_NODE") { + const node = state.nodes[state.lastAction.payload.id] + // Find invalid pages. + if (state.pageDataDependencies.nodes[node.id]) { + invalidPages = invalidPages.concat( + state.pageDataDependencies.nodes[node.id] + ) + } + // Find invalid connections + if (state.pageDataDependencies.connections[node.type]) { + invalidPages = invalidPages.concat( + state.pageDataDependencies.connections[node.type] + ) + } + if (invalidPages.length > 0) { + console.log(`all pages invalidated by node change`, invalidPages) + } + } +}) // Babylon has to use a require... why? const babylon = require("babylon") @@ -20,7 +47,7 @@ const pascalCase = _.flow(_.camelCase, _.upperFirst) // Write out routes file. // Loop through all paths and write them out to child-routes.js const writeChildRoutes = () => { - const directory = programDB().directory + const directory = store.getState().program.directory let childRoutes = `` let splitChildRoutes = `` @@ -40,13 +67,13 @@ const writeChildRoutes = () => { const genSplitChildRoute = (page, noPath = false) => { const pathName = pathChunkName(page.path) const layoutName = layoutComponentChunkName( - programDB().directory, + store.getState().program.directory, page.component ) let pathStr = `` if (!noPath) { - if (programDB().prefixLinks) { - pathStr = `path:'${_.get(siteDB().get(`config`), `linkPrefix`, ``)}${page.path}',` + if (store.getState().program.prefixLinks) { + pathStr = `path:'${_.get(store.getState().config, `linkPrefix`, ``)}${page.path}',` } else { pathStr = `path:'${page.path}',` } @@ -70,10 +97,14 @@ const writeChildRoutes = () => { // Group pages under their layout component (if any). let defaultLayoutExists = true - if (glob.sync(`${programDB().directory}/layouts/default.*`).length === 0) { + if ( + glob.sync( + `${store.getState().program.directory}/layouts/default.*` + ).length === 0 + ) { defaultLayoutExists = false } - const groupedPages = _.groupBy([...pagesDB().values()], page => { + const groupedPages = _.groupBy(store.getState().pages, page => { // If is a string we'll assume it's a working layout component. if (_.isString(page.layout)) { return page.layout @@ -118,20 +149,20 @@ const writeChildRoutes = () => { let route = ` { path: '${indexPage.path}', - component: preferDefault(require('${programDB().directory}/layouts/${layout}')), + component: preferDefault(require('${store.getState().program.directory}/layouts/${layout}')), indexRoute: ${genChildRoute(indexPage, true)} childRoutes: [ ` let pathStr - if (programDB().prefixLinks) { - pathStr = `path:'${_.get(siteDB().get(`config`), `linkPrefix`, ``)}${indexPage.path}',` + if (store.getState().program.prefixLinks) { + pathStr = `path:'${_.get(store.getState().config, `linkPrefix`, ``)}${indexPage.path}',` } else { pathStr = `path:'${indexPage.path}',` } let splitRoute = ` { ${pathStr} - component: preferDefault(require('${programDB().directory}/layouts/${layout}')), + component: preferDefault(require('${store.getState().program.directory}/layouts/${layout}')), indexRoute: ${genSplitChildRoute(indexPage, true)} childRoutes: [ ` @@ -149,7 +180,7 @@ const writeChildRoutes = () => { // Add a fallback 404 route if one is defined. const notFoundPage = _.find( - [...pagesDB().values()], + store.getState().pages, page => page.path.indexOf("/404") !== -1 ) @@ -157,7 +188,7 @@ const writeChildRoutes = () => { const notFoundPageStr = ` { path: "*", - component: preferDefault(require('${programDB().directory}/layouts/default')), + component: preferDefault(require('${store.getState().program.directory}/layouts/default')), indexRoute: { component: preferDefault(require('${notFoundPage.component}')), }, @@ -165,13 +196,13 @@ const writeChildRoutes = () => { ` const pathName = pathChunkName(notFoundPage.path) const layoutName = layoutComponentChunkName( - programDB().directory, + store.getState().program.directory, notFoundPage.component ) const notFoundPageSplitStr = ` { path: "*", - component: preferDefault(require('${programDB().directory}/layouts/default')), + component: preferDefault(require('${store.getState().program.directory}/layouts/default')), indexRoute: { getComponent (nextState, cb) { require.ensure([], (require) => { @@ -193,17 +224,17 @@ const writeChildRoutes = () => { // Close out object. rootRoute += `]}` splitRootRoute += `]}` - const componentsStr = [...pagesDB().values()] - .map( - page => - `class ${page.internalComponentName} extends React.Component { + const componentsStr = store + .getState() + .pages.map(page => { + return `class ${page.internalComponentName} extends React.Component { render () { const Component = preferDefault(require('${page.component}')) const data = require('./json/${page.jsonName}') return } }` - ) + }) .join(`\n`) childRoutes = ` @@ -256,10 +287,38 @@ const debouncedWriteChildRoutes = _.debounce(writeChildRoutes, 250) // Queue for processing files const q = queue( async ({ file, graphql, directory }, callback) => { + const absolutePath = slash(path.resolve(file)) + + // Get paths for this file. + let paths = [] + store.getState().pages.forEach(page => { + if (page.component === absolutePath) { + paths.push(page) + } + }) + + // If we're running queries because of a source node change, + // filter out pages that we're invalidated. + if (invalidPages && invalidPages.length > 0) { + paths = _.filter(paths, p => _.includes(invalidPages, p.path)) + // Now remove this path from invalidPages. Note, this is ugly code + // and will be refactored soonish. + invalidPages = _.filter(invalidPages, p => p === p.path) + if (paths.length > 0) { + console.log("filtered paths", paths.map(p => p.path)) + } + } + + // If there's no paths, just return. + if (paths.length === 0) { + console.log(`no queries to run for ${absolutePath}`) + return callback() + } + let fileStr = fs.readFileSync(file, `utf-8`) let ast - // Preprocess and attempt to parse source; return an AST if we can, log an error if we can't. - // I'm unconvinced that this is an especially good implementation... + // Preprocess and attempt to parse source; return an AST if we can, log an + // error if we can't. const transpiled = await apiRunnerNode(`preprocessSource`, { filename: file, contents: fileStr, @@ -320,16 +379,16 @@ const q = queue( return }, }) - const absFile = slash(path.resolve(file)) - // Get paths for this file. - const paths = [] - pagesDB().forEach((value, key) => { - if (value.component === absFile) { - paths.push(value) - } - }) + console.log(`running queries for ${paths.length} paths for ${file}`) + const pathsInfo = { + componentPath: absolutePath, + directory, + paths, + graphql, + } + // Handle the result of the GraphQL query. const handleResult = (pathInfo, result = {}) => { // Combine the result with the path context. result.pathContext = pathInfo.context @@ -337,7 +396,7 @@ const q = queue( result.pathContext = pathInfo // Add result to page object. - const page = pagesDB().get(pathInfo.path) + const page = store.getState().pages.find(p => p.path === pathInfo.path) let jsonName = `${_.kebabCase(pathInfo.path)}.json` let internalComponentName = `Component${pascalCase(pathInfo.path)}` if (jsonName === `.json`) { @@ -346,7 +405,7 @@ const q = queue( } page.jsonName = jsonName page.internalComponentName = internalComponentName - pagesDB(pagesDB().set(page.path, page)) + boundActionCreators.upsertPage(page) // Save result to file. const resultJSON = JSON.stringify(clonedResult, null, 4) @@ -377,7 +436,7 @@ const q = queue( .then(result => handleResult(pathInfo, result)) }) ).then(() => { - console.log(`rewrote JSON for queries for ${absFile}`) + console.log(`rewrote JSON for queries for ${absolutePath}`) console.timeEnd(`graphql query time`) // Write out new child-routes.js in the .intermediate-representation directory // in the root of your site. @@ -388,44 +447,47 @@ const q = queue( 1 ) -module.exports = async (program, graphql) => { - return await new Promise(resolve => { - // Get unique array of component paths and then watch them. - // When a component is updated, rerun queries. - const components = _.uniq( - [...pagesDB().values()].map(page => page.component) - ) +// sigh... will be gone after refactor... +let realDrainCB +module.exports = async drainCb => { + if (_.isFunction(drainCb)) { + realDrainCB = drainCb + } + const schema = store.getState().schema + const graphql = (query, context) => { + return graphqlFunction(schema, query, context, context, context) + } + const { program } = store.getState() - // If there's no components yet, call the resolve early. - if (components.length === 0) { - resolve() - } else { - q.drain = () => { - // Only call resolve once. - q.drain = _.noop - resolve() - } - } + // Get unique array of component paths and then watch them. + // When a component is updated, rerun queries. + const components = _.uniq(store.getState().pages.map(page => page.component)) - components.forEach(path => { - q.push({ file: path, graphql, directory: program.directory }) - }) + // If there's no components yet, return + if (components.length === 0) { + return + } - // When not building, also start the watcher to detect when the components - // change. - if (_.last(program.parent.rawArgs) !== `build`) { - const watcher = chokidar.watch(components, { - ignored: /[\/\\]\./, - persistent: true, - }) + components.forEach(path => { + q.push({ file: path, graphql, directory: program.directory }) + }) + + // When not building, also start the watcher to detect when the components + // change. + if (_.last(program.parent.rawArgs) !== `build`) { + const watcher = chokidar.watch(components, { + ignored: /[\/\\]\./, + persistent: true, + }) + } - watcher - .on(`add`, path => - q.push({ file: path, graphql, directory: program.directory })) - .on(`change`, path => - q.push({ file: path, graphql, directory: program.directory })) - .on(`unlink`, path => - q.push({ file: path, graphql, directory: program.directory })) + q.drain = () => { + if (realDrainCB) { + realDrainCB() } - }) + // Only call callback once. + realDrainCB = _.noop + } + + return } diff --git a/packages/gatsby/lib/utils/webpack.config.js b/packages/gatsby/lib/utils/webpack.config.js index 9ee67cef348df..805c3e091860f 100644 --- a/packages/gatsby/lib/utils/webpack.config.js +++ b/packages/gatsby/lib/utils/webpack.config.js @@ -11,10 +11,10 @@ import { StatsWriterPlugin } from "webpack-stats-plugin" import webpackModifyValidate from "./webpack-modify-validate" +const { store } = require("../redux") const debug = require("debug")("gatsby:webpack-config") const WebpackMD5Hash = require("webpack-md5-hash") const ChunkManifestPlugin = require("chunk-manifest-webpack-plugin") -const { pagesDB, siteDB } = require("../utils/globals") const { layoutComponentChunkName } = require("./js-chunk-names") const genBabelConfig = require("./babel-config") @@ -55,7 +55,7 @@ module.exports = async ( path: `${directory}/public`, filename: `bundle-for-css.js`, publicPath: program.prefixLinks - ? `${siteDB().get(`config`).linkPrefix}/` + ? `${store.getState().config.linkPrefix}/` : `/`, } case `build-html`: @@ -66,7 +66,7 @@ module.exports = async ( filename: `render-page.js`, libraryTarget: `umd`, publicPath: program.prefixLinks - ? `${siteDB().get(`config`).linkPrefix}/` + ? `${store.getState().config.linkPrefix}/` : `/`, } case `build-javascript`: @@ -76,7 +76,7 @@ module.exports = async ( chunkFilename: `[name]-[chunkhash].js`, path: `${directory}/public`, publicPath: program.prefixLinks - ? `${siteDB().get(`config`).linkPrefix}/` + ? `${store.getState().config.linkPrefix}/` : `/`, } default: @@ -127,7 +127,7 @@ module.exports = async ( PUBLIC_DIR: JSON.stringify(`${process.cwd()}/public`), }, __PREFIX_LINKS__: program.prefixLinks, - __LINK_PREFIX__: JSON.stringify(siteDB().get(`config`).linkPrefix), + __LINK_PREFIX__: JSON.stringify(store.getState().config.linkPrefix), }), // Names module ids with their filepath. We use this in development // to make it easier to see what modules have hot reloaded, etc. as @@ -145,7 +145,7 @@ module.exports = async ( PUBLIC_DIR: JSON.stringify(`${process.cwd()}/public`), }, __PREFIX_LINKS__: program.prefixLinks, - __LINK_PREFIX__: JSON.stringify(siteDB().get(`config`).linkPrefix), + __LINK_PREFIX__: JSON.stringify(store.getState().config.linkPrefix), }), new ExtractTextPlugin(`styles.css`, { allChunks: true }), ] @@ -160,15 +160,13 @@ module.exports = async ( PUBLIC_DIR: JSON.stringify(`${process.cwd()}/public`), }, __PREFIX_LINKS__: program.prefixLinks, - __LINK_PREFIX__: JSON.stringify(siteDB().get(`config`).linkPrefix), + __LINK_PREFIX__: JSON.stringify(store.getState().config.linkPrefix), }), new ExtractTextPlugin(`build-html-styles.css`), ] case `build-javascript`: { // Get array of page template component names. - let components = Array.from(pagesDB().values()).map( - page => page.component - ) + let components = store.getState().pages.map(page => page.component) components = components.map(component => layoutComponentChunkName(program.directory, component)) components = _.uniq(components) @@ -230,7 +228,7 @@ module.exports = async ( PUBLIC_DIR: JSON.stringify(`${process.cwd()}/public`), }, __PREFIX_LINKS__: program.prefixLinks, - __LINK_PREFIX__: JSON.stringify(siteDB().get(`config`).linkPrefix), + __LINK_PREFIX__: JSON.stringify(store.getState().config.linkPrefix), }), // Extract CSS so it doesn't get added to JS bundles. new ExtractTextPlugin(`build-js-styles.css`), diff --git a/packages/gatsby/package.json b/packages/gatsby/package.json index 37a6edfef4f13..b77a19e310f41 100644 --- a/packages/gatsby/package.json +++ b/packages/gatsby/package.json @@ -46,6 +46,7 @@ "extract-text-webpack-plugin": "^1.0.1", "file-loader": "^0.9.0", "flat": "^2.0.1", + "flux-standard-action": "^1.2.0", "front-matter": "^2.1.0", "fs-extra": "^0.30.0", "glob": "^7.1.0", @@ -92,9 +93,12 @@ "react-hot-loader": "^3.0.0-beta.6", "react-router": "^2.8.1", "react-router-scroll": "^0.3.3", + "redux": "^3.6.0", "remark": "^6.2.0", "remark-html": "^5.0.1", "remark-parse": "^2.2.0", + "remote-redux-devtools": "^0.5.7", + "remotedev-server": "^0.3.0-beta-3", "sanitize-html": "^1.13.0", "sift": "^3.2.6", "slash": "^1.0.0", diff --git a/www/gatsby-node.js b/www/gatsby-node.js index 5dcfc261073bb..065ba5f3f3225 100644 --- a/www/gatsby-node.js +++ b/www/gatsby-node.js @@ -6,8 +6,8 @@ const parseFilepath = require("parse-filepath") const fs = require("fs-extra") const slash = require("slash") -exports.createPages = ({ args }) => { - const { graphql } = args +exports.createPages = ({ graphql, actionCreators }) => { + const { upsertPage } = actionCreators return new Promise((resolve, reject) => { const pages = [] const docsTemplate = path.resolve(`templates/template-docs-markdown.js`) @@ -28,13 +28,13 @@ exports.createPages = ({ args }) => { ` ).then(result => { if (result.errors) { - reject(result.errors) + console.log(result.errors) } // Create docs pages. _.each(result.data.allMarkdownRemark.edges, edge => { if (_.includes(edge.node.slug, `/blog/`)) { - pages.push({ + upsertPage({ path: `${edge.node.slug}`, // required component: slash(blogPostTemplate), context: { @@ -42,7 +42,7 @@ exports.createPages = ({ args }) => { }, }) } else { - pages.push({ + upsertPage({ path: `${edge.node.slug}`, // required component: slash( edge.node.package ? packageTemplate : docsTemplate @@ -54,19 +54,18 @@ exports.createPages = ({ args }) => { } }) - resolve(pages) + resolve() }) }) } // Create slugs for files. -exports.modifyAST = ({ args }) => { - const { ast } = args - const files = select(ast, `File`) - files.forEach(file => { - const parsedFilePath = parseFilepath(file.relativePath) - let slug - if (file.sourceName === `docs`) { +exports.onNodeCreate = ({ node, actionCreators, getNode }) => { + const { updateNode } = actionCreators + let slug + if (node.type === `File` && typeof node.slug === "undefined") { + const parsedFilePath = parseFilepath(node.relativePath) + if (node.sourceName === `docs`) { if (parsedFilePath.name !== `index` && parsedFilePath.dir !== ``) { slug = `/${parsedFilePath.dir}/${parsedFilePath.name}/` } else if (parsedFilePath.dir === ``) { @@ -74,25 +73,40 @@ exports.modifyAST = ({ args }) => { } else { slug = `/${parsedFilePath.dir}/` } - - // Generate slugs for package READMEs. - } else if ( - file.sourceName === `packages` && parsedFilePath.name === `README` + } + if (slug) { + node.slug = slug + updateNode(node) + } + } else if ( + node.type === `MarkdownRemark` && typeof node.slug === "undefined" + ) { + const fileNode = getNode(node.parent) + const parsedFilePath = parseFilepath(fileNode.relativePath) + // Add slugs for docs pages + if (fileNode.sourceName === `docs`) { + if (parsedFilePath.name !== `index` && parsedFilePath.dir !== ``) { + slug = `/${parsedFilePath.dir}/${parsedFilePath.name}/` + } else if (parsedFilePath.dir === ``) { + slug = `/${parsedFilePath.name}/` + } else { + slug = `/${parsedFilePath.dir}/` + } + } + // Add slugs for package READMEs. + if ( + fileNode.sourceName === `packages` && parsedFilePath.name === `README` ) { slug = `/docs/packages/${parsedFilePath.dir}/` - file.children[0].frontmatter = {} - file.children[0].frontmatter.title = parsedFilePath.dir - file.children[0].package = true + node.frontmatter = {} + node.frontmatter.title = parsedFilePath.dir + node.package = true } - - // Add to File & child nodes. - if (file.children[0]) { - file.children[0].slug = slug + if (slug) { + node.slug = slug + updateNode(node) } - file.slug = slug - }) - - return files + } } exports.postBuild = () => { diff --git a/www/package.json b/www/package.json index 882a5bcfc4067..8e73d57706a33 100644 --- a/www/package.json +++ b/www/package.json @@ -7,27 +7,27 @@ "dependencies": { "bluebird": "^3.4.6", "fs-extra": "^2.0.0", - "gatsby": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-link": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-parser-remark": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-parser-sharp": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-parser-yaml": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-catch-links": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-glamor": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-google-analytics": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-manifest": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-offline": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-plugin-sharp": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-source-filesystem": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-filesystem": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark-autolink-headers": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark-copy-linked-files": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark-prismjs": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark-responsive-iframe": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark-responsive-image": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-remark-smartypants": "1.0.0-alpha12-alpha.d7d6ef64", - "gatsby-typegen-sharp": "1.0.0-alpha12-alpha.d7d6ef64", + "gatsby": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-link": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-parser-remark": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-parser-sharp": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-parser-yaml": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-catch-links": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-glamor": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-google-analytics": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-manifest": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-offline": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-plugin-sharp": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-source-filesystem": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-filesystem": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark-autolink-headers": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark-copy-linked-files": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark-prismjs": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark-responsive-iframe": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark-responsive-image": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-remark-smartypants": "1.0.0-alpha12-alpha.1fdb9004", + "gatsby-typegen-sharp": "1.0.0-alpha12-alpha.1fdb9004", "lodash": "^4.16.6", "parse-filepath": "^1.0.1", "react-helmet": "^4.0.0", diff --git a/www/pages/blog/index.js b/www/pages/blog/index.js index 4687d16987cc2..c0b9c2c0b3162 100644 --- a/www/pages/blog/index.js +++ b/www/pages/blog/index.js @@ -6,7 +6,7 @@ import presets from "../../utils/presets" const IndexRoute = React.createClass({ render() { - // console.log(`blog posts`, this.props); + console.log(`blog posts`, this.props); const blogPosts = this.props.data.allMarkdownRemark.edges.map( edge => edge.node ) diff --git a/www/templates/template-blog-post.js b/www/templates/template-blog-post.js index d372ec65a6907..b430a63789e2e 100644 --- a/www/templates/template-blog-post.js +++ b/www/templates/template-blog-post.js @@ -6,7 +6,7 @@ import typography, { rhythm, scale } from "../utils/typography" const BlogPostTemplate = React.createClass({ render() { - //console.log(this.props) + console.log(this.props) const post = this.props.data.markdownRemark const twitterLine = post.frontmatter.author.twitter ? ` by ${post.frontmatter.author.twitter}` diff --git a/www/yarn.lock b/www/yarn.lock index 99594178b9675..bc4d9b613f4f5 100644 --- a/www/yarn.lock +++ b/www/yarn.lock @@ -2,6 +2,121 @@ # yarn lockfile v1 +"@types/accepts@*": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.2.tgz#52897ad5a51f05ea2f57f8e8136085c7d1c385a5" + +"@types/body-parser@0.0.33": + version "0.0.33" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-0.0.33.tgz#33ca1498fc37e51c5df0c81cae34569e7041e025" + dependencies: + "@types/express" "*" + +"@types/boom@0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/boom/-/boom-0.0.32.tgz#5dfd349b4e7ebe2c73ca8d39ab05687dd403f9a1" + dependencies: + "@types/node" "*" + +"@types/chai@^3.4.34": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-3.5.0.tgz#45e2dc2af9a5727be846af6e61d08ffc45d5b2ca" + +"@types/connect@^3.4.30": + version "3.4.30" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.30.tgz#0a8ede309ce0ebdba2f0534e574692511dd71eb6" + dependencies: + "@types/node" "*" + +"@types/cookies@*", "@types/cookies@^0.5.30": + version "0.5.30" + resolved "https://registry.yarnpkg.com/@types/cookies/-/cookies-0.5.30.tgz#de798b61d6c6da77d6559ab1db4c6f3c8b4935bd" + dependencies: + "@types/node" "*" + +"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.0.36": + version "4.0.44" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.0.44.tgz#a1c3bd5d80e93c72fba91a03f5412c47f21d4ae7" + dependencies: + "@types/node" "*" + +"@types/express@*", "@types/express@^4.0.33": + version "4.0.35" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.0.35.tgz#6267c7b60a51fac473467b3c4a02cd1e441805fe" + dependencies: + "@types/express-serve-static-core" "*" + "@types/serve-static" "*" + +"@types/fibers@0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/fibers/-/fibers-0.0.29.tgz#4c815209a717ede505c3040b4e3a31a7f5239d49" + +"@types/hapi@^13.0.35": + version "13.0.38" + resolved "https://registry.yarnpkg.com/@types/hapi/-/hapi-13.0.38.tgz#3671ab29fd465d61e394718ce546b7d5ef21a331" + dependencies: + "@types/node" "*" + +"@types/http-assert@*": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.2.0.tgz#0b82993036e86c6ff2944e033b73b57e85ccdcab" + +"@types/http-errors@^1.3.29": + version "1.5.34" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-1.5.34.tgz#d6a56f25d7b95dd07047680bf825632e29796815" + +"@types/keygrip@*": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/keygrip/-/keygrip-1.0.1.tgz#ff540462d2fb4d0a88441ceaf27d287b01c3d878" + +"@types/koa-bodyparser@^3.0.19": + version "3.0.23" + resolved "https://registry.yarnpkg.com/@types/koa-bodyparser/-/koa-bodyparser-3.0.23.tgz#0e719b708d463d1ea31a25971c485c2e4eb6ced4" + dependencies: + "@types/koa" "*" + +"@types/koa-compose@*": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@types/koa-compose/-/koa-compose-3.2.2.tgz#dc106e000bbf92a3ac900f756df47344887ee847" + +"@types/koa-router@^7.0.21": + version "7.0.22" + resolved "https://registry.yarnpkg.com/@types/koa-router/-/koa-router-7.0.22.tgz#92b4b533f074036250892fe35bb6329ee9242def" + dependencies: + "@types/koa" "*" + +"@types/koa@*", "@types/koa@^2.0.33": + version "2.0.39" + resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.0.39.tgz#45ba1249d8849b9b0ff8c1d6d2f80b0838b89ffa" + dependencies: + "@types/accepts" "*" + "@types/cookies" "*" + "@types/http-assert" "*" + "@types/keygrip" "*" + "@types/koa-compose" "*" + "@types/node" "*" + +"@types/mime@*", "@types/mime@0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-0.0.29.tgz#fbcfd330573b912ef59eeee14602bface630754b" + +"@types/multer@0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/multer/-/multer-0.0.32.tgz#f89c751227dc20b7c933c309a3e7467c499fcdec" + dependencies: + "@types/express" "*" + +"@types/node@*", "@types/node@^6.0.41": + version "6.0.68" + resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.68.tgz#0c43b6b8b9445feb86a0fbd3457e3f4bc591e66d" + +"@types/serve-static@*", "@types/serve-static@^1.7.31": + version "1.7.31" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.7.31.tgz#15456de8d98d6b4cff31be6c6af7492ae63f521a" + dependencies: + "@types/express-serve-static-core" "*" + "@types/mime" "*" + abab@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.3.tgz#b81de5f7274ec4e756d797cd834f303642724e5d" @@ -74,6 +189,10 @@ ansi-align@^1.1.0: dependencies: string-width "^1.0.1" +ansi-escapes@^1.1.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + ansi-html@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" @@ -115,6 +234,32 @@ anymatch@^1.3.0: arrify "^1.0.0" micromatch "^2.1.5" +apollo-server@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-0.3.3.tgz#3b6876c1d8bf56f51736375fa48f60dccada75a8" + dependencies: + "@types/body-parser" "0.0.33" + "@types/boom" "0.0.32" + "@types/chai" "^3.4.34" + "@types/connect" "^3.4.30" + "@types/cookies" "^0.5.30" + "@types/express" "^4.0.33" + "@types/express-serve-static-core" "^4.0.36" + "@types/fibers" "0.0.29" + "@types/hapi" "^13.0.35" + "@types/http-errors" "^1.3.29" + "@types/koa" "^2.0.33" + "@types/koa-bodyparser" "^3.0.19" + "@types/koa-router" "^7.0.21" + "@types/mime" "0.0.29" + "@types/multer" "0.0.32" + "@types/node" "^6.0.41" + "@types/serve-static" "^1.7.31" + boom "^4.0.0" + http-errors "^1.5.0" + source-map-support "^0.4.2" + typed-graphql "^1.0.2" + aproba@^1.0.3: version "1.1.1" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab" @@ -233,6 +378,12 @@ async@1.5.2, async@^1.3.0, async@^1.5.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" +async@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.0.0.tgz#d0900ad385af13804540a109c42166e3ae7b2b9d" + dependencies: + lodash "^4.8.0" + async@^0.9.0: version "0.9.2" resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" @@ -1043,14 +1194,30 @@ balanced-match@^0.4.1, balanced-match@^0.4.2: version "0.4.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" +base-64@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb" + base64-js@^1.0.2: version "1.2.0" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" +base64id@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/base64id/-/base64id-0.1.0.tgz#02ce0fdeee0cef4f40080e1e73e834f0b1bfce3f" + +base64url@2.0.0, base64url@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" + basename@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/basename/-/basename-0.1.2.tgz#d6039bef939863160c78048cced3c5e7f88cb261" +basic-auth@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.1.0.tgz#45221ee429f7ee1e5035be3f51533f1cdfd29884" + batch@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464" @@ -1137,6 +1304,21 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.6" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" +body-parser@^1.15.0: + version "1.17.1" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.17.1.tgz#75b3bc98ddd6e7e0d8ffe750dfaca5c66993fa47" + dependencies: + bytes "2.4.0" + content-type "~1.0.2" + debug "2.6.1" + depd "~1.1.0" + http-errors "~1.6.1" + iconv-lite "0.4.15" + on-finished "~2.3.0" + qs "6.4.0" + raw-body "~2.2.0" + type-is "~1.6.14" + boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" @@ -1153,6 +1335,12 @@ boom@^3.2.2: dependencies: hoek "4.x.x" +boom@^4.0.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" + dependencies: + hoek "4.x.x" + boxen@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/boxen/-/boxen-0.6.0.tgz#8364d4248ac34ff0ef1b2f2bf49a6c60ce0d81b6" @@ -1260,6 +1448,10 @@ buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" +buffer-equal-constant-time@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + buffer-peek-stream@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-peek-stream/-/buffer-peek-stream-1.0.1.tgz#53b47570a1347787c5bad4ca2ca3021f9d8b3cfd" @@ -1515,6 +1707,16 @@ cli-boxes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" +cli-cursor@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" + dependencies: + restore-cursor "^1.0.1" + +cli-width@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" + clipboard@^1.5.5: version "1.6.1" resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-1.6.1.tgz#65c5b654812466b0faab82dc6ba0f1d2f8e4be53" @@ -1660,7 +1862,7 @@ comma-separated-tokens@^1.0.1: dependencies: trim "0.0.1" -commander@2.9.0, commander@2.9.x, commander@^2.8.1, commander@^2.9.0: +commander@2.9.0, commander@2.9.x, commander@^2.2.0, commander@^2.8.1, commander@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" dependencies: @@ -1690,6 +1892,10 @@ compass-vertical-rhythm@^1.3.0: object-assign "^4.1.0" parse-unit "^1.0.1" +component-emitter@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.0.tgz#ccd113a86388d06482d03de3fc7df98526ba8efe" + compressible@~2.0.8: version "2.0.10" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.10.tgz#feda1c7f7617912732b29bf8cf26252a20b9eecd" @@ -1805,6 +2011,13 @@ 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" +cors@^2.7.1: + version "2.8.3" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.3.tgz#4cf78e1d23329a7496b2fc2225b77ca5bb5eb802" + dependencies: + object-assign "^4" + vary "^1" + create-ecdh@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" @@ -2017,6 +2230,10 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" +cycle@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2" + d@1: version "1.0.0" resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" @@ -2054,7 +2271,7 @@ debug@2.6.1: dependencies: ms "0.7.2" -debug@2.6.3, debug@^2.1.1, debug@^2.2.0, debug@^2.6.0: +debug@2.6.3, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.6.0: version "2.6.3" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.3.tgz#0f7eb8c30965ec08c72accfa0130c8b79984141d" dependencies: @@ -2173,6 +2390,10 @@ depd@1.1.0, depd@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" +deprecated-decorator@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/deprecated-decorator/-/deprecated-decorator-0.1.6.tgz#00966317b7a12fe92f3cc831f7583af329b86c37" + des.js@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" @@ -2202,7 +2423,7 @@ detect-indent@^4.0.0: dependencies: repeating "^2.0.0" -detect-port@^1.0.5: +detect-port@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.1.1.tgz#abb24845a0e0501d2a4313dfde93c2671f6ba998" dependencies: @@ -2275,6 +2496,10 @@ dot-prop@^3.0.0: dependencies: is-obj "^1.0.0" +double-ended-queue@^2.1.0-0: + version "2.1.0-0" + resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" + download@^4.0.0, download@^4.1.2: version "4.4.3" resolved "https://registry.yarnpkg.com/download/-/download-4.4.3.tgz#aa55fdad392d95d4b68e8c2be03e0c2aa21ba9ac" @@ -2333,11 +2558,18 @@ ecc-jsbn@~0.1.1: dependencies: jsbn "~0.1.0" +ecdsa-sig-formatter@1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz#4bc926274ec3b5abb5016e7e1d60921ac262b2a1" + dependencies: + base64url "^2.0.0" + safe-buffer "^5.0.1" + ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" -ejs@^2.3.4: +ejs@^2.3.4, ejs@^2.4.1: version "2.5.6" resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.6.tgz#479636bfa3fe3b1debd52087f0acb204b4f19c88" @@ -2624,6 +2856,10 @@ exenv@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.1.tgz#75de1c8dee02e952b102aa17f8875973e0df14f9" +exit-hook@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -2642,6 +2878,10 @@ expand-tilde@^1.2.0, expand-tilde@^1.2.1, expand-tilde@^1.2.2: dependencies: os-homedir "^1.0.1" +expirymanager@0.9.x: + version "0.9.3" + resolved "https://registry.yarnpkg.com/expirymanager/-/expirymanager-0.9.3.tgz#e5f6b3ba00d8d76cf63311c2b71d7dfc9bde3e4f" + express-graphql@^0.6.1: version "0.6.4" resolved "https://registry.yarnpkg.com/express-graphql/-/express-graphql-0.6.4.tgz#e51c6281d075613feac72b3fb569440602d3dfe4" @@ -2694,6 +2934,14 @@ extend@^3.0.0, extend@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" +external-editor@^1.0.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-1.1.1.tgz#12d7b0db850f7ff7e7081baf4005700060c4600b" + dependencies: + extend "^3.0.0" + spawn-sync "^1.0.15" + tmp "^0.0.29" + extglob@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" @@ -2892,6 +3140,16 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" +fleximap@0.9.x: + version "0.9.10" + resolved "https://registry.yarnpkg.com/fleximap/-/fleximap-0.9.10.tgz#1aa50ff6a8fea0037cc378e38ddacc091025ac10" + +flux-standard-action@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/flux-standard-action/-/flux-standard-action-1.2.0.tgz#d2d41612dde4cebddd11a76cfead8e84fc69ebdc" + dependencies: + lodash "^4.0.0" + for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -2936,6 +3194,13 @@ fs-exists-sync@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" +fs-extra@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.0.0.tgz#337352bded4a0b714f3eb84de8cea765e9d37600" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + fs-extra@^0.30.0: version "0.30.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" @@ -2997,42 +3262,43 @@ function-bind@^1.0.2, function-bind@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" -gatsby-link@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-link/-/gatsby-link-1.0.0-alpha12-alpha.d7d6ef64.tgz#d32c70f223038652bc156962b082c34560e6b3cd" +gatsby-link@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-link/-/gatsby-link-1.0.0-alpha12-alpha.1fdb9004.tgz#b63ad1ed366e24d1fabbc6b07a4142fc2d15dad7" -gatsby-parser-remark@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-parser-remark/-/gatsby-parser-remark-1.0.0-alpha12-alpha.d7d6ef64.tgz#7b4d6af4ddefb1e21ffbd018f24482a404d53f0a" +gatsby-parser-remark@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-parser-remark/-/gatsby-parser-remark-1.0.0-alpha12-alpha.1fdb9004.tgz#0ece297f3ea05ca2faca729a6f6fba2249bae40b" dependencies: bluebird "^3.4.6" gray-matter "^2.1.0" + lodash "^4.17.4" unist-util-select "^1.5.0" -gatsby-parser-sharp@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-parser-sharp/-/gatsby-parser-sharp-1.0.0-alpha12-alpha.d7d6ef64.tgz#6dd4f20eeb2b8d9e2bd92e9a371f7878f8565186" +gatsby-parser-sharp@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-parser-sharp/-/gatsby-parser-sharp-1.0.0-alpha12-alpha.1fdb9004.tgz#bc072e471beff98f075fec68f96e3484d4aa5548" dependencies: bluebird "^3.4.6" unist-util-select "^1.5.0" -gatsby-parser-yaml@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-parser-yaml/-/gatsby-parser-yaml-1.0.0-alpha12-alpha.d7d6ef64.tgz#ed19e0b4b3f804adbc421fa7f15b3fcf2328d8e4" +gatsby-parser-yaml@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-parser-yaml/-/gatsby-parser-yaml-1.0.0-alpha12-alpha.1fdb9004.tgz#75fce4099c22621b02f06f1f57327f0c173fb057" dependencies: bluebird "^3.4.6" js-yaml "3.7.0" unist-util-select "^1.5.0" -gatsby-plugin-catch-links@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-catch-links/-/gatsby-plugin-catch-links-1.0.0-alpha12-alpha.d7d6ef64.tgz#3df4278fd687692dca2ee2f60def1b350aeb19d1" +gatsby-plugin-catch-links@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-catch-links/-/gatsby-plugin-catch-links-1.0.0-alpha12-alpha.1fdb9004.tgz#63265fc0ce5cf60104a0c7a110806d7878f8a7fc" dependencies: catch-links "^2.0.1" -gatsby-plugin-glamor@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-glamor/-/gatsby-plugin-glamor-1.0.0-alpha12-alpha.d7d6ef64.tgz#79a4eabb9b26b14fd854df25a6b2ff9dafdce68c" +gatsby-plugin-glamor@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-glamor/-/gatsby-plugin-glamor-1.0.0-alpha12-alpha.1fdb9004.tgz#432711f4c862b1f63901bd92bc0c89e77c3fb064" dependencies: babel-plugin-glamor "^3.0.0-1" glamor next @@ -3040,27 +3306,27 @@ gatsby-plugin-glamor@1.0.0-alpha12-alpha.d7d6ef64: glamor-react "^3.0.0-1" glamor-server next -gatsby-plugin-google-analytics@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-google-analytics/-/gatsby-plugin-google-analytics-1.0.0-alpha12-alpha.d7d6ef64.tgz#e992c469679a6acd33c466cc23e103598b0190f1" +gatsby-plugin-google-analytics@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-google-analytics/-/gatsby-plugin-google-analytics-1.0.0-alpha12-alpha.1fdb9004.tgz#e57c8f9dc95b21777d95e6faa3181f8dd14eaae1" dependencies: react-ga "^2.1.2" -gatsby-plugin-manifest@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-manifest/-/gatsby-plugin-manifest-1.0.0-alpha12-alpha.d7d6ef64.tgz#1b68293739679911a3bd300185fd097564c6e53a" +gatsby-plugin-manifest@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-manifest/-/gatsby-plugin-manifest-1.0.0-alpha12-alpha.1fdb9004.tgz#1f63ea4372aa27b93b778e3efca9fdb04721d383" dependencies: bluebird "^3.4.7" -gatsby-plugin-offline@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-offline/-/gatsby-plugin-offline-1.0.0-alpha12-alpha.d7d6ef64.tgz#4e6f576decc44951bd7ae1499e0f284631f747b8" +gatsby-plugin-offline@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-offline/-/gatsby-plugin-offline-1.0.0-alpha12-alpha.1fdb9004.tgz#935bacf697dda7dd09f701a8c88ebfae59260569" dependencies: sw-precache "^5.0.0" -gatsby-plugin-sharp@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-plugin-sharp/-/gatsby-plugin-sharp-1.0.0-alpha12-alpha.d7d6ef64.tgz#92ff3cd57abc619da8e81e190a2b028b556defaa" +gatsby-plugin-sharp@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-plugin-sharp/-/gatsby-plugin-sharp-1.0.0-alpha12-alpha.1fdb9004.tgz#b1c739f27e22d2ad378536dd6a18e0a835e02e6d" dependencies: async "^2.1.4" bluebird "^3.4.7" @@ -3071,16 +3337,17 @@ gatsby-plugin-sharp@1.0.0-alpha12-alpha.d7d6ef64: progress "^1.1.8" qs "^6.3.0" queue "^4.0.1" - sharp "^0.17.1" + sharp "^0.17.3" -gatsby-source-filesystem@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-source-filesystem/-/gatsby-source-filesystem-1.0.0-alpha12-alpha.d7d6ef64.tgz#743abddf169b909c19f75c8e425db74970a3a09a" +gatsby-source-filesystem@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-source-filesystem/-/gatsby-source-filesystem-1.0.0-alpha12-alpha.1fdb9004.tgz#a54c5a84c75c9fa236bc892d796012c3cd640ea7" dependencies: async "^2.1.2" babel-cli "^6.18.0" babel-preset-es2015 "^6.18.0" bluebird "^3.4.6" + chokidar "^1.6.1" fs-extra "^1.0.0" glob "^7.1.1" graphql "^0.8.2" @@ -3094,65 +3361,65 @@ gatsby-source-filesystem@1.0.0-alpha12-alpha.d7d6ef64: slash "^1.0.0" unist-builder "^1.0.2" -gatsby-typegen-filesystem@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-filesystem/-/gatsby-typegen-filesystem-1.0.0-alpha12-alpha.d7d6ef64.tgz#1d9e613e12ba287ae287fe8b95f22bc769ddb616" +gatsby-typegen-filesystem@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-filesystem/-/gatsby-typegen-filesystem-1.0.0-alpha12-alpha.1fdb9004.tgz#6f450c704260cf045f6f1cc14859df6f6c3ff86e" dependencies: unist-util-select "^1.5.0" -gatsby-typegen-remark-autolink-headers@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-autolink-headers/-/gatsby-typegen-remark-autolink-headers-1.0.0-alpha12-alpha.d7d6ef64.tgz#fcd98d9940ef1ba09ccab3aab5e6e086948402ec" +gatsby-typegen-remark-autolink-headers@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-autolink-headers/-/gatsby-typegen-remark-autolink-headers-1.0.0-alpha12-alpha.1fdb9004.tgz#f7a832d875b196716d94f51b204eb3654b56f1c7" dependencies: github-slugger "^1.1.1" mdast-util-to-string "^1.0.2" unist-util-visit "^1.1.1" -gatsby-typegen-remark-copy-linked-files@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-copy-linked-files/-/gatsby-typegen-remark-copy-linked-files-1.0.0-alpha12-alpha.d7d6ef64.tgz#d97e30fc97704b9bd31317709d488a12f0de2b18" +gatsby-typegen-remark-copy-linked-files@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-copy-linked-files/-/gatsby-typegen-remark-copy-linked-files-1.0.0-alpha12-alpha.1fdb9004.tgz#431a7973e7e8f59a87d6eaaecc183998c8e87cbb" dependencies: fs-extra "^1.0.0" is-relative-url "^2.0.0" lodash "^4.17.3" unist-util-visit "^1.1.1" -gatsby-typegen-remark-prismjs@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-prismjs/-/gatsby-typegen-remark-prismjs-1.0.0-alpha12-alpha.d7d6ef64.tgz#58a85031581e1407632027b90a8f71694ee40046" +gatsby-typegen-remark-prismjs@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-prismjs/-/gatsby-typegen-remark-prismjs-1.0.0-alpha12-alpha.1fdb9004.tgz#f342f474f473ef1207438eba03b64825b239e2a3" dependencies: prismjs "^1.6.0" unist-util-visit "^1.1.1" -gatsby-typegen-remark-responsive-iframe@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-responsive-iframe/-/gatsby-typegen-remark-responsive-iframe-1.0.0-alpha12-alpha.d7d6ef64.tgz#3b20f9b4ee3284612e55bfa34996ad757e9e6991" +gatsby-typegen-remark-responsive-iframe@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-responsive-iframe/-/gatsby-typegen-remark-responsive-iframe-1.0.0-alpha12-alpha.1fdb9004.tgz#707aca4ee6b4448ec754935bb3eedcaa92f683a7" dependencies: bluebird "^3.4.7" cheerio "^0.22.0" lodash "^4.17.4" unist-util-visit "^1.1.1" -gatsby-typegen-remark-responsive-image@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-responsive-image/-/gatsby-typegen-remark-responsive-image-1.0.0-alpha12-alpha.d7d6ef64.tgz#5ff88c742438efe2ca11e0a1504fd468f4826626" +gatsby-typegen-remark-responsive-image@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-responsive-image/-/gatsby-typegen-remark-responsive-image-1.0.0-alpha12-alpha.1fdb9004.tgz#e51b92f78b55c0be822b8672037affac327bd5a6" dependencies: image-size "^0.5.1" is-relative-url "^2.0.0" lodash "^4.17.3" unist-util-select "^1.5.0" -gatsby-typegen-remark-smartypants@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-smartypants/-/gatsby-typegen-remark-smartypants-1.0.0-alpha12-alpha.d7d6ef64.tgz#09fac41afbc0ca5b13193df788ad81a439ac253d" +gatsby-typegen-remark-smartypants@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark-smartypants/-/gatsby-typegen-remark-smartypants-1.0.0-alpha12-alpha.1fdb9004.tgz#574be0709aa305dc7301528d2e9cb8759656575d" dependencies: retext "^4.0.0" retext-smartypants "^2.0.0" unist-util-visit "^1.1.1" -gatsby-typegen-remark@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-remark/-/gatsby-typegen-remark-1.0.0-alpha12-alpha.d7d6ef64.tgz#fffb411b6e864ef07b604ace51a67f8fbc6b1053" +gatsby-typegen-remark@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-remark/-/gatsby-typegen-remark-1.0.0-alpha12-alpha.1fdb9004.tgz#20890ec8645fae8993a5f805cd1f4eb2140a6fc2" dependencies: bluebird "^3.5.0" excerpt-html "^1.2.0" @@ -3171,18 +3438,18 @@ gatsby-typegen-remark@1.0.0-alpha12-alpha.d7d6ef64: unist-util-select "^1.5.0" unist-util-visit "^1.1.1" -gatsby-typegen-sharp@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby-typegen-sharp/-/gatsby-typegen-sharp-1.0.0-alpha12-alpha.d7d6ef64.tgz#2a07e131cf763b0ae040cc0db986f83c8d0dfec7" +gatsby-typegen-sharp@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby-typegen-sharp/-/gatsby-typegen-sharp-1.0.0-alpha12-alpha.1fdb9004.tgz#6795cdd76b645150bb78168db6913dced56306af" dependencies: graphql "^0.8.2" image-size "^0.5.1" lodash "^4.17.2" sharp "^0.17.0" -gatsby@1.0.0-alpha12-alpha.d7d6ef64: - version "1.0.0-alpha12-alpha.d7d6ef64" - resolved "https://registry.yarnpkg.com/gatsby/-/gatsby-1.0.0-alpha12-alpha.d7d6ef64.tgz#34a9369bfdaded76caa0992ff5123bdce9835694" +gatsby@1.0.0-alpha12-alpha.1fdb9004: + version "1.0.0-alpha12-alpha.1fdb9004" + resolved "https://registry.yarnpkg.com/gatsby/-/gatsby-1.0.0-alpha12-alpha.1fdb9004.tgz#c65616934a4a95aa2f8d24dfcdec7aec09dd87fb" dependencies: async "^2.1.2" babel-core "^6.18.2" @@ -3207,19 +3474,20 @@ gatsby@1.0.0-alpha12-alpha.d7d6ef64: commander "^2.9.0" css-loader "^0.26.1" debug "^2.6.0" - detect-port "^1.0.5" + detect-port "^1.1.1" eslint-plugin-react "^6.5.0" express "^4.14.0" express-graphql "^0.6.1" extract-text-webpack-plugin "^1.0.1" file-loader "^0.9.0" flat "^2.0.1" + flux-standard-action "^1.2.0" front-matter "^2.1.0" fs-extra "^0.30.0" glob "^7.1.0" graphql "^0.8.2" graphql-relay "^0.4.3" - graphql-skip-limit "^1.0.0-alpha12-alpha.d7d6ef64" + graphql-skip-limit "^1.0.0-alpha12-alpha.1fdb9004" graphql-union-input-type "^0.2.1" gray-matter "^2.1.0" hapi "^8.5.1" @@ -3260,9 +3528,12 @@ gatsby@1.0.0-alpha12-alpha.d7d6ef64: react-hot-loader "^3.0.0-beta.6" react-router "^2.8.1" react-router-scroll "^0.3.3" + redux "^3.6.0" remark "^6.2.0" remark-html "^5.0.1" remark-parse "^2.2.0" + remote-redux-devtools "^0.5.7" + remotedev-server "^0.3.0-beta-3" sanitize-html "^1.13.0" sift "^3.2.6" slash "^1.0.0" @@ -3314,6 +3585,10 @@ gauge@~2.7.1: strip-ansi "^3.0.1" wide-align "^1.1.0" +get-params@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/get-params/-/get-params-0.1.2.tgz#bae0dfaba588a0c60d7834c0d8dc2ff60eeef2fe" + get-proxy@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/get-proxy/-/get-proxy-1.1.0.tgz#894854491bc591b0f147d7ae570f5c678b7256eb" @@ -3341,6 +3616,10 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" +getport@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/getport/-/getport-0.1.0.tgz#abddf3d5d1e77dd967ccfa2b036a0a1fb26fd7f7" + gh-pages@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-0.11.0.tgz#93313c6dcbfc74d426bc89a29ebff6420acc3c1b" @@ -3562,15 +3841,25 @@ graphql-relay@^0.4.3, graphql-relay@^0.4.4: version "0.4.4" resolved "https://registry.yarnpkg.com/graphql-relay/-/graphql-relay-0.4.4.tgz#876a654445b6af4539f81cb9befd5cd7ead129dd" -graphql-skip-limit@^1.0.0-alpha12-alpha.d7d6ef64: +graphql-skip-limit@^1.0.0-alpha12-alpha.1fdb9004: version "1.0.0-alpha12-alpha.faff3fa9" resolved "https://registry.yarnpkg.com/graphql-skip-limit/-/graphql-skip-limit-1.0.0-alpha12-alpha.faff3fa9.tgz#bcc4436d70c1e61807496e4084367bcb2c5c84ea" +graphql-tools@^0.8.1: + version "0.8.4" + resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-0.8.4.tgz#3cf4b2a650e0322b655ca274ec24914b608fb562" + dependencies: + deprecated-decorator "^0.1.6" + lodash "^4.3.0" + uuid "^3.0.1" + optionalDependencies: + typed-graphql "^1.0.2" + graphql-union-input-type@^0.2.1: version "0.2.3" resolved "https://registry.yarnpkg.com/graphql-union-input-type/-/graphql-union-input-type-0.2.3.tgz#5d74fd32df65458cb03b45d1843e4ea43f214dbd" -graphql@^0.8.2: +graphql@^0.8.0, graphql@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.8.2.tgz#eb1bb524b38104bbf2c9157f9abc67db2feba7d2" dependencies: @@ -3735,6 +4024,10 @@ hash.js@^1.0.0, hash.js@^1.0.3: dependencies: inherits "^2.0.1" +hashmap@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hashmap/-/hashmap-2.1.0.tgz#fe163aa781db4665bbd76f554e390c8c55ce920a" + hast-util-is-element@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-1.0.0.tgz#3f7216978b2ae14d98749878782675f33be3ce00" @@ -3871,7 +4164,7 @@ htmlparser2@~3.8.1: entities "1.0" readable-stream "1.1" -http-errors@^1.3.0, http-errors@~1.6.1: +http-errors@^1.3.0, http-errors@^1.5.0, http-errors@~1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.1.tgz#5f8b8ed98aca545656bf572997387f904a722257" dependencies: @@ -3999,7 +4292,26 @@ ini@^1.3.4, ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" -interpret@^0.6.4: +inquirer@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-1.1.3.tgz#6cd2a93f709fa50779731fd2262c698155cab2fa" + dependencies: + ansi-escapes "^1.1.0" + chalk "^1.0.0" + cli-cursor "^1.0.1" + cli-width "^2.0.0" + external-editor "^1.0.1" + figures "^1.3.5" + lodash "^4.3.0" + mute-stream "0.0.6" + pinkie-promise "^2.0.0" + run-async "^2.2.0" + rx "^4.1.0" + string-width "^1.0.1" + strip-ansi "^3.0.0" + through "^2.3.6" + +interpret@^0.6.4, interpret@^0.6.5: version "0.6.6" resolved "https://registry.yarnpkg.com/interpret/-/interpret-0.6.6.tgz#fecd7a18e7ce5ca6abfb953e1f86213a49f1625b" @@ -4197,6 +4509,10 @@ 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-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" @@ -4346,7 +4662,7 @@ jodid25519@^1.0.0: dependencies: jsbn "~0.1.0" -joi@6.x.x: +joi@6.x.x, joi@^6.10.1: version "6.10.1" resolved "https://registry.yarnpkg.com/joi/-/joi-6.10.1.tgz#4d50c318079122000fe5f16af1ff8e1917b77e06" dependencies: @@ -4388,6 +4704,10 @@ js-base64@^2.1.9: version "2.1.9" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" +js-data@^2.9.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/js-data/-/js-data-2.10.0.tgz#8ddaa1b5e5b81384b29bc4d949bc8cc09be16d84" + js-tokens@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" @@ -4406,6 +4726,10 @@ js-yaml@^3.4.6, js-yaml@^3.5.2, js-yaml@^3.8.1: argparse "^1.0.7" esprima "^3.1.1" +jsan@^3.1.0, jsan@^3.1.5: + version "3.1.7" + resolved "https://registry.yarnpkg.com/jsan/-/jsan-3.1.7.tgz#60513271c3011df2d6c627f645fb246847ff4056" + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" @@ -4474,6 +4798,16 @@ jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" +jsonwebtoken@7.2.1: + version "7.2.1" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-7.2.1.tgz#0fc7217473fc02b4c9aa1e188aa70b51bba4fccb" + dependencies: + joi "^6.10.1" + jws "^3.1.4" + lodash.once "^4.0.0" + ms "^0.7.1" + xtend "^4.0.1" + jspm-github@^0.14.11: version "0.14.13" resolved "https://registry.yarnpkg.com/jspm-github/-/jspm-github-0.14.13.tgz#326e5217d3639b21609293b01e7e18775dd3dcc7" @@ -4554,6 +4888,23 @@ jsx-ast-utils@^1.3.4: dependencies: object-assign "^4.1.0" +jwa@^1.1.4: + version "1.1.5" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.1.5.tgz#a0552ce0220742cd52e153774a32905c30e756e5" + dependencies: + base64url "2.0.0" + buffer-equal-constant-time "1.0.1" + ecdsa-sig-formatter "1.0.9" + safe-buffer "^5.0.1" + +jws@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.1.4.tgz#f9e8b9338e8a847277d6444b1464f61880e050a2" + dependencies: + base64url "^2.0.0" + jwa "^1.1.4" + safe-buffer "^5.0.1" + kebab-case@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/kebab-case/-/kebab-case-1.0.0.tgz#3f9e4990adcad0c686c0e701f7645868f75f91eb" @@ -4576,6 +4927,27 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" +knex@0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/knex/-/knex-0.11.10.tgz#f16d1df618c022e331e016baa9190edc44ef0dc4" + dependencies: + bluebird "^3.3.4" + chalk "^1.0.0" + commander "^2.2.0" + debug "^2.1.3" + inherits "~2.0.1" + interpret "^0.6.5" + liftoff "~2.2.0" + lodash "^4.6.0" + minimist "~1.1.0" + mkdirp "^0.5.0" + node-uuid "~1.4.0" + pg-connection-string "^0.1.3" + pool2 "^1.1.0" + readable-stream "^1.1.12" + tildify "~1.0.0" + v8flags "^2.0.2" + latest-version@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-2.0.0.tgz#56f8d6139620847b8017f8f1f4d78e211324168b" @@ -4623,6 +4995,20 @@ liftoff@^2.2.0: rechoir "^0.6.2" resolve "^1.1.7" +liftoff@~2.2.0: + version "2.2.5" + resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.2.5.tgz#998c2876cff484b103e4423b93d356da44734c91" + dependencies: + extend "^3.0.0" + findup-sync "^0.4.2" + flagged-respawn "^0.3.2" + rechoir "^0.6.2" + resolve "^1.1.7" + +linked-list@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/linked-list/-/linked-list-0.1.0.tgz#798b0ff97d1b92a4fd08480f55aea4e9d49d37bf" + linkify-it@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.0.3.tgz#d94a4648f9b1c179d64fa97291268bdb6ce9434f" @@ -4663,6 +5049,10 @@ loader-utils@^1.0.2: emojis-list "^2.0.0" json5 "^0.5.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._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" @@ -4719,6 +5109,10 @@ 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.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + lodash.defaults@^4.0.1, lodash.defaults@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" @@ -4797,6 +5191,10 @@ lodash.merge@^4.4.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5" +lodash.once@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + lodash.pad@^4.1.0: version "4.5.1" resolved "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz#4330949a833a7c8da22cc20f6a26c4d59debba70" @@ -4879,7 +5277,7 @@ lodash@4.11.1: version "4.11.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.11.1.tgz#a32106eb8e2ec8e82c241611414773c9df15f8bc" -lodash@^4.1.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.16.6, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.6.1: +lodash@^4.0.0, lodash@^4.1.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.16.6, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.0, lodash@^4.6.1, lodash@^4.8.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -5179,10 +5577,18 @@ minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" +minimist@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.1.0.tgz#cdf225e8898f840a258ded44fc91776770afdc93" + minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +minimist@~1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.1.3.tgz#3bedfd91a92d39016fcfaa1c681e8faa1a1efda8" + "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" @@ -5199,11 +5605,21 @@ moment@2.x.x, moment@^2.16.0: version "2.18.1" resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" +morgan@^1.7.0: + version "1.8.1" + resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.8.1.tgz#f93023d3887bd27b78dfd6023cea7892ee27a4b1" + dependencies: + basic-auth "~1.1.0" + debug "2.6.1" + depd "~1.1.0" + on-finished "~2.3.0" + on-headers "~1.0.1" + ms@0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" -ms@0.7.2: +ms@0.7.2, ms@^0.7.1: version "0.7.2" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" @@ -5213,10 +5629,25 @@ multipipe@^0.1.2: dependencies: duplexer2 "0.0.2" +mute-stream@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.6.tgz#48962b19e169fd1dfc240b3f1e7317627bbc47db" + nan@^2.3.0, nan@^2.5.1: version "2.6.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.1.tgz#8c84f7b14c96b89f57fbc838012180ec8ca39a01" +nan@~2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.4.0.tgz#fb3c59d45fe4effe215f0b890f8adf6eb32d2232" + +ncom@0.11.x: + version "0.11.1" + resolved "https://registry.yarnpkg.com/ncom/-/ncom-0.11.1.tgz#e41f98a13c486d353f11e967217657cecc81329b" + dependencies: + sc-domain "1.x.x" + sc-formatter "3.0.x" + ncp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" @@ -5318,7 +5749,7 @@ node-libs-browser@^2.0.0: util "^0.10.3" vm-browserify "0.0.4" -node-pre-gyp@^0.6.29: +node-pre-gyp@^0.6.29, node-pre-gyp@~0.6.31: version "0.6.34" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.34.tgz#94ad1c798a11d7fc67381b50d47f8cc18d9799f7" dependencies: @@ -5336,6 +5767,10 @@ node-status-codes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" +node-uuid@^1.4.0, node-uuid@~1.4.0: + version "1.4.8" + resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" + nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -5440,7 +5875,7 @@ object-assign@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" -object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0: +object-assign@^4, object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -5536,6 +5971,10 @@ optionator@^0.8.1: type-check "~0.3.2" wordwrap "~1.0.0" +options@>=0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" + ordered-read-streams@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz#7137e69b3298bb342247a1bbee3881c80e2fd78b" @@ -5567,7 +6006,11 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: +os-shim@^0.1.2: + version "0.1.3" + resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917" + +os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -5762,6 +6205,10 @@ pez@1.x.x: hoek "2.x.x" nigel "1.x.x" +pg-connection-string@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-0.1.3.tgz#da1847b20940e42ee1492beaf65d49d91b245df7" + pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -5821,6 +6268,15 @@ pngquant-bin@^3.0.0: bin-wrapper "^3.0.0" logalot "^2.0.0" +pool2@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/pool2/-/pool2-1.4.1.tgz#32fbd4f6a37764599002faeab8a0494a2a76a2d0" + dependencies: + debug "^2.1.3" + double-ended-queue "^2.1.0-0" + hashmap "^2.0.1" + simple-backoff "^1.0.0" + postcss-apply@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/postcss-apply/-/postcss-apply-0.3.0.tgz#a2f37c5bdfa881e4c15f4f245ec0cd96dd2e70d5" @@ -6501,7 +6957,7 @@ 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" -raw-body@^2.1.0: +raw-body@^2.1.0, raw-body@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.2.0.tgz#994976cf6a5096a41162840492f0bdc5d6e7fb96" dependencies: @@ -6648,7 +7104,7 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" -readable-stream@1.1, readable-stream@~1.1.9: +readable-stream@1.1, readable-stream@^1.1.12, readable-stream@~1.1.9: version "1.1.13" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e" dependencies: @@ -6727,6 +7183,22 @@ reduce-function-call@^1.0.1: dependencies: balanced-match "^0.4.2" +redux-devtools-instrument@^1.3.3: + version "1.8.0" + resolved "https://registry.yarnpkg.com/redux-devtools-instrument/-/redux-devtools-instrument-1.8.0.tgz#db1840ed3d8152af6792913698e3424c119de9aa" + dependencies: + lodash "^4.2.0" + symbol-observable "^1.0.2" + +redux@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/redux/-/redux-3.6.0.tgz#887c2b3d0b9bd86eca2be70571c27654c19e188d" + dependencies: + lodash "^4.2.1" + lodash-es "^4.2.1" + loose-envify "^1.1.0" + symbol-observable "^1.0.2" + regenerate@^1.2.1: version "1.3.2" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" @@ -6885,6 +7357,55 @@ remark@^6.2.0: remark-stringify "^2.2.0" unified "^5.0.0" +remote-redux-devtools@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/remote-redux-devtools/-/remote-redux-devtools-0.5.7.tgz#bc3219ed4eef347a5b4162acad8c9424e692df02" + dependencies: + jsan "^3.1.5" + querystring "^0.2.0" + redux-devtools-instrument "^1.3.3" + remotedev-utils "^0.1.1" + socketcluster-client "^5.1.1" + +remotedev-serialize@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/remotedev-serialize/-/remotedev-serialize-0.1.0.tgz#074768e98cb7aa806f45994eeb0c8af95120ee32" + dependencies: + jsan "^3.1.0" + +remotedev-server@^0.3.0-beta-3: + version "0.3.0-beta-3" + resolved "https://registry.yarnpkg.com/remotedev-server/-/remotedev-server-0.3.0-beta-3.tgz#61da48332b333064032de3551d78b17a8afadc19" + dependencies: + apollo-server "^0.3.3" + body-parser "^1.15.0" + chalk "^1.1.3" + cors "^2.7.1" + ejs "^2.4.1" + express "^4.13.3" + getport "^0.1.0" + graphql "^0.8.0" + graphql-tools "^0.8.1" + js-data "^2.9.0" + knex "0.11.10" + lodash "^4.15.0" + minimist "^1.2.0" + morgan "^1.7.0" + node-uuid "^1.4.0" + semver "^5.3.0" + socketcluster "^5.0.4" + sqlite3 "^3.1.8" + +remotedev-utils@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/remotedev-utils/-/remotedev-utils-0.1.3.tgz#6e3f6611d0f58cecb100fc506dd1009af53dc955" + dependencies: + get-params "^0.1.2" + jsan "^3.1.5" + lodash "^4.0.0" + remotedev-serialize "^0.1.0" + shortid "^2.2.6" + remove-trailing-separator@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4" @@ -6967,6 +7488,13 @@ resolve@^1.1.6, resolve@^1.1.7: dependencies: path-parse "^1.0.5" +restore-cursor@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" + dependencies: + exit-hook "^1.0.0" + onetime "^1.0.0" + retext-latin@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/retext-latin/-/retext-latin-1.0.0.tgz#57f41257b4d857b6c6df631ca5788d10080d7051" @@ -7037,6 +7565,16 @@ rsvp@^3.0.13, rsvp@^3.0.18: version "3.5.0" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.5.0.tgz#a62c573a4ae4e1dfd0697ebc6242e79c681eaa34" +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@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" + safe-buffer@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" @@ -7065,6 +7603,75 @@ sax@^1.1.4, sax@~1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" +sc-auth@~3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/sc-auth/-/sc-auth-3.2.1.tgz#91729995e3a38cbd5e76151ba6bba8137409725f" + dependencies: + jsonwebtoken "7.2.1" + sc-errors "1.0.x" + +sc-broker-cluster@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/sc-broker-cluster/-/sc-broker-cluster-4.0.0.tgz#d0f57f1e33104adc24a2a1c1d4fc5209ab6a0d2e" + dependencies: + async "2.0.0" + sc-broker "2.3.x" + sc-channel "1.0.x" + sc-domain "1.x.x" + sc-hasher "1.x.x" + socketcluster-server "5.x.x" + +sc-broker@2.3.x: + version "2.3.2" + resolved "https://registry.yarnpkg.com/sc-broker/-/sc-broker-2.3.2.tgz#4215c187319ae6b277025ff887dcf6a9d73d1d98" + dependencies: + expirymanager "0.9.x" + fleximap "0.9.x" + ncom "0.11.x" + sc-domain "1.x.x" + +sc-channel@1.0.x, sc-channel@~1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/sc-channel/-/sc-channel-1.0.6.tgz#b38bd47a993e78290fbc53467867f6b2a0a08639" + dependencies: + sc-emitter "1.x.x" + +sc-domain@1.x.x, sc-domain@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sc-domain/-/sc-domain-1.0.1.tgz#aa402509b879ba76012e9732dc1d07f653b834bc" + +sc-emitter@1.x.x, sc-emitter@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/sc-emitter/-/sc-emitter-1.1.0.tgz#ef119d4222f4c64f887b486964ef11116cdd0e75" + dependencies: + component-emitter "1.2.0" + +sc-errors@1.0.x: + version "1.0.6" + resolved "https://registry.yarnpkg.com/sc-errors/-/sc-errors-1.0.6.tgz#80e77c36348b2c88bbe7ead8dc63be61f34b7103" + dependencies: + cycle "1.0.3" + +sc-errors@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/sc-errors/-/sc-errors-1.1.0.tgz#dc2f83df68ce64f6a96cc9c5e2015570ad272dbe" + dependencies: + cycle "1.0.3" + +sc-formatter@3.0.x, sc-formatter@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/sc-formatter/-/sc-formatter-3.0.0.tgz#c91b1fe56c260abd5a6a2e6af98c724bc7998a38" + +sc-hasher@1.x.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/sc-hasher/-/sc-hasher-1.0.0.tgz#bb22ae1f5a295b847c70aff4515536224950ff11" + +sc-simple-broker@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sc-simple-broker/-/sc-simple-broker-2.0.0.tgz#2de6fd35235a0b76d7ae6349d1c7f9dd1e18091c" + dependencies: + sc-channel "~1.0.6" + scroll-behavior@^0.8.0: version "0.8.2" resolved "https://registry.yarnpkg.com/scroll-behavior/-/scroll-behavior-0.8.2.tgz#ace13e40b001d8d4d007aec0e7fb668cf9043546" @@ -7189,7 +7796,7 @@ shallowequal@^0.2.2: dependencies: lodash.keys "^3.1.2" -sharp@^0.17.0, sharp@^0.17.1: +sharp@^0.17.0, sharp@^0.17.3: version "0.17.3" resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.17.3.tgz#484cd2a70c900370948dcc43e165f78306bff48a" dependencies: @@ -7222,6 +7829,10 @@ shellsubstitute@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shellsubstitute/-/shellsubstitute-1.2.0.tgz#e4f702a50c518b0f6fe98451890d705af29b6b70" +shortid@^2.2.6: + version "2.2.8" + resolved "https://registry.yarnpkg.com/shortid/-/shortid-2.2.8.tgz#033b117d6a2e975804f6f0969dbe7d3d0b355131" + shot@1.x.x: version "1.7.0" resolved "https://registry.yarnpkg.com/shot/-/shot-1.7.0.tgz#f2329d7ef33afcf03d44ce41abae8148ae170532" @@ -7236,6 +7847,10 @@ signal-exit@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" +simple-backoff@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-backoff/-/simple-backoff-1.0.0.tgz#a4fa290ec01969c07ca136fe8bbfb40e0ef35ac2" + simple-swizzle@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" @@ -7256,6 +7871,55 @@ sntp@1.x.x: dependencies: hoek "2.x.x" +socketcluster-client@^5.1.1: + version "5.3.0" + resolved "https://registry.yarnpkg.com/socketcluster-client/-/socketcluster-client-5.3.0.tgz#3491f5e7319a9361c54de6f718582b7ffec1fed1" + dependencies: + base-64 "0.1.0" + linked-list "0.1.0" + lodash.clonedeep "4.5.0" + querystring "0.2.0" + sc-channel "1.0.x" + sc-emitter "1.x.x" + sc-errors "1.0.x" + sc-formatter "3.0.x" + ws "1.1.2" + +socketcluster-server@5.x.x, socketcluster-server@~5.10.2: + version "5.10.2" + resolved "https://registry.yarnpkg.com/socketcluster-server/-/socketcluster-server-5.10.2.tgz#d4ce2316b54b5f50e8d771382ffc72bc16e022dd" + dependencies: + async "2.0.0" + base64id "0.1.0" + lodash.clonedeep "4.5.0" + sc-auth "~3.2.1" + sc-domain "~1.0.1" + sc-emitter "~1.1.0" + sc-errors "~1.1.0" + sc-formatter "~3.0.0" + sc-simple-broker "~2.0.0" + uuid "3.0.1" + uws "0.14.1" + ws "1.1.1" + +socketcluster@^5.0.4: + version "5.9.1" + resolved "https://registry.yarnpkg.com/socketcluster/-/socketcluster-5.9.1.tgz#110ab264e3325c6cf5ecfc1a04c4343a9d806844" + dependencies: + async "2.0.0" + base64id "0.1.0" + fs-extra "2.0.0" + inquirer "1.1.3" + minimist "1.1.0" + sc-auth "~3.2.1" + sc-broker-cluster "~4.0.0" + sc-domain "~1.0.1" + sc-emitter "~1.1.0" + sc-errors "~1.1.0" + socketcluster-server "~5.10.2" + uid-number "0.0.5" + uuid "3.0.1" + sockjs-client@^1.0.3: version "1.1.2" resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.2.tgz#f0212a8550e4c9468c8cceaeefd2e3493c033ad5" @@ -7338,6 +8002,13 @@ sparkles@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" +spawn-sync@^1.0.15: + version "1.0.15" + resolved "https://registry.yarnpkg.com/spawn-sync/-/spawn-sync-1.0.15.tgz#b00799557eb7fb0c8376c29d44e8a1ea67e57476" + dependencies: + concat-stream "^1.4.7" + os-shim "^0.1.2" + spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" @@ -7356,6 +8027,13 @@ sprintf-js@^1.0.3, sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" +sqlite3@^3.1.8: + version "3.1.8" + resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-3.1.8.tgz#4cbcf965d8b901d1b1015cbc7fc415aae157dfaa" + dependencies: + nan "~2.4.0" + node-pre-gyp "~0.6.31" + squeak@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/squeak/-/squeak-1.3.0.tgz#33045037b64388b567674b84322a6521073916c3" @@ -7609,6 +8287,10 @@ sw-toolbox@^3.4.0: path-to-regexp "^1.0.1" serviceworker-cache-polyfill "^4.0.0" +symbol-observable@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d" + "symbol-tree@>= 3.1.0 < 4.0.0": version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" @@ -7723,6 +8405,16 @@ through2@^2.0.0, through2@~2.0.0: readable-stream "^2.1.5" xtend "~4.0.1" +through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +tildify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.0.0.tgz#2a021db5e8fbde0a8f8b4df37adaa8fb1d39d7dd" + dependencies: + user-home "^1.0.0" + time-stamp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" @@ -7749,6 +8441,12 @@ tinytim@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/tinytim/-/tinytim-0.1.1.tgz#c968a1e5559ad9553224ef7627bab34e3caef8a8" +tmp@^0.0.29: + version "0.0.29" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.29.tgz#f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0" + dependencies: + os-tmpdir "~1.0.1" + tmpl@1.0.x: version "1.0.4" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" @@ -7876,6 +8574,10 @@ type-of@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/type-of/-/type-of-2.0.1.tgz#e72a1741896568e9f628378d816d6912f7f23972" +typed-graphql@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-graphql/-/typed-graphql-1.0.2.tgz#4c0f788775d552df4d4ec3d73f25469252f40fb8" + typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -7936,10 +8638,18 @@ 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" +uid-number@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.5.tgz#5a3db23ef5dbd55b81fce0ec9a2ac6fccdebb81e" + 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.0.x: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" + unc-path-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" @@ -8161,7 +8871,7 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" -user-home@^1.1.1: +user-home@^1.0.0, user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" @@ -8179,15 +8889,19 @@ utils-merge@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" +uuid@3.0.1, uuid@^3.0.0, uuid@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" + uuid@^2.0.1, uuid@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" -uuid@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" +uws@0.14.1: + version "0.14.1" + resolved "https://registry.yarnpkg.com/uws/-/uws-0.14.1.tgz#89b8eb7bced272c65621472e878c57f4e0e00640" -v8flags@^2.0.10: +v8flags@^2.0.10, v8flags@^2.0.2: version "2.0.12" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.12.tgz#73235d9f7176f8e8833fb286795445f7938d84e5" dependencies: @@ -8204,7 +8918,7 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" -vary@~1.1.0: +vary@^1, vary@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" @@ -8585,6 +9299,20 @@ write-file-atomic@^1.1.2: imurmurhash "^0.1.4" slide "^1.1.5" +ws@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.1.tgz#082ddb6c641e85d4bb451f03d52f06eabdb1f018" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + +ws@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + x-is-string@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82"