diff --git a/.babelrc b/.babelrc
index 3678052..deaf78e 100644
--- a/.babelrc
+++ b/.babelrc
@@ -1,11 +1,9 @@
{
"presets": [
- [
- "es2015",
- {
- "modules": false
- }
- ],
+ ["env", { "modules": false }],
"stage-0"
+ ],
+ "plugins": [
+ "external-helpers"
]
}
diff --git a/.eslintignore b/.eslintignore
new file mode 100644
index 0000000..b947077
--- /dev/null
+++ b/.eslintignore
@@ -0,0 +1,2 @@
+node_modules/
+dist/
diff --git a/.gitignore b/.gitignore
index c2658d7..c4d3bd6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
node_modules/
+types/test/*.js
diff --git a/.npmignore b/.npmignore
index 8eba6c8..fa50248 100644
--- a/.npmignore
+++ b/.npmignore
@@ -1 +1,2 @@
src/
+types/test/
diff --git a/README.md b/README.md
index 4199201..7a449bf 100644
--- a/README.md
+++ b/README.md
@@ -1,14 +1,16 @@
# Apollo and GraphQL for Vue.js
[ ](https://www.npmjs.com/package/vue-apollo)
-[](http://apollodata.com/)
-[ ](https://vuejs.org/)
+[](https://www.apollographql.com/)
+[ ](https://vuejs.org/)

-**Apollo 2.x support in preview, [read more here](https://github.com/Akryum/vue-apollo/tree/next#migrating-from-vue-apollo-2x-and-apollo-1x)!**
+**Warning! This README is related to the next version of vue-apollo (that supports Apollo 2.x). For the old release (supporting only Apollo 1.x), see [here](https://github.com/Akryum/vue-apollo/tree/apollo-1).**
-Integrates [apollo](http://www.apollostack.com/) in your [Vue](http://vuejs.org) components with declarative queries. Compatible with Vue 1.0+ and 2.0+. [Live demo](https://jsfiddle.net/Akryum/oyejk2qL/)
+Integrates [apollo](https://www.apollographql.com/) in your [Vue](http://vuejs.org) components with declarative queries. Compatible with Vue 1.0+ and 2.0+. [Live demo](https://jsfiddle.net/Akryum/oyejk2qL/)
+
+[
Vue-cli plugin](https://github.com/Akryum/vue-cli-plugin-apollo)
[
More vue-apollo examples](https://github.com/Akryum/vue-apollo-example)
@@ -28,6 +30,7 @@ Integrates [apollo](http://www.apollostack.com/) in your [Vue](http://vuejs.org)
- [Queries](#queries)
- [Simple query](#simple-query)
- [Query with parameters](#query-with-parameters)
+ - [Loading state](#loading-state)
- [Option function](#option-function)
- [Reactive query definition](#reactive-query-definition)
- [Reactive parameters](#reactive-parameters)
@@ -46,26 +49,36 @@ Integrates [apollo](http://www.apollostack.com/) in your [Vue](http://vuejs.org)
- [Skip all](#skip-all)
- [Multiple clients](#multiple-clients)
- [Server-Side Rendering](#server-side-rendering)
+- [Query Components](#query-components)
+- [Migration](#migration)
- [API Reference](#api-reference)
## Installation
+**If you are using vue-cli 3.x, you can [use this vue-cli plugin](https://github.com/Akryum/vue-cli-plugin-apollo) to get started in a few minutes!**
+
Try and install these packages before server side set (of packages), add apollo to meteor.js before then, too.
- npm install --save vue-apollo apollo-client
+ npm install --save vue-apollo graphql apollo-client apollo-link apollo-link-http apollo-cache-inmemory graphql-tag
In your app, create an `ApolloClient` instance and install the `VueApollo` plugin:
```javascript
import Vue from 'vue'
-import { ApolloClient, createBatchingNetworkInterface } from 'apollo-client'
+import { ApolloClient } from 'apollo-client'
+import { HttpLink } from 'apollo-link-http'
+import { InMemoryCache } from 'apollo-cache-inmemory'
import VueApollo from 'vue-apollo'
+const httpLink = new HttpLink({
+ // You should use an absolute URL here
+ uri: 'http://localhost:3020/graphql',
+})
+
// Create the apollo client
const apolloClient = new ApolloClient({
- networkInterface: createBatchingNetworkInterface({
- uri: 'http://localhost:3020/graphql',
- }),
+ link: httpLink,
+ cache: new InMemoryCache(),
connectToDevTools: true,
})
@@ -84,7 +97,7 @@ const apolloProvider = new VueApollo({
new Vue({
el: '#app',
- apolloProvider,
+ provide: apolloProvider.provide(),
render: h => h(App),
})
```
@@ -101,7 +114,7 @@ new Vue({
})
```
-You can access the [apollo-client](http://dev.apollodata.com/core/apollo-client-api.html) instances with `this.$apollo.provider.defaultClient` or `this.$apollo.provider.clients.` (for [Multiple clients](#multiple-clients)) in all your vue components.
+You can access the [apollo-client](https://www.apollographql.com/docs/react/) instances with `this.$apollo.provider.defaultClient` or `this.$apollo.provider.clients.` (for [Multiple clients](#multiple-clients)) in all your vue components.
## Queries
@@ -115,7 +128,7 @@ Use `gql` to write your GraphQL queries:
import gql from 'graphql-tag'
```
-Put the [gql](http://docs.apollostack.com/apollo-client/core.html#gql) query directly as the value:
+Put the [gql](https://github.com/apollographql/graphql-tag) query directly as the value:
```javascript
apollo: {
@@ -159,7 +172,7 @@ export const resolvers = {
}
```
-For more info, visit the [apollo doc](http://dev.apollodata.com/tools/).
+For more info, visit the [apollo doc](https://www.apollographql.com/docs/apollo-server/).
You can then use your property as usual in your vue component:
@@ -200,9 +213,9 @@ You can use the apollo `watchQuery` options in the object, like:
- `pollInterval`
- ...
-See the [apollo doc](http://dev.apollodata.com/core/apollo-client-api.html#ApolloClient\.watchQuery) for more details.
+See the [apollo doc](https://www.apollographql.com/docs/react/reference/index.html#ApolloClient\.watchQuery) for more details.
-For example, you could add the `forceFetch` apollo option like this:
+For example, you could add the `fetchPolicy` apollo option like this:
```javascript
apollo: {
@@ -260,12 +273,26 @@ And then use it in your vue component:
Ping
- {{ping}}
+ {{ ping }}
```
+### Loading state
+
+You can display a loading state thanks to the `$apollo.loading` prop:
+
+```html
+Loading...
+```
+
+Or for this specific `ping` query:
+
+```html
+Loading...
+```
+
### Option function
You can use a function to initialize the key:
@@ -407,7 +434,7 @@ this.$apollo.queries.tags.skip = true
These are the available advanced options you can use:
- `update(data) {return ...}` to customize the value that is set in the vue property, for example if the field names don't match.
-- `result(ApolloQueryResult)` is a hook called when a result is received (see documentation for [ApolloQueryResult](http://dev.apollodata.com/core/apollo-client-api.html#ApolloQueryResult)).
+- `result(ApolloQueryResult)` is a hook called when a result is received (see documentation for [ApolloQueryResult](https://github.com/apollographql/apollo-client/blob/master/packages/apollo-client/src/core/types.ts)).
- `error(error)` is a hook called when there are errors. `error` is an Apollo error object with either a `graphQLErrors` property or a `networkError` property.
- `loadingKey` will update the component data property you pass as the value. You should initialize this property to `0` in the component `data()` hook. When the query is loading, this property will be incremented by 1; when it is no longer loading, it will be decremented by 1. That way, the property can represent a counter of currently loading queries.
- `watchLoading(isLoading, countModifier)` is a hook called when the loading state of the query changes. The `countModifier` parameter is either equal to `1` when the query is loading, or `-1` when the query is no longer loading.
@@ -566,7 +593,9 @@ created () {
## Mutations
-Mutations are queries that change your data state on your apollo server. For more info, visit the [apollo doc](http://dev.apollodata.com/core/apollo-client-api.html#ApolloClient\.mutate). There is a mutation-focused [example app](https://github.com/Akryum/vue-apollo-todos) you can look at.
+Mutations are queries that change your data state on your apollo server. For more info, visit the [apollo doc](https://www.apollographql.com/docs/react/reference/index.html#ApolloClient\.mutate). There is a mutation-focused [example app](https://github.com/Akryum/vue-apollo-todos) you can look at.
+
+**You shouldn't send the `__typename` fields in the variables, so it is not recommended to send an Apollo result object directly.**
```javascript
methods: {
@@ -687,40 +716,55 @@ export const resolvers = {
To make enable the websocket-based subscription, a bit of additional setup is required:
```
-npm install --save subscriptions-transport-ws
+npm install --save apollo-link-ws apollo-utilities
```
```javascript
import Vue from 'vue'
-import { ApolloClient, createNetworkInterface } from 'apollo-client'
+import { ApolloClient } from 'apollo-client'
+import { HttpLink } from 'apollo-link-http'
+import { InMemoryCache } from 'apollo-cache-inmemory'
// New Imports
-import { SubscriptionClient, addGraphQLSubscriptions } from 'subscriptions-transport-ws'
+import { split } from 'apollo-link'
+import { WebSocketLink } from 'apollo-link-ws'
+import { getMainDefinition } from 'apollo-utilities'
+
import VueApollo from 'vue-apollo'
-// Create the network interface
-const networkInterface = createNetworkInterface({
- uri: 'http://localhost:3000/graphql',
- transportBatching: true,
+const httpLink = new HttpLink({
+ // You should use an absolute URL here
+ uri: 'http://localhost:3020/graphql',
})
-// Create the subscription websocket client
-const wsClient = new SubscriptionClient('ws://localhost:3000/subscriptions', {
- reconnect: true,
+// Create the subscription websocket link
+const wsLink = new WebSocketLink({
+ uri: 'ws://localhost:3000/subscriptions',
+ options: {
+ reconnect: true,
+ },
})
-// Extend the network interface with the subscription client
-const networkInterfaceWithSubscriptions = addGraphQLSubscriptions(
- networkInterface,
- wsClient,
+// using the ability to split links, you can send data to each link
+// depending on what kind of operation is being sent
+const link = split(
+ // split based on operation type
+ ({ query }) => {
+ const { kind, operation } = getMainDefinition(query)
+ return kind === 'OperationDefinition' &&
+ operation === 'subscription'
+ },
+ wsLink,
+ httpLink
)
-// Create the apollo client with the new network interface
+// Create the apollo client
const apolloClient = new ApolloClient({
- networkInterface: networkInterfaceWithSubscriptions,
+ link,
+ cache: new InMemoryCache(),
connectToDevTools: true,
})
-// Install the plugin like before
+// Install the vue plugin like before
Vue.use(VueApollo)
```
@@ -1236,6 +1280,14 @@ export default willPrefetch({
})
```
+The second parameter is optional: it's a callback that gets the context and should return a boolean indicating if the component should be prefetched:
+
+```js
+willPrefetch({
+ // Component definition...
+}, context => context.url === '/foo')
+```
+
### On the server
To prefetch all the apollo queries you marked, use the `apolloProvider.prefetchAll` method. The first argument is the context object passed to the `prefetch` hooks (see above). It is recommended to pass the vue-router `currentRoute` object. The second argument is the array of component definition to include (e.g. from `router.getMatchedComponents` method). The third argument is an optional `options` object. It returns a promise resolved when all the apollo queries are loaded.
@@ -1340,7 +1392,9 @@ Here is an example:
// src/api/apollo.js
import Vue from 'vue'
-import { ApolloClient, createNetworkInterface } from 'apollo-client'
+import { ApolloClient } from 'apollo-client'
+import { HttpLink } from 'apollo-link-http'
+import { InMemoryCache } from 'apollo-cache-inmemory'
import VueApollo from 'vue-apollo'
// Install the vue plugin
@@ -1348,29 +1402,32 @@ Vue.use(VueApollo)
// Create the apollo client
export function createApolloClient (ssr = false) {
- let initialState
+ const httpLink = new HttpLink({
+ // You should use an absolute URL here
+ uri: ENDPOINT + '/graphql',
+ })
+
+ const cache = new InMemoryCache()
// If on the client, recover the injected state
- if (!ssr && typeof window !== 'undefined') {
- const state = window.__APOLLO_STATE__
- if (state) {
- // If you have multiple clients, use `state.`
- initialState = state.defaultClient
+ if (!ssr) {
+ // If on the client, recover the injected state
+ if (typeof window !== 'undefined') {
+ const state = window.__APOLLO_STATE__
+ if (state) {
+ // If you have multiple clients, use `state.`
+ cache.restore(state.defaultClient)
+ }
}
}
const apolloClient = new ApolloClient({
- networkInterface: createNetworkInterface({
- // You should use an absolute URL here
- uri: 'https://api.graph.cool/simple/v1/cj1jvw20v3n310152sv0sirl7',
- transportBatching: true,
- }),
+ link: httpLink,
+ cache,
...(ssr ? {
// Set this on the server to optimize queries when SSR
ssrMode: true,
} : {
- // Inject the state on the client
- initialState,
// This will temporary disable query force-fetching
ssrForceFetchDelay: 100,
}),
@@ -1463,6 +1520,282 @@ router.onReady(() => {
})
```
+## Query components
+
+(WIP) You can use the `ApolloQuery` (or `apollo-query`) component to make watched Apollo queries directly in your template:
+
+```html
+
+
+
+ Loading...
+
+
+ An error occured
+
+
+ {{ data.hello }}
+
+
+ No result :(
+
+
+```
+
+Props:
+
+- `query`: GraphQL query (transformed by `graphql-tag`)
+- `variables`: Object of GraphQL variables
+- `fetchPolicy`: See [apollo fetchPolicy](https://www.apollographql.com/docs/react/basics/queries.html#graphql-config-options-fetchPolicy)
+- `pollInterval`: See [apollo pollInterval](https://www.apollographql.com/docs/react/basics/queries.html#graphql-config-options-pollInterval)
+- `notifyOnNetworkStatusChange`: See [apollo notifyOnNetworkStatusChange](https://www.apollographql.com/docs/react/basics/queries.html#graphql-config-options-notifyOnNetworkStatusChange)
+- `context`: See [apollo context](https://www.apollographql.com/docs/react/basics/queries.html#graphql-config-options-context)
+- `skip`: Boolean disabling query fetching
+- `clienId`: Used to resolve the Apollo Client used (defined in ApolloProvider)
+- `tag`: String HTML tag name (default: `div`)
+
+Scoped slot props:
+- `result`: Apollo Query result
+ - `result.data`: Data returned by the query
+ - `result.loading`: Boolean indicating that a request is in flight
+ - `result.error`: Eventual error for the current result
+ - `result.networkStatus`: See [apollo networkStatus](https://www.apollographql.com/docs/react/basics/queries.html#graphql-query-data-networkStatus)
+- `query`: Smart Query associated with the component
+
+(WIP) You can subscribe to mode data with the `ApolloSubscribeToMore` (or `apollo-subscribe-to-more`) component:
+
+```html
+
+
+
+
+
+
+
+```
+
+*You can put as many of those as you want inside a `` component.*
+
+---
+
+# Migration
+
+## Migrating from vue-apollo 2.x and apollo 1.x
+
+The main changes are related to the apollo client setup. Your components code shouldn't be affected. Apollo now uses a more flexible [apollo-link](https://github.com/apollographql/apollo-link) system that allows compositing multiple links together to add more features (like batching, offline support and more).
+
+### Installation
+
+#### Packages
+
+Before:
+
+```
+npm install --save vue-apollo apollo-client
+```
+
+After:
+
+```
+npm install --save vue-apollo@next graphql apollo-client apollo-link apollo-link-http apollo-cache-inmemory graphql-tag
+```
+
+#### Imports
+
+Before:
+
+```js
+import Vue from 'vue'
+import { ApolloClient, createBatchingNetworkInterface } from 'apollo-client'
+import VueApollo from 'vue-apollo'
+```
+
+After:
+
+```js
+import Vue from 'vue'
+import { ApolloClient } from 'apollo-client'
+import { HttpLink } from 'apollo-link-http'
+import { InMemoryCache } from 'apollo-cache-inmemory'
+import VueApollo from 'vue-apollo'
+```
+
+#### Plugin Setup
+
+Before:
+
+```js
+// Create the apollo client
+const apolloClient = new ApolloClient({
+ networkInterface: createBatchingNetworkInterface({
+ uri: 'http://localhost:3020/graphql',
+ }),
+ connectToDevTools: true,
+})
+
+// Install the vue plugin
+Vue.use(VueApollo)
+```
+
+After:
+
+```js
+const httpLink = new HttpLink({
+ // You should use an absolute URL here
+ uri: 'http://localhost:3020/graphql',
+})
+
+// Create the apollo client
+const apolloClient = new ApolloClient({
+ link: httpLink,
+ cache: new InMemoryCache(),
+ connectToDevTools: true,
+})
+
+// Install the vue plugin
+Vue.use(VueApollo)
+```
+
+### Mutations
+
+Query reducers have been removed. Use the `update` API to update the cache now.
+
+### Subscriptions
+
+#### Packages
+
+Before:
+
+```
+npm install --save subscriptions-transport-ws
+```
+
+After:
+
+```
+npm install --save apollo-link-ws apollo-utilities
+```
+
+#### Imports
+
+Before:
+
+```js
+import { SubscriptionClient, addGraphQLSubscriptions } from 'subscriptions-transport-ws'
+```
+
+After:
+
+```js
+import { split } from 'apollo-link'
+import { WebSocketLink } from 'apollo-link-ws'
+import { getMainDefinition } from 'apollo-utilities'
+```
+
+#### Apollo Setup
+
+Before:
+
+```js
+// Create the network interface
+const networkInterface = createNetworkInterface({
+ uri: 'http://localhost:3000/graphql',
+ transportBatching: true,
+})
+
+// Create the subscription websocket client
+const wsClient = new SubscriptionClient('ws://localhost:3000/subscriptions', {
+ reconnect: true,
+})
+
+// Extend the network interface with the subscription client
+const networkInterfaceWithSubscriptions = addGraphQLSubscriptions(
+ networkInterface,
+ wsClient,
+)
+
+// Create the apollo client with the new network interface
+const apolloClient = new ApolloClient({
+ networkInterface: networkInterfaceWithSubscriptions,
+ connectToDevTools: true,
+})
+
+// Install the plugin like before
+Vue.use(VueApollo)
+```
+
+After:
+
+```js
+const httpLink = new HttpLink({
+ // You should use an absolute URL here
+ uri: 'http://localhost:3020/graphql',
+})
+
+// Create the subscription websocket link
+const wsLink = new WebSocketLink({
+ uri: 'ws://localhost:3000/subscriptions',
+ options: {
+ reconnect: true,
+ },
+})
+
+// using the ability to split links, you can send data to each link
+// depending on what kind of operation is being sent
+const link = split(
+ // split based on operation type
+ ({ query }) => {
+ const { kind, operation } = getMainDefinition(query)
+ return kind === 'OperationDefinition' &&
+ operation === 'subscription'
+ },
+ wsLink,
+ httpLink
+)
+
+// Create the apollo client
+const apolloClient = new ApolloClient({
+ link,
+ cache: new InMemoryCache(),
+ connectToDevTools: true,
+})
+
+// Install the vue plugin like before
+Vue.use(VueApollo)
+```
+
+
+
+
+Learn more at the [official apollo documentation](https://www.apollographql.com/docs/react/2.0-migration.html).
+
---
# API Reference
diff --git a/build/rollup.config.base.js b/build/rollup.config.base.js
new file mode 100644
index 0000000..0bd0731
--- /dev/null
+++ b/build/rollup.config.base.js
@@ -0,0 +1,26 @@
+import babel from 'rollup-plugin-babel'
+import cjs from 'rollup-plugin-commonjs'
+import replace from 'rollup-plugin-replace'
+import resolve from 'rollup-plugin-node-resolve'
+
+const config = require('../package.json')
+
+export default {
+ input: 'src/index.js',
+ plugins: [
+ resolve({
+ jsnext: true,
+ main: true,
+ browser: true,
+ }),
+ cjs({
+ exclude: 'src/**',
+ }),
+ babel({
+ exclude: 'node_modules/**',
+ }),
+ replace({
+ VERSION: JSON.stringify(config.version),
+ }),
+ ],
+}
diff --git a/rollup.config.browser.js b/build/rollup.config.browser.js
similarity index 59%
rename from rollup.config.browser.js
rename to build/rollup.config.browser.js
index baae637..0818621 100644
--- a/rollup.config.browser.js
+++ b/build/rollup.config.browser.js
@@ -1,11 +1,13 @@
import base from './rollup.config.base'
import uglify from 'rollup-plugin-uglify'
-import { minify } from 'uglify-js-harmony'
+import { minify } from 'uglify-es'
const config = Object.assign({}, base, {
- dest: 'dist/vue-apollo.min.js',
- format: 'iife',
- moduleName: 'VueApollo',
+ output: {
+ file: 'dist/vue-apollo.min.js',
+ format: 'iife',
+ name: 'VueApollo',
+ },
})
config.plugins.push(uglify({}, minify))
diff --git a/rollup.config.es.js b/build/rollup.config.es.js
similarity index 53%
rename from rollup.config.es.js
rename to build/rollup.config.es.js
index 3c49df3..de8bc8a 100644
--- a/rollup.config.es.js
+++ b/build/rollup.config.es.js
@@ -1,8 +1,11 @@
import base from './rollup.config.base'
const config = Object.assign({}, base, {
- dest: 'dist/vue-apollo.esm.js',
- format: 'es',
+ output: {
+ file: 'dist/vue-apollo.esm.js',
+ format: 'es',
+ name: 'vue-apollo',
+ },
})
export default config
diff --git a/rollup.config.umd.js b/build/rollup.config.umd.js
similarity index 52%
rename from rollup.config.umd.js
rename to build/rollup.config.umd.js
index ddfc9b7..0c92304 100644
--- a/rollup.config.umd.js
+++ b/build/rollup.config.umd.js
@@ -1,8 +1,11 @@
import base from './rollup.config.base'
const config = Object.assign({}, base, {
- dest: 'dist/vue-apollo.umd.js',
- format: 'umd',
+ output: {
+ file: 'dist/vue-apollo.umd.js',
+ format: 'umd',
+ name: 'vue-apollo',
+ },
})
export default config
diff --git a/dist/vue-apollo.esm.js b/dist/vue-apollo.esm.js
index f078d01..d2c5098 100644
--- a/dist/vue-apollo.esm.js
+++ b/dist/vue-apollo.esm.js
@@ -1619,7 +1619,7 @@ var now = function() {
* // Cancel the trailing debounced invocation.
* jQuery(window).on('popstate', debounced.cancel);
*/
-function debounce$1(func, wait, options) {
+function debounce(func, wait, options) {
var lastArgs,
lastThis,
maxWait,
@@ -1785,7 +1785,7 @@ function debounce$1(func, wait, options) {
* // Cancel the trailing throttled invocation.
* jQuery(window).on('popstate', throttled.cancel);
*/
-function throttle$1(func, wait, options) {
+function throttle(func, wait, options) {
var leading = true,
trailing = true;
@@ -1796,7 +1796,7 @@ function throttle$1(func, wait, options) {
leading = 'leading' in options ? !!options.leading : leading;
trailing = 'trailing' in options ? !!options.trailing : trailing;
}
- return debounce$1(func, wait, {
+ return debounce(func, wait, {
'leading': leading,
'maxWait': wait,
'trailing': trailing
@@ -1927,7 +1927,7 @@ function toNumber(value) {
: (reIsBadHex.test(value) ? NAN : +value);
}
-var lodash_throttle = throttle$1;
+var lodash_throttle = throttle;
/**
* lodash (Custom Build)
@@ -2059,7 +2059,7 @@ var now$1 = function() {
* // Cancel the trailing debounced invocation.
* jQuery(window).on('popstate', debounced.cancel);
*/
-function debounce$2(func, wait, options) {
+function debounce$1(func, wait, options) {
var lastArgs,
lastThis,
maxWait,
@@ -2305,7 +2305,7 @@ function toNumber$1(value) {
: (reIsBadHex$1.test(value) ? NAN$1 : +value);
}
-var lodash_debounce = debounce$2;
+var lodash_debounce = debounce$1;
var Globals = {};
@@ -2319,9 +2319,9 @@ function factory(action) {
};
}
-var throttle = factory(lodash_throttle);
+var throttle$1 = factory(lodash_throttle);
-var debounce = factory(lodash_debounce);
+var debounce$2 = factory(lodash_debounce);
function getMergedDefinition(def) {
return Globals.Vue.util.mergeOptions({}, def);
@@ -2334,8 +2334,6 @@ function reapply(options, context) {
return options;
}
-var VUE_APOLLO_QUERY_KEYWORDS = ['variables', 'watch', 'update', 'result', 'error', 'loadingKey', 'watchLoading', 'skip', 'throttle', 'debounce', 'subscribeToMore', 'prefetch', 'manual'];
-
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {
return typeof obj;
} : function (obj) {
@@ -2510,6 +2508,7 @@ var SmartApollo = function () {
this.options = Object.assign({}, options);
this._skip = false;
this._watchers = [];
+ this._destroyed = false;
// Query callback
if (typeof this.options.query === 'function') {
@@ -2530,6 +2529,16 @@ var SmartApollo = function () {
}));
}
+ // Apollo context
+ if (typeof this.options.context === 'function') {
+ var cb = this.options.context.bind(this.vm);
+ this.options.context = cb();
+ this._watchers.push(this.vm.$watch(cb, function (context) {
+ _this.options.context = context;
+ _this.refresh();
+ }));
+ }
+
if (this.vm.$isServer) {
this.options.fetchPolicy = 'cache-first';
}
@@ -2575,8 +2584,8 @@ var SmartApollo = function () {
this.starting = true;
if (typeof this.options.variables === 'function') {
var cb = this.executeApollo.bind(this);
- cb = this.options.throttle ? throttle(cb, this.options.throttle) : cb;
- cb = this.options.debounce ? debounce(cb, this.options.debounce) : cb;
+ cb = this.options.throttle ? throttle$1(cb, this.options.throttle) : cb;
+ cb = this.options.debounce ? debounce$2(cb, this.options.debounce) : cb;
this.unwatchVariables = this.vm.$watch(function () {
return _this2.options.variables.call(_this2.vm);
}, cb, {
@@ -2676,6 +2685,9 @@ var SmartApollo = function () {
}, {
key: 'destroy',
value: function destroy() {
+ if (this._destroyed) return;
+
+ this._destroyed = true;
this.stop();
var _iteratorNormalCompletion2 = true;
var _didIteratorError2 = false;
@@ -2719,6 +2731,8 @@ var SmartApollo = function () {
return SmartApollo;
}();
+var VUE_APOLLO_QUERY_KEYWORDS = ['variables', 'watch', 'update', 'result', 'error', 'loadingKey', 'watchLoading', 'skip', 'throttle', 'debounce', 'subscribeToMore', 'prefetch', 'manual'];
+
var SmartQuery = function (_SmartApollo) {
inherits(SmartQuery, _SmartApollo);
@@ -2734,12 +2748,19 @@ var SmartQuery = function (_SmartApollo) {
};
}
- var _this3 = possibleConstructorReturn(this, (SmartQuery.__proto__ || Object.getPrototypeOf(SmartQuery)).call(this, vm, key, options, autostart));
+ // Add reactive data related to the query
+ if (vm.$data.$apolloData && !vm.$data.$apolloData.queries[key]) {
+ vm.$set(vm.$data.$apolloData.queries, key, {
+ loading: false
+ });
+ }
- _this3.type = 'query';
- _this3.vueApolloSpecialKeys = VUE_APOLLO_QUERY_KEYWORDS;
- _this3.loading = false;
- return _this3;
+ var _this = possibleConstructorReturn(this, (SmartQuery.__proto__ || Object.getPrototypeOf(SmartQuery)).call(this, vm, key, options, autostart));
+
+ _this.type = 'query';
+ _this.vueApolloSpecialKeys = VUE_APOLLO_QUERY_KEYWORDS;
+ _this._loading = false;
+ return _this;
}
createClass(SmartQuery, [{
@@ -2774,7 +2795,11 @@ var SmartQuery = function (_SmartApollo) {
});
}
- this.maySetLoading();
+ var currentResult = this.maySetLoading();
+
+ if (!currentResult.loading) {
+ this.nextResult(currentResult);
+ }
get(SmartQuery.prototype.__proto__ || Object.getPrototypeOf(SmartQuery.prototype), 'executeApollo', this).call(this, variables);
}
@@ -2790,6 +2815,7 @@ var SmartQuery = function (_SmartApollo) {
}
this.loading = true;
}
+ return currentResult;
}
}, {
key: 'nextResult',
@@ -2808,7 +2834,7 @@ var SmartQuery = function (_SmartApollo) {
// No result
} else if (typeof this.options.update === 'function') {
this.vm[this.key] = this.options.update.call(this.vm, data);
- } else if (data[this.key] === undefined) {
+ } else if (data[this.key] === undefined && !this.options.manual) {
console.error('Missing ' + this.key + ' attribute on result', data);
} else if (!this.options.manual) {
this.vm[this.key] = data[this.key];
@@ -2829,15 +2855,15 @@ var SmartQuery = function (_SmartApollo) {
}, {
key: 'watchLoading',
value: function watchLoading() {
- var _options$watchLoading, _vm$$apollo$watchLoad, _vm$$apollo$provider$2;
+ var _options$watchLoading, _vm$$apollo$watchLoad, _vm$$apollo$provider$;
- for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
- args[_key2] = arguments[_key2];
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
}
this.options.watchLoading && (_options$watchLoading = this.options.watchLoading).call.apply(_options$watchLoading, [this.vm].concat(args));
this.vm.$apollo.watchLoading && (_vm$$apollo$watchLoad = this.vm.$apollo.watchLoading).call.apply(_vm$$apollo$watchLoad, [this.vm].concat(args));
- this.vm.$apollo.provider.watchLoading && (_vm$$apollo$provider$2 = this.vm.$apollo.provider.watchLoading).call.apply(_vm$$apollo$provider$2, [this.vm].concat(args));
+ this.vm.$apollo.provider.watchLoading && (_vm$$apollo$provider$ = this.vm.$apollo.provider.watchLoading).call.apply(_vm$$apollo$provider$, [this.vm].concat(args));
}
}, {
key: 'applyLoadingModifier',
@@ -2860,7 +2886,7 @@ var SmartQuery = function (_SmartApollo) {
}, {
key: 'fetchMore',
value: function fetchMore() {
- var _this4 = this;
+ var _this2 = this;
if (this.observer) {
var _observer;
@@ -2868,7 +2894,7 @@ var SmartQuery = function (_SmartApollo) {
this.maySetLoading(true);
return (_observer = this.observer).fetchMore.apply(_observer, arguments).then(function (result) {
if (!result.loading) {
- _this4.loadingDone();
+ _this2.loadingDone();
}
return result;
});
@@ -2888,13 +2914,13 @@ var SmartQuery = function (_SmartApollo) {
}, {
key: 'refetch',
value: function refetch(variables) {
- var _this5 = this;
+ var _this3 = this;
variables && (this.options.variables = variables);
if (this.observer) {
var result = this.observer.refetch(variables).then(function (result) {
if (!result.loading) {
- _this5.loadingDone();
+ _this3.loadingDone();
}
return result;
});
@@ -2940,6 +2966,25 @@ var SmartQuery = function (_SmartApollo) {
return (_observer4 = this.observer).stopPolling.apply(_observer4, arguments);
}
}
+ }, {
+ key: 'client',
+ get: function get$$1() {
+ return this.vm.$apollo.getClient(this.options);
+ }
+ }, {
+ key: 'loading',
+ get: function get$$1() {
+ return this.vm.$data.$apolloData ? this.vm.$data.$apolloData.queries[this.key].loading : this._loading;
+ },
+ set: function set$$1(value) {
+ if (this._loading !== value) {
+ this._loading = value;
+ if (this.vm.$data.$apolloData) {
+ this.vm.$data.$apolloData.queries[this.key].loading = value;
+ this.vm.$data.$apolloData.loading += value ? 1 : -1;
+ }
+ }
+ }
}, {
key: 'loadingKey',
get: function get$$1() {
@@ -2949,21 +2994,21 @@ var SmartQuery = function (_SmartApollo) {
return SmartQuery;
}(SmartApollo);
-var SmartSubscription = function (_SmartApollo2) {
- inherits(SmartSubscription, _SmartApollo2);
+var SmartSubscription = function (_SmartApollo) {
+ inherits(SmartSubscription, _SmartApollo);
function SmartSubscription() {
var _ref;
- var _temp, _this6, _ret;
+ var _temp, _this, _ret;
classCallCheck(this, SmartSubscription);
- for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
- args[_key3] = arguments[_key3];
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
}
- return _ret = (_temp = (_this6 = possibleConstructorReturn(this, (_ref = SmartSubscription.__proto__ || Object.getPrototypeOf(SmartSubscription)).call.apply(_ref, [this].concat(args))), _this6), _this6.type = 'subscription', _this6.vueApolloSpecialKeys = ['variables', 'result', 'error', 'throttle', 'debounce', 'linkedQuery'], _temp), possibleConstructorReturn(_this6, _ret);
+ return _ret = (_temp = (_this = possibleConstructorReturn(this, (_ref = SmartSubscription.__proto__ || Object.getPrototypeOf(SmartSubscription)).call.apply(_ref, [this].concat(args))), _this), _this.type = 'subscription', _this.vueApolloSpecialKeys = ['variables', 'result', 'error', 'throttle', 'debounce', 'linkedQuery'], _temp), possibleConstructorReturn(_this, _ret);
}
createClass(SmartSubscription, [{
@@ -3029,7 +3074,9 @@ var DollarApollo = function () {
}
}, {
key: 'getClient',
- value: function getClient(options) {
+ value: function getClient() {
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+
if (!options || !options.client) {
if (_typeof(this.client) === 'object') {
return this.client;
@@ -3183,7 +3230,12 @@ var DollarApollo = function () {
}, {
key: 'provider',
get: function get$$1() {
- return this._apolloProvider || this.vm.$root._apolloProvider;
+ return this.vm.$apolloProvider;
+ }
+ }, {
+ key: 'loading',
+ get: function get$$1() {
+ return this.vm.$data.$apolloData && this.vm.$data.$apolloData.loading !== 0;
}
}, {
key: 'skipAllQueries',
@@ -3209,7 +3261,7 @@ var DollarApollo = function () {
return DollarApollo;
}();
-var ApolloProvider$1 = function () {
+var ApolloProvider = function () {
function ApolloProvider(options) {
classCallCheck(this, ApolloProvider);
@@ -3226,16 +3278,23 @@ var ApolloProvider$1 = function () {
}
createClass(ApolloProvider, [{
- key: 'willPrefetchQuery',
- value: function willPrefetchQuery(queryOptions, client) {
+ key: 'provide',
+ value: function provide() {
+ var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '$apolloProvider';
+
+ return defineProperty({}, key, this);
+ }
+ }, {
+ key: 'addQueryToPrefetch',
+ value: function addQueryToPrefetch(queryOptions, client) {
this.prefetchQueries.push({
queryOptions: queryOptions,
client: client
});
}
}, {
- key: 'willPrefetch',
- value: function willPrefetch(component) {
+ key: 'prefetchComponent',
+ value: function prefetchComponent(component, context) {
component = getMergedDefinition(component);
var apolloOptions = component.apollo;
@@ -3247,13 +3306,13 @@ var ApolloProvider$1 = function () {
for (var key in apolloOptions) {
var options = apolloOptions[key];
if (key.charAt(0) !== '$' && (!options.query || (typeof options.ssr === 'undefined' || options.ssr) && typeof options.prefetch !== 'undefined' && options.prefetch)) {
- this.willPrefetchQuery(options, options.client || componentClient);
+ this.addQueryToPrefetch(options, options.client || componentClient);
}
}
}
}, {
- key: 'willPrefetchComponents',
- value: function willPrefetchComponents(definitions) {
+ key: 'prefetchComponents',
+ value: function prefetchComponents(definitions) {
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
@@ -3262,7 +3321,7 @@ var ApolloProvider$1 = function () {
for (var _iterator = definitions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var def = _step.value;
- this.willPrefetch(def);
+ this.prefetchComponent(def);
}
} catch (err) {
_didIteratorError = true;
@@ -3295,11 +3354,23 @@ var ApolloProvider$1 = function () {
}, options);
if (components) {
- this.willPrefetchComponents(components);
+ this.prefetchComponents(components);
}
if (finalOptions.includeGlobal) {
- this.willPrefetchComponents(globalPrefetchs);
+ this.prefetchComponents(globalPrefetchs.filter(function (_ref2) {
+ var component = _ref2.component,
+ contextCallback = _ref2.contextCallback;
+
+ var result = true;
+ if (typeof contextCallback === 'function') {
+ result = !!contextCallback(context);
+ }
+ return result;
+ }).map(function (_ref3) {
+ var component = _ref3.component;
+ return component;
+ }), context);
}
return Promise.all(this.prefetchQueries.map(function (o) {
@@ -3376,7 +3447,7 @@ var ApolloProvider$1 = function () {
var states = {};
for (var key in this.clients) {
var client = this.clients[key];
- var state = defineProperty({}, client.reduxRootKey || 'apollo', client.getInitialState());
+ var state = client.cache.extract();
states['' + finalOptions.exportNamespace + key] = state;
}
return states;
@@ -3399,30 +3470,277 @@ var ApolloProvider$1 = function () {
var globalPrefetchs = [];
function willPrefetch(component) {
- globalPrefetchs.push(component);
+ var contextCallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+
+ globalPrefetchs.push({ component: component, contextCallback: contextCallback });
return component;
}
+// Global access for libraries
+if (typeof window !== 'undefined') {
+ window.vueApolloWillPrefetch = willPrefetch;
+} else if (typeof global !== 'undefined') {
+ global.vueApolloWillPrefetch = willPrefetch;
+}
+
+function isDataFilled(data) {
+ return Object.keys(data).length > 0;
+}
+
+var CApolloQuery = {
+ name: 'ApolloQuery',
+
+ provide: function provide() {
+ return {
+ getDollarApollo: this.getDollarApollo,
+ getApolloQuery: this.getApolloQuery
+ };
+ },
+
+
+ props: {
+ query: {
+ type: Object,
+ required: true
+ },
+
+ variables: {
+ type: Object,
+ default: null
+ },
+
+ fetchPolicy: {
+ type: String,
+ default: 'cache-first'
+ },
+
+ pollInterval: {
+ type: Number,
+ default: 0
+ },
+
+ notifyOnNetworkStatusChange: {
+ type: Boolean,
+ default: false
+ },
+
+ context: {
+ type: Object,
+ default: null
+ },
+
+ skip: {
+ type: Boolean,
+ default: false
+ },
+
+ clientId: {
+ type: String,
+ default: undefined
+ },
+
+ tag: {
+ type: String,
+ default: 'div'
+ }
+ },
+
+ data: function data() {
+ return {
+ result: {
+ data: null,
+ loading: false,
+ networkStatus: 7,
+ error: null
+ }
+ };
+ },
+
+
+ watch: {
+ fetchPolicy: function fetchPolicy(value) {
+ this.$apollo.queries.query.setOptions({
+ fetchPolicy: value
+ });
+ },
+ pollInterval: function pollInterval(value) {
+ this.$apollo.queries.query.setOptions({
+ pollInterval: value
+ });
+ },
+ notifyOnNetworkStatusChange: function notifyOnNetworkStatusChange(value) {
+ this.$apollo.queries.query.setOptions({
+ notifyOnNetworkStatusChange: value
+ });
+ }
+ },
+
+ apollo: {
+ $client: function $client() {
+ return this.clientId;
+ },
+ query: function query() {
+ return {
+ query: function query() {
+ return this.query;
+ },
+ variables: function variables() {
+ return this.variables;
+ },
+
+ fetchPolicy: this.fetchPolicy,
+ pollInterval: this.pollInterval,
+ notifyOnNetworkStatusChange: this.notifyOnNetworkStatusChange,
+ context: function context() {
+ return this.context;
+ },
+ skip: function skip() {
+ return this.skip;
+ },
+
+ manual: true,
+ result: function result(_result) {
+ var _result2 = _result,
+ errors = _result2.errors,
+ loading = _result2.loading,
+ networkStatus = _result2.networkStatus;
+ var _result3 = _result,
+ error = _result3.error;
+
+ _result = Object.assign({}, _result);
+
+ if (errors && errors.length) {
+ error = new Error('Apollo errors occured (' + errors.length + ')');
+ error.graphQLErrors = errors;
+ }
+
+ var data = {};
+
+ if (loading) {
+ Object.assign(data, this.$_previousData, _result.data);
+ } else if (error) {
+ Object.assign(data, this.$apollo.queries.query.observer.getLastResult() || {}, _result.data);
+ } else {
+ data = _result.data;
+ this.$_previousData = _result.data;
+ }
+
+ this.result = {
+ data: isDataFilled(data) ? data : undefined,
+ loading: loading,
+ error: error,
+ networkStatus: networkStatus
+ };
+ },
+ error: function error(_error) {
+ this.result.loading = false;
+ this.result.error = _error;
+ console.log(this.$apollo.queries.query.observer.currentResult());
+ }
+ };
+ }
+ },
+
+ methods: {
+ getDollarApollo: function getDollarApollo() {
+ return this.$apollo;
+ },
+ getApolloQuery: function getApolloQuery() {
+ return this.$apollo.queries.query;
+ }
+ },
+
+ render: function render(h) {
+ var result = this.$scopedSlots.default({
+ result: this.result,
+ query: this.$apollo.queries.query
+ });
+ if (Array.isArray(result)) {
+ result.concat(this.$slots.default);
+ } else {
+ result = [result].concat(this.$slots.default);
+ }
+ return h(this.tag, result);
+ }
+};
+
+var uid = 0;
+
+var CApolloSubscribeToMore = {
+ name: 'ApolloSubscribeToMore',
+
+ inject: ['getDollarApollo', 'getApolloQuery'],
+
+ props: {
+ document: {
+ type: Object,
+ required: true
+ },
+
+ variables: {
+ type: Object,
+ default: null
+ },
+
+ updateQuery: {
+ type: Function,
+ default: null
+ }
+ },
+
+ watch: {
+ document: 'refresh',
+ variables: 'refresh'
+ },
+
+ created: function created() {
+ this.$_key = 'sub_component_' + uid++;
+ },
+ mounted: function mounted() {
+ this.refresh();
+ },
+ beforeDestroy: function beforeDestroy() {
+ this.destroy();
+ },
+
+
+ methods: {
+ destroy: function destroy() {
+ if (this.$_sub) {
+ this.$_sub.destroy();
+ }
+ },
+ refresh: function refresh() {
+ this.destroy();
+
+ this.$_sub = this.getDollarApollo().addSmartSubscription(this.$_key, {
+ document: this.document,
+ variables: this.variables,
+ updateQuery: this.updateQuery,
+ linkedQuery: this.getApolloQuery()
+ });
+
+ console.log(this.$_key, this.$_sub);
+ }
+ },
+
+ render: function render(h) {
+ return null;
+ }
+};
+
var keywords = ['$subscribe'];
-var prepare = function prepare() {
- var apolloProvider = void 0;
- if (this.$options.apolloProvider) {
- apolloProvider = this._apolloProvider = this.$options.apolloProvider;
- } else {
- apolloProvider = this.$root._apolloProvider;
- }
+var launch = function launch() {
+ var apolloProvider = this.$apolloProvider;
- if (this._apolloPrepared) return;
- this._apolloPrepared = true;
+ if (this._apolloLaunched || !apolloProvider) return;
+ this._apolloLaunched = true;
// Prepare properties
var apollo = this.$options.apollo;
if (apollo) {
- this._apolloQueries = {};
- this._apolloInitData = {};
-
if (!apollo.$init) {
apollo.$init = true;
@@ -3432,22 +3750,6 @@ var prepare = function prepare() {
}
}
- // watchQuery
- for (var key in apollo) {
- if (key.charAt(0) !== '$') {
- this._apolloInitData[key] = null;
- this._apolloQueries[key] = apollo[key];
- }
- }
- }
-};
-
-var launch = function launch() {
- if (this._apolloLaunched) return;
- this._apolloLaunched = true;
-
- var apollo = this.$options.apollo;
- if (apollo) {
defineReactiveSetter(this.$apollo, 'skipAll', apollo.$skipAll);
defineReactiveSetter(this.$apollo, 'skipAllQueries', apollo.$skipAllQueries);
defineReactiveSetter(this.$apollo, 'skipAllSubscriptions', apollo.$skipAllSubscriptions);
@@ -3455,16 +3757,14 @@ var launch = function launch() {
defineReactiveSetter(this.$apollo, 'loadingKey', apollo.$loadingKey);
defineReactiveSetter(this.$apollo, 'error', apollo.$error);
defineReactiveSetter(this.$apollo, 'watchLoading', apollo.$watchLoading);
- }
- if (this._apolloQueries) {
// watchQuery
- for (var key in this._apolloQueries) {
- this.$apollo.addSmartQuery(key, this._apolloQueries[key]);
+ for (var key in apollo) {
+ if (key.charAt(0) !== '$') {
+ this.$apollo.addSmartQuery(key, apollo[key]);
+ }
}
- }
- if (apollo) {
if (apollo.subscribe) {
Globals.Vue.util.warn('vue-apollo -> `subscribe` option is deprecated. Use the `$subscribe` option instead.');
}
@@ -3513,7 +3813,7 @@ function install(Vue, options) {
// Lazy creation
Object.defineProperty(Vue.prototype, '$apollo', {
- get: function get() {
+ get: function get$$1() {
if (!this._apollo) {
this._apollo = new DollarApollo(this);
}
@@ -3521,18 +3821,32 @@ function install(Vue, options) {
}
});
- Vue.mixin({
+ var vueVersion = Vue.version.substr(0, Vue.version.indexOf('.'));
- // Vue 1.x
- init: prepare,
- // Vue 2.x
- beforeCreate: prepare,
-
- // Better devtools support
- data: function data() {
- return this._apolloInitData || {};
+ Vue.mixin(_extends({}, vueVersion === '1' ? {
+ init: function init() {
+ var apolloProvider = void 0;
+ if (this.$options.apolloProvider) {
+ apolloProvider = this._apolloProvider = this.$options.apolloProvider;
+ } else {
+ apolloProvider = this.$root._apolloProvider;
+ }
+ this.$apolloProvider = apolloProvider;
+ }
+ } : {}, vueVersion === '2' ? {
+ inject: {
+ $apolloProvider: { default: null }
},
+ data: function data() {
+ return this.$options.apollo ? {
+ '$apolloData': {
+ queries: {},
+ loading: 0
+ }
+ } : {};
+ }
+ } : {}, {
created: launch,
@@ -3543,12 +3857,26 @@ function install(Vue, options) {
}
}
- });
+ }));
+
+ if (vueVersion === '2') {
+ Vue.component('apollo-query', CApolloQuery);
+ Vue.component('ApolloQuery', CApolloQuery);
+ Vue.component('apollo-subscribe-to-more', CApolloSubscribeToMore);
+ Vue.component('ApolloSubscribeToMore', CApolloSubscribeToMore);
+ }
}
-ApolloProvider$1.install = install;
+ApolloProvider.install = install;
-var ApolloProvider$$1 = ApolloProvider$1;
+// eslint-disable-next-line no-undef
+ApolloProvider.version = "3.0.0-beta.1";
+
+// Apollo provider
+var ApolloProvider$1 = ApolloProvider;
+// Components
+var ApolloQuery = CApolloQuery;
+var ApolloSubscribeToMore = CApolloSubscribeToMore;
// Auto-install
var GlobalVue = null;
@@ -3558,7 +3886,8 @@ if (typeof window !== 'undefined') {
GlobalVue = global.Vue;
}
if (GlobalVue) {
- GlobalVue.use(ApolloProvider$1);
+ GlobalVue.use(ApolloProvider);
}
-export { install, ApolloProvider$$1 as ApolloProvider, willPrefetch };export default ApolloProvider$1;
+export default ApolloProvider;
+export { install, ApolloProvider$1 as ApolloProvider, ApolloQuery, ApolloSubscribeToMore, willPrefetch };
diff --git a/dist/vue-apollo.min.js b/dist/vue-apollo.min.js
index dd499e8..94db382 100644
--- a/dist/vue-apollo.min.js
+++ b/dist/vue-apollo.min.js
@@ -1 +1 @@
-!function(t){"use strict";function e(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function r(t,e){var r=t?t.length:0;return!!r&&a(t,e,0)>-1}function i(t,e,r){for(var i=-1,n=t?t.length:0;++i-1}function S(t,e){var r=this.__data__,i=V(r,t);return i<0?r.push([t,e]):r[i][1]=e,this}function A(t){var e=-1,r=t?t.length:0;for(this.clear();++e=Qt&&(u=h,l=!1,e=new T(e));t:for(;++a0&&r(u)?e>1?R(u,e-1,r,i,n):o(n,u):i||(n[n.length]=u)}return n}function D(t,e,r){var i=e(t);return fe(t)?i:o(i,r(t))}function N(t){if(!lt(t)||Y(t))return!1;var e=at(t)||p(t)?te:Nt;return e.test(rt(t))}function I(t){if(!lt(t))return tt(t);var e=Z(t),r=[];for(var i in t)("constructor"!=i||!e&&Yt.call(t,i))&&r.push(i);return r}function F(t,e){return t=Object(t),H(t,e,function(e,r){return r in t})}function H(t,e,r){for(var i=-1,n=e.length,o={};++i-1&&t%1==0&&t-1&&t%1==0&&t<=Mt}function lt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function ct(t){return!!t&&"object"==typeof t}function ht(t){return"symbol"==typeof t||ct(t)&&Zt.call(t)==Rt}function ft(t){return ot(t)?C(t,!0):I(t)}function pt(){return[]}function vt(t,e,r){function i(e){var r=f,i=p;return f=p=void 0,g=e,y=t.apply(i,r)}function n(t){return g=t,d=setTimeout(a,e),_?i(t):y}function o(t){var r=t-b,i=t-g,n=e-r;return m?xe(n,v-i):n}function s(t){var r=t-b,i=t-g;return void 0===b||r>=e||r<0||m&&i>=v}function a(){var t=Ee();return s(t)?u(t):void(d=setTimeout(a,o(t)))}function u(t){return d=void 0,w&&f?i(t):(f=p=void 0,y)}function l(){void 0!==d&&clearTimeout(d),g=0,f=b=p=d=void 0}function c(){return void 0===d?y:u(Ee())}function h(){var t=Ee(),r=s(t);if(f=arguments,p=this,b=t,r){if(void 0===d)return n(b);if(m)return d=setTimeout(a,e),i(b)}return void 0===d&&(d=setTimeout(a,e)),y}var f,p,v,y,d,b,g=0,_=!1,m=!1,w=!0;if("function"!=typeof t)throw new TypeError(ye);return e=_t(e)||0,dt(r)&&(_=!!r.leading,m="maxWait"in r,v=m?Pe(_t(r.maxWait)||0,e):v,w="trailing"in r?!!r.trailing:w),h.cancel=l,h.flush=c,h}function yt(t,e,r){var i=!0,n=!0;if("function"!=typeof t)throw new TypeError(ye);return dt(r)&&(i="leading"in r?!!r.leading:i,n="trailing"in r?!!r.trailing:n),vt(t,e,{leading:i,maxWait:e,trailing:n})}function dt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function bt(t){return!!t&&"object"==typeof t}function gt(t){return"symbol"==typeof t||bt(t)&&Ae.call(t)==be}function _t(t){if("number"==typeof t)return t;if(gt(t))return de;if(dt(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=dt(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(ge,"");var r=me.test(t);return r||we.test(t)?ke(t.slice(2),r?2:8):_e.test(t)?de:+t}function mt(t,e,r){function i(e){var r=f,i=p;return f=p=void 0,g=e,y=t.apply(i,r)}function n(t){return g=t,d=setTimeout(a,e),_?i(t):y}function o(t){var r=t-b,i=t-g,n=e-r;return m?Ge(n,v-i):n}function s(t){var r=t-b,i=t-g;return void 0===b||r>=e||r<0||m&&i>=v}function a(){var t=Je();return s(t)?u(t):void(d=setTimeout(a,o(t)))}function u(t){return d=void 0,w&&f?i(t):(f=p=void 0,y)}function l(){void 0!==d&&clearTimeout(d),g=0,f=b=p=d=void 0}function c(){return void 0===d?y:u(Je())}function h(){var t=Je(),r=s(t);if(f=arguments,p=this,b=t,r){if(void 0===d)return n(b);if(m)return d=setTimeout(a,e),i(b)}return void 0===d&&(d=setTimeout(a,e)),y}var f,p,v,y,d,b,g=0,_=!1,m=!1,w=!0;if("function"!=typeof t)throw new TypeError(Qe);return e=jt(e)||0,wt(r)&&(_=!!r.leading,m="maxWait"in r,v=m?We(jt(r.maxWait)||0,e):v,w="trailing"in r?!!r.trailing:w),h.cancel=l,h.flush=c,h}function wt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function kt(t){return!!t&&"object"==typeof t}function Ot(t){return"symbol"==typeof t||kt(t)&&He.call(t)==qe}function jt(t){if("number"==typeof t)return t;if(Ot(t))return Te;if(wt(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=wt(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Me,"");var r=Ve.test(t);return r||Ke.test(t)?Re(t.slice(2),r?2:8):Ce.test(t)?Te:+t}function $t(t){return function(e,r){return"number"==typeof r?t(e,r):t(e,r.wait,r)}}function St(t){return ze.Vue.util.mergeOptions({},t)}function At(t,e){for(;"function"==typeof t;)t=t.call(e);return t}function Pt(t){return pr.push(t),t}function xt(t,e,r){"undefined"!=typeof r&&("function"==typeof r?t.defineReactiveSetter(e,r):t[e]=r)}function Et(t,e){if(!Et.installed){Et.installed=!0,ze.Vue=t;var r=t.config.optionMergeStrategies.methods;t.config.optionMergeStrategies.apollo=function(t,e,i){if(!t)return e;if(!e)return t;for(var n=Object.assign({},ve(t,vr),t.data),o=Object.assign({},ve(e,vr),e.data),s={},a=0;a3&&void 0!==arguments[3])||arguments[3];if(tr(this,t),this.type=null,this.vueApolloSpecialKeys=[],this.vm=e,this.key=r,this.options=Object.assign({},i),this._skip=!1,this._watchers=[],"function"==typeof this.options.query){var s=this.options.query.bind(this.vm);this.options.query=s(),this._watchers.push(this.vm.$watch(s,function(t){n.options.query=t,n.refresh()}))}if("function"==typeof this.options.document){var a=this.options.document.bind(this.vm);this.options.document=a(),this._watchers.push(this.vm.$watch(a,function(t){n.options.document=t,n.refresh()}))}this.vm.$isServer&&(this.options.fetchPolicy="cache-first"),o&&this.autostart()}return er(t,[{key:"autostart",value:function(){"function"==typeof this.options.skip?this._watchers.push(this.vm.$watch(this.options.skip.bind(this.vm),this.skipChanged.bind(this),{immediate:!0})):this.options.skip?this._skip=!0:this.start()}},{key:"skipChanged",value:function(t,e){t!==e&&(this.skip=t)}},{key:"refresh",value:function(){this._skip||(this.stop(),this.start())}},{key:"start",value:function(){var t=this;if(this.starting=!0,"function"==typeof this.options.variables){var e=this.executeApollo.bind(this);e=this.options.throttle?Be(e,this.options.throttle):e,e=this.options.debounce?Xe(e,this.options.debounce):e,this.unwatchVariables=this.vm.$watch(function(){return t.options.variables.call(t.vm)},e,{immediate:!0})}else this.executeApollo(this.options.variables)}},{key:"stop",value:function(){this.unwatchVariables&&(this.unwatchVariables(),this.unwatchVariables=null),this.sub&&(this.sub.unsubscribe(),this.sub=null)}},{key:"generateApolloOptions",value:function(t){var e=ve(this.options,this.vueApolloSpecialKeys);return e.variables=t,e}},{key:"executeApollo",value:function(t){this.starting=!1}},{key:"nextResult",value:function(){throw new Error("Not implemented")}},{key:"errorHandler",value:function(){for(var t,e,r,i=arguments.length,n=Array(i),o=0;o3&&void 0!==arguments[3])||arguments[3];if(tr(this,e),!i.query){var o=i;i={query:o}}var s=sr(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,r,i,n));return s.type="query",s.vueApolloSpecialKeys=Ye,s.loading=!1,s}return or(e,t),er(e,[{key:"stop",value:function(){nr(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"stop",this).call(this),this.observer&&(this.observer.stopPolling(),this.observer=null)}},{key:"executeApollo",value:function(t){this.observer?this.observer.setOptions(this.generateApolloOptions(t)):(this.sub&&this.sub.unsubscribe(),this.observer=this.vm.$apollo.watchQuery(this.generateApolloOptions(t)),this.sub=this.observer.subscribe({next:this.nextResult.bind(this),error:this.catchError.bind(this)})),this.maySetLoading(),nr(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"executeApollo",this).call(this,t)}},{key:"maySetLoading",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.observer.currentResult();(t||e.loading)&&(this.loading||this.applyLoadingModifier(1),this.loading=!0)}},{key:"nextResult",value:function(t){var e=t.data,r=t.loading;r||this.loadingDone();var i="function"==typeof this.options.result;"undefined"==typeof e||("function"==typeof this.options.update?this.vm[this.key]=this.options.update.call(this.vm,e):void 0===e[this.key]?console.error("Missing "+this.key+" attribute on result",e):this.options.manual?i||console.error(this.key+" query must have a 'result' hook in manual mode"):this.vm[this.key]=e[this.key]),i&&this.options.result.call(this.vm,t)}},{key:"catchError",value:function(t){nr(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"catchError",this).call(this,t),this.loadingDone()}},{key:"watchLoading",value:function(){for(var t,e,r,i=arguments.length,n=Array(i),o=0;o `subscribe` option is deprecated. Use the `$subscribe` option instead."),t.$subscribe))for(var r in t.$subscribe)this.$apollo.addSmartSubscription(r,t.$subscribe[r])}};fr.install=Et;var br=fr,gr=null;"undefined"!=typeof window?gr=window.Vue:"undefined"!=typeof global&&(gr=global.Vue),gr&&gr.use(fr),t.install=Et,t.ApolloProvider=br,t.default=fr,t.willPrefetch=Pt}(this.VueApollo=this.VueApollo||{});
+var VueApollo=function(t){"use strict";var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},r=200,o="__lodash_hash_undefined__",i=1/0,n=9007199254740991,s="[object Arguments]",a="[object Function]",l="[object GeneratorFunction]",u="[object Symbol]",c=/^\[object .+?Constructor\]$/,h=/^(?:0|[1-9]\d*)$/,f="object"==typeof e&&e&&e.Object===Object&&e,p="object"==typeof self&&self&&self.Object===Object&&self,v=f||p||Function("return this")();function y(t,e){return!!(t?t.length:0)&&function(t,e,r){if(e!=e)return function(t,e,r,o){var i=t.length,n=r+(o?1:-1);for(;o?n--:++n-1}function d(t,e,r){for(var o=-1,i=t?t.length:0;++o-1},K.prototype.set=function(t,e){var r=this.__data__,o=H(r,t);return o<0?r.push([t,e]):r[o][1]=e,this},I.prototype.clear=function(){this.__data__={hash:new V,map:new(N||K),string:new V}},I.prototype.delete=function(t){return U(this,t).delete(t)},I.prototype.get=function(t){return U(this,t).get(t)},I.prototype.has=function(t){return U(this,t).has(t)},I.prototype.set=function(t,e){return U(this,t).set(t,e),this},F.prototype.add=F.prototype.push=function(t){return this.__data__.set(t,o),this},F.prototype.has=function(t){return this.__data__.has(t)};var X=D?k(D,Object):ht,Y=D?function(t){for(var e=[];t;)g(e,X(t)),t=E(t);return e}:ht;function Z(t){return nt(t)||rt(t)||!!(C&&t&&t[C])}function tt(t,e){return!!(e=null==e?n:e)&&("number"==typeof t||h.test(t))&&t>-1&&t%1==0&&t-1&&t%1==0&&t<=n}(t.length)&&!at(t)}function at(t){var e=lt(t)?q.call(t):"";return e==a||e==l}function lt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function ut(t){return!!t&&"object"==typeof t}function ct(t){return st(t)?W(t,!0):J(t)}function ht(){return[]}var ft=(ot=function(t,e){return null==t?{}:(e=b(function t(e,r,o,i,n){var s=-1,a=e.length;for(o||(o=Z),n||(n=[]);++s0&&o(l)?r>1?t(l,r-1,o,i,n):g(n,l):i||(n[n.length]=l)}return n}(e,1),et),function(t,e){return function(t,e,r){for(var o=-1,i=e.length,n={};++o=r&&(a=_,l=!1,e=new F(e));t:for(;++s=e||r<0||h&&t-u>=n}function y(){var t=At();if(v(t))return d(t);a=setTimeout(y,function(t){var r=e-(t-l);return h?jt(r,n-(t-u)):r}(t))}function d(t){return a=void 0,f&&o?p(t):(o=i=void 0,s)}function b(){var t=At(),r=v(t);if(o=arguments,i=this,l=t,r){if(void 0===a)return function(t){return u=t,a=setTimeout(y,e),c?p(t):s}(l);if(h)return a=setTimeout(y,e),p(l)}return void 0===a&&(a=setTimeout(y,e)),s}return e=xt(e)||0,qt(r)&&(c=!!r.leading,n=(h="maxWait"in r)?St(xt(r.maxWait)||0,e):n,f="trailing"in r?!!r.trailing:f),b.cancel=function(){void 0!==a&&clearTimeout(a),u=0,o=l=i=a=void 0},b.flush=function(){return void 0===a?s:d(At())},b}function qt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function xt(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&Ot.call(t)==yt}(t))return vt;if(qt(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=qt(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(dt,"");var r=gt.test(t);return r||mt.test(t)?_t(t.slice(2),r?2:8):bt.test(t)?vt:+t}var Qt=function(t,e,r){var o=!0,i=!0;if("function"!=typeof t)throw new TypeError(pt);return qt(r)&&(o="leading"in r?!!r.leading:o,i="trailing"in r?!!r.trailing:i),Pt(t,e,{leading:o,maxWait:e,trailing:i})},Et="Expected a function",Lt=NaN,Tt="[object Symbol]",Ct=/^\s+|\s+$/g,Dt=/^[-+]0x[0-9a-f]+$/i,Mt=/^0b[01]+$/i,Nt=/^0o[0-7]+$/i,Rt=parseInt,Vt="object"==typeof e&&e&&e.Object===Object&&e,Kt="object"==typeof self&&self&&self.Object===Object&&self,It=Vt||Kt||Function("return this")(),Ft=Object.prototype.toString,Wt=Math.max,Ht=Math.min,Gt=function(){return It.Date.now()};function Jt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Bt(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&Ft.call(t)==Tt}(t))return Lt;if(Jt(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Jt(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Ct,"");var r=Mt.test(t);return r||Nt.test(t)?Rt(t.slice(2),r?2:8):Dt.test(t)?Lt:+t}var Ut=function(t,e,r){var o,i,n,s,a,l,u=0,c=!1,h=!1,f=!0;if("function"!=typeof t)throw new TypeError(Et);function p(e){var r=o,n=i;return o=i=void 0,u=e,s=t.apply(n,r)}function v(t){var r=t-l;return void 0===l||r>=e||r<0||h&&t-u>=n}function y(){var t=Gt();if(v(t))return d(t);a=setTimeout(y,function(t){var r=e-(t-l);return h?Ht(r,n-(t-u)):r}(t))}function d(t){return a=void 0,f&&o?p(t):(o=i=void 0,s)}function b(){var t=Gt(),r=v(t);if(o=arguments,i=this,l=t,r){if(void 0===a)return function(t){return u=t,a=setTimeout(y,e),c?p(t):s}(l);if(h)return a=setTimeout(y,e),p(l)}return void 0===a&&(a=setTimeout(y,e)),s}return e=Bt(e)||0,Jt(r)&&(c=!!r.leading,n=(h="maxWait"in r)?Wt(Bt(r.maxWait)||0,e):n,f="trailing"in r?!!r.trailing:f),b.cancel=function(){void 0!==a&&clearTimeout(a),u=0,o=l=i=a=void 0},b.flush=function(){return void 0===a?s:d(Gt())},b},zt={};function Xt(t){return function(e,r){return"number"==typeof r?t(e,r):t(e,r.wait,r)}}var Yt=Xt(Qt),Zt=Xt(Ut);function te(t,e){for(;"function"==typeof t;)t=t.call(e);return t}var ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},re=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},oe=function(){function t(t,e){for(var r=0;r3&&void 0!==arguments[3])||arguments[3];if(re(this,t),this.type=null,this.vueApolloSpecialKeys=[],this.vm=e,this.key=r,this.options=Object.assign({},o),this._skip=!1,this._watchers=[],this._destroyed=!1,"function"==typeof this.options.query){var s=this.options.query.bind(this.vm);this.options.query=s(),this._watchers.push(this.vm.$watch(s,function(t){i.options.query=t,i.refresh()}))}if("function"==typeof this.options.document){var a=this.options.document.bind(this.vm);this.options.document=a(),this._watchers.push(this.vm.$watch(a,function(t){i.options.document=t,i.refresh()}))}if("function"==typeof this.options.context){var l=this.options.context.bind(this.vm);this.options.context=l(),this._watchers.push(this.vm.$watch(l,function(t){i.options.context=t,i.refresh()}))}this.vm.$isServer&&(this.options.fetchPolicy="cache-first"),n&&this.autostart()}return oe(t,[{key:"autostart",value:function(){"function"==typeof this.options.skip?this._watchers.push(this.vm.$watch(this.options.skip.bind(this.vm),this.skipChanged.bind(this),{immediate:!0})):this.options.skip?this._skip=!0:this.start()}},{key:"skipChanged",value:function(t,e){t!==e&&(this.skip=t)}},{key:"refresh",value:function(){this._skip||(this.stop(),this.start())}},{key:"start",value:function(){var t=this;if(this.starting=!0,"function"==typeof this.options.variables){var e=this.executeApollo.bind(this);e=this.options.throttle?Yt(e,this.options.throttle):e,e=this.options.debounce?Zt(e,this.options.debounce):e,this.unwatchVariables=this.vm.$watch(function(){return t.options.variables.call(t.vm)},e,{immediate:!0})}else this.executeApollo(this.options.variables)}},{key:"stop",value:function(){this.unwatchVariables&&(this.unwatchVariables(),this.unwatchVariables=null),this.sub&&(this.sub.unsubscribe(),this.sub=null)}},{key:"generateApolloOptions",value:function(t){var e=ft(this.options,this.vueApolloSpecialKeys);return e.variables=t,e}},{key:"executeApollo",value:function(t){this.starting=!1}},{key:"nextResult",value:function(){throw new Error("Not implemented")}},{key:"errorHandler",value:function(){for(var t,e,r,o=arguments.length,i=Array(o),n=0;n3&&void 0!==arguments[3])||arguments[3];(re(this,e),o.query)||(o={query:o});t.$data.$apolloData&&!t.$data.$apolloData.queries[r]&&t.$set(t.$data.$apolloData.queries,r,{loading:!1});var n=ae(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,r,o,i));return n.type="query",n.vueApolloSpecialKeys=ce,n._loading=!1,n}return se(e,ue),oe(e,[{key:"stop",value:function(){ne(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"stop",this).call(this),this.observer&&(this.observer.stopPolling(),this.observer=null)}},{key:"executeApollo",value:function(t){this.observer?this.observer.setOptions(this.generateApolloOptions(t)):(this.sub&&this.sub.unsubscribe(),this.observer=this.vm.$apollo.watchQuery(this.generateApolloOptions(t)),this.sub=this.observer.subscribe({next:this.nextResult.bind(this),error:this.catchError.bind(this)}));var r=this.maySetLoading();r.loading||this.nextResult(r),ne(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"executeApollo",this).call(this,t)}},{key:"maySetLoading",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.observer.currentResult();return(t||e.loading)&&(this.loading||this.applyLoadingModifier(1),this.loading=!0),e}},{key:"nextResult",value:function(t){var e=t.data;t.loading||this.loadingDone();var r="function"==typeof this.options.result;void 0===e||("function"==typeof this.options.update?this.vm[this.key]=this.options.update.call(this.vm,e):void 0!==e[this.key]||this.options.manual?this.options.manual?r||console.error(this.key+" query must have a 'result' hook in manual mode"):this.vm[this.key]=e[this.key]:console.error("Missing "+this.key+" attribute on result",e)),r&&this.options.result.call(this.vm,t)}},{key:"catchError",value:function(t){ne(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"catchError",this).call(this,t),this.loadingDone()}},{key:"watchLoading",value:function(){for(var t,e,r,o=arguments.length,i=Array(o),n=0;n0&&void 0!==arguments[0]?arguments[0]:null;if(!t||!t.client){if("object"===ee(this.client))return this.client;if(this.client){if(this.provider.clients){var e=this.provider.clients[this.client];if(!e)throw new Error("[vue-apollo] Missing client '"+this.client+"' in 'apolloProvider'");return e}throw new Error("[vue-apollo] Missing 'clients' options in 'apolloProvider'")}return this.provider.defaultClient}var r=this.provider.clients[t.client];if(!r)throw new Error("[vue-apollo] Missing client '"+t.client+"' in 'apolloProvider'");return r}},{key:"watchQuery",value:function(t){var e=this,r=this.getClient(t).watchQuery(t),o=r.subscribe.bind(r);return r.subscribe=function(t){var r=o(t);return e._apolloSubscriptions.push(r),r},r}},{key:"mutate",value:function(t){return this.getClient(t).mutate(t)}},{key:"subscribe",value:function(t){var e=this;if(!this.vm.$isServer){var r=this.getClient(t).subscribe(t),o=r.subscribe.bind(r);return r.subscribe=function(t){var r=o(t);return e._apolloSubscriptions.push(r),r},r}}},{key:"addSmartQuery",value:function(t,e){var r=this;e=te(e,this.vm);var o=this.queries[t]=new he(this.vm,t,e,!1);if(o.autostart(),!this.vm.$isServer){var i=e.subscribeToMore;i&&(Array.isArray(i)?i.forEach(function(e,i){r.addSmartSubscription(""+t+i,ie({},e,{linkedQuery:o}))}):this.addSmartSubscription(t,ie({},i,{linkedQuery:o})))}return o}},{key:"addSmartSubscription",value:function(t,e){if(!this.vm.$isServer){e=te(e,this.vm);var r=this.subscriptions[t]=new fe(this.vm,t,e,!1);return r.autostart(),r}}},{key:"defineReactiveSetter",value:function(t,e){var r=this;this._watchers.push(this.vm.$watch(e,function(e){r[t]=e},{immediate:!0}))}},{key:"destroy",value:function(){var t=!0,e=!1,r=void 0;try{for(var o,i=this._watchers[Symbol.iterator]();!(t=(o=i.next()).done);t=!0){(0,o.value)()}}catch(t){e=!0,r=t}finally{try{!t&&i.return&&i.return()}finally{if(e)throw r}}for(var n in this.queries)this.queries[n].destroy();for(var s in this.subscriptions)this.subscriptions[s].destroy();this._apolloSubscriptions.forEach(function(t){t.unsubscribe()}),this._apolloSubscriptions=null,this.vm=null}},{key:"provider",get:function(){return this.vm.$apolloProvider}},{key:"loading",get:function(){return this.vm.$data.$apolloData&&0!==this.vm.$data.$apolloData.loading}},{key:"skipAllQueries",set:function(t){for(var e in this.queries)this.queries[e].skip=t}},{key:"skipAllSubscriptions",set:function(t){for(var e in this.subscriptions)this.subscriptions[e].skip=t}},{key:"skipAll",set:function(t){this.skipAllQueries=t,this.skipAllSubscriptions=t}}]),t}(),ve=function(){function t(e){if(re(this,t),!e)throw new Error("Options argument required");this.clients=e.clients||{},this.clients.defaultClient=this.defaultClient=e.defaultClient,this.defaultOptions=e.defaultOptions,this.watchLoading=e.watchLoading,this.errorHandler=e.errorHandler,this.prefetchQueries=[]}return oe(t,[{key:"provide",value:function(){return function(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}({},arguments.length>0&&void 0!==arguments[0]?arguments[0]:"$apolloProvider",this)}},{key:"addQueryToPrefetch",value:function(t,e){this.prefetchQueries.push({queryOptions:t,client:e})}},{key:"prefetchComponent",value:function(t,e){var r;r=t;var o=(t=zt.Vue.util.mergeOptions({},r)).apollo;if(o){var i=o.$client;for(var n in o){var s=o[n];"$"===n.charAt(0)||s.query&&(void 0!==s.ssr&&!s.ssr||void 0===s.prefetch||!s.prefetch)||this.addQueryToPrefetch(s,s.client||i)}}}},{key:"prefetchComponents",value:function(t){var e=!0,r=!1,o=void 0;try{for(var i,n=t[Symbol.iterator]();!(e=(i=n.next()).done);e=!0){var s=i.value;this.prefetchComponent(s)}}catch(t){r=!0,o=t}finally{try{!e&&n.return&&n.return()}finally{if(r)throw o}}}},{key:"prefetchAll",value:function(t,e,r){var o=this;r||!e||Array.isArray(e)||(r=e,e=void 0);var i=Object.assign({},{includeGlobal:!0},r);return e&&this.prefetchComponents(e),i.includeGlobal&&this.prefetchComponents(ye.filter(function(e){e.component;var r=e.contextCallback,o=!0;return"function"==typeof r&&(o=!!r(t)),o}).map(function(t){return t.component}),t),Promise.all(this.prefetchQueries.map(function(e){return o.prefetchQuery(e.queryOptions,t,e.client)}))}},{key:"prefetchQuery",value:function(t,e,r){var o=void 0;if(r){if("string"==typeof r&&!(r=this.clients[r]))throw new Error("[vue-apollo] Missing client '"+r+"' in 'apolloProvider'")}else r=this.defaultClient;if(t.query){var i=t.prefetch,n=void 0===i?"undefined":ee(i);if("undefined"!==n){var s=void 0;if(!(s="function"===n?i(e):i))return Promise.resolve();if("boolean"===n){var a=t.variables;o=void 0!==a?"function"==typeof a?a.call(e):a:void 0}else o=s}}else t={query:t};return new Promise(function(e,i){var n=ft(t,[].concat(le(ce),["fetchPolicy"]));n.variables=o,n.fetchPolicy="network-only",r.query(n).then(e,i)})}},{key:"getStates",value:function(t){var e=Object.assign({},{exportNamespace:""},t),r={};for(var o in this.clients){var i=this.clients[o].cache.extract();r[""+e.exportNamespace+o]=i}return r}},{key:"exportStates",value:function(t){var e=Object.assign({},{globalName:"__APOLLO_STATE__",attachTo:"window"},t),r=this.getStates(e);return e.attachTo+"."+e.globalName+" = "+JSON.stringify(r)+";"}}]),t}(),ye=[];function de(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return ye.push({component:t,contextCallback:e}),t}"undefined"!=typeof window?window.vueApolloWillPrefetch=de:"undefined"!=typeof global&&(global.vueApolloWillPrefetch=de);var be={name:"ApolloQuery",provide:function(){return{getDollarApollo:this.getDollarApollo,getApolloQuery:this.getApolloQuery}},props:{query:{type:Object,required:!0},variables:{type:Object,default:null},fetchPolicy:{type:String,default:"cache-first"},pollInterval:{type:Number,default:0},notifyOnNetworkStatusChange:{type:Boolean,default:!1},context:{type:Object,default:null},skip:{type:Boolean,default:!1},clientId:{type:String,default:void 0},tag:{type:String,default:"div"}},data:function(){return{result:{data:null,loading:!1,networkStatus:7,error:null}}},watch:{fetchPolicy:function(t){this.$apollo.queries.query.setOptions({fetchPolicy:t})},pollInterval:function(t){this.$apollo.queries.query.setOptions({pollInterval:t})},notifyOnNetworkStatusChange:function(t){this.$apollo.queries.query.setOptions({notifyOnNetworkStatusChange:t})}},apollo:{$client:function(){return this.clientId},query:function(){return{query:function(){return this.query},variables:function(){return this.variables},fetchPolicy:this.fetchPolicy,pollInterval:this.pollInterval,notifyOnNetworkStatusChange:this.notifyOnNetworkStatusChange,context:function(){return this.context},skip:function(){return this.skip},manual:!0,result:function(t){var e=t,r=e.errors,o=e.loading,i=e.networkStatus,n=t.error;t=Object.assign({},t),r&&r.length&&((n=new Error("Apollo errors occured ("+r.length+")")).graphQLErrors=r);var s={};o?Object.assign(s,this.$_previousData,t.data):n?Object.assign(s,this.$apollo.queries.query.observer.getLastResult()||{},t.data):(s=t.data,this.$_previousData=t.data),this.result={data:function(t){return Object.keys(t).length>0}(s)?s:void 0,loading:o,error:n,networkStatus:i}},error:function(t){this.result.loading=!1,this.result.error=t,console.log(this.$apollo.queries.query.observer.currentResult())}}}},methods:{getDollarApollo:function(){return this.$apollo},getApolloQuery:function(){return this.$apollo.queries.query}},render:function(t){var e=this.$scopedSlots.default({result:this.result,query:this.$apollo.queries.query});return Array.isArray(e)?e.concat(this.$slots.default):e=[e].concat(this.$slots.default),t(this.tag,e)}},ge=0,me={name:"ApolloSubscribeToMore",inject:["getDollarApollo","getApolloQuery"],props:{document:{type:Object,required:!0},variables:{type:Object,default:null},updateQuery:{type:Function,default:null}},watch:{document:"refresh",variables:"refresh"},created:function(){this.$_key="sub_component_"+ge++},mounted:function(){this.refresh()},beforeDestroy:function(){this.destroy()},methods:{destroy:function(){this.$_sub&&this.$_sub.destroy()},refresh:function(){this.destroy(),this.$_sub=this.getDollarApollo().addSmartSubscription(this.$_key,{document:this.document,variables:this.variables,updateQuery:this.updateQuery,linkedQuery:this.getApolloQuery()}),console.log(this.$_key,this.$_sub)}},render:function(t){return null}},_e=["$subscribe"],ke=function(){var t=this.$apolloProvider;if(!this._apolloLaunched&&t){this._apolloLaunched=!0;var e=this.$options.apollo;if(e){for(var r in e.$init||(e.$init=!0,t.defaultOptions&&(e=this.$options.apollo=Object.assign({},t.defaultOptions,e))),$e(this.$apollo,"skipAll",e.$skipAll),$e(this.$apollo,"skipAllQueries",e.$skipAllQueries),$e(this.$apollo,"skipAllSubscriptions",e.$skipAllSubscriptions),$e(this.$apollo,"client",e.$client),$e(this.$apollo,"loadingKey",e.$loadingKey),$e(this.$apollo,"error",e.$error),$e(this.$apollo,"watchLoading",e.$watchLoading),e)"$"!==r.charAt(0)&&this.$apollo.addSmartQuery(r,e[r]);if(e.subscribe&&zt.Vue.util.warn("vue-apollo -> `subscribe` option is deprecated. Use the `$subscribe` option instead."),e.$subscribe)for(var o in e.$subscribe)this.$apollo.addSmartSubscription(o,e.$subscribe[o])}}};function $e(t,e,r){void 0!==r&&("function"==typeof r?t.defineReactiveSetter(e,r):t[e]=r)}function we(t,e){if(!we.installed){we.installed=!0,zt.Vue=t;var r=t.config.optionMergeStrategies.methods;t.config.optionMergeStrategies.apollo=function(t,e,o){if(!t)return e;if(!e)return t;for(var i=Object.assign({},ft(t,_e),t.data),n=Object.assign({},ft(e,_e),e.data),s={},a=0;a<_e.length;a++){var l=_e[a];s[l]=r(t[l],e[l])}return Object.assign(s,r(i,n))},Object.defineProperty(t.prototype,"$apollo",{get:function(){return this._apollo||(this._apollo=new pe(this)),this._apollo}});var o=t.version.substr(0,t.version.indexOf("."));t.mixin(ie({},"1"===o?{init:function(){var t=void 0;t=this.$options.apolloProvider?this._apolloProvider=this.$options.apolloProvider:this.$root._apolloProvider,this.$apolloProvider=t}}:{},"2"===o?{inject:{$apolloProvider:{default:null}},data:function(){return this.$options.apollo?{$apolloData:{queries:{},loading:0}}:{}}}:{},{created:ke,destroyed:function(){this._apollo&&(this._apollo.destroy(),this._apollo=null)}})),"2"===o&&(t.component("apollo-query",be),t.component("ApolloQuery",be),t.component("apollo-subscribe-to-more",me),t.component("ApolloSubscribeToMore",me))}}ve.install=we,ve.version="3.0.0-beta.1";var Oe=ve,Se=be,je=me,Ae=null;return"undefined"!=typeof window?Ae=window.Vue:"undefined"!=typeof global&&(Ae=global.Vue),Ae&&Ae.use(ve),t.install=we,t.ApolloProvider=Oe,t.ApolloQuery=Se,t.ApolloSubscribeToMore=je,t.default=ve,t.willPrefetch=de,t}({});
diff --git a/dist/vue-apollo.umd.js b/dist/vue-apollo.umd.js
index 11acbf4..6955582 100644
--- a/dist/vue-apollo.umd.js
+++ b/dist/vue-apollo.umd.js
@@ -1,7 +1,7 @@
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
typeof define === 'function' && define.amd ? define(['exports'], factory) :
- (factory((global['vue-apollo'] = global['vue-apollo'] || {})));
+ (factory((global['vue-apollo'] = {})));
}(this, (function (exports) { 'use strict';
var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
@@ -1625,7 +1625,7 @@ var now = function() {
* // Cancel the trailing debounced invocation.
* jQuery(window).on('popstate', debounced.cancel);
*/
-function debounce$1(func, wait, options) {
+function debounce(func, wait, options) {
var lastArgs,
lastThis,
maxWait,
@@ -1791,7 +1791,7 @@ function debounce$1(func, wait, options) {
* // Cancel the trailing throttled invocation.
* jQuery(window).on('popstate', throttled.cancel);
*/
-function throttle$1(func, wait, options) {
+function throttle(func, wait, options) {
var leading = true,
trailing = true;
@@ -1802,7 +1802,7 @@ function throttle$1(func, wait, options) {
leading = 'leading' in options ? !!options.leading : leading;
trailing = 'trailing' in options ? !!options.trailing : trailing;
}
- return debounce$1(func, wait, {
+ return debounce(func, wait, {
'leading': leading,
'maxWait': wait,
'trailing': trailing
@@ -1933,7 +1933,7 @@ function toNumber(value) {
: (reIsBadHex.test(value) ? NAN : +value);
}
-var lodash_throttle = throttle$1;
+var lodash_throttle = throttle;
/**
* lodash (Custom Build)
@@ -2065,7 +2065,7 @@ var now$1 = function() {
* // Cancel the trailing debounced invocation.
* jQuery(window).on('popstate', debounced.cancel);
*/
-function debounce$2(func, wait, options) {
+function debounce$1(func, wait, options) {
var lastArgs,
lastThis,
maxWait,
@@ -2311,7 +2311,7 @@ function toNumber$1(value) {
: (reIsBadHex$1.test(value) ? NAN$1 : +value);
}
-var lodash_debounce = debounce$2;
+var lodash_debounce = debounce$1;
var Globals = {};
@@ -2325,9 +2325,9 @@ function factory(action) {
};
}
-var throttle = factory(lodash_throttle);
+var throttle$1 = factory(lodash_throttle);
-var debounce = factory(lodash_debounce);
+var debounce$2 = factory(lodash_debounce);
function getMergedDefinition(def) {
return Globals.Vue.util.mergeOptions({}, def);
@@ -2340,8 +2340,6 @@ function reapply(options, context) {
return options;
}
-var VUE_APOLLO_QUERY_KEYWORDS = ['variables', 'watch', 'update', 'result', 'error', 'loadingKey', 'watchLoading', 'skip', 'throttle', 'debounce', 'subscribeToMore', 'prefetch', 'manual'];
-
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {
return typeof obj;
} : function (obj) {
@@ -2516,6 +2514,7 @@ var SmartApollo = function () {
this.options = Object.assign({}, options);
this._skip = false;
this._watchers = [];
+ this._destroyed = false;
// Query callback
if (typeof this.options.query === 'function') {
@@ -2536,6 +2535,16 @@ var SmartApollo = function () {
}));
}
+ // Apollo context
+ if (typeof this.options.context === 'function') {
+ var cb = this.options.context.bind(this.vm);
+ this.options.context = cb();
+ this._watchers.push(this.vm.$watch(cb, function (context) {
+ _this.options.context = context;
+ _this.refresh();
+ }));
+ }
+
if (this.vm.$isServer) {
this.options.fetchPolicy = 'cache-first';
}
@@ -2581,8 +2590,8 @@ var SmartApollo = function () {
this.starting = true;
if (typeof this.options.variables === 'function') {
var cb = this.executeApollo.bind(this);
- cb = this.options.throttle ? throttle(cb, this.options.throttle) : cb;
- cb = this.options.debounce ? debounce(cb, this.options.debounce) : cb;
+ cb = this.options.throttle ? throttle$1(cb, this.options.throttle) : cb;
+ cb = this.options.debounce ? debounce$2(cb, this.options.debounce) : cb;
this.unwatchVariables = this.vm.$watch(function () {
return _this2.options.variables.call(_this2.vm);
}, cb, {
@@ -2682,6 +2691,9 @@ var SmartApollo = function () {
}, {
key: 'destroy',
value: function destroy() {
+ if (this._destroyed) return;
+
+ this._destroyed = true;
this.stop();
var _iteratorNormalCompletion2 = true;
var _didIteratorError2 = false;
@@ -2725,6 +2737,8 @@ var SmartApollo = function () {
return SmartApollo;
}();
+var VUE_APOLLO_QUERY_KEYWORDS = ['variables', 'watch', 'update', 'result', 'error', 'loadingKey', 'watchLoading', 'skip', 'throttle', 'debounce', 'subscribeToMore', 'prefetch', 'manual'];
+
var SmartQuery = function (_SmartApollo) {
inherits(SmartQuery, _SmartApollo);
@@ -2740,12 +2754,19 @@ var SmartQuery = function (_SmartApollo) {
};
}
- var _this3 = possibleConstructorReturn(this, (SmartQuery.__proto__ || Object.getPrototypeOf(SmartQuery)).call(this, vm, key, options, autostart));
+ // Add reactive data related to the query
+ if (vm.$data.$apolloData && !vm.$data.$apolloData.queries[key]) {
+ vm.$set(vm.$data.$apolloData.queries, key, {
+ loading: false
+ });
+ }
- _this3.type = 'query';
- _this3.vueApolloSpecialKeys = VUE_APOLLO_QUERY_KEYWORDS;
- _this3.loading = false;
- return _this3;
+ var _this = possibleConstructorReturn(this, (SmartQuery.__proto__ || Object.getPrototypeOf(SmartQuery)).call(this, vm, key, options, autostart));
+
+ _this.type = 'query';
+ _this.vueApolloSpecialKeys = VUE_APOLLO_QUERY_KEYWORDS;
+ _this._loading = false;
+ return _this;
}
createClass(SmartQuery, [{
@@ -2780,7 +2801,11 @@ var SmartQuery = function (_SmartApollo) {
});
}
- this.maySetLoading();
+ var currentResult = this.maySetLoading();
+
+ if (!currentResult.loading) {
+ this.nextResult(currentResult);
+ }
get(SmartQuery.prototype.__proto__ || Object.getPrototypeOf(SmartQuery.prototype), 'executeApollo', this).call(this, variables);
}
@@ -2796,6 +2821,7 @@ var SmartQuery = function (_SmartApollo) {
}
this.loading = true;
}
+ return currentResult;
}
}, {
key: 'nextResult',
@@ -2814,7 +2840,7 @@ var SmartQuery = function (_SmartApollo) {
// No result
} else if (typeof this.options.update === 'function') {
this.vm[this.key] = this.options.update.call(this.vm, data);
- } else if (data[this.key] === undefined) {
+ } else if (data[this.key] === undefined && !this.options.manual) {
console.error('Missing ' + this.key + ' attribute on result', data);
} else if (!this.options.manual) {
this.vm[this.key] = data[this.key];
@@ -2835,15 +2861,15 @@ var SmartQuery = function (_SmartApollo) {
}, {
key: 'watchLoading',
value: function watchLoading() {
- var _options$watchLoading, _vm$$apollo$watchLoad, _vm$$apollo$provider$2;
+ var _options$watchLoading, _vm$$apollo$watchLoad, _vm$$apollo$provider$;
- for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
- args[_key2] = arguments[_key2];
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
}
this.options.watchLoading && (_options$watchLoading = this.options.watchLoading).call.apply(_options$watchLoading, [this.vm].concat(args));
this.vm.$apollo.watchLoading && (_vm$$apollo$watchLoad = this.vm.$apollo.watchLoading).call.apply(_vm$$apollo$watchLoad, [this.vm].concat(args));
- this.vm.$apollo.provider.watchLoading && (_vm$$apollo$provider$2 = this.vm.$apollo.provider.watchLoading).call.apply(_vm$$apollo$provider$2, [this.vm].concat(args));
+ this.vm.$apollo.provider.watchLoading && (_vm$$apollo$provider$ = this.vm.$apollo.provider.watchLoading).call.apply(_vm$$apollo$provider$, [this.vm].concat(args));
}
}, {
key: 'applyLoadingModifier',
@@ -2866,7 +2892,7 @@ var SmartQuery = function (_SmartApollo) {
}, {
key: 'fetchMore',
value: function fetchMore() {
- var _this4 = this;
+ var _this2 = this;
if (this.observer) {
var _observer;
@@ -2874,7 +2900,7 @@ var SmartQuery = function (_SmartApollo) {
this.maySetLoading(true);
return (_observer = this.observer).fetchMore.apply(_observer, arguments).then(function (result) {
if (!result.loading) {
- _this4.loadingDone();
+ _this2.loadingDone();
}
return result;
});
@@ -2894,13 +2920,13 @@ var SmartQuery = function (_SmartApollo) {
}, {
key: 'refetch',
value: function refetch(variables) {
- var _this5 = this;
+ var _this3 = this;
variables && (this.options.variables = variables);
if (this.observer) {
var result = this.observer.refetch(variables).then(function (result) {
if (!result.loading) {
- _this5.loadingDone();
+ _this3.loadingDone();
}
return result;
});
@@ -2946,6 +2972,25 @@ var SmartQuery = function (_SmartApollo) {
return (_observer4 = this.observer).stopPolling.apply(_observer4, arguments);
}
}
+ }, {
+ key: 'client',
+ get: function get$$1() {
+ return this.vm.$apollo.getClient(this.options);
+ }
+ }, {
+ key: 'loading',
+ get: function get$$1() {
+ return this.vm.$data.$apolloData ? this.vm.$data.$apolloData.queries[this.key].loading : this._loading;
+ },
+ set: function set$$1(value) {
+ if (this._loading !== value) {
+ this._loading = value;
+ if (this.vm.$data.$apolloData) {
+ this.vm.$data.$apolloData.queries[this.key].loading = value;
+ this.vm.$data.$apolloData.loading += value ? 1 : -1;
+ }
+ }
+ }
}, {
key: 'loadingKey',
get: function get$$1() {
@@ -2955,21 +3000,21 @@ var SmartQuery = function (_SmartApollo) {
return SmartQuery;
}(SmartApollo);
-var SmartSubscription = function (_SmartApollo2) {
- inherits(SmartSubscription, _SmartApollo2);
+var SmartSubscription = function (_SmartApollo) {
+ inherits(SmartSubscription, _SmartApollo);
function SmartSubscription() {
var _ref;
- var _temp, _this6, _ret;
+ var _temp, _this, _ret;
classCallCheck(this, SmartSubscription);
- for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
- args[_key3] = arguments[_key3];
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
}
- return _ret = (_temp = (_this6 = possibleConstructorReturn(this, (_ref = SmartSubscription.__proto__ || Object.getPrototypeOf(SmartSubscription)).call.apply(_ref, [this].concat(args))), _this6), _this6.type = 'subscription', _this6.vueApolloSpecialKeys = ['variables', 'result', 'error', 'throttle', 'debounce', 'linkedQuery'], _temp), possibleConstructorReturn(_this6, _ret);
+ return _ret = (_temp = (_this = possibleConstructorReturn(this, (_ref = SmartSubscription.__proto__ || Object.getPrototypeOf(SmartSubscription)).call.apply(_ref, [this].concat(args))), _this), _this.type = 'subscription', _this.vueApolloSpecialKeys = ['variables', 'result', 'error', 'throttle', 'debounce', 'linkedQuery'], _temp), possibleConstructorReturn(_this, _ret);
}
createClass(SmartSubscription, [{
@@ -3035,7 +3080,9 @@ var DollarApollo = function () {
}
}, {
key: 'getClient',
- value: function getClient(options) {
+ value: function getClient() {
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+
if (!options || !options.client) {
if (_typeof(this.client) === 'object') {
return this.client;
@@ -3189,7 +3236,12 @@ var DollarApollo = function () {
}, {
key: 'provider',
get: function get$$1() {
- return this._apolloProvider || this.vm.$root._apolloProvider;
+ return this.vm.$apolloProvider;
+ }
+ }, {
+ key: 'loading',
+ get: function get$$1() {
+ return this.vm.$data.$apolloData && this.vm.$data.$apolloData.loading !== 0;
}
}, {
key: 'skipAllQueries',
@@ -3215,7 +3267,7 @@ var DollarApollo = function () {
return DollarApollo;
}();
-var ApolloProvider$1 = function () {
+var ApolloProvider = function () {
function ApolloProvider(options) {
classCallCheck(this, ApolloProvider);
@@ -3232,16 +3284,23 @@ var ApolloProvider$1 = function () {
}
createClass(ApolloProvider, [{
- key: 'willPrefetchQuery',
- value: function willPrefetchQuery(queryOptions, client) {
+ key: 'provide',
+ value: function provide() {
+ var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '$apolloProvider';
+
+ return defineProperty({}, key, this);
+ }
+ }, {
+ key: 'addQueryToPrefetch',
+ value: function addQueryToPrefetch(queryOptions, client) {
this.prefetchQueries.push({
queryOptions: queryOptions,
client: client
});
}
}, {
- key: 'willPrefetch',
- value: function willPrefetch(component) {
+ key: 'prefetchComponent',
+ value: function prefetchComponent(component, context) {
component = getMergedDefinition(component);
var apolloOptions = component.apollo;
@@ -3253,13 +3312,13 @@ var ApolloProvider$1 = function () {
for (var key in apolloOptions) {
var options = apolloOptions[key];
if (key.charAt(0) !== '$' && (!options.query || (typeof options.ssr === 'undefined' || options.ssr) && typeof options.prefetch !== 'undefined' && options.prefetch)) {
- this.willPrefetchQuery(options, options.client || componentClient);
+ this.addQueryToPrefetch(options, options.client || componentClient);
}
}
}
}, {
- key: 'willPrefetchComponents',
- value: function willPrefetchComponents(definitions) {
+ key: 'prefetchComponents',
+ value: function prefetchComponents(definitions) {
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
@@ -3268,7 +3327,7 @@ var ApolloProvider$1 = function () {
for (var _iterator = definitions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var def = _step.value;
- this.willPrefetch(def);
+ this.prefetchComponent(def);
}
} catch (err) {
_didIteratorError = true;
@@ -3301,11 +3360,23 @@ var ApolloProvider$1 = function () {
}, options);
if (components) {
- this.willPrefetchComponents(components);
+ this.prefetchComponents(components);
}
if (finalOptions.includeGlobal) {
- this.willPrefetchComponents(globalPrefetchs);
+ this.prefetchComponents(globalPrefetchs.filter(function (_ref2) {
+ var component = _ref2.component,
+ contextCallback = _ref2.contextCallback;
+
+ var result = true;
+ if (typeof contextCallback === 'function') {
+ result = !!contextCallback(context);
+ }
+ return result;
+ }).map(function (_ref3) {
+ var component = _ref3.component;
+ return component;
+ }), context);
}
return Promise.all(this.prefetchQueries.map(function (o) {
@@ -3382,7 +3453,7 @@ var ApolloProvider$1 = function () {
var states = {};
for (var key in this.clients) {
var client = this.clients[key];
- var state = defineProperty({}, client.reduxRootKey || 'apollo', client.getInitialState());
+ var state = client.cache.extract();
states['' + finalOptions.exportNamespace + key] = state;
}
return states;
@@ -3405,30 +3476,277 @@ var ApolloProvider$1 = function () {
var globalPrefetchs = [];
function willPrefetch(component) {
- globalPrefetchs.push(component);
+ var contextCallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+
+ globalPrefetchs.push({ component: component, contextCallback: contextCallback });
return component;
}
+// Global access for libraries
+if (typeof window !== 'undefined') {
+ window.vueApolloWillPrefetch = willPrefetch;
+} else if (typeof global !== 'undefined') {
+ global.vueApolloWillPrefetch = willPrefetch;
+}
+
+function isDataFilled(data) {
+ return Object.keys(data).length > 0;
+}
+
+var CApolloQuery = {
+ name: 'ApolloQuery',
+
+ provide: function provide() {
+ return {
+ getDollarApollo: this.getDollarApollo,
+ getApolloQuery: this.getApolloQuery
+ };
+ },
+
+
+ props: {
+ query: {
+ type: Object,
+ required: true
+ },
+
+ variables: {
+ type: Object,
+ default: null
+ },
+
+ fetchPolicy: {
+ type: String,
+ default: 'cache-first'
+ },
+
+ pollInterval: {
+ type: Number,
+ default: 0
+ },
+
+ notifyOnNetworkStatusChange: {
+ type: Boolean,
+ default: false
+ },
+
+ context: {
+ type: Object,
+ default: null
+ },
+
+ skip: {
+ type: Boolean,
+ default: false
+ },
+
+ clientId: {
+ type: String,
+ default: undefined
+ },
+
+ tag: {
+ type: String,
+ default: 'div'
+ }
+ },
+
+ data: function data() {
+ return {
+ result: {
+ data: null,
+ loading: false,
+ networkStatus: 7,
+ error: null
+ }
+ };
+ },
+
+
+ watch: {
+ fetchPolicy: function fetchPolicy(value) {
+ this.$apollo.queries.query.setOptions({
+ fetchPolicy: value
+ });
+ },
+ pollInterval: function pollInterval(value) {
+ this.$apollo.queries.query.setOptions({
+ pollInterval: value
+ });
+ },
+ notifyOnNetworkStatusChange: function notifyOnNetworkStatusChange(value) {
+ this.$apollo.queries.query.setOptions({
+ notifyOnNetworkStatusChange: value
+ });
+ }
+ },
+
+ apollo: {
+ $client: function $client() {
+ return this.clientId;
+ },
+ query: function query() {
+ return {
+ query: function query() {
+ return this.query;
+ },
+ variables: function variables() {
+ return this.variables;
+ },
+
+ fetchPolicy: this.fetchPolicy,
+ pollInterval: this.pollInterval,
+ notifyOnNetworkStatusChange: this.notifyOnNetworkStatusChange,
+ context: function context() {
+ return this.context;
+ },
+ skip: function skip() {
+ return this.skip;
+ },
+
+ manual: true,
+ result: function result(_result) {
+ var _result2 = _result,
+ errors = _result2.errors,
+ loading = _result2.loading,
+ networkStatus = _result2.networkStatus;
+ var _result3 = _result,
+ error = _result3.error;
+
+ _result = Object.assign({}, _result);
+
+ if (errors && errors.length) {
+ error = new Error('Apollo errors occured (' + errors.length + ')');
+ error.graphQLErrors = errors;
+ }
+
+ var data = {};
+
+ if (loading) {
+ Object.assign(data, this.$_previousData, _result.data);
+ } else if (error) {
+ Object.assign(data, this.$apollo.queries.query.observer.getLastResult() || {}, _result.data);
+ } else {
+ data = _result.data;
+ this.$_previousData = _result.data;
+ }
+
+ this.result = {
+ data: isDataFilled(data) ? data : undefined,
+ loading: loading,
+ error: error,
+ networkStatus: networkStatus
+ };
+ },
+ error: function error(_error) {
+ this.result.loading = false;
+ this.result.error = _error;
+ console.log(this.$apollo.queries.query.observer.currentResult());
+ }
+ };
+ }
+ },
+
+ methods: {
+ getDollarApollo: function getDollarApollo() {
+ return this.$apollo;
+ },
+ getApolloQuery: function getApolloQuery() {
+ return this.$apollo.queries.query;
+ }
+ },
+
+ render: function render(h) {
+ var result = this.$scopedSlots.default({
+ result: this.result,
+ query: this.$apollo.queries.query
+ });
+ if (Array.isArray(result)) {
+ result.concat(this.$slots.default);
+ } else {
+ result = [result].concat(this.$slots.default);
+ }
+ return h(this.tag, result);
+ }
+};
+
+var uid = 0;
+
+var CApolloSubscribeToMore = {
+ name: 'ApolloSubscribeToMore',
+
+ inject: ['getDollarApollo', 'getApolloQuery'],
+
+ props: {
+ document: {
+ type: Object,
+ required: true
+ },
+
+ variables: {
+ type: Object,
+ default: null
+ },
+
+ updateQuery: {
+ type: Function,
+ default: null
+ }
+ },
+
+ watch: {
+ document: 'refresh',
+ variables: 'refresh'
+ },
+
+ created: function created() {
+ this.$_key = 'sub_component_' + uid++;
+ },
+ mounted: function mounted() {
+ this.refresh();
+ },
+ beforeDestroy: function beforeDestroy() {
+ this.destroy();
+ },
+
+
+ methods: {
+ destroy: function destroy() {
+ if (this.$_sub) {
+ this.$_sub.destroy();
+ }
+ },
+ refresh: function refresh() {
+ this.destroy();
+
+ this.$_sub = this.getDollarApollo().addSmartSubscription(this.$_key, {
+ document: this.document,
+ variables: this.variables,
+ updateQuery: this.updateQuery,
+ linkedQuery: this.getApolloQuery()
+ });
+
+ console.log(this.$_key, this.$_sub);
+ }
+ },
+
+ render: function render(h) {
+ return null;
+ }
+};
+
var keywords = ['$subscribe'];
-var prepare = function prepare() {
- var apolloProvider = void 0;
- if (this.$options.apolloProvider) {
- apolloProvider = this._apolloProvider = this.$options.apolloProvider;
- } else {
- apolloProvider = this.$root._apolloProvider;
- }
+var launch = function launch() {
+ var apolloProvider = this.$apolloProvider;
- if (this._apolloPrepared) return;
- this._apolloPrepared = true;
+ if (this._apolloLaunched || !apolloProvider) return;
+ this._apolloLaunched = true;
// Prepare properties
var apollo = this.$options.apollo;
if (apollo) {
- this._apolloQueries = {};
- this._apolloInitData = {};
-
if (!apollo.$init) {
apollo.$init = true;
@@ -3438,22 +3756,6 @@ var prepare = function prepare() {
}
}
- // watchQuery
- for (var key in apollo) {
- if (key.charAt(0) !== '$') {
- this._apolloInitData[key] = null;
- this._apolloQueries[key] = apollo[key];
- }
- }
- }
-};
-
-var launch = function launch() {
- if (this._apolloLaunched) return;
- this._apolloLaunched = true;
-
- var apollo = this.$options.apollo;
- if (apollo) {
defineReactiveSetter(this.$apollo, 'skipAll', apollo.$skipAll);
defineReactiveSetter(this.$apollo, 'skipAllQueries', apollo.$skipAllQueries);
defineReactiveSetter(this.$apollo, 'skipAllSubscriptions', apollo.$skipAllSubscriptions);
@@ -3461,16 +3763,14 @@ var launch = function launch() {
defineReactiveSetter(this.$apollo, 'loadingKey', apollo.$loadingKey);
defineReactiveSetter(this.$apollo, 'error', apollo.$error);
defineReactiveSetter(this.$apollo, 'watchLoading', apollo.$watchLoading);
- }
- if (this._apolloQueries) {
// watchQuery
- for (var key in this._apolloQueries) {
- this.$apollo.addSmartQuery(key, this._apolloQueries[key]);
+ for (var key in apollo) {
+ if (key.charAt(0) !== '$') {
+ this.$apollo.addSmartQuery(key, apollo[key]);
+ }
}
- }
- if (apollo) {
if (apollo.subscribe) {
Globals.Vue.util.warn('vue-apollo -> `subscribe` option is deprecated. Use the `$subscribe` option instead.');
}
@@ -3519,7 +3819,7 @@ function install(Vue, options) {
// Lazy creation
Object.defineProperty(Vue.prototype, '$apollo', {
- get: function get() {
+ get: function get$$1() {
if (!this._apollo) {
this._apollo = new DollarApollo(this);
}
@@ -3527,18 +3827,32 @@ function install(Vue, options) {
}
});
- Vue.mixin({
+ var vueVersion = Vue.version.substr(0, Vue.version.indexOf('.'));
- // Vue 1.x
- init: prepare,
- // Vue 2.x
- beforeCreate: prepare,
-
- // Better devtools support
- data: function data() {
- return this._apolloInitData || {};
+ Vue.mixin(_extends({}, vueVersion === '1' ? {
+ init: function init() {
+ var apolloProvider = void 0;
+ if (this.$options.apolloProvider) {
+ apolloProvider = this._apolloProvider = this.$options.apolloProvider;
+ } else {
+ apolloProvider = this.$root._apolloProvider;
+ }
+ this.$apolloProvider = apolloProvider;
+ }
+ } : {}, vueVersion === '2' ? {
+ inject: {
+ $apolloProvider: { default: null }
},
+ data: function data() {
+ return this.$options.apollo ? {
+ '$apolloData': {
+ queries: {},
+ loading: 0
+ }
+ } : {};
+ }
+ } : {}, {
created: launch,
@@ -3549,12 +3863,26 @@ function install(Vue, options) {
}
}
- });
+ }));
+
+ if (vueVersion === '2') {
+ Vue.component('apollo-query', CApolloQuery);
+ Vue.component('ApolloQuery', CApolloQuery);
+ Vue.component('apollo-subscribe-to-more', CApolloSubscribeToMore);
+ Vue.component('ApolloSubscribeToMore', CApolloSubscribeToMore);
+ }
}
-ApolloProvider$1.install = install;
+ApolloProvider.install = install;
-var ApolloProvider$$1 = ApolloProvider$1;
+// eslint-disable-next-line no-undef
+ApolloProvider.version = "3.0.0-beta.1";
+
+// Apollo provider
+var ApolloProvider$1 = ApolloProvider;
+// Components
+var ApolloQuery = CApolloQuery;
+var ApolloSubscribeToMore = CApolloSubscribeToMore;
// Auto-install
var GlobalVue = null;
@@ -3564,12 +3892,14 @@ if (typeof window !== 'undefined') {
GlobalVue = global.Vue;
}
if (GlobalVue) {
- GlobalVue.use(ApolloProvider$1);
+ GlobalVue.use(ApolloProvider);
}
exports.install = install;
-exports.ApolloProvider = ApolloProvider$$1;
-exports['default'] = ApolloProvider$1;
+exports.ApolloProvider = ApolloProvider$1;
+exports.ApolloQuery = ApolloQuery;
+exports.ApolloSubscribeToMore = ApolloSubscribeToMore;
+exports.default = ApolloProvider;
exports.willPrefetch = willPrefetch;
Object.defineProperty(exports, '__esModule', { value: true });
diff --git a/package.json b/package.json
index 120ec87..291e4dd 100644
--- a/package.json
+++ b/package.json
@@ -1,20 +1,21 @@
{
"name": "vue-apollo",
- "version": "2.1.0-rc.8",
+ "version": "3.0.0-beta.1",
"description": "Vue apollo integration",
"main": "dist/vue-apollo.umd.js",
"module": "dist/vue-apollo.esm.js",
"unpkg": "dist/vue-apollo.min.js",
+ "typings": "types/index.d.ts",
"scripts": {
"build": "npm run build:browser && npm run build:es && npm run build:umd",
- "build:browser": "rollup --config rollup.config.browser.js",
- "build:es": "rollup --config rollup.config.es.js",
- "build:umd": "rollup --config rollup.config.umd.js",
- "prepublish": "npm run build",
- "dev": "npm-watch"
- },
- "watch": {
- "build": "src/*.js"
+ "build:browser": "rollup --config build/rollup.config.browser.js",
+ "build:es": "rollup --config build/rollup.config.es.js",
+ "build:umd": "rollup --config build/rollup.config.umd.js",
+ "prepublishOnly": "npm run test && npm run build",
+ "dev": "nodemon --exec 'npm run build' --watch src",
+ "test": "npm run test:eslint && npm run test:types",
+ "test:eslint": "eslint --ext .js src",
+ "test:types": "tsc -p types/test"
},
"repository": {
"type": "git",
@@ -32,7 +33,7 @@
},
"homepage": "https://github.com/Akryum/vue-apollo#readme",
"peerDependencies": {
- "apollo-client": "^1.0.1"
+ "apollo-client": "^2.0.0"
},
"dependencies": {
"lodash.debounce": "^4.0.8",
@@ -40,22 +41,34 @@
"lodash.throttle": "^4.1.1"
},
"devDependencies": {
- "babel-cli": "^6.14.0",
- "babel-eslint": "^7.1.1",
+ "@types/graphql": "^0.12.3",
+ "apollo-cache-inmemory": "^1.1.1",
+ "apollo-client": "^2.0.3",
+ "apollo-link": "^1.0.3",
+ "apollo-link-http": "^1.2.0",
+ "babel-core": "^6.26.0",
+ "babel-eslint": "^8.2.1",
"babel-plugin-external-helpers": "^6.22.0",
- "babel-preset-es2015": "^6.24.1",
+ "babel-preset-env": "^1.6.1",
"babel-preset-stage-0": "^6.24.1",
- "eslint": "^3.12.1",
- "eslint-config-standard": "^7.1.0",
+ "eslint": "^4.10.0",
+ "eslint-config-standard": "^10.2.1",
+ "eslint-plugin-import": "^2.8.0",
+ "eslint-plugin-node": "^6.0.0",
"eslint-plugin-promise": "^3.4.0",
- "eslint-plugin-standard": "^2.0.1",
- "npm-watch": "^0.1.6",
+ "eslint-plugin-standard": "^3.0.1",
+ "graphql": "^0.12.3",
+ "graphql-tag": "^2.5.0",
+ "nodemon": "^1.14.12",
"rimraf": "^2.6.1",
- "rollup": "^0.41.6",
- "rollup-plugin-babel": "^2.7.1",
- "rollup-plugin-commonjs": "^8.0.2",
+ "rollup": "^0.55.3",
+ "rollup-plugin-babel": "^3.0.2",
+ "rollup-plugin-commonjs": "^8.2.6",
"rollup-plugin-node-resolve": "^3.0.0",
- "rollup-plugin-uglify": "^1.0.2",
- "uglify-js-harmony": "^2.7.7"
+ "rollup-plugin-replace": "^2.0.0",
+ "rollup-plugin-uglify": "^3.0.0",
+ "typescript": "^2.6.2",
+ "uglify-es": "^3.1.6",
+ "vue": "^2.5.9"
}
}
diff --git a/rollup.config.base.js b/rollup.config.base.js
deleted file mode 100644
index 3d4d36f..0000000
--- a/rollup.config.base.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import commonjs from 'rollup-plugin-commonjs'
-import resolve from 'rollup-plugin-node-resolve'
-import babel from 'rollup-plugin-babel'
-
-export default {
- entry: 'src/index.js',
- exports: 'named',
- moduleName: 'vue-apollo',
- plugins: [
- resolve({
- jsnext: true,
- main: true,
- browser: true,
- }),
- commonjs(),
- babel({
- exclude: 'node_modules/**',
- plugins: [
- 'external-helpers',
- ],
- }),
- ],
-}
diff --git a/src/apollo-provider.js b/src/apollo-provider.js
index 7f01887..c74dd7f 100644
--- a/src/apollo-provider.js
+++ b/src/apollo-provider.js
@@ -16,14 +16,20 @@ export class ApolloProvider {
this.prefetchQueries = []
}
- willPrefetchQuery (queryOptions, client) {
+ provide (key = '$apolloProvider') {
+ return {
+ [key]: this,
+ }
+ }
+
+ addQueryToPrefetch (queryOptions, client) {
this.prefetchQueries.push({
queryOptions,
client,
})
}
- willPrefetch (component) {
+ prefetchComponent (component, context) {
component = getMergedDefinition(component)
const apolloOptions = component.apollo
@@ -42,14 +48,14 @@ export class ApolloProvider {
)
)
) {
- this.willPrefetchQuery(options, options.client || componentClient)
+ this.addQueryToPrefetch(options, options.client || componentClient)
}
}
}
- willPrefetchComponents (definitions) {
+ prefetchComponents (definitions) {
for (const def of definitions) {
- this.willPrefetch(def)
+ this.prefetchComponent(def)
}
}
@@ -65,11 +71,21 @@ export class ApolloProvider {
}, options)
if (components) {
- this.willPrefetchComponents(components)
+ this.prefetchComponents(components)
}
if (finalOptions.includeGlobal) {
- this.willPrefetchComponents(globalPrefetchs)
+ this.prefetchComponents(globalPrefetchs.filter(
+ ({ component, contextCallback }) => {
+ let result = true
+ if (typeof contextCallback === 'function') {
+ result = !!contextCallback(context)
+ }
+ return result
+ }
+ ).map(
+ ({ component }) => component
+ ), context)
}
return Promise.all(this.prefetchQueries.map(
@@ -147,7 +163,7 @@ export class ApolloProvider {
const states = {}
for (const key in this.clients) {
const client = this.clients[key]
- const state = { [client.reduxRootKey || 'apollo']: client.getInitialState() }
+ const state = client.cache.extract()
states[`${finalOptions.exportNamespace}${key}`] = state
}
return states
@@ -166,7 +182,14 @@ export class ApolloProvider {
const globalPrefetchs = []
-export function willPrefetch (component) {
- globalPrefetchs.push(component)
+export function willPrefetch (component, contextCallback = null) {
+ globalPrefetchs.push({ component, contextCallback })
return component
}
+
+// Global access for libraries
+if (typeof window !== 'undefined') {
+ window.vueApolloWillPrefetch = willPrefetch
+} else if (typeof global !== 'undefined') {
+ global.vueApolloWillPrefetch = willPrefetch
+}
diff --git a/src/components/ApolloQuery.js b/src/components/ApolloQuery.js
new file mode 100644
index 0000000..75651c9
--- /dev/null
+++ b/src/components/ApolloQuery.js
@@ -0,0 +1,167 @@
+function isDataFilled (data) {
+ return Object.keys(data).length > 0
+}
+
+export default {
+ name: 'ApolloQuery',
+
+ provide () {
+ return {
+ getDollarApollo: this.getDollarApollo,
+ getApolloQuery: this.getApolloQuery,
+ }
+ },
+
+ props: {
+ query: {
+ type: Object,
+ required: true,
+ },
+
+ variables: {
+ type: Object,
+ default: null,
+ },
+
+ fetchPolicy: {
+ type: String,
+ default: 'cache-first',
+ },
+
+ pollInterval: {
+ type: Number,
+ default: 0,
+ },
+
+ notifyOnNetworkStatusChange: {
+ type: Boolean,
+ default: false,
+ },
+
+ context: {
+ type: Object,
+ default: null,
+ },
+
+ skip: {
+ type: Boolean,
+ default: false,
+ },
+
+ clientId: {
+ type: String,
+ default: undefined,
+ },
+
+ tag: {
+ type: String,
+ default: 'div',
+ },
+ },
+
+ data () {
+ return {
+ result: {
+ data: null,
+ loading: false,
+ networkStatus: 7,
+ error: null,
+ },
+ }
+ },
+
+ watch: {
+ fetchPolicy (value) {
+ this.$apollo.queries.query.setOptions({
+ fetchPolicy: value,
+ })
+ },
+
+ pollInterval (value) {
+ this.$apollo.queries.query.setOptions({
+ pollInterval: value,
+ })
+ },
+
+ notifyOnNetworkStatusChange (value) {
+ this.$apollo.queries.query.setOptions({
+ notifyOnNetworkStatusChange: value,
+ })
+ },
+ },
+
+ apollo: {
+ $client () {
+ return this.clientId
+ },
+
+ query () {
+ return {
+ query () { return this.query },
+ variables () { return this.variables },
+ fetchPolicy: this.fetchPolicy,
+ pollInterval: this.pollInterval,
+ notifyOnNetworkStatusChange: this.notifyOnNetworkStatusChange,
+ context () { return this.context },
+ skip () { return this.skip },
+ manual: true,
+ result (result) {
+ const { errors, loading, networkStatus } = result
+ let { error } = result
+ result = Object.assign({}, result)
+
+ if (errors && errors.length) {
+ error = new Error(`Apollo errors occured (${errors.length})`)
+ error.graphQLErrors = errors
+ }
+
+ let data = {}
+
+ if (loading) {
+ Object.assign(data, this.$_previousData, result.data)
+ } else if (error) {
+ Object.assign(data, this.$apollo.queries.query.observer.getLastResult() || {}, result.data)
+ } else {
+ data = result.data
+ this.$_previousData = result.data
+ }
+
+ this.result = {
+ data: isDataFilled(data) ? data : undefined,
+ loading,
+ error,
+ networkStatus,
+ }
+ },
+ error (error) {
+ this.result.loading = false
+ this.result.error = error
+ console.log(this.$apollo.queries.query.observer.currentResult())
+ },
+ }
+ },
+ },
+
+ methods: {
+ getDollarApollo () {
+ return this.$apollo
+ },
+
+ getApolloQuery () {
+ return this.$apollo.queries.query
+ },
+ },
+
+ render (h) {
+ let result = this.$scopedSlots.default({
+ result: this.result,
+ query: this.$apollo.queries.query,
+ })
+ if (Array.isArray(result)) {
+ result.concat(this.$slots.default)
+ } else {
+ result = [result].concat(this.$slots.default)
+ }
+ return h(this.tag, result)
+ },
+}
diff --git a/src/components/ApolloSubscribeToMore.js b/src/components/ApolloSubscribeToMore.js
new file mode 100644
index 0000000..05b9431
--- /dev/null
+++ b/src/components/ApolloSubscribeToMore.js
@@ -0,0 +1,69 @@
+let uid = 0
+
+export default {
+ name: 'ApolloSubscribeToMore',
+
+ inject: [
+ 'getDollarApollo',
+ 'getApolloQuery',
+ ],
+
+ props: {
+ document: {
+ type: Object,
+ required: true,
+ },
+
+ variables: {
+ type: Object,
+ default: null,
+ },
+
+ updateQuery: {
+ type: Function,
+ default: null,
+ },
+ },
+
+ watch: {
+ document: 'refresh',
+ variables: 'refresh',
+ },
+
+ created () {
+ this.$_key = `sub_component_${uid++}`
+ },
+
+ mounted () {
+ this.refresh()
+ },
+
+ beforeDestroy () {
+ this.destroy()
+ },
+
+ methods: {
+ destroy () {
+ if (this.$_sub) {
+ this.$_sub.destroy()
+ }
+ },
+
+ refresh () {
+ this.destroy()
+
+ this.$_sub = this.getDollarApollo().addSmartSubscription(this.$_key, {
+ document: this.document,
+ variables: this.variables,
+ updateQuery: this.updateQuery,
+ linkedQuery: this.getApolloQuery(),
+ })
+
+ console.log(this.$_key, this.$_sub)
+ },
+ },
+
+ render (h) {
+ return null
+ },
+}
diff --git a/src/dollar-apollo.js b/src/dollar-apollo.js
index 67e265e..3866c27 100644
--- a/src/dollar-apollo.js
+++ b/src/dollar-apollo.js
@@ -1,4 +1,5 @@
-import { SmartQuery, SmartSubscription } from './smart-apollo'
+import SmartQuery from './smart-query'
+import SmartSubscription from './smart-subscription'
import { reapply } from './utils'
export class DollarApollo {
@@ -15,14 +16,14 @@ export class DollarApollo {
}
get provider () {
- return this._apolloProvider || this.vm.$root._apolloProvider
+ return this.vm.$apolloProvider
}
query (options) {
return this.getClient(options).query(options)
}
- getClient (options) {
+ getClient (options = null) {
if (!options || !options.client) {
if (typeof this.client === 'object') {
return this.client
@@ -75,6 +76,10 @@ export class DollarApollo {
}
}
+ get loading () {
+ return this.vm.$data.$apolloData && this.vm.$data.$apolloData.loading !== 0
+ }
+
addSmartQuery (key, options) {
options = reapply(options, this.vm)
diff --git a/src/index.js b/src/index.js
index 6bf300d..9d168c7 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,30 +1,24 @@
import omit from 'lodash.omit'
import { DollarApollo } from './dollar-apollo'
import { ApolloProvider as apolloProvider } from './apollo-provider'
+import CApolloQuery from './components/ApolloQuery'
+import CApolloSubscribeToMore from './components/ApolloSubscribeToMore'
import { Globals } from './utils'
const keywords = [
'$subscribe',
]
-const prepare = function prepare () {
- let apolloProvider
- if (this.$options.apolloProvider) {
- apolloProvider = this._apolloProvider = this.$options.apolloProvider
- } else {
- apolloProvider = this.$root._apolloProvider
- }
+const launch = function launch () {
+ const apolloProvider = this.$apolloProvider
- if (this._apolloPrepared) return
- this._apolloPrepared = true
+ if (this._apolloLaunched || !apolloProvider) return
+ this._apolloLaunched = true
// Prepare properties
let apollo = this.$options.apollo
if (apollo) {
- this._apolloQueries = {}
- this._apolloInitData = {}
-
if (!apollo.$init) {
apollo.$init = true
@@ -34,22 +28,6 @@ const prepare = function prepare () {
}
}
- // watchQuery
- for (let key in apollo) {
- if (key.charAt(0) !== '$') {
- this._apolloInitData[key] = null
- this._apolloQueries[key] = apollo[key]
- }
- }
- }
-}
-
-const launch = function launch () {
- if (this._apolloLaunched) return
- this._apolloLaunched = true
-
- let apollo = this.$options.apollo
- if (apollo) {
defineReactiveSetter(this.$apollo, 'skipAll', apollo.$skipAll)
defineReactiveSetter(this.$apollo, 'skipAllQueries', apollo.$skipAllQueries)
defineReactiveSetter(this.$apollo, 'skipAllSubscriptions', apollo.$skipAllSubscriptions)
@@ -57,16 +35,14 @@ const launch = function launch () {
defineReactiveSetter(this.$apollo, 'loadingKey', apollo.$loadingKey)
defineReactiveSetter(this.$apollo, 'error', apollo.$error)
defineReactiveSetter(this.$apollo, 'watchLoading', apollo.$watchLoading)
- }
- if (this._apolloQueries) {
// watchQuery
- for (let key in this._apolloQueries) {
- this.$apollo.addSmartQuery(key, this._apolloQueries[key])
+ for (let key in apollo) {
+ if (key.charAt(0) !== '$') {
+ this.$apollo.addSmartQuery(key, apollo[key])
+ }
}
- }
- if (apollo) {
if (apollo.subscribe) {
Globals.Vue.util.warn('vue-apollo -> `subscribe` option is deprecated. Use the `$subscribe` option instead.')
}
@@ -123,17 +99,35 @@ export function install (Vue, options) {
},
})
+ const vueVersion = Vue.version.substr(0, Vue.version.indexOf('.'))
+
Vue.mixin({
+ ...vueVersion === '1' ? {
+ init () {
+ let apolloProvider
+ if (this.$options.apolloProvider) {
+ apolloProvider = this._apolloProvider = this.$options.apolloProvider
+ } else {
+ apolloProvider = this.$root._apolloProvider
+ }
+ this.$apolloProvider = apolloProvider
+ },
+ } : {},
- // Vue 1.x
- init: prepare,
- // Vue 2.x
- beforeCreate: prepare,
+ ...vueVersion === '2' ? {
+ inject: {
+ $apolloProvider: { default: null },
+ },
- // Better devtools support
- data () {
- return this._apolloInitData || {}
- },
+ data () {
+ return this.$options.apollo ? {
+ '$apolloData': {
+ queries: {},
+ loading: 0,
+ },
+ } : {}
+ },
+ } : {},
created: launch,
@@ -145,14 +139,28 @@ export function install (Vue, options) {
},
})
+
+ if (vueVersion === '2') {
+ Vue.component('apollo-query', CApolloQuery)
+ Vue.component('ApolloQuery', CApolloQuery)
+ Vue.component('apollo-subscribe-to-more', CApolloSubscribeToMore)
+ Vue.component('ApolloSubscribeToMore', CApolloSubscribeToMore)
+ }
}
apolloProvider.install = install
-export const ApolloProvider = apolloProvider
+// eslint-disable-next-line no-undef
+apolloProvider.version = VERSION
+// Apollo provider
+export const ApolloProvider = apolloProvider
export { willPrefetch } from './apollo-provider'
+// Components
+export const ApolloQuery = CApolloQuery
+export const ApolloSubscribeToMore = CApolloSubscribeToMore
+
// Auto-install
let GlobalVue = null
if (typeof window !== 'undefined') {
diff --git a/src/smart-apollo.js b/src/smart-apollo.js
index 16aade0..e493fea 100644
--- a/src/smart-apollo.js
+++ b/src/smart-apollo.js
@@ -1,8 +1,7 @@
import omit from 'lodash.omit'
import { throttle, debounce } from './utils'
-import { VUE_APOLLO_QUERY_KEYWORDS } from './consts'
-class SmartApollo {
+export default class SmartApollo {
type = null
vueApolloSpecialKeys = []
@@ -12,6 +11,7 @@ class SmartApollo {
this.options = Object.assign({}, options)
this._skip = false
this._watchers = []
+ this._destroyed = false
// Query callback
if (typeof this.options.query === 'function') {
@@ -32,6 +32,16 @@ class SmartApollo {
}))
}
+ // Apollo context
+ if (typeof this.options.context === 'function') {
+ const cb = this.options.context.bind(this.vm)
+ this.options.context = cb()
+ this._watchers.push(this.vm.$watch(cb, context => {
+ this.options.context = context
+ this.refresh()
+ }))
+ }
+
if (this.vm.$isServer) {
this.options.fetchPolicy = 'cache-first'
}
@@ -146,239 +156,12 @@ class SmartApollo {
}
destroy () {
+ if (this._destroyed) return
+
+ this._destroyed = true
this.stop()
for (const unwatch of this._watchers) {
unwatch()
}
}
}
-
-export class SmartQuery extends SmartApollo {
- type = 'query'
- vueApolloSpecialKeys = VUE_APOLLO_QUERY_KEYWORDS
- loading = false
-
- constructor (vm, key, options, autostart = true) {
- // Simple query
- if (!options.query) {
- const query = options
- options = {
- query,
- }
- }
-
- super(vm, key, options, autostart)
- }
-
- stop () {
- super.stop()
-
- if (this.observer) {
- this.observer.stopPolling()
- this.observer = null
- }
- }
-
- executeApollo (variables) {
- if (this.observer) {
- // Update variables
- // Don't use setVariables directly or it will ignore cache
- this.observer.setOptions(this.generateApolloOptions(variables))
- } else {
- if (this.sub) {
- this.sub.unsubscribe()
- }
-
- // Create observer
- this.observer = this.vm.$apollo.watchQuery(this.generateApolloOptions(variables))
-
- // Create subscription
- this.sub = this.observer.subscribe({
- next: this.nextResult.bind(this),
- error: this.catchError.bind(this),
- })
- }
-
- this.maySetLoading()
-
- super.executeApollo(variables)
- }
-
- maySetLoading (force = false) {
- const currentResult = this.observer.currentResult()
- if (force || currentResult.loading) {
- if (!this.loading) {
- this.applyLoadingModifier(1)
- }
- this.loading = true
- }
- }
-
- nextResult (result) {
- const { data, loading } = result
-
- if (!loading) {
- this.loadingDone()
- }
-
- const hasResultCallback = typeof this.options.result === 'function'
-
- if (typeof data === 'undefined') {
- // No result
- } else if (typeof this.options.update === 'function') {
- this.vm[this.key] = this.options.update.call(this.vm, data)
- } else if (data[this.key] === undefined) {
- console.error(`Missing ${this.key} attribute on result`, data)
- } else if (!this.options.manual) {
- this.vm[this.key] = data[this.key]
- } else if (!hasResultCallback) {
- console.error(`${this.key} query must have a 'result' hook in manual mode`)
- }
-
- if (hasResultCallback) {
- this.options.result.call(this.vm, result)
- }
- }
-
- catchError (error) {
- super.catchError(error)
- this.loadingDone()
- }
-
- get loadingKey () {
- return this.options.loadingKey || this.vm.$apollo.loadingKey
- }
-
- watchLoading (...args) {
- this.options.watchLoading && this.options.watchLoading.call(this.vm, ...args)
- this.vm.$apollo.watchLoading && this.vm.$apollo.watchLoading.call(this.vm, ...args)
- this.vm.$apollo.provider.watchLoading && this.vm.$apollo.provider.watchLoading.call(this.vm, ...args)
- }
-
- applyLoadingModifier (value) {
- const loadingKey = this.loadingKey
- if (loadingKey && typeof this.vm[loadingKey] === 'number') {
- this.vm[loadingKey] += value
- }
-
- this.watchLoading(value === 1, value)
- }
-
- loadingDone () {
- if (this.loading) {
- this.applyLoadingModifier(-1)
- }
- this.loading = false
- }
-
- fetchMore (...args) {
- if (this.observer) {
- this.maySetLoading(true)
- return this.observer.fetchMore(...args).then(result => {
- if (!result.loading) {
- this.loadingDone()
- }
- return result
- })
- }
- }
-
- subscribeToMore (...args) {
- if (this.observer) {
- return {
- unsubscribe: this.observer.subscribeToMore(...args),
- }
- }
- }
-
- refetch (variables) {
- variables && (this.options.variables = variables)
- if (this.observer) {
- const result = this.observer.refetch(variables).then((result) => {
- if (!result.loading) {
- this.loadingDone()
- }
- return result
- })
- this.maySetLoading()
- return result
- }
- }
-
- setVariables (variables, tryFetch) {
- this.options.variables = variables
- if (this.observer) {
- const result = this.observer.setVariables(variables, tryFetch)
- this.maySetLoading()
- return result
- }
- }
-
- setOptions (options) {
- Object.assign(this.options, options)
- if (this.observer) {
- const result = this.observer.setOptions(options)
- this.maySetLoading()
- return result
- }
- }
-
- startPolling (...args) {
- if (this.observer) {
- return this.observer.startPolling(...args)
- }
- }
-
- stopPolling (...args) {
- if (this.observer) {
- return this.observer.stopPolling(...args)
- }
- }
-}
-
-export class SmartSubscription extends SmartApollo {
- type = 'subscription'
- vueApolloSpecialKeys = [
- 'variables',
- 'result',
- 'error',
- 'throttle',
- 'debounce',
- 'linkedQuery',
- ]
-
- executeApollo (variables) {
- const variablesJson = JSON.stringify(variables)
- if (this.sub) {
- // do nothing if subscription is already running using exactly the same variables
- if (variablesJson === this.previousVariablesJson) {
- return
- }
- this.sub.unsubscribe()
- }
- this.previousVariablesJson = variablesJson
-
- const apolloOptions = this.generateApolloOptions(variables)
-
- if (this.options.linkedQuery) {
- this.sub = this.options.linkedQuery.subscribeToMore(apolloOptions)
- } else {
- // Create observer
- this.observer = this.vm.$apollo.subscribe(apolloOptions)
-
- // Create subscription
- this.sub = this.observer.subscribe({
- next: this.nextResult.bind(this),
- error: this.catchError.bind(this),
- })
- }
-
- super.executeApollo(variables)
- }
-
- nextResult (data) {
- if (typeof this.options.result === 'function') {
- this.options.result.call(this.vm, data)
- }
- }
-}
diff --git a/src/smart-query.js b/src/smart-query.js
new file mode 100644
index 0000000..b96ef5d
--- /dev/null
+++ b/src/smart-query.js
@@ -0,0 +1,215 @@
+import SmartApollo from './smart-apollo'
+import { VUE_APOLLO_QUERY_KEYWORDS } from './consts'
+
+export default class SmartQuery extends SmartApollo {
+ type = 'query'
+ vueApolloSpecialKeys = VUE_APOLLO_QUERY_KEYWORDS
+ _loading = false
+
+ constructor (vm, key, options, autostart = true) {
+ // Simple query
+ if (!options.query) {
+ const query = options
+ options = {
+ query,
+ }
+ }
+
+ // Add reactive data related to the query
+ if (vm.$data.$apolloData && !vm.$data.$apolloData.queries[key]) {
+ vm.$set(vm.$data.$apolloData.queries, key, {
+ loading: false,
+ })
+ }
+
+ super(vm, key, options, autostart)
+ }
+
+ get client () {
+ return this.vm.$apollo.getClient(this.options)
+ }
+
+ get loading () {
+ return this.vm.$data.$apolloData ? this.vm.$data.$apolloData.queries[this.key].loading : this._loading
+ }
+
+ set loading (value) {
+ if (this._loading !== value) {
+ this._loading = value
+ if (this.vm.$data.$apolloData) {
+ this.vm.$data.$apolloData.queries[this.key].loading = value
+ this.vm.$data.$apolloData.loading += value ? 1 : -1
+ }
+ }
+ }
+
+ stop () {
+ super.stop()
+
+ if (this.observer) {
+ this.observer.stopPolling()
+ this.observer = null
+ }
+ }
+
+ executeApollo (variables) {
+ if (this.observer) {
+ // Update variables
+ // Don't use setVariables directly or it will ignore cache
+ this.observer.setOptions(this.generateApolloOptions(variables))
+ } else {
+ if (this.sub) {
+ this.sub.unsubscribe()
+ }
+
+ // Create observer
+ this.observer = this.vm.$apollo.watchQuery(this.generateApolloOptions(variables))
+
+ // Create subscription
+ this.sub = this.observer.subscribe({
+ next: this.nextResult.bind(this),
+ error: this.catchError.bind(this),
+ })
+ }
+
+ const currentResult = this.maySetLoading()
+
+ if (!currentResult.loading) {
+ this.nextResult(currentResult)
+ }
+
+ super.executeApollo(variables)
+ }
+
+ maySetLoading (force = false) {
+ const currentResult = this.observer.currentResult()
+ if (force || currentResult.loading) {
+ if (!this.loading) {
+ this.applyLoadingModifier(1)
+ }
+ this.loading = true
+ }
+ return currentResult
+ }
+
+ nextResult (result) {
+ const { data, loading } = result
+
+ if (!loading) {
+ this.loadingDone()
+ }
+
+ const hasResultCallback = typeof this.options.result === 'function'
+
+ if (typeof data === 'undefined') {
+ // No result
+ } else if (typeof this.options.update === 'function') {
+ this.vm[this.key] = this.options.update.call(this.vm, data)
+ } else if (data[this.key] === undefined && !this.options.manual) {
+ console.error(`Missing ${this.key} attribute on result`, data)
+ } else if (!this.options.manual) {
+ this.vm[this.key] = data[this.key]
+ } else if (!hasResultCallback) {
+ console.error(`${this.key} query must have a 'result' hook in manual mode`)
+ }
+
+ if (hasResultCallback) {
+ this.options.result.call(this.vm, result)
+ }
+ }
+
+ catchError (error) {
+ super.catchError(error)
+ this.loadingDone()
+ }
+
+ get loadingKey () {
+ return this.options.loadingKey || this.vm.$apollo.loadingKey
+ }
+
+ watchLoading (...args) {
+ this.options.watchLoading && this.options.watchLoading.call(this.vm, ...args)
+ this.vm.$apollo.watchLoading && this.vm.$apollo.watchLoading.call(this.vm, ...args)
+ this.vm.$apollo.provider.watchLoading && this.vm.$apollo.provider.watchLoading.call(this.vm, ...args)
+ }
+
+ applyLoadingModifier (value) {
+ const loadingKey = this.loadingKey
+ if (loadingKey && typeof this.vm[loadingKey] === 'number') {
+ this.vm[loadingKey] += value
+ }
+
+ this.watchLoading(value === 1, value)
+ }
+
+ loadingDone () {
+ if (this.loading) {
+ this.applyLoadingModifier(-1)
+ }
+ this.loading = false
+ }
+
+ fetchMore (...args) {
+ if (this.observer) {
+ this.maySetLoading(true)
+ return this.observer.fetchMore(...args).then(result => {
+ if (!result.loading) {
+ this.loadingDone()
+ }
+ return result
+ })
+ }
+ }
+
+ subscribeToMore (...args) {
+ if (this.observer) {
+ return {
+ unsubscribe: this.observer.subscribeToMore(...args),
+ }
+ }
+ }
+
+ refetch (variables) {
+ variables && (this.options.variables = variables)
+ if (this.observer) {
+ const result = this.observer.refetch(variables).then((result) => {
+ if (!result.loading) {
+ this.loadingDone()
+ }
+ return result
+ })
+ this.maySetLoading()
+ return result
+ }
+ }
+
+ setVariables (variables, tryFetch) {
+ this.options.variables = variables
+ if (this.observer) {
+ const result = this.observer.setVariables(variables, tryFetch)
+ this.maySetLoading()
+ return result
+ }
+ }
+
+ setOptions (options) {
+ Object.assign(this.options, options)
+ if (this.observer) {
+ const result = this.observer.setOptions(options)
+ this.maySetLoading()
+ return result
+ }
+ }
+
+ startPolling (...args) {
+ if (this.observer) {
+ return this.observer.startPolling(...args)
+ }
+ }
+
+ stopPolling (...args) {
+ if (this.observer) {
+ return this.observer.stopPolling(...args)
+ }
+ }
+}
diff --git a/src/smart-subscription.js b/src/smart-subscription.js
new file mode 100644
index 0000000..aa4045e
--- /dev/null
+++ b/src/smart-subscription.js
@@ -0,0 +1,48 @@
+import SmartApollo from './smart-apollo'
+
+export default class SmartSubscription extends SmartApollo {
+ type = 'subscription'
+ vueApolloSpecialKeys = [
+ 'variables',
+ 'result',
+ 'error',
+ 'throttle',
+ 'debounce',
+ 'linkedQuery',
+ ]
+
+ executeApollo (variables) {
+ const variablesJson = JSON.stringify(variables)
+ if (this.sub) {
+ // do nothing if subscription is already running using exactly the same variables
+ if (variablesJson === this.previousVariablesJson) {
+ return
+ }
+ this.sub.unsubscribe()
+ }
+ this.previousVariablesJson = variablesJson
+
+ const apolloOptions = this.generateApolloOptions(variables)
+
+ if (this.options.linkedQuery) {
+ this.sub = this.options.linkedQuery.subscribeToMore(apolloOptions)
+ } else {
+ // Create observer
+ this.observer = this.vm.$apollo.subscribe(apolloOptions)
+
+ // Create subscription
+ this.sub = this.observer.subscribe({
+ next: this.nextResult.bind(this),
+ error: this.catchError.bind(this),
+ })
+ }
+
+ super.executeApollo(variables)
+ }
+
+ nextResult (data) {
+ if (typeof this.options.result === 'function') {
+ this.options.result.call(this.vm, data)
+ }
+ }
+}
diff --git a/types/index.d.ts b/types/index.d.ts
new file mode 100644
index 0000000..f99e279
--- /dev/null
+++ b/types/index.d.ts
@@ -0,0 +1,4 @@
+import './vue'
+import { VueApollo } from './vue-apollo';
+
+export default VueApollo;
\ No newline at end of file
diff --git a/types/test/App.ts b/types/test/App.ts
new file mode 100644
index 0000000..803fde5
--- /dev/null
+++ b/types/test/App.ts
@@ -0,0 +1,194 @@
+// this example src is https://github.com/Akryum/vue-apollo-example
+import gql from 'graphql-tag';
+import Vue from 'vue';
+const pageSize = 10;
+const SUB_QUERY = gql`subscription tags($type: String!) {
+ tagAdded(type: $type) {
+ id
+ label
+ type
+ }
+}`;
+export default Vue.extend({
+ data () {
+ return {
+ newTag: null,
+ updateCount: 0,
+ type: 'City',
+ skipQuery: false,
+ loading: 0,
+ tagsLoading: 0,
+ tagsPageLoading: 0,
+ showTag: 'random',
+ showMoreEnabled: true,
+ page: 0,
+ _type: ''
+ }
+ },
+ apollo: {
+ $client: 'a',
+ $loadingKey: 'loading',
+ tags() {
+ return {
+ query: gql`query tagList ($type: String!) {
+ tags(type: $type) {
+ id
+ label
+ }
+ }`,
+ // Reactive variables
+ variables () {
+ return {
+ type: this.type,
+ };
+ },
+ manual: true,
+ pollInterval: 300,
+ result (result) {
+ this.updateCount ++;
+ },
+ skip () {
+ return this.skipQuery
+ },
+ fetchPolicy: 'cache-and-network',
+ subscribeToMore: [{
+ document: SUB_QUERY,
+ variables () {
+ return { type: this.type, }
+ },
+ updateQuery: (previousResult, { subscriptionData }) => {
+ console.log('new tag', subscriptionData.data.tagAdded)
+ if (previousResult.tags.find((tag: any) => tag.id === subscriptionData.data.tagAdded.id)) {
+ return previousResult
+ }
+ return {
+ tags: [
+ ...previousResult.tags,
+ subscriptionData.data.tagAdded,
+ ],
+ }
+ },
+ }],
+ }
+ },
+ randomTag: {
+ query () {
+ if (this.showTag === 'random') {
+ return gql`{
+ randomTag {
+ id
+ label
+ type
+ }
+ }`
+ } else if (this.showTag === 'last') {
+ return gql`{
+ randomTag: lastTag {
+ id
+ label
+ type
+ }
+ }`
+ }
+ },
+ },
+ tagsPage: {
+ // GraphQL Query
+ query: gql`query tagsPage ($page: Int!, $pageSize: Int!) {
+ tagsPage(page: $page, size: $pageSize) {
+ tags {
+ id
+ label
+ type
+ }
+ hasMore
+ }
+ }`,
+ variables: {
+ page: 0,
+ pageSize,
+ },
+ },
+ },
+ methods: {
+ addTag() {
+ const newTag = this.newTag;
+ this.$apollo.mutate({
+ mutation: gql`mutation ($type: String!, $label: String!) {
+ addTag(type: $type, label: $label) {
+ id
+ label
+ }
+ }`,
+ variables: { type: this.type, label: newTag, },
+ updateQueries: {
+ tagList: (previousResult, { mutationResult }) => {
+ const { data } = mutationResult;
+ if (!data) { return previousResult }
+ if (previousResult.tags.find((tag: any) => tag.id === data.addTag.id)) {
+ return previousResult
+ }
+ return { tags: [ ...previousResult.tags, data.addTag ] };
+ },
+ },
+ optimisticResponse: {
+ __typename: 'Mutation',
+ addTag: {
+ __typename: 'Tag',
+ id: -1,
+ label: newTag,
+ type: this.type,
+ },
+ },
+ }).then((data) => {
+ console.log(data);
+ }).catch((error) => {
+ console.error(error);
+ this.newTag = newTag;
+ });
+ },
+ showMore() {
+ this.page ++;
+ this.$apollo.queries.tagsPage.fetchMore({
+ variables: {
+ page: this.page,
+ pageSize,
+ },
+ // Mutate the previous result
+ updateQuery: (previousResult: any, result: { fetchMoreResult: any }) => {
+ const { fetchMoreResult } = result;
+ const newTags = fetchMoreResult.tagsPage.tags;
+ const hasMore = fetchMoreResult.tagsPage.hasMore;
+ this.showMoreEnabled = hasMore;
+ return {
+ tagsPage: {
+ __typename: previousResult.tagsPage.__typename,
+ tags: [
+ ...previousResult.tagsPage.tags,
+ // Add the new tags
+ ...newTags,
+ ],
+ hasMore,
+ },
+ };
+ },
+ });
+ },
+ refetchTags () {
+ this.$apollo.queries.tags.refetch()
+ },
+ },
+mounted() {
+ const observer = this.$apollo.subscribe({
+ query: SUB_QUERY,
+ variables: {
+ type: 'Companies',
+ },
+ });
+ observer.subscribe({
+ next(data) {
+ console.log('this.$apollo.subscribe', data);
+ },
+ });
+ },
+});
\ No newline at end of file
diff --git a/types/test/index.ts b/types/test/index.ts
new file mode 100644
index 0000000..f179784
--- /dev/null
+++ b/types/test/index.ts
@@ -0,0 +1,19 @@
+import Vue from 'vue'
+
+import 'isomorphic-fetch'
+import { ApolloClient } from 'apollo-client'
+import { HttpLink } from 'apollo-link-http'
+import { ApolloLink, split } from 'apollo-link'
+import { getMainDefinition } from 'apollo-utilities'
+
+import VueApollo from '../index'
+import App from './App'
+
+const httpLink = new HttpLink({ uri: 'https://dummy.test.com' })
+const cache: any = 'dummy cache';
+const apolloClient = new ApolloClient({ link: httpLink, cache, connectToDevTools: true })
+const apolloProvider = new VueApollo({ defaultClient: apolloClient })
+
+Vue.use(VueApollo)
+
+new Vue({ el: '#app', apolloProvider, render: h => h(App), })
\ No newline at end of file
diff --git a/types/test/tsconfig.json b/types/test/tsconfig.json
new file mode 100644
index 0000000..9ebbc08
--- /dev/null
+++ b/types/test/tsconfig.json
@@ -0,0 +1,28 @@
+{
+ "compilerOptions": {
+ "target": "es5",
+ "lib": [
+ "es5",
+ "es6",
+ "dom",
+ "es2015.core",
+ "es2015.collection",
+ "es2015.generator",
+ "es2015.iterable",
+ "es2015.promise",
+ "es2015.proxy",
+ "es2015.reflect",
+ "es2015.symbol",
+ "es2015.symbol.wellknown",
+ "esnext.asynciterable"
+ ],
+ "module": "es2015",
+ "moduleResolution": "node",
+ "experimentalDecorators": true,
+ "strict": true
+ },
+ "include": [
+ "*.ts",
+ "../*.d.ts"
+ ]
+}
diff --git a/types/vue-apollo.d.ts b/types/vue-apollo.d.ts
new file mode 100644
index 0000000..cd97848
--- /dev/null
+++ b/types/vue-apollo.d.ts
@@ -0,0 +1,84 @@
+import Vue, { PluginObject, PluginFunction } from 'vue';
+import { DocumentNode } from 'graphql';
+import { ApolloClient } from 'apollo-client';
+import { WatchQueryOptions, MutationOptions, SubscriptionOptions, SubscribeToMoreOptions, ObservableQuery, NetworkStatus } from 'apollo-client'
+import { DataProxy } from 'apollo-cache';
+import { subscribe } from 'graphql/subscription/subscribe';
+
+// include Omit type from https://github.com/Microsoft/TypeScript/issues/12215
+type Diff = ({ [P in T]: P } & { [P in U]: never } & { [x: string]: never })[T];
+type Omit = { [P in Diff]?: T[P] };
+
+type VueApolloOptions = {
+ $skip?: boolean,
+ $skipAllQueries?: boolean,
+ $skipAllSubscriptions?: boolean,
+ $client?: string,
+ $loadingKey?: string,
+ $error?: Function
+}
+
+export class VueApollo implements PluginObject<{}> {
+ [key: string]: any;
+ install: PluginFunction<{}>;
+ constructor (options: { defaultClient: ApolloClient<{}>, defaultOptions?: VueApolloOptions, clients?: { [key: string]: ApolloClient<{}> } });
+ static install(pVue: typeof Vue, options?:{} | undefined): void;
+}
+
+type ApolloVueThisType = V & { [key: string]: any };
+type VariableFn = ((this: ApolloVueThisType) => Object) | Object;
+type ApolloVueUpdateQueryFn = (this: ApolloVueThisType, previousQueryResult: { [key: string]: any }, options: {
+ error: any,
+ subscriptionData: { data: any; };
+ variables?: { [key: string]: any; };
+}) => Object;
+
+interface ApolloVueSubscribeToMoreOptions {
+ document: DocumentNode;
+ variables?: VariableFn;
+ updateQuery?: ApolloVueUpdateQueryFn;
+ onError?: (error: Error) => void;
+}
+
+type _WatchQueryOptions = Omit; // exclude query prop because it causes type incorrectly error
+export interface VueApolloQueryOptions extends _WatchQueryOptions {
+ query: ((this: ApolloVueThisType) => DocumentNode) | DocumentNode;
+ variables?: VariableFn;
+ update?: (this: ApolloVueThisType, data: R) => any;
+ result?: (this: ApolloVueThisType, data: R, loader: any, netWorkStatus: NetworkStatus) => void;
+ error?: (this: ApolloVueThisType, error: any) => void;
+ loadingKey?: string;
+ watchLoading?: (isLoading: boolean, countModifier: number) => void;
+ skip?: (this: ApolloVueThisType) => boolean | boolean;
+ manual?: boolean;
+ subscribeToMore?: ApolloVueSubscribeToMoreOptions | ApolloVueSubscribeToMoreOptions[];
+}
+
+export interface VueApolloMutationOptions extends MutationOptions {
+ mutation: DocumentNode;
+ variables?: VariableFn;
+ optimisticResponse?: ((this: ApolloVueThisType) => any) | Object;
+}
+
+export interface VueApolloSubscriptionOptions extends SubscriptionOptions {
+ query: DocumentNode;
+ variables?: VariableFn;
+ result?: (this: V, data: R) => void;
+}
+
+type Query = (key: string, options: VueApolloQueryOptions) => void;
+type Mutate = (params: VueApolloMutationOptions) => Promise;
+type Subscribe = (params: SubscriptionOptions) => ObservableQuery;
+export interface ApolloProperty {
+ [key: string]: Query | Mutate | Subscribe; // smart query
+ queries: any;
+ mutate: Mutate;
+ subscribe: Subscribe;
+}
+type QueryComponentProperty = ((this: ApolloVueThisType) => VueApolloQueryOptions) | VueApolloQueryOptions
+type SubscribeComponentProperty = VueApolloSubscriptionOptions | { [key: string]: VueApolloSubscriptionOptions }
+
+export interface VueApolloComponentOption extends VueApolloOptions {
+ [key: string]: QueryComponentProperty | SubscribeComponentProperty | string | boolean | Function | undefined;
+ $subscribe?: SubscribeComponentProperty;
+}
diff --git a/types/vue.d.ts b/types/vue.d.ts
new file mode 100644
index 0000000..183a284
--- /dev/null
+++ b/types/vue.d.ts
@@ -0,0 +1,15 @@
+import Vue from "vue";
+import { VueApollo, VueApolloComponentOption, ApolloProperty } from './vue-apollo';
+
+declare module "vue/types/options" {
+ interface ComponentOptions {
+ apolloProvider?: VueApollo;
+ apollo?: VueApolloComponentOption;
+ }
+}
+
+declare module "vue/types/vue" {
+ interface Vue {
+ $apollo: ApolloProperty;
+ }
+}
\ No newline at end of file
diff --git a/yarn.lock b/yarn.lock
index a57d1dc..4c8c68b 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,9 +2,73 @@
# yarn lockfile v1
+"@babel/code-frame@7.0.0-beta.36":
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.36.tgz#2349d7ec04b3a06945ae173280ef8579b63728e4"
+ dependencies:
+ chalk "^2.0.0"
+ esutils "^2.0.2"
+ js-tokens "^3.0.0"
+
+"@babel/helper-function-name@7.0.0-beta.36":
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.36.tgz#366e3bc35147721b69009f803907c4d53212e88d"
+ dependencies:
+ "@babel/helper-get-function-arity" "7.0.0-beta.36"
+ "@babel/template" "7.0.0-beta.36"
+ "@babel/types" "7.0.0-beta.36"
+
+"@babel/helper-get-function-arity@7.0.0-beta.36":
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.36.tgz#f5383bac9a96b274828b10d98900e84ee43e32b8"
+ dependencies:
+ "@babel/types" "7.0.0-beta.36"
+
+"@babel/template@7.0.0-beta.36":
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.36.tgz#02e903de5d68bd7899bce3c5b5447e59529abb00"
+ dependencies:
+ "@babel/code-frame" "7.0.0-beta.36"
+ "@babel/types" "7.0.0-beta.36"
+ babylon "7.0.0-beta.36"
+ lodash "^4.2.0"
+
+"@babel/traverse@7.0.0-beta.36":
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.36.tgz#1dc6f8750e89b6b979de5fe44aa993b1a2192261"
+ dependencies:
+ "@babel/code-frame" "7.0.0-beta.36"
+ "@babel/helper-function-name" "7.0.0-beta.36"
+ "@babel/types" "7.0.0-beta.36"
+ babylon "7.0.0-beta.36"
+ debug "^3.0.1"
+ globals "^11.1.0"
+ invariant "^2.2.0"
+ lodash "^4.2.0"
+
+"@babel/types@7.0.0-beta.36":
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.36.tgz#64f2004353de42adb72f9ebb4665fc35b5499d23"
+ dependencies:
+ esutils "^2.0.2"
+ lodash "^4.2.0"
+ to-fast-properties "^2.0.0"
+
+"@types/async@2.0.47":
+ version "2.0.47"
+ resolved "https://registry.yarnpkg.com/@types/async/-/async-2.0.47.tgz#f49ba1dd1f189486beb6e1d070a850f6ab4bd521"
+
+"@types/graphql@^0.12.3":
+ version "0.12.3"
+ resolved "https://registry.yarnpkg.com/@types/graphql/-/graphql-0.12.3.tgz#c429585aaa4523135e0ab4e12dec72d2d913946f"
+
+"@types/zen-observable@0.5.3", "@types/zen-observable@^0.5.3":
+ version "0.5.3"
+ resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.5.3.tgz#91b728599544efbb7386d8b6633693a3c2e7ade5"
+
abbrev@1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f"
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
acorn-jsx@^3.0.0:
version "3.0.1"
@@ -16,32 +80,39 @@ acorn@^3.0.4:
version "3.3.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
-acorn@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.1.tgz#53fe161111f912ab999ee887a90a0bc52822fd75"
+acorn@^5.2.1, acorn@^5.4.0:
+ version "5.4.1"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.4.1.tgz#fdc58d9d17f4a4e98d102ded826a9b9759125102"
-ajv-keywords@^1.0.0:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c"
+ajv-keywords@^2.1.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762"
-ajv@^4.7.0, ajv@^4.9.1:
+ajv@^4.9.1:
version "4.11.8"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
dependencies:
co "^4.6.0"
json-stable-stringify "^1.0.1"
-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"
+ajv@^5.2.3, ajv@^5.3.0:
+ version "5.5.2"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
dependencies:
- kind-of "^3.0.2"
- longest "^1.0.1"
- repeat-string "^1.5.2"
+ co "^4.6.0"
+ fast-deep-equal "^1.0.0"
+ fast-json-stable-stringify "^2.0.0"
+ json-schema-traverse "^0.3.0"
-ansi-escapes@^1.1.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
+ansi-align@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f"
+ dependencies:
+ string-width "^2.0.0"
+
+ansi-escapes@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92"
ansi-regex@^2.0.0:
version "2.1.1"
@@ -55,16 +126,74 @@ ansi-styles@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-anymatch@^1.3.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a"
+ansi-styles@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88"
dependencies:
- micromatch "^2.1.5"
- normalize-path "^2.0.0"
+ color-convert "^1.9.0"
+
+anymatch@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
+ dependencies:
+ micromatch "^3.1.4"
+ normalize-path "^2.1.1"
+
+apollo-cache-inmemory@^1.1.1:
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/apollo-cache-inmemory/-/apollo-cache-inmemory-1.1.7.tgz#15e6200f70431414d29bd5f20e86d81739e26430"
+ dependencies:
+ apollo-cache "^1.1.2"
+ apollo-utilities "^1.0.6"
+ graphql-anywhere "^4.1.3"
+
+apollo-cache@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/apollo-cache/-/apollo-cache-1.1.2.tgz#b1843a0e01d3837239e9925cfaa1d786599b77a9"
+ dependencies:
+ apollo-utilities "^1.0.6"
+
+apollo-client@^2.0.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.2.3.tgz#a8df51c9ff89acb0d98de81b911e56b1ce468ca3"
+ dependencies:
+ "@types/zen-observable" "^0.5.3"
+ apollo-cache "^1.1.2"
+ apollo-link "^1.0.0"
+ apollo-link-dedup "^1.0.0"
+ apollo-utilities "^1.0.6"
+ symbol-observable "^1.0.2"
+ zen-observable "^0.7.0"
+ optionalDependencies:
+ "@types/async" "2.0.47"
+
+apollo-link-dedup@^1.0.0:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/apollo-link-dedup/-/apollo-link-dedup-1.0.6.tgz#566ab421a5f6ef41995e2e386f575600d51b1408"
+ dependencies:
+ apollo-link "^1.1.0"
+
+apollo-link-http@^1.2.0:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/apollo-link-http/-/apollo-link-http-1.3.3.tgz#cb792c73266607e6361c8c1cc4dd42d405ca08f1"
+ dependencies:
+ apollo-link "^1.1.0"
+
+apollo-link@^1.0.0, apollo-link@^1.0.3, apollo-link@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/apollo-link/-/apollo-link-1.1.0.tgz#9d573b16387ee0d8e147b1f319e42c8c562f18f7"
+ dependencies:
+ "@types/zen-observable" "0.5.3"
+ apollo-utilities "^1.0.0"
+ zen-observable "^0.7.0"
+
+apollo-utilities@^1.0.0, apollo-utilities@^1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.0.6.tgz#7bfd7a702b5225c9a4591fe28c5899d9b5f08889"
aproba@^1.0.3:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1"
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
are-we-there-yet@~1.1.2:
version "1.1.4"
@@ -85,10 +214,18 @@ arr-diff@^2.0.0:
dependencies:
arr-flatten "^1.0.1"
-arr-flatten@^1.0.1:
+arr-diff@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
+
+arr-flatten@^1.0.1, arr-flatten@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
+arr-union@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
+
array-union@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
@@ -103,6 +240,10 @@ array-unique@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
+array-unique@^0.3.2:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
+
arrify@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
@@ -119,18 +260,22 @@ assert-plus@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
+assign-symbols@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
+
async-each@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
-async@~0.2.6:
- version "0.2.10"
- resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
-
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
+atob@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/atob/-/atob-2.0.3.tgz#19c7a760473774468f20b2d2d03372ad7d4cbf5d"
+
aws-sign2@~0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
@@ -139,28 +284,7 @@ aws4@^1.2.1:
version "1.6.0"
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
-babel-cli@^6.14.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.26.0.tgz#502ab54874d7db88ad00b887a06383ce03d002f1"
- dependencies:
- babel-core "^6.26.0"
- babel-polyfill "^6.26.0"
- babel-register "^6.26.0"
- babel-runtime "^6.26.0"
- commander "^2.11.0"
- convert-source-map "^1.5.0"
- fs-readdir-recursive "^1.0.0"
- glob "^7.1.2"
- lodash "^4.17.4"
- output-file-sync "^1.1.2"
- path-is-absolute "^1.0.1"
- slash "^1.0.0"
- source-map "^0.5.6"
- v8flags "^2.1.1"
- optionalDependencies:
- chokidar "^1.6.1"
-
-babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
+babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
dependencies:
@@ -168,7 +292,7 @@ babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
esutils "^2.0.2"
js-tokens "^3.0.2"
-babel-core@6, babel-core@^6.26.0:
+babel-core@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8"
dependencies:
@@ -192,18 +316,20 @@ babel-core@6, babel-core@^6.26.0:
slash "^1.0.0"
source-map "^0.5.6"
-babel-eslint@^7.1.1:
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-7.2.3.tgz#b2fe2d80126470f5c19442dc757253a897710827"
+babel-eslint@^8.2.1:
+ version "8.2.1"
+ resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.2.1.tgz#136888f3c109edc65376c23ebf494f36a3e03951"
dependencies:
- babel-code-frame "^6.22.0"
- babel-traverse "^6.23.1"
- babel-types "^6.23.0"
- babylon "^6.17.0"
+ "@babel/code-frame" "7.0.0-beta.36"
+ "@babel/traverse" "7.0.0-beta.36"
+ "@babel/types" "7.0.0-beta.36"
+ babylon "7.0.0-beta.36"
+ eslint-scope "~3.7.1"
+ eslint-visitor-keys "^1.0.0"
babel-generator@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5"
+ version "6.26.1"
+ resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
dependencies:
babel-messages "^6.23.0"
babel-runtime "^6.26.0"
@@ -211,7 +337,7 @@ babel-generator@^6.26.0:
detect-indent "^4.0.0"
jsesc "^1.3.0"
lodash "^4.17.4"
- source-map "^0.5.6"
+ source-map "^0.5.7"
trim-right "^1.0.1"
babel-helper-bindify-decorators@^6.24.1:
@@ -406,7 +532,7 @@ babel-plugin-transform-async-generator-functions@^6.24.1:
babel-plugin-syntax-async-generators "^6.5.0"
babel-runtime "^6.22.0"
-babel-plugin-transform-async-to-generator@^6.24.1:
+babel-plugin-transform-async-to-generator@^6.22.0, babel-plugin-transform-async-to-generator@^6.24.1:
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:
@@ -460,7 +586,7 @@ babel-plugin-transform-es2015-block-scoped-functions@^6.22.0:
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-block-scoping@^6.24.1:
+babel-plugin-transform-es2015-block-scoping@^6.23.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f"
dependencies:
@@ -470,7 +596,7 @@ babel-plugin-transform-es2015-block-scoping@^6.24.1:
babel-types "^6.26.0"
lodash "^4.17.4"
-babel-plugin-transform-es2015-classes@^6.24.1, babel-plugin-transform-es2015-classes@^6.9.0:
+babel-plugin-transform-es2015-classes@^6.23.0:
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:
@@ -484,33 +610,33 @@ babel-plugin-transform-es2015-classes@^6.24.1, babel-plugin-transform-es2015-cla
babel-traverse "^6.24.1"
babel-types "^6.24.1"
-babel-plugin-transform-es2015-computed-properties@^6.24.1:
+babel-plugin-transform-es2015-computed-properties@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3"
dependencies:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
-babel-plugin-transform-es2015-destructuring@^6.22.0:
+babel-plugin-transform-es2015-destructuring@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-duplicate-keys@^6.24.1:
+babel-plugin-transform-es2015-duplicate-keys@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
-babel-plugin-transform-es2015-for-of@^6.22.0:
+babel-plugin-transform-es2015-for-of@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-function-name@^6.24.1:
+babel-plugin-transform-es2015-function-name@^6.22.0:
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:
@@ -524,7 +650,7 @@ babel-plugin-transform-es2015-literals@^6.22.0:
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-modules-amd@^6.24.1:
+babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154"
dependencies:
@@ -532,7 +658,7 @@ babel-plugin-transform-es2015-modules-amd@^6.24.1:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
-babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
+babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a"
dependencies:
@@ -541,7 +667,7 @@ babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
babel-template "^6.26.0"
babel-types "^6.26.0"
-babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
+babel-plugin-transform-es2015-modules-systemjs@^6.23.0:
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:
@@ -549,7 +675,7 @@ babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
-babel-plugin-transform-es2015-modules-umd@^6.24.1:
+babel-plugin-transform-es2015-modules-umd@^6.23.0:
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:
@@ -557,14 +683,14 @@ babel-plugin-transform-es2015-modules-umd@^6.24.1:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
-babel-plugin-transform-es2015-object-super@^6.24.1:
+babel-plugin-transform-es2015-object-super@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d"
dependencies:
babel-helper-replace-supers "^6.24.1"
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-parameters@^6.24.1:
+babel-plugin-transform-es2015-parameters@^6.23.0:
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:
@@ -575,7 +701,7 @@ babel-plugin-transform-es2015-parameters@^6.24.1:
babel-traverse "^6.24.1"
babel-types "^6.24.1"
-babel-plugin-transform-es2015-shorthand-properties@^6.24.1:
+babel-plugin-transform-es2015-shorthand-properties@^6.22.0:
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:
@@ -588,7 +714,7 @@ babel-plugin-transform-es2015-spread@^6.22.0:
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-sticky-regex@^6.24.1:
+babel-plugin-transform-es2015-sticky-regex@^6.22.0:
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:
@@ -602,13 +728,13 @@ babel-plugin-transform-es2015-template-literals@^6.22.0:
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-typeof-symbol@^6.22.0:
+babel-plugin-transform-es2015-typeof-symbol@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372"
dependencies:
babel-runtime "^6.22.0"
-babel-plugin-transform-es2015-unicode-regex@^6.24.1:
+babel-plugin-transform-es2015-unicode-regex@^6.22.0:
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:
@@ -616,7 +742,7 @@ babel-plugin-transform-es2015-unicode-regex@^6.24.1:
babel-runtime "^6.22.0"
regexpu-core "^2.0.0"
-babel-plugin-transform-exponentiation-operator@^6.24.1:
+babel-plugin-transform-exponentiation-operator@^6.22.0, 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:
@@ -645,7 +771,7 @@ babel-plugin-transform-object-rest-spread@^6.22.0:
babel-plugin-syntax-object-rest-spread "^6.8.0"
babel-runtime "^6.26.0"
-babel-plugin-transform-regenerator@^6.24.1:
+babel-plugin-transform-regenerator@^6.22.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"
dependencies:
@@ -658,42 +784,40 @@ babel-plugin-transform-strict-mode@^6.24.1:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
-babel-polyfill@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153"
- dependencies:
- babel-runtime "^6.26.0"
- core-js "^2.5.0"
- regenerator-runtime "^0.10.5"
-
-babel-preset-es2015@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939"
+babel-preset-env@^1.6.1:
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.1.tgz#a18b564cc9b9afdf4aae57ae3c1b0d99188e6f48"
dependencies:
babel-plugin-check-es2015-constants "^6.22.0"
+ babel-plugin-syntax-trailing-function-commas "^6.22.0"
+ babel-plugin-transform-async-to-generator "^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-block-scoping "^6.23.0"
+ babel-plugin-transform-es2015-classes "^6.23.0"
+ babel-plugin-transform-es2015-computed-properties "^6.22.0"
+ babel-plugin-transform-es2015-destructuring "^6.23.0"
+ babel-plugin-transform-es2015-duplicate-keys "^6.22.0"
+ babel-plugin-transform-es2015-for-of "^6.23.0"
+ babel-plugin-transform-es2015-function-name "^6.22.0"
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-modules-amd "^6.22.0"
+ babel-plugin-transform-es2015-modules-commonjs "^6.23.0"
+ babel-plugin-transform-es2015-modules-systemjs "^6.23.0"
+ babel-plugin-transform-es2015-modules-umd "^6.23.0"
+ babel-plugin-transform-es2015-object-super "^6.22.0"
+ babel-plugin-transform-es2015-parameters "^6.23.0"
+ babel-plugin-transform-es2015-shorthand-properties "^6.22.0"
babel-plugin-transform-es2015-spread "^6.22.0"
- babel-plugin-transform-es2015-sticky-regex "^6.24.1"
+ babel-plugin-transform-es2015-sticky-regex "^6.22.0"
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-plugin-transform-es2015-typeof-symbol "^6.23.0"
+ babel-plugin-transform-es2015-unicode-regex "^6.22.0"
+ babel-plugin-transform-exponentiation-operator "^6.22.0"
+ babel-plugin-transform-regenerator "^6.22.0"
+ browserslist "^2.1.2"
+ invariant "^2.2.2"
+ semver "^5.3.0"
babel-preset-stage-0@^6.24.1:
version "6.24.1"
@@ -759,7 +883,7 @@ babel-template@^6.24.1, babel-template@^6.26.0:
babylon "^6.18.0"
lodash "^4.17.4"
-babel-traverse@^6.23.1, babel-traverse@^6.24.1, babel-traverse@^6.26.0:
+babel-traverse@^6.24.1, babel-traverse@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
dependencies:
@@ -773,7 +897,7 @@ babel-traverse@^6.23.1, babel-traverse@^6.24.1, babel-traverse@^6.26.0:
invariant "^2.2.2"
lodash "^4.17.4"
-babel-types@^6.19.0, babel-types@^6.23.0, babel-types@^6.24.1, babel-types@^6.26.0:
+babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
dependencies:
@@ -782,7 +906,11 @@ babel-types@^6.19.0, babel-types@^6.23.0, babel-types@^6.24.1, babel-types@^6.26
lodash "^4.17.4"
to-fast-properties "^1.0.3"
-babylon@^6.17.0, babylon@^6.18.0:
+babylon@7.0.0-beta.36:
+ version "7.0.0-beta.36"
+ resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.36.tgz#3a3683ba6a9a1e02b0aa507c8e63435e39305b9e"
+
+babylon@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
@@ -790,6 +918,18 @@ balanced-match@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
+base@^0.11.1:
+ version "0.11.2"
+ resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
+ dependencies:
+ cache-base "^1.0.1"
+ class-utils "^0.3.5"
+ component-emitter "^1.2.1"
+ define-property "^1.0.0"
+ isobject "^3.0.1"
+ mixin-deep "^1.2.0"
+ pascalcase "^0.1.1"
+
bcrypt-pbkdf@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
@@ -797,8 +937,8 @@ bcrypt-pbkdf@^1.0.0:
tweetnacl "^0.14.3"
binary-extensions@^1.0.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0"
+ version "1.11.0"
+ resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205"
block-stream@*:
version "0.0.9"
@@ -812,9 +952,21 @@ boom@2.x.x:
dependencies:
hoek "2.x.x"
+boxen@^1.2.1:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b"
+ dependencies:
+ ansi-align "^2.0.0"
+ camelcase "^4.0.0"
+ chalk "^2.0.1"
+ cli-boxes "^1.0.0"
+ string-width "^2.0.0"
+ term-size "^1.2.0"
+ widest-line "^2.0.0"
+
brace-expansion@^1.1.7:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
+ version "1.1.11"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
dependencies:
balanced-match "^1.0.0"
concat-map "0.0.1"
@@ -827,16 +979,47 @@ braces@^1.8.2:
preserve "^0.2.0"
repeat-element "^1.1.2"
-browser-resolve@^1.11.0:
- version "1.11.2"
- resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce"
+braces@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.0.tgz#a46941cb5fb492156b3d6a656e06c35364e3e66e"
dependencies:
- resolve "1.1.7"
+ arr-flatten "^1.1.0"
+ array-unique "^0.3.2"
+ define-property "^1.0.0"
+ extend-shallow "^2.0.1"
+ fill-range "^4.0.0"
+ isobject "^3.0.1"
+ repeat-element "^1.1.2"
+ snapdragon "^0.8.1"
+ snapdragon-node "^2.0.1"
+ split-string "^3.0.2"
+ to-regex "^3.0.1"
-builtin-modules@^1.1.0:
+browserslist@^2.1.2:
+ version "2.11.3"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2"
+ dependencies:
+ caniuse-lite "^1.0.30000792"
+ electron-to-chromium "^1.3.30"
+
+builtin-modules@^1.0.0, builtin-modules@^1.1.0, builtin-modules@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
+cache-base@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
+ dependencies:
+ collection-visit "^1.0.0"
+ component-emitter "^1.2.1"
+ get-value "^2.0.6"
+ has-value "^1.0.0"
+ isobject "^3.0.1"
+ set-value "^2.0.0"
+ to-object-path "^0.3.0"
+ union-value "^1.0.0"
+ unset-value "^1.0.0"
+
caller-path@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
@@ -847,22 +1030,23 @@ callsites@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
-camelcase@^1.0.2:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
+camelcase@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
+
+caniuse-lite@^1.0.30000792:
+ version "1.0.30000808"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000808.tgz#7d759b5518529ea08b6705a19e70dbf401628ffc"
+
+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.12.0:
version "0.12.0"
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
-center-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
- dependencies:
- align-text "^0.1.3"
- lazy-cache "^1.0.3"
-
-chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
+chalk@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
dependencies:
@@ -872,18 +1056,33 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
strip-ansi "^3.0.0"
supports-color "^2.0.0"
-chokidar@^1.4.3, chokidar@^1.6.1:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
+chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.1.tgz#523fe2678aec7b04e8041909292fe8b17059b796"
dependencies:
- anymatch "^1.3.0"
+ ansi-styles "^3.2.0"
+ escape-string-regexp "^1.0.5"
+ supports-color "^5.2.0"
+
+chardet@^0.4.0:
+ version "0.4.2"
+ resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2"
+
+chokidar@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.1.tgz#6e67e9998fe10e8f651e975ca62460456ff8e297"
+ dependencies:
+ anymatch "^2.0.0"
async-each "^1.0.0"
- glob-parent "^2.0.0"
+ braces "^2.3.0"
+ glob-parent "^3.1.0"
inherits "^2.0.1"
is-binary-path "^1.0.0"
- is-glob "^2.0.0"
+ is-glob "^4.0.0"
+ normalize-path "^2.1.1"
path-is-absolute "^1.0.0"
readdirp "^2.0.0"
+ upath "1.0.0"
optionalDependencies:
fsevents "^1.0.0"
@@ -891,24 +1090,29 @@ circular-json@^0.3.1:
version "0.3.3"
resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66"
-cli-cursor@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
+class-utils@^0.3.5:
+ version "0.3.6"
+ resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
dependencies:
- restore-cursor "^1.0.1"
+ arr-union "^3.1.0"
+ define-property "^0.2.5"
+ isobject "^3.0.0"
+ static-extend "^0.1.1"
+
+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@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
+ dependencies:
+ restore-cursor "^2.0.0"
cli-width@^2.0.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
-cliui@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
- dependencies:
- center-align "^0.1.1"
- right-align "^0.1.1"
- wordwrap "0.0.2"
-
co@^4.6.0:
version "4.6.0"
resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
@@ -917,21 +1121,42 @@ code-point-at@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
+collection-visit@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
+ dependencies:
+ map-visit "^1.0.0"
+ object-visit "^1.0.0"
+
+color-convert@^1.9.0:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed"
+ dependencies:
+ color-name "^1.1.1"
+
+color-name@^1.1.1:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
+
combined-stream@^1.0.5, combined-stream@~1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009"
dependencies:
delayed-stream "~1.0.0"
-commander@^2.11.0:
- version "2.11.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563"
+commander@~2.14.1:
+ version "2.14.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa"
+
+component-emitter@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
-concat-stream@^1.5.2:
+concat-stream@^1.6.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
dependencies:
@@ -939,46 +1164,64 @@ concat-stream@^1.5.2:
readable-stream "^2.2.2"
typedarray "^0.0.6"
-configstore@^1.0.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/configstore/-/configstore-1.4.0.tgz#c35781d0501d268c25c54b8b17f6240e8a4fb021"
+configstore@^3.0.0:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90"
dependencies:
+ dot-prop "^4.1.0"
graceful-fs "^4.1.2"
- mkdirp "^0.5.0"
- object-assign "^4.0.1"
- os-tmpdir "^1.0.0"
- osenv "^0.1.0"
- uuid "^2.0.1"
- write-file-atomic "^1.1.2"
- xdg-basedir "^2.0.0"
+ make-dir "^1.0.0"
+ unique-string "^1.0.0"
+ write-file-atomic "^2.0.0"
+ xdg-basedir "^3.0.0"
console-control-strings@^1.0.0, console-control-strings@~1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
+contains-path@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
+
convert-source-map@^1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5"
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5"
+
+copy-descriptor@^0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
core-js@^2.4.0, core-js@^2.5.0:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.0.tgz#569c050918be6486b3837552028ae0466b717086"
+ version "2.5.3"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e"
core-util-is@1.0.2, core-util-is@~1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+create-error-class@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6"
+ dependencies:
+ capture-stack-trace "^1.0.0"
+
+cross-spawn@^5.0.1, cross-spawn@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
+ dependencies:
+ lru-cache "^4.0.1"
+ shebang-command "^1.2.0"
+ which "^1.2.9"
+
cryptiles@2.x.x:
version "2.0.5"
resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
dependencies:
boom "2.x.x"
-d@1:
+crypto-random-string@^1.0.0:
version "1.0.0"
- resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f"
- dependencies:
- es5-ext "^0.10.9"
+ resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e"
dashdash@^1.12.0:
version "1.14.1"
@@ -986,15 +1229,21 @@ dashdash@^1.12.0:
dependencies:
assert-plus "^1.0.0"
-debug@^2.1.1, debug@^2.2.0, debug@^2.6.8:
- version "2.6.8"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
+debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
dependencies:
ms "2.0.0"
-decamelize@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
+debug@^3.0.1, debug@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
+ dependencies:
+ ms "2.0.0"
+
+decode-uri-component@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
deep-extend@~0.4.0:
version "0.4.2"
@@ -1004,6 +1253,18 @@ deep-is@~0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
+define-property@^0.2.5:
+ version "0.2.5"
+ resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
+ dependencies:
+ is-descriptor "^0.1.0"
+
+define-property@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
+ dependencies:
+ is-descriptor "^1.0.0"
+
del@^2.0.2:
version "2.2.2"
resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
@@ -1030,164 +1291,165 @@ detect-indent@^4.0.0:
dependencies:
repeating "^2.0.0"
-doctrine@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63"
+detect-libc@^1.0.2:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
+
+doctrine@1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
dependencies:
esutils "^2.0.2"
isarray "^1.0.0"
+doctrine@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
+ dependencies:
+ esutils "^2.0.2"
+
+dot-prop@^4.1.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57"
+ dependencies:
+ is-obj "^1.0.0"
+
+duplexer3@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
+
duplexer@~0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1"
-duplexify@^3.2.0:
- version "3.5.1"
- resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.1.tgz#4e1516be68838bc90a49994f0b39a6e5960befcd"
- dependencies:
- end-of-stream "^1.0.0"
- inherits "^2.0.1"
- readable-stream "^2.0.0"
- stream-shift "^1.0.0"
-
ecc-jsbn@~0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
dependencies:
jsbn "~0.1.0"
-end-of-stream@^1.0.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206"
- dependencies:
- once "^1.4.0"
+electron-to-chromium@^1.3.30:
+ version "1.3.33"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.33.tgz#bf00703d62a7c65238136578c352d6c5c042a545"
-es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14:
- version "0.10.30"
- resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.30.tgz#7141a16836697dbabfaaaeee41495ce29f52c939"
+error-ex@^1.2.0:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
dependencies:
- es6-iterator "2"
- es6-symbol "~3.1"
-
-es6-iterator@2, es6-iterator@^2.0.1, 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 "1"
- es5-ext "^0.10.14"
- es6-symbol "^3.1"
-
-es6-map@^0.1.3:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
- es6-iterator "~2.0.1"
- es6-set "~0.1.5"
- es6-symbol "~3.1.1"
- event-emitter "~0.3.5"
-
-es6-promise@^3.0.2:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
-
-es6-set@~0.1.5:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
- es6-iterator "~2.0.1"
- es6-symbol "3.1.1"
- event-emitter "~0.3.5"
-
-es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
-
-es6-weak-map@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f"
- dependencies:
- d "1"
- es5-ext "^0.10.14"
- es6-iterator "^2.0.1"
- es6-symbol "^3.1.1"
+ is-arrayish "^0.2.1"
escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
-escope@^3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3"
+eslint-config-standard@^10.2.1:
+ version "10.2.1"
+ resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz#c061e4d066f379dc17cd562c64e819b4dd454591"
+
+eslint-import-resolver-node@^0.3.1:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a"
+ dependencies:
+ debug "^2.6.9"
+ resolve "^1.5.0"
+
+eslint-module-utils@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449"
+ dependencies:
+ debug "^2.6.8"
+ pkg-dir "^1.0.0"
+
+eslint-plugin-import@^2.8.0:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.8.0.tgz#fa1b6ef31fcb3c501c09859c1b86f1fc5b986894"
+ dependencies:
+ builtin-modules "^1.1.1"
+ contains-path "^0.1.0"
+ debug "^2.6.8"
+ doctrine "1.5.0"
+ eslint-import-resolver-node "^0.3.1"
+ eslint-module-utils "^2.1.1"
+ has "^1.0.1"
+ lodash.cond "^4.3.0"
+ minimatch "^3.0.3"
+ read-pkg-up "^2.0.0"
+
+eslint-plugin-node@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-6.0.0.tgz#5ad5ee6b5346aec6cc9cde0b8619caed2c6d8f25"
+ dependencies:
+ ignore "^3.3.6"
+ minimatch "^3.0.4"
+ resolve "^1.3.3"
+ semver "^5.4.1"
+
+eslint-plugin-promise@^3.4.0:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.6.0.tgz#54b7658c8f454813dc2a870aff8152ec4969ba75"
+
+eslint-plugin-standard@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz#34d0c915b45edc6f010393c7eef3823b08565cf2"
+
+eslint-scope@^3.7.1, eslint-scope@~3.7.1:
+ version "3.7.1"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
dependencies:
- es6-map "^0.1.3"
- es6-weak-map "^2.0.1"
esrecurse "^4.1.0"
estraverse "^4.1.1"
-eslint-config-standard@^7.1.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-7.1.0.tgz#47e769ea0739f5b2d5693b1a501c21c9650fafcf"
+eslint-visitor-keys@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
-eslint-plugin-promise@^3.4.0:
- version "3.5.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca"
-
-eslint-plugin-standard@^2.0.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-2.3.1.tgz#6765bd2a6d9ecdc7bdf1b145ae4bb30e2b7b86f8"
-
-eslint@^3.12.1:
- version "3.19.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.19.0.tgz#c8fc6201c7f40dd08941b87c085767386a679acc"
+eslint@^4.10.0:
+ version "4.17.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.17.0.tgz#dc24bb51ede48df629be7031c71d9dc0ee4f3ddf"
dependencies:
- babel-code-frame "^6.16.0"
- chalk "^1.1.3"
- concat-stream "^1.5.2"
- debug "^2.1.1"
- doctrine "^2.0.0"
- escope "^3.6.0"
- espree "^3.4.0"
+ ajv "^5.3.0"
+ babel-code-frame "^6.22.0"
+ chalk "^2.1.0"
+ concat-stream "^1.6.0"
+ cross-spawn "^5.1.0"
+ debug "^3.1.0"
+ doctrine "^2.1.0"
+ eslint-scope "^3.7.1"
+ eslint-visitor-keys "^1.0.0"
+ espree "^3.5.2"
esquery "^1.0.0"
- estraverse "^4.2.0"
esutils "^2.0.2"
file-entry-cache "^2.0.0"
- glob "^7.0.3"
- globals "^9.14.0"
- ignore "^3.2.0"
+ functional-red-black-tree "^1.0.1"
+ glob "^7.1.2"
+ globals "^11.0.1"
+ ignore "^3.3.3"
imurmurhash "^0.1.4"
- inquirer "^0.12.0"
- is-my-json-valid "^2.10.0"
+ inquirer "^3.0.6"
is-resolvable "^1.0.0"
- js-yaml "^3.5.1"
- json-stable-stringify "^1.0.0"
+ js-yaml "^3.9.1"
+ json-stable-stringify-without-jsonify "^1.0.1"
levn "^0.3.0"
- lodash "^4.0.0"
- mkdirp "^0.5.0"
+ lodash "^4.17.4"
+ minimatch "^3.0.2"
+ mkdirp "^0.5.1"
natural-compare "^1.4.0"
optionator "^0.8.2"
- path-is-inside "^1.0.1"
- pluralize "^1.2.1"
- progress "^1.1.8"
- require-uncached "^1.0.2"
- shelljs "^0.7.5"
- strip-bom "^3.0.0"
+ path-is-inside "^1.0.2"
+ pluralize "^7.0.0"
+ progress "^2.0.0"
+ require-uncached "^1.0.3"
+ semver "^5.3.0"
+ strip-ansi "^4.0.0"
strip-json-comments "~2.0.1"
- table "^3.7.8"
+ table "^4.0.1"
text-table "~0.2.0"
- user-home "^2.0.0"
-espree@^3.4.0:
- version "3.5.0"
- resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.0.tgz#98358625bdd055861ea27e2867ea729faf463d8d"
+espree@^3.5.2:
+ version "3.5.3"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.3.tgz#931e0af64e7fbbed26b050a29daad1fc64799fa6"
dependencies:
- acorn "^5.1.1"
+ acorn "^5.4.0"
acorn-jsx "^3.0.0"
esprima@^4.0.0:
@@ -1207,7 +1469,7 @@ esrecurse@^4.1.0:
estraverse "^4.1.0"
object-assign "^4.0.1"
-estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0:
+estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1:
version "4.2.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
@@ -1220,20 +1482,13 @@ estree-walker@^0.3.0:
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.3.1.tgz#e6b1a51cf7292524e7237c312e5fe6660c1ce1aa"
estree-walker@^0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.0.tgz#aae3b57c42deb8010e349c892462f0e71c5dd1aa"
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.1.tgz#64fc375053abc6f57d73e9bd2f004644ad3c5854"
esutils@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
-event-emitter@~0.3.5:
- version "0.3.5"
- resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
-
event-stream@~3.3.0:
version "3.3.4"
resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571"
@@ -1246,9 +1501,17 @@ event-stream@~3.3.0:
stream-combiner "~0.0.4"
through "~2.3.1"
-exit-hook@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8"
+execa@^0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777"
+ dependencies:
+ cross-spawn "^5.0.1"
+ get-stream "^3.0.0"
+ is-stream "^1.1.0"
+ npm-run-path "^2.0.0"
+ p-finally "^1.0.0"
+ signal-exit "^3.0.0"
+ strip-eof "^1.0.0"
expand-brackets@^0.1.4:
version "0.1.5"
@@ -1256,36 +1519,93 @@ expand-brackets@^0.1.4:
dependencies:
is-posix-bracket "^0.1.0"
+expand-brackets@^2.1.4:
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
+ dependencies:
+ debug "^2.3.3"
+ define-property "^0.2.5"
+ extend-shallow "^2.0.1"
+ posix-character-classes "^0.1.0"
+ regex-not "^1.0.0"
+ snapdragon "^0.8.1"
+ to-regex "^3.0.1"
+
expand-range@^1.8.1:
version "1.8.2"
resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
dependencies:
fill-range "^2.1.0"
+extend-shallow@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
+ dependencies:
+ is-extendable "^0.1.0"
+
+extend-shallow@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
+ dependencies:
+ assign-symbols "^1.0.0"
+ is-extendable "^1.0.1"
+
extend@~3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
+external-editor@^2.0.4:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48"
+ dependencies:
+ chardet "^0.4.0"
+ iconv-lite "^0.4.17"
+ tmp "^0.0.33"
+
extglob@^0.3.1:
version "0.3.2"
resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
dependencies:
is-extglob "^1.0.0"
-extsprintf@1.3.0, extsprintf@^1.2.0:
+extglob@^2.0.2:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
+ dependencies:
+ array-unique "^0.3.2"
+ define-property "^1.0.0"
+ expand-brackets "^2.1.4"
+ extend-shallow "^2.0.1"
+ fragment-cache "^0.2.1"
+ regex-not "^1.0.0"
+ snapdragon "^0.8.1"
+ to-regex "^3.0.1"
+
+extsprintf@1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
+extsprintf@^1.2.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
+
+fast-deep-equal@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff"
+
+fast-json-stable-stringify@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
+
fast-levenshtein@~2.0.4:
version "2.0.6"
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
-figures@^1.3.5:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
+figures@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
dependencies:
escape-string-regexp "^1.0.5"
- object-assign "^4.1.0"
file-entry-cache@^2.0.0:
version "2.0.0"
@@ -1308,16 +1628,38 @@ fill-range@^2.1.0:
repeat-element "^1.1.2"
repeat-string "^1.5.2"
+fill-range@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
+ dependencies:
+ extend-shallow "^2.0.1"
+ is-number "^3.0.0"
+ repeat-string "^1.6.1"
+ to-regex-range "^2.1.0"
+
+find-up@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
+ dependencies:
+ path-exists "^2.0.0"
+ pinkie-promise "^2.0.0"
+
+find-up@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
+ dependencies:
+ locate-path "^2.0.0"
+
flat-cache@^1.2.1:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96"
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481"
dependencies:
circular-json "^0.3.1"
del "^2.0.2"
graceful-fs "^4.1.2"
write "^0.2.1"
-for-in@^1.0.1:
+for-in@^1.0.1, for-in@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
@@ -1339,24 +1681,26 @@ form-data@~2.1.1:
combined-stream "^1.0.5"
mime-types "^2.1.12"
+fragment-cache@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
+ dependencies:
+ map-cache "^0.2.2"
+
from@~0:
version "0.1.7"
resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe"
-fs-readdir-recursive@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560"
-
fs.realpath@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
fsevents@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4"
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8"
dependencies:
nan "^2.3.0"
- node-pre-gyp "^0.6.36"
+ node-pre-gyp "^0.6.39"
fstream-ignore@^1.0.5:
version "1.0.5"
@@ -1375,6 +1719,14 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2:
mkdirp ">=0.5 0"
rimraf "2"
+function-bind@^1.0.2:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+
+functional-red-black-tree@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
+
gauge@~2.7.3:
version "2.7.4"
resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
@@ -1388,15 +1740,13 @@ gauge@~2.7.3:
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"
+get-stream@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
-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-value@^2.0.3, get-value@^2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
getpass@^0.1.1:
version "0.1.7"
@@ -1417,7 +1767,14 @@ glob-parent@^2.0.0:
dependencies:
is-glob "^2.0.0"
-glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2:
+glob-parent@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
+ dependencies:
+ is-glob "^3.1.0"
+ path-dirname "^1.0.0"
+
+glob@^7.0.3, glob@^7.0.5, glob@^7.1.2:
version "7.1.2"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
dependencies:
@@ -1428,7 +1785,17 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2:
once "^1.3.0"
path-is-absolute "^1.0.0"
-globals@^9.14.0, globals@^9.18.0:
+global-dirs@^0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445"
+ dependencies:
+ ini "^1.3.4"
+
+globals@^11.0.1, globals@^11.1.0:
+ version "11.3.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-11.3.0.tgz#e04fdb7b9796d8adac9c8f64c14837b2313378b0"
+
+globals@^9.18.0:
version "9.18.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
@@ -1443,25 +1810,42 @@ globby@^5.0.0:
pify "^2.0.0"
pinkie-promise "^2.0.0"
-got@^3.2.0:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/got/-/got-3.3.1.tgz#e5d0ed4af55fc3eef4d56007769d98192bcb2eca"
+got@^6.7.1:
+ version "6.7.1"
+ resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0"
dependencies:
- duplexify "^3.2.0"
- infinity-agent "^2.0.0"
+ create-error-class "^3.0.0"
+ duplexer3 "^0.1.4"
+ get-stream "^3.0.0"
is-redirect "^1.0.0"
+ is-retry-allowed "^1.0.0"
is-stream "^1.0.0"
lowercase-keys "^1.0.0"
- nested-error-stacks "^1.0.0"
- object-assign "^3.0.0"
- prepend-http "^1.0.0"
- read-all-stream "^3.0.0"
- timed-out "^2.0.0"
+ safe-buffer "^5.0.1"
+ timed-out "^4.0.0"
+ unzip-response "^2.0.1"
+ url-parse-lax "^1.0.0"
-graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4:
+graceful-fs@^4.1.11, graceful-fs@^4.1.2:
version "4.1.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
+graphql-anywhere@^4.1.3:
+ version "4.1.3"
+ resolved "https://registry.yarnpkg.com/graphql-anywhere/-/graphql-anywhere-4.1.3.tgz#ddd857d45d1538f55e8364c6c7a9016817a5ea92"
+ dependencies:
+ apollo-utilities "^1.0.6"
+
+graphql-tag@^2.5.0:
+ version "2.7.3"
+ resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.7.3.tgz#5040112a1b4623285ef017c252276f0dea37f03f"
+
+graphql@^0.12.3:
+ version "0.12.3"
+ resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.12.3.tgz#11668458bbe28261c0dcb6e265f515ba79f6ce07"
+ dependencies:
+ iterall "1.1.3"
+
har-schema@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
@@ -1479,11 +1863,48 @@ has-ansi@^2.0.0:
dependencies:
ansi-regex "^2.0.0"
+has-flag@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
+
has-unicode@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
-hawk@~3.1.3:
+has-value@^0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
+ dependencies:
+ get-value "^2.0.3"
+ has-values "^0.1.4"
+ isobject "^2.0.0"
+
+has-value@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
+ dependencies:
+ get-value "^2.0.6"
+ has-values "^1.0.0"
+ isobject "^3.0.0"
+
+has-values@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
+
+has-values@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
+ dependencies:
+ is-number "^3.0.0"
+ kind-of "^4.0.0"
+
+has@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
+ dependencies:
+ function-bind "^1.0.2"
+
+hawk@3.1.3, hawk@~3.1.3:
version "3.1.3"
resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4"
dependencies:
@@ -1503,6 +1924,10 @@ home-or-tmp@^2.0.0:
os-homedir "^1.0.0"
os-tmpdir "^1.0.1"
+hosted-git-info@^2.1.4:
+ version "2.5.0"
+ resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c"
+
http-signature@~1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
@@ -1511,22 +1936,26 @@ http-signature@~1.1.0:
jsprim "^1.2.2"
sshpk "^1.7.0"
-ignore-by-default@^1.0.0:
+iconv-lite@^0.4.17:
+ version "0.4.19"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
+
+ignore-by-default@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09"
-ignore@^3.2.0:
- version "3.3.4"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.4.tgz#85ab6d0a9ca8b27b31604c09efe1c14dc21ab872"
+ignore@^3.3.3, ignore@^3.3.6:
+ version "3.3.7"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021"
+
+import-lazy@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43"
imurmurhash@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
-infinity-agent@^2.0.0:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/infinity-agent/-/infinity-agent-2.0.3.tgz#45e0e2ff7a9eb030b27d62b74b3744b7a7ac4216"
-
inflight@^1.0.4:
version "1.0.6"
resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
@@ -1534,42 +1963,55 @@ 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.0.3:
+inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-ini@~1.3.0:
- version "1.3.4"
- resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e"
+ini@^1.3.4, ini@~1.3.0:
+ version "1.3.5"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
-inquirer@^0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e"
+inquirer@^3.0.6:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9"
dependencies:
- ansi-escapes "^1.1.0"
- ansi-regex "^2.0.0"
- chalk "^1.0.0"
- cli-cursor "^1.0.1"
+ ansi-escapes "^3.0.0"
+ chalk "^2.0.0"
+ cli-cursor "^2.1.0"
cli-width "^2.0.0"
- figures "^1.3.5"
+ external-editor "^2.0.4"
+ figures "^2.0.0"
lodash "^4.3.0"
- readline2 "^1.0.1"
- run-async "^0.1.0"
- rx-lite "^3.1.2"
- string-width "^1.0.1"
- strip-ansi "^3.0.0"
+ mute-stream "0.0.7"
+ run-async "^2.2.0"
+ rx-lite "^4.0.8"
+ rx-lite-aggregates "^4.0.8"
+ string-width "^2.1.0"
+ strip-ansi "^4.0.0"
through "^2.3.6"
-interpret@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90"
-
-invariant@^2.2.2:
+invariant@^2.2.0, invariant@^2.2.2:
version "2.2.2"
resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360"
dependencies:
loose-envify "^1.0.0"
+is-accessor-descriptor@^0.1.6:
+ version "0.1.6"
+ resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
+ dependencies:
+ kind-of "^3.0.2"
+
+is-accessor-descriptor@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656"
+ dependencies:
+ kind-of "^6.0.0"
+
+is-arrayish@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+
is-binary-path@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
@@ -1577,8 +2019,42 @@ is-binary-path@^1.0.0:
binary-extensions "^1.0.0"
is-buffer@^1.1.5:
- version "1.1.5"
- resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc"
+ version "1.1.6"
+ resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
+
+is-builtin-module@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
+ dependencies:
+ builtin-modules "^1.0.0"
+
+is-data-descriptor@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
+ dependencies:
+ kind-of "^3.0.2"
+
+is-data-descriptor@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7"
+ dependencies:
+ kind-of "^6.0.0"
+
+is-descriptor@^0.1.0:
+ version "0.1.6"
+ resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
+ dependencies:
+ is-accessor-descriptor "^0.1.6"
+ is-data-descriptor "^0.1.4"
+ kind-of "^5.0.0"
+
+is-descriptor@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec"
+ dependencies:
+ is-accessor-descriptor "^1.0.0"
+ is-data-descriptor "^1.0.0"
+ kind-of "^6.0.2"
is-dotfile@^1.0.0:
version "1.0.3"
@@ -1590,14 +2066,24 @@ is-equal-shallow@^0.1.3:
dependencies:
is-primitive "^2.0.0"
-is-extendable@^0.1.1:
+is-extendable@^0.1.0, is-extendable@^0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
+is-extendable@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
+ dependencies:
+ is-plain-object "^2.0.4"
+
is-extglob@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
+is-extglob@^2.1.0, is-extglob@^2.1.1:
+ 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"
resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
@@ -1620,19 +2106,29 @@ is-glob@^2.0.0, is-glob@^2.0.1:
dependencies:
is-extglob "^1.0.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:
+ is-extglob "^2.1.0"
+
+is-glob@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0"
+ dependencies:
+ is-extglob "^2.1.1"
+
+is-installed-globally@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80"
+ dependencies:
+ global-dirs "^0.1.0"
+ is-path-inside "^1.0.0"
+
is-module@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
-is-my-json-valid@^2.10.0:
- version "2.16.1"
- resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11"
- dependencies:
- generate-function "^2.0.0"
- generate-object-property "^1.1.0"
- jsonpointer "^4.0.0"
- xtend "^4.0.0"
-
is-npm@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4"
@@ -1649,6 +2145,16 @@ is-number@^3.0.0:
dependencies:
kind-of "^3.0.2"
+is-obj@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
+
+is-odd@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-1.0.0.tgz#3b8a932eb028b3775c39bb09e91767accdb69088"
+ dependencies:
+ is-number "^3.0.0"
+
is-path-cwd@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
@@ -1660,11 +2166,17 @@ is-path-in-cwd@^1.0.0:
is-path-inside "^1.0.0"
is-path-inside@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f"
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036"
dependencies:
path-is-inside "^1.0.1"
+is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
+ dependencies:
+ isobject "^3.0.1"
+
is-posix-bracket@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
@@ -1673,21 +2185,23 @@ 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-resolvable@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62"
- dependencies:
- tryit "^1.0.1"
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88"
-is-stream@^1.0.0:
+is-retry-allowed@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34"
+
+is-stream@^1.0.0, is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
@@ -1699,23 +2213,35 @@ isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+isexe@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
+
isobject@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
dependencies:
isarray "1.0.0"
+isobject@^3.0.0, isobject@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
+
isstream@~0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
+iterall@1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.1.3.tgz#1cbbff96204056dde6656e2ed2e2226d0e6d72c9"
+
js-tokens@^3.0.0, js-tokens@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
-js-yaml@^3.5.1:
- version "3.9.1"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.9.1.tgz#08775cebdfdd359209f0d2acd383c8f86a6904a0"
+js-yaml@^3.9.1:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc"
dependencies:
argparse "^1.0.7"
esprima "^4.0.0"
@@ -1732,11 +2258,19 @@ jsesc@~0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
+json-schema-traverse@^0.3.0:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
+
json-schema@0.2.3:
version "0.2.3"
resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
-json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1:
+json-stable-stringify-without-jsonify@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
+
+json-stable-stringify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
dependencies:
@@ -1754,10 +2288,6 @@ jsonify@~0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
-jsonpointer@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
-
jsprim@^1.2.2:
version "1.4.1"
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
@@ -1767,7 +2297,7 @@ jsprim@^1.2.2:
json-schema "0.2.3"
verror "1.10.0"
-kind-of@^3.0.2:
+kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
version "3.2.2"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
dependencies:
@@ -1779,15 +2309,25 @@ kind-of@^4.0.0:
dependencies:
is-buffer "^1.1.5"
-latest-version@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-1.0.1.tgz#72cfc46e3e8d1be651e1ebb54ea9f6ea96f374bb"
- dependencies:
- package-json "^1.0.0"
+kind-of@^5.0.0, kind-of@^5.0.2:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
-lazy-cache@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
+kind-of@^6.0.0, kind-of@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
+
+latest-version@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15"
+ dependencies:
+ package-json "^4.0.0"
+
+lazy-cache@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264"
+ dependencies:
+ set-getter "^0.1.0"
levn@^0.3.0, levn@~0.3.0:
version "0.3.0"
@@ -1796,91 +2336,45 @@ levn@^0.3.0, levn@~0.3.0:
prelude-ls "~1.1.2"
type-check "~0.3.2"
-lodash._baseassign@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e"
+load-json-file@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
dependencies:
- lodash._basecopy "^3.0.0"
- lodash.keys "^3.0.0"
+ graceful-fs "^4.1.2"
+ parse-json "^2.2.0"
+ pify "^2.0.0"
+ strip-bom "^3.0.0"
-lodash._basecopy@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36"
-
-lodash._bindcallback@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e"
-
-lodash._createassigner@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11"
+locate-path@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
dependencies:
- lodash._bindcallback "^3.0.0"
- lodash._isiterateecall "^3.0.0"
- lodash.restparam "^3.0.0"
+ p-locate "^2.0.0"
+ path-exists "^3.0.0"
-lodash._getnative@^3.0.0:
- version "3.9.1"
- resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5"
-
-lodash._isiterateecall@^3.0.0:
- version "3.0.9"
- resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c"
-
-lodash.assign@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa"
- dependencies:
- lodash._baseassign "^3.0.0"
- lodash._createassigner "^3.0.0"
- lodash.keys "^3.0.0"
+lodash.cond@^4.3.0:
+ version "4.5.2"
+ resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5"
lodash.debounce@^4.0.8:
version "4.0.8"
resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
-lodash.defaults@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c"
- dependencies:
- lodash.assign "^3.0.0"
- lodash.restparam "^3.0.0"
-
-lodash.isarguments@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a"
-
-lodash.isarray@^3.0.0:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55"
-
-lodash.keys@^3.0.0:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a"
- dependencies:
- lodash._getnative "^3.0.0"
- lodash.isarguments "^3.0.0"
- lodash.isarray "^3.0.0"
-
lodash.omit@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60"
-lodash.restparam@^3.0.0:
- version "3.6.1"
- resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805"
-
lodash.throttle@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4"
-lodash@^4.0.0, lodash@^4.17.4, lodash@^4.3.0:
- version "4.17.4"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
+lodash@3.x:
+ version "3.10.1"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
-longest@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
+lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0:
+ version "4.17.5"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511"
loose-envify@^1.0.0:
version "1.3.1"
@@ -1892,17 +2386,40 @@ lowercase-keys@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
+lru-cache@^4.0.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55"
+ dependencies:
+ pseudomap "^1.0.2"
+ yallist "^2.1.2"
+
magic-string@^0.22.4:
version "0.22.4"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.22.4.tgz#31039b4e40366395618c1d6cf8193c53917475ff"
dependencies:
vlq "^0.2.1"
+make-dir@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.1.0.tgz#19b4369fe48c116f53c2af95ad102c0e39e85d51"
+ dependencies:
+ pify "^3.0.0"
+
+map-cache@^0.2.2:
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
+
map-stream@~0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194"
-micromatch@^2.1.5, micromatch@^2.3.11:
+map-visit@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
+ dependencies:
+ object-visit "^1.0.0"
+
+micromatch@^2.3.11:
version "2.3.11"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
dependencies:
@@ -1920,17 +2437,39 @@ micromatch@^2.1.5, micromatch@^2.3.11:
parse-glob "^3.0.4"
regex-cache "^0.4.2"
-mime-db@~1.29.0:
- version "1.29.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.29.0.tgz#48d26d235589651704ac5916ca06001914266878"
+micromatch@^3.1.4:
+ version "3.1.5"
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.5.tgz#d05e168c206472dfbca985bfef4f57797b4cd4ba"
+ dependencies:
+ arr-diff "^4.0.0"
+ array-unique "^0.3.2"
+ braces "^2.3.0"
+ define-property "^1.0.0"
+ extend-shallow "^2.0.1"
+ extglob "^2.0.2"
+ fragment-cache "^0.2.1"
+ kind-of "^6.0.0"
+ nanomatch "^1.2.5"
+ object.pick "^1.3.0"
+ regex-not "^1.0.0"
+ snapdragon "^0.8.1"
+ to-regex "^3.0.1"
+
+mime-db@~1.30.0:
+ version "1.30.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01"
mime-types@^2.1.12, mime-types@~2.1.7:
- version "2.1.16"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.16.tgz#2b858a52e5ecd516db897ac2be87487830698e23"
+ version "2.1.17"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a"
dependencies:
- mime-db "~1.29.0"
+ mime-db "~1.30.0"
-minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4:
+mimic-fn@^1.0.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
+
+minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
dependencies:
@@ -1944,7 +2483,14 @@ minimist@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1:
+mixin-deep@^1.2.0:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe"
+ dependencies:
+ for-in "^1.0.2"
+ is-extendable "^1.0.1"
+
+"mkdirp@>=0.5 0", mkdirp@^0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
dependencies:
@@ -1954,52 +2500,63 @@ ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
-mute-stream@0.0.5:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0"
+mute-stream@0.0.7:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
nan@^2.3.0:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45"
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a"
+
+nanomatch@^1.2.5:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.7.tgz#53cd4aa109ff68b7f869591fdc9d10daeeea3e79"
+ dependencies:
+ arr-diff "^4.0.0"
+ array-unique "^0.3.2"
+ define-property "^1.0.0"
+ extend-shallow "^2.0.1"
+ fragment-cache "^0.2.1"
+ is-odd "^1.0.0"
+ kind-of "^5.0.2"
+ object.pick "^1.3.0"
+ regex-not "^1.0.0"
+ snapdragon "^0.8.1"
+ to-regex "^3.0.1"
natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
-nested-error-stacks@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-1.0.2.tgz#19f619591519f096769a5ba9a86e6eeec823c3cf"
- dependencies:
- inherits "~2.0.1"
-
-node-pre-gyp@^0.6.36:
- version "0.6.36"
- resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786"
+node-pre-gyp@^0.6.39:
+ version "0.6.39"
+ resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649"
dependencies:
+ detect-libc "^1.0.2"
+ hawk "3.1.3"
mkdirp "^0.5.1"
nopt "^4.0.1"
npmlog "^4.0.2"
rc "^1.1.7"
- request "^2.81.0"
+ request "2.81.0"
rimraf "^2.6.1"
semver "^5.3.0"
tar "^2.2.1"
tar-pack "^3.4.0"
-nodemon@^1.3.8:
- version "1.11.0"
- resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-1.11.0.tgz#226c562bd2a7b13d3d7518b49ad4828a3623d06c"
+nodemon@^1.14.12:
+ version "1.14.12"
+ resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-1.14.12.tgz#fe059424b15ebdb107696287a558d9cf53a63999"
dependencies:
- chokidar "^1.4.3"
- debug "^2.2.0"
- es6-promise "^3.0.2"
- ignore-by-default "^1.0.0"
- lodash.defaults "^3.1.2"
- minimatch "^3.0.0"
- ps-tree "^1.0.1"
- touch "1.0.0"
- undefsafe "0.0.3"
- update-notifier "0.5.0"
+ chokidar "^2.0.0"
+ debug "^3.1.0"
+ ignore-by-default "^1.0.1"
+ minimatch "^3.0.4"
+ pstree.remy "^1.1.0"
+ semver "^5.4.1"
+ touch "^3.1.0"
+ undefsafe "^2.0.1"
+ update-notifier "^2.3.0"
nopt@^4.0.1:
version "4.0.1"
@@ -2014,18 +2571,26 @@ nopt@~1.0.10:
dependencies:
abbrev "1"
-normalize-path@^2.0.0, normalize-path@^2.0.1:
+normalize-package-data@^2.3.2:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
+ dependencies:
+ hosted-git-info "^2.1.4"
+ is-builtin-module "^1.0.0"
+ semver "2 || 3 || 4 || 5"
+ validate-npm-package-license "^3.0.1"
+
+normalize-path@^2.0.1, normalize-path@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
dependencies:
remove-trailing-separator "^1.0.1"
-npm-watch@^0.1.6:
- version "0.1.9"
- resolved "https://registry.yarnpkg.com/npm-watch/-/npm-watch-0.1.9.tgz#30991072ce8cee0d72c0c75ac648c14a039b9902"
+npm-run-path@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
dependencies:
- nodemon "^1.3.8"
- through2 "^2.0.0"
+ path-key "^2.0.0"
npmlog@^4.0.2:
version "4.1.2"
@@ -2044,14 +2609,24 @@ oauth-sign@~0.8.1:
version "0.8.2"
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
-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.1, object-assign@^4.1.0:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
+object-copy@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
+ dependencies:
+ copy-descriptor "^0.1.0"
+ define-property "^0.2.5"
+ kind-of "^3.0.3"
+
+object-visit@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
+ dependencies:
+ isobject "^3.0.0"
+
object.omit@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
@@ -2059,15 +2634,23 @@ object.omit@^2.0.0:
for-own "^0.1.4"
is-extendable "^0.1.1"
-once@^1.3.0, once@^1.3.3, once@^1.4.0:
+object.pick@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
+ dependencies:
+ isobject "^3.0.1"
+
+once@^1.3.0, once@^1.3.3:
version "1.4.0"
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
dependencies:
wrappy "1"
-onetime@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789"
+onetime@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
+ dependencies:
+ mimic-fn "^1.0.0"
optionator@^0.8.2:
version "0.8.2"
@@ -2084,31 +2667,45 @@ os-homedir@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1:
+os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
-osenv@^0.1.0, osenv@^0.1.4:
+osenv@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644"
dependencies:
os-homedir "^1.0.0"
os-tmpdir "^1.0.0"
-output-file-sync@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76"
- dependencies:
- graceful-fs "^4.1.4"
- mkdirp "^0.5.1"
- object-assign "^4.1.0"
+p-finally@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
-package-json@^1.0.0:
+p-limit@^1.1.0:
version "1.2.0"
- resolved "https://registry.yarnpkg.com/package-json/-/package-json-1.2.0.tgz#c8ecac094227cdf76a316874ed05e27cc939a0e0"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c"
dependencies:
- got "^3.2.0"
- registry-url "^3.0.0"
+ p-try "^1.0.0"
+
+p-locate@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
+ dependencies:
+ p-limit "^1.1.0"
+
+p-try@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
+
+package-json@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed"
+ dependencies:
+ got "^6.7.1"
+ registry-auth-token "^3.0.1"
+ registry-url "^3.0.3"
+ semver "^5.1.0"
parse-glob@^3.0.4:
version "3.0.4"
@@ -2119,18 +2716,52 @@ parse-glob@^3.0.4:
is-extglob "^1.0.0"
is-glob "^2.0.0"
+parse-json@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
+ dependencies:
+ error-ex "^1.2.0"
+
+pascalcase@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
+
+path-dirname@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
+
+path-exists@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
+ dependencies:
+ pinkie-promise "^2.0.0"
+
+path-exists@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
+
path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
-path-is-inside@^1.0.1:
+path-is-inside@^1.0.1, path-is-inside@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
+path-key@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
+
path-parse@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
+path-type@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
+ dependencies:
+ pify "^2.0.0"
+
pause-stream@0.0.11:
version "0.0.11"
resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445"
@@ -2145,6 +2776,10 @@ pify@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
+pify@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
+
pinkie-promise@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
@@ -2155,15 +2790,25 @@ pinkie@^2.0.0:
version "2.0.4"
resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
-pluralize@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45"
+pkg-dir@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
+ dependencies:
+ find-up "^1.0.0"
+
+pluralize@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777"
+
+posix-character-classes@^0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
prelude-ls@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
-prepend-http@^1.0.0:
+prepend-http@^1.0.1:
version "1.0.4"
resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"
@@ -2172,23 +2817,33 @@ preserve@^0.2.0:
resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
private@^0.1.6, private@^0.1.7:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1"
+ version "0.1.8"
+ resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
-process-nextick-args@~1.0.6:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
+process-nextick-args@~2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
-progress@^1.1.8:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
+progress@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f"
-ps-tree@^1.0.1:
+ps-tree@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.1.0.tgz#b421b24140d6203f1ed3c76996b4427b08e8c014"
dependencies:
event-stream "~3.3.0"
+pseudomap@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
+
+pstree.remy@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.0.tgz#f2af27265bd3e5b32bbfcc10e80bac55ba78688b"
+ dependencies:
+ ps-tree "^1.1.0"
+
punycode@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
@@ -2204,30 +2859,38 @@ randomatic@^1.1.3:
is-number "^3.0.0"
kind-of "^4.0.0"
-rc@^1.0.1, rc@^1.1.7:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95"
+rc@^1.0.1, rc@^1.1.6, rc@^1.1.7:
+ version "1.2.5"
+ resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd"
dependencies:
deep-extend "~0.4.0"
ini "~1.3.0"
minimist "^1.2.0"
strip-json-comments "~2.0.1"
-read-all-stream@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/read-all-stream/-/read-all-stream-3.1.0.tgz#35c3e177f2078ef789ee4bfafa4373074eaef4fa"
+read-pkg-up@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
dependencies:
- pinkie-promise "^2.0.0"
- readable-stream "^2.0.0"
+ find-up "^2.0.0"
+ read-pkg "^2.0.0"
-readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c"
+read-pkg@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8"
+ dependencies:
+ load-json-file "^2.0.0"
+ normalize-package-data "^2.3.2"
+ path-type "^2.0.0"
+
+readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.2.2:
+ version "2.3.4"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071"
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.3"
isarray "~1.0.0"
- process-nextick-args "~1.0.6"
+ process-nextick-args "~2.0.0"
safe-buffer "~5.1.1"
string_decoder "~1.0.3"
util-deprecate "~1.0.1"
@@ -2241,31 +2904,13 @@ readdirp@^2.0.0:
readable-stream "^2.0.2"
set-immediate-shim "^1.0.1"
-readline2@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35"
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- mute-stream "0.0.5"
-
-rechoir@^0.6.2:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
- dependencies:
- resolve "^1.1.6"
-
regenerate@^1.2.1:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260"
-
-regenerator-runtime@^0.10.5:
- version "0.10.5"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658"
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f"
regenerator-runtime@^0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1"
+ version "0.11.1"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
regenerator-transform@^0.10.0:
version "0.10.1"
@@ -2276,11 +2921,16 @@ regenerator-transform@^0.10.0:
private "^0.1.6"
regex-cache@^0.4.2:
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145"
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd"
dependencies:
is-equal-shallow "^0.1.3"
- is-primitive "^2.0.0"
+
+regex-not@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.0.tgz#42f83e39771622df826b02af176525d6a5f157f9"
+ dependencies:
+ extend-shallow "^2.0.1"
regexpu-core@^2.0.0:
version "2.0.0"
@@ -2290,7 +2940,14 @@ regexpu-core@^2.0.0:
regjsgen "^0.2.0"
regjsparser "^0.1.4"
-registry-url@^3.0.0:
+registry-auth-token@^3.0.1:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.2.tgz#851fd49038eecb586911115af845260eec983f20"
+ dependencies:
+ rc "^1.1.6"
+ safe-buffer "^5.0.1"
+
+registry-url@^3.0.3:
version "3.1.0"
resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942"
dependencies:
@@ -2314,23 +2971,17 @@ 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.2, repeat-string@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
-repeating@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-1.1.3.tgz#3d4114218877537494f97f77f9785fab810fa4ac"
- dependencies:
- is-finite "^1.0.0"
-
repeating@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
dependencies:
is-finite "^1.0.0"
-request@^2.81.0:
+request@2.81.0:
version "2.81.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
dependencies:
@@ -2357,7 +3008,7 @@ request@^2.81.0:
tunnel-agent "^0.6.0"
uuid "^3.0.0"
-require-uncached@^1.0.2:
+require-uncached@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
dependencies:
@@ -2368,68 +3019,66 @@ resolve-from@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
-resolve@1.1.7:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
+resolve-url@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
-resolve@^1.1.6, resolve@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86"
+resolve@^1.1.6, resolve@^1.3.3, resolve@^1.4.0, resolve@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36"
dependencies:
path-parse "^1.0.5"
-restore-cursor@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541"
+restore-cursor@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
dependencies:
- exit-hook "^1.0.0"
- onetime "^1.0.0"
-
-right-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
- dependencies:
- align-text "^0.1.1"
+ onetime "^2.0.0"
+ signal-exit "^3.0.2"
rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1:
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d"
+ version "2.6.2"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
dependencies:
glob "^7.0.5"
-rollup-plugin-babel@^2.7.1:
- version "2.7.1"
- resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-2.7.1.tgz#16528197b0f938a1536f44683c7a93d573182f57"
+rollup-plugin-babel@^3.0.2:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-3.0.3.tgz#63adedc863130327512a4a9006efc2241c5b7c15"
dependencies:
- babel-core "6"
- babel-plugin-transform-es2015-classes "^6.9.0"
- object-assign "^4.1.0"
rollup-pluginutils "^1.5.0"
-rollup-plugin-commonjs@^8.0.2:
- version "8.2.0"
- resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.2.0.tgz#d7b16ebb9a36b754df888fc552dfa775c1174f9d"
+rollup-plugin-commonjs@^8.2.6:
+ version "8.3.0"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.3.0.tgz#91b4ba18f340951e39ed7b1901f377a80ab3f9c3"
dependencies:
- acorn "^5.1.1"
+ acorn "^5.2.1"
estree-walker "^0.5.0"
magic-string "^0.22.4"
resolve "^1.4.0"
rollup-pluginutils "^2.0.1"
rollup-plugin-node-resolve@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.0.0.tgz#8b897c4c3030d5001277b0514b25d2ca09683ee0"
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.0.2.tgz#38babc12fd404cc2ba1ff68648fe43fa3ffee6b0"
dependencies:
- browser-resolve "^1.11.0"
builtin-modules "^1.1.0"
is-module "^1.0.0"
resolve "^1.1.6"
-rollup-plugin-uglify@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/rollup-plugin-uglify/-/rollup-plugin-uglify-1.0.2.tgz#d4aa6f5df13522eae1ba17780c7c4c7096038359"
+rollup-plugin-replace@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-replace/-/rollup-plugin-replace-2.0.0.tgz#19074089c8ed57184b8cc64e967a03d095119277"
dependencies:
- uglify-js "^2.6.1"
+ magic-string "^0.22.4"
+ minimatch "^3.0.2"
+ rollup-pluginutils "^2.0.1"
+
+rollup-plugin-uglify@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-uglify/-/rollup-plugin-uglify-3.0.0.tgz#a34eca24617709c6bf1778e9653baafa06099b86"
+ dependencies:
+ uglify-es "^3.3.7"
rollup-pluginutils@^1.5.0:
version "1.5.2"
@@ -2445,21 +3094,25 @@ rollup-pluginutils@^2.0.1:
estree-walker "^0.3.0"
micromatch "^2.3.11"
-rollup@^0.41.6:
- version "0.41.6"
- resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.41.6.tgz#e0d05497877a398c104d816d2733a718a7a94e2a"
- dependencies:
- source-map-support "^0.4.0"
+rollup@^0.55.3:
+ version "0.55.5"
+ resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.55.5.tgz#2f88c300f7cf24b5ec2dca8a6aba73b04e087e93"
-run-async@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389"
+run-async@^2.2.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
dependencies:
- once "^1.3.0"
+ is-promise "^2.1.0"
-rx-lite@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"
+rx-lite-aggregates@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be"
+ dependencies:
+ rx-lite "*"
+
+rx-lite@*, rx-lite@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.1"
@@ -2471,27 +3124,53 @@ semver-diff@^2.0.0:
dependencies:
semver "^5.0.3"
-semver@^5.0.3, semver@^5.3.0:
- version "5.4.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
+"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1:
+ version "5.5.0"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
set-blocking@~2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
+set-getter@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376"
+ dependencies:
+ to-object-path "^0.3.0"
+
set-immediate-shim@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
-shelljs@^0.7.5:
- version "0.7.8"
- resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.8.tgz#decbcf874b0d1e5fb72e14b164a9683048e9acb3"
+set-value@^0.4.3:
+ version "0.4.3"
+ resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1"
dependencies:
- glob "^7.0.0"
- interpret "^1.0.0"
- rechoir "^0.6.2"
+ extend-shallow "^2.0.1"
+ is-extendable "^0.1.1"
+ is-plain-object "^2.0.1"
+ to-object-path "^0.3.0"
-signal-exit@^3.0.0:
+set-value@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274"
+ dependencies:
+ extend-shallow "^2.0.1"
+ is-extendable "^0.1.1"
+ is-plain-object "^2.0.3"
+ split-string "^3.0.1"
+
+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"
+
+signal-exit@^3.0.0, signal-exit@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
@@ -2499,13 +3178,38 @@ slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
-slice-ansi@0.0.4:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35"
+slice-ansi@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
+ dependencies:
+ is-fullwidth-code-point "^2.0.0"
-slide@^1.1.5:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707"
+snapdragon-node@^2.0.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
+ dependencies:
+ define-property "^1.0.0"
+ isobject "^3.0.0"
+ snapdragon-util "^3.0.1"
+
+snapdragon-util@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
+ dependencies:
+ kind-of "^3.2.0"
+
+snapdragon@^0.8.1:
+ version "0.8.1"
+ resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.1.tgz#e12b5487faded3e3dea0ac91e9400bf75b401370"
+ dependencies:
+ base "^0.11.1"
+ debug "^2.2.0"
+ define-property "^0.2.5"
+ extend-shallow "^2.0.1"
+ map-cache "^0.2.2"
+ source-map "^0.5.6"
+ source-map-resolve "^0.5.0"
+ use "^2.0.0"
sntp@1.x.x:
version "1.0.9"
@@ -2513,16 +3217,54 @@ sntp@1.x.x:
dependencies:
hoek "2.x.x"
-source-map-support@^0.4.0, source-map-support@^0.4.15:
- version "0.4.16"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.16.tgz#16fecf98212467d017d586a2af68d628b9421cd8"
+source-map-resolve@^0.5.0:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.1.tgz#7ad0f593f2281598e854df80f19aae4b92d7a11a"
+ dependencies:
+ atob "^2.0.0"
+ decode-uri-component "^0.2.0"
+ resolve-url "^0.2.1"
+ source-map-url "^0.4.0"
+ urix "^0.1.0"
+
+source-map-support@^0.4.15:
+ version "0.4.18"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
dependencies:
source-map "^0.5.6"
-source-map@^0.5.6, source-map@~0.5.1:
+source-map-url@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
+
+source-map@^0.5.6, source-map@^0.5.7:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
+source-map@~0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+
+spdx-correct@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40"
+ dependencies:
+ spdx-license-ids "^1.0.2"
+
+spdx-expression-parse@~1.0.0:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c"
+
+spdx-license-ids@^1.0.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
+
+split-string@^3.0.1, split-string@^3.0.2:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
+ dependencies:
+ extend-shallow "^3.0.0"
+
split@0.3:
version "0.3.3"
resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f"
@@ -2547,22 +3289,19 @@ sshpk@^1.7.0:
jsbn "~0.1.0"
tweetnacl "~0.14.0"
+static-extend@^0.1.1:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
+ dependencies:
+ define-property "^0.2.5"
+ object-copy "^0.1.0"
+
stream-combiner@~0.0.4:
version "0.0.4"
resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14"
dependencies:
duplexer "~0.1.1"
-stream-shift@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952"
-
-string-length@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/string-length/-/string-length-1.0.1.tgz#56970fb1c38558e9e70b728bf3de269ac45adfac"
- dependencies:
- strip-ansi "^3.0.0"
-
string-width@^1.0.1, string-width@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
@@ -2571,7 +3310,7 @@ string-width@^1.0.1, string-width@^1.0.2:
is-fullwidth-code-point "^1.0.0"
strip-ansi "^3.0.0"
-string-width@^2.0.0:
+string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
dependencies:
@@ -2604,6 +3343,10 @@ strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
+strip-eof@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
+
strip-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"
@@ -2612,20 +3355,30 @@ supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-table@^3.7.8:
- version "3.8.3"
- resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f"
+supports-color@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.2.0.tgz#b0d5333b1184dd3666cbe5aa0b45c5ac7ac17a4a"
dependencies:
- ajv "^4.7.0"
- ajv-keywords "^1.0.0"
- chalk "^1.1.1"
- lodash "^4.0.0"
- slice-ansi "0.0.4"
- string-width "^2.0.0"
+ has-flag "^3.0.0"
+
+symbol-observable@^1.0.2:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
+
+table@^4.0.1:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36"
+ dependencies:
+ ajv "^5.2.3"
+ ajv-keywords "^2.1.0"
+ chalk "^2.1.0"
+ lodash "^4.17.4"
+ slice-ansi "1.0.0"
+ string-width "^2.1.1"
tar-pack@^3.4.0:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984"
+ version "3.4.1"
+ resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f"
dependencies:
debug "^2.2.0"
fstream "^1.0.10"
@@ -2644,38 +3397,68 @@ tar@^2.2.1:
fstream "^1.0.2"
inherits "2"
+term-size@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69"
+ dependencies:
+ execa "^0.7.0"
+
text-table@~0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
-through2@^2.0.0:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be"
- dependencies:
- readable-stream "^2.1.5"
- xtend "~4.0.1"
-
through@2, through@^2.3.6, through@~2.3, through@~2.3.1:
version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
-timed-out@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-2.0.0.tgz#f38b0ae81d3747d628001f41dafc652ace671c0a"
+timed-out@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"
+
+tmp@^0.0.33:
+ version "0.0.33"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
+ dependencies:
+ os-tmpdir "~1.0.2"
to-fast-properties@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
-touch@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/touch/-/touch-1.0.0.tgz#449cbe2dbae5a8c8038e30d71fa0ff464947c4de"
+to-fast-properties@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
+
+to-object-path@^0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
+ dependencies:
+ kind-of "^3.0.2"
+
+to-regex-range@^2.1.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
+ dependencies:
+ is-number "^3.0.0"
+ repeat-string "^1.6.1"
+
+to-regex@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.1.tgz#15358bee4a2c83bd76377ba1dc049d0f18837aae"
+ dependencies:
+ define-property "^0.2.5"
+ extend-shallow "^2.0.1"
+ regex-not "^1.0.0"
+
+touch@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b"
dependencies:
nopt "~1.0.10"
tough-cookie@~2.3.0:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a"
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561"
dependencies:
punycode "^1.4.1"
@@ -2683,10 +3466,6 @@ trim-right@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
-tryit@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb"
-
tunnel-agent@^0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
@@ -2707,75 +3486,110 @@ typedarray@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
-uglify-js-harmony@^2.7.7:
- version "2.7.7"
- resolved "https://registry.yarnpkg.com/uglify-js-harmony/-/uglify-js-harmony-2.7.7.tgz#6a43993211fa5da2f1e58416d61f329327eef335"
- dependencies:
- async "~0.2.6"
- source-map "~0.5.1"
- uglify-to-browserify "~1.0.0"
- yargs "~3.10.0"
+typescript@^2.6.2:
+ version "2.7.1"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.7.1.tgz#bb3682c2c791ac90e7c6210b26478a8da085c359"
-uglify-js@^2.6.1:
- version "2.8.29"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
+uglify-es@^3.1.6, uglify-es@^3.3.7:
+ version "3.3.10"
+ resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.10.tgz#8b0b7992cebe20edc26de1bf325cef797b8f3fa5"
dependencies:
- source-map "~0.5.1"
- yargs "~3.10.0"
- optionalDependencies:
- uglify-to-browserify "~1.0.0"
-
-uglify-to-browserify@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
+ commander "~2.14.1"
+ source-map "~0.6.1"
uid-number@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
-undefsafe@0.0.3:
- version "0.0.3"
- resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-0.0.3.tgz#ecca3a03e56b9af17385baac812ac83b994a962f"
-
-update-notifier@0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-0.5.0.tgz#07b5dc2066b3627ab3b4f530130f7eddda07a4cc"
+undefsafe@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.1.tgz#03b2f2a16c94556e14b2edef326cd66aaf82707a"
dependencies:
- chalk "^1.0.0"
- configstore "^1.0.0"
+ debug "^2.2.0"
+
+underscore.string@2.3.x:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.3.3.tgz#71c08bf6b428b1133f37e78fa3a21c82f7329b0d"
+
+union-value@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4"
+ dependencies:
+ arr-union "^3.1.0"
+ get-value "^2.0.6"
+ is-extendable "^0.1.1"
+ set-value "^0.4.3"
+
+unique-string@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a"
+ dependencies:
+ crypto-random-string "^1.0.0"
+
+unset-value@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
+ dependencies:
+ has-value "^0.3.1"
+ isobject "^3.0.0"
+
+unzip-response@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97"
+
+upath@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/upath/-/upath-1.0.0.tgz#b4706b9461ca8473adf89133d235689ca17f3656"
+ dependencies:
+ lodash "3.x"
+ underscore.string "2.3.x"
+
+update-notifier@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.3.0.tgz#4e8827a6bb915140ab093559d7014e3ebb837451"
+ dependencies:
+ boxen "^1.2.1"
+ chalk "^2.0.1"
+ configstore "^3.0.0"
+ import-lazy "^2.1.0"
+ is-installed-globally "^0.1.0"
is-npm "^1.0.0"
- latest-version "^1.0.0"
- repeating "^1.1.2"
+ latest-version "^3.0.0"
semver-diff "^2.0.0"
- string-length "^1.0.0"
+ xdg-basedir "^3.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"
+urix@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
-user-home@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f"
+url-parse-lax@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73"
dependencies:
- os-homedir "^1.0.0"
+ prepend-http "^1.0.1"
+
+use@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/use/-/use-2.0.2.tgz#ae28a0d72f93bf22422a18a2e379993112dec8e8"
+ dependencies:
+ define-property "^0.2.5"
+ isobject "^3.0.0"
+ lazy-cache "^2.0.2"
util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
-uuid@^2.0.1:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"
-
uuid@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14"
-v8flags@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4"
+validate-npm-package-license@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc"
dependencies:
- user-home "^1.1.1"
+ spdx-correct "~1.0.0"
+ spdx-expression-parse "~1.0.0"
verror@1.10.0:
version "1.10.0"
@@ -2786,8 +3600,18 @@ verror@1.10.0:
extsprintf "^1.2.0"
vlq@^0.2.1:
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.2.tgz#e316d5257b40b86bb43cb8d5fea5d7f54d6b0ca1"
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26"
+
+vue@^2.5.9:
+ version "2.5.13"
+ resolved "https://registry.yarnpkg.com/vue/-/vue-2.5.13.tgz#95bd31e20efcf7a7f39239c9aa6787ce8cf578e1"
+
+which@^1.2.9:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a"
+ dependencies:
+ isexe "^2.0.0"
wide-align@^1.1.0:
version "1.1.2"
@@ -2795,13 +3619,11 @@ wide-align@^1.1.0:
dependencies:
string-width "^1.0.2"
-window-size@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
-
-wordwrap@0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
+widest-line@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.0.tgz#0142a4e8a243f8882c0233aa0e0281aa76152273"
+ dependencies:
+ string-width "^2.1.1"
wordwrap@~1.0.0:
version "1.0.0"
@@ -2811,13 +3633,13 @@ wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
-write-file-atomic@^1.1.2:
- version "1.3.4"
- resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f"
+write-file-atomic@^2.0.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab"
dependencies:
graceful-fs "^4.1.11"
imurmurhash "^0.1.4"
- slide "^1.1.5"
+ signal-exit "^3.0.2"
write@^0.2.1:
version "0.2.1"
@@ -2825,21 +3647,14 @@ write@^0.2.1:
dependencies:
mkdirp "^0.5.1"
-xdg-basedir@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-2.0.0.tgz#edbc903cc385fc04523d966a335504b5504d1bd2"
- dependencies:
- os-homedir "^1.0.0"
+xdg-basedir@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
-xtend@^4.0.0, xtend@~4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
+yallist@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
-yargs@~3.10.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
- dependencies:
- camelcase "^1.0.2"
- cliui "^2.1.0"
- decamelize "^1.0.0"
- window-size "0.1.0"
+zen-observable@^0.7.0:
+ version "0.7.1"
+ resolved "https://registry.yarnpkg.com/zen-observable/-/zen-observable-0.7.1.tgz#f84075c0ee085594d3566e1d6454207f126411b3"