├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── __tests__ ├── index-spec.ts └── worker-spec.ts ├── package.json ├── src ├── api.ts ├── conditions.ts ├── index.ts ├── kv.ts ├── route.ts ├── router.ts └── worker.ts ├── tsconfig.json ├── tslint.json └── yarn.lock /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: ci 2 | 3 | on: [push] 4 | 5 | jobs: 6 | build: 7 | name: ci 8 | runs-on: ubuntu-latest 9 | steps: 10 | - uses: actions/checkout@v1 11 | - name: Use Node.js 12.x 12 | uses: actions/setup-node@v1 13 | with: 14 | node-version: 12.x 15 | - name: yarn install 16 | run: yarn 17 | env: 18 | CI: true 19 | - run: yarn build 20 | env: 21 | CI: true 22 | - run: yarn test 23 | env: 24 | CI: true 25 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | node_modules/ 3 | npm-debug.log* 4 | yarn-debug.log* 5 | yarn-error.log* 6 | .nyc_output 7 | lib 8 | lib_test 9 | docs -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | # gitignore 2 | 3 | coverage/ 4 | node_modules/ 5 | npm-debug.log* 6 | yarn-debug.log* 7 | yarn-error.log* 8 | .nyc_output 9 | lib 10 | lib_test 11 | 12 | # npmignore 13 | 14 | src/ 15 | __tests__/ 16 | .vscode/ -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Luca Casonato 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # cf-worker-kit 2 | 3 | [![GitHub Actions](https://github.com/lucacasonato/workerkit/workflows/ci/badge.svg)](https://github.com/lucacasonato/workerkit/actions) 4 | 5 | A library to make writing Cloudflare Workers way nicer. It implements routing and a nice Workers KV API for you. With this library you have to write considerably less boilerplate than a standard Cloudflare Worker. 6 | 7 | ## installation 8 | 9 | Install by running `npm i cf-worker-kit` or `yarn add cf-worker-kit` then import: 10 | 11 | ```js 12 | const workerkit = require('cf-worker-kit'); 13 | // or 14 | const { Worker, Router, API } = require('cf-worker-kit'); 15 | // or 16 | import workerkit from 'cf-worker-kit'; 17 | // or 18 | import { Worker, Router, API } from 'cf-worker-kit'; 19 | ``` 20 | 21 | ## example 22 | 23 | ```js 24 | // setup for http handling 25 | const worker = new Worker(); 26 | const router = new Router(); 27 | 28 | // setup for workers kv 29 | const api = new API('cf_account_id', 'cf_api_email', 'cf_api_key'); 30 | const BOOKS = api.kv.get('kv_namespace_id'); 31 | 32 | // hello world function 33 | router.any('.*/hello', req => { 34 | return new Response(`Hello from method ${req.method}!`); 35 | }); 36 | 37 | // get the IDs of all books in the KV namespace 38 | router.get('.*/books', async () => { 39 | const books = await BOOKS.keys(); 40 | 41 | return new Response(books.map(book => book.name).join(', ')); 42 | }); 43 | 44 | worker.use(router); 45 | worker.listen(); 46 | ``` 47 | 48 | ## documentation 49 | 50 | https://workerkit.lcas.dev 51 | 52 | ## notes on Workers KV 53 | 54 | If you are using KV in your worker only for `get`, `set` and `delete` operations, you should use the [native Worker KV API](https://workers.cloudflare.com/docs/reference/storage/api/#worker-api), because it is considerably faster because it is implemented as a native call in the Cloudflare Worker environment. As more functions become available in the native API, workerkit might start using these. 55 | 56 | ### using the native KV implemenation with typescript 57 | 58 | If you want to use the Native KV implementation in Cloudflare Workers and you are using TypeScript, then you can use code like the one below to make TS recognize the KV namespace as such. 59 | 60 | ```typescript 61 | // in this case the name of the native KV instance is 'BOOKS'. 62 | 63 | import { NativeKV } from 'cf-worker-kit'; 64 | 65 | declare global { 66 | const BOOKS: NativeKV; 67 | } 68 | ``` 69 | 70 | ## soon(tm) 71 | 72 | - bulk Workers KV setting and deleting 73 | - query params in req 74 | - make KV give better errors 75 | 76 | ## licence 77 | 78 | MIT License 79 | Copyright (c) 2019 Luca Casonato 80 | Full licence in the LICENCE file. 81 | -------------------------------------------------------------------------------- /__tests__/index-spec.ts: -------------------------------------------------------------------------------- 1 | import * as index from '../src/index'; 2 | 3 | test('Should have Worker available', () => { 4 | expect(index.Worker).toBeTruthy(); 5 | }); 6 | 7 | test('Should have Router available', () => { 8 | expect(index.Router).toBeTruthy(); 9 | }); 10 | 11 | test('Should have API available', () => { 12 | expect(index.API).toBeTruthy(); 13 | }); 14 | 15 | test('Should have KV available', () => { 16 | expect(index.KV).toBeTruthy(); 17 | }); 18 | -------------------------------------------------------------------------------- /__tests__/worker-spec.ts: -------------------------------------------------------------------------------- 1 | import { Worker } from '../src/worker'; 2 | import { Router } from '../src/router'; 3 | 4 | // @ts-ignore 5 | import { Request, Response } from 'whatwg-fetch'; 6 | 7 | test('Should respond to GET on /', async () => { 8 | const worker = new Worker(); 9 | const router = new Router(); 10 | router.get('/', () => new Response('Hello, world!')); 11 | worker.use(router); 12 | 13 | const request = new Request('https://example.com/', { 14 | method: 'GET', 15 | }); 16 | const response = await worker.route(request); 17 | expect(response.status).toEqual(200); 18 | expect(await response.text()).toEqual('Hello, world!'); 19 | }); 20 | 21 | test('Should respond to POST on /', async () => { 22 | const worker = new Worker(); 23 | const router = new Router(); 24 | router.post('/', () => new Response('Hello, world!')); 25 | worker.use(router); 26 | 27 | const request = new Request('https://example.com/', { 28 | method: 'POST', 29 | }); 30 | const response = await worker.route(request); 31 | expect(response.status).toEqual(200); 32 | expect(await response.text()).toEqual('Hello, world!'); 33 | }); 34 | 35 | test('Should respond to PATCH on /', async () => { 36 | const worker = new Worker(); 37 | const router = new Router(); 38 | router.patch('/', () => new Response('Hello, world!')); 39 | worker.use(router); 40 | 41 | const request = new Request('https://example.com/', { 42 | method: 'PATCH', 43 | }); 44 | const response = await worker.route(request); 45 | expect(response.status).toEqual(200); 46 | expect(await response.text()).toEqual('Hello, world!'); 47 | }); 48 | 49 | test('Should respond to DELETE on /', async () => { 50 | const worker = new Worker(); 51 | const router = new Router(); 52 | router.delete('/', () => new Response('Hello, world!')); 53 | worker.use(router); 54 | 55 | const request = new Request('https://example.com/', { 56 | method: 'DELETE', 57 | }); 58 | const response = await worker.route(request); 59 | expect(response.status).toEqual(200); 60 | expect(await response.text()).toEqual('Hello, world!'); 61 | }); 62 | 63 | test('Should respond to any on /', async () => { 64 | const worker = new Worker(); 65 | const router = new Router(); 66 | router.all(() => new Response('Hello, world!')); 67 | worker.use(router); 68 | 69 | const request = new Request( 70 | 'https://example.com/this-is-not-the-correct-path', 71 | { 72 | method: 'DELETE', 73 | } 74 | ); 75 | const response = await worker.route(request); 76 | expect(response.status).toEqual(200); 77 | expect(await response.text()).toEqual('Hello, world!'); 78 | }); 79 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cf-worker-kit", 3 | "version": "v0.2.0", 4 | "description": "A library to make writing Cloudflare Workers way nicer.", 5 | "license": "MIT", 6 | "repository": "https://github.com/lucacasonato/workerkit", 7 | "author": { 8 | "name": "Luca Casonato", 9 | "email": "hello@lcas.dev", 10 | "url": "https://lcas.dev" 11 | }, 12 | "keywords": [ 13 | "cloudflare", 14 | "cloudflare-worker", 15 | "typescript", 16 | "workers-kv" 17 | ], 18 | "files": [ 19 | "lib" 20 | ], 21 | "main": "lib/index", 22 | "types": "lib/index", 23 | "scripts": { 24 | "format": "prettier --write \"{src,__tests__}/**/*.ts\" --single-quote --trailing-comma es5", 25 | "lint": "tslint --force --format verbose \"src/**/*.ts\"", 26 | "prepublishOnly": "yarn build", 27 | "prebuild": "yarn format && yarn lint && echo Using TypeScript && tsc --version", 28 | "build": "tsc --pretty", 29 | "test": "jest", 30 | "coverage": "jest --coverage", 31 | "watch": "yarn build -- --watch", 32 | "watch:test": "jest --watch", 33 | "docs": "typedoc --out docs --theme minimal src" 34 | }, 35 | "dependencies": { 36 | "@cloudflare/workers-types": "^1.0.6", 37 | "whatwg-fetch": "^3.0.0" 38 | }, 39 | "devDependencies": { 40 | "@types/jest": "^24.0.23", 41 | "@types/node": "^12.12.17", 42 | "coveralls": "^3.0.9", 43 | "jest": "^24.9.0", 44 | "prettier": "^1.19.1", 45 | "ts-jest": "^24.2.0", 46 | "ts-node": "^8.5.4", 47 | "tslint": "^5.20.1", 48 | "tslint-config-prettier": "^1.18.0", 49 | "typedoc": "^0.15.4", 50 | "typescript": "^3.7.3" 51 | }, 52 | "engines": { 53 | "node": ">=10.0.0" 54 | }, 55 | "jest": { 56 | "preset": "ts-jest" 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /src/api.ts: -------------------------------------------------------------------------------- 1 | import { KV } from './kv'; 2 | 3 | export class API { 4 | public accountID: string; 5 | private apiEmail: string; 6 | private apiKey: string; 7 | 8 | constructor(accountID: string, apiEmail: string, apiKey: string) { 9 | this.accountID = accountID; 10 | this.apiEmail = apiEmail; 11 | this.apiKey = apiKey; 12 | } 13 | 14 | /** 15 | * Make an authenticated GET request to the Cloudlare API 16 | */ 17 | public async get(url: string): Promise { 18 | return this.request(url, { 19 | method: 'GET', 20 | }); 21 | } 22 | 23 | /** 24 | * Make an authenticated POST request to the Cloudlare API 25 | */ 26 | public post(url: string, data: any) { 27 | const dataType = typeof data; 28 | 29 | return this.request(url, { 30 | body: dataType === 'string' ? data : JSON.stringify(data), 31 | headers: { 32 | 'content-type': 33 | dataType === 'string' ? 'text/plain' : 'application/json', 34 | }, 35 | method: 'POST', 36 | }); 37 | } 38 | 39 | /** 40 | * Make an authenticated PUT request to the Cloudlare API 41 | */ 42 | public put(url: string, data: any) { 43 | const dataType = typeof data; 44 | 45 | return this.request(url, { 46 | body: dataType === 'string' ? data : JSON.stringify(data), 47 | headers: { 48 | 'content-type': 49 | dataType === 'string' ? 'text/plain' : 'application/json', 50 | }, 51 | method: 'PUT', 52 | }); 53 | } 54 | 55 | /** 56 | * Make an authenticated GET request to the Cloudlare API 57 | */ 58 | public async delete(url: string): Promise { 59 | return this.request(url, { 60 | method: 'DELETE', 61 | }); 62 | } 63 | 64 | /** 65 | * kv 66 | */ 67 | public get kv() { 68 | const api = this; 69 | 70 | return { 71 | /** 72 | * Get a list of all KV namespaces 73 | */ 74 | async list( 75 | page?: number, 76 | perPage?: number 77 | ): Promise> { 78 | const querys = []; 79 | 80 | if (page) { 81 | querys.push('page=' + page.toString()); 82 | } 83 | if (perPage) { 84 | querys.push('per_page=' + perPage.toString()); 85 | } 86 | 87 | const data = await api.get( 88 | `/storage/kv/namespaces?${querys.join('&')}` 89 | ); 90 | 91 | if (data && typeof data === 'object' && data.success && data.result) { 92 | return data.result; 93 | } 94 | 95 | return []; 96 | }, 97 | 98 | /** 99 | * Get a KV namespace 100 | */ 101 | get(id: string): KV { 102 | return new KV(api, id); 103 | }, 104 | 105 | /** 106 | * Create a KV namespace 107 | */ 108 | async create(title: string): Promise { 109 | const data = await api.post(`/storage/kv/namespaces`, { 110 | title, 111 | }); 112 | 113 | if ( 114 | data && 115 | typeof data === 'object' && 116 | data.success && 117 | data.result && 118 | data.result.id 119 | ) { 120 | return new KV(api, data.result.id); 121 | } 122 | 123 | throw Error('Could not create workspace.'); 124 | }, 125 | 126 | /** 127 | * Remove a KV namespace 128 | */ 129 | async remove(id: string): Promise { 130 | const data = await api.delete(`/storage/kv/namespaces/${id}`); 131 | 132 | if (data && typeof data === 'object' && data.success) { 133 | return; 134 | } 135 | 136 | throw Error('Could not remove workspace.'); 137 | }, 138 | 139 | /** 140 | * Rename a KV namespace 141 | */ 142 | async rename(id: string, newTitle: string): Promise { 143 | const data = await api.put(`/storage/kv/namespaces/${id}`, { 144 | title: newTitle, 145 | }); 146 | 147 | if (data && typeof data === 'object' && data.success) { 148 | return; 149 | } 150 | 151 | throw Error('Could not remove workspace.'); 152 | }, 153 | }; 154 | } 155 | 156 | private get authHeaders() { 157 | return { 158 | 'X-Auth-Email': this.apiEmail, 159 | 'X-Auth-Key': this.apiKey, 160 | }; 161 | } 162 | 163 | private async request(url: string, init: RequestInit): Promise { 164 | const resp = await fetch( 165 | `https://api.cloudflare.com/client/v4/accounts/${this.accountID}${url}`, 166 | { 167 | ...init, 168 | headers: { 169 | ...init.headers, 170 | ...this.authHeaders, 171 | }, 172 | } 173 | ); 174 | 175 | if (!resp.ok) { 176 | throw Error('Fetch did not return with an OK status code.'); 177 | } 178 | 179 | const contentType = resp.headers.get('content-type'); 180 | if (contentType && contentType.includes('text/plain')) { 181 | return resp.text(); 182 | } else if (contentType && contentType.includes('application/json')) { 183 | return resp.json(); 184 | } 185 | 186 | return null; 187 | } 188 | } 189 | -------------------------------------------------------------------------------- /src/conditions.ts: -------------------------------------------------------------------------------- 1 | export const method = (methodString: string) => (req: Request) => 2 | req.method.toLowerCase() === methodString.toLowerCase(); 3 | export const GET = method('get'); 4 | export const POST = method('post'); 5 | export const PUT = method('put'); 6 | export const PATCH = method('patch'); 7 | export const DELETE = method('delete'); 8 | export const HEAD = method('patch'); 9 | export const OPTIONS = method('options'); 10 | 11 | export const header = (headerString: string, val: string) => (req: Request) => 12 | req.headers.get(headerString) === val; 13 | export const host = (hostString: string) => 14 | header('host', hostString.toLowerCase()); 15 | export const referrer = (hostString: string) => 16 | header('referrer', hostString.toLowerCase()); 17 | 18 | export const path = (pathString: RegExp) => (req: Request) => { 19 | const url = new URL(req.url); 20 | const pathname = url.pathname; 21 | const match = pathname.match(pathString) || []; 22 | return match[0] === pathname; 23 | }; 24 | 25 | export type RouteCondition = (req: Request) => boolean; 26 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './worker'; 2 | export * from './router'; 3 | export * from './api'; 4 | export * from './kv'; 5 | -------------------------------------------------------------------------------- /src/kv.ts: -------------------------------------------------------------------------------- 1 | import { API } from './api'; 2 | export { KVNamespace as NativeKV } from '@cloudflare/workers-types'; 3 | 4 | export class KV { 5 | public api: API; 6 | public namespaceID: string; 7 | 8 | constructor(api: API, namespaceID: string) { 9 | this.api = api; 10 | this.namespaceID = namespaceID; 11 | } 12 | 13 | /** 14 | * List all keys in a namespace 15 | * 16 | * @argument prefix returns only keys starting with that prefix (default 1000) (min 10) (max 1000) 17 | * @argument limit is the amount of keys to return 18 | * @argument cursor is the key to start returning from 19 | */ 20 | public async keys( 21 | prefix?: string, 22 | limit?: number, 23 | cursor?: string 24 | ): Promise< 25 | Array<{ 26 | name: string; 27 | expiration: number; 28 | }> 29 | > { 30 | const querys = []; 31 | 32 | if (prefix) { 33 | querys.push('prefix=' + prefix.toString()); 34 | } 35 | if (limit) { 36 | querys.push('limit=' + limit.toString()); 37 | } 38 | if (cursor) { 39 | querys.push('cursor=' + cursor.toString()); 40 | } 41 | 42 | const data = await this.api.get( 43 | `/storage/kv/namespaces/${this.namespaceID}/keys?${querys.join('&')}` 44 | ); 45 | 46 | if (data && typeof data === 'object' && data.success && data.result) { 47 | return data.result; 48 | } 49 | 50 | return []; 51 | } 52 | 53 | /** 54 | * Get a value for a specified key 55 | */ 56 | public async get(key: string): Promise { 57 | const data = await this.api.get( 58 | `/storage/kv/namespaces/${this.namespaceID}/values/${key}` 59 | ); 60 | 61 | return data; 62 | } 63 | 64 | /** 65 | * Set a value for a specified key 66 | */ 67 | public async set( 68 | key: string, 69 | value: string, 70 | expiration?: number, 71 | ttl?: boolean 72 | ): Promise { 73 | const querys = []; 74 | 75 | if (expiration) { 76 | querys.push( 77 | (ttl ? 'expiration_ttl' : 'expiration') + '=' + expiration.toString() 78 | ); 79 | } 80 | 81 | await this.api.put( 82 | `/storage/kv/namespaces/${this.namespaceID}/values/${key}?${querys.join( 83 | '&' 84 | )}`, 85 | value 86 | ); 87 | 88 | return; 89 | } 90 | 91 | /** 92 | * Delete the specified key 93 | */ 94 | public async delete(key: string): Promise { 95 | await this.api.delete( 96 | `/storage/kv/namespaces/${this.namespaceID}/values/${key}` 97 | ); 98 | 99 | return; 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /src/route.ts: -------------------------------------------------------------------------------- 1 | import { Router, RouteHandler } from './router'; 2 | 3 | export class Route { 4 | private url: string; 5 | private router: Router; 6 | 7 | constructor(router: Router, url: string) { 8 | this.router = router; 9 | this.url = url; 10 | } 11 | 12 | /** 13 | * Adds a new route for GET on the specified URL 14 | */ 15 | public get(handler: RouteHandler) { 16 | this.router.get(this.url, handler); 17 | 18 | return this; 19 | } 20 | 21 | /** 22 | * Adds a new route for POST on the specified URL 23 | */ 24 | public post(handler: RouteHandler) { 25 | this.router.post(this.url, handler); 26 | 27 | return this; 28 | } 29 | 30 | /** 31 | * Adds a new route for PUT on the specified URL 32 | */ 33 | public put(handler: RouteHandler) { 34 | this.router.put(this.url, handler); 35 | 36 | return this; 37 | } 38 | 39 | /** 40 | * Adds a new route for PATCH on the specified URL 41 | */ 42 | public patch(handler: RouteHandler) { 43 | this.router.patch(this.url, handler); 44 | 45 | return this; 46 | } 47 | 48 | /** 49 | * Adds a new route for DELETE on the specified URL 50 | */ 51 | public delete(handler: RouteHandler) { 52 | this.router.delete(this.url, handler); 53 | 54 | return this; 55 | } 56 | 57 | /** 58 | * Adds a new route for HEAD on the specified URL 59 | */ 60 | public head(handler: RouteHandler) { 61 | this.router.head(this.url, handler); 62 | 63 | return this; 64 | } 65 | 66 | /** 67 | * Adds a new route for OPTIONS on the specified URL 68 | */ 69 | public options(handler: RouteHandler) { 70 | this.router.options(this.url, handler); 71 | 72 | return this; 73 | } 74 | 75 | /** 76 | * Adds a new route for any protocol on the specified URL 77 | */ 78 | public all(handler: RouteHandler) { 79 | this.router.any(this.url, handler); 80 | 81 | return this; 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /src/router.ts: -------------------------------------------------------------------------------- 1 | import { 2 | path, 3 | DELETE, 4 | GET, 5 | PATCH, 6 | POST, 7 | RouteCondition, 8 | PUT, 9 | OPTIONS, 10 | HEAD, 11 | } from './conditions'; 12 | import { Route } from './route'; 13 | 14 | export interface RouteDefinition { 15 | conditions: RouteCondition | RouteCondition[]; 16 | handler: RouteHandler; 17 | } 18 | 19 | export type RouteHandler = (req: Request) => Response | Promise; 20 | 21 | export class Router { 22 | private routeDefinitions: RouteDefinition[] = []; 23 | 24 | /** 25 | * An array of all routes in this worker 26 | */ 27 | public get routes(): RouteDefinition[] { 28 | return this.routeDefinitions; 29 | } 30 | 31 | /** 32 | * Adds a new route with certain conditions 33 | */ 34 | public handle( 35 | conditions: RouteCondition | RouteCondition[], 36 | handler: RouteHandler 37 | ) { 38 | this.routeDefinitions.push({ 39 | conditions, 40 | handler, 41 | }); 42 | return this; 43 | } 44 | 45 | /** 46 | * Handle connections for a specific route 47 | */ 48 | public route(url: string) { 49 | return new Route(this, url); 50 | } 51 | 52 | /** 53 | * Adds a new route for GET on the specified URL 54 | */ 55 | public get(url: string, handler: RouteHandler) { 56 | return this.handle([GET, path(new RegExp(url))], handler); 57 | } 58 | 59 | /** 60 | * Adds a new route for POST on the specified URL 61 | */ 62 | public post(url: string, handler: RouteHandler) { 63 | return this.handle([POST, path(new RegExp(url))], handler); 64 | } 65 | 66 | /** 67 | * Adds a new route for PUT on the specified URL 68 | */ 69 | public put(url: string, handler: RouteHandler) { 70 | return this.handle([PUT, path(new RegExp(url))], handler); 71 | } 72 | 73 | /** 74 | * Adds a new route for PATCH on the specified URL 75 | */ 76 | public patch(url: string, handler: RouteHandler) { 77 | return this.handle([PATCH, path(new RegExp(url))], handler); 78 | } 79 | 80 | /** 81 | * Adds a new route for DELETE on the specified URL 82 | */ 83 | public delete(url: string, handler: RouteHandler) { 84 | return this.handle([DELETE, path(new RegExp(url))], handler); 85 | } 86 | 87 | /** 88 | * Adds a new route for HEAD on the specified URL 89 | */ 90 | public head(url: string, handler: RouteHandler) { 91 | return this.handle([HEAD, path(new RegExp(url))], handler); 92 | } 93 | 94 | /** 95 | * Adds a new route for OPTIONS on the specified URL 96 | */ 97 | public options(url: string, handler: RouteHandler) { 98 | return this.handle([OPTIONS, path(new RegExp(url))], handler); 99 | } 100 | 101 | /** 102 | * Adds a new route for any method on the specified URL 103 | */ 104 | public any(url: string, handler: RouteHandler) { 105 | return this.handle([path(new RegExp(url))], handler); 106 | } 107 | 108 | /** 109 | * Adds a new route for DELETE on the specified URL 110 | */ 111 | public all(handler: RouteHandler) { 112 | return this.handle([], handler); 113 | } 114 | } 115 | -------------------------------------------------------------------------------- /src/worker.ts: -------------------------------------------------------------------------------- 1 | import { Router, RouteDefinition } from './router'; 2 | 3 | /** 4 | * This handles and routes incoming HTTP requests. 5 | */ 6 | export class Worker { 7 | private routers: Router[] = []; 8 | 9 | /** 10 | * Add a router to the worker 11 | */ 12 | public use(router: Router): Worker { 13 | this.routers.push(router); 14 | return this; 15 | } 16 | 17 | /** 18 | * An array of all routes in this worker 19 | */ 20 | public get routes(): RouteDefinition[] { 21 | return this.routers.flatMap(router => router.routes); 22 | } 23 | 24 | /** 25 | * Find a route that matches the request condition(s) 26 | */ 27 | public resolve(req: Request): RouteDefinition | undefined { 28 | return this.routes.find(r => { 29 | if (!r.conditions || (Array.isArray(r) && !r.conditions.length)) { 30 | return true; 31 | } 32 | 33 | if (typeof r.conditions === 'function') { 34 | return r.conditions(req); 35 | } 36 | 37 | return r.conditions.every(c => c(req)); 38 | }); 39 | } 40 | 41 | /** 42 | * This handles an individual request and returns a response. 43 | */ 44 | public async route(req: Request): Promise { 45 | const route = this.resolve(req); 46 | 47 | if (!route) { 48 | return new Response('resource not found', { 49 | headers: { 50 | 'content-type': 'text/plain', 51 | }, 52 | status: 404, 53 | statusText: 'not found', 54 | }); 55 | } 56 | 57 | return route.handler(req); 58 | } 59 | 60 | /** 61 | * Start listening for events 62 | */ 63 | public listen(): void { 64 | addEventListener('fetch', e => { 65 | const event = e as FetchEvent; 66 | event.respondWith(this.route(event.request)); 67 | }); 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "types": ["jest"], 4 | "declaration": true, 5 | "module": "commonjs", 6 | "moduleResolution": "node", 7 | "lib": ["esnext", "webworker"], 8 | "target": "es2015", 9 | "outDir": "./lib", 10 | "removeComments": true, 11 | "inlineSourceMap": true, 12 | "inlineSources": true, 13 | "preserveConstEnums": true, 14 | "experimentalDecorators": true, 15 | "emitDecoratorMetadata": true, 16 | "strict": true, 17 | "noUnusedLocals": true, 18 | "noUnusedParameters": true, 19 | "noImplicitReturns": true, 20 | "noFallthroughCasesInSwitch": true, 21 | "noImplicitAny": true 22 | }, 23 | "include": ["src/**/*"], 24 | "exclude": ["node_modules", "**/*-spec.ts"] 25 | } 26 | -------------------------------------------------------------------------------- /tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["tslint:latest", "tslint-config-prettier"], 3 | "rules": { 4 | "interface-name": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /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": 6 | version "7.0.0" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" 8 | integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== 9 | dependencies: 10 | "@babel/highlight" "^7.0.0" 11 | 12 | "@babel/code-frame@^7.5.5": 13 | version "7.5.5" 14 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" 15 | integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== 16 | dependencies: 17 | "@babel/highlight" "^7.0.0" 18 | 19 | "@babel/core@^7.1.0": 20 | version "7.7.5" 21 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.7.5.tgz#ae1323cd035b5160293307f50647e83f8ba62f7e" 22 | integrity sha512-M42+ScN4+1S9iB6f+TL7QBpoQETxbclx+KNoKJABghnKYE+fMzSGqst0BZJc8CpI625bwPwYgUyRvxZ+0mZzpw== 23 | dependencies: 24 | "@babel/code-frame" "^7.5.5" 25 | "@babel/generator" "^7.7.4" 26 | "@babel/helpers" "^7.7.4" 27 | "@babel/parser" "^7.7.5" 28 | "@babel/template" "^7.7.4" 29 | "@babel/traverse" "^7.7.4" 30 | "@babel/types" "^7.7.4" 31 | convert-source-map "^1.7.0" 32 | debug "^4.1.0" 33 | json5 "^2.1.0" 34 | lodash "^4.17.13" 35 | resolve "^1.3.2" 36 | semver "^5.4.1" 37 | source-map "^0.5.0" 38 | 39 | "@babel/generator@^7.4.0", "@babel/generator@^7.7.4": 40 | version "7.7.4" 41 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.4.tgz#db651e2840ca9aa66f327dcec1dc5f5fa9611369" 42 | integrity sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg== 43 | dependencies: 44 | "@babel/types" "^7.7.4" 45 | jsesc "^2.5.1" 46 | lodash "^4.17.13" 47 | source-map "^0.5.0" 48 | 49 | "@babel/helper-function-name@^7.7.4": 50 | version "7.7.4" 51 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e" 52 | integrity sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ== 53 | dependencies: 54 | "@babel/helper-get-function-arity" "^7.7.4" 55 | "@babel/template" "^7.7.4" 56 | "@babel/types" "^7.7.4" 57 | 58 | "@babel/helper-get-function-arity@^7.7.4": 59 | version "7.7.4" 60 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0" 61 | integrity sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA== 62 | dependencies: 63 | "@babel/types" "^7.7.4" 64 | 65 | "@babel/helper-plugin-utils@^7.0.0": 66 | version "7.0.0" 67 | resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" 68 | integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== 69 | 70 | "@babel/helper-split-export-declaration@^7.7.4": 71 | version "7.7.4" 72 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8" 73 | integrity sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug== 74 | dependencies: 75 | "@babel/types" "^7.7.4" 76 | 77 | "@babel/helpers@^7.7.4": 78 | version "7.7.4" 79 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.4.tgz#62c215b9e6c712dadc15a9a0dcab76c92a940302" 80 | integrity sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg== 81 | dependencies: 82 | "@babel/template" "^7.7.4" 83 | "@babel/traverse" "^7.7.4" 84 | "@babel/types" "^7.7.4" 85 | 86 | "@babel/highlight@^7.0.0": 87 | version "7.0.0" 88 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" 89 | integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== 90 | dependencies: 91 | chalk "^2.0.0" 92 | esutils "^2.0.2" 93 | js-tokens "^4.0.0" 94 | 95 | "@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.7.4", "@babel/parser@^7.7.5": 96 | version "7.7.5" 97 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.5.tgz#cbf45321619ac12d83363fcf9c94bb67fa646d71" 98 | integrity sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig== 99 | 100 | "@babel/plugin-syntax-object-rest-spread@^7.0.0": 101 | version "7.7.4" 102 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz#47cf220d19d6d0d7b154304701f468fc1cc6ff46" 103 | integrity sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg== 104 | dependencies: 105 | "@babel/helper-plugin-utils" "^7.0.0" 106 | 107 | "@babel/template@^7.4.0", "@babel/template@^7.7.4": 108 | version "7.7.4" 109 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b" 110 | integrity sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw== 111 | dependencies: 112 | "@babel/code-frame" "^7.0.0" 113 | "@babel/parser" "^7.7.4" 114 | "@babel/types" "^7.7.4" 115 | 116 | "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.4": 117 | version "7.7.4" 118 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558" 119 | integrity sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw== 120 | dependencies: 121 | "@babel/code-frame" "^7.5.5" 122 | "@babel/generator" "^7.7.4" 123 | "@babel/helper-function-name" "^7.7.4" 124 | "@babel/helper-split-export-declaration" "^7.7.4" 125 | "@babel/parser" "^7.7.4" 126 | "@babel/types" "^7.7.4" 127 | debug "^4.1.0" 128 | globals "^11.1.0" 129 | lodash "^4.17.13" 130 | 131 | "@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.7.4": 132 | version "7.7.4" 133 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193" 134 | integrity sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA== 135 | dependencies: 136 | esutils "^2.0.2" 137 | lodash "^4.17.13" 138 | to-fast-properties "^2.0.0" 139 | 140 | "@cloudflare/workers-types@^1.0.6": 141 | version "1.0.6" 142 | resolved "https://registry.yarnpkg.com/@cloudflare/workers-types/-/workers-types-1.0.6.tgz#f4c74e818a3d935e258ec0b3c0ab6788f0385057" 143 | integrity sha512-hmpkFqiRNMkcgUPedOTdM3qIn4sM7k3KvtpmMu0N9mtXlAAFqq44UN8BZp/Ba8vefI8XywS/31ZVpD/bnXIeBA== 144 | 145 | "@cnakazawa/watch@^1.0.3": 146 | version "1.0.3" 147 | resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef" 148 | integrity sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA== 149 | dependencies: 150 | exec-sh "^0.3.2" 151 | minimist "^1.2.0" 152 | 153 | "@jest/console@^24.7.1", "@jest/console@^24.9.0": 154 | version "24.9.0" 155 | resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" 156 | integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ== 157 | dependencies: 158 | "@jest/source-map" "^24.9.0" 159 | chalk "^2.0.1" 160 | slash "^2.0.0" 161 | 162 | "@jest/core@^24.9.0": 163 | version "24.9.0" 164 | resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4" 165 | integrity sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A== 166 | dependencies: 167 | "@jest/console" "^24.7.1" 168 | "@jest/reporters" "^24.9.0" 169 | "@jest/test-result" "^24.9.0" 170 | "@jest/transform" "^24.9.0" 171 | "@jest/types" "^24.9.0" 172 | ansi-escapes "^3.0.0" 173 | chalk "^2.0.1" 174 | exit "^0.1.2" 175 | graceful-fs "^4.1.15" 176 | jest-changed-files "^24.9.0" 177 | jest-config "^24.9.0" 178 | jest-haste-map "^24.9.0" 179 | jest-message-util "^24.9.0" 180 | jest-regex-util "^24.3.0" 181 | jest-resolve "^24.9.0" 182 | jest-resolve-dependencies "^24.9.0" 183 | jest-runner "^24.9.0" 184 | jest-runtime "^24.9.0" 185 | jest-snapshot "^24.9.0" 186 | jest-util "^24.9.0" 187 | jest-validate "^24.9.0" 188 | jest-watcher "^24.9.0" 189 | micromatch "^3.1.10" 190 | p-each-series "^1.0.0" 191 | realpath-native "^1.1.0" 192 | rimraf "^2.5.4" 193 | slash "^2.0.0" 194 | strip-ansi "^5.0.0" 195 | 196 | "@jest/environment@^24.9.0": 197 | version "24.9.0" 198 | resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18" 199 | integrity sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ== 200 | dependencies: 201 | "@jest/fake-timers" "^24.9.0" 202 | "@jest/transform" "^24.9.0" 203 | "@jest/types" "^24.9.0" 204 | jest-mock "^24.9.0" 205 | 206 | "@jest/fake-timers@^24.9.0": 207 | version "24.9.0" 208 | resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93" 209 | integrity sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A== 210 | dependencies: 211 | "@jest/types" "^24.9.0" 212 | jest-message-util "^24.9.0" 213 | jest-mock "^24.9.0" 214 | 215 | "@jest/reporters@^24.9.0": 216 | version "24.9.0" 217 | resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43" 218 | integrity sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw== 219 | dependencies: 220 | "@jest/environment" "^24.9.0" 221 | "@jest/test-result" "^24.9.0" 222 | "@jest/transform" "^24.9.0" 223 | "@jest/types" "^24.9.0" 224 | chalk "^2.0.1" 225 | exit "^0.1.2" 226 | glob "^7.1.2" 227 | istanbul-lib-coverage "^2.0.2" 228 | istanbul-lib-instrument "^3.0.1" 229 | istanbul-lib-report "^2.0.4" 230 | istanbul-lib-source-maps "^3.0.1" 231 | istanbul-reports "^2.2.6" 232 | jest-haste-map "^24.9.0" 233 | jest-resolve "^24.9.0" 234 | jest-runtime "^24.9.0" 235 | jest-util "^24.9.0" 236 | jest-worker "^24.6.0" 237 | node-notifier "^5.4.2" 238 | slash "^2.0.0" 239 | source-map "^0.6.0" 240 | string-length "^2.0.0" 241 | 242 | "@jest/source-map@^24.3.0", "@jest/source-map@^24.9.0": 243 | version "24.9.0" 244 | resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" 245 | integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg== 246 | dependencies: 247 | callsites "^3.0.0" 248 | graceful-fs "^4.1.15" 249 | source-map "^0.6.0" 250 | 251 | "@jest/test-result@^24.9.0": 252 | version "24.9.0" 253 | resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" 254 | integrity sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA== 255 | dependencies: 256 | "@jest/console" "^24.9.0" 257 | "@jest/types" "^24.9.0" 258 | "@types/istanbul-lib-coverage" "^2.0.0" 259 | 260 | "@jest/test-sequencer@^24.9.0": 261 | version "24.9.0" 262 | resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31" 263 | integrity sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A== 264 | dependencies: 265 | "@jest/test-result" "^24.9.0" 266 | jest-haste-map "^24.9.0" 267 | jest-runner "^24.9.0" 268 | jest-runtime "^24.9.0" 269 | 270 | "@jest/transform@^24.9.0": 271 | version "24.9.0" 272 | resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56" 273 | integrity sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ== 274 | dependencies: 275 | "@babel/core" "^7.1.0" 276 | "@jest/types" "^24.9.0" 277 | babel-plugin-istanbul "^5.1.0" 278 | chalk "^2.0.1" 279 | convert-source-map "^1.4.0" 280 | fast-json-stable-stringify "^2.0.0" 281 | graceful-fs "^4.1.15" 282 | jest-haste-map "^24.9.0" 283 | jest-regex-util "^24.9.0" 284 | jest-util "^24.9.0" 285 | micromatch "^3.1.10" 286 | pirates "^4.0.1" 287 | realpath-native "^1.1.0" 288 | slash "^2.0.0" 289 | source-map "^0.6.1" 290 | write-file-atomic "2.4.1" 291 | 292 | "@jest/types@^24.9.0": 293 | version "24.9.0" 294 | resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" 295 | integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== 296 | dependencies: 297 | "@types/istanbul-lib-coverage" "^2.0.0" 298 | "@types/istanbul-reports" "^1.1.1" 299 | "@types/yargs" "^13.0.0" 300 | 301 | "@types/babel__core@^7.1.0": 302 | version "7.1.3" 303 | resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.3.tgz#e441ea7df63cd080dfcd02ab199e6d16a735fc30" 304 | integrity sha512-8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA== 305 | dependencies: 306 | "@babel/parser" "^7.1.0" 307 | "@babel/types" "^7.0.0" 308 | "@types/babel__generator" "*" 309 | "@types/babel__template" "*" 310 | "@types/babel__traverse" "*" 311 | 312 | "@types/babel__generator@*": 313 | version "7.6.1" 314 | resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" 315 | integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== 316 | dependencies: 317 | "@babel/types" "^7.0.0" 318 | 319 | "@types/babel__template@*": 320 | version "7.0.2" 321 | resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" 322 | integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== 323 | dependencies: 324 | "@babel/parser" "^7.1.0" 325 | "@babel/types" "^7.0.0" 326 | 327 | "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": 328 | version "7.0.8" 329 | resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.8.tgz#479a4ee3e291a403a1096106013ec22cf9b64012" 330 | integrity sha512-yGeB2dHEdvxjP0y4UbRtQaSkXJ9649fYCmIdRoul5kfAoGCwxuCbMhag0k3RPfnuh9kPGm8x89btcfDEXdVWGw== 331 | dependencies: 332 | "@babel/types" "^7.3.0" 333 | 334 | "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": 335 | version "2.0.1" 336 | resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" 337 | integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== 338 | 339 | "@types/istanbul-lib-report@*": 340 | version "1.1.1" 341 | resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz#e5471e7fa33c61358dd38426189c037a58433b8c" 342 | integrity sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg== 343 | dependencies: 344 | "@types/istanbul-lib-coverage" "*" 345 | 346 | "@types/istanbul-reports@^1.1.1": 347 | version "1.1.1" 348 | resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz#7a8cbf6a406f36c8add871625b278eaf0b0d255a" 349 | integrity sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA== 350 | dependencies: 351 | "@types/istanbul-lib-coverage" "*" 352 | "@types/istanbul-lib-report" "*" 353 | 354 | "@types/jest@^24.0.23": 355 | version "24.0.23" 356 | resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.23.tgz#046f8e2ade026fe831623e361a36b6fb9a4463e4" 357 | integrity sha512-L7MBvwfNpe7yVPTXLn32df/EK+AMBFAFvZrRuArGs7npEWnlziUXK+5GMIUTI4NIuwok3XibsjXCs5HxviYXjg== 358 | dependencies: 359 | jest-diff "^24.3.0" 360 | 361 | "@types/minimatch@3.0.3": 362 | version "3.0.3" 363 | resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" 364 | integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== 365 | 366 | "@types/node@^12.12.17": 367 | version "12.12.17" 368 | resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.17.tgz#191b71e7f4c325ee0fb23bc4a996477d92b8c39b" 369 | integrity sha512-Is+l3mcHvs47sKy+afn2O1rV4ldZFU7W8101cNlOd+MRbjM4Onida8jSZnJdTe/0Pcf25g9BNIUsuugmE6puHA== 370 | 371 | "@types/stack-utils@^1.0.1": 372 | version "1.0.1" 373 | resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" 374 | integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw== 375 | 376 | "@types/yargs-parser@*": 377 | version "13.1.0" 378 | resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.1.0.tgz#c563aa192f39350a1d18da36c5a8da382bbd8228" 379 | integrity sha512-gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg== 380 | 381 | "@types/yargs@^13.0.0": 382 | version "13.0.3" 383 | resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.3.tgz#76482af3981d4412d65371a318f992d33464a380" 384 | integrity sha512-K8/LfZq2duW33XW/tFwEAfnZlqIfVsoyRB3kfXdPXYhl0nfM8mmh7GS0jg7WrX2Dgq/0Ha/pR1PaR+BvmWwjiQ== 385 | dependencies: 386 | "@types/yargs-parser" "*" 387 | 388 | abab@^2.0.0: 389 | version "2.0.0" 390 | resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" 391 | integrity sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w== 392 | 393 | acorn-globals@^4.1.0: 394 | version "4.3.2" 395 | resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.2.tgz#4e2c2313a597fd589720395f6354b41cd5ec8006" 396 | integrity sha512-BbzvZhVtZP+Bs1J1HcwrQe8ycfO0wStkSGxuul3He3GkHOIZ6eTqOkPuw9IP1X3+IkOo4wiJmwkobzXYz4wewQ== 397 | dependencies: 398 | acorn "^6.0.1" 399 | acorn-walk "^6.0.1" 400 | 401 | acorn-walk@^6.0.1: 402 | version "6.1.1" 403 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913" 404 | integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw== 405 | 406 | acorn@^5.5.3: 407 | version "5.7.4" 408 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e" 409 | integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg== 410 | 411 | acorn@^6.0.1: 412 | version "6.1.1" 413 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.1.tgz#7d25ae05bb8ad1f9b699108e1094ecd7884adc1f" 414 | integrity sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA== 415 | 416 | ajv@^6.5.5: 417 | version "6.10.0" 418 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1" 419 | integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg== 420 | dependencies: 421 | fast-deep-equal "^2.0.1" 422 | fast-json-stable-stringify "^2.0.0" 423 | json-schema-traverse "^0.4.1" 424 | uri-js "^4.2.2" 425 | 426 | ansi-escapes@^3.0.0: 427 | version "3.2.0" 428 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" 429 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== 430 | 431 | ansi-regex@^3.0.0: 432 | version "3.0.0" 433 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 434 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 435 | 436 | ansi-regex@^4.0.0, ansi-regex@^4.1.0: 437 | version "4.1.0" 438 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 439 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 440 | 441 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 442 | version "3.2.1" 443 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 444 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 445 | dependencies: 446 | color-convert "^1.9.0" 447 | 448 | anymatch@^2.0.0: 449 | version "2.0.0" 450 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" 451 | integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== 452 | dependencies: 453 | micromatch "^3.1.4" 454 | normalize-path "^2.1.1" 455 | 456 | arg@^4.1.0: 457 | version "4.1.2" 458 | resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.2.tgz#e70c90579e02c63d80e3ad4e31d8bfdb8bd50064" 459 | integrity sha512-+ytCkGcBtHZ3V2r2Z06AncYO8jz46UEamcspGoU8lHcEbpn6J77QK0vdWvChsclg/tM5XIJC5tnjmPp7Eq6Obg== 460 | 461 | argparse@^1.0.7: 462 | version "1.0.10" 463 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 464 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 465 | dependencies: 466 | sprintf-js "~1.0.2" 467 | 468 | arr-diff@^4.0.0: 469 | version "4.0.0" 470 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" 471 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= 472 | 473 | arr-flatten@^1.1.0: 474 | version "1.1.0" 475 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" 476 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 477 | 478 | arr-union@^3.1.0: 479 | version "3.1.0" 480 | resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" 481 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= 482 | 483 | array-equal@^1.0.0: 484 | version "1.0.0" 485 | resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" 486 | integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= 487 | 488 | array-unique@^0.3.2: 489 | version "0.3.2" 490 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" 491 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= 492 | 493 | asn1@~0.2.3: 494 | version "0.2.4" 495 | resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" 496 | integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== 497 | dependencies: 498 | safer-buffer "~2.1.0" 499 | 500 | assert-plus@1.0.0, assert-plus@^1.0.0: 501 | version "1.0.0" 502 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" 503 | integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= 504 | 505 | assign-symbols@^1.0.0: 506 | version "1.0.0" 507 | resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" 508 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= 509 | 510 | astral-regex@^1.0.0: 511 | version "1.0.0" 512 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" 513 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 514 | 515 | async-limiter@~1.0.0: 516 | version "1.0.0" 517 | resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" 518 | integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== 519 | 520 | asynckit@^0.4.0: 521 | version "0.4.0" 522 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 523 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= 524 | 525 | atob@^2.1.1: 526 | version "2.1.2" 527 | resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" 528 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== 529 | 530 | aws-sign2@~0.7.0: 531 | version "0.7.0" 532 | resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" 533 | integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= 534 | 535 | aws4@^1.8.0: 536 | version "1.8.0" 537 | resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" 538 | integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== 539 | 540 | babel-jest@^24.9.0: 541 | version "24.9.0" 542 | resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54" 543 | integrity sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw== 544 | dependencies: 545 | "@jest/transform" "^24.9.0" 546 | "@jest/types" "^24.9.0" 547 | "@types/babel__core" "^7.1.0" 548 | babel-plugin-istanbul "^5.1.0" 549 | babel-preset-jest "^24.9.0" 550 | chalk "^2.4.2" 551 | slash "^2.0.0" 552 | 553 | babel-plugin-istanbul@^5.1.0: 554 | version "5.2.0" 555 | resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz#df4ade83d897a92df069c4d9a25cf2671293c854" 556 | integrity sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw== 557 | dependencies: 558 | "@babel/helper-plugin-utils" "^7.0.0" 559 | find-up "^3.0.0" 560 | istanbul-lib-instrument "^3.3.0" 561 | test-exclude "^5.2.3" 562 | 563 | babel-plugin-jest-hoist@^24.9.0: 564 | version "24.9.0" 565 | resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756" 566 | integrity sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw== 567 | dependencies: 568 | "@types/babel__traverse" "^7.0.6" 569 | 570 | babel-preset-jest@^24.9.0: 571 | version "24.9.0" 572 | resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc" 573 | integrity sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg== 574 | dependencies: 575 | "@babel/plugin-syntax-object-rest-spread" "^7.0.0" 576 | babel-plugin-jest-hoist "^24.9.0" 577 | 578 | backbone@^1.4.0: 579 | version "1.4.0" 580 | resolved "https://registry.yarnpkg.com/backbone/-/backbone-1.4.0.tgz#54db4de9df7c3811c3f032f34749a4cd27f3bd12" 581 | integrity sha512-RLmDrRXkVdouTg38jcgHhyQ/2zjg7a8E6sz2zxfz21Hh17xDJYUHBZimVIt5fUyS8vbfpeSmTL3gUjTEvUV3qQ== 582 | dependencies: 583 | underscore ">=1.8.3" 584 | 585 | balanced-match@^1.0.0: 586 | version "1.0.0" 587 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 588 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 589 | 590 | base@^0.11.1: 591 | version "0.11.2" 592 | resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" 593 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== 594 | dependencies: 595 | cache-base "^1.0.1" 596 | class-utils "^0.3.5" 597 | component-emitter "^1.2.1" 598 | define-property "^1.0.0" 599 | isobject "^3.0.1" 600 | mixin-deep "^1.2.0" 601 | pascalcase "^0.1.1" 602 | 603 | bcrypt-pbkdf@^1.0.0: 604 | version "1.0.2" 605 | resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" 606 | integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= 607 | dependencies: 608 | tweetnacl "^0.14.3" 609 | 610 | bindings@^1.5.0: 611 | version "1.5.0" 612 | resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" 613 | integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== 614 | dependencies: 615 | file-uri-to-path "1.0.0" 616 | 617 | brace-expansion@^1.1.7: 618 | version "1.1.11" 619 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 620 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 621 | dependencies: 622 | balanced-match "^1.0.0" 623 | concat-map "0.0.1" 624 | 625 | braces@^2.3.1: 626 | version "2.3.2" 627 | resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" 628 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== 629 | dependencies: 630 | arr-flatten "^1.1.0" 631 | array-unique "^0.3.2" 632 | extend-shallow "^2.0.1" 633 | fill-range "^4.0.0" 634 | isobject "^3.0.1" 635 | repeat-element "^1.1.2" 636 | snapdragon "^0.8.1" 637 | snapdragon-node "^2.0.1" 638 | split-string "^3.0.2" 639 | to-regex "^3.0.1" 640 | 641 | browser-process-hrtime@^0.1.2: 642 | version "0.1.3" 643 | resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz#616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4" 644 | integrity sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw== 645 | 646 | browser-resolve@^1.11.3: 647 | version "1.11.3" 648 | resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" 649 | integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== 650 | dependencies: 651 | resolve "1.1.7" 652 | 653 | bs-logger@0.x: 654 | version "0.2.6" 655 | resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" 656 | integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== 657 | dependencies: 658 | fast-json-stable-stringify "2.x" 659 | 660 | bser@^2.0.0: 661 | version "2.0.0" 662 | resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" 663 | integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= 664 | dependencies: 665 | node-int64 "^0.4.0" 666 | 667 | buffer-from@1.x, buffer-from@^1.0.0: 668 | version "1.1.1" 669 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 670 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 671 | 672 | builtin-modules@^1.1.1: 673 | version "1.1.1" 674 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 675 | integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= 676 | 677 | cache-base@^1.0.1: 678 | version "1.0.1" 679 | resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" 680 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== 681 | dependencies: 682 | collection-visit "^1.0.0" 683 | component-emitter "^1.2.1" 684 | get-value "^2.0.6" 685 | has-value "^1.0.0" 686 | isobject "^3.0.1" 687 | set-value "^2.0.0" 688 | to-object-path "^0.3.0" 689 | union-value "^1.0.0" 690 | unset-value "^1.0.0" 691 | 692 | callsites@^3.0.0: 693 | version "3.1.0" 694 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 695 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 696 | 697 | camelcase@^4.1.0: 698 | version "4.1.0" 699 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" 700 | integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= 701 | 702 | camelcase@^5.0.0, camelcase@^5.3.1: 703 | version "5.3.1" 704 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 705 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 706 | 707 | capture-exit@^2.0.0: 708 | version "2.0.0" 709 | resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" 710 | integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== 711 | dependencies: 712 | rsvp "^4.8.4" 713 | 714 | caseless@~0.12.0: 715 | version "0.12.0" 716 | resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" 717 | integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= 718 | 719 | chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.4.2: 720 | version "2.4.2" 721 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 722 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 723 | dependencies: 724 | ansi-styles "^3.2.1" 725 | escape-string-regexp "^1.0.5" 726 | supports-color "^5.3.0" 727 | 728 | ci-info@^2.0.0: 729 | version "2.0.0" 730 | resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" 731 | integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== 732 | 733 | class-utils@^0.3.5: 734 | version "0.3.6" 735 | resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" 736 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== 737 | dependencies: 738 | arr-union "^3.1.0" 739 | define-property "^0.2.5" 740 | isobject "^3.0.0" 741 | static-extend "^0.1.1" 742 | 743 | cliui@^5.0.0: 744 | version "5.0.0" 745 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" 746 | integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== 747 | dependencies: 748 | string-width "^3.1.0" 749 | strip-ansi "^5.2.0" 750 | wrap-ansi "^5.1.0" 751 | 752 | co@^4.6.0: 753 | version "4.6.0" 754 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" 755 | integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= 756 | 757 | collection-visit@^1.0.0: 758 | version "1.0.0" 759 | resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" 760 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= 761 | dependencies: 762 | map-visit "^1.0.0" 763 | object-visit "^1.0.0" 764 | 765 | color-convert@^1.9.0: 766 | version "1.9.3" 767 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 768 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 769 | dependencies: 770 | color-name "1.1.3" 771 | 772 | color-name@1.1.3: 773 | version "1.1.3" 774 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 775 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 776 | 777 | combined-stream@^1.0.6, combined-stream@~1.0.6: 778 | version "1.0.8" 779 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" 780 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== 781 | dependencies: 782 | delayed-stream "~1.0.0" 783 | 784 | commander@^2.12.1, commander@~2.20.0: 785 | version "2.20.0" 786 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" 787 | integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== 788 | 789 | component-emitter@^1.2.1: 790 | version "1.3.0" 791 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" 792 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== 793 | 794 | concat-map@0.0.1: 795 | version "0.0.1" 796 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 797 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 798 | 799 | convert-source-map@^1.4.0: 800 | version "1.6.0" 801 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" 802 | integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== 803 | dependencies: 804 | safe-buffer "~5.1.1" 805 | 806 | convert-source-map@^1.7.0: 807 | version "1.7.0" 808 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" 809 | integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== 810 | dependencies: 811 | safe-buffer "~5.1.1" 812 | 813 | copy-descriptor@^0.1.0: 814 | version "0.1.1" 815 | resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" 816 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= 817 | 818 | core-util-is@1.0.2: 819 | version "1.0.2" 820 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 821 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 822 | 823 | coveralls@^3.0.9: 824 | version "3.0.9" 825 | resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.9.tgz#8cfc5a5525f84884e2948a0bf0f1c0e90aac0420" 826 | integrity sha512-nNBg3B1+4iDox5A5zqHKzUTiwl2ey4k2o0NEcVZYvl+GOSJdKBj4AJGKLv6h3SvWch7tABHePAQOSZWM9E2hMg== 827 | dependencies: 828 | js-yaml "^3.13.1" 829 | lcov-parse "^1.0.0" 830 | log-driver "^1.2.7" 831 | minimist "^1.2.0" 832 | request "^2.88.0" 833 | 834 | cross-spawn@^6.0.0: 835 | version "6.0.5" 836 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 837 | integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== 838 | dependencies: 839 | nice-try "^1.0.4" 840 | path-key "^2.0.1" 841 | semver "^5.5.0" 842 | shebang-command "^1.2.0" 843 | which "^1.2.9" 844 | 845 | cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": 846 | version "0.3.6" 847 | resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.6.tgz#f85206cee04efa841f3c5982a74ba96ab20d65ad" 848 | integrity sha512-DtUeseGk9/GBW0hl0vVPpU22iHL6YB5BUX7ml1hB+GMpo0NX5G4voX3kdWiMSEguFtcW3Vh3djqNF4aIe6ne0A== 849 | 850 | cssstyle@^1.0.0: 851 | version "1.2.2" 852 | resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.2.2.tgz#427ea4d585b18624f6fdbf9de7a2a1a3ba713077" 853 | integrity sha512-43wY3kl1CVQSvL7wUY1qXkxVGkStjpkDmVjiIKX8R97uhajy8Bybay78uOtqvh7Q5GK75dNPfW0geWjE6qQQow== 854 | dependencies: 855 | cssom "0.3.x" 856 | 857 | dashdash@^1.12.0: 858 | version "1.14.1" 859 | resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" 860 | integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= 861 | dependencies: 862 | assert-plus "^1.0.0" 863 | 864 | data-urls@^1.0.0: 865 | version "1.1.0" 866 | resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" 867 | integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== 868 | dependencies: 869 | abab "^2.0.0" 870 | whatwg-mimetype "^2.2.0" 871 | whatwg-url "^7.0.0" 872 | 873 | debug@^2.2.0, debug@^2.3.3: 874 | version "2.6.9" 875 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 876 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 877 | dependencies: 878 | ms "2.0.0" 879 | 880 | debug@^4.1.0, debug@^4.1.1: 881 | version "4.1.1" 882 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 883 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 884 | dependencies: 885 | ms "^2.1.1" 886 | 887 | decamelize@^1.2.0: 888 | version "1.2.0" 889 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 890 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 891 | 892 | decode-uri-component@^0.2.0: 893 | version "0.2.0" 894 | resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" 895 | integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= 896 | 897 | deep-is@~0.1.3: 898 | version "0.1.3" 899 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 900 | integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= 901 | 902 | define-properties@^1.1.2: 903 | version "1.1.3" 904 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 905 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 906 | dependencies: 907 | object-keys "^1.0.12" 908 | 909 | define-property@^0.2.5: 910 | version "0.2.5" 911 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" 912 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= 913 | dependencies: 914 | is-descriptor "^0.1.0" 915 | 916 | define-property@^1.0.0: 917 | version "1.0.0" 918 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" 919 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= 920 | dependencies: 921 | is-descriptor "^1.0.0" 922 | 923 | define-property@^2.0.2: 924 | version "2.0.2" 925 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" 926 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== 927 | dependencies: 928 | is-descriptor "^1.0.2" 929 | isobject "^3.0.1" 930 | 931 | delayed-stream@~1.0.0: 932 | version "1.0.0" 933 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 934 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= 935 | 936 | detect-newline@^2.1.0: 937 | version "2.1.0" 938 | resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" 939 | integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= 940 | 941 | diff-sequences@^24.9.0: 942 | version "24.9.0" 943 | resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" 944 | integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== 945 | 946 | diff@^4.0.1: 947 | version "4.0.1" 948 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.1.tgz#0c667cb467ebbb5cea7f14f135cc2dba7780a8ff" 949 | integrity sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q== 950 | 951 | domexception@^1.0.1: 952 | version "1.0.1" 953 | resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" 954 | integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== 955 | dependencies: 956 | webidl-conversions "^4.0.2" 957 | 958 | ecc-jsbn@~0.1.1: 959 | version "0.1.2" 960 | resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" 961 | integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= 962 | dependencies: 963 | jsbn "~0.1.0" 964 | safer-buffer "^2.1.0" 965 | 966 | emoji-regex@^7.0.1: 967 | version "7.0.3" 968 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 969 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 970 | 971 | end-of-stream@^1.1.0: 972 | version "1.4.4" 973 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" 974 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 975 | dependencies: 976 | once "^1.4.0" 977 | 978 | error-ex@^1.3.1: 979 | version "1.3.2" 980 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 981 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 982 | dependencies: 983 | is-arrayish "^0.2.1" 984 | 985 | es-abstract@^1.5.1: 986 | version "1.13.0" 987 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" 988 | integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== 989 | dependencies: 990 | es-to-primitive "^1.2.0" 991 | function-bind "^1.1.1" 992 | has "^1.0.3" 993 | is-callable "^1.1.4" 994 | is-regex "^1.0.4" 995 | object-keys "^1.0.12" 996 | 997 | es-to-primitive@^1.2.0: 998 | version "1.2.0" 999 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" 1000 | integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== 1001 | dependencies: 1002 | is-callable "^1.1.4" 1003 | is-date-object "^1.0.1" 1004 | is-symbol "^1.0.2" 1005 | 1006 | escape-string-regexp@^1.0.5: 1007 | version "1.0.5" 1008 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 1009 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 1010 | 1011 | escodegen@^1.9.1: 1012 | version "1.11.1" 1013 | resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.1.tgz#c485ff8d6b4cdb89e27f4a856e91f118401ca510" 1014 | integrity sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw== 1015 | dependencies: 1016 | esprima "^3.1.3" 1017 | estraverse "^4.2.0" 1018 | esutils "^2.0.2" 1019 | optionator "^0.8.1" 1020 | optionalDependencies: 1021 | source-map "~0.6.1" 1022 | 1023 | esprima@^3.1.3: 1024 | version "3.1.3" 1025 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" 1026 | integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= 1027 | 1028 | esprima@^4.0.0: 1029 | version "4.0.1" 1030 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 1031 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 1032 | 1033 | estraverse@^4.2.0: 1034 | version "4.2.0" 1035 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 1036 | integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= 1037 | 1038 | esutils@^2.0.2: 1039 | version "2.0.2" 1040 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 1041 | integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= 1042 | 1043 | exec-sh@^0.3.2: 1044 | version "0.3.4" 1045 | resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5" 1046 | integrity sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A== 1047 | 1048 | execa@^1.0.0: 1049 | version "1.0.0" 1050 | resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" 1051 | integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== 1052 | dependencies: 1053 | cross-spawn "^6.0.0" 1054 | get-stream "^4.0.0" 1055 | is-stream "^1.1.0" 1056 | npm-run-path "^2.0.0" 1057 | p-finally "^1.0.0" 1058 | signal-exit "^3.0.0" 1059 | strip-eof "^1.0.0" 1060 | 1061 | exit@^0.1.2: 1062 | version "0.1.2" 1063 | resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" 1064 | integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= 1065 | 1066 | expand-brackets@^2.1.4: 1067 | version "2.1.4" 1068 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" 1069 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= 1070 | dependencies: 1071 | debug "^2.3.3" 1072 | define-property "^0.2.5" 1073 | extend-shallow "^2.0.1" 1074 | posix-character-classes "^0.1.0" 1075 | regex-not "^1.0.0" 1076 | snapdragon "^0.8.1" 1077 | to-regex "^3.0.1" 1078 | 1079 | expect@^24.9.0: 1080 | version "24.9.0" 1081 | resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" 1082 | integrity sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q== 1083 | dependencies: 1084 | "@jest/types" "^24.9.0" 1085 | ansi-styles "^3.2.0" 1086 | jest-get-type "^24.9.0" 1087 | jest-matcher-utils "^24.9.0" 1088 | jest-message-util "^24.9.0" 1089 | jest-regex-util "^24.9.0" 1090 | 1091 | extend-shallow@^2.0.1: 1092 | version "2.0.1" 1093 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" 1094 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= 1095 | dependencies: 1096 | is-extendable "^0.1.0" 1097 | 1098 | extend-shallow@^3.0.0, extend-shallow@^3.0.2: 1099 | version "3.0.2" 1100 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" 1101 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= 1102 | dependencies: 1103 | assign-symbols "^1.0.0" 1104 | is-extendable "^1.0.1" 1105 | 1106 | extend@~3.0.2: 1107 | version "3.0.2" 1108 | resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" 1109 | integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== 1110 | 1111 | extglob@^2.0.4: 1112 | version "2.0.4" 1113 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" 1114 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== 1115 | dependencies: 1116 | array-unique "^0.3.2" 1117 | define-property "^1.0.0" 1118 | expand-brackets "^2.1.4" 1119 | extend-shallow "^2.0.1" 1120 | fragment-cache "^0.2.1" 1121 | regex-not "^1.0.0" 1122 | snapdragon "^0.8.1" 1123 | to-regex "^3.0.1" 1124 | 1125 | extsprintf@1.3.0: 1126 | version "1.3.0" 1127 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" 1128 | integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= 1129 | 1130 | extsprintf@^1.2.0: 1131 | version "1.4.0" 1132 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" 1133 | integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= 1134 | 1135 | fast-deep-equal@^2.0.1: 1136 | version "2.0.1" 1137 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" 1138 | integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= 1139 | 1140 | fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: 1141 | version "2.0.0" 1142 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" 1143 | integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= 1144 | 1145 | fast-levenshtein@~2.0.4: 1146 | version "2.0.6" 1147 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 1148 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 1149 | 1150 | fb-watchman@^2.0.0: 1151 | version "2.0.0" 1152 | resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" 1153 | integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg= 1154 | dependencies: 1155 | bser "^2.0.0" 1156 | 1157 | file-uri-to-path@1.0.0: 1158 | version "1.0.0" 1159 | resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" 1160 | integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== 1161 | 1162 | fill-range@^4.0.0: 1163 | version "4.0.0" 1164 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" 1165 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= 1166 | dependencies: 1167 | extend-shallow "^2.0.1" 1168 | is-number "^3.0.0" 1169 | repeat-string "^1.6.1" 1170 | to-regex-range "^2.1.0" 1171 | 1172 | find-up@^3.0.0: 1173 | version "3.0.0" 1174 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 1175 | integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== 1176 | dependencies: 1177 | locate-path "^3.0.0" 1178 | 1179 | for-in@^1.0.2: 1180 | version "1.0.2" 1181 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" 1182 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 1183 | 1184 | forever-agent@~0.6.1: 1185 | version "0.6.1" 1186 | resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" 1187 | integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= 1188 | 1189 | form-data@~2.3.2: 1190 | version "2.3.3" 1191 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" 1192 | integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== 1193 | dependencies: 1194 | asynckit "^0.4.0" 1195 | combined-stream "^1.0.6" 1196 | mime-types "^2.1.12" 1197 | 1198 | fragment-cache@^0.2.1: 1199 | version "0.2.1" 1200 | resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" 1201 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= 1202 | dependencies: 1203 | map-cache "^0.2.2" 1204 | 1205 | fs-extra@^8.1.0: 1206 | version "8.1.0" 1207 | resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" 1208 | integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== 1209 | dependencies: 1210 | graceful-fs "^4.2.0" 1211 | jsonfile "^4.0.0" 1212 | universalify "^0.1.0" 1213 | 1214 | fs.realpath@^1.0.0: 1215 | version "1.0.0" 1216 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 1217 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 1218 | 1219 | fsevents@^1.2.7: 1220 | version "1.2.11" 1221 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.11.tgz#67bf57f4758f02ede88fb2a1712fef4d15358be3" 1222 | integrity sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw== 1223 | dependencies: 1224 | bindings "^1.5.0" 1225 | nan "^2.12.1" 1226 | 1227 | function-bind@^1.1.1: 1228 | version "1.1.1" 1229 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 1230 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 1231 | 1232 | get-caller-file@^2.0.1: 1233 | version "2.0.5" 1234 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" 1235 | integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== 1236 | 1237 | get-stream@^4.0.0: 1238 | version "4.1.0" 1239 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" 1240 | integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== 1241 | dependencies: 1242 | pump "^3.0.0" 1243 | 1244 | get-value@^2.0.3, get-value@^2.0.6: 1245 | version "2.0.6" 1246 | resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" 1247 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= 1248 | 1249 | getpass@^0.1.1: 1250 | version "0.1.7" 1251 | resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" 1252 | integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= 1253 | dependencies: 1254 | assert-plus "^1.0.0" 1255 | 1256 | glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: 1257 | version "7.1.4" 1258 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" 1259 | integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== 1260 | dependencies: 1261 | fs.realpath "^1.0.0" 1262 | inflight "^1.0.4" 1263 | inherits "2" 1264 | minimatch "^3.0.4" 1265 | once "^1.3.0" 1266 | path-is-absolute "^1.0.0" 1267 | 1268 | globals@^11.1.0: 1269 | version "11.12.0" 1270 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 1271 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1272 | 1273 | graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: 1274 | version "4.1.15" 1275 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" 1276 | integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== 1277 | 1278 | graceful-fs@^4.1.15, graceful-fs@^4.2.0: 1279 | version "4.2.3" 1280 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" 1281 | integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== 1282 | 1283 | growly@^1.3.0: 1284 | version "1.3.0" 1285 | resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" 1286 | integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= 1287 | 1288 | handlebars@^4.1.2, handlebars@^4.5.3: 1289 | version "4.5.3" 1290 | resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.5.3.tgz#5cf75bd8714f7605713511a56be7c349becb0482" 1291 | integrity sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA== 1292 | dependencies: 1293 | neo-async "^2.6.0" 1294 | optimist "^0.6.1" 1295 | source-map "^0.6.1" 1296 | optionalDependencies: 1297 | uglify-js "^3.1.4" 1298 | 1299 | har-schema@^2.0.0: 1300 | version "2.0.0" 1301 | resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" 1302 | integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= 1303 | 1304 | har-validator@~5.1.0: 1305 | version "5.1.3" 1306 | resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" 1307 | integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== 1308 | dependencies: 1309 | ajv "^6.5.5" 1310 | har-schema "^2.0.0" 1311 | 1312 | has-flag@^3.0.0: 1313 | version "3.0.0" 1314 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1315 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1316 | 1317 | has-symbols@^1.0.0: 1318 | version "1.0.0" 1319 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 1320 | integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 1321 | 1322 | has-value@^0.3.1: 1323 | version "0.3.1" 1324 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" 1325 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= 1326 | dependencies: 1327 | get-value "^2.0.3" 1328 | has-values "^0.1.4" 1329 | isobject "^2.0.0" 1330 | 1331 | has-value@^1.0.0: 1332 | version "1.0.0" 1333 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" 1334 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= 1335 | dependencies: 1336 | get-value "^2.0.6" 1337 | has-values "^1.0.0" 1338 | isobject "^3.0.0" 1339 | 1340 | has-values@^0.1.4: 1341 | version "0.1.4" 1342 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" 1343 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= 1344 | 1345 | has-values@^1.0.0: 1346 | version "1.0.0" 1347 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" 1348 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= 1349 | dependencies: 1350 | is-number "^3.0.0" 1351 | kind-of "^4.0.0" 1352 | 1353 | has@^1.0.1, has@^1.0.3: 1354 | version "1.0.3" 1355 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 1356 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1357 | dependencies: 1358 | function-bind "^1.1.1" 1359 | 1360 | highlight.js@^9.16.2: 1361 | version "9.18.5" 1362 | resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.18.5.tgz#d18a359867f378c138d6819edfc2a8acd5f29825" 1363 | integrity sha512-a5bFyofd/BHCX52/8i8uJkjr9DYwXIPnM/plwI6W7ezItLGqzt7X2G2nXuYSfsIJdkwwj/g9DG1LkcGJI/dDoA== 1364 | 1365 | hosted-git-info@^2.1.4: 1366 | version "2.7.1" 1367 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" 1368 | integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== 1369 | 1370 | html-encoding-sniffer@^1.0.2: 1371 | version "1.0.2" 1372 | resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" 1373 | integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== 1374 | dependencies: 1375 | whatwg-encoding "^1.0.1" 1376 | 1377 | http-signature@~1.2.0: 1378 | version "1.2.0" 1379 | resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" 1380 | integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= 1381 | dependencies: 1382 | assert-plus "^1.0.0" 1383 | jsprim "^1.2.2" 1384 | sshpk "^1.7.0" 1385 | 1386 | iconv-lite@0.4.24: 1387 | version "0.4.24" 1388 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 1389 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1390 | dependencies: 1391 | safer-buffer ">= 2.1.2 < 3" 1392 | 1393 | import-local@^2.0.0: 1394 | version "2.0.0" 1395 | resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" 1396 | integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== 1397 | dependencies: 1398 | pkg-dir "^3.0.0" 1399 | resolve-cwd "^2.0.0" 1400 | 1401 | imurmurhash@^0.1.4: 1402 | version "0.1.4" 1403 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 1404 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 1405 | 1406 | inflight@^1.0.4: 1407 | version "1.0.6" 1408 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1409 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 1410 | dependencies: 1411 | once "^1.3.0" 1412 | wrappy "1" 1413 | 1414 | inherits@2: 1415 | version "2.0.3" 1416 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 1417 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 1418 | 1419 | interpret@^1.0.0: 1420 | version "1.2.0" 1421 | resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" 1422 | integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw== 1423 | 1424 | invariant@^2.2.4: 1425 | version "2.2.4" 1426 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" 1427 | integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 1428 | dependencies: 1429 | loose-envify "^1.0.0" 1430 | 1431 | is-accessor-descriptor@^0.1.6: 1432 | version "0.1.6" 1433 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" 1434 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= 1435 | dependencies: 1436 | kind-of "^3.0.2" 1437 | 1438 | is-accessor-descriptor@^1.0.0: 1439 | version "1.0.0" 1440 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" 1441 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== 1442 | dependencies: 1443 | kind-of "^6.0.0" 1444 | 1445 | is-arrayish@^0.2.1: 1446 | version "0.2.1" 1447 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 1448 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 1449 | 1450 | is-buffer@^1.1.5: 1451 | version "1.1.6" 1452 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" 1453 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== 1454 | 1455 | is-callable@^1.1.4: 1456 | version "1.1.4" 1457 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" 1458 | integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== 1459 | 1460 | is-ci@^2.0.0: 1461 | version "2.0.0" 1462 | resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" 1463 | integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== 1464 | dependencies: 1465 | ci-info "^2.0.0" 1466 | 1467 | is-data-descriptor@^0.1.4: 1468 | version "0.1.4" 1469 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" 1470 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= 1471 | dependencies: 1472 | kind-of "^3.0.2" 1473 | 1474 | is-data-descriptor@^1.0.0: 1475 | version "1.0.0" 1476 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" 1477 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== 1478 | dependencies: 1479 | kind-of "^6.0.0" 1480 | 1481 | is-date-object@^1.0.1: 1482 | version "1.0.1" 1483 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 1484 | integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= 1485 | 1486 | is-descriptor@^0.1.0: 1487 | version "0.1.6" 1488 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" 1489 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== 1490 | dependencies: 1491 | is-accessor-descriptor "^0.1.6" 1492 | is-data-descriptor "^0.1.4" 1493 | kind-of "^5.0.0" 1494 | 1495 | is-descriptor@^1.0.0, is-descriptor@^1.0.2: 1496 | version "1.0.2" 1497 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" 1498 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== 1499 | dependencies: 1500 | is-accessor-descriptor "^1.0.0" 1501 | is-data-descriptor "^1.0.0" 1502 | kind-of "^6.0.2" 1503 | 1504 | is-extendable@^0.1.0, is-extendable@^0.1.1: 1505 | version "0.1.1" 1506 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 1507 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 1508 | 1509 | is-extendable@^1.0.1: 1510 | version "1.0.1" 1511 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" 1512 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== 1513 | dependencies: 1514 | is-plain-object "^2.0.4" 1515 | 1516 | is-fullwidth-code-point@^2.0.0: 1517 | version "2.0.0" 1518 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 1519 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1520 | 1521 | is-generator-fn@^2.0.0: 1522 | version "2.1.0" 1523 | resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" 1524 | integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== 1525 | 1526 | is-number@^3.0.0: 1527 | version "3.0.0" 1528 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" 1529 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= 1530 | dependencies: 1531 | kind-of "^3.0.2" 1532 | 1533 | is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: 1534 | version "2.0.4" 1535 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" 1536 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== 1537 | dependencies: 1538 | isobject "^3.0.1" 1539 | 1540 | is-regex@^1.0.4: 1541 | version "1.0.4" 1542 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 1543 | integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= 1544 | dependencies: 1545 | has "^1.0.1" 1546 | 1547 | is-stream@^1.1.0: 1548 | version "1.1.0" 1549 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 1550 | integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= 1551 | 1552 | is-symbol@^1.0.2: 1553 | version "1.0.2" 1554 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" 1555 | integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== 1556 | dependencies: 1557 | has-symbols "^1.0.0" 1558 | 1559 | is-typedarray@~1.0.0: 1560 | version "1.0.0" 1561 | resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" 1562 | integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= 1563 | 1564 | is-windows@^1.0.2: 1565 | version "1.0.2" 1566 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" 1567 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== 1568 | 1569 | is-wsl@^1.1.0: 1570 | version "1.1.0" 1571 | resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" 1572 | integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= 1573 | 1574 | isarray@1.0.0: 1575 | version "1.0.0" 1576 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 1577 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 1578 | 1579 | isexe@^2.0.0: 1580 | version "2.0.0" 1581 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 1582 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 1583 | 1584 | isobject@^2.0.0: 1585 | version "2.1.0" 1586 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 1587 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 1588 | dependencies: 1589 | isarray "1.0.0" 1590 | 1591 | isobject@^3.0.0, isobject@^3.0.1: 1592 | version "3.0.1" 1593 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" 1594 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= 1595 | 1596 | isstream@~0.1.2: 1597 | version "0.1.2" 1598 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" 1599 | integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= 1600 | 1601 | istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.5: 1602 | version "2.0.5" 1603 | resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" 1604 | integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== 1605 | 1606 | istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0: 1607 | version "3.3.0" 1608 | resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" 1609 | integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== 1610 | dependencies: 1611 | "@babel/generator" "^7.4.0" 1612 | "@babel/parser" "^7.4.3" 1613 | "@babel/template" "^7.4.0" 1614 | "@babel/traverse" "^7.4.3" 1615 | "@babel/types" "^7.4.0" 1616 | istanbul-lib-coverage "^2.0.5" 1617 | semver "^6.0.0" 1618 | 1619 | istanbul-lib-report@^2.0.4: 1620 | version "2.0.8" 1621 | resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" 1622 | integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== 1623 | dependencies: 1624 | istanbul-lib-coverage "^2.0.5" 1625 | make-dir "^2.1.0" 1626 | supports-color "^6.1.0" 1627 | 1628 | istanbul-lib-source-maps@^3.0.1: 1629 | version "3.0.6" 1630 | resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" 1631 | integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== 1632 | dependencies: 1633 | debug "^4.1.1" 1634 | istanbul-lib-coverage "^2.0.5" 1635 | make-dir "^2.1.0" 1636 | rimraf "^2.6.3" 1637 | source-map "^0.6.1" 1638 | 1639 | istanbul-reports@^2.2.6: 1640 | version "2.2.6" 1641 | resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af" 1642 | integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA== 1643 | dependencies: 1644 | handlebars "^4.1.2" 1645 | 1646 | jest-changed-files@^24.9.0: 1647 | version "24.9.0" 1648 | resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039" 1649 | integrity sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg== 1650 | dependencies: 1651 | "@jest/types" "^24.9.0" 1652 | execa "^1.0.0" 1653 | throat "^4.0.0" 1654 | 1655 | jest-cli@^24.9.0: 1656 | version "24.9.0" 1657 | resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af" 1658 | integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg== 1659 | dependencies: 1660 | "@jest/core" "^24.9.0" 1661 | "@jest/test-result" "^24.9.0" 1662 | "@jest/types" "^24.9.0" 1663 | chalk "^2.0.1" 1664 | exit "^0.1.2" 1665 | import-local "^2.0.0" 1666 | is-ci "^2.0.0" 1667 | jest-config "^24.9.0" 1668 | jest-util "^24.9.0" 1669 | jest-validate "^24.9.0" 1670 | prompts "^2.0.1" 1671 | realpath-native "^1.1.0" 1672 | yargs "^13.3.0" 1673 | 1674 | jest-config@^24.9.0: 1675 | version "24.9.0" 1676 | resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5" 1677 | integrity sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ== 1678 | dependencies: 1679 | "@babel/core" "^7.1.0" 1680 | "@jest/test-sequencer" "^24.9.0" 1681 | "@jest/types" "^24.9.0" 1682 | babel-jest "^24.9.0" 1683 | chalk "^2.0.1" 1684 | glob "^7.1.1" 1685 | jest-environment-jsdom "^24.9.0" 1686 | jest-environment-node "^24.9.0" 1687 | jest-get-type "^24.9.0" 1688 | jest-jasmine2 "^24.9.0" 1689 | jest-regex-util "^24.3.0" 1690 | jest-resolve "^24.9.0" 1691 | jest-util "^24.9.0" 1692 | jest-validate "^24.9.0" 1693 | micromatch "^3.1.10" 1694 | pretty-format "^24.9.0" 1695 | realpath-native "^1.1.0" 1696 | 1697 | jest-diff@^24.3.0, jest-diff@^24.9.0: 1698 | version "24.9.0" 1699 | resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" 1700 | integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== 1701 | dependencies: 1702 | chalk "^2.0.1" 1703 | diff-sequences "^24.9.0" 1704 | jest-get-type "^24.9.0" 1705 | pretty-format "^24.9.0" 1706 | 1707 | jest-docblock@^24.3.0: 1708 | version "24.9.0" 1709 | resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.9.0.tgz#7970201802ba560e1c4092cc25cbedf5af5a8ce2" 1710 | integrity sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA== 1711 | dependencies: 1712 | detect-newline "^2.1.0" 1713 | 1714 | jest-each@^24.9.0: 1715 | version "24.9.0" 1716 | resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05" 1717 | integrity sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog== 1718 | dependencies: 1719 | "@jest/types" "^24.9.0" 1720 | chalk "^2.0.1" 1721 | jest-get-type "^24.9.0" 1722 | jest-util "^24.9.0" 1723 | pretty-format "^24.9.0" 1724 | 1725 | jest-environment-jsdom@^24.9.0: 1726 | version "24.9.0" 1727 | resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b" 1728 | integrity sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA== 1729 | dependencies: 1730 | "@jest/environment" "^24.9.0" 1731 | "@jest/fake-timers" "^24.9.0" 1732 | "@jest/types" "^24.9.0" 1733 | jest-mock "^24.9.0" 1734 | jest-util "^24.9.0" 1735 | jsdom "^11.5.1" 1736 | 1737 | jest-environment-node@^24.9.0: 1738 | version "24.9.0" 1739 | resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3" 1740 | integrity sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA== 1741 | dependencies: 1742 | "@jest/environment" "^24.9.0" 1743 | "@jest/fake-timers" "^24.9.0" 1744 | "@jest/types" "^24.9.0" 1745 | jest-mock "^24.9.0" 1746 | jest-util "^24.9.0" 1747 | 1748 | jest-get-type@^24.9.0: 1749 | version "24.9.0" 1750 | resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" 1751 | integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== 1752 | 1753 | jest-haste-map@^24.9.0: 1754 | version "24.9.0" 1755 | resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d" 1756 | integrity sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ== 1757 | dependencies: 1758 | "@jest/types" "^24.9.0" 1759 | anymatch "^2.0.0" 1760 | fb-watchman "^2.0.0" 1761 | graceful-fs "^4.1.15" 1762 | invariant "^2.2.4" 1763 | jest-serializer "^24.9.0" 1764 | jest-util "^24.9.0" 1765 | jest-worker "^24.9.0" 1766 | micromatch "^3.1.10" 1767 | sane "^4.0.3" 1768 | walker "^1.0.7" 1769 | optionalDependencies: 1770 | fsevents "^1.2.7" 1771 | 1772 | jest-jasmine2@^24.9.0: 1773 | version "24.9.0" 1774 | resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0" 1775 | integrity sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw== 1776 | dependencies: 1777 | "@babel/traverse" "^7.1.0" 1778 | "@jest/environment" "^24.9.0" 1779 | "@jest/test-result" "^24.9.0" 1780 | "@jest/types" "^24.9.0" 1781 | chalk "^2.0.1" 1782 | co "^4.6.0" 1783 | expect "^24.9.0" 1784 | is-generator-fn "^2.0.0" 1785 | jest-each "^24.9.0" 1786 | jest-matcher-utils "^24.9.0" 1787 | jest-message-util "^24.9.0" 1788 | jest-runtime "^24.9.0" 1789 | jest-snapshot "^24.9.0" 1790 | jest-util "^24.9.0" 1791 | pretty-format "^24.9.0" 1792 | throat "^4.0.0" 1793 | 1794 | jest-leak-detector@^24.9.0: 1795 | version "24.9.0" 1796 | resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a" 1797 | integrity sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA== 1798 | dependencies: 1799 | jest-get-type "^24.9.0" 1800 | pretty-format "^24.9.0" 1801 | 1802 | jest-matcher-utils@^24.9.0: 1803 | version "24.9.0" 1804 | resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" 1805 | integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA== 1806 | dependencies: 1807 | chalk "^2.0.1" 1808 | jest-diff "^24.9.0" 1809 | jest-get-type "^24.9.0" 1810 | pretty-format "^24.9.0" 1811 | 1812 | jest-message-util@^24.9.0: 1813 | version "24.9.0" 1814 | resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" 1815 | integrity sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw== 1816 | dependencies: 1817 | "@babel/code-frame" "^7.0.0" 1818 | "@jest/test-result" "^24.9.0" 1819 | "@jest/types" "^24.9.0" 1820 | "@types/stack-utils" "^1.0.1" 1821 | chalk "^2.0.1" 1822 | micromatch "^3.1.10" 1823 | slash "^2.0.0" 1824 | stack-utils "^1.0.1" 1825 | 1826 | jest-mock@^24.9.0: 1827 | version "24.9.0" 1828 | resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6" 1829 | integrity sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w== 1830 | dependencies: 1831 | "@jest/types" "^24.9.0" 1832 | 1833 | jest-pnp-resolver@^1.2.1: 1834 | version "1.2.1" 1835 | resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" 1836 | integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== 1837 | 1838 | jest-regex-util@^24.3.0, jest-regex-util@^24.9.0: 1839 | version "24.9.0" 1840 | resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" 1841 | integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== 1842 | 1843 | jest-resolve-dependencies@^24.9.0: 1844 | version "24.9.0" 1845 | resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab" 1846 | integrity sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g== 1847 | dependencies: 1848 | "@jest/types" "^24.9.0" 1849 | jest-regex-util "^24.3.0" 1850 | jest-snapshot "^24.9.0" 1851 | 1852 | jest-resolve@^24.9.0: 1853 | version "24.9.0" 1854 | resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321" 1855 | integrity sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ== 1856 | dependencies: 1857 | "@jest/types" "^24.9.0" 1858 | browser-resolve "^1.11.3" 1859 | chalk "^2.0.1" 1860 | jest-pnp-resolver "^1.2.1" 1861 | realpath-native "^1.1.0" 1862 | 1863 | jest-runner@^24.9.0: 1864 | version "24.9.0" 1865 | resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42" 1866 | integrity sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg== 1867 | dependencies: 1868 | "@jest/console" "^24.7.1" 1869 | "@jest/environment" "^24.9.0" 1870 | "@jest/test-result" "^24.9.0" 1871 | "@jest/types" "^24.9.0" 1872 | chalk "^2.4.2" 1873 | exit "^0.1.2" 1874 | graceful-fs "^4.1.15" 1875 | jest-config "^24.9.0" 1876 | jest-docblock "^24.3.0" 1877 | jest-haste-map "^24.9.0" 1878 | jest-jasmine2 "^24.9.0" 1879 | jest-leak-detector "^24.9.0" 1880 | jest-message-util "^24.9.0" 1881 | jest-resolve "^24.9.0" 1882 | jest-runtime "^24.9.0" 1883 | jest-util "^24.9.0" 1884 | jest-worker "^24.6.0" 1885 | source-map-support "^0.5.6" 1886 | throat "^4.0.0" 1887 | 1888 | jest-runtime@^24.9.0: 1889 | version "24.9.0" 1890 | resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac" 1891 | integrity sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw== 1892 | dependencies: 1893 | "@jest/console" "^24.7.1" 1894 | "@jest/environment" "^24.9.0" 1895 | "@jest/source-map" "^24.3.0" 1896 | "@jest/transform" "^24.9.0" 1897 | "@jest/types" "^24.9.0" 1898 | "@types/yargs" "^13.0.0" 1899 | chalk "^2.0.1" 1900 | exit "^0.1.2" 1901 | glob "^7.1.3" 1902 | graceful-fs "^4.1.15" 1903 | jest-config "^24.9.0" 1904 | jest-haste-map "^24.9.0" 1905 | jest-message-util "^24.9.0" 1906 | jest-mock "^24.9.0" 1907 | jest-regex-util "^24.3.0" 1908 | jest-resolve "^24.9.0" 1909 | jest-snapshot "^24.9.0" 1910 | jest-util "^24.9.0" 1911 | jest-validate "^24.9.0" 1912 | realpath-native "^1.1.0" 1913 | slash "^2.0.0" 1914 | strip-bom "^3.0.0" 1915 | yargs "^13.3.0" 1916 | 1917 | jest-serializer@^24.9.0: 1918 | version "24.9.0" 1919 | resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" 1920 | integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== 1921 | 1922 | jest-snapshot@^24.9.0: 1923 | version "24.9.0" 1924 | resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba" 1925 | integrity sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew== 1926 | dependencies: 1927 | "@babel/types" "^7.0.0" 1928 | "@jest/types" "^24.9.0" 1929 | chalk "^2.0.1" 1930 | expect "^24.9.0" 1931 | jest-diff "^24.9.0" 1932 | jest-get-type "^24.9.0" 1933 | jest-matcher-utils "^24.9.0" 1934 | jest-message-util "^24.9.0" 1935 | jest-resolve "^24.9.0" 1936 | mkdirp "^0.5.1" 1937 | natural-compare "^1.4.0" 1938 | pretty-format "^24.9.0" 1939 | semver "^6.2.0" 1940 | 1941 | jest-util@^24.9.0: 1942 | version "24.9.0" 1943 | resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" 1944 | integrity sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg== 1945 | dependencies: 1946 | "@jest/console" "^24.9.0" 1947 | "@jest/fake-timers" "^24.9.0" 1948 | "@jest/source-map" "^24.9.0" 1949 | "@jest/test-result" "^24.9.0" 1950 | "@jest/types" "^24.9.0" 1951 | callsites "^3.0.0" 1952 | chalk "^2.0.1" 1953 | graceful-fs "^4.1.15" 1954 | is-ci "^2.0.0" 1955 | mkdirp "^0.5.1" 1956 | slash "^2.0.0" 1957 | source-map "^0.6.0" 1958 | 1959 | jest-validate@^24.9.0: 1960 | version "24.9.0" 1961 | resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" 1962 | integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ== 1963 | dependencies: 1964 | "@jest/types" "^24.9.0" 1965 | camelcase "^5.3.1" 1966 | chalk "^2.0.1" 1967 | jest-get-type "^24.9.0" 1968 | leven "^3.1.0" 1969 | pretty-format "^24.9.0" 1970 | 1971 | jest-watcher@^24.9.0: 1972 | version "24.9.0" 1973 | resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b" 1974 | integrity sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw== 1975 | dependencies: 1976 | "@jest/test-result" "^24.9.0" 1977 | "@jest/types" "^24.9.0" 1978 | "@types/yargs" "^13.0.0" 1979 | ansi-escapes "^3.0.0" 1980 | chalk "^2.0.1" 1981 | jest-util "^24.9.0" 1982 | string-length "^2.0.0" 1983 | 1984 | jest-worker@^24.6.0, jest-worker@^24.9.0: 1985 | version "24.9.0" 1986 | resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" 1987 | integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== 1988 | dependencies: 1989 | merge-stream "^2.0.0" 1990 | supports-color "^6.1.0" 1991 | 1992 | jest@^24.9.0: 1993 | version "24.9.0" 1994 | resolved "https://registry.yarnpkg.com/jest/-/jest-24.9.0.tgz#987d290c05a08b52c56188c1002e368edb007171" 1995 | integrity sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw== 1996 | dependencies: 1997 | import-local "^2.0.0" 1998 | jest-cli "^24.9.0" 1999 | 2000 | jquery@^3.4.1: 2001 | version "3.5.0" 2002 | resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.5.0.tgz#9980b97d9e4194611c36530e7dc46a58d7340fc9" 2003 | integrity sha512-Xb7SVYMvygPxbFMpTFQiHh1J7HClEaThguL15N/Gg37Lri/qKyhRGZYzHRyLH8Stq3Aow0LsHO2O2ci86fCrNQ== 2004 | 2005 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 2006 | version "4.0.0" 2007 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 2008 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 2009 | 2010 | js-yaml@^3.13.1: 2011 | version "3.13.1" 2012 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" 2013 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== 2014 | dependencies: 2015 | argparse "^1.0.7" 2016 | esprima "^4.0.0" 2017 | 2018 | jsbn@~0.1.0: 2019 | version "0.1.1" 2020 | resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" 2021 | integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= 2022 | 2023 | jsdom@^11.5.1: 2024 | version "11.12.0" 2025 | resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" 2026 | integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== 2027 | dependencies: 2028 | abab "^2.0.0" 2029 | acorn "^5.5.3" 2030 | acorn-globals "^4.1.0" 2031 | array-equal "^1.0.0" 2032 | cssom ">= 0.3.2 < 0.4.0" 2033 | cssstyle "^1.0.0" 2034 | data-urls "^1.0.0" 2035 | domexception "^1.0.1" 2036 | escodegen "^1.9.1" 2037 | html-encoding-sniffer "^1.0.2" 2038 | left-pad "^1.3.0" 2039 | nwsapi "^2.0.7" 2040 | parse5 "4.0.0" 2041 | pn "^1.1.0" 2042 | request "^2.87.0" 2043 | request-promise-native "^1.0.5" 2044 | sax "^1.2.4" 2045 | symbol-tree "^3.2.2" 2046 | tough-cookie "^2.3.4" 2047 | w3c-hr-time "^1.0.1" 2048 | webidl-conversions "^4.0.2" 2049 | whatwg-encoding "^1.0.3" 2050 | whatwg-mimetype "^2.1.0" 2051 | whatwg-url "^6.4.1" 2052 | ws "^5.2.0" 2053 | xml-name-validator "^3.0.0" 2054 | 2055 | jsesc@^2.5.1: 2056 | version "2.5.2" 2057 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 2058 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 2059 | 2060 | json-parse-better-errors@^1.0.1: 2061 | version "1.0.2" 2062 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 2063 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 2064 | 2065 | json-schema-traverse@^0.4.1: 2066 | version "0.4.1" 2067 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 2068 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 2069 | 2070 | json-schema@0.2.3: 2071 | version "0.2.3" 2072 | resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" 2073 | integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= 2074 | 2075 | json-stringify-safe@~5.0.1: 2076 | version "5.0.1" 2077 | resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" 2078 | integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= 2079 | 2080 | json5@2.x: 2081 | version "2.1.0" 2082 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" 2083 | integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== 2084 | dependencies: 2085 | minimist "^1.2.0" 2086 | 2087 | json5@^2.1.0: 2088 | version "2.1.1" 2089 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.1.tgz#81b6cb04e9ba496f1c7005d07b4368a2638f90b6" 2090 | integrity sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ== 2091 | dependencies: 2092 | minimist "^1.2.0" 2093 | 2094 | jsonfile@^4.0.0: 2095 | version "4.0.0" 2096 | resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" 2097 | integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= 2098 | optionalDependencies: 2099 | graceful-fs "^4.1.6" 2100 | 2101 | jsprim@^1.2.2: 2102 | version "1.4.1" 2103 | resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" 2104 | integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= 2105 | dependencies: 2106 | assert-plus "1.0.0" 2107 | extsprintf "1.3.0" 2108 | json-schema "0.2.3" 2109 | verror "1.10.0" 2110 | 2111 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: 2112 | version "3.2.2" 2113 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" 2114 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 2115 | dependencies: 2116 | is-buffer "^1.1.5" 2117 | 2118 | kind-of@^4.0.0: 2119 | version "4.0.0" 2120 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" 2121 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= 2122 | dependencies: 2123 | is-buffer "^1.1.5" 2124 | 2125 | kind-of@^5.0.0: 2126 | version "5.1.0" 2127 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" 2128 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== 2129 | 2130 | kind-of@^6.0.0, kind-of@^6.0.2: 2131 | version "6.0.2" 2132 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" 2133 | integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== 2134 | 2135 | kleur@^3.0.3: 2136 | version "3.0.3" 2137 | resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" 2138 | integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== 2139 | 2140 | lcov-parse@^1.0.0: 2141 | version "1.0.0" 2142 | resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-1.0.0.tgz#eb0d46b54111ebc561acb4c408ef9363bdc8f7e0" 2143 | integrity sha1-6w1GtUER68VhrLTECO+TY73I9+A= 2144 | 2145 | left-pad@^1.3.0: 2146 | version "1.3.0" 2147 | resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" 2148 | integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== 2149 | 2150 | leven@^3.1.0: 2151 | version "3.1.0" 2152 | resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" 2153 | integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== 2154 | 2155 | levn@~0.3.0: 2156 | version "0.3.0" 2157 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 2158 | integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= 2159 | dependencies: 2160 | prelude-ls "~1.1.2" 2161 | type-check "~0.3.2" 2162 | 2163 | load-json-file@^4.0.0: 2164 | version "4.0.0" 2165 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" 2166 | integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= 2167 | dependencies: 2168 | graceful-fs "^4.1.2" 2169 | parse-json "^4.0.0" 2170 | pify "^3.0.0" 2171 | strip-bom "^3.0.0" 2172 | 2173 | locate-path@^3.0.0: 2174 | version "3.0.0" 2175 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 2176 | integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== 2177 | dependencies: 2178 | p-locate "^3.0.0" 2179 | path-exists "^3.0.0" 2180 | 2181 | lodash.memoize@4.x: 2182 | version "4.1.2" 2183 | resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" 2184 | integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= 2185 | 2186 | lodash.sortby@^4.7.0: 2187 | version "4.7.0" 2188 | resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" 2189 | integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= 2190 | 2191 | lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.15: 2192 | version "4.17.19" 2193 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" 2194 | integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== 2195 | 2196 | log-driver@^1.2.7: 2197 | version "1.2.7" 2198 | resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" 2199 | integrity sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg== 2200 | 2201 | loose-envify@^1.0.0: 2202 | version "1.4.0" 2203 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 2204 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 2205 | dependencies: 2206 | js-tokens "^3.0.0 || ^4.0.0" 2207 | 2208 | lunr@^2.3.8: 2209 | version "2.3.8" 2210 | resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.8.tgz#a8b89c31f30b5a044b97d2d28e2da191b6ba2072" 2211 | integrity sha512-oxMeX/Y35PNFuZoHp+jUj5OSEmLCaIH4KTFJh7a93cHBoFmpw2IoPs22VIz7vyO2YUnx2Tn9dzIwO2P/4quIRg== 2212 | 2213 | make-dir@^2.1.0: 2214 | version "2.1.0" 2215 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" 2216 | integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== 2217 | dependencies: 2218 | pify "^4.0.1" 2219 | semver "^5.6.0" 2220 | 2221 | make-error@1.x, make-error@^1.1.1: 2222 | version "1.3.5" 2223 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8" 2224 | integrity sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g== 2225 | 2226 | makeerror@1.0.x: 2227 | version "1.0.11" 2228 | resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" 2229 | integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= 2230 | dependencies: 2231 | tmpl "1.0.x" 2232 | 2233 | map-cache@^0.2.2: 2234 | version "0.2.2" 2235 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" 2236 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= 2237 | 2238 | map-visit@^1.0.0: 2239 | version "1.0.0" 2240 | resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" 2241 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= 2242 | dependencies: 2243 | object-visit "^1.0.0" 2244 | 2245 | marked@^0.7.0: 2246 | version "0.7.0" 2247 | resolved "https://registry.yarnpkg.com/marked/-/marked-0.7.0.tgz#b64201f051d271b1edc10a04d1ae9b74bb8e5c0e" 2248 | integrity sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg== 2249 | 2250 | merge-stream@^2.0.0: 2251 | version "2.0.0" 2252 | resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" 2253 | integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== 2254 | 2255 | micromatch@^3.1.10, micromatch@^3.1.4: 2256 | version "3.1.10" 2257 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" 2258 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== 2259 | dependencies: 2260 | arr-diff "^4.0.0" 2261 | array-unique "^0.3.2" 2262 | braces "^2.3.1" 2263 | define-property "^2.0.2" 2264 | extend-shallow "^3.0.2" 2265 | extglob "^2.0.4" 2266 | fragment-cache "^0.2.1" 2267 | kind-of "^6.0.2" 2268 | nanomatch "^1.2.9" 2269 | object.pick "^1.3.0" 2270 | regex-not "^1.0.0" 2271 | snapdragon "^0.8.1" 2272 | to-regex "^3.0.2" 2273 | 2274 | mime-db@1.40.0: 2275 | version "1.40.0" 2276 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" 2277 | integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== 2278 | 2279 | mime-types@^2.1.12, mime-types@~2.1.19: 2280 | version "2.1.24" 2281 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" 2282 | integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ== 2283 | dependencies: 2284 | mime-db "1.40.0" 2285 | 2286 | minimatch@^3.0.0, minimatch@^3.0.4: 2287 | version "3.0.4" 2288 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 2289 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 2290 | dependencies: 2291 | brace-expansion "^1.1.7" 2292 | 2293 | minimist@0.0.8: 2294 | version "0.0.8" 2295 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 2296 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 2297 | 2298 | minimist@^1.1.1, minimist@^1.2.0: 2299 | version "1.2.0" 2300 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 2301 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 2302 | 2303 | minimist@~0.0.1: 2304 | version "0.0.10" 2305 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" 2306 | integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= 2307 | 2308 | mixin-deep@^1.2.0: 2309 | version "1.3.2" 2310 | resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" 2311 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== 2312 | dependencies: 2313 | for-in "^1.0.2" 2314 | is-extendable "^1.0.1" 2315 | 2316 | mkdirp@0.x, mkdirp@^0.5.1: 2317 | version "0.5.1" 2318 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 2319 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 2320 | dependencies: 2321 | minimist "0.0.8" 2322 | 2323 | ms@2.0.0: 2324 | version "2.0.0" 2325 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 2326 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 2327 | 2328 | ms@^2.1.1: 2329 | version "2.1.2" 2330 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 2331 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 2332 | 2333 | nan@^2.12.1: 2334 | version "2.14.0" 2335 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" 2336 | integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== 2337 | 2338 | nanomatch@^1.2.9: 2339 | version "1.2.13" 2340 | resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" 2341 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== 2342 | dependencies: 2343 | arr-diff "^4.0.0" 2344 | array-unique "^0.3.2" 2345 | define-property "^2.0.2" 2346 | extend-shallow "^3.0.2" 2347 | fragment-cache "^0.2.1" 2348 | is-windows "^1.0.2" 2349 | kind-of "^6.0.2" 2350 | object.pick "^1.3.0" 2351 | regex-not "^1.0.0" 2352 | snapdragon "^0.8.1" 2353 | to-regex "^3.0.1" 2354 | 2355 | natural-compare@^1.4.0: 2356 | version "1.4.0" 2357 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 2358 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 2359 | 2360 | neo-async@^2.6.0: 2361 | version "2.6.1" 2362 | resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" 2363 | integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== 2364 | 2365 | nice-try@^1.0.4: 2366 | version "1.0.5" 2367 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 2368 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 2369 | 2370 | node-int64@^0.4.0: 2371 | version "0.4.0" 2372 | resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" 2373 | integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= 2374 | 2375 | node-modules-regexp@^1.0.0: 2376 | version "1.0.0" 2377 | resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" 2378 | integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= 2379 | 2380 | node-notifier@^5.4.2: 2381 | version "5.4.3" 2382 | resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50" 2383 | integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q== 2384 | dependencies: 2385 | growly "^1.3.0" 2386 | is-wsl "^1.1.0" 2387 | semver "^5.5.0" 2388 | shellwords "^0.1.1" 2389 | which "^1.3.0" 2390 | 2391 | normalize-package-data@^2.3.2: 2392 | version "2.5.0" 2393 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" 2394 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 2395 | dependencies: 2396 | hosted-git-info "^2.1.4" 2397 | resolve "^1.10.0" 2398 | semver "2 || 3 || 4 || 5" 2399 | validate-npm-package-license "^3.0.1" 2400 | 2401 | normalize-path@^2.1.1: 2402 | version "2.1.1" 2403 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" 2404 | integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= 2405 | dependencies: 2406 | remove-trailing-separator "^1.0.1" 2407 | 2408 | npm-run-path@^2.0.0: 2409 | version "2.0.2" 2410 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 2411 | integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= 2412 | dependencies: 2413 | path-key "^2.0.0" 2414 | 2415 | nwsapi@^2.0.7: 2416 | version "2.1.4" 2417 | resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.1.4.tgz#e006a878db23636f8e8a67d33ca0e4edf61a842f" 2418 | integrity sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw== 2419 | 2420 | oauth-sign@~0.9.0: 2421 | version "0.9.0" 2422 | resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" 2423 | integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== 2424 | 2425 | object-copy@^0.1.0: 2426 | version "0.1.0" 2427 | resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" 2428 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= 2429 | dependencies: 2430 | copy-descriptor "^0.1.0" 2431 | define-property "^0.2.5" 2432 | kind-of "^3.0.3" 2433 | 2434 | object-keys@^1.0.12: 2435 | version "1.1.1" 2436 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 2437 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 2438 | 2439 | object-visit@^1.0.0: 2440 | version "1.0.1" 2441 | resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" 2442 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= 2443 | dependencies: 2444 | isobject "^3.0.0" 2445 | 2446 | object.getownpropertydescriptors@^2.0.3: 2447 | version "2.0.3" 2448 | resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" 2449 | integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= 2450 | dependencies: 2451 | define-properties "^1.1.2" 2452 | es-abstract "^1.5.1" 2453 | 2454 | object.pick@^1.3.0: 2455 | version "1.3.0" 2456 | resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" 2457 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= 2458 | dependencies: 2459 | isobject "^3.0.1" 2460 | 2461 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 2462 | version "1.4.0" 2463 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 2464 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 2465 | dependencies: 2466 | wrappy "1" 2467 | 2468 | optimist@^0.6.1: 2469 | version "0.6.1" 2470 | resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" 2471 | integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= 2472 | dependencies: 2473 | minimist "~0.0.1" 2474 | wordwrap "~0.0.2" 2475 | 2476 | optionator@^0.8.1: 2477 | version "0.8.2" 2478 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 2479 | integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= 2480 | dependencies: 2481 | deep-is "~0.1.3" 2482 | fast-levenshtein "~2.0.4" 2483 | levn "~0.3.0" 2484 | prelude-ls "~1.1.2" 2485 | type-check "~0.3.2" 2486 | wordwrap "~1.0.0" 2487 | 2488 | p-each-series@^1.0.0: 2489 | version "1.0.0" 2490 | resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71" 2491 | integrity sha1-kw89Et0fUOdDRFeiLNbwSsatf3E= 2492 | dependencies: 2493 | p-reduce "^1.0.0" 2494 | 2495 | p-finally@^1.0.0: 2496 | version "1.0.0" 2497 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 2498 | integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= 2499 | 2500 | p-limit@^2.0.0: 2501 | version "2.2.1" 2502 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" 2503 | integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== 2504 | dependencies: 2505 | p-try "^2.0.0" 2506 | 2507 | p-locate@^3.0.0: 2508 | version "3.0.0" 2509 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 2510 | integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== 2511 | dependencies: 2512 | p-limit "^2.0.0" 2513 | 2514 | p-reduce@^1.0.0: 2515 | version "1.0.0" 2516 | resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" 2517 | integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= 2518 | 2519 | p-try@^2.0.0: 2520 | version "2.2.0" 2521 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 2522 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 2523 | 2524 | parse-json@^4.0.0: 2525 | version "4.0.0" 2526 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 2527 | integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= 2528 | dependencies: 2529 | error-ex "^1.3.1" 2530 | json-parse-better-errors "^1.0.1" 2531 | 2532 | parse5@4.0.0: 2533 | version "4.0.0" 2534 | resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" 2535 | integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== 2536 | 2537 | pascalcase@^0.1.1: 2538 | version "0.1.1" 2539 | resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" 2540 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= 2541 | 2542 | path-exists@^3.0.0: 2543 | version "3.0.0" 2544 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 2545 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 2546 | 2547 | path-is-absolute@^1.0.0: 2548 | version "1.0.1" 2549 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 2550 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 2551 | 2552 | path-key@^2.0.0, path-key@^2.0.1: 2553 | version "2.0.1" 2554 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 2555 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 2556 | 2557 | path-parse@^1.0.6: 2558 | version "1.0.6" 2559 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 2560 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 2561 | 2562 | path-type@^3.0.0: 2563 | version "3.0.0" 2564 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" 2565 | integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== 2566 | dependencies: 2567 | pify "^3.0.0" 2568 | 2569 | performance-now@^2.1.0: 2570 | version "2.1.0" 2571 | resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" 2572 | integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= 2573 | 2574 | pify@^3.0.0: 2575 | version "3.0.0" 2576 | resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" 2577 | integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= 2578 | 2579 | pify@^4.0.1: 2580 | version "4.0.1" 2581 | resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" 2582 | integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== 2583 | 2584 | pirates@^4.0.1: 2585 | version "4.0.1" 2586 | resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" 2587 | integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== 2588 | dependencies: 2589 | node-modules-regexp "^1.0.0" 2590 | 2591 | pkg-dir@^3.0.0: 2592 | version "3.0.0" 2593 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" 2594 | integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== 2595 | dependencies: 2596 | find-up "^3.0.0" 2597 | 2598 | pn@^1.1.0: 2599 | version "1.1.0" 2600 | resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" 2601 | integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== 2602 | 2603 | posix-character-classes@^0.1.0: 2604 | version "0.1.1" 2605 | resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" 2606 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= 2607 | 2608 | prelude-ls@~1.1.2: 2609 | version "1.1.2" 2610 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 2611 | integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= 2612 | 2613 | prettier@^1.19.1: 2614 | version "1.19.1" 2615 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" 2616 | integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== 2617 | 2618 | pretty-format@^24.9.0: 2619 | version "24.9.0" 2620 | resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" 2621 | integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== 2622 | dependencies: 2623 | "@jest/types" "^24.9.0" 2624 | ansi-regex "^4.0.0" 2625 | ansi-styles "^3.2.0" 2626 | react-is "^16.8.4" 2627 | 2628 | progress@^2.0.3: 2629 | version "2.0.3" 2630 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" 2631 | integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== 2632 | 2633 | prompts@^2.0.1: 2634 | version "2.3.0" 2635 | resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.0.tgz#a444e968fa4cc7e86689a74050685ac8006c4cc4" 2636 | integrity sha512-NfbbPPg/74fT7wk2XYQ7hAIp9zJyZp5Fu19iRbORqqy1BhtrkZ0fPafBU+7bmn8ie69DpT0R6QpJIN2oisYjJg== 2637 | dependencies: 2638 | kleur "^3.0.3" 2639 | sisteransi "^1.0.3" 2640 | 2641 | psl@^1.1.24, psl@^1.1.28: 2642 | version "1.1.32" 2643 | resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.32.tgz#3f132717cf2f9c169724b2b6caf373cf694198db" 2644 | integrity sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g== 2645 | 2646 | pump@^3.0.0: 2647 | version "3.0.0" 2648 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 2649 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 2650 | dependencies: 2651 | end-of-stream "^1.1.0" 2652 | once "^1.3.1" 2653 | 2654 | punycode@^1.4.1: 2655 | version "1.4.1" 2656 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" 2657 | integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= 2658 | 2659 | punycode@^2.1.0, punycode@^2.1.1: 2660 | version "2.1.1" 2661 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 2662 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 2663 | 2664 | qs@~6.5.2: 2665 | version "6.5.2" 2666 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" 2667 | integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== 2668 | 2669 | react-is@^16.8.4: 2670 | version "16.12.0" 2671 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" 2672 | integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q== 2673 | 2674 | read-pkg-up@^4.0.0: 2675 | version "4.0.0" 2676 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" 2677 | integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== 2678 | dependencies: 2679 | find-up "^3.0.0" 2680 | read-pkg "^3.0.0" 2681 | 2682 | read-pkg@^3.0.0: 2683 | version "3.0.0" 2684 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" 2685 | integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= 2686 | dependencies: 2687 | load-json-file "^4.0.0" 2688 | normalize-package-data "^2.3.2" 2689 | path-type "^3.0.0" 2690 | 2691 | realpath-native@^1.1.0: 2692 | version "1.1.0" 2693 | resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.1.0.tgz#2003294fea23fb0672f2476ebe22fcf498a2d65c" 2694 | integrity sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA== 2695 | dependencies: 2696 | util.promisify "^1.0.0" 2697 | 2698 | rechoir@^0.6.2: 2699 | version "0.6.2" 2700 | resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" 2701 | integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= 2702 | dependencies: 2703 | resolve "^1.1.6" 2704 | 2705 | regex-not@^1.0.0, regex-not@^1.0.2: 2706 | version "1.0.2" 2707 | resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" 2708 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== 2709 | dependencies: 2710 | extend-shallow "^3.0.2" 2711 | safe-regex "^1.1.0" 2712 | 2713 | remove-trailing-separator@^1.0.1: 2714 | version "1.1.0" 2715 | resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" 2716 | integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= 2717 | 2718 | repeat-element@^1.1.2: 2719 | version "1.1.3" 2720 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" 2721 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== 2722 | 2723 | repeat-string@^1.6.1: 2724 | version "1.6.1" 2725 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" 2726 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= 2727 | 2728 | request-promise-core@1.1.2: 2729 | version "1.1.2" 2730 | resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.2.tgz#339f6aababcafdb31c799ff158700336301d3346" 2731 | integrity sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag== 2732 | dependencies: 2733 | lodash "^4.17.11" 2734 | 2735 | request-promise-native@^1.0.5: 2736 | version "1.0.7" 2737 | resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.7.tgz#a49868a624bdea5069f1251d0a836e0d89aa2c59" 2738 | integrity sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w== 2739 | dependencies: 2740 | request-promise-core "1.1.2" 2741 | stealthy-require "^1.1.1" 2742 | tough-cookie "^2.3.3" 2743 | 2744 | request@^2.87.0, request@^2.88.0: 2745 | version "2.88.0" 2746 | resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" 2747 | integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== 2748 | dependencies: 2749 | aws-sign2 "~0.7.0" 2750 | aws4 "^1.8.0" 2751 | caseless "~0.12.0" 2752 | combined-stream "~1.0.6" 2753 | extend "~3.0.2" 2754 | forever-agent "~0.6.1" 2755 | form-data "~2.3.2" 2756 | har-validator "~5.1.0" 2757 | http-signature "~1.2.0" 2758 | is-typedarray "~1.0.0" 2759 | isstream "~0.1.2" 2760 | json-stringify-safe "~5.0.1" 2761 | mime-types "~2.1.19" 2762 | oauth-sign "~0.9.0" 2763 | performance-now "^2.1.0" 2764 | qs "~6.5.2" 2765 | safe-buffer "^5.1.2" 2766 | tough-cookie "~2.4.3" 2767 | tunnel-agent "^0.6.0" 2768 | uuid "^3.3.2" 2769 | 2770 | require-directory@^2.1.1: 2771 | version "2.1.1" 2772 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 2773 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 2774 | 2775 | require-main-filename@^2.0.0: 2776 | version "2.0.0" 2777 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" 2778 | integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== 2779 | 2780 | resolve-cwd@^2.0.0: 2781 | version "2.0.0" 2782 | resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" 2783 | integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= 2784 | dependencies: 2785 | resolve-from "^3.0.0" 2786 | 2787 | resolve-from@^3.0.0: 2788 | version "3.0.0" 2789 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" 2790 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 2791 | 2792 | resolve-url@^0.2.1: 2793 | version "0.2.1" 2794 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" 2795 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= 2796 | 2797 | resolve@1.1.7: 2798 | version "1.1.7" 2799 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" 2800 | integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= 2801 | 2802 | resolve@1.x, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.3.2: 2803 | version "1.11.0" 2804 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.0.tgz#4014870ba296176b86343d50b60f3b50609ce232" 2805 | integrity sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw== 2806 | dependencies: 2807 | path-parse "^1.0.6" 2808 | 2809 | ret@~0.1.10: 2810 | version "0.1.15" 2811 | resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" 2812 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== 2813 | 2814 | rimraf@^2.5.4: 2815 | version "2.6.3" 2816 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" 2817 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== 2818 | dependencies: 2819 | glob "^7.1.3" 2820 | 2821 | rimraf@^2.6.3: 2822 | version "2.7.1" 2823 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" 2824 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== 2825 | dependencies: 2826 | glob "^7.1.3" 2827 | 2828 | rsvp@^4.8.4: 2829 | version "4.8.5" 2830 | resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" 2831 | integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== 2832 | 2833 | safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.1: 2834 | version "5.1.2" 2835 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 2836 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 2837 | 2838 | safe-regex@^1.1.0: 2839 | version "1.1.0" 2840 | resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" 2841 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= 2842 | dependencies: 2843 | ret "~0.1.10" 2844 | 2845 | "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: 2846 | version "2.1.2" 2847 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 2848 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 2849 | 2850 | sane@^4.0.3: 2851 | version "4.1.0" 2852 | resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" 2853 | integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== 2854 | dependencies: 2855 | "@cnakazawa/watch" "^1.0.3" 2856 | anymatch "^2.0.0" 2857 | capture-exit "^2.0.0" 2858 | exec-sh "^0.3.2" 2859 | execa "^1.0.0" 2860 | fb-watchman "^2.0.0" 2861 | micromatch "^3.1.4" 2862 | minimist "^1.1.1" 2863 | walker "~1.0.5" 2864 | 2865 | sax@^1.2.4: 2866 | version "1.2.4" 2867 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" 2868 | integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== 2869 | 2870 | "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5, semver@^5.5.0: 2871 | version "5.7.0" 2872 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" 2873 | integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== 2874 | 2875 | semver@^5.4.1, semver@^5.6.0: 2876 | version "5.7.1" 2877 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 2878 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 2879 | 2880 | semver@^6.0.0, semver@^6.2.0: 2881 | version "6.3.0" 2882 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 2883 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 2884 | 2885 | set-blocking@^2.0.0: 2886 | version "2.0.0" 2887 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 2888 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 2889 | 2890 | set-value@^0.4.3: 2891 | version "0.4.3" 2892 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" 2893 | integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= 2894 | dependencies: 2895 | extend-shallow "^2.0.1" 2896 | is-extendable "^0.1.1" 2897 | is-plain-object "^2.0.1" 2898 | to-object-path "^0.3.0" 2899 | 2900 | set-value@^2.0.0: 2901 | version "2.0.0" 2902 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" 2903 | integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== 2904 | dependencies: 2905 | extend-shallow "^2.0.1" 2906 | is-extendable "^0.1.1" 2907 | is-plain-object "^2.0.3" 2908 | split-string "^3.0.1" 2909 | 2910 | shebang-command@^1.2.0: 2911 | version "1.2.0" 2912 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 2913 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 2914 | dependencies: 2915 | shebang-regex "^1.0.0" 2916 | 2917 | shebang-regex@^1.0.0: 2918 | version "1.0.0" 2919 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 2920 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 2921 | 2922 | shelljs@^0.8.3: 2923 | version "0.8.3" 2924 | resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.3.tgz#a7f3319520ebf09ee81275b2368adb286659b097" 2925 | integrity sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A== 2926 | dependencies: 2927 | glob "^7.0.0" 2928 | interpret "^1.0.0" 2929 | rechoir "^0.6.2" 2930 | 2931 | shellwords@^0.1.1: 2932 | version "0.1.1" 2933 | resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" 2934 | integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== 2935 | 2936 | signal-exit@^3.0.0, signal-exit@^3.0.2: 2937 | version "3.0.2" 2938 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 2939 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 2940 | 2941 | sisteransi@^1.0.3: 2942 | version "1.0.4" 2943 | resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.4.tgz#386713f1ef688c7c0304dc4c0632898941cad2e3" 2944 | integrity sha512-/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig== 2945 | 2946 | slash@^2.0.0: 2947 | version "2.0.0" 2948 | resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" 2949 | integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== 2950 | 2951 | snapdragon-node@^2.0.1: 2952 | version "2.1.1" 2953 | resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" 2954 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== 2955 | dependencies: 2956 | define-property "^1.0.0" 2957 | isobject "^3.0.0" 2958 | snapdragon-util "^3.0.1" 2959 | 2960 | snapdragon-util@^3.0.1: 2961 | version "3.0.1" 2962 | resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" 2963 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== 2964 | dependencies: 2965 | kind-of "^3.2.0" 2966 | 2967 | snapdragon@^0.8.1: 2968 | version "0.8.2" 2969 | resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" 2970 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== 2971 | dependencies: 2972 | base "^0.11.1" 2973 | debug "^2.2.0" 2974 | define-property "^0.2.5" 2975 | extend-shallow "^2.0.1" 2976 | map-cache "^0.2.2" 2977 | source-map "^0.5.6" 2978 | source-map-resolve "^0.5.0" 2979 | use "^3.1.0" 2980 | 2981 | source-map-resolve@^0.5.0: 2982 | version "0.5.2" 2983 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" 2984 | integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== 2985 | dependencies: 2986 | atob "^2.1.1" 2987 | decode-uri-component "^0.2.0" 2988 | resolve-url "^0.2.1" 2989 | source-map-url "^0.4.0" 2990 | urix "^0.1.0" 2991 | 2992 | source-map-support@^0.5.6: 2993 | version "0.5.12" 2994 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" 2995 | integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== 2996 | dependencies: 2997 | buffer-from "^1.0.0" 2998 | source-map "^0.6.0" 2999 | 3000 | source-map-url@^0.4.0: 3001 | version "0.4.0" 3002 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" 3003 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= 3004 | 3005 | source-map@^0.5.0, source-map@^0.5.6: 3006 | version "0.5.7" 3007 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 3008 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 3009 | 3010 | source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: 3011 | version "0.6.1" 3012 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 3013 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 3014 | 3015 | spdx-correct@^3.0.0: 3016 | version "3.1.0" 3017 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" 3018 | integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== 3019 | dependencies: 3020 | spdx-expression-parse "^3.0.0" 3021 | spdx-license-ids "^3.0.0" 3022 | 3023 | spdx-exceptions@^2.1.0: 3024 | version "2.2.0" 3025 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" 3026 | integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== 3027 | 3028 | spdx-expression-parse@^3.0.0: 3029 | version "3.0.0" 3030 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" 3031 | integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== 3032 | dependencies: 3033 | spdx-exceptions "^2.1.0" 3034 | spdx-license-ids "^3.0.0" 3035 | 3036 | spdx-license-ids@^3.0.0: 3037 | version "3.0.4" 3038 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1" 3039 | integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA== 3040 | 3041 | split-string@^3.0.1, split-string@^3.0.2: 3042 | version "3.1.0" 3043 | resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" 3044 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== 3045 | dependencies: 3046 | extend-shallow "^3.0.0" 3047 | 3048 | sprintf-js@~1.0.2: 3049 | version "1.0.3" 3050 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 3051 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 3052 | 3053 | sshpk@^1.7.0: 3054 | version "1.16.1" 3055 | resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" 3056 | integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== 3057 | dependencies: 3058 | asn1 "~0.2.3" 3059 | assert-plus "^1.0.0" 3060 | bcrypt-pbkdf "^1.0.0" 3061 | dashdash "^1.12.0" 3062 | ecc-jsbn "~0.1.1" 3063 | getpass "^0.1.1" 3064 | jsbn "~0.1.0" 3065 | safer-buffer "^2.0.2" 3066 | tweetnacl "~0.14.0" 3067 | 3068 | stack-utils@^1.0.1: 3069 | version "1.0.2" 3070 | resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" 3071 | integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== 3072 | 3073 | static-extend@^0.1.1: 3074 | version "0.1.2" 3075 | resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" 3076 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= 3077 | dependencies: 3078 | define-property "^0.2.5" 3079 | object-copy "^0.1.0" 3080 | 3081 | stealthy-require@^1.1.1: 3082 | version "1.1.1" 3083 | resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" 3084 | integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= 3085 | 3086 | string-length@^2.0.0: 3087 | version "2.0.0" 3088 | resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" 3089 | integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= 3090 | dependencies: 3091 | astral-regex "^1.0.0" 3092 | strip-ansi "^4.0.0" 3093 | 3094 | string-width@^3.0.0, string-width@^3.1.0: 3095 | version "3.1.0" 3096 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 3097 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 3098 | dependencies: 3099 | emoji-regex "^7.0.1" 3100 | is-fullwidth-code-point "^2.0.0" 3101 | strip-ansi "^5.1.0" 3102 | 3103 | strip-ansi@^4.0.0: 3104 | version "4.0.0" 3105 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 3106 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 3107 | dependencies: 3108 | ansi-regex "^3.0.0" 3109 | 3110 | strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: 3111 | version "5.2.0" 3112 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 3113 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 3114 | dependencies: 3115 | ansi-regex "^4.1.0" 3116 | 3117 | strip-bom@^3.0.0: 3118 | version "3.0.0" 3119 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 3120 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 3121 | 3122 | strip-eof@^1.0.0: 3123 | version "1.0.0" 3124 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 3125 | integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= 3126 | 3127 | supports-color@^5.3.0: 3128 | version "5.5.0" 3129 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 3130 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 3131 | dependencies: 3132 | has-flag "^3.0.0" 3133 | 3134 | supports-color@^6.1.0: 3135 | version "6.1.0" 3136 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" 3137 | integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== 3138 | dependencies: 3139 | has-flag "^3.0.0" 3140 | 3141 | symbol-tree@^3.2.2: 3142 | version "3.2.4" 3143 | resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" 3144 | integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== 3145 | 3146 | test-exclude@^5.2.3: 3147 | version "5.2.3" 3148 | resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" 3149 | integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== 3150 | dependencies: 3151 | glob "^7.1.3" 3152 | minimatch "^3.0.4" 3153 | read-pkg-up "^4.0.0" 3154 | require-main-filename "^2.0.0" 3155 | 3156 | throat@^4.0.0: 3157 | version "4.1.0" 3158 | resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" 3159 | integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= 3160 | 3161 | tmpl@1.0.x: 3162 | version "1.0.4" 3163 | resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" 3164 | integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= 3165 | 3166 | to-fast-properties@^2.0.0: 3167 | version "2.0.0" 3168 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 3169 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 3170 | 3171 | to-object-path@^0.3.0: 3172 | version "0.3.0" 3173 | resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" 3174 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= 3175 | dependencies: 3176 | kind-of "^3.0.2" 3177 | 3178 | to-regex-range@^2.1.0: 3179 | version "2.1.1" 3180 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" 3181 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= 3182 | dependencies: 3183 | is-number "^3.0.0" 3184 | repeat-string "^1.6.1" 3185 | 3186 | to-regex@^3.0.1, to-regex@^3.0.2: 3187 | version "3.0.2" 3188 | resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" 3189 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== 3190 | dependencies: 3191 | define-property "^2.0.2" 3192 | extend-shallow "^3.0.2" 3193 | regex-not "^1.0.2" 3194 | safe-regex "^1.1.0" 3195 | 3196 | tough-cookie@^2.3.3, tough-cookie@^2.3.4: 3197 | version "2.5.0" 3198 | resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" 3199 | integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== 3200 | dependencies: 3201 | psl "^1.1.28" 3202 | punycode "^2.1.1" 3203 | 3204 | tough-cookie@~2.4.3: 3205 | version "2.4.3" 3206 | resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" 3207 | integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== 3208 | dependencies: 3209 | psl "^1.1.24" 3210 | punycode "^1.4.1" 3211 | 3212 | tr46@^1.0.1: 3213 | version "1.0.1" 3214 | resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" 3215 | integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= 3216 | dependencies: 3217 | punycode "^2.1.0" 3218 | 3219 | ts-jest@^24.2.0: 3220 | version "24.2.0" 3221 | resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-24.2.0.tgz#7abca28c2b4b0a1fdd715cd667d65d047ea4e768" 3222 | integrity sha512-Yc+HLyldlIC9iIK8xEN7tV960Or56N49MDP7hubCZUeI7EbIOTsas6rXCMB4kQjLACJ7eDOF4xWEO5qumpKsag== 3223 | dependencies: 3224 | bs-logger "0.x" 3225 | buffer-from "1.x" 3226 | fast-json-stable-stringify "2.x" 3227 | json5 "2.x" 3228 | lodash.memoize "4.x" 3229 | make-error "1.x" 3230 | mkdirp "0.x" 3231 | resolve "1.x" 3232 | semver "^5.5" 3233 | yargs-parser "10.x" 3234 | 3235 | ts-node@^8.5.4: 3236 | version "8.5.4" 3237 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.4.tgz#a152add11fa19c221d0b48962c210cf467262ab2" 3238 | integrity sha512-izbVCRV68EasEPQ8MSIGBNK9dc/4sYJJKYA+IarMQct1RtEot6Xp0bXuClsbUSnKpg50ho+aOAx8en5c+y4OFw== 3239 | dependencies: 3240 | arg "^4.1.0" 3241 | diff "^4.0.1" 3242 | make-error "^1.1.1" 3243 | source-map-support "^0.5.6" 3244 | yn "^3.0.0" 3245 | 3246 | tslib@^1.8.0, tslib@^1.8.1: 3247 | version "1.10.0" 3248 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" 3249 | integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== 3250 | 3251 | tslint-config-prettier@^1.18.0: 3252 | version "1.18.0" 3253 | resolved "https://registry.yarnpkg.com/tslint-config-prettier/-/tslint-config-prettier-1.18.0.tgz#75f140bde947d35d8f0d238e0ebf809d64592c37" 3254 | integrity sha512-xPw9PgNPLG3iKRxmK7DWr+Ea/SzrvfHtjFt5LBl61gk2UBG/DB9kCXRjv+xyIU1rUtnayLeMUVJBcMX8Z17nDg== 3255 | 3256 | tslint@^5.20.1: 3257 | version "5.20.1" 3258 | resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.20.1.tgz#e401e8aeda0152bc44dd07e614034f3f80c67b7d" 3259 | integrity sha512-EcMxhzCFt8k+/UP5r8waCf/lzmeSyVlqxqMEDQE7rWYiQky8KpIBz1JAoYXfROHrPZ1XXd43q8yQnULOLiBRQg== 3260 | dependencies: 3261 | "@babel/code-frame" "^7.0.0" 3262 | builtin-modules "^1.1.1" 3263 | chalk "^2.3.0" 3264 | commander "^2.12.1" 3265 | diff "^4.0.1" 3266 | glob "^7.1.1" 3267 | js-yaml "^3.13.1" 3268 | minimatch "^3.0.4" 3269 | mkdirp "^0.5.1" 3270 | resolve "^1.3.2" 3271 | semver "^5.3.0" 3272 | tslib "^1.8.0" 3273 | tsutils "^2.29.0" 3274 | 3275 | tsutils@^2.29.0: 3276 | version "2.29.0" 3277 | resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99" 3278 | integrity sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA== 3279 | dependencies: 3280 | tslib "^1.8.1" 3281 | 3282 | tunnel-agent@^0.6.0: 3283 | version "0.6.0" 3284 | resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" 3285 | integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= 3286 | dependencies: 3287 | safe-buffer "^5.0.1" 3288 | 3289 | tweetnacl@^0.14.3, tweetnacl@~0.14.0: 3290 | version "0.14.5" 3291 | resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" 3292 | integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= 3293 | 3294 | type-check@~0.3.2: 3295 | version "0.3.2" 3296 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 3297 | integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= 3298 | dependencies: 3299 | prelude-ls "~1.1.2" 3300 | 3301 | typedoc-default-themes@^0.6.1: 3302 | version "0.6.1" 3303 | resolved "https://registry.yarnpkg.com/typedoc-default-themes/-/typedoc-default-themes-0.6.1.tgz#e2e471188983df995f4f9df49f713044fced6802" 3304 | integrity sha512-z5AWKqQDz7igl9WkUuafx8cEm4MPVQGMpbWE+3lwVOaq+U4UoLKBMnpFQWh/4fqQ3bGysXpOstMxy2OOzHezyw== 3305 | dependencies: 3306 | backbone "^1.4.0" 3307 | jquery "^3.4.1" 3308 | lunr "^2.3.8" 3309 | underscore "^1.9.1" 3310 | 3311 | typedoc@^0.15.4: 3312 | version "0.15.4" 3313 | resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.15.4.tgz#23f2c1e2be41af879c0f1358aeb76cd4d39d9aeb" 3314 | integrity sha512-XzrV8sM44j4nXGSKt99VOkFCPGLUH9DHGGvcgZJbvqdSG7/iR3HztNjpsLyTu1nybZLLjcClLRuWJDO3icXzYA== 3315 | dependencies: 3316 | "@types/minimatch" "3.0.3" 3317 | fs-extra "^8.1.0" 3318 | handlebars "^4.5.3" 3319 | highlight.js "^9.16.2" 3320 | lodash "^4.17.15" 3321 | marked "^0.7.0" 3322 | minimatch "^3.0.0" 3323 | progress "^2.0.3" 3324 | shelljs "^0.8.3" 3325 | typedoc-default-themes "^0.6.1" 3326 | typescript "3.7.x" 3327 | 3328 | typescript@3.7.x, typescript@^3.7.3: 3329 | version "3.7.3" 3330 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.3.tgz#b36840668a16458a7025b9eabfad11b66ab85c69" 3331 | integrity sha512-Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw== 3332 | 3333 | uglify-js@^3.1.4: 3334 | version "3.6.0" 3335 | resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.0.tgz#704681345c53a8b2079fb6cec294b05ead242ff5" 3336 | integrity sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg== 3337 | dependencies: 3338 | commander "~2.20.0" 3339 | source-map "~0.6.1" 3340 | 3341 | underscore@>=1.8.3, underscore@^1.9.1: 3342 | version "1.9.1" 3343 | resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961" 3344 | integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg== 3345 | 3346 | union-value@^1.0.0: 3347 | version "1.0.0" 3348 | resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" 3349 | integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= 3350 | dependencies: 3351 | arr-union "^3.1.0" 3352 | get-value "^2.0.6" 3353 | is-extendable "^0.1.1" 3354 | set-value "^0.4.3" 3355 | 3356 | universalify@^0.1.0: 3357 | version "0.1.2" 3358 | resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" 3359 | integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== 3360 | 3361 | unset-value@^1.0.0: 3362 | version "1.0.0" 3363 | resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" 3364 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= 3365 | dependencies: 3366 | has-value "^0.3.1" 3367 | isobject "^3.0.0" 3368 | 3369 | uri-js@^4.2.2: 3370 | version "4.2.2" 3371 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 3372 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== 3373 | dependencies: 3374 | punycode "^2.1.0" 3375 | 3376 | urix@^0.1.0: 3377 | version "0.1.0" 3378 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" 3379 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= 3380 | 3381 | use@^3.1.0: 3382 | version "3.1.1" 3383 | resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" 3384 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== 3385 | 3386 | util.promisify@^1.0.0: 3387 | version "1.0.0" 3388 | resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" 3389 | integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== 3390 | dependencies: 3391 | define-properties "^1.1.2" 3392 | object.getownpropertydescriptors "^2.0.3" 3393 | 3394 | uuid@^3.3.2: 3395 | version "3.3.2" 3396 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" 3397 | integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== 3398 | 3399 | validate-npm-package-license@^3.0.1: 3400 | version "3.0.4" 3401 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" 3402 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 3403 | dependencies: 3404 | spdx-correct "^3.0.0" 3405 | spdx-expression-parse "^3.0.0" 3406 | 3407 | verror@1.10.0: 3408 | version "1.10.0" 3409 | resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" 3410 | integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= 3411 | dependencies: 3412 | assert-plus "^1.0.0" 3413 | core-util-is "1.0.2" 3414 | extsprintf "^1.2.0" 3415 | 3416 | w3c-hr-time@^1.0.1: 3417 | version "1.0.1" 3418 | resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" 3419 | integrity sha1-gqwr/2PZUOqeMYmlimViX+3xkEU= 3420 | dependencies: 3421 | browser-process-hrtime "^0.1.2" 3422 | 3423 | walker@^1.0.7, walker@~1.0.5: 3424 | version "1.0.7" 3425 | resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" 3426 | integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= 3427 | dependencies: 3428 | makeerror "1.0.x" 3429 | 3430 | webidl-conversions@^4.0.2: 3431 | version "4.0.2" 3432 | resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" 3433 | integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== 3434 | 3435 | whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: 3436 | version "1.0.5" 3437 | resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" 3438 | integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== 3439 | dependencies: 3440 | iconv-lite "0.4.24" 3441 | 3442 | whatwg-fetch@^3.0.0: 3443 | version "3.0.0" 3444 | resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" 3445 | integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== 3446 | 3447 | whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0: 3448 | version "2.3.0" 3449 | resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" 3450 | integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== 3451 | 3452 | whatwg-url@^6.4.1: 3453 | version "6.5.0" 3454 | resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" 3455 | integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== 3456 | dependencies: 3457 | lodash.sortby "^4.7.0" 3458 | tr46 "^1.0.1" 3459 | webidl-conversions "^4.0.2" 3460 | 3461 | whatwg-url@^7.0.0: 3462 | version "7.0.0" 3463 | resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" 3464 | integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== 3465 | dependencies: 3466 | lodash.sortby "^4.7.0" 3467 | tr46 "^1.0.1" 3468 | webidl-conversions "^4.0.2" 3469 | 3470 | which-module@^2.0.0: 3471 | version "2.0.0" 3472 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 3473 | integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 3474 | 3475 | which@^1.2.9, which@^1.3.0: 3476 | version "1.3.1" 3477 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 3478 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 3479 | dependencies: 3480 | isexe "^2.0.0" 3481 | 3482 | wordwrap@~0.0.2: 3483 | version "0.0.3" 3484 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" 3485 | integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= 3486 | 3487 | wordwrap@~1.0.0: 3488 | version "1.0.0" 3489 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 3490 | integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= 3491 | 3492 | wrap-ansi@^5.1.0: 3493 | version "5.1.0" 3494 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" 3495 | integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== 3496 | dependencies: 3497 | ansi-styles "^3.2.0" 3498 | string-width "^3.0.0" 3499 | strip-ansi "^5.0.0" 3500 | 3501 | wrappy@1: 3502 | version "1.0.2" 3503 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 3504 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 3505 | 3506 | write-file-atomic@2.4.1: 3507 | version "2.4.1" 3508 | resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.1.tgz#d0b05463c188ae804396fd5ab2a370062af87529" 3509 | integrity sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg== 3510 | dependencies: 3511 | graceful-fs "^4.1.11" 3512 | imurmurhash "^0.1.4" 3513 | signal-exit "^3.0.2" 3514 | 3515 | ws@^5.2.0: 3516 | version "5.2.2" 3517 | resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" 3518 | integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== 3519 | dependencies: 3520 | async-limiter "~1.0.0" 3521 | 3522 | xml-name-validator@^3.0.0: 3523 | version "3.0.0" 3524 | resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" 3525 | integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== 3526 | 3527 | y18n@^4.0.0: 3528 | version "4.0.0" 3529 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" 3530 | integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== 3531 | 3532 | yargs-parser@10.x: 3533 | version "10.1.0" 3534 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" 3535 | integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== 3536 | dependencies: 3537 | camelcase "^4.1.0" 3538 | 3539 | yargs-parser@^13.1.1: 3540 | version "13.1.1" 3541 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" 3542 | integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== 3543 | dependencies: 3544 | camelcase "^5.0.0" 3545 | decamelize "^1.2.0" 3546 | 3547 | yargs@^13.3.0: 3548 | version "13.3.0" 3549 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" 3550 | integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== 3551 | dependencies: 3552 | cliui "^5.0.0" 3553 | find-up "^3.0.0" 3554 | get-caller-file "^2.0.1" 3555 | require-directory "^2.1.1" 3556 | require-main-filename "^2.0.0" 3557 | set-blocking "^2.0.0" 3558 | string-width "^3.0.0" 3559 | which-module "^2.0.0" 3560 | y18n "^4.0.0" 3561 | yargs-parser "^13.1.1" 3562 | 3563 | yn@^3.0.0: 3564 | version "3.1.1" 3565 | resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" 3566 | integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== 3567 | --------------------------------------------------------------------------------