├── .gitignore ├── CHANGELOG.md ├── README.md ├── package.json ├── prettier.config.js ├── src ├── index.test.ts ├── index.ts ├── interfaces.ts ├── parse-response.ts ├── response.ts ├── so-fetch.test.ts └── so-fetch.ts ├── test-setup.ts ├── tsconfig.build.json ├── tsconfig.json ├── tslint.json └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | dist/ 2 | node_modules/ 3 | yarn-error.log 4 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # 0.4.2 2 | 3 | * Better TypeScript types for FetchOptions - [PR](https://github.com/jackfranklin/so-fetch/pull/16) 4 | 5 | # 0.4.1 6 | 7 | * Publish the `src` directory in the npm package to avoid warnings where the sourcemap in `dist` links to non-existent `src` files. 8 | 9 | # 0.4.0 10 | 11 | * Rewrote in TypeScript! Types are published, so if you're using TypeScript you should be able to take advantage of them. 12 | * **Breaking change**: rather than call `fetch.newClient`, you now `import { makeFetchClient } from 'so-fetch-js'`. 13 | 14 | # 0.3.0 15 | 16 | * remove polyfill version 17 | * Change responses to be `SoFetchResponse` and add `.data` and `.isError` onto them. 18 | 19 | # 0.2.1 20 | 21 | * provide `so-fetch-js/lib/polyfill` that contains `Object.assign` and `fetch` polyfills 22 | 23 | # 0.2.0 24 | 25 | * include a UMD build and use rollups for all builds - [PR](https://github.com/jackfranklin/so-fetch/pull/10) by @RusinovAnton 26 | * don't publish `*.test.js` files in the prod build - [PR](https://github.com/jackfranklin/so-fetch/pull/4) by @RusinovAnton 27 | 28 | ## 0.1.0 29 | 30 | * first release 31 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # so-fetch 2 | 3 | A small wrapper around the fetch API with some additional behaviours. 4 | 5 | ## Installation 6 | 7 | Install this module with npm or yarn. 8 | 9 | ```bash 10 | yarn add so-fetch-js 11 | npm install so-fetch-js 12 | ``` 13 | 14 | This module is designed to be consumed via a build tool such as Webpack. 15 | 16 | This module is written in TypeScript and the types are published to npm; if you're using TypeScript they should be picked up by the compiler automatically. 17 | 18 | You will also need to provide your own polyfill for the `fetch` API if you're working in older browsers. [whatwg-fetch](https://www.npmjs.com/package/whatwg-fetch) is recommended. `so-fetch` **does not provide a `fetch` polyfill**. 19 | 20 | `so-fetch` also assumes that `Object.assign` is available. You can use [core-js](https://github.com/zloirock/core-js) but you can also use [es6-object-assign](https://www.npmjs.com/package/es6-object-assign) or any other solution. 21 | 22 | ### Differences to `fetch` 23 | 24 | `so-fetch` has some slightly different behaviours to the native `fetch` API: 25 | 26 | * It assumes JSON responses, so it calls `.json()` on the response for you. If you are not regularly using JSON, `so-fetch` is not for you. 27 | * Any request made with `so-fetch` returns a `SoFetchResponse`, rather than a `Response` object. It has all the same properties, so you shouldn't notice any difference, but it also adds two more: `.data` and `.isError`. 28 | * Although your request is parsed as JSON, `so-fetch` gives you the full response back, with its headers, status, and so on. On a `SoFetchResponse` you can access the parsed response through the `.data` property: 29 | 30 | ```js 31 | import fetch from 'so-fetch-js' 32 | 33 | fetch('/users').then(response => { 34 | console.log(response.data) // the response body, parsed to a JS object 35 | }) 36 | ``` 37 | 38 | * Unlike `fetch`, `so-fetch` will reject any response that does not have a `2XX` status code. When this happens, you can still read the JSON response using `.data`: 39 | 40 | ```js 41 | import fetch from 'so-fetch-js' 42 | 43 | fetch('/users').catch(errorResponse => { 44 | console.log(errorResponse.data) // response body still, even though the request failed 45 | }) 46 | ``` 47 | 48 | ## Basic Usage 49 | 50 | You can just import and start using `so-fetch`: 51 | 52 | ```js 53 | import fetch from 'so-fetch-js' 54 | 55 | fetch('http://example.com/api').then(response => ...) 56 | ``` 57 | 58 | To use `so-fetch`'s more advanced features, you will need to create clients. 59 | 60 | ## Full Usage 61 | 62 | To use so-fetch, you should first import it and instantiate a new client: 63 | 64 | ```js 65 | import { makeFetchClient } from 'so-fetch-js' 66 | const apiClient = makeFetchClient({ 67 | ... 68 | }) 69 | ``` 70 | 71 | The `makeFetchClient` call takes three options: 72 | 73 | * `requestInterceptors: []`: an array of request interceptors. See below for documentation for interceptors. 74 | * `responseInterceptors: []`: an array of response interceptors. See below for documentation for interceptors. 75 | * `rootUrl: () => ''`: a function that returns a string that makes up your base URL. Normally this will just return a static string: `rootUrl: () => 'http://api.com'`. 76 | 77 | ### Making Requests with a client 78 | 79 | Once you have created a client, you have an object with methods that you can call. 80 | 81 | The main method provided by the client is `fetch`: 82 | 83 | ```js 84 | const apiClient = makeFetchClient({ 85 | rootUrl: () => 'http://api.com', 86 | }) 87 | 88 | apiClient.fetch('/users') => GET http://api.com/users 89 | ``` 90 | 91 | The `fetch` method mirrors the native API; it also takes an optional second argument which is an object to configure your request, such as headers: 92 | 93 | ```js 94 | apiClient.fetch('/users', { 95 | headers: { 96 | 'Foo-Header': 'Bar', 97 | }, 98 | }) 99 | ``` 100 | 101 | You can also use it to override the method used: 102 | 103 | ```js 104 | apiClient.fetch('/users', { 105 | method: 'POST', 106 | }) 107 | ``` 108 | 109 | However, if you're going to do that, you should consider using the `post` or `put` method. These make POST or PUT requests, but also take an argument for the body that you want to send with the request: 110 | 111 | ```js 112 | apiClient.post('/users', { 113 | name: 'Jack', 114 | }) 115 | // POST /users with a JSON body of { name: 'Jack' } 116 | ``` 117 | 118 | The api client assumes you're using JSON - the body is passed through `JSON.stringify` and the `Content-Type` header is set to `application/json`. If you don't want these defaults, you can use the `fetch` method and configure the entire request. 119 | 120 | ### Interceptors 121 | 122 | Interceptors can act on the configuration for a request and change it in someway before allowing the request to be made. A common use case for this is adding an API header, or a header that changes based on some value that you don't know when initialising the client. For example, this interceptor adds a header based on a value in local storage: 123 | 124 | ```js 125 | const addHeader = config => { 126 | config.headers['Special-Header'] = localStorage.getItem('special-header') 127 | return config 128 | } 129 | 130 | const client = makeFetchClient({ 131 | requestInterceptors: [addHeader], 132 | }) 133 | ``` 134 | 135 | A request interceptor gets called with a `config` object which contains the method, headers, URL and any other options that you can pass to `fetch`. It should return the configuration object. 136 | 137 | A response interceptor works on the response object that is returned from the request. For example, you might want to pull a header off the response and store it in local storage: 138 | 139 | ```js 140 | const saveHeader = response => { 141 | localStorage.saveItem('foo', response.headers.get('Some-Header')) 142 | return response 143 | } 144 | 145 | const client = makeFetchClient({ 146 | responseInterceptors: [saveHeader], 147 | }) 148 | ``` 149 | 150 | It's important to note that `response.headers` _is not a plain JS object_, but it is an instance of [`Headers`](https://developer.mozilla.org/en-US/docs/Web/API/Headers), because this is what the `fetch` API uses. 151 | 152 | An api client can have as many request and response interceptors as you like. They will be executed in the order they are passed when you create the client: 153 | 154 | ```js 155 | const client = makeFetchClient({ 156 | requestInterceptors: [ 157 | a, // executed first 158 | b, 159 | c, 160 | ], 161 | responseInterceptors: [ 162 | d, // executed first 163 | e, 164 | f, 165 | ], 166 | }) 167 | ``` 168 | 169 | ## Type usage with TypeScript 170 | 171 | The so-fetch library is fully typed and if you are using TypeScript you can take advantage of this to have a much nicer development experience. The type of a client is `SoFetch`, where `T` is the response type coming from your API. 172 | 173 | So, if my API always returns `{ name: string }`, I can create my client like so: 174 | 175 | ```ts 176 | import { makeFetchClient } from 'so-fetch-js' 177 | 178 | interface IApiResponse { 179 | name: string 180 | } 181 | 182 | const myClient = makeFetchClient() 183 | myClient.fetch(...) // returns Promise> 184 | ``` 185 | 186 | If you don't want to create your own clients, you can still type the default fetch function: 187 | 188 | ```ts 189 | import fetch from 'so-fetch-js' 190 | 191 | interface IApiResponse { 192 | name: string 193 | } 194 | 195 | fetch(...) // returns Promise> 196 | ``` 197 | 198 | If you do not specify a type of response, the following interface is used: 199 | 200 | ```ts 201 | export interface IDefaultFetchResponse { 202 | [x: string]: any 203 | } 204 | ``` 205 | 206 | If you find any issues with the types, please feel free to raise an issue. This is my first TypeScript module so I wouldn't be surprised if there are problems! 207 | 208 | ## Contributing 209 | 210 | We welcome any contributions. Before embarking on a big piece of work it's a good idea to open an issue to discuss your idea and proposed solution. 211 | 212 | To work on this project: 213 | 214 | * Fork this repository 215 | * `git clone` to your machine 216 | * `yarn install` to install all the dependencies. 217 | * `yarn test:watch` to run the tests in watch mode. They will rerun as you make changes. 218 | * Run `yarn test` to run linting, type checking and tests. 219 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "so-fetch-js", 3 | "version": "0.4.2", 4 | "description": "A nice wrapper around the fetch API with some extras", 5 | "main": "dist/index", 6 | "typings": "dist/index", 7 | "author": "Jack Franklin", 8 | "license": "MIT", 9 | "scripts": { 10 | "test": 11 | "yarn run tslint && yarn run type-check && yarn run prettier:check:all && NODE_ENV=test yarn run jest", 12 | "test:watch": "jest --watch", 13 | "compile": "tsc -p tsconfig.build.json", 14 | "type-check": "tsc -p tsconfig.json", 15 | "prepack": "yarn test && yarn run compile", 16 | "tslint": "tslint 'src/**/*.ts'", 17 | "prettier:check:all": "prettier -l 'src/**/*.ts'" 18 | }, 19 | "files": ["src", "dist"], 20 | "jest": { 21 | "setupTestFrameworkScriptFile": "./test-setup.ts", 22 | "transform": { 23 | "^.+\\.tsx?$": "ts-jest" 24 | }, 25 | "testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(tsx?)$", 26 | "moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json", "node"], 27 | "testURL": "http://localhost/" 28 | }, 29 | "devDependencies": { 30 | "@types/fetch-mock": "^6.0.1", 31 | "@types/jest": "^22.2.2", 32 | "fetch-mock": "6.3.0", 33 | "isomorphic-fetch": "^2.2.1", 34 | "jest": "22.4.3", 35 | "prettier": "1.11.1", 36 | "ts-jest": "^22.4.2", 37 | "tslint": "^5.9.1", 38 | "typescript": "^2.7.2" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /prettier.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | semi: false, 3 | singleQuote: true, 4 | trailingComma: 'all', 5 | } 6 | -------------------------------------------------------------------------------- /src/index.test.ts: -------------------------------------------------------------------------------- 1 | import * as fetchMock from 'fetch-mock' 2 | import fetch, { IDefaultFetchResponse, makeFetchClient } from '../src/index' 3 | import SoFetchResponse from './response' 4 | 5 | describe('so-fetch', () => { 6 | it('makes requests with the default client', () => { 7 | fetchMock.getOnce('/foo', { body: { name: 'Jack' }, status: 200 }) 8 | return fetch('/foo').then( 9 | (response: SoFetchResponse) => { 10 | expect(response.data!.name).toEqual('Jack') 11 | }, 12 | ) 13 | }) 14 | 15 | it('can make a new client', () => { 16 | interface ICustomResponse { 17 | name: string 18 | } 19 | 20 | const client = makeFetchClient({ 21 | rootUrl: () => 'http://example.com', 22 | }) 23 | 24 | fetchMock.getOnce('http://example.com/foo', { 25 | body: { name: 'Jack' }, 26 | status: 200, 27 | }) 28 | return client 29 | .fetch('/foo') 30 | .then((response: SoFetchResponse) => { 31 | expect(response.data!.name).toEqual('Jack') 32 | }) 33 | }) 34 | }) 35 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import { IFetchOptions, ISoFetchInitialisation } from './interfaces' 2 | 3 | import SoFetchResponse from './response' 4 | import SoFetch from './so-fetch' 5 | 6 | export interface IDefaultFetchResponse { 7 | [x: string]: any 8 | } 9 | 10 | const defaultFetch = ( 11 | url: string, 12 | options: IFetchOptions = {}, 13 | ): Promise> => new SoFetch({}).fetch(url, options) 14 | 15 | const makeFetchClient = (args: ISoFetchInitialisation): SoFetch => 16 | new SoFetch(args) 17 | 18 | export { makeFetchClient, SoFetchResponse } 19 | 20 | export default defaultFetch 21 | -------------------------------------------------------------------------------- /src/interfaces.ts: -------------------------------------------------------------------------------- 1 | import SoFetchResponse from './response' 2 | 3 | export type RequestInterceptor = ( 4 | config: IRequestInterceptorConfig, 5 | ) => IRequestInterceptorConfig 6 | export type ResponseInterceptor = ( 7 | response: SoFetchResponse, 8 | ) => SoFetchResponse 9 | 10 | export interface ISoFetchInitialisation { 11 | requestInterceptors?: RequestInterceptor[] 12 | responseInterceptors?: Array> 13 | rootUrl?: () => string 14 | } 15 | 16 | export interface IFetchOptions { 17 | headers?: {} 18 | body?: {} 19 | method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' 20 | url?: string 21 | mode?: 'cors' | 'no-cors' | 'same-origin' 22 | cache?: 'no-cache' | 'default' | 'reload' | 'force-cache' | 'only-if-cached' 23 | credentials?: 'same-origin' | 'include' | 'omit' 24 | redirect?: 'follow' | 'manual' | 'error' 25 | referrer?: 'no-referrer' | 'client' 26 | } 27 | 28 | export interface IRequestInterceptorConfig extends IFetchOptions { 29 | headers: Headers 30 | } 31 | -------------------------------------------------------------------------------- /src/parse-response.ts: -------------------------------------------------------------------------------- 1 | import SoFetchResponse from './response' 2 | 3 | const parseResponse = (response: Response): Promise> => { 4 | return ( 5 | response 6 | .json() 7 | // assume there is JSON, but catch error if the response has no JSON 8 | .then((data: T) => data, () => undefined) 9 | .then(jsonData => { 10 | return new SoFetchResponse(response, jsonData) 11 | }) 12 | ) 13 | } 14 | 15 | export default parseResponse 16 | -------------------------------------------------------------------------------- /src/response.ts: -------------------------------------------------------------------------------- 1 | import { IFetchOptions } from './interfaces' 2 | 3 | class SoFetchResponse { 4 | public readonly data?: T 5 | public readonly isError: boolean 6 | public readonly body: ReadableStream | null 7 | public readonly headers: Headers 8 | public readonly ok: boolean 9 | public readonly status: number 10 | public readonly statusText: string 11 | public readonly type: string 12 | public readonly url: string 13 | public config?: IFetchOptions 14 | 15 | constructor(response: Response, jsonData?: T) { 16 | this.body = response.body 17 | this.data = jsonData 18 | this.headers = response.headers 19 | this.ok = response.ok 20 | this.status = response.status 21 | this.statusText = response.statusText 22 | this.type = response.type 23 | this.url = response.url 24 | 25 | this.isError = this.status < 200 || this.status >= 400 26 | } 27 | } 28 | 29 | export default SoFetchResponse 30 | -------------------------------------------------------------------------------- /src/so-fetch.test.ts: -------------------------------------------------------------------------------- 1 | import * as fetchMock from 'fetch-mock' 2 | import SoFetch from '../src/so-fetch' 3 | 4 | describe('SoFetch', () => { 5 | describe('errors', () => { 6 | it('rejects with the response when an error occurs', () => { 7 | const client = new SoFetch({}) 8 | fetchMock.getOnce('/fanclub', 404) 9 | return client 10 | .fetch('/fanclub') 11 | .then(fail) 12 | .catch(response => { 13 | expect(response.statusText).toEqual('Not Found') 14 | expect(response.status).toEqual(404) 15 | }) 16 | }) 17 | 18 | it('parses any JSON', () => { 19 | const client = new SoFetch({}) 20 | fetchMock.getOnce('/fanclub', { 21 | status: 404, 22 | body: { error: 'It went wrong' }, 23 | }) 24 | 25 | return client 26 | .fetch('/fanclub') 27 | .then(fail) 28 | .catch(response => { 29 | expect(response.data).toEqual({ error: 'It went wrong' }) 30 | }) 31 | }) 32 | }) 33 | 34 | describe('request interceptors', () => { 35 | it('can have request interceptors', () => { 36 | const client = new SoFetch({ 37 | requestInterceptors: [ 38 | config => { 39 | config.headers = new Headers({ 40 | SomeRandomHeader: 'foo', 41 | }) 42 | return config 43 | }, 44 | ], 45 | }) 46 | fetchMock.getOnce('/fanclub', { 47 | status: 200, 48 | headers: { 49 | SomeRandomHeader: 'foo', 50 | }, 51 | }) 52 | 53 | return client.fetch('/fanclub').catch(fail) 54 | }) 55 | 56 | it('passes an empty headers obj if there are none', () => { 57 | const client = new SoFetch({ 58 | requestInterceptors: [ 59 | config => { 60 | if (config.headers) { 61 | config.headers.set('SomeRandomHeader', 'foo') 62 | } 63 | return config 64 | }, 65 | ], 66 | }) 67 | 68 | fetchMock.getOnce('/fanclub', 200) 69 | 70 | return expect(client.fetch('/fanclub')).resolves.toEqual( 71 | expect.anything(), 72 | ) 73 | }) 74 | }) 75 | 76 | describe('response interceptors', () => { 77 | it('can have response interceptors', () => { 78 | const spy = jest.fn() 79 | 80 | const client = new SoFetch({ 81 | responseInterceptors: [ 82 | response => { 83 | spy('foo') 84 | return response 85 | }, 86 | ], 87 | }) 88 | fetchMock.getOnce('/fanclub', 200) 89 | 90 | return client.fetch('/fanclub').then(() => { 91 | expect(spy).toHaveBeenCalledWith('foo') 92 | }) 93 | }) 94 | 95 | it('gives response interceptors the final config', () => { 96 | const spy = jest.fn() 97 | 98 | const client = new SoFetch({ 99 | responseInterceptors: [ 100 | response => { 101 | spy(response.config) 102 | return response 103 | }, 104 | ], 105 | }) 106 | fetchMock.getOnce('/fanclub', 200) 107 | 108 | return client.fetch('/fanclub', { headers: { foo: 'bar' } }).then(() => { 109 | expect(spy).toHaveBeenCalledWith({ 110 | url: '/fanclub', 111 | headers: new Headers({ foo: 'bar' }), 112 | method: 'GET', 113 | }) 114 | }) 115 | }) 116 | }) 117 | 118 | describe('fetch', () => { 119 | it('returns the original response with an extra data property', () => { 120 | const client = new SoFetch() 121 | 122 | fetchMock.getOnce('/fanclub', { 123 | status: 200, 124 | body: { name: 'Kanye West' }, 125 | }) 126 | 127 | return client.fetch('/fanclub').then(resp => { 128 | expect(resp.data).toEqual({ name: 'Kanye West' }) 129 | expect(resp.status).toEqual(200) 130 | }) 131 | }) 132 | }) 133 | 134 | describe('post', () => { 135 | it('posts the JSON with the right headers', () => { 136 | const client = new SoFetch() 137 | 138 | fetchMock.once( 139 | (url, request) => { 140 | if (request.method === 'POST' && url === '/fanclub') { 141 | expect((request.headers as Headers).get('Content-Type')).toEqual( 142 | 'application/json', 143 | ) 144 | return true 145 | } 146 | return false 147 | }, 148 | { 149 | status: 200, 150 | }, 151 | ) 152 | 153 | return client.post('/fanclub', { name: 'Kanye West' }).then(resp => { 154 | expect(resp.status).toEqual(200) 155 | }) 156 | }) 157 | }) 158 | 159 | describe('post', () => { 160 | it('posts the formData with the right headers', () => { 161 | const client = new SoFetch() 162 | const option = { 163 | headers: new Headers({ 164 | 'Content-Type': 'application/x-www-form-urlencoded', 165 | }), 166 | } 167 | 168 | fetchMock.once( 169 | (url, request) => { 170 | if (request.method === 'POST' && url === '/fanclub') { 171 | expect((request.headers as Headers).get('Content-Type')).toEqual( 172 | 'application/x-www-form-urlencoded', 173 | ) 174 | return true 175 | } 176 | return false 177 | }, 178 | { 179 | status: 200, 180 | }, 181 | ) 182 | 183 | return client 184 | .post('/fanclub', { name: 'Kanye West' }, option) 185 | .then(resp => { 186 | expect(resp.status).toEqual(200) 187 | }) 188 | }) 189 | }) 190 | }) 191 | -------------------------------------------------------------------------------- /src/so-fetch.ts: -------------------------------------------------------------------------------- 1 | import { 2 | IFetchOptions, 3 | IRequestInterceptorConfig, 4 | ISoFetchInitialisation, 5 | RequestInterceptor, 6 | ResponseInterceptor, 7 | } from './interfaces' 8 | import parseResponse from './parse-response' 9 | import SoFetchResponse from './response' 10 | 11 | enum ContentType { 12 | json = 'application/json', 13 | formUrlencoded = 'application/x-www-form-urlencoded', 14 | } 15 | class SoFetch { 16 | private requestInterceptors: RequestInterceptor[] 17 | private responseInterceptors: Array> 18 | private rootUrl: () => string 19 | 20 | constructor({ 21 | requestInterceptors = [], 22 | responseInterceptors = [], 23 | rootUrl = () => '', 24 | }: ISoFetchInitialisation = {}) { 25 | this.requestInterceptors = requestInterceptors 26 | this.responseInterceptors = responseInterceptors 27 | this.rootUrl = rootUrl 28 | } 29 | 30 | /** 31 | * check the content type and changes the request based on the different context 32 | * @param contentType : content-type based on request headers 33 | * @param requestBody : request body 34 | * @returns : request body with proper context 35 | */ 36 | public checkContentType(contentType?: string | null, requestBody?: {}) { 37 | if (contentType === ContentType.formUrlencoded) { 38 | return requestBody 39 | } else if (contentType === ContentType.json) { 40 | return requestBody ? JSON.stringify(requestBody) : undefined 41 | } 42 | return requestBody ? JSON.stringify(requestBody) : undefined 43 | } 44 | 45 | public applyRequestInterceptors( 46 | options: IRequestInterceptorConfig, 47 | ): IRequestInterceptorConfig { 48 | return this.requestInterceptors.reduce( 49 | (opts, interceptor) => { 50 | return interceptor(options) 51 | }, 52 | { ...options }, 53 | ) 54 | } 55 | 56 | public applyResponseInterceptors( 57 | response: SoFetchResponse, 58 | config: IFetchOptions, 59 | ): SoFetchResponse { 60 | // chuck the config onto the response so we can get at it later 61 | response.config = config 62 | return this.responseInterceptors.reduce((newResp, interceptor) => { 63 | return interceptor(newResp) 64 | }, response) 65 | } 66 | 67 | public fetch( 68 | url: string, 69 | options: IFetchOptions = {}, 70 | ): Promise> { 71 | const fullUrl = this.rootUrl() + url 72 | const headers = new Headers(options.headers || {}) 73 | 74 | const finalOpts = this.applyRequestInterceptors({ 75 | method: 'GET', 76 | ...options, 77 | headers, 78 | url: fullUrl, 79 | }) 80 | return fetch(fullUrl, finalOpts as RequestInit) 81 | .then(resp => parseResponse(resp)) 82 | .then(resp => this.applyResponseInterceptors(resp, finalOpts)) 83 | .then(resp => { 84 | if (resp.isError) { 85 | throw resp 86 | } else { 87 | return resp 88 | } 89 | }) 90 | } 91 | 92 | public post( 93 | url: string, 94 | postBody?: {}, 95 | options?: IFetchOptions, 96 | ): Promise> { 97 | const headers = new Headers((options && options.headers) || {}) 98 | if (headers.get('Content-Type') === null) { 99 | // take default headers as application/json 100 | headers.set('Content-Type', 'application/json') 101 | } 102 | return this.fetch(url, { 103 | method: 'POST', 104 | ...options, 105 | headers, 106 | body: this.checkContentType(headers.get('Content-Type'), postBody), 107 | }) 108 | } 109 | 110 | public put( 111 | url: string, 112 | postBody?: {}, 113 | options?: IFetchOptions, 114 | ): Promise> { 115 | const headers = new Headers((options && options.headers) || {}) 116 | if (headers.get('Content-Type') === null) { 117 | // take default headers as application/json 118 | headers.set('Content-Type', 'application/json') 119 | } 120 | 121 | return this.fetch(url, { 122 | ...options, 123 | method: 'PUT', 124 | body: this.checkContentType(headers.get('Content-Type'), postBody), 125 | headers, 126 | }) 127 | } 128 | } 129 | 130 | export default SoFetch 131 | -------------------------------------------------------------------------------- /test-setup.ts: -------------------------------------------------------------------------------- 1 | import 'isomorphic-fetch' 2 | import * as fetchMock from 'fetch-mock' 3 | 4 | afterEach(fetchMock.restore) 5 | -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "./dist", 5 | "sourceMap": true, 6 | "noEmit": false 7 | }, 8 | "exclude": [ 9 | "src/**/*.test.ts" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5", 4 | "module": "commonjs", 5 | "declaration": true, 6 | "noEmit": true, 7 | "strict": true 8 | }, 9 | "include": [ 10 | "src/**/*.ts" 11 | ], 12 | } 13 | -------------------------------------------------------------------------------- /tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "defaultSeverity": "error", 3 | "extends": [ 4 | "tslint:recommended" 5 | ], 6 | "jsRules": {}, 7 | "rules": { 8 | "semicolon": [true, "never"], 9 | "quotemark": [true, "single"], 10 | "object-literal-sort-keys": false, 11 | "arrow-parens": [true, "ban-single-arg-parens"], 12 | "trailing-comma": [true, {"typeLiterals": "ignore"}] 13 | }, 14 | "rulesDirectory": [] 15 | } 16 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35": 6 | version "7.5.5" 7 | resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz" 8 | integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== 9 | dependencies: 10 | "@babel/highlight" "^7.0.0" 11 | 12 | "@babel/highlight@^7.0.0": 13 | version "7.5.0" 14 | resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz" 15 | integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== 16 | dependencies: 17 | chalk "^2.0.0" 18 | esutils "^2.0.2" 19 | js-tokens "^4.0.0" 20 | 21 | "@types/fetch-mock@^6.0.1": 22 | version "6.0.5" 23 | resolved "https://registry.npmjs.org/@types/fetch-mock/-/fetch-mock-6.0.5.tgz" 24 | integrity sha512-rV8O2j/TIi0PtFCOlK55JnfKpE8Hm6PKFgrUZY/3FNHw4uBEMHnM+5ZickDO1duOyKxbpY3VES5T4NIwZXvodA== 25 | 26 | "@types/jest@^22.2.2": 27 | version "22.2.3" 28 | resolved "https://registry.npmjs.org/@types/jest/-/jest-22.2.3.tgz" 29 | integrity sha512-e74sM9W/4qqWB6D4TWV9FQk0WoHtX1X4FJpbjxucMSVJHtFjbQOH3H6yp+xno4br0AKG0wz/kPtaN599GUOvAg== 30 | 31 | abab@^2.0.0: 32 | version "2.0.1" 33 | resolved "https://registry.npmjs.org/abab/-/abab-2.0.1.tgz" 34 | integrity sha512-1zSbbCuoIjafKZ3mblY5ikvAb0ODUbqBnFuUb7f6uLeQhhGJ0vEV4ntmtxKLT2WgXCO94E07BjunsIw1jOMPZw== 35 | 36 | acorn-globals@^4.1.0: 37 | version "4.3.3" 38 | resolved "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.3.tgz" 39 | integrity sha512-vkR40VwS2SYO98AIeFvzWWh+xyc2qi9s7OoXSFEGIP/rOJKzjnhykaZJNnHdoq4BL2gGxI5EZOU16z896EYnOQ== 40 | dependencies: 41 | acorn "^6.0.1" 42 | acorn-walk "^6.0.1" 43 | 44 | acorn-walk@^6.0.1: 45 | version "6.2.0" 46 | resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz" 47 | integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== 48 | 49 | acorn@^5.5.3: 50 | version "5.7.3" 51 | resolved "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz" 52 | integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== 53 | 54 | acorn@^6.0.1: 55 | version "6.3.0" 56 | resolved "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz" 57 | integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== 58 | 59 | ajv@^6.5.5: 60 | version "6.10.2" 61 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz" 62 | integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== 63 | dependencies: 64 | fast-deep-equal "^2.0.1" 65 | fast-json-stable-stringify "^2.0.0" 66 | json-schema-traverse "^0.4.1" 67 | uri-js "^4.2.2" 68 | 69 | ansi-escapes@^3.0.0: 70 | version "3.2.0" 71 | resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz" 72 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== 73 | 74 | ansi-regex@^2.0.0: 75 | version "2.1.1" 76 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" 77 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 78 | 79 | ansi-regex@^3.0.0: 80 | version "3.0.0" 81 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" 82 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 83 | 84 | ansi-styles@^2.2.1: 85 | version "2.2.1" 86 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" 87 | integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= 88 | 89 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 90 | version "3.2.1" 91 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" 92 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 93 | dependencies: 94 | color-convert "^1.9.0" 95 | 96 | anymatch@^1.3.0: 97 | version "1.3.2" 98 | resolved "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz" 99 | integrity sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA== 100 | dependencies: 101 | micromatch "^2.1.5" 102 | normalize-path "^2.0.0" 103 | 104 | anymatch@^2.0.0: 105 | version "2.0.0" 106 | resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz" 107 | integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== 108 | dependencies: 109 | micromatch "^3.1.4" 110 | normalize-path "^2.1.1" 111 | 112 | append-transform@^0.4.0: 113 | version "0.4.0" 114 | resolved "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz" 115 | integrity sha1-126/jKlNJ24keja61EpLdKthGZE= 116 | dependencies: 117 | default-require-extensions "^1.0.0" 118 | 119 | argparse@^1.0.7: 120 | version "1.0.10" 121 | resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" 122 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 123 | dependencies: 124 | sprintf-js "~1.0.2" 125 | 126 | arr-diff@^2.0.0: 127 | version "2.0.0" 128 | resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz" 129 | integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= 130 | dependencies: 131 | arr-flatten "^1.0.1" 132 | 133 | arr-diff@^4.0.0: 134 | version "4.0.0" 135 | resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz" 136 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= 137 | 138 | arr-flatten@^1.0.1, arr-flatten@^1.1.0: 139 | version "1.1.0" 140 | resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" 141 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 142 | 143 | arr-union@^3.1.0: 144 | version "3.1.0" 145 | resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz" 146 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= 147 | 148 | array-equal@^1.0.0: 149 | version "1.0.0" 150 | resolved "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz" 151 | integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= 152 | 153 | array-unique@^0.2.1: 154 | version "0.2.1" 155 | resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz" 156 | integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= 157 | 158 | array-unique@^0.3.2: 159 | version "0.3.2" 160 | resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz" 161 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= 162 | 163 | arrify@^1.0.1: 164 | version "1.0.1" 165 | resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" 166 | integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= 167 | 168 | asn1@~0.2.3: 169 | version "0.2.4" 170 | resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz" 171 | integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== 172 | dependencies: 173 | safer-buffer "~2.1.0" 174 | 175 | assert-plus@1.0.0, assert-plus@^1.0.0: 176 | version "1.0.0" 177 | resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" 178 | integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= 179 | 180 | assign-symbols@^1.0.0: 181 | version "1.0.0" 182 | resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz" 183 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= 184 | 185 | astral-regex@^1.0.0: 186 | version "1.0.0" 187 | resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz" 188 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 189 | 190 | async-each@^1.0.0: 191 | version "1.0.3" 192 | resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz" 193 | integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== 194 | 195 | async-limiter@~1.0.0: 196 | version "1.0.1" 197 | resolved "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz" 198 | integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== 199 | 200 | async@^2.1.4: 201 | version "2.6.3" 202 | resolved "https://registry.npmjs.org/async/-/async-2.6.3.tgz" 203 | integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== 204 | dependencies: 205 | lodash "^4.17.14" 206 | 207 | asynckit@^0.4.0: 208 | version "0.4.0" 209 | resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" 210 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= 211 | 212 | atob@^2.1.1: 213 | version "2.1.2" 214 | resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz" 215 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== 216 | 217 | aws-sign2@~0.7.0: 218 | version "0.7.0" 219 | resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz" 220 | integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= 221 | 222 | aws4@^1.8.0: 223 | version "1.8.0" 224 | resolved "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz" 225 | integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== 226 | 227 | babel-code-frame@^6.26.0: 228 | version "6.26.0" 229 | resolved "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz" 230 | integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= 231 | dependencies: 232 | chalk "^1.1.3" 233 | esutils "^2.0.2" 234 | js-tokens "^3.0.2" 235 | 236 | babel-core@^6.0.0, babel-core@^6.26.0, babel-core@^6.26.3: 237 | version "6.26.3" 238 | resolved "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz" 239 | integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== 240 | dependencies: 241 | babel-code-frame "^6.26.0" 242 | babel-generator "^6.26.0" 243 | babel-helpers "^6.24.1" 244 | babel-messages "^6.23.0" 245 | babel-register "^6.26.0" 246 | babel-runtime "^6.26.0" 247 | babel-template "^6.26.0" 248 | babel-traverse "^6.26.0" 249 | babel-types "^6.26.0" 250 | babylon "^6.18.0" 251 | convert-source-map "^1.5.1" 252 | debug "^2.6.9" 253 | json5 "^0.5.1" 254 | lodash "^4.17.4" 255 | minimatch "^3.0.4" 256 | path-is-absolute "^1.0.1" 257 | private "^0.1.8" 258 | slash "^1.0.0" 259 | source-map "^0.5.7" 260 | 261 | babel-generator@^6.18.0, babel-generator@^6.26.0: 262 | version "6.26.1" 263 | resolved "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz" 264 | integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== 265 | dependencies: 266 | babel-messages "^6.23.0" 267 | babel-runtime "^6.26.0" 268 | babel-types "^6.26.0" 269 | detect-indent "^4.0.0" 270 | jsesc "^1.3.0" 271 | lodash "^4.17.4" 272 | source-map "^0.5.7" 273 | trim-right "^1.0.1" 274 | 275 | babel-helpers@^6.24.1: 276 | version "6.24.1" 277 | resolved "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz" 278 | integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= 279 | dependencies: 280 | babel-runtime "^6.22.0" 281 | babel-template "^6.24.1" 282 | 283 | babel-jest@^22.4.4: 284 | version "22.4.4" 285 | resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-22.4.4.tgz" 286 | integrity sha512-A9NB6/lZhYyypR9ATryOSDcqBaqNdzq4U+CN+/wcMsLcmKkPxQEoTKLajGfd3IkxNyVBT8NewUK2nWyGbSzHEQ== 287 | dependencies: 288 | babel-plugin-istanbul "^4.1.5" 289 | babel-preset-jest "^22.4.4" 290 | 291 | babel-messages@^6.23.0: 292 | version "6.23.0" 293 | resolved "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz" 294 | integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= 295 | dependencies: 296 | babel-runtime "^6.22.0" 297 | 298 | babel-plugin-istanbul@^4.1.5, babel-plugin-istanbul@^4.1.6: 299 | version "4.1.6" 300 | resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz" 301 | integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== 302 | dependencies: 303 | babel-plugin-syntax-object-rest-spread "^6.13.0" 304 | find-up "^2.1.0" 305 | istanbul-lib-instrument "^1.10.1" 306 | test-exclude "^4.2.1" 307 | 308 | babel-plugin-jest-hoist@^22.4.4: 309 | version "22.4.4" 310 | resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-22.4.4.tgz" 311 | integrity sha512-DUvGfYaAIlkdnygVIEl0O4Av69NtuQWcrjMOv6DODPuhuGLDnbsARz3AwiiI/EkIMMlxQDUcrZ9yoyJvTNjcVQ== 312 | 313 | babel-plugin-syntax-object-rest-spread@^6.13.0: 314 | version "6.13.0" 315 | resolved "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz" 316 | integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= 317 | 318 | babel-plugin-transform-es2015-modules-commonjs@^6.26.2: 319 | version "6.26.2" 320 | resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz" 321 | integrity sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q== 322 | dependencies: 323 | babel-plugin-transform-strict-mode "^6.24.1" 324 | babel-runtime "^6.26.0" 325 | babel-template "^6.26.0" 326 | babel-types "^6.26.0" 327 | 328 | babel-plugin-transform-strict-mode@^6.24.1: 329 | version "6.24.1" 330 | resolved "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz" 331 | integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= 332 | dependencies: 333 | babel-runtime "^6.22.0" 334 | babel-types "^6.24.1" 335 | 336 | babel-preset-jest@^22.4.3, babel-preset-jest@^22.4.4: 337 | version "22.4.4" 338 | resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-22.4.4.tgz" 339 | integrity sha512-+dxMtOFwnSYWfum0NaEc0O03oSdwBsjx4tMSChRDPGwu/4wSY6Q6ANW3wkjKpJzzguaovRs/DODcT4hbSN8yiA== 340 | dependencies: 341 | babel-plugin-jest-hoist "^22.4.4" 342 | babel-plugin-syntax-object-rest-spread "^6.13.0" 343 | 344 | babel-register@^6.26.0: 345 | version "6.26.0" 346 | resolved "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz" 347 | integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= 348 | dependencies: 349 | babel-core "^6.26.0" 350 | babel-runtime "^6.26.0" 351 | core-js "^2.5.0" 352 | home-or-tmp "^2.0.0" 353 | lodash "^4.17.4" 354 | mkdirp "^0.5.1" 355 | source-map-support "^0.4.15" 356 | 357 | babel-runtime@^6.22.0, babel-runtime@^6.26.0, babel-runtime@^6.9.2: 358 | version "6.26.0" 359 | resolved "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz" 360 | integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= 361 | dependencies: 362 | core-js "^2.4.0" 363 | regenerator-runtime "^0.11.0" 364 | 365 | babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: 366 | version "6.26.0" 367 | resolved "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz" 368 | integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= 369 | dependencies: 370 | babel-runtime "^6.26.0" 371 | babel-traverse "^6.26.0" 372 | babel-types "^6.26.0" 373 | babylon "^6.18.0" 374 | lodash "^4.17.4" 375 | 376 | babel-traverse@^6.18.0, babel-traverse@^6.26.0: 377 | version "6.26.0" 378 | resolved "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz" 379 | integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= 380 | dependencies: 381 | babel-code-frame "^6.26.0" 382 | babel-messages "^6.23.0" 383 | babel-runtime "^6.26.0" 384 | babel-types "^6.26.0" 385 | babylon "^6.18.0" 386 | debug "^2.6.8" 387 | globals "^9.18.0" 388 | invariant "^2.2.2" 389 | lodash "^4.17.4" 390 | 391 | babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.26.0: 392 | version "6.26.0" 393 | resolved "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz" 394 | integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= 395 | dependencies: 396 | babel-runtime "^6.26.0" 397 | esutils "^2.0.2" 398 | lodash "^4.17.4" 399 | to-fast-properties "^1.0.3" 400 | 401 | babylon@^6.18.0: 402 | version "6.18.0" 403 | resolved "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz" 404 | integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== 405 | 406 | balanced-match@^1.0.0: 407 | version "1.0.0" 408 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz" 409 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 410 | 411 | base@^0.11.1: 412 | version "0.11.2" 413 | resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz" 414 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== 415 | dependencies: 416 | cache-base "^1.0.1" 417 | class-utils "^0.3.5" 418 | component-emitter "^1.2.1" 419 | define-property "^1.0.0" 420 | isobject "^3.0.1" 421 | mixin-deep "^1.2.0" 422 | pascalcase "^0.1.1" 423 | 424 | bcrypt-pbkdf@^1.0.0: 425 | version "1.0.2" 426 | resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" 427 | integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= 428 | dependencies: 429 | tweetnacl "^0.14.3" 430 | 431 | binary-extensions@^1.0.0: 432 | version "1.13.1" 433 | resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz" 434 | integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== 435 | 436 | bindings@^1.5.0: 437 | version "1.5.0" 438 | resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" 439 | integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== 440 | dependencies: 441 | file-uri-to-path "1.0.0" 442 | 443 | brace-expansion@^1.1.7: 444 | version "1.1.11" 445 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" 446 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 447 | dependencies: 448 | balanced-match "^1.0.0" 449 | concat-map "0.0.1" 450 | 451 | braces@^1.8.2: 452 | version "1.8.5" 453 | resolved "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz" 454 | integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= 455 | dependencies: 456 | expand-range "^1.8.1" 457 | preserve "^0.2.0" 458 | repeat-element "^1.1.2" 459 | 460 | braces@^2.3.1: 461 | version "2.3.2" 462 | resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" 463 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== 464 | dependencies: 465 | arr-flatten "^1.1.0" 466 | array-unique "^0.3.2" 467 | extend-shallow "^2.0.1" 468 | fill-range "^4.0.0" 469 | isobject "^3.0.1" 470 | repeat-element "^1.1.2" 471 | snapdragon "^0.8.1" 472 | snapdragon-node "^2.0.1" 473 | split-string "^3.0.2" 474 | to-regex "^3.0.1" 475 | 476 | browser-process-hrtime@^0.1.2: 477 | version "0.1.3" 478 | resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz" 479 | integrity sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw== 480 | 481 | browser-resolve@^1.11.2: 482 | version "1.11.3" 483 | resolved "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz" 484 | integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== 485 | dependencies: 486 | resolve "1.1.7" 487 | 488 | bser@^2.0.0: 489 | version "2.1.0" 490 | resolved "https://registry.npmjs.org/bser/-/bser-2.1.0.tgz" 491 | integrity sha512-8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg== 492 | dependencies: 493 | node-int64 "^0.4.0" 494 | 495 | buffer-from@^1.0.0: 496 | version "1.1.1" 497 | resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz" 498 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 499 | 500 | builtin-modules@^1.1.1: 501 | version "1.1.1" 502 | resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz" 503 | integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= 504 | 505 | cache-base@^1.0.1: 506 | version "1.0.1" 507 | resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz" 508 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== 509 | dependencies: 510 | collection-visit "^1.0.0" 511 | component-emitter "^1.2.1" 512 | get-value "^2.0.6" 513 | has-value "^1.0.0" 514 | isobject "^3.0.1" 515 | set-value "^2.0.0" 516 | to-object-path "^0.3.0" 517 | union-value "^1.0.0" 518 | unset-value "^1.0.0" 519 | 520 | callsites@^2.0.0: 521 | version "2.0.0" 522 | resolved "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz" 523 | integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= 524 | 525 | camelcase@^4.1.0: 526 | version "4.1.0" 527 | resolved "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz" 528 | integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= 529 | 530 | capture-exit@^1.2.0: 531 | version "1.2.0" 532 | resolved "https://registry.npmjs.org/capture-exit/-/capture-exit-1.2.0.tgz" 533 | integrity sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28= 534 | dependencies: 535 | rsvp "^3.3.3" 536 | 537 | caseless@~0.12.0: 538 | version "0.12.0" 539 | resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz" 540 | integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= 541 | 542 | chalk@^1.1.3: 543 | version "1.1.3" 544 | resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" 545 | integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= 546 | dependencies: 547 | ansi-styles "^2.2.1" 548 | escape-string-regexp "^1.0.2" 549 | has-ansi "^2.0.0" 550 | strip-ansi "^3.0.0" 551 | supports-color "^2.0.0" 552 | 553 | chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0: 554 | version "2.4.2" 555 | resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" 556 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 557 | dependencies: 558 | ansi-styles "^3.2.1" 559 | escape-string-regexp "^1.0.5" 560 | supports-color "^5.3.0" 561 | 562 | chokidar@^1.6.0: 563 | version "1.7.0" 564 | resolved "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz" 565 | integrity sha1-eY5ol3gVHIB2tLNg5e3SjNortGg= 566 | dependencies: 567 | anymatch "^1.3.0" 568 | async-each "^1.0.0" 569 | glob-parent "^2.0.0" 570 | inherits "^2.0.1" 571 | is-binary-path "^1.0.0" 572 | is-glob "^2.0.0" 573 | path-is-absolute "^1.0.0" 574 | readdirp "^2.0.0" 575 | optionalDependencies: 576 | fsevents "^1.0.0" 577 | 578 | ci-info@^1.5.0: 579 | version "1.6.0" 580 | resolved "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz" 581 | integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== 582 | 583 | class-utils@^0.3.5: 584 | version "0.3.6" 585 | resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" 586 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== 587 | dependencies: 588 | arr-union "^3.1.0" 589 | define-property "^0.2.5" 590 | isobject "^3.0.0" 591 | static-extend "^0.1.1" 592 | 593 | cliui@^4.0.0: 594 | version "4.1.0" 595 | resolved "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz" 596 | integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== 597 | dependencies: 598 | string-width "^2.1.1" 599 | strip-ansi "^4.0.0" 600 | wrap-ansi "^2.0.0" 601 | 602 | co@^4.6.0: 603 | version "4.6.0" 604 | resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz" 605 | integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= 606 | 607 | code-point-at@^1.0.0: 608 | version "1.1.0" 609 | resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" 610 | integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= 611 | 612 | collection-visit@^1.0.0: 613 | version "1.0.0" 614 | resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" 615 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= 616 | dependencies: 617 | map-visit "^1.0.0" 618 | object-visit "^1.0.0" 619 | 620 | color-convert@^1.9.0: 621 | version "1.9.3" 622 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" 623 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 624 | dependencies: 625 | color-name "1.1.3" 626 | 627 | color-name@1.1.3: 628 | version "1.1.3" 629 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" 630 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 631 | 632 | combined-stream@^1.0.6, combined-stream@~1.0.6: 633 | version "1.0.8" 634 | resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" 635 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== 636 | dependencies: 637 | delayed-stream "~1.0.0" 638 | 639 | commander@^2.12.1, commander@~2.20.0: 640 | version "2.20.0" 641 | resolved "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz" 642 | integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== 643 | 644 | component-emitter@^1.2.1: 645 | version "1.3.0" 646 | resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz" 647 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== 648 | 649 | concat-map@0.0.1: 650 | version "0.0.1" 651 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 652 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 653 | 654 | convert-source-map@^1.4.0, convert-source-map@^1.5.1: 655 | version "1.6.0" 656 | resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz" 657 | integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== 658 | dependencies: 659 | safe-buffer "~5.1.1" 660 | 661 | copy-descriptor@^0.1.0: 662 | version "0.1.1" 663 | resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" 664 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= 665 | 666 | core-js@^2.4.0, core-js@^2.5.0: 667 | version "2.6.9" 668 | resolved "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz" 669 | integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== 670 | 671 | core-util-is@1.0.2, core-util-is@~1.0.0: 672 | version "1.0.2" 673 | resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" 674 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 675 | 676 | cpx@^1.5.0: 677 | version "1.5.0" 678 | resolved "https://registry.npmjs.org/cpx/-/cpx-1.5.0.tgz" 679 | integrity sha1-GFvgGFEdhycN7czCkxceN2VauI8= 680 | dependencies: 681 | babel-runtime "^6.9.2" 682 | chokidar "^1.6.0" 683 | duplexer "^0.1.1" 684 | glob "^7.0.5" 685 | glob2base "^0.0.12" 686 | minimatch "^3.0.2" 687 | mkdirp "^0.5.1" 688 | resolve "^1.1.7" 689 | safe-buffer "^5.0.1" 690 | shell-quote "^1.6.1" 691 | subarg "^1.0.0" 692 | 693 | cross-spawn@^5.0.1: 694 | version "5.1.0" 695 | resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz" 696 | integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= 697 | dependencies: 698 | lru-cache "^4.0.1" 699 | shebang-command "^1.2.0" 700 | which "^1.2.9" 701 | 702 | cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": 703 | version "0.3.8" 704 | resolved "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz" 705 | integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== 706 | 707 | cssstyle@^1.0.0: 708 | version "1.4.0" 709 | resolved "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz" 710 | integrity sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA== 711 | dependencies: 712 | cssom "0.3.x" 713 | 714 | dashdash@^1.12.0: 715 | version "1.14.1" 716 | resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz" 717 | integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= 718 | dependencies: 719 | assert-plus "^1.0.0" 720 | 721 | data-urls@^1.0.0: 722 | version "1.1.0" 723 | resolved "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz" 724 | integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== 725 | dependencies: 726 | abab "^2.0.0" 727 | whatwg-mimetype "^2.2.0" 728 | whatwg-url "^7.0.0" 729 | 730 | debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: 731 | version "2.6.9" 732 | resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" 733 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 734 | dependencies: 735 | ms "2.0.0" 736 | 737 | debug@^3.1.0: 738 | version "3.2.6" 739 | resolved "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz" 740 | integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== 741 | dependencies: 742 | ms "^2.1.1" 743 | 744 | decamelize@^1.1.1: 745 | version "1.2.0" 746 | resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" 747 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 748 | 749 | decode-uri-component@^0.2.0: 750 | version "0.2.0" 751 | resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz" 752 | integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= 753 | 754 | deep-is@~0.1.3: 755 | version "0.1.3" 756 | resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" 757 | integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= 758 | 759 | default-require-extensions@^1.0.0: 760 | version "1.0.0" 761 | resolved "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz" 762 | integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg= 763 | dependencies: 764 | strip-bom "^2.0.0" 765 | 766 | define-properties@^1.1.2: 767 | version "1.1.3" 768 | resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" 769 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 770 | dependencies: 771 | object-keys "^1.0.12" 772 | 773 | define-property@^0.2.5: 774 | version "0.2.5" 775 | resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz" 776 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= 777 | dependencies: 778 | is-descriptor "^0.1.0" 779 | 780 | define-property@^1.0.0: 781 | version "1.0.0" 782 | resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" 783 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= 784 | dependencies: 785 | is-descriptor "^1.0.0" 786 | 787 | define-property@^2.0.2: 788 | version "2.0.2" 789 | resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz" 790 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== 791 | dependencies: 792 | is-descriptor "^1.0.2" 793 | isobject "^3.0.1" 794 | 795 | delayed-stream@~1.0.0: 796 | version "1.0.0" 797 | resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" 798 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= 799 | 800 | detect-indent@^4.0.0: 801 | version "4.0.0" 802 | resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz" 803 | integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= 804 | dependencies: 805 | repeating "^2.0.0" 806 | 807 | detect-newline@^2.1.0: 808 | version "2.1.0" 809 | resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz" 810 | integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= 811 | 812 | diff@^3.2.0: 813 | version "3.5.0" 814 | resolved "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz" 815 | integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== 816 | 817 | domexception@^1.0.1: 818 | version "1.0.1" 819 | resolved "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz" 820 | integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== 821 | dependencies: 822 | webidl-conversions "^4.0.2" 823 | 824 | duplexer@^0.1.1: 825 | version "0.1.1" 826 | resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz" 827 | integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= 828 | 829 | ecc-jsbn@~0.1.1: 830 | version "0.1.2" 831 | resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz" 832 | integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= 833 | dependencies: 834 | jsbn "~0.1.0" 835 | safer-buffer "^2.1.0" 836 | 837 | encoding@^0.1.11: 838 | version "0.1.12" 839 | resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz" 840 | integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= 841 | dependencies: 842 | iconv-lite "~0.4.13" 843 | 844 | error-ex@^1.2.0: 845 | version "1.3.2" 846 | resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" 847 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 848 | dependencies: 849 | is-arrayish "^0.2.1" 850 | 851 | es-abstract@^1.5.1: 852 | version "1.14.1" 853 | resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.1.tgz" 854 | integrity sha512-cp/Tb1oA/rh2X7vqeSOvM+TSo3UkJLX70eNihgVEvnzwAgikjkTFr/QVgRCaxjm0knCNQzNoxxxcw2zO2LJdZA== 855 | dependencies: 856 | es-to-primitive "^1.2.0" 857 | function-bind "^1.1.1" 858 | has "^1.0.3" 859 | has-symbols "^1.0.0" 860 | is-callable "^1.1.4" 861 | is-regex "^1.0.4" 862 | object-inspect "^1.6.0" 863 | object-keys "^1.1.1" 864 | string.prototype.trimleft "^2.0.0" 865 | string.prototype.trimright "^2.0.0" 866 | 867 | es-to-primitive@^1.2.0: 868 | version "1.2.0" 869 | resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz" 870 | integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== 871 | dependencies: 872 | is-callable "^1.1.4" 873 | is-date-object "^1.0.1" 874 | is-symbol "^1.0.2" 875 | 876 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 877 | version "1.0.5" 878 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" 879 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 880 | 881 | escodegen@^1.9.1: 882 | version "1.12.0" 883 | resolved "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz" 884 | integrity sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg== 885 | dependencies: 886 | esprima "^3.1.3" 887 | estraverse "^4.2.0" 888 | esutils "^2.0.2" 889 | optionator "^0.8.1" 890 | optionalDependencies: 891 | source-map "~0.6.1" 892 | 893 | esprima@^3.1.3: 894 | version "3.1.3" 895 | resolved "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz" 896 | integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= 897 | 898 | esprima@^4.0.0: 899 | version "4.0.1" 900 | resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" 901 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 902 | 903 | estraverse@^4.2.0: 904 | version "4.3.0" 905 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" 906 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== 907 | 908 | esutils@^2.0.2: 909 | version "2.0.3" 910 | resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" 911 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 912 | 913 | exec-sh@^0.2.0: 914 | version "0.2.2" 915 | resolved "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.2.tgz" 916 | integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== 917 | dependencies: 918 | merge "^1.2.0" 919 | 920 | execa@^0.7.0: 921 | version "0.7.0" 922 | resolved "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz" 923 | integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= 924 | dependencies: 925 | cross-spawn "^5.0.1" 926 | get-stream "^3.0.0" 927 | is-stream "^1.1.0" 928 | npm-run-path "^2.0.0" 929 | p-finally "^1.0.0" 930 | signal-exit "^3.0.0" 931 | strip-eof "^1.0.0" 932 | 933 | exit@^0.1.2: 934 | version "0.1.2" 935 | resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz" 936 | integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= 937 | 938 | expand-brackets@^0.1.4: 939 | version "0.1.5" 940 | resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz" 941 | integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= 942 | dependencies: 943 | is-posix-bracket "^0.1.0" 944 | 945 | expand-brackets@^2.1.4: 946 | version "2.1.4" 947 | resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz" 948 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= 949 | dependencies: 950 | debug "^2.3.3" 951 | define-property "^0.2.5" 952 | extend-shallow "^2.0.1" 953 | posix-character-classes "^0.1.0" 954 | regex-not "^1.0.0" 955 | snapdragon "^0.8.1" 956 | to-regex "^3.0.1" 957 | 958 | expand-range@^1.8.1: 959 | version "1.8.2" 960 | resolved "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz" 961 | integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= 962 | dependencies: 963 | fill-range "^2.1.0" 964 | 965 | expect@^22.4.0: 966 | version "22.4.3" 967 | resolved "https://registry.npmjs.org/expect/-/expect-22.4.3.tgz" 968 | integrity sha512-XcNXEPehqn8b/jm8FYotdX0YrXn36qp4HWlrVT4ktwQas1l1LPxiVWncYnnL2eyMtKAmVIaG0XAp0QlrqJaxaA== 969 | dependencies: 970 | ansi-styles "^3.2.0" 971 | jest-diff "^22.4.3" 972 | jest-get-type "^22.4.3" 973 | jest-matcher-utils "^22.4.3" 974 | jest-message-util "^22.4.3" 975 | jest-regex-util "^22.4.3" 976 | 977 | extend-shallow@^2.0.1: 978 | version "2.0.1" 979 | resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" 980 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= 981 | dependencies: 982 | is-extendable "^0.1.0" 983 | 984 | extend-shallow@^3.0.0, extend-shallow@^3.0.2: 985 | version "3.0.2" 986 | resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" 987 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= 988 | dependencies: 989 | assign-symbols "^1.0.0" 990 | is-extendable "^1.0.1" 991 | 992 | extend@~3.0.2: 993 | version "3.0.2" 994 | resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" 995 | integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== 996 | 997 | extglob@^0.3.1: 998 | version "0.3.2" 999 | resolved "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz" 1000 | integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= 1001 | dependencies: 1002 | is-extglob "^1.0.0" 1003 | 1004 | extglob@^2.0.4: 1005 | version "2.0.4" 1006 | resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz" 1007 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== 1008 | dependencies: 1009 | array-unique "^0.3.2" 1010 | define-property "^1.0.0" 1011 | expand-brackets "^2.1.4" 1012 | extend-shallow "^2.0.1" 1013 | fragment-cache "^0.2.1" 1014 | regex-not "^1.0.0" 1015 | snapdragon "^0.8.1" 1016 | to-regex "^3.0.1" 1017 | 1018 | extsprintf@1.3.0, extsprintf@^1.2.0: 1019 | version "1.3.0" 1020 | resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" 1021 | integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= 1022 | 1023 | fast-deep-equal@^2.0.1: 1024 | version "2.0.1" 1025 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz" 1026 | integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= 1027 | 1028 | fast-json-stable-stringify@^2.0.0: 1029 | version "2.0.0" 1030 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz" 1031 | integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= 1032 | 1033 | fast-levenshtein@~2.0.4: 1034 | version "2.0.6" 1035 | resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" 1036 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 1037 | 1038 | fb-watchman@^2.0.0: 1039 | version "2.0.0" 1040 | resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz" 1041 | integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg= 1042 | dependencies: 1043 | bser "^2.0.0" 1044 | 1045 | fetch-mock@6.3.0: 1046 | version "6.3.0" 1047 | resolved "https://registry.npmjs.org/fetch-mock/-/fetch-mock-6.3.0.tgz" 1048 | integrity sha512-VDQ5dKhO91NzjrP/VtP1np9/sgdJTSvFTk4qiG2+VhpyN6d08xGuQ2YjoA6FvOuugNYQw4LkPMR5Q8UAhqhY9g== 1049 | dependencies: 1050 | glob-to-regexp "^0.4.0" 1051 | path-to-regexp "^2.1.0" 1052 | 1053 | file-uri-to-path@1.0.0: 1054 | version "1.0.0" 1055 | resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" 1056 | integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== 1057 | 1058 | filename-regex@^2.0.0: 1059 | version "2.0.1" 1060 | resolved "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz" 1061 | integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= 1062 | 1063 | fileset@^2.0.2: 1064 | version "2.0.3" 1065 | resolved "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz" 1066 | integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= 1067 | dependencies: 1068 | glob "^7.0.3" 1069 | minimatch "^3.0.3" 1070 | 1071 | fill-range@^2.1.0: 1072 | version "2.2.4" 1073 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz" 1074 | integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== 1075 | dependencies: 1076 | is-number "^2.1.0" 1077 | isobject "^2.0.0" 1078 | randomatic "^3.0.0" 1079 | repeat-element "^1.1.2" 1080 | repeat-string "^1.5.2" 1081 | 1082 | fill-range@^4.0.0: 1083 | version "4.0.0" 1084 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz" 1085 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= 1086 | dependencies: 1087 | extend-shallow "^2.0.1" 1088 | is-number "^3.0.0" 1089 | repeat-string "^1.6.1" 1090 | to-regex-range "^2.1.0" 1091 | 1092 | find-index@^0.1.1: 1093 | version "0.1.1" 1094 | resolved "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz" 1095 | integrity sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ= 1096 | 1097 | find-up@^1.0.0: 1098 | version "1.1.2" 1099 | resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz" 1100 | integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= 1101 | dependencies: 1102 | path-exists "^2.0.0" 1103 | pinkie-promise "^2.0.0" 1104 | 1105 | find-up@^2.1.0: 1106 | version "2.1.0" 1107 | resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" 1108 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 1109 | dependencies: 1110 | locate-path "^2.0.0" 1111 | 1112 | for-in@^1.0.1, for-in@^1.0.2: 1113 | version "1.0.2" 1114 | resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" 1115 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 1116 | 1117 | for-own@^0.1.4: 1118 | version "0.1.5" 1119 | resolved "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz" 1120 | integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= 1121 | dependencies: 1122 | for-in "^1.0.1" 1123 | 1124 | forever-agent@~0.6.1: 1125 | version "0.6.1" 1126 | resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" 1127 | integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= 1128 | 1129 | form-data@~2.3.2: 1130 | version "2.3.3" 1131 | resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz" 1132 | integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== 1133 | dependencies: 1134 | asynckit "^0.4.0" 1135 | combined-stream "^1.0.6" 1136 | mime-types "^2.1.12" 1137 | 1138 | fragment-cache@^0.2.1: 1139 | version "0.2.1" 1140 | resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz" 1141 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= 1142 | dependencies: 1143 | map-cache "^0.2.2" 1144 | 1145 | fs-extra@6.0.0: 1146 | version "6.0.0" 1147 | resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.0.tgz" 1148 | integrity sha512-lk2cUCo8QzbiEWEbt7Cw3m27WMiRG321xsssbcIpfMhpRjrlC08WBOVQqj1/nQYYNnPtyIhP1oqLO3QwT2tPCw== 1149 | dependencies: 1150 | graceful-fs "^4.1.2" 1151 | jsonfile "^4.0.0" 1152 | universalify "^0.1.0" 1153 | 1154 | fs.realpath@^1.0.0: 1155 | version "1.0.0" 1156 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" 1157 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 1158 | 1159 | fsevents@^1.0.0, fsevents@^1.2.3: 1160 | version "1.2.13" 1161 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" 1162 | integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== 1163 | dependencies: 1164 | bindings "^1.5.0" 1165 | nan "^2.12.1" 1166 | 1167 | function-bind@^1.0.2, function-bind@^1.1.1: 1168 | version "1.1.1" 1169 | resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" 1170 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 1171 | 1172 | get-caller-file@^1.0.1: 1173 | version "1.0.3" 1174 | resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz" 1175 | integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== 1176 | 1177 | get-stream@^3.0.0: 1178 | version "3.0.0" 1179 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz" 1180 | integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= 1181 | 1182 | get-value@^2.0.3, get-value@^2.0.6: 1183 | version "2.0.6" 1184 | resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz" 1185 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= 1186 | 1187 | getpass@^0.1.1: 1188 | version "0.1.7" 1189 | resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz" 1190 | integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= 1191 | dependencies: 1192 | assert-plus "^1.0.0" 1193 | 1194 | glob-base@^0.3.0: 1195 | version "0.3.0" 1196 | resolved "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz" 1197 | integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= 1198 | dependencies: 1199 | glob-parent "^2.0.0" 1200 | is-glob "^2.0.0" 1201 | 1202 | glob-parent@^2.0.0: 1203 | version "2.0.0" 1204 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz" 1205 | integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= 1206 | dependencies: 1207 | is-glob "^2.0.0" 1208 | 1209 | glob-to-regexp@^0.4.0: 1210 | version "0.4.1" 1211 | resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz" 1212 | integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== 1213 | 1214 | glob2base@^0.0.12: 1215 | version "0.0.12" 1216 | resolved "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz" 1217 | integrity sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY= 1218 | dependencies: 1219 | find-index "^0.1.1" 1220 | 1221 | glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: 1222 | version "7.1.4" 1223 | resolved "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz" 1224 | integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== 1225 | dependencies: 1226 | fs.realpath "^1.0.0" 1227 | inflight "^1.0.4" 1228 | inherits "2" 1229 | minimatch "^3.0.4" 1230 | once "^1.3.0" 1231 | path-is-absolute "^1.0.0" 1232 | 1233 | globals@^9.18.0: 1234 | version "9.18.0" 1235 | resolved "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz" 1236 | integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== 1237 | 1238 | graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: 1239 | version "4.2.2" 1240 | resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz" 1241 | integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== 1242 | 1243 | growly@^1.3.0: 1244 | version "1.3.0" 1245 | resolved "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz" 1246 | integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= 1247 | 1248 | handlebars@^4.0.3: 1249 | version "4.2.0" 1250 | resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.2.0.tgz" 1251 | integrity sha512-Kb4xn5Qh1cxAKvQnzNWZ512DhABzyFNmsaJf3OAkWNa4NkaqWcNI8Tao8Tasi0/F4JD9oyG0YxuFyvyR57d+Gw== 1252 | dependencies: 1253 | neo-async "^2.6.0" 1254 | optimist "^0.6.1" 1255 | source-map "^0.6.1" 1256 | optionalDependencies: 1257 | uglify-js "^3.1.4" 1258 | 1259 | har-schema@^2.0.0: 1260 | version "2.0.0" 1261 | resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz" 1262 | integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= 1263 | 1264 | har-validator@~5.1.0: 1265 | version "5.1.3" 1266 | resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz" 1267 | integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== 1268 | dependencies: 1269 | ajv "^6.5.5" 1270 | har-schema "^2.0.0" 1271 | 1272 | has-ansi@^2.0.0: 1273 | version "2.0.0" 1274 | resolved "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" 1275 | integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= 1276 | dependencies: 1277 | ansi-regex "^2.0.0" 1278 | 1279 | has-flag@^1.0.0: 1280 | version "1.0.0" 1281 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz" 1282 | integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= 1283 | 1284 | has-flag@^3.0.0: 1285 | version "3.0.0" 1286 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" 1287 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1288 | 1289 | has-symbols@^1.0.0: 1290 | version "1.0.0" 1291 | resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz" 1292 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 1293 | 1294 | has-value@^0.3.1: 1295 | version "0.3.1" 1296 | resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz" 1297 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= 1298 | dependencies: 1299 | get-value "^2.0.3" 1300 | has-values "^0.1.4" 1301 | isobject "^2.0.0" 1302 | 1303 | has-value@^1.0.0: 1304 | version "1.0.0" 1305 | resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz" 1306 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= 1307 | dependencies: 1308 | get-value "^2.0.6" 1309 | has-values "^1.0.0" 1310 | isobject "^3.0.0" 1311 | 1312 | has-values@^0.1.4: 1313 | version "0.1.4" 1314 | resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz" 1315 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= 1316 | 1317 | has-values@^1.0.0: 1318 | version "1.0.0" 1319 | resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz" 1320 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= 1321 | dependencies: 1322 | is-number "^3.0.0" 1323 | kind-of "^4.0.0" 1324 | 1325 | has@^1.0.1, has@^1.0.3: 1326 | version "1.0.3" 1327 | resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" 1328 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1329 | dependencies: 1330 | function-bind "^1.1.1" 1331 | 1332 | home-or-tmp@^2.0.0: 1333 | version "2.0.0" 1334 | resolved "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz" 1335 | integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= 1336 | dependencies: 1337 | os-homedir "^1.0.0" 1338 | os-tmpdir "^1.0.1" 1339 | 1340 | hosted-git-info@^2.1.4: 1341 | version "2.8.4" 1342 | resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz" 1343 | integrity sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ== 1344 | 1345 | html-encoding-sniffer@^1.0.2: 1346 | version "1.0.2" 1347 | resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz" 1348 | integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== 1349 | dependencies: 1350 | whatwg-encoding "^1.0.1" 1351 | 1352 | http-signature@~1.2.0: 1353 | version "1.2.0" 1354 | resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz" 1355 | integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= 1356 | dependencies: 1357 | assert-plus "^1.0.0" 1358 | jsprim "^1.2.2" 1359 | sshpk "^1.7.0" 1360 | 1361 | iconv-lite@0.4.24, iconv-lite@~0.4.13: 1362 | version "0.4.24" 1363 | resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" 1364 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1365 | dependencies: 1366 | safer-buffer ">= 2.1.2 < 3" 1367 | 1368 | import-local@^1.0.0: 1369 | version "1.0.0" 1370 | resolved "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz" 1371 | integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ== 1372 | dependencies: 1373 | pkg-dir "^2.0.0" 1374 | resolve-cwd "^2.0.0" 1375 | 1376 | imurmurhash@^0.1.4: 1377 | version "0.1.4" 1378 | resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" 1379 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 1380 | 1381 | inflight@^1.0.4: 1382 | version "1.0.6" 1383 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" 1384 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 1385 | dependencies: 1386 | once "^1.3.0" 1387 | wrappy "1" 1388 | 1389 | inherits@2, inherits@^2.0.1, inherits@~2.0.3: 1390 | version "2.0.4" 1391 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" 1392 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1393 | 1394 | invariant@^2.2.2: 1395 | version "2.2.4" 1396 | resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz" 1397 | integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 1398 | dependencies: 1399 | loose-envify "^1.0.0" 1400 | 1401 | invert-kv@^1.0.0: 1402 | version "1.0.0" 1403 | resolved "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz" 1404 | integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= 1405 | 1406 | is-accessor-descriptor@^0.1.6: 1407 | version "0.1.6" 1408 | resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz" 1409 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= 1410 | dependencies: 1411 | kind-of "^3.0.2" 1412 | 1413 | is-accessor-descriptor@^1.0.0: 1414 | version "1.0.0" 1415 | resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz" 1416 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== 1417 | dependencies: 1418 | kind-of "^6.0.0" 1419 | 1420 | is-arrayish@^0.2.1: 1421 | version "0.2.1" 1422 | resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" 1423 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 1424 | 1425 | is-binary-path@^1.0.0: 1426 | version "1.0.1" 1427 | resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz" 1428 | integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= 1429 | dependencies: 1430 | binary-extensions "^1.0.0" 1431 | 1432 | is-buffer@^1.1.5: 1433 | version "1.1.6" 1434 | resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" 1435 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== 1436 | 1437 | is-callable@^1.1.4: 1438 | version "1.1.4" 1439 | resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz" 1440 | integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== 1441 | 1442 | is-ci@^1.0.10: 1443 | version "1.2.1" 1444 | resolved "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz" 1445 | integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== 1446 | dependencies: 1447 | ci-info "^1.5.0" 1448 | 1449 | is-data-descriptor@^0.1.4: 1450 | version "0.1.4" 1451 | resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz" 1452 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= 1453 | dependencies: 1454 | kind-of "^3.0.2" 1455 | 1456 | is-data-descriptor@^1.0.0: 1457 | version "1.0.0" 1458 | resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz" 1459 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== 1460 | dependencies: 1461 | kind-of "^6.0.0" 1462 | 1463 | is-date-object@^1.0.1: 1464 | version "1.0.1" 1465 | resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz" 1466 | integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= 1467 | 1468 | is-descriptor@^0.1.0: 1469 | version "0.1.6" 1470 | resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz" 1471 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== 1472 | dependencies: 1473 | is-accessor-descriptor "^0.1.6" 1474 | is-data-descriptor "^0.1.4" 1475 | kind-of "^5.0.0" 1476 | 1477 | is-descriptor@^1.0.0, is-descriptor@^1.0.2: 1478 | version "1.0.2" 1479 | resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz" 1480 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== 1481 | dependencies: 1482 | is-accessor-descriptor "^1.0.0" 1483 | is-data-descriptor "^1.0.0" 1484 | kind-of "^6.0.2" 1485 | 1486 | is-dotfile@^1.0.0: 1487 | version "1.0.3" 1488 | resolved "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz" 1489 | integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= 1490 | 1491 | is-equal-shallow@^0.1.3: 1492 | version "0.1.3" 1493 | resolved "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz" 1494 | integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= 1495 | dependencies: 1496 | is-primitive "^2.0.0" 1497 | 1498 | is-extendable@^0.1.0, is-extendable@^0.1.1: 1499 | version "0.1.1" 1500 | resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" 1501 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 1502 | 1503 | is-extendable@^1.0.1: 1504 | version "1.0.1" 1505 | resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz" 1506 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== 1507 | dependencies: 1508 | is-plain-object "^2.0.4" 1509 | 1510 | is-extglob@^1.0.0: 1511 | version "1.0.0" 1512 | resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" 1513 | integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= 1514 | 1515 | is-finite@^1.0.0: 1516 | version "1.0.2" 1517 | resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz" 1518 | integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= 1519 | dependencies: 1520 | number-is-nan "^1.0.0" 1521 | 1522 | is-fullwidth-code-point@^1.0.0: 1523 | version "1.0.0" 1524 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz" 1525 | integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= 1526 | dependencies: 1527 | number-is-nan "^1.0.0" 1528 | 1529 | is-fullwidth-code-point@^2.0.0: 1530 | version "2.0.0" 1531 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" 1532 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1533 | 1534 | is-generator-fn@^1.0.0: 1535 | version "1.0.0" 1536 | resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz" 1537 | integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go= 1538 | 1539 | is-glob@^2.0.0, is-glob@^2.0.1: 1540 | version "2.0.1" 1541 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" 1542 | integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= 1543 | dependencies: 1544 | is-extglob "^1.0.0" 1545 | 1546 | is-number@^2.1.0: 1547 | version "2.1.0" 1548 | resolved "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz" 1549 | integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= 1550 | dependencies: 1551 | kind-of "^3.0.2" 1552 | 1553 | is-number@^3.0.0: 1554 | version "3.0.0" 1555 | resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" 1556 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= 1557 | dependencies: 1558 | kind-of "^3.0.2" 1559 | 1560 | is-number@^4.0.0: 1561 | version "4.0.0" 1562 | resolved "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz" 1563 | integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== 1564 | 1565 | is-plain-object@^2.0.3, is-plain-object@^2.0.4: 1566 | version "2.0.4" 1567 | resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" 1568 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== 1569 | dependencies: 1570 | isobject "^3.0.1" 1571 | 1572 | is-posix-bracket@^0.1.0: 1573 | version "0.1.1" 1574 | resolved "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz" 1575 | integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= 1576 | 1577 | is-primitive@^2.0.0: 1578 | version "2.0.0" 1579 | resolved "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz" 1580 | integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= 1581 | 1582 | is-regex@^1.0.4: 1583 | version "1.0.4" 1584 | resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz" 1585 | integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= 1586 | dependencies: 1587 | has "^1.0.1" 1588 | 1589 | is-stream@^1.0.1, is-stream@^1.1.0: 1590 | version "1.1.0" 1591 | resolved "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz" 1592 | integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= 1593 | 1594 | is-symbol@^1.0.2: 1595 | version "1.0.2" 1596 | resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz" 1597 | integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== 1598 | dependencies: 1599 | has-symbols "^1.0.0" 1600 | 1601 | is-typedarray@~1.0.0: 1602 | version "1.0.0" 1603 | resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" 1604 | integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= 1605 | 1606 | is-utf8@^0.2.0: 1607 | version "0.2.1" 1608 | resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" 1609 | integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= 1610 | 1611 | is-windows@^1.0.2: 1612 | version "1.0.2" 1613 | resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" 1614 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== 1615 | 1616 | is-wsl@^1.1.0: 1617 | version "1.1.0" 1618 | resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz" 1619 | integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= 1620 | 1621 | isarray@1.0.0, isarray@~1.0.0: 1622 | version "1.0.0" 1623 | resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" 1624 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 1625 | 1626 | isexe@^2.0.0: 1627 | version "2.0.0" 1628 | resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" 1629 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 1630 | 1631 | isobject@^2.0.0: 1632 | version "2.1.0" 1633 | resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" 1634 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 1635 | dependencies: 1636 | isarray "1.0.0" 1637 | 1638 | isobject@^3.0.0, isobject@^3.0.1: 1639 | version "3.0.1" 1640 | resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" 1641 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= 1642 | 1643 | isomorphic-fetch@^2.2.1: 1644 | version "2.2.1" 1645 | resolved "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz" 1646 | integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= 1647 | dependencies: 1648 | node-fetch "^1.0.1" 1649 | whatwg-fetch ">=0.10.0" 1650 | 1651 | isstream@~0.1.2: 1652 | version "0.1.2" 1653 | resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" 1654 | integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= 1655 | 1656 | istanbul-api@^1.1.14: 1657 | version "1.3.7" 1658 | resolved "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.7.tgz" 1659 | integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA== 1660 | dependencies: 1661 | async "^2.1.4" 1662 | fileset "^2.0.2" 1663 | istanbul-lib-coverage "^1.2.1" 1664 | istanbul-lib-hook "^1.2.2" 1665 | istanbul-lib-instrument "^1.10.2" 1666 | istanbul-lib-report "^1.1.5" 1667 | istanbul-lib-source-maps "^1.2.6" 1668 | istanbul-reports "^1.5.1" 1669 | js-yaml "^3.7.0" 1670 | mkdirp "^0.5.1" 1671 | once "^1.4.0" 1672 | 1673 | istanbul-lib-coverage@^1.1.1, istanbul-lib-coverage@^1.2.1: 1674 | version "1.2.1" 1675 | resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz" 1676 | integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== 1677 | 1678 | istanbul-lib-hook@^1.2.2: 1679 | version "1.2.2" 1680 | resolved "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz" 1681 | integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw== 1682 | dependencies: 1683 | append-transform "^0.4.0" 1684 | 1685 | istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2, istanbul-lib-instrument@^1.8.0: 1686 | version "1.10.2" 1687 | resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz" 1688 | integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== 1689 | dependencies: 1690 | babel-generator "^6.18.0" 1691 | babel-template "^6.16.0" 1692 | babel-traverse "^6.18.0" 1693 | babel-types "^6.18.0" 1694 | babylon "^6.18.0" 1695 | istanbul-lib-coverage "^1.2.1" 1696 | semver "^5.3.0" 1697 | 1698 | istanbul-lib-report@^1.1.5: 1699 | version "1.1.5" 1700 | resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz" 1701 | integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw== 1702 | dependencies: 1703 | istanbul-lib-coverage "^1.2.1" 1704 | mkdirp "^0.5.1" 1705 | path-parse "^1.0.5" 1706 | supports-color "^3.1.2" 1707 | 1708 | istanbul-lib-source-maps@^1.2.1, istanbul-lib-source-maps@^1.2.6: 1709 | version "1.2.6" 1710 | resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz" 1711 | integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg== 1712 | dependencies: 1713 | debug "^3.1.0" 1714 | istanbul-lib-coverage "^1.2.1" 1715 | mkdirp "^0.5.1" 1716 | rimraf "^2.6.1" 1717 | source-map "^0.5.3" 1718 | 1719 | istanbul-reports@^1.5.1: 1720 | version "1.5.1" 1721 | resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.5.1.tgz" 1722 | integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw== 1723 | dependencies: 1724 | handlebars "^4.0.3" 1725 | 1726 | jest-changed-files@^22.2.0: 1727 | version "22.4.3" 1728 | resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-22.4.3.tgz" 1729 | integrity sha512-83Dh0w1aSkUNFhy5d2dvqWxi/y6weDwVVLU6vmK0cV9VpRxPzhTeGimbsbRDSnEoszhF937M4sDLLeS7Cu/Tmw== 1730 | dependencies: 1731 | throat "^4.0.0" 1732 | 1733 | jest-cli@^22.4.3: 1734 | version "22.4.4" 1735 | resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-22.4.4.tgz" 1736 | integrity sha512-I9dsgkeyjVEEZj9wrGrqlH+8OlNob9Iptyl+6L5+ToOLJmHm4JwOPatin1b2Bzp5R5YRQJ+oiedx7o1H7wJzhA== 1737 | dependencies: 1738 | ansi-escapes "^3.0.0" 1739 | chalk "^2.0.1" 1740 | exit "^0.1.2" 1741 | glob "^7.1.2" 1742 | graceful-fs "^4.1.11" 1743 | import-local "^1.0.0" 1744 | is-ci "^1.0.10" 1745 | istanbul-api "^1.1.14" 1746 | istanbul-lib-coverage "^1.1.1" 1747 | istanbul-lib-instrument "^1.8.0" 1748 | istanbul-lib-source-maps "^1.2.1" 1749 | jest-changed-files "^22.2.0" 1750 | jest-config "^22.4.4" 1751 | jest-environment-jsdom "^22.4.1" 1752 | jest-get-type "^22.1.0" 1753 | jest-haste-map "^22.4.2" 1754 | jest-message-util "^22.4.0" 1755 | jest-regex-util "^22.1.0" 1756 | jest-resolve-dependencies "^22.1.0" 1757 | jest-runner "^22.4.4" 1758 | jest-runtime "^22.4.4" 1759 | jest-snapshot "^22.4.0" 1760 | jest-util "^22.4.1" 1761 | jest-validate "^22.4.4" 1762 | jest-worker "^22.2.2" 1763 | micromatch "^2.3.11" 1764 | node-notifier "^5.2.1" 1765 | realpath-native "^1.0.0" 1766 | rimraf "^2.5.4" 1767 | slash "^1.0.0" 1768 | string-length "^2.0.0" 1769 | strip-ansi "^4.0.0" 1770 | which "^1.2.12" 1771 | yargs "^10.0.3" 1772 | 1773 | jest-config@^22.4.3, jest-config@^22.4.4: 1774 | version "22.4.4" 1775 | resolved "https://registry.npmjs.org/jest-config/-/jest-config-22.4.4.tgz" 1776 | integrity sha512-9CKfo1GC4zrXSoMLcNeDvQBfgtqGTB1uP8iDIZ97oB26RCUb886KkKWhVcpyxVDOUxbhN+uzcBCeFe7w+Iem4A== 1777 | dependencies: 1778 | chalk "^2.0.1" 1779 | glob "^7.1.1" 1780 | jest-environment-jsdom "^22.4.1" 1781 | jest-environment-node "^22.4.1" 1782 | jest-get-type "^22.1.0" 1783 | jest-jasmine2 "^22.4.4" 1784 | jest-regex-util "^22.1.0" 1785 | jest-resolve "^22.4.2" 1786 | jest-util "^22.4.1" 1787 | jest-validate "^22.4.4" 1788 | pretty-format "^22.4.0" 1789 | 1790 | jest-diff@^22.4.0, jest-diff@^22.4.3: 1791 | version "22.4.3" 1792 | resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-22.4.3.tgz" 1793 | integrity sha512-/QqGvCDP5oZOF6PebDuLwrB2BMD8ffJv6TAGAdEVuDx1+uEgrHpSFrfrOiMRx2eJ1hgNjlQrOQEHetVwij90KA== 1794 | dependencies: 1795 | chalk "^2.0.1" 1796 | diff "^3.2.0" 1797 | jest-get-type "^22.4.3" 1798 | pretty-format "^22.4.3" 1799 | 1800 | jest-docblock@^22.4.0, jest-docblock@^22.4.3: 1801 | version "22.4.3" 1802 | resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-22.4.3.tgz" 1803 | integrity sha512-uPKBEAw7YrEMcXueMKZXn/rbMxBiSv48fSqy3uEnmgOlQhSX+lthBqHb1fKWNVmFqAp9E/RsSdBfiV31LbzaOg== 1804 | dependencies: 1805 | detect-newline "^2.1.0" 1806 | 1807 | jest-environment-jsdom@^22.4.1: 1808 | version "22.4.3" 1809 | resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-22.4.3.tgz" 1810 | integrity sha512-FviwfR+VyT3Datf13+ULjIMO5CSeajlayhhYQwpzgunswoaLIPutdbrnfUHEMyJCwvqQFaVtTmn9+Y8WCt6n1w== 1811 | dependencies: 1812 | jest-mock "^22.4.3" 1813 | jest-util "^22.4.3" 1814 | jsdom "^11.5.1" 1815 | 1816 | jest-environment-node@^22.4.1: 1817 | version "22.4.3" 1818 | resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-22.4.3.tgz" 1819 | integrity sha512-reZl8XF6t/lMEuPWwo9OLfttyC26A5AMgDyEQ6DBgZuyfyeNUzYT8BFo6uxCCP/Av/b7eb9fTi3sIHFPBzmlRA== 1820 | dependencies: 1821 | jest-mock "^22.4.3" 1822 | jest-util "^22.4.3" 1823 | 1824 | jest-get-type@^22.1.0, jest-get-type@^22.4.3: 1825 | version "22.4.3" 1826 | resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz" 1827 | integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== 1828 | 1829 | jest-haste-map@^22.4.2: 1830 | version "22.4.3" 1831 | resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-22.4.3.tgz" 1832 | integrity sha512-4Q9fjzuPVwnaqGKDpIsCSoTSnG3cteyk2oNVjBX12HHOaF1oxql+uUiqZb5Ndu7g/vTZfdNwwy4WwYogLh29DQ== 1833 | dependencies: 1834 | fb-watchman "^2.0.0" 1835 | graceful-fs "^4.1.11" 1836 | jest-docblock "^22.4.3" 1837 | jest-serializer "^22.4.3" 1838 | jest-worker "^22.4.3" 1839 | micromatch "^2.3.11" 1840 | sane "^2.0.0" 1841 | 1842 | jest-jasmine2@^22.4.4: 1843 | version "22.4.4" 1844 | resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-22.4.4.tgz" 1845 | integrity sha512-nK3vdUl50MuH7vj/8at7EQVjPGWCi3d5+6aCi7Gxy/XMWdOdbH1qtO/LjKbqD8+8dUAEH+BVVh7HkjpCWC1CSw== 1846 | dependencies: 1847 | chalk "^2.0.1" 1848 | co "^4.6.0" 1849 | expect "^22.4.0" 1850 | graceful-fs "^4.1.11" 1851 | is-generator-fn "^1.0.0" 1852 | jest-diff "^22.4.0" 1853 | jest-matcher-utils "^22.4.0" 1854 | jest-message-util "^22.4.0" 1855 | jest-snapshot "^22.4.0" 1856 | jest-util "^22.4.1" 1857 | source-map-support "^0.5.0" 1858 | 1859 | jest-leak-detector@^22.4.0: 1860 | version "22.4.3" 1861 | resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-22.4.3.tgz" 1862 | integrity sha512-NZpR/Ls7+ndO57LuXROdgCGz2RmUdC541tTImL9bdUtU3WadgFGm0yV+Ok4Fuia/1rLAn5KaJ+i76L6e3zGJYQ== 1863 | dependencies: 1864 | pretty-format "^22.4.3" 1865 | 1866 | jest-matcher-utils@^22.4.0, jest-matcher-utils@^22.4.3: 1867 | version "22.4.3" 1868 | resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-22.4.3.tgz" 1869 | integrity sha512-lsEHVaTnKzdAPR5t4B6OcxXo9Vy4K+kRRbG5gtddY8lBEC+Mlpvm1CJcsMESRjzUhzkz568exMV1hTB76nAKbA== 1870 | dependencies: 1871 | chalk "^2.0.1" 1872 | jest-get-type "^22.4.3" 1873 | pretty-format "^22.4.3" 1874 | 1875 | jest-message-util@^22.4.0, jest-message-util@^22.4.3: 1876 | version "22.4.3" 1877 | resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-22.4.3.tgz" 1878 | integrity sha512-iAMeKxhB3Se5xkSjU0NndLLCHtP4n+GtCqV0bISKA5dmOXQfEbdEmYiu2qpnWBDCQdEafNDDU6Q+l6oBMd/+BA== 1879 | dependencies: 1880 | "@babel/code-frame" "^7.0.0-beta.35" 1881 | chalk "^2.0.1" 1882 | micromatch "^2.3.11" 1883 | slash "^1.0.0" 1884 | stack-utils "^1.0.1" 1885 | 1886 | jest-mock@^22.4.3: 1887 | version "22.4.3" 1888 | resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-22.4.3.tgz" 1889 | integrity sha512-+4R6mH5M1G4NK16CKg9N1DtCaFmuxhcIqF4lQK/Q1CIotqMs/XBemfpDPeVZBFow6iyUNu6EBT9ugdNOTT5o5Q== 1890 | 1891 | jest-regex-util@^22.1.0, jest-regex-util@^22.4.3: 1892 | version "22.4.3" 1893 | resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-22.4.3.tgz" 1894 | integrity sha512-LFg1gWr3QinIjb8j833bq7jtQopiwdAs67OGfkPrvy7uNUbVMfTXXcOKXJaeY5GgjobELkKvKENqq1xrUectWg== 1895 | 1896 | jest-resolve-dependencies@^22.1.0: 1897 | version "22.4.3" 1898 | resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-22.4.3.tgz" 1899 | integrity sha512-06czCMVToSN8F2U4EvgSB1Bv/56gc7MpCftZ9z9fBgUQM7dzHGCMBsyfVA6dZTx8v0FDcnALf7hupeQxaBCvpA== 1900 | dependencies: 1901 | jest-regex-util "^22.4.3" 1902 | 1903 | jest-resolve@^22.4.2: 1904 | version "22.4.3" 1905 | resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-22.4.3.tgz" 1906 | integrity sha512-u3BkD/MQBmwrOJDzDIaxpyqTxYH+XqAXzVJP51gt29H8jpj3QgKof5GGO2uPGKGeA1yTMlpbMs1gIQ6U4vcRhw== 1907 | dependencies: 1908 | browser-resolve "^1.11.2" 1909 | chalk "^2.0.1" 1910 | 1911 | jest-runner@^22.4.4: 1912 | version "22.4.4" 1913 | resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-22.4.4.tgz" 1914 | integrity sha512-5S/OpB51igQW9xnkM5Tgd/7ZjiAuIoiJAVtvVTBcEBiXBIFzWM3BAMPBM19FX68gRV0KWyFuGKj0EY3M3aceeQ== 1915 | dependencies: 1916 | exit "^0.1.2" 1917 | jest-config "^22.4.4" 1918 | jest-docblock "^22.4.0" 1919 | jest-haste-map "^22.4.2" 1920 | jest-jasmine2 "^22.4.4" 1921 | jest-leak-detector "^22.4.0" 1922 | jest-message-util "^22.4.0" 1923 | jest-runtime "^22.4.4" 1924 | jest-util "^22.4.1" 1925 | jest-worker "^22.2.2" 1926 | throat "^4.0.0" 1927 | 1928 | jest-runtime@^22.4.4: 1929 | version "22.4.4" 1930 | resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-22.4.4.tgz" 1931 | integrity sha512-WRTj9m///npte1YjuphCYX7GRY/c2YvJImU9t7qOwFcqHr4YMzmX6evP/3Sehz5DKW2Vi8ONYPCFWe36JVXxfw== 1932 | dependencies: 1933 | babel-core "^6.0.0" 1934 | babel-jest "^22.4.4" 1935 | babel-plugin-istanbul "^4.1.5" 1936 | chalk "^2.0.1" 1937 | convert-source-map "^1.4.0" 1938 | exit "^0.1.2" 1939 | graceful-fs "^4.1.11" 1940 | jest-config "^22.4.4" 1941 | jest-haste-map "^22.4.2" 1942 | jest-regex-util "^22.1.0" 1943 | jest-resolve "^22.4.2" 1944 | jest-util "^22.4.1" 1945 | jest-validate "^22.4.4" 1946 | json-stable-stringify "^1.0.1" 1947 | micromatch "^2.3.11" 1948 | realpath-native "^1.0.0" 1949 | slash "^1.0.0" 1950 | strip-bom "3.0.0" 1951 | write-file-atomic "^2.1.0" 1952 | yargs "^10.0.3" 1953 | 1954 | jest-serializer@^22.4.3: 1955 | version "22.4.3" 1956 | resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-22.4.3.tgz" 1957 | integrity sha512-uPaUAppx4VUfJ0QDerpNdF43F68eqKWCzzhUlKNDsUPhjOon7ZehR4C809GCqh765FoMRtTVUVnGvIoskkYHiw== 1958 | 1959 | jest-snapshot@^22.4.0: 1960 | version "22.4.3" 1961 | resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-22.4.3.tgz" 1962 | integrity sha512-JXA0gVs5YL0HtLDCGa9YxcmmV2LZbwJ+0MfyXBBc5qpgkEYITQFJP7XNhcHFbUvRiniRpRbGVfJrOoYhhGE0RQ== 1963 | dependencies: 1964 | chalk "^2.0.1" 1965 | jest-diff "^22.4.3" 1966 | jest-matcher-utils "^22.4.3" 1967 | mkdirp "^0.5.1" 1968 | natural-compare "^1.4.0" 1969 | pretty-format "^22.4.3" 1970 | 1971 | jest-util@^22.4.1, jest-util@^22.4.3: 1972 | version "22.4.3" 1973 | resolved "https://registry.npmjs.org/jest-util/-/jest-util-22.4.3.tgz" 1974 | integrity sha512-rfDfG8wyC5pDPNdcnAlZgwKnzHvZDu8Td2NJI/jAGKEGxJPYiE4F0ss/gSAkG4778Y23Hvbz+0GMrDJTeo7RjQ== 1975 | dependencies: 1976 | callsites "^2.0.0" 1977 | chalk "^2.0.1" 1978 | graceful-fs "^4.1.11" 1979 | is-ci "^1.0.10" 1980 | jest-message-util "^22.4.3" 1981 | mkdirp "^0.5.1" 1982 | source-map "^0.6.0" 1983 | 1984 | jest-validate@^22.4.4: 1985 | version "22.4.4" 1986 | resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-22.4.4.tgz" 1987 | integrity sha512-dmlf4CIZRGvkaVg3fa0uetepcua44DHtktHm6rcoNVtYlpwe6fEJRkMFsaUVcFHLzbuBJ2cPw9Gl9TKfnzMVwg== 1988 | dependencies: 1989 | chalk "^2.0.1" 1990 | jest-config "^22.4.4" 1991 | jest-get-type "^22.1.0" 1992 | leven "^2.1.0" 1993 | pretty-format "^22.4.0" 1994 | 1995 | jest-worker@^22.2.2, jest-worker@^22.4.3: 1996 | version "22.4.3" 1997 | resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-22.4.3.tgz" 1998 | integrity sha512-B1ucW4fI8qVAuZmicFxI1R3kr2fNeYJyvIQ1rKcuLYnenFV5K5aMbxFj6J0i00Ju83S8jP2d7Dz14+AvbIHRYQ== 1999 | dependencies: 2000 | merge-stream "^1.0.1" 2001 | 2002 | jest@22.4.3: 2003 | version "22.4.3" 2004 | resolved "https://registry.npmjs.org/jest/-/jest-22.4.3.tgz" 2005 | integrity sha512-FFCdU/pXOEASfHxFDOWUysI/+FFoqiXJADEIXgDKuZyqSmBD3tZ4BEGH7+M79v7czj7bbkhwtd2LaEDcJiM/GQ== 2006 | dependencies: 2007 | import-local "^1.0.0" 2008 | jest-cli "^22.4.3" 2009 | 2010 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^3.0.2: 2011 | version "3.0.2" 2012 | resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz" 2013 | integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= 2014 | 2015 | js-tokens@^4.0.0: 2016 | version "4.0.0" 2017 | resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" 2018 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 2019 | 2020 | js-yaml@^3.13.1, js-yaml@^3.7.0: 2021 | version "3.13.1" 2022 | resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz" 2023 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== 2024 | dependencies: 2025 | argparse "^1.0.7" 2026 | esprima "^4.0.0" 2027 | 2028 | jsbn@~0.1.0: 2029 | version "0.1.1" 2030 | resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" 2031 | integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= 2032 | 2033 | jsdom@^11.5.1: 2034 | version "11.12.0" 2035 | resolved "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz" 2036 | integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== 2037 | dependencies: 2038 | abab "^2.0.0" 2039 | acorn "^5.5.3" 2040 | acorn-globals "^4.1.0" 2041 | array-equal "^1.0.0" 2042 | cssom ">= 0.3.2 < 0.4.0" 2043 | cssstyle "^1.0.0" 2044 | data-urls "^1.0.0" 2045 | domexception "^1.0.1" 2046 | escodegen "^1.9.1" 2047 | html-encoding-sniffer "^1.0.2" 2048 | left-pad "^1.3.0" 2049 | nwsapi "^2.0.7" 2050 | parse5 "4.0.0" 2051 | pn "^1.1.0" 2052 | request "^2.87.0" 2053 | request-promise-native "^1.0.5" 2054 | sax "^1.2.4" 2055 | symbol-tree "^3.2.2" 2056 | tough-cookie "^2.3.4" 2057 | w3c-hr-time "^1.0.1" 2058 | webidl-conversions "^4.0.2" 2059 | whatwg-encoding "^1.0.3" 2060 | whatwg-mimetype "^2.1.0" 2061 | whatwg-url "^6.4.1" 2062 | ws "^5.2.0" 2063 | xml-name-validator "^3.0.0" 2064 | 2065 | jsesc@^1.3.0: 2066 | version "1.3.0" 2067 | resolved "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz" 2068 | integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= 2069 | 2070 | json-schema-traverse@^0.4.1: 2071 | version "0.4.1" 2072 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" 2073 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 2074 | 2075 | json-schema@0.2.3: 2076 | version "0.2.3" 2077 | resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz" 2078 | integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= 2079 | 2080 | json-stable-stringify@^1.0.1: 2081 | version "1.0.1" 2082 | resolved "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz" 2083 | integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= 2084 | dependencies: 2085 | jsonify "~0.0.0" 2086 | 2087 | json-stringify-safe@~5.0.1: 2088 | version "5.0.1" 2089 | resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" 2090 | integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= 2091 | 2092 | json5@^0.5.1: 2093 | version "0.5.1" 2094 | resolved "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz" 2095 | integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= 2096 | 2097 | jsonfile@^4.0.0: 2098 | version "4.0.0" 2099 | resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz" 2100 | integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= 2101 | optionalDependencies: 2102 | graceful-fs "^4.1.6" 2103 | 2104 | jsonify@~0.0.0: 2105 | version "0.0.0" 2106 | resolved "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" 2107 | integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= 2108 | 2109 | jsprim@^1.2.2: 2110 | version "1.4.1" 2111 | resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz" 2112 | integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= 2113 | dependencies: 2114 | assert-plus "1.0.0" 2115 | extsprintf "1.3.0" 2116 | json-schema "0.2.3" 2117 | verror "1.10.0" 2118 | 2119 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: 2120 | version "3.2.2" 2121 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" 2122 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 2123 | dependencies: 2124 | is-buffer "^1.1.5" 2125 | 2126 | kind-of@^4.0.0: 2127 | version "4.0.0" 2128 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz" 2129 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= 2130 | dependencies: 2131 | is-buffer "^1.1.5" 2132 | 2133 | kind-of@^5.0.0: 2134 | version "5.1.0" 2135 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz" 2136 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== 2137 | 2138 | kind-of@^6.0.0, kind-of@^6.0.2: 2139 | version "6.0.2" 2140 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz" 2141 | integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== 2142 | 2143 | lcid@^1.0.0: 2144 | version "1.0.0" 2145 | resolved "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz" 2146 | integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= 2147 | dependencies: 2148 | invert-kv "^1.0.0" 2149 | 2150 | left-pad@^1.3.0: 2151 | version "1.3.0" 2152 | resolved "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz" 2153 | integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== 2154 | 2155 | leven@^2.1.0: 2156 | version "2.1.0" 2157 | resolved "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz" 2158 | integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= 2159 | 2160 | levn@~0.3.0: 2161 | version "0.3.0" 2162 | resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" 2163 | integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= 2164 | dependencies: 2165 | prelude-ls "~1.1.2" 2166 | type-check "~0.3.2" 2167 | 2168 | load-json-file@^1.0.0: 2169 | version "1.1.0" 2170 | resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz" 2171 | integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= 2172 | dependencies: 2173 | graceful-fs "^4.1.2" 2174 | parse-json "^2.2.0" 2175 | pify "^2.0.0" 2176 | pinkie-promise "^2.0.0" 2177 | strip-bom "^2.0.0" 2178 | 2179 | locate-path@^2.0.0: 2180 | version "2.0.0" 2181 | resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" 2182 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 2183 | dependencies: 2184 | p-locate "^2.0.0" 2185 | path-exists "^3.0.0" 2186 | 2187 | lodash.sortby@^4.7.0: 2188 | version "4.7.0" 2189 | resolved "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz" 2190 | integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= 2191 | 2192 | lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.4: 2193 | version "4.17.15" 2194 | resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz" 2195 | integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== 2196 | 2197 | loose-envify@^1.0.0: 2198 | version "1.4.0" 2199 | resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" 2200 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 2201 | dependencies: 2202 | js-tokens "^3.0.0 || ^4.0.0" 2203 | 2204 | lru-cache@^4.0.1: 2205 | version "4.1.5" 2206 | resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz" 2207 | integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== 2208 | dependencies: 2209 | pseudomap "^1.0.2" 2210 | yallist "^2.1.2" 2211 | 2212 | makeerror@1.0.x: 2213 | version "1.0.11" 2214 | resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz" 2215 | integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= 2216 | dependencies: 2217 | tmpl "1.0.x" 2218 | 2219 | map-cache@^0.2.2: 2220 | version "0.2.2" 2221 | resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" 2222 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= 2223 | 2224 | map-visit@^1.0.0: 2225 | version "1.0.0" 2226 | resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz" 2227 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= 2228 | dependencies: 2229 | object-visit "^1.0.0" 2230 | 2231 | math-random@^1.0.1: 2232 | version "1.0.4" 2233 | resolved "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz" 2234 | integrity sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== 2235 | 2236 | mem@^1.1.0: 2237 | version "1.1.0" 2238 | resolved "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz" 2239 | integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= 2240 | dependencies: 2241 | mimic-fn "^1.0.0" 2242 | 2243 | merge-stream@^1.0.1: 2244 | version "1.0.1" 2245 | resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz" 2246 | integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= 2247 | dependencies: 2248 | readable-stream "^2.0.1" 2249 | 2250 | merge@^1.2.0: 2251 | version "1.2.1" 2252 | resolved "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz" 2253 | integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== 2254 | 2255 | micromatch@^2.1.5, micromatch@^2.3.11: 2256 | version "2.3.11" 2257 | resolved "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz" 2258 | integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= 2259 | dependencies: 2260 | arr-diff "^2.0.0" 2261 | array-unique "^0.2.1" 2262 | braces "^1.8.2" 2263 | expand-brackets "^0.1.4" 2264 | extglob "^0.3.1" 2265 | filename-regex "^2.0.0" 2266 | is-extglob "^1.0.0" 2267 | is-glob "^2.0.1" 2268 | kind-of "^3.0.2" 2269 | normalize-path "^2.0.1" 2270 | object.omit "^2.0.0" 2271 | parse-glob "^3.0.4" 2272 | regex-cache "^0.4.2" 2273 | 2274 | micromatch@^3.1.10, micromatch@^3.1.4: 2275 | version "3.1.10" 2276 | resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" 2277 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== 2278 | dependencies: 2279 | arr-diff "^4.0.0" 2280 | array-unique "^0.3.2" 2281 | braces "^2.3.1" 2282 | define-property "^2.0.2" 2283 | extend-shallow "^3.0.2" 2284 | extglob "^2.0.4" 2285 | fragment-cache "^0.2.1" 2286 | kind-of "^6.0.2" 2287 | nanomatch "^1.2.9" 2288 | object.pick "^1.3.0" 2289 | regex-not "^1.0.0" 2290 | snapdragon "^0.8.1" 2291 | to-regex "^3.0.2" 2292 | 2293 | mime-db@1.40.0: 2294 | version "1.40.0" 2295 | resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz" 2296 | integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== 2297 | 2298 | mime-types@^2.1.12, mime-types@~2.1.19: 2299 | version "2.1.24" 2300 | resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz" 2301 | integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ== 2302 | dependencies: 2303 | mime-db "1.40.0" 2304 | 2305 | mimic-fn@^1.0.0: 2306 | version "1.2.0" 2307 | resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz" 2308 | integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== 2309 | 2310 | minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: 2311 | version "3.0.4" 2312 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" 2313 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 2314 | dependencies: 2315 | brace-expansion "^1.1.7" 2316 | 2317 | minimist@0.0.8, minimist@~0.0.1: 2318 | version "0.0.8" 2319 | resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" 2320 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 2321 | 2322 | minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0: 2323 | version "1.2.0" 2324 | resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz" 2325 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 2326 | 2327 | mixin-deep@^1.2.0: 2328 | version "1.3.2" 2329 | resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz" 2330 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== 2331 | dependencies: 2332 | for-in "^1.0.2" 2333 | is-extendable "^1.0.1" 2334 | 2335 | mkdirp@^0.5.1: 2336 | version "0.5.1" 2337 | resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" 2338 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 2339 | dependencies: 2340 | minimist "0.0.8" 2341 | 2342 | ms@2.0.0: 2343 | version "2.0.0" 2344 | resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" 2345 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 2346 | 2347 | ms@^2.1.1: 2348 | version "2.1.2" 2349 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" 2350 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 2351 | 2352 | nan@^2.12.1: 2353 | version "2.15.0" 2354 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" 2355 | integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== 2356 | 2357 | nanomatch@^1.2.9: 2358 | version "1.2.13" 2359 | resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz" 2360 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== 2361 | dependencies: 2362 | arr-diff "^4.0.0" 2363 | array-unique "^0.3.2" 2364 | define-property "^2.0.2" 2365 | extend-shallow "^3.0.2" 2366 | fragment-cache "^0.2.1" 2367 | is-windows "^1.0.2" 2368 | kind-of "^6.0.2" 2369 | object.pick "^1.3.0" 2370 | regex-not "^1.0.0" 2371 | snapdragon "^0.8.1" 2372 | to-regex "^3.0.1" 2373 | 2374 | natural-compare@^1.4.0: 2375 | version "1.4.0" 2376 | resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" 2377 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 2378 | 2379 | neo-async@^2.6.0: 2380 | version "2.6.1" 2381 | resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz" 2382 | integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== 2383 | 2384 | node-fetch@^1.0.1: 2385 | version "1.7.3" 2386 | resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz" 2387 | integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== 2388 | dependencies: 2389 | encoding "^0.1.11" 2390 | is-stream "^1.0.1" 2391 | 2392 | node-int64@^0.4.0: 2393 | version "0.4.0" 2394 | resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" 2395 | integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= 2396 | 2397 | node-notifier@^5.2.1: 2398 | version "5.4.3" 2399 | resolved "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz" 2400 | integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q== 2401 | dependencies: 2402 | growly "^1.3.0" 2403 | is-wsl "^1.1.0" 2404 | semver "^5.5.0" 2405 | shellwords "^0.1.1" 2406 | which "^1.3.0" 2407 | 2408 | normalize-package-data@^2.3.2: 2409 | version "2.5.0" 2410 | resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" 2411 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 2412 | dependencies: 2413 | hosted-git-info "^2.1.4" 2414 | resolve "^1.10.0" 2415 | semver "2 || 3 || 4 || 5" 2416 | validate-npm-package-license "^3.0.1" 2417 | 2418 | normalize-path@^2.0.0, normalize-path@^2.0.1, normalize-path@^2.1.1: 2419 | version "2.1.1" 2420 | resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" 2421 | integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= 2422 | dependencies: 2423 | remove-trailing-separator "^1.0.1" 2424 | 2425 | npm-run-path@^2.0.0: 2426 | version "2.0.2" 2427 | resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz" 2428 | integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= 2429 | dependencies: 2430 | path-key "^2.0.0" 2431 | 2432 | number-is-nan@^1.0.0: 2433 | version "1.0.1" 2434 | resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" 2435 | integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 2436 | 2437 | nwsapi@^2.0.7: 2438 | version "2.1.4" 2439 | resolved "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz" 2440 | integrity sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw== 2441 | 2442 | oauth-sign@~0.9.0: 2443 | version "0.9.0" 2444 | resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz" 2445 | integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== 2446 | 2447 | object-assign@^4.1.0: 2448 | version "4.1.1" 2449 | resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" 2450 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 2451 | 2452 | object-copy@^0.1.0: 2453 | version "0.1.0" 2454 | resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz" 2455 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= 2456 | dependencies: 2457 | copy-descriptor "^0.1.0" 2458 | define-property "^0.2.5" 2459 | kind-of "^3.0.3" 2460 | 2461 | object-inspect@^1.6.0: 2462 | version "1.6.0" 2463 | resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz" 2464 | integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== 2465 | 2466 | object-keys@^1.0.12, object-keys@^1.1.1: 2467 | version "1.1.1" 2468 | resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" 2469 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 2470 | 2471 | object-visit@^1.0.0: 2472 | version "1.0.1" 2473 | resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz" 2474 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= 2475 | dependencies: 2476 | isobject "^3.0.0" 2477 | 2478 | object.getownpropertydescriptors@^2.0.3: 2479 | version "2.0.3" 2480 | resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz" 2481 | integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= 2482 | dependencies: 2483 | define-properties "^1.1.2" 2484 | es-abstract "^1.5.1" 2485 | 2486 | object.omit@^2.0.0: 2487 | version "2.0.1" 2488 | resolved "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz" 2489 | integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= 2490 | dependencies: 2491 | for-own "^0.1.4" 2492 | is-extendable "^0.1.1" 2493 | 2494 | object.pick@^1.3.0: 2495 | version "1.3.0" 2496 | resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz" 2497 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= 2498 | dependencies: 2499 | isobject "^3.0.1" 2500 | 2501 | once@^1.3.0, once@^1.4.0: 2502 | version "1.4.0" 2503 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 2504 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 2505 | dependencies: 2506 | wrappy "1" 2507 | 2508 | optimist@^0.6.1: 2509 | version "0.6.1" 2510 | resolved "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz" 2511 | integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= 2512 | dependencies: 2513 | minimist "~0.0.1" 2514 | wordwrap "~0.0.2" 2515 | 2516 | optionator@^0.8.1: 2517 | version "0.8.2" 2518 | resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz" 2519 | integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= 2520 | dependencies: 2521 | deep-is "~0.1.3" 2522 | fast-levenshtein "~2.0.4" 2523 | levn "~0.3.0" 2524 | prelude-ls "~1.1.2" 2525 | type-check "~0.3.2" 2526 | wordwrap "~1.0.0" 2527 | 2528 | os-homedir@^1.0.0: 2529 | version "1.0.2" 2530 | resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" 2531 | integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= 2532 | 2533 | os-locale@^2.0.0: 2534 | version "2.1.0" 2535 | resolved "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz" 2536 | integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== 2537 | dependencies: 2538 | execa "^0.7.0" 2539 | lcid "^1.0.0" 2540 | mem "^1.1.0" 2541 | 2542 | os-tmpdir@^1.0.1: 2543 | version "1.0.2" 2544 | resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" 2545 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 2546 | 2547 | p-finally@^1.0.0: 2548 | version "1.0.0" 2549 | resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" 2550 | integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= 2551 | 2552 | p-limit@^1.1.0: 2553 | version "1.3.0" 2554 | resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" 2555 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== 2556 | dependencies: 2557 | p-try "^1.0.0" 2558 | 2559 | p-locate@^2.0.0: 2560 | version "2.0.0" 2561 | resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" 2562 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 2563 | dependencies: 2564 | p-limit "^1.1.0" 2565 | 2566 | p-try@^1.0.0: 2567 | version "1.0.0" 2568 | resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" 2569 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= 2570 | 2571 | parse-glob@^3.0.4: 2572 | version "3.0.4" 2573 | resolved "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz" 2574 | integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= 2575 | dependencies: 2576 | glob-base "^0.3.0" 2577 | is-dotfile "^1.0.0" 2578 | is-extglob "^1.0.0" 2579 | is-glob "^2.0.0" 2580 | 2581 | parse-json@^2.2.0: 2582 | version "2.2.0" 2583 | resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz" 2584 | integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= 2585 | dependencies: 2586 | error-ex "^1.2.0" 2587 | 2588 | parse5@4.0.0: 2589 | version "4.0.0" 2590 | resolved "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz" 2591 | integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== 2592 | 2593 | pascalcase@^0.1.1: 2594 | version "0.1.1" 2595 | resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz" 2596 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= 2597 | 2598 | path-exists@^2.0.0: 2599 | version "2.1.0" 2600 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz" 2601 | integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= 2602 | dependencies: 2603 | pinkie-promise "^2.0.0" 2604 | 2605 | path-exists@^3.0.0: 2606 | version "3.0.0" 2607 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" 2608 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 2609 | 2610 | path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: 2611 | version "1.0.1" 2612 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 2613 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 2614 | 2615 | path-key@^2.0.0: 2616 | version "2.0.1" 2617 | resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" 2618 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 2619 | 2620 | path-parse@^1.0.5, path-parse@^1.0.6: 2621 | version "1.0.6" 2622 | resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz" 2623 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 2624 | 2625 | path-to-regexp@^2.1.0: 2626 | version "2.4.0" 2627 | resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.4.0.tgz" 2628 | integrity sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w== 2629 | 2630 | path-type@^1.0.0: 2631 | version "1.1.0" 2632 | resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz" 2633 | integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= 2634 | dependencies: 2635 | graceful-fs "^4.1.2" 2636 | pify "^2.0.0" 2637 | pinkie-promise "^2.0.0" 2638 | 2639 | performance-now@^2.1.0: 2640 | version "2.1.0" 2641 | resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz" 2642 | integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= 2643 | 2644 | pify@^2.0.0: 2645 | version "2.3.0" 2646 | resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" 2647 | integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= 2648 | 2649 | pinkie-promise@^2.0.0: 2650 | version "2.0.1" 2651 | resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 2652 | integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= 2653 | dependencies: 2654 | pinkie "^2.0.0" 2655 | 2656 | pinkie@^2.0.0: 2657 | version "2.0.4" 2658 | resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" 2659 | integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= 2660 | 2661 | pkg-dir@^2.0.0: 2662 | version "2.0.0" 2663 | resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" 2664 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= 2665 | dependencies: 2666 | find-up "^2.1.0" 2667 | 2668 | pn@^1.1.0: 2669 | version "1.1.0" 2670 | resolved "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz" 2671 | integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== 2672 | 2673 | posix-character-classes@^0.1.0: 2674 | version "0.1.1" 2675 | resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz" 2676 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= 2677 | 2678 | prelude-ls@~1.1.2: 2679 | version "1.1.2" 2680 | resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" 2681 | integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= 2682 | 2683 | preserve@^0.2.0: 2684 | version "0.2.0" 2685 | resolved "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz" 2686 | integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= 2687 | 2688 | prettier@1.11.1: 2689 | version "1.11.1" 2690 | resolved "https://registry.npmjs.org/prettier/-/prettier-1.11.1.tgz" 2691 | integrity sha512-T/KD65Ot0PB97xTrG8afQ46x3oiVhnfGjGESSI9NWYcG92+OUPZKkwHqGWXH2t9jK1crnQjubECW0FuOth+hxw== 2692 | 2693 | pretty-format@^22.4.0, pretty-format@^22.4.3: 2694 | version "22.4.3" 2695 | resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-22.4.3.tgz" 2696 | integrity sha512-S4oT9/sT6MN7/3COoOy+ZJeA92VmOnveLHgrwBE3Z1W5N9S2A1QGNYiE1z75DAENbJrXXUb+OWXhpJcg05QKQQ== 2697 | dependencies: 2698 | ansi-regex "^3.0.0" 2699 | ansi-styles "^3.2.0" 2700 | 2701 | private@^0.1.8: 2702 | version "0.1.8" 2703 | resolved "https://registry.npmjs.org/private/-/private-0.1.8.tgz" 2704 | integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== 2705 | 2706 | process-nextick-args@~2.0.0: 2707 | version "2.0.1" 2708 | resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" 2709 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== 2710 | 2711 | pseudomap@^1.0.2: 2712 | version "1.0.2" 2713 | resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" 2714 | integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= 2715 | 2716 | psl@^1.1.24, psl@^1.1.28: 2717 | version "1.3.1" 2718 | resolved "https://registry.npmjs.org/psl/-/psl-1.3.1.tgz" 2719 | integrity sha512-2KLd5fKOdAfShtY2d/8XDWVRnmp3zp40Qt6ge2zBPFARLXOGUf2fHD5eg+TV/5oxBtQKVhjUaKFsAaE4HnwfSA== 2720 | 2721 | punycode@^1.4.1: 2722 | version "1.4.1" 2723 | resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz" 2724 | integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= 2725 | 2726 | punycode@^2.1.0, punycode@^2.1.1: 2727 | version "2.1.1" 2728 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" 2729 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 2730 | 2731 | qs@~6.5.2: 2732 | version "6.5.2" 2733 | resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz" 2734 | integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== 2735 | 2736 | randomatic@^3.0.0: 2737 | version "3.1.1" 2738 | resolved "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz" 2739 | integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== 2740 | dependencies: 2741 | is-number "^4.0.0" 2742 | kind-of "^6.0.0" 2743 | math-random "^1.0.1" 2744 | 2745 | read-pkg-up@^1.0.1: 2746 | version "1.0.1" 2747 | resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz" 2748 | integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= 2749 | dependencies: 2750 | find-up "^1.0.0" 2751 | read-pkg "^1.0.0" 2752 | 2753 | read-pkg@^1.0.0: 2754 | version "1.1.0" 2755 | resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz" 2756 | integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= 2757 | dependencies: 2758 | load-json-file "^1.0.0" 2759 | normalize-package-data "^2.3.2" 2760 | path-type "^1.0.0" 2761 | 2762 | readable-stream@^2.0.1, readable-stream@^2.0.2: 2763 | version "2.3.6" 2764 | resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz" 2765 | integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== 2766 | dependencies: 2767 | core-util-is "~1.0.0" 2768 | inherits "~2.0.3" 2769 | isarray "~1.0.0" 2770 | process-nextick-args "~2.0.0" 2771 | safe-buffer "~5.1.1" 2772 | string_decoder "~1.1.1" 2773 | util-deprecate "~1.0.1" 2774 | 2775 | readdirp@^2.0.0: 2776 | version "2.2.1" 2777 | resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz" 2778 | integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== 2779 | dependencies: 2780 | graceful-fs "^4.1.11" 2781 | micromatch "^3.1.10" 2782 | readable-stream "^2.0.2" 2783 | 2784 | realpath-native@^1.0.0: 2785 | version "1.1.0" 2786 | resolved "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz" 2787 | integrity sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA== 2788 | dependencies: 2789 | util.promisify "^1.0.0" 2790 | 2791 | regenerator-runtime@^0.11.0: 2792 | version "0.11.1" 2793 | resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz" 2794 | integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== 2795 | 2796 | regex-cache@^0.4.2: 2797 | version "0.4.4" 2798 | resolved "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz" 2799 | integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== 2800 | dependencies: 2801 | is-equal-shallow "^0.1.3" 2802 | 2803 | regex-not@^1.0.0, regex-not@^1.0.2: 2804 | version "1.0.2" 2805 | resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" 2806 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== 2807 | dependencies: 2808 | extend-shallow "^3.0.2" 2809 | safe-regex "^1.1.0" 2810 | 2811 | remove-trailing-separator@^1.0.1: 2812 | version "1.1.0" 2813 | resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" 2814 | integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= 2815 | 2816 | repeat-element@^1.1.2: 2817 | version "1.1.3" 2818 | resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz" 2819 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== 2820 | 2821 | repeat-string@^1.5.2, repeat-string@^1.6.1: 2822 | version "1.6.1" 2823 | resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" 2824 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= 2825 | 2826 | repeating@^2.0.0: 2827 | version "2.0.1" 2828 | resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" 2829 | integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= 2830 | dependencies: 2831 | is-finite "^1.0.0" 2832 | 2833 | request-promise-core@1.1.2: 2834 | version "1.1.2" 2835 | resolved "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz" 2836 | integrity sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag== 2837 | dependencies: 2838 | lodash "^4.17.11" 2839 | 2840 | request-promise-native@^1.0.5: 2841 | version "1.0.7" 2842 | resolved "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz" 2843 | integrity sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w== 2844 | dependencies: 2845 | request-promise-core "1.1.2" 2846 | stealthy-require "^1.1.1" 2847 | tough-cookie "^2.3.3" 2848 | 2849 | request@^2.87.0: 2850 | version "2.88.0" 2851 | resolved "https://registry.npmjs.org/request/-/request-2.88.0.tgz" 2852 | integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== 2853 | dependencies: 2854 | aws-sign2 "~0.7.0" 2855 | aws4 "^1.8.0" 2856 | caseless "~0.12.0" 2857 | combined-stream "~1.0.6" 2858 | extend "~3.0.2" 2859 | forever-agent "~0.6.1" 2860 | form-data "~2.3.2" 2861 | har-validator "~5.1.0" 2862 | http-signature "~1.2.0" 2863 | is-typedarray "~1.0.0" 2864 | isstream "~0.1.2" 2865 | json-stringify-safe "~5.0.1" 2866 | mime-types "~2.1.19" 2867 | oauth-sign "~0.9.0" 2868 | performance-now "^2.1.0" 2869 | qs "~6.5.2" 2870 | safe-buffer "^5.1.2" 2871 | tough-cookie "~2.4.3" 2872 | tunnel-agent "^0.6.0" 2873 | uuid "^3.3.2" 2874 | 2875 | require-directory@^2.1.1: 2876 | version "2.1.1" 2877 | resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" 2878 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 2879 | 2880 | require-main-filename@^1.0.1: 2881 | version "1.0.1" 2882 | resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz" 2883 | integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= 2884 | 2885 | resolve-cwd@^2.0.0: 2886 | version "2.0.0" 2887 | resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz" 2888 | integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= 2889 | dependencies: 2890 | resolve-from "^3.0.0" 2891 | 2892 | resolve-from@^3.0.0: 2893 | version "3.0.0" 2894 | resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz" 2895 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 2896 | 2897 | resolve-url@^0.2.1: 2898 | version "0.2.1" 2899 | resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz" 2900 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= 2901 | 2902 | resolve@1.1.7, resolve@^1.1.7: 2903 | version "1.1.7" 2904 | resolved "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" 2905 | integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= 2906 | 2907 | resolve@^1.10.0, resolve@^1.3.2: 2908 | version "1.12.0" 2909 | resolved "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz" 2910 | integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== 2911 | dependencies: 2912 | path-parse "^1.0.6" 2913 | 2914 | ret@~0.1.10: 2915 | version "0.1.15" 2916 | resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz" 2917 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== 2918 | 2919 | rimraf@^2.5.4, rimraf@^2.6.1: 2920 | version "2.7.1" 2921 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz" 2922 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== 2923 | dependencies: 2924 | glob "^7.1.3" 2925 | 2926 | rsvp@^3.3.3: 2927 | version "3.6.2" 2928 | resolved "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz" 2929 | integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== 2930 | 2931 | safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: 2932 | version "5.1.2" 2933 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" 2934 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 2935 | 2936 | safe-regex@^1.1.0: 2937 | version "1.1.0" 2938 | resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz" 2939 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= 2940 | dependencies: 2941 | ret "~0.1.10" 2942 | 2943 | "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: 2944 | version "2.1.2" 2945 | resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" 2946 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 2947 | 2948 | sane@^2.0.0: 2949 | version "2.5.2" 2950 | resolved "https://registry.npmjs.org/sane/-/sane-2.5.2.tgz" 2951 | integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o= 2952 | dependencies: 2953 | anymatch "^2.0.0" 2954 | capture-exit "^1.2.0" 2955 | exec-sh "^0.2.0" 2956 | fb-watchman "^2.0.0" 2957 | micromatch "^3.1.4" 2958 | minimist "^1.1.1" 2959 | walker "~1.0.5" 2960 | watch "~0.18.0" 2961 | optionalDependencies: 2962 | fsevents "^1.2.3" 2963 | 2964 | sax@^1.2.4: 2965 | version "1.2.4" 2966 | resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz" 2967 | integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== 2968 | 2969 | "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0: 2970 | version "5.7.1" 2971 | resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" 2972 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 2973 | 2974 | set-blocking@^2.0.0: 2975 | version "2.0.0" 2976 | resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" 2977 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 2978 | 2979 | set-value@^2.0.0, set-value@^2.0.1: 2980 | version "2.0.1" 2981 | resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz" 2982 | integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== 2983 | dependencies: 2984 | extend-shallow "^2.0.1" 2985 | is-extendable "^0.1.1" 2986 | is-plain-object "^2.0.3" 2987 | split-string "^3.0.1" 2988 | 2989 | shebang-command@^1.2.0: 2990 | version "1.2.0" 2991 | resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" 2992 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 2993 | dependencies: 2994 | shebang-regex "^1.0.0" 2995 | 2996 | shebang-regex@^1.0.0: 2997 | version "1.0.0" 2998 | resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" 2999 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 3000 | 3001 | shell-quote@^1.6.1: 3002 | version "1.7.2" 3003 | resolved "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz" 3004 | integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== 3005 | 3006 | shellwords@^0.1.1: 3007 | version "0.1.1" 3008 | resolved "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz" 3009 | integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== 3010 | 3011 | signal-exit@^3.0.0, signal-exit@^3.0.2: 3012 | version "3.0.2" 3013 | resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz" 3014 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 3015 | 3016 | slash@^1.0.0: 3017 | version "1.0.0" 3018 | resolved "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz" 3019 | integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= 3020 | 3021 | snapdragon-node@^2.0.1: 3022 | version "2.1.1" 3023 | resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz" 3024 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== 3025 | dependencies: 3026 | define-property "^1.0.0" 3027 | isobject "^3.0.0" 3028 | snapdragon-util "^3.0.1" 3029 | 3030 | snapdragon-util@^3.0.1: 3031 | version "3.0.1" 3032 | resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz" 3033 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== 3034 | dependencies: 3035 | kind-of "^3.2.0" 3036 | 3037 | snapdragon@^0.8.1: 3038 | version "0.8.2" 3039 | resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz" 3040 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== 3041 | dependencies: 3042 | base "^0.11.1" 3043 | debug "^2.2.0" 3044 | define-property "^0.2.5" 3045 | extend-shallow "^2.0.1" 3046 | map-cache "^0.2.2" 3047 | source-map "^0.5.6" 3048 | source-map-resolve "^0.5.0" 3049 | use "^3.1.0" 3050 | 3051 | source-map-resolve@^0.5.0: 3052 | version "0.5.2" 3053 | resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz" 3054 | integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== 3055 | dependencies: 3056 | atob "^2.1.1" 3057 | decode-uri-component "^0.2.0" 3058 | resolve-url "^0.2.1" 3059 | source-map-url "^0.4.0" 3060 | urix "^0.1.0" 3061 | 3062 | source-map-support@^0.4.15: 3063 | version "0.4.18" 3064 | resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz" 3065 | integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== 3066 | dependencies: 3067 | source-map "^0.5.6" 3068 | 3069 | source-map-support@^0.5.0, source-map-support@^0.5.5: 3070 | version "0.5.13" 3071 | resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" 3072 | integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== 3073 | dependencies: 3074 | buffer-from "^1.0.0" 3075 | source-map "^0.6.0" 3076 | 3077 | source-map-url@^0.4.0: 3078 | version "0.4.0" 3079 | resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz" 3080 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= 3081 | 3082 | source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: 3083 | version "0.5.7" 3084 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" 3085 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 3086 | 3087 | source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: 3088 | version "0.6.1" 3089 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" 3090 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 3091 | 3092 | spdx-correct@^3.0.0: 3093 | version "3.1.0" 3094 | resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz" 3095 | integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== 3096 | dependencies: 3097 | spdx-expression-parse "^3.0.0" 3098 | spdx-license-ids "^3.0.0" 3099 | 3100 | spdx-exceptions@^2.1.0: 3101 | version "2.2.0" 3102 | resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz" 3103 | integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== 3104 | 3105 | spdx-expression-parse@^3.0.0: 3106 | version "3.0.0" 3107 | resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz" 3108 | integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== 3109 | dependencies: 3110 | spdx-exceptions "^2.1.0" 3111 | spdx-license-ids "^3.0.0" 3112 | 3113 | spdx-license-ids@^3.0.0: 3114 | version "3.0.5" 3115 | resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz" 3116 | integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== 3117 | 3118 | split-string@^3.0.1, split-string@^3.0.2: 3119 | version "3.1.0" 3120 | resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz" 3121 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== 3122 | dependencies: 3123 | extend-shallow "^3.0.0" 3124 | 3125 | sprintf-js@~1.0.2: 3126 | version "1.0.3" 3127 | resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" 3128 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 3129 | 3130 | sshpk@^1.7.0: 3131 | version "1.16.1" 3132 | resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz" 3133 | integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== 3134 | dependencies: 3135 | asn1 "~0.2.3" 3136 | assert-plus "^1.0.0" 3137 | bcrypt-pbkdf "^1.0.0" 3138 | dashdash "^1.12.0" 3139 | ecc-jsbn "~0.1.1" 3140 | getpass "^0.1.1" 3141 | jsbn "~0.1.0" 3142 | safer-buffer "^2.0.2" 3143 | tweetnacl "~0.14.0" 3144 | 3145 | stack-utils@^1.0.1: 3146 | version "1.0.2" 3147 | resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz" 3148 | integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== 3149 | 3150 | static-extend@^0.1.1: 3151 | version "0.1.2" 3152 | resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz" 3153 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= 3154 | dependencies: 3155 | define-property "^0.2.5" 3156 | object-copy "^0.1.0" 3157 | 3158 | stealthy-require@^1.1.1: 3159 | version "1.1.1" 3160 | resolved "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz" 3161 | integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= 3162 | 3163 | string-length@^2.0.0: 3164 | version "2.0.0" 3165 | resolved "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz" 3166 | integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= 3167 | dependencies: 3168 | astral-regex "^1.0.0" 3169 | strip-ansi "^4.0.0" 3170 | 3171 | string-width@^1.0.1: 3172 | version "1.0.2" 3173 | resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" 3174 | integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= 3175 | dependencies: 3176 | code-point-at "^1.0.0" 3177 | is-fullwidth-code-point "^1.0.0" 3178 | strip-ansi "^3.0.0" 3179 | 3180 | string-width@^2.0.0, string-width@^2.1.1: 3181 | version "2.1.1" 3182 | resolved "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz" 3183 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 3184 | dependencies: 3185 | is-fullwidth-code-point "^2.0.0" 3186 | strip-ansi "^4.0.0" 3187 | 3188 | string.prototype.trimleft@^2.0.0: 3189 | version "2.0.0" 3190 | resolved "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.0.0.tgz" 3191 | integrity sha1-aLaqjhYsaoDnbjqKDC50cYbicf8= 3192 | dependencies: 3193 | define-properties "^1.1.2" 3194 | function-bind "^1.0.2" 3195 | 3196 | string.prototype.trimright@^2.0.0: 3197 | version "2.0.0" 3198 | resolved "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.0.0.tgz" 3199 | integrity sha1-q0pW2AKgH75yk+EehPJNyBZGYd0= 3200 | dependencies: 3201 | define-properties "^1.1.2" 3202 | function-bind "^1.0.2" 3203 | 3204 | string_decoder@~1.1.1: 3205 | version "1.1.1" 3206 | resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" 3207 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== 3208 | dependencies: 3209 | safe-buffer "~5.1.0" 3210 | 3211 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 3212 | version "3.0.1" 3213 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" 3214 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 3215 | dependencies: 3216 | ansi-regex "^2.0.0" 3217 | 3218 | strip-ansi@^4.0.0: 3219 | version "4.0.0" 3220 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz" 3221 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 3222 | dependencies: 3223 | ansi-regex "^3.0.0" 3224 | 3225 | strip-bom@3.0.0: 3226 | version "3.0.0" 3227 | resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" 3228 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 3229 | 3230 | strip-bom@^2.0.0: 3231 | version "2.0.0" 3232 | resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" 3233 | integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= 3234 | dependencies: 3235 | is-utf8 "^0.2.0" 3236 | 3237 | strip-eof@^1.0.0: 3238 | version "1.0.0" 3239 | resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" 3240 | integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= 3241 | 3242 | subarg@^1.0.0: 3243 | version "1.0.0" 3244 | resolved "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz" 3245 | integrity sha1-9izxdYHplrSPyWVpn1TAauJouNI= 3246 | dependencies: 3247 | minimist "^1.1.0" 3248 | 3249 | supports-color@^2.0.0: 3250 | version "2.0.0" 3251 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" 3252 | integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= 3253 | 3254 | supports-color@^3.1.2: 3255 | version "3.2.3" 3256 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz" 3257 | integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= 3258 | dependencies: 3259 | has-flag "^1.0.0" 3260 | 3261 | supports-color@^5.3.0: 3262 | version "5.5.0" 3263 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" 3264 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 3265 | dependencies: 3266 | has-flag "^3.0.0" 3267 | 3268 | symbol-tree@^3.2.2: 3269 | version "3.2.4" 3270 | resolved "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz" 3271 | integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== 3272 | 3273 | test-exclude@^4.2.1: 3274 | version "4.2.3" 3275 | resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-4.2.3.tgz" 3276 | integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== 3277 | dependencies: 3278 | arrify "^1.0.1" 3279 | micromatch "^2.3.11" 3280 | object-assign "^4.1.0" 3281 | read-pkg-up "^1.0.1" 3282 | require-main-filename "^1.0.1" 3283 | 3284 | throat@^4.0.0: 3285 | version "4.1.0" 3286 | resolved "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz" 3287 | integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= 3288 | 3289 | tmpl@1.0.x: 3290 | version "1.0.4" 3291 | resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz" 3292 | integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= 3293 | 3294 | to-fast-properties@^1.0.3: 3295 | version "1.0.3" 3296 | resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz" 3297 | integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= 3298 | 3299 | to-object-path@^0.3.0: 3300 | version "0.3.0" 3301 | resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz" 3302 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= 3303 | dependencies: 3304 | kind-of "^3.0.2" 3305 | 3306 | to-regex-range@^2.1.0: 3307 | version "2.1.1" 3308 | resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz" 3309 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= 3310 | dependencies: 3311 | is-number "^3.0.0" 3312 | repeat-string "^1.6.1" 3313 | 3314 | to-regex@^3.0.1, to-regex@^3.0.2: 3315 | version "3.0.2" 3316 | resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz" 3317 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== 3318 | dependencies: 3319 | define-property "^2.0.2" 3320 | extend-shallow "^3.0.2" 3321 | regex-not "^1.0.2" 3322 | safe-regex "^1.1.0" 3323 | 3324 | tough-cookie@^2.3.3, tough-cookie@^2.3.4: 3325 | version "2.5.0" 3326 | resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz" 3327 | integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== 3328 | dependencies: 3329 | psl "^1.1.28" 3330 | punycode "^2.1.1" 3331 | 3332 | tough-cookie@~2.4.3: 3333 | version "2.4.3" 3334 | resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz" 3335 | integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== 3336 | dependencies: 3337 | psl "^1.1.24" 3338 | punycode "^1.4.1" 3339 | 3340 | tr46@^1.0.1: 3341 | version "1.0.1" 3342 | resolved "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz" 3343 | integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= 3344 | dependencies: 3345 | punycode "^2.1.0" 3346 | 3347 | trim-right@^1.0.1: 3348 | version "1.0.1" 3349 | resolved "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz" 3350 | integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= 3351 | 3352 | ts-jest@^22.4.2: 3353 | version "22.4.6" 3354 | resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-22.4.6.tgz" 3355 | integrity sha512-kYQ6g1G1AU+bOO9rv+SSQXg4WTcni6Wx3AM48iHni0nP1vIuhdNRjKTE9Cxx36Ix/IOV7L85iKu07dgXJzH2pQ== 3356 | dependencies: 3357 | babel-core "^6.26.3" 3358 | babel-plugin-istanbul "^4.1.6" 3359 | babel-plugin-transform-es2015-modules-commonjs "^6.26.2" 3360 | babel-preset-jest "^22.4.3" 3361 | cpx "^1.5.0" 3362 | fs-extra "6.0.0" 3363 | jest-config "^22.4.3" 3364 | lodash "^4.17.10" 3365 | pkg-dir "^2.0.0" 3366 | source-map-support "^0.5.5" 3367 | yargs "^11.0.0" 3368 | 3369 | tslib@^1.8.0, tslib@^1.8.1: 3370 | version "1.10.0" 3371 | resolved "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz" 3372 | integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== 3373 | 3374 | tslint@^5.9.1: 3375 | version "5.19.0" 3376 | resolved "https://registry.npmjs.org/tslint/-/tslint-5.19.0.tgz" 3377 | integrity sha512-1LwwtBxfRJZnUvoS9c0uj8XQtAnyhWr9KlNvDIdB+oXyT+VpsOAaEhEgKi1HrZ8rq0ki/AAnbGSv4KM6/AfVZw== 3378 | dependencies: 3379 | "@babel/code-frame" "^7.0.0" 3380 | builtin-modules "^1.1.1" 3381 | chalk "^2.3.0" 3382 | commander "^2.12.1" 3383 | diff "^3.2.0" 3384 | glob "^7.1.1" 3385 | js-yaml "^3.13.1" 3386 | minimatch "^3.0.4" 3387 | mkdirp "^0.5.1" 3388 | resolve "^1.3.2" 3389 | semver "^5.3.0" 3390 | tslib "^1.8.0" 3391 | tsutils "^2.29.0" 3392 | 3393 | tsutils@^2.29.0: 3394 | version "2.29.0" 3395 | resolved "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz" 3396 | integrity sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA== 3397 | dependencies: 3398 | tslib "^1.8.1" 3399 | 3400 | tunnel-agent@^0.6.0: 3401 | version "0.6.0" 3402 | resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" 3403 | integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= 3404 | dependencies: 3405 | safe-buffer "^5.0.1" 3406 | 3407 | tweetnacl@^0.14.3, tweetnacl@~0.14.0: 3408 | version "0.14.5" 3409 | resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" 3410 | integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= 3411 | 3412 | type-check@~0.3.2: 3413 | version "0.3.2" 3414 | resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" 3415 | integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= 3416 | dependencies: 3417 | prelude-ls "~1.1.2" 3418 | 3419 | typescript@^2.7.2: 3420 | version "2.9.2" 3421 | resolved "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz" 3422 | integrity sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w== 3423 | 3424 | uglify-js@^3.1.4: 3425 | version "3.6.0" 3426 | resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz" 3427 | integrity sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg== 3428 | dependencies: 3429 | commander "~2.20.0" 3430 | source-map "~0.6.1" 3431 | 3432 | union-value@^1.0.0: 3433 | version "1.0.1" 3434 | resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz" 3435 | integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== 3436 | dependencies: 3437 | arr-union "^3.1.0" 3438 | get-value "^2.0.6" 3439 | is-extendable "^0.1.1" 3440 | set-value "^2.0.1" 3441 | 3442 | universalify@^0.1.0: 3443 | version "0.1.2" 3444 | resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" 3445 | integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== 3446 | 3447 | unset-value@^1.0.0: 3448 | version "1.0.0" 3449 | resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz" 3450 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= 3451 | dependencies: 3452 | has-value "^0.3.1" 3453 | isobject "^3.0.0" 3454 | 3455 | uri-js@^4.2.2: 3456 | version "4.2.2" 3457 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz" 3458 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== 3459 | dependencies: 3460 | punycode "^2.1.0" 3461 | 3462 | urix@^0.1.0: 3463 | version "0.1.0" 3464 | resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" 3465 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= 3466 | 3467 | use@^3.1.0: 3468 | version "3.1.1" 3469 | resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz" 3470 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== 3471 | 3472 | util-deprecate@~1.0.1: 3473 | version "1.0.2" 3474 | resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" 3475 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 3476 | 3477 | util.promisify@^1.0.0: 3478 | version "1.0.0" 3479 | resolved "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz" 3480 | integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== 3481 | dependencies: 3482 | define-properties "^1.1.2" 3483 | object.getownpropertydescriptors "^2.0.3" 3484 | 3485 | uuid@^3.3.2: 3486 | version "3.3.3" 3487 | resolved "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz" 3488 | integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== 3489 | 3490 | validate-npm-package-license@^3.0.1: 3491 | version "3.0.4" 3492 | resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" 3493 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 3494 | dependencies: 3495 | spdx-correct "^3.0.0" 3496 | spdx-expression-parse "^3.0.0" 3497 | 3498 | verror@1.10.0: 3499 | version "1.10.0" 3500 | resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" 3501 | integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= 3502 | dependencies: 3503 | assert-plus "^1.0.0" 3504 | core-util-is "1.0.2" 3505 | extsprintf "^1.2.0" 3506 | 3507 | w3c-hr-time@^1.0.1: 3508 | version "1.0.1" 3509 | resolved "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz" 3510 | integrity sha1-gqwr/2PZUOqeMYmlimViX+3xkEU= 3511 | dependencies: 3512 | browser-process-hrtime "^0.1.2" 3513 | 3514 | walker@~1.0.5: 3515 | version "1.0.7" 3516 | resolved "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz" 3517 | integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= 3518 | dependencies: 3519 | makeerror "1.0.x" 3520 | 3521 | watch@~0.18.0: 3522 | version "0.18.0" 3523 | resolved "https://registry.npmjs.org/watch/-/watch-0.18.0.tgz" 3524 | integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY= 3525 | dependencies: 3526 | exec-sh "^0.2.0" 3527 | minimist "^1.2.0" 3528 | 3529 | webidl-conversions@^4.0.2: 3530 | version "4.0.2" 3531 | resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz" 3532 | integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== 3533 | 3534 | whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: 3535 | version "1.0.5" 3536 | resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz" 3537 | integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== 3538 | dependencies: 3539 | iconv-lite "0.4.24" 3540 | 3541 | whatwg-fetch@>=0.10.0: 3542 | version "3.0.0" 3543 | resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz" 3544 | integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== 3545 | 3546 | whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0: 3547 | version "2.3.0" 3548 | resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz" 3549 | integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== 3550 | 3551 | whatwg-url@^6.4.1: 3552 | version "6.5.0" 3553 | resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz" 3554 | integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== 3555 | dependencies: 3556 | lodash.sortby "^4.7.0" 3557 | tr46 "^1.0.1" 3558 | webidl-conversions "^4.0.2" 3559 | 3560 | whatwg-url@^7.0.0: 3561 | version "7.0.0" 3562 | resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz" 3563 | integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== 3564 | dependencies: 3565 | lodash.sortby "^4.7.0" 3566 | tr46 "^1.0.1" 3567 | webidl-conversions "^4.0.2" 3568 | 3569 | which-module@^2.0.0: 3570 | version "2.0.0" 3571 | resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz" 3572 | integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 3573 | 3574 | which@^1.2.12, which@^1.2.9, which@^1.3.0: 3575 | version "1.3.1" 3576 | resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" 3577 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 3578 | dependencies: 3579 | isexe "^2.0.0" 3580 | 3581 | wordwrap@~0.0.2: 3582 | version "0.0.3" 3583 | resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz" 3584 | integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= 3585 | 3586 | wordwrap@~1.0.0: 3587 | version "1.0.0" 3588 | resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" 3589 | integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= 3590 | 3591 | wrap-ansi@^2.0.0: 3592 | version "2.1.0" 3593 | resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz" 3594 | integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= 3595 | dependencies: 3596 | string-width "^1.0.1" 3597 | strip-ansi "^3.0.1" 3598 | 3599 | wrappy@1: 3600 | version "1.0.2" 3601 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 3602 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 3603 | 3604 | write-file-atomic@^2.1.0: 3605 | version "2.4.3" 3606 | resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz" 3607 | integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== 3608 | dependencies: 3609 | graceful-fs "^4.1.11" 3610 | imurmurhash "^0.1.4" 3611 | signal-exit "^3.0.2" 3612 | 3613 | ws@^5.2.0: 3614 | version "5.2.2" 3615 | resolved "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz" 3616 | integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== 3617 | dependencies: 3618 | async-limiter "~1.0.0" 3619 | 3620 | xml-name-validator@^3.0.0: 3621 | version "3.0.0" 3622 | resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz" 3623 | integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== 3624 | 3625 | y18n@^3.2.1: 3626 | version "3.2.1" 3627 | resolved "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz" 3628 | integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= 3629 | 3630 | yallist@^2.1.2: 3631 | version "2.1.2" 3632 | resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" 3633 | integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= 3634 | 3635 | yargs-parser@^8.1.0: 3636 | version "8.1.0" 3637 | resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz" 3638 | integrity sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ== 3639 | dependencies: 3640 | camelcase "^4.1.0" 3641 | 3642 | yargs-parser@^9.0.2: 3643 | version "9.0.2" 3644 | resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz" 3645 | integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc= 3646 | dependencies: 3647 | camelcase "^4.1.0" 3648 | 3649 | yargs@^10.0.3: 3650 | version "10.1.2" 3651 | resolved "https://registry.npmjs.org/yargs/-/yargs-10.1.2.tgz" 3652 | integrity sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig== 3653 | dependencies: 3654 | cliui "^4.0.0" 3655 | decamelize "^1.1.1" 3656 | find-up "^2.1.0" 3657 | get-caller-file "^1.0.1" 3658 | os-locale "^2.0.0" 3659 | require-directory "^2.1.1" 3660 | require-main-filename "^1.0.1" 3661 | set-blocking "^2.0.0" 3662 | string-width "^2.0.0" 3663 | which-module "^2.0.0" 3664 | y18n "^3.2.1" 3665 | yargs-parser "^8.1.0" 3666 | 3667 | yargs@^11.0.0: 3668 | version "11.1.0" 3669 | resolved "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz" 3670 | integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A== 3671 | dependencies: 3672 | cliui "^4.0.0" 3673 | decamelize "^1.1.1" 3674 | find-up "^2.1.0" 3675 | get-caller-file "^1.0.1" 3676 | os-locale "^2.0.0" 3677 | require-directory "^2.1.1" 3678 | require-main-filename "^1.0.1" 3679 | set-blocking "^2.0.0" 3680 | string-width "^2.0.0" 3681 | which-module "^2.0.0" 3682 | y18n "^3.2.1" 3683 | yargs-parser "^9.0.2" 3684 | --------------------------------------------------------------------------------