├── .gitignore ├── LICENSE ├── README.md ├── __tests__ ├── __snapshots__ │ ├── otherTest.ts.snap │ └── testMatrix.ts.snap ├── otherTest.ts └── testMatrix.ts ├── ideas.md ├── jest.config.js ├── package-lock.json ├── package.json ├── src ├── index.ts ├── pretty-table.ts ├── symbol.ts └── typings │ └── ascii-table │ └── index.d.ts └── tsconfig.json /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 WaldoJeffers 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 | # jest-test-matrix 2 | A plugin for Jest which helps you test functions accepting different combinations of inputs. Instead of manually writing a test for each possible combination, you will only need to write one. 3 | 4 | A quick example: 5 | ```ts 6 | // file.test.js 7 | import testMatrix from 'jest-test-matrix'; 8 | 9 | interface CanPayOpts { 10 | amount: number; 11 | balance: number; 12 | status: 'active' | 'locked' | 'expired'; 13 | } 14 | 15 | function canPay({amount, balance, status}: CanPayOpts){ 16 | if (status === 'locked' || status == 'expired'){ 17 | return false; 18 | } 19 | return balance > amount; 20 | } 21 | 22 | it('should only allow valid payments', () => { 23 | expect( 24 | testMatrix(canPay, { 25 | amount: [20, 100], 26 | balance : [50], 27 | status: ['active', 'locked', 'expired'] 28 | }) 29 | ).toMatchSnapshot(); 30 | }) 31 | ``` 32 | 33 | will result in the following snapshot: 34 | 35 | ``` 36 | // file.test.snap 37 | exports[`should only allow valid payments 1`] = ` 38 | .-------------------------------------. 39 | | canPay | 40 | |-------------------------------------| 41 | | balance | amount | status | result | 42 | |---------|--------|---------|--------| 43 | | 50 | 20 | active | true | 44 | | | | locked | false | 45 | | | | expired | false | 46 | | | 100 | active | false | 47 | | | | locked | false | 48 | | | | expired | false | 49 | '-------------------------------------' 50 | `; 51 | ``` 52 | 53 | ## Installation 54 | With npm 55 | ```bash 56 | npm install -D jest-test-matrix 57 | ``` 58 | 59 | With yarn 60 | ```bash 61 | yarn add -D jest-test-matrix 62 | ``` 63 | 64 | ## Usage 65 | **`testMatrix(fn, input)`** where 66 | - **`fn: (params: Record<'string', any>) => any`**: The function you want to test. By default, all the parameters in `input` are passed as an object. If your function has a different arity, you can always pass an anonymous function wrapping your own function, like so `testMatrix({a, b} => fn(a, b), {a: [...], b: [...]})`. If your function has a name, it will be used as a title in the matrix snapshot. 67 | - **`input: Record<'string', any[]>`**: An object where keys are the names of the parameters you want to test (they will be used as column headers in the snapshot), and values are an array of different possible values for each parameter. 68 | 69 | 70 | The call to `testMatrix` should we wrapped in a `jest.expect` call to generate a snapshot: 71 | ```ts 72 | expect( 73 | testMatrix(canPay, { 74 | amount: [20, 100], 75 | balance : [50], 76 | status: ['active', 'locked', 'expired'] 77 | }) 78 | ).toMatchSnapshot(); 79 | ``` -------------------------------------------------------------------------------- /__tests__/__snapshots__/otherTest.ts.snap: -------------------------------------------------------------------------------- 1 | // Jest Snapshot v1, https://goo.gl/fbAQLP 2 | 3 | exports[`should only allow valid payments 1`] = ` 4 | .-----------------------------------. 5 | | canPay | 6 | |-----------------------------------| 7 | | balance | amount | status | | 8 | |---------|--------|---------|------| 9 | | 50 | 20 | active | true | 10 | | | | locked | false | 11 | | | | expired | false | 12 | | | 100 | active | false | 13 | | | | locked | false | 14 | | | | expired | false | 15 | '-----------------------------------' 16 | `; 17 | -------------------------------------------------------------------------------- /__tests__/__snapshots__/testMatrix.ts.snap: -------------------------------------------------------------------------------- 1 | // Jest Snapshot v1, https://goo.gl/fbAQLP 2 | 3 | exports[`testMatrix should accept different styling options 1`] = ` 4 | .-----------. 5 | | a | b | | 6 | |---|---|---| 7 | | 0 | 0 | 0 | 8 | | 0 | 1 | 0 | 9 | | 1 | 0 | 0 | 10 | | 1 | 1 | 1 | 11 | '-----------' 12 | `; 13 | 14 | exports[`testMatrix should generate a pretty ASCII-table snapshot when toMatchSnapshot is called 1`] = ` 15 | .---------------------------. 16 | | fn1 | 17 | |---------------------------| 18 | | col3 | col2 | col1 | | 19 | |------|------|------|------| 20 | | Δ | 26 | a | 1063 | 21 | | | | b | 1064 | 22 | | | | c | 1065 | 23 | | | | d | 1066 | 24 | | | 8 | a | 1069 | 25 | | | | b | 1070 | 26 | | | | c | 1071 | 27 | | | | d | 1072 | 28 | | | 3 | a | 1064 | 29 | | | | b | 1065 | 30 | | | | c | 1066 | 31 | | | | d | 1067 | 32 | | ƒ | 26 | a | 549 | 33 | | | | b | 550 | 34 | | | | c | 551 | 35 | | | | d | 552 | 36 | | | 8 | a | 555 | 37 | | | | b | 556 | 38 | | | | c | 557 | 39 | | | | d | 558 | 40 | | | 3 | a | 550 | 41 | | | | b | 551 | 42 | | | | c | 552 | 43 | | | | d | 553 | 44 | '---------------------------' 45 | `; 46 | 47 | exports[`testMatrix should handle object structures 1`] = ` 48 | .-----------------------------------------------------------. 49 | | fn | data | | 50 | |------------------------------------|------------------|---| 51 | | (data) => Object.keys(data).length | [] | 0 | 52 | | | [0] | 1 | 53 | | | {} | 0 | 54 | | | {hello: 'world'} | 1 | 55 | '-----------------------------------------------------------' 56 | `; 57 | 58 | exports[`testMatrix should properly serialize special values 1`] = ` 59 | .-------------------------. 60 | | a | b | c | | 61 | |----|---|-----------|----| 62 | | '' | 0 | null | '' | 63 | | | | undefined | '' | 64 | '-------------------------' 65 | `; 66 | 67 | exports[`testMatrix should skip combinations identifed by the skip option 1`] = ` 68 | .----------. 69 | | a | b | | 70 | |---|---|---| 71 | | 0 | 1 | 0 | 72 | | 1 | 0 | 0 | 73 | '----------' 74 | `; 75 | -------------------------------------------------------------------------------- /__tests__/otherTest.ts: -------------------------------------------------------------------------------- 1 | import testMatrix from '../src'; 2 | 3 | interface CanPayOpts { 4 | amount: number; 5 | balance: number; 6 | status: 'active' | 'locked' | 'expired'; 7 | } 8 | 9 | function canPay({amount, balance, status}: CanPayOpts){ 10 | if (status === 'locked' || status == 'expired'){ 11 | return false; 12 | } 13 | return balance > amount; 14 | } 15 | 16 | it('should only allow valid payments', () => { 17 | expect(testMatrix(canPay, { 18 | amount: [20, 100], 19 | balance : [50], 20 | status: ['active', 'locked', 'expired'] 21 | })).toMatchSnapshot(); 22 | }); -------------------------------------------------------------------------------- /__tests__/testMatrix.ts: -------------------------------------------------------------------------------- 1 | import testMatrix from '../src/index' 2 | 3 | describe('testMatrix', () => { 4 | it('should generate a pretty ASCII-table snapshot when toMatchSnapshot is called', () => { 5 | interface IOpts { 6 | col1: string; 7 | col2: number; 8 | col3: string; 9 | } 10 | 11 | const fn1 = ({col1, col2, col3}: IOpts) => col1.charCodeAt(0) + col2.toString().charCodeAt(0) + col3.charCodeAt(0) 12 | 13 | const matrix = 14 | testMatrix( 15 | fn1, 16 | { 17 | col1: ['a', 'b', 'c', 'd'], 18 | col2: [26, 8, 3], 19 | col3: ['Δ', 'ƒ'] 20 | }, 21 | ) 22 | expect(matrix).toMatchSnapshot() 23 | }) 24 | 25 | it('should properly serialize special values', () => { 26 | expect(testMatrix( 27 | ({a, b, c}) => a && b && c, 28 | { 29 | a: [''], 30 | b: [0], 31 | c: [null, undefined] 32 | } 33 | )).toMatchSnapshot() 34 | }); 35 | 36 | it('should handle object structures', () => { 37 | expect( 38 | testMatrix( 39 | ({fn, data}) => fn(data), 40 | { 41 | fn: [(data: any) => Object.keys(data).length], 42 | data: [[], [0], {}, {hello: 'world'}] 43 | } 44 | ) 45 | ).toMatchSnapshot() 46 | }); 47 | 48 | it('should skip combinations identifed by the skip option', () => { 49 | expect( 50 | testMatrix( 51 | ({a, b}: {a:number, b:number}) => a && b, 52 | { 53 | a: [0, 1], 54 | b: [0, 1], 55 | }, 56 | { 57 | skip: ({a, b}) => a === b 58 | } 59 | ) 60 | ).toMatchSnapshot() 61 | }); 62 | 63 | it('should accept different styling options', () =>{ 64 | expect( 65 | testMatrix( 66 | ({a, b}: {a:number, b:number}) => a && b, 67 | { 68 | a: [0, 1], 69 | b: [0, 1], 70 | }, 71 | { 72 | style: 'verbose' 73 | } 74 | ) 75 | ).toMatchSnapshot() 76 | }) 77 | 78 | }) -------------------------------------------------------------------------------- /ideas.md: -------------------------------------------------------------------------------- 1 | # Alternative syntaxes 2 | **`testMatrix(fn, valuesForParam1, valuesForParam1, ...)`** 3 | 4 | _Upsides_ 5 | 6 | - It allows us to respect how arguments are passed to `fn` instead of arbitrarily opting for an object. 7 | 8 | _Downsides_ 9 | 10 | - If params are not passed as an object, they will be anonymous in the table snapshot 11 | 12 | _Example_ 13 | ```ts 14 | const mult = (a: number, b: number) => a * b 15 | testMatrix(mult, [1, 2], [3, 4]) 16 | 17 | const add = ({a, b}) => a + b; 18 | testMatrix(mult, {a: [1, 2], b: [3, 4]}) 19 | ``` 20 | 21 | **`testMatrix(fn).with(...)`** 22 | 23 | It allows us to respect how arguments are passed to `fn` instead of arbitrarily opting for an object. 24 | 25 | _Upsides_ 26 | 27 | - It allows us to respect how arguments are passed to `fn` instead of arbitrarily opting for an object. 28 | - The API is a bit easier to read 29 | 30 | _Downsides_ 31 | 32 | - If params are not passed as an object, they will be anonymous in the table snapshot 33 | - Using OOP can result in a more complex API 34 | 35 | _Example_ 36 | ```ts 37 | const mult = (a: number, b: number) => a * b 38 | testMatrix(mult).with([1, 2], [3, 4]) 39 | 40 | const add = ({a, b}) => a + b 41 | testMatrix(mult).with({a: [1, 2], b: [3, 4]}) 42 | ``` -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | preset: 'ts-jest', 3 | testEnvironment: 'node', 4 | }; -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-matrix", 3 | "version": "1.2.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@babel/code-frame": { 8 | "version": "7.12.11", 9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", 10 | "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", 11 | "dev": true, 12 | "requires": { 13 | "@babel/highlight": "^7.10.4" 14 | } 15 | }, 16 | "@babel/core": { 17 | "version": "7.12.10", 18 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz", 19 | "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==", 20 | "dev": true, 21 | "requires": { 22 | "@babel/code-frame": "^7.10.4", 23 | "@babel/generator": "^7.12.10", 24 | "@babel/helper-module-transforms": "^7.12.1", 25 | "@babel/helpers": "^7.12.5", 26 | "@babel/parser": "^7.12.10", 27 | "@babel/template": "^7.12.7", 28 | "@babel/traverse": "^7.12.10", 29 | "@babel/types": "^7.12.10", 30 | "convert-source-map": "^1.7.0", 31 | "debug": "^4.1.0", 32 | "gensync": "^1.0.0-beta.1", 33 | "json5": "^2.1.2", 34 | "lodash": "^4.17.19", 35 | "semver": "^5.4.1", 36 | "source-map": "^0.5.0" 37 | }, 38 | "dependencies": { 39 | "source-map": { 40 | "version": "0.5.7", 41 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 42 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 43 | "dev": true 44 | } 45 | } 46 | }, 47 | "@babel/generator": { 48 | "version": "7.12.11", 49 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz", 50 | "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==", 51 | "dev": true, 52 | "requires": { 53 | "@babel/types": "^7.12.11", 54 | "jsesc": "^2.5.1", 55 | "source-map": "^0.5.0" 56 | }, 57 | "dependencies": { 58 | "source-map": { 59 | "version": "0.5.7", 60 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 61 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 62 | "dev": true 63 | } 64 | } 65 | }, 66 | "@babel/helper-function-name": { 67 | "version": "7.12.11", 68 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz", 69 | "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==", 70 | "dev": true, 71 | "requires": { 72 | "@babel/helper-get-function-arity": "^7.12.10", 73 | "@babel/template": "^7.12.7", 74 | "@babel/types": "^7.12.11" 75 | } 76 | }, 77 | "@babel/helper-get-function-arity": { 78 | "version": "7.12.10", 79 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz", 80 | "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==", 81 | "dev": true, 82 | "requires": { 83 | "@babel/types": "^7.12.10" 84 | } 85 | }, 86 | "@babel/helper-member-expression-to-functions": { 87 | "version": "7.12.7", 88 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz", 89 | "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==", 90 | "dev": true, 91 | "requires": { 92 | "@babel/types": "^7.12.7" 93 | } 94 | }, 95 | "@babel/helper-module-imports": { 96 | "version": "7.12.5", 97 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", 98 | "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", 99 | "dev": true, 100 | "requires": { 101 | "@babel/types": "^7.12.5" 102 | } 103 | }, 104 | "@babel/helper-module-transforms": { 105 | "version": "7.12.1", 106 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz", 107 | "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==", 108 | "dev": true, 109 | "requires": { 110 | "@babel/helper-module-imports": "^7.12.1", 111 | "@babel/helper-replace-supers": "^7.12.1", 112 | "@babel/helper-simple-access": "^7.12.1", 113 | "@babel/helper-split-export-declaration": "^7.11.0", 114 | "@babel/helper-validator-identifier": "^7.10.4", 115 | "@babel/template": "^7.10.4", 116 | "@babel/traverse": "^7.12.1", 117 | "@babel/types": "^7.12.1", 118 | "lodash": "^4.17.19" 119 | } 120 | }, 121 | "@babel/helper-optimise-call-expression": { 122 | "version": "7.12.10", 123 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz", 124 | "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==", 125 | "dev": true, 126 | "requires": { 127 | "@babel/types": "^7.12.10" 128 | } 129 | }, 130 | "@babel/helper-plugin-utils": { 131 | "version": "7.10.4", 132 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", 133 | "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", 134 | "dev": true 135 | }, 136 | "@babel/helper-replace-supers": { 137 | "version": "7.12.11", 138 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz", 139 | "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==", 140 | "dev": true, 141 | "requires": { 142 | "@babel/helper-member-expression-to-functions": "^7.12.7", 143 | "@babel/helper-optimise-call-expression": "^7.12.10", 144 | "@babel/traverse": "^7.12.10", 145 | "@babel/types": "^7.12.11" 146 | } 147 | }, 148 | "@babel/helper-simple-access": { 149 | "version": "7.12.1", 150 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz", 151 | "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==", 152 | "dev": true, 153 | "requires": { 154 | "@babel/types": "^7.12.1" 155 | } 156 | }, 157 | "@babel/helper-split-export-declaration": { 158 | "version": "7.12.11", 159 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz", 160 | "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==", 161 | "dev": true, 162 | "requires": { 163 | "@babel/types": "^7.12.11" 164 | } 165 | }, 166 | "@babel/helper-validator-identifier": { 167 | "version": "7.12.11", 168 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", 169 | "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", 170 | "dev": true 171 | }, 172 | "@babel/helpers": { 173 | "version": "7.12.5", 174 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", 175 | "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", 176 | "dev": true, 177 | "requires": { 178 | "@babel/template": "^7.10.4", 179 | "@babel/traverse": "^7.12.5", 180 | "@babel/types": "^7.12.5" 181 | } 182 | }, 183 | "@babel/highlight": { 184 | "version": "7.10.4", 185 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", 186 | "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", 187 | "dev": true, 188 | "requires": { 189 | "@babel/helper-validator-identifier": "^7.10.4", 190 | "chalk": "^2.0.0", 191 | "js-tokens": "^4.0.0" 192 | }, 193 | "dependencies": { 194 | "ansi-styles": { 195 | "version": "3.2.1", 196 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 197 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 198 | "dev": true, 199 | "requires": { 200 | "color-convert": "^1.9.0" 201 | } 202 | }, 203 | "chalk": { 204 | "version": "2.4.2", 205 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 206 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 207 | "dev": true, 208 | "requires": { 209 | "ansi-styles": "^3.2.1", 210 | "escape-string-regexp": "^1.0.5", 211 | "supports-color": "^5.3.0" 212 | } 213 | }, 214 | "color-convert": { 215 | "version": "1.9.3", 216 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 217 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 218 | "dev": true, 219 | "requires": { 220 | "color-name": "1.1.3" 221 | } 222 | }, 223 | "color-name": { 224 | "version": "1.1.3", 225 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 226 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 227 | "dev": true 228 | }, 229 | "has-flag": { 230 | "version": "3.0.0", 231 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 232 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 233 | "dev": true 234 | }, 235 | "supports-color": { 236 | "version": "5.5.0", 237 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 238 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 239 | "dev": true, 240 | "requires": { 241 | "has-flag": "^3.0.0" 242 | } 243 | } 244 | } 245 | }, 246 | "@babel/parser": { 247 | "version": "7.12.11", 248 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", 249 | "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==", 250 | "dev": true 251 | }, 252 | "@babel/plugin-syntax-async-generators": { 253 | "version": "7.8.4", 254 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", 255 | "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", 256 | "dev": true, 257 | "requires": { 258 | "@babel/helper-plugin-utils": "^7.8.0" 259 | } 260 | }, 261 | "@babel/plugin-syntax-bigint": { 262 | "version": "7.8.3", 263 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", 264 | "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", 265 | "dev": true, 266 | "requires": { 267 | "@babel/helper-plugin-utils": "^7.8.0" 268 | } 269 | }, 270 | "@babel/plugin-syntax-class-properties": { 271 | "version": "7.12.1", 272 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz", 273 | "integrity": "sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA==", 274 | "dev": true, 275 | "requires": { 276 | "@babel/helper-plugin-utils": "^7.10.4" 277 | } 278 | }, 279 | "@babel/plugin-syntax-import-meta": { 280 | "version": "7.10.4", 281 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", 282 | "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", 283 | "dev": true, 284 | "requires": { 285 | "@babel/helper-plugin-utils": "^7.10.4" 286 | } 287 | }, 288 | "@babel/plugin-syntax-json-strings": { 289 | "version": "7.8.3", 290 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", 291 | "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", 292 | "dev": true, 293 | "requires": { 294 | "@babel/helper-plugin-utils": "^7.8.0" 295 | } 296 | }, 297 | "@babel/plugin-syntax-logical-assignment-operators": { 298 | "version": "7.10.4", 299 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", 300 | "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", 301 | "dev": true, 302 | "requires": { 303 | "@babel/helper-plugin-utils": "^7.10.4" 304 | } 305 | }, 306 | "@babel/plugin-syntax-nullish-coalescing-operator": { 307 | "version": "7.8.3", 308 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", 309 | "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", 310 | "dev": true, 311 | "requires": { 312 | "@babel/helper-plugin-utils": "^7.8.0" 313 | } 314 | }, 315 | "@babel/plugin-syntax-numeric-separator": { 316 | "version": "7.10.4", 317 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", 318 | "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", 319 | "dev": true, 320 | "requires": { 321 | "@babel/helper-plugin-utils": "^7.10.4" 322 | } 323 | }, 324 | "@babel/plugin-syntax-object-rest-spread": { 325 | "version": "7.8.3", 326 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", 327 | "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", 328 | "dev": true, 329 | "requires": { 330 | "@babel/helper-plugin-utils": "^7.8.0" 331 | } 332 | }, 333 | "@babel/plugin-syntax-optional-catch-binding": { 334 | "version": "7.8.3", 335 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", 336 | "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", 337 | "dev": true, 338 | "requires": { 339 | "@babel/helper-plugin-utils": "^7.8.0" 340 | } 341 | }, 342 | "@babel/plugin-syntax-optional-chaining": { 343 | "version": "7.8.3", 344 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", 345 | "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", 346 | "dev": true, 347 | "requires": { 348 | "@babel/helper-plugin-utils": "^7.8.0" 349 | } 350 | }, 351 | "@babel/plugin-syntax-top-level-await": { 352 | "version": "7.12.1", 353 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.1.tgz", 354 | "integrity": "sha512-i7ooMZFS+a/Om0crxZodrTzNEPJHZrlMVGMTEpFAj6rYY/bKCddB0Dk/YxfPuYXOopuhKk/e1jV6h+WUU9XN3A==", 355 | "dev": true, 356 | "requires": { 357 | "@babel/helper-plugin-utils": "^7.10.4" 358 | } 359 | }, 360 | "@babel/template": { 361 | "version": "7.12.7", 362 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", 363 | "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", 364 | "dev": true, 365 | "requires": { 366 | "@babel/code-frame": "^7.10.4", 367 | "@babel/parser": "^7.12.7", 368 | "@babel/types": "^7.12.7" 369 | } 370 | }, 371 | "@babel/traverse": { 372 | "version": "7.12.12", 373 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz", 374 | "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==", 375 | "dev": true, 376 | "requires": { 377 | "@babel/code-frame": "^7.12.11", 378 | "@babel/generator": "^7.12.11", 379 | "@babel/helper-function-name": "^7.12.11", 380 | "@babel/helper-split-export-declaration": "^7.12.11", 381 | "@babel/parser": "^7.12.11", 382 | "@babel/types": "^7.12.12", 383 | "debug": "^4.1.0", 384 | "globals": "^11.1.0", 385 | "lodash": "^4.17.19" 386 | } 387 | }, 388 | "@babel/types": { 389 | "version": "7.12.12", 390 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz", 391 | "integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==", 392 | "dev": true, 393 | "requires": { 394 | "@babel/helper-validator-identifier": "^7.12.11", 395 | "lodash": "^4.17.19", 396 | "to-fast-properties": "^2.0.0" 397 | } 398 | }, 399 | "@bcoe/v8-coverage": { 400 | "version": "0.2.3", 401 | "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", 402 | "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", 403 | "dev": true 404 | }, 405 | "@cnakazawa/watch": { 406 | "version": "1.0.4", 407 | "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", 408 | "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", 409 | "dev": true, 410 | "requires": { 411 | "exec-sh": "^0.3.2", 412 | "minimist": "^1.2.0" 413 | } 414 | }, 415 | "@istanbuljs/load-nyc-config": { 416 | "version": "1.1.0", 417 | "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", 418 | "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", 419 | "dev": true, 420 | "requires": { 421 | "camelcase": "^5.3.1", 422 | "find-up": "^4.1.0", 423 | "get-package-type": "^0.1.0", 424 | "js-yaml": "^3.13.1", 425 | "resolve-from": "^5.0.0" 426 | } 427 | }, 428 | "@istanbuljs/schema": { 429 | "version": "0.1.2", 430 | "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", 431 | "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", 432 | "dev": true 433 | }, 434 | "@jest/console": { 435 | "version": "26.6.2", 436 | "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz", 437 | "integrity": "sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==", 438 | "dev": true, 439 | "requires": { 440 | "@jest/types": "^26.6.2", 441 | "@types/node": "*", 442 | "chalk": "^4.0.0", 443 | "jest-message-util": "^26.6.2", 444 | "jest-util": "^26.6.2", 445 | "slash": "^3.0.0" 446 | } 447 | }, 448 | "@jest/core": { 449 | "version": "26.6.3", 450 | "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz", 451 | "integrity": "sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw==", 452 | "dev": true, 453 | "requires": { 454 | "@jest/console": "^26.6.2", 455 | "@jest/reporters": "^26.6.2", 456 | "@jest/test-result": "^26.6.2", 457 | "@jest/transform": "^26.6.2", 458 | "@jest/types": "^26.6.2", 459 | "@types/node": "*", 460 | "ansi-escapes": "^4.2.1", 461 | "chalk": "^4.0.0", 462 | "exit": "^0.1.2", 463 | "graceful-fs": "^4.2.4", 464 | "jest-changed-files": "^26.6.2", 465 | "jest-config": "^26.6.3", 466 | "jest-haste-map": "^26.6.2", 467 | "jest-message-util": "^26.6.2", 468 | "jest-regex-util": "^26.0.0", 469 | "jest-resolve": "^26.6.2", 470 | "jest-resolve-dependencies": "^26.6.3", 471 | "jest-runner": "^26.6.3", 472 | "jest-runtime": "^26.6.3", 473 | "jest-snapshot": "^26.6.2", 474 | "jest-util": "^26.6.2", 475 | "jest-validate": "^26.6.2", 476 | "jest-watcher": "^26.6.2", 477 | "micromatch": "^4.0.2", 478 | "p-each-series": "^2.1.0", 479 | "rimraf": "^3.0.0", 480 | "slash": "^3.0.0", 481 | "strip-ansi": "^6.0.0" 482 | } 483 | }, 484 | "@jest/environment": { 485 | "version": "26.6.2", 486 | "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", 487 | "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", 488 | "dev": true, 489 | "requires": { 490 | "@jest/fake-timers": "^26.6.2", 491 | "@jest/types": "^26.6.2", 492 | "@types/node": "*", 493 | "jest-mock": "^26.6.2" 494 | } 495 | }, 496 | "@jest/fake-timers": { 497 | "version": "26.6.2", 498 | "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", 499 | "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", 500 | "dev": true, 501 | "requires": { 502 | "@jest/types": "^26.6.2", 503 | "@sinonjs/fake-timers": "^6.0.1", 504 | "@types/node": "*", 505 | "jest-message-util": "^26.6.2", 506 | "jest-mock": "^26.6.2", 507 | "jest-util": "^26.6.2" 508 | } 509 | }, 510 | "@jest/globals": { 511 | "version": "26.6.2", 512 | "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz", 513 | "integrity": "sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==", 514 | "dev": true, 515 | "requires": { 516 | "@jest/environment": "^26.6.2", 517 | "@jest/types": "^26.6.2", 518 | "expect": "^26.6.2" 519 | } 520 | }, 521 | "@jest/reporters": { 522 | "version": "26.6.2", 523 | "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz", 524 | "integrity": "sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw==", 525 | "dev": true, 526 | "requires": { 527 | "@bcoe/v8-coverage": "^0.2.3", 528 | "@jest/console": "^26.6.2", 529 | "@jest/test-result": "^26.6.2", 530 | "@jest/transform": "^26.6.2", 531 | "@jest/types": "^26.6.2", 532 | "chalk": "^4.0.0", 533 | "collect-v8-coverage": "^1.0.0", 534 | "exit": "^0.1.2", 535 | "glob": "^7.1.2", 536 | "graceful-fs": "^4.2.4", 537 | "istanbul-lib-coverage": "^3.0.0", 538 | "istanbul-lib-instrument": "^4.0.3", 539 | "istanbul-lib-report": "^3.0.0", 540 | "istanbul-lib-source-maps": "^4.0.0", 541 | "istanbul-reports": "^3.0.2", 542 | "jest-haste-map": "^26.6.2", 543 | "jest-resolve": "^26.6.2", 544 | "jest-util": "^26.6.2", 545 | "jest-worker": "^26.6.2", 546 | "node-notifier": "^8.0.0", 547 | "slash": "^3.0.0", 548 | "source-map": "^0.6.0", 549 | "string-length": "^4.0.1", 550 | "terminal-link": "^2.0.0", 551 | "v8-to-istanbul": "^7.0.0" 552 | } 553 | }, 554 | "@jest/source-map": { 555 | "version": "26.6.2", 556 | "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz", 557 | "integrity": "sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==", 558 | "dev": true, 559 | "requires": { 560 | "callsites": "^3.0.0", 561 | "graceful-fs": "^4.2.4", 562 | "source-map": "^0.6.0" 563 | } 564 | }, 565 | "@jest/test-result": { 566 | "version": "26.6.2", 567 | "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz", 568 | "integrity": "sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==", 569 | "dev": true, 570 | "requires": { 571 | "@jest/console": "^26.6.2", 572 | "@jest/types": "^26.6.2", 573 | "@types/istanbul-lib-coverage": "^2.0.0", 574 | "collect-v8-coverage": "^1.0.0" 575 | } 576 | }, 577 | "@jest/test-sequencer": { 578 | "version": "26.6.3", 579 | "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz", 580 | "integrity": "sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==", 581 | "dev": true, 582 | "requires": { 583 | "@jest/test-result": "^26.6.2", 584 | "graceful-fs": "^4.2.4", 585 | "jest-haste-map": "^26.6.2", 586 | "jest-runner": "^26.6.3", 587 | "jest-runtime": "^26.6.3" 588 | } 589 | }, 590 | "@jest/transform": { 591 | "version": "26.6.2", 592 | "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", 593 | "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", 594 | "dev": true, 595 | "requires": { 596 | "@babel/core": "^7.1.0", 597 | "@jest/types": "^26.6.2", 598 | "babel-plugin-istanbul": "^6.0.0", 599 | "chalk": "^4.0.0", 600 | "convert-source-map": "^1.4.0", 601 | "fast-json-stable-stringify": "^2.0.0", 602 | "graceful-fs": "^4.2.4", 603 | "jest-haste-map": "^26.6.2", 604 | "jest-regex-util": "^26.0.0", 605 | "jest-util": "^26.6.2", 606 | "micromatch": "^4.0.2", 607 | "pirates": "^4.0.1", 608 | "slash": "^3.0.0", 609 | "source-map": "^0.6.1", 610 | "write-file-atomic": "^3.0.0" 611 | } 612 | }, 613 | "@jest/types": { 614 | "version": "26.6.2", 615 | "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", 616 | "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", 617 | "dev": true, 618 | "requires": { 619 | "@types/istanbul-lib-coverage": "^2.0.0", 620 | "@types/istanbul-reports": "^3.0.0", 621 | "@types/node": "*", 622 | "@types/yargs": "^15.0.0", 623 | "chalk": "^4.0.0" 624 | } 625 | }, 626 | "@sinonjs/commons": { 627 | "version": "1.8.1", 628 | "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", 629 | "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", 630 | "dev": true, 631 | "requires": { 632 | "type-detect": "4.0.8" 633 | } 634 | }, 635 | "@sinonjs/fake-timers": { 636 | "version": "6.0.1", 637 | "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", 638 | "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", 639 | "dev": true, 640 | "requires": { 641 | "@sinonjs/commons": "^1.7.0" 642 | } 643 | }, 644 | "@types/babel__core": { 645 | "version": "7.1.12", 646 | "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.12.tgz", 647 | "integrity": "sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ==", 648 | "dev": true, 649 | "requires": { 650 | "@babel/parser": "^7.1.0", 651 | "@babel/types": "^7.0.0", 652 | "@types/babel__generator": "*", 653 | "@types/babel__template": "*", 654 | "@types/babel__traverse": "*" 655 | } 656 | }, 657 | "@types/babel__generator": { 658 | "version": "7.6.2", 659 | "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", 660 | "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", 661 | "dev": true, 662 | "requires": { 663 | "@babel/types": "^7.0.0" 664 | } 665 | }, 666 | "@types/babel__template": { 667 | "version": "7.4.0", 668 | "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz", 669 | "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==", 670 | "dev": true, 671 | "requires": { 672 | "@babel/parser": "^7.1.0", 673 | "@babel/types": "^7.0.0" 674 | } 675 | }, 676 | "@types/babel__traverse": { 677 | "version": "7.11.0", 678 | "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.0.tgz", 679 | "integrity": "sha512-kSjgDMZONiIfSH1Nxcr5JIRMwUetDki63FSQfpTCz8ogF3Ulqm8+mr5f78dUYs6vMiB6gBusQqfQmBvHZj/lwg==", 680 | "dev": true, 681 | "requires": { 682 | "@babel/types": "^7.3.0" 683 | } 684 | }, 685 | "@types/graceful-fs": { 686 | "version": "4.1.4", 687 | "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.4.tgz", 688 | "integrity": "sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==", 689 | "dev": true, 690 | "requires": { 691 | "@types/node": "*" 692 | } 693 | }, 694 | "@types/istanbul-lib-coverage": { 695 | "version": "2.0.3", 696 | "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", 697 | "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", 698 | "dev": true 699 | }, 700 | "@types/istanbul-lib-report": { 701 | "version": "3.0.0", 702 | "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", 703 | "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", 704 | "dev": true, 705 | "requires": { 706 | "@types/istanbul-lib-coverage": "*" 707 | } 708 | }, 709 | "@types/istanbul-reports": { 710 | "version": "3.0.0", 711 | "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz", 712 | "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==", 713 | "dev": true, 714 | "requires": { 715 | "@types/istanbul-lib-report": "*" 716 | } 717 | }, 718 | "@types/jest": { 719 | "version": "26.0.19", 720 | "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.19.tgz", 721 | "integrity": "sha512-jqHoirTG61fee6v6rwbnEuKhpSKih0tuhqeFbCmMmErhtu3BYlOZaXWjffgOstMM4S/3iQD31lI5bGLTrs97yQ==", 722 | "dev": true, 723 | "requires": { 724 | "jest-diff": "^26.0.0", 725 | "pretty-format": "^26.0.0" 726 | } 727 | }, 728 | "@types/node": { 729 | "version": "14.14.14", 730 | "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.14.tgz", 731 | "integrity": "sha512-UHnOPWVWV1z+VV8k6L1HhG7UbGBgIdghqF3l9Ny9ApPghbjICXkUJSd/b9gOgQfjM1r+37cipdw/HJ3F6ICEnQ==", 732 | "dev": true 733 | }, 734 | "@types/normalize-package-data": { 735 | "version": "2.4.0", 736 | "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", 737 | "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", 738 | "dev": true 739 | }, 740 | "@types/prettier": { 741 | "version": "2.1.5", 742 | "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.5.tgz", 743 | "integrity": "sha512-UEyp8LwZ4Dg30kVU2Q3amHHyTn1jEdhCIE59ANed76GaT1Vp76DD3ZWSAxgCrw6wJ0TqeoBpqmfUHiUDPs//HQ==", 744 | "dev": true 745 | }, 746 | "@types/stack-utils": { 747 | "version": "2.0.0", 748 | "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz", 749 | "integrity": "sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==", 750 | "dev": true 751 | }, 752 | "@types/yargs": { 753 | "version": "15.0.12", 754 | "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.12.tgz", 755 | "integrity": "sha512-f+fD/fQAo3BCbCDlrUpznF1A5Zp9rB0noS5vnoormHSIPFKL0Z2DcUJ3Gxp5ytH4uLRNxy7AwYUC9exZzqGMAw==", 756 | "dev": true, 757 | "requires": { 758 | "@types/yargs-parser": "*" 759 | } 760 | }, 761 | "@types/yargs-parser": { 762 | "version": "15.0.0", 763 | "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", 764 | "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", 765 | "dev": true 766 | }, 767 | "abab": { 768 | "version": "2.0.5", 769 | "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", 770 | "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", 771 | "dev": true 772 | }, 773 | "acorn": { 774 | "version": "7.4.1", 775 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 776 | "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", 777 | "dev": true 778 | }, 779 | "acorn-globals": { 780 | "version": "6.0.0", 781 | "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", 782 | "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", 783 | "dev": true, 784 | "requires": { 785 | "acorn": "^7.1.1", 786 | "acorn-walk": "^7.1.1" 787 | } 788 | }, 789 | "acorn-walk": { 790 | "version": "7.2.0", 791 | "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", 792 | "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", 793 | "dev": true 794 | }, 795 | "ajv": { 796 | "version": "6.12.6", 797 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 798 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 799 | "dev": true, 800 | "requires": { 801 | "fast-deep-equal": "^3.1.1", 802 | "fast-json-stable-stringify": "^2.0.0", 803 | "json-schema-traverse": "^0.4.1", 804 | "uri-js": "^4.2.2" 805 | } 806 | }, 807 | "ansi-escapes": { 808 | "version": "4.3.1", 809 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", 810 | "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", 811 | "dev": true, 812 | "requires": { 813 | "type-fest": "^0.11.0" 814 | }, 815 | "dependencies": { 816 | "type-fest": { 817 | "version": "0.11.0", 818 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", 819 | "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", 820 | "dev": true 821 | } 822 | } 823 | }, 824 | "ansi-regex": { 825 | "version": "5.0.0", 826 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", 827 | "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", 828 | "dev": true 829 | }, 830 | "ansi-styles": { 831 | "version": "4.3.0", 832 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 833 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 834 | "dev": true, 835 | "requires": { 836 | "color-convert": "^2.0.1" 837 | } 838 | }, 839 | "anymatch": { 840 | "version": "3.1.1", 841 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", 842 | "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", 843 | "dev": true, 844 | "requires": { 845 | "normalize-path": "^3.0.0", 846 | "picomatch": "^2.0.4" 847 | } 848 | }, 849 | "argparse": { 850 | "version": "1.0.10", 851 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 852 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 853 | "dev": true, 854 | "requires": { 855 | "sprintf-js": "~1.0.2" 856 | } 857 | }, 858 | "arr-diff": { 859 | "version": "4.0.0", 860 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 861 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 862 | "dev": true 863 | }, 864 | "arr-flatten": { 865 | "version": "1.1.0", 866 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 867 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 868 | "dev": true 869 | }, 870 | "arr-union": { 871 | "version": "3.1.0", 872 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", 873 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", 874 | "dev": true 875 | }, 876 | "array-unique": { 877 | "version": "0.3.2", 878 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 879 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 880 | "dev": true 881 | }, 882 | "ascii-table": { 883 | "version": "0.0.9", 884 | "resolved": "https://registry.npmjs.org/ascii-table/-/ascii-table-0.0.9.tgz", 885 | "integrity": "sha1-BqZgTWpV1L9BqaR9mHLXp42jHnM=" 886 | }, 887 | "asn1": { 888 | "version": "0.2.4", 889 | "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", 890 | "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", 891 | "dev": true, 892 | "requires": { 893 | "safer-buffer": "~2.1.0" 894 | } 895 | }, 896 | "assert-plus": { 897 | "version": "1.0.0", 898 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 899 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 900 | "dev": true 901 | }, 902 | "assign-symbols": { 903 | "version": "1.0.0", 904 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", 905 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 906 | "dev": true 907 | }, 908 | "asynckit": { 909 | "version": "0.4.0", 910 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 911 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", 912 | "dev": true 913 | }, 914 | "atob": { 915 | "version": "2.1.2", 916 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", 917 | "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", 918 | "dev": true 919 | }, 920 | "aws-sign2": { 921 | "version": "0.7.0", 922 | "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", 923 | "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", 924 | "dev": true 925 | }, 926 | "aws4": { 927 | "version": "1.11.0", 928 | "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", 929 | "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", 930 | "dev": true 931 | }, 932 | "babel-jest": { 933 | "version": "26.6.3", 934 | "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", 935 | "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", 936 | "dev": true, 937 | "requires": { 938 | "@jest/transform": "^26.6.2", 939 | "@jest/types": "^26.6.2", 940 | "@types/babel__core": "^7.1.7", 941 | "babel-plugin-istanbul": "^6.0.0", 942 | "babel-preset-jest": "^26.6.2", 943 | "chalk": "^4.0.0", 944 | "graceful-fs": "^4.2.4", 945 | "slash": "^3.0.0" 946 | } 947 | }, 948 | "babel-plugin-istanbul": { 949 | "version": "6.0.0", 950 | "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", 951 | "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", 952 | "dev": true, 953 | "requires": { 954 | "@babel/helper-plugin-utils": "^7.0.0", 955 | "@istanbuljs/load-nyc-config": "^1.0.0", 956 | "@istanbuljs/schema": "^0.1.2", 957 | "istanbul-lib-instrument": "^4.0.0", 958 | "test-exclude": "^6.0.0" 959 | } 960 | }, 961 | "babel-plugin-jest-hoist": { 962 | "version": "26.6.2", 963 | "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", 964 | "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", 965 | "dev": true, 966 | "requires": { 967 | "@babel/template": "^7.3.3", 968 | "@babel/types": "^7.3.3", 969 | "@types/babel__core": "^7.0.0", 970 | "@types/babel__traverse": "^7.0.6" 971 | } 972 | }, 973 | "babel-preset-current-node-syntax": { 974 | "version": "1.0.1", 975 | "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", 976 | "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", 977 | "dev": true, 978 | "requires": { 979 | "@babel/plugin-syntax-async-generators": "^7.8.4", 980 | "@babel/plugin-syntax-bigint": "^7.8.3", 981 | "@babel/plugin-syntax-class-properties": "^7.8.3", 982 | "@babel/plugin-syntax-import-meta": "^7.8.3", 983 | "@babel/plugin-syntax-json-strings": "^7.8.3", 984 | "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", 985 | "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", 986 | "@babel/plugin-syntax-numeric-separator": "^7.8.3", 987 | "@babel/plugin-syntax-object-rest-spread": "^7.8.3", 988 | "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", 989 | "@babel/plugin-syntax-optional-chaining": "^7.8.3", 990 | "@babel/plugin-syntax-top-level-await": "^7.8.3" 991 | } 992 | }, 993 | "babel-preset-jest": { 994 | "version": "26.6.2", 995 | "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", 996 | "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", 997 | "dev": true, 998 | "requires": { 999 | "babel-plugin-jest-hoist": "^26.6.2", 1000 | "babel-preset-current-node-syntax": "^1.0.0" 1001 | } 1002 | }, 1003 | "balanced-match": { 1004 | "version": "1.0.0", 1005 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 1006 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 1007 | "dev": true 1008 | }, 1009 | "base": { 1010 | "version": "0.11.2", 1011 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", 1012 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", 1013 | "dev": true, 1014 | "requires": { 1015 | "cache-base": "^1.0.1", 1016 | "class-utils": "^0.3.5", 1017 | "component-emitter": "^1.2.1", 1018 | "define-property": "^1.0.0", 1019 | "isobject": "^3.0.1", 1020 | "mixin-deep": "^1.2.0", 1021 | "pascalcase": "^0.1.1" 1022 | }, 1023 | "dependencies": { 1024 | "define-property": { 1025 | "version": "1.0.0", 1026 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 1027 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 1028 | "dev": true, 1029 | "requires": { 1030 | "is-descriptor": "^1.0.0" 1031 | } 1032 | }, 1033 | "is-accessor-descriptor": { 1034 | "version": "1.0.0", 1035 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 1036 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 1037 | "dev": true, 1038 | "requires": { 1039 | "kind-of": "^6.0.0" 1040 | } 1041 | }, 1042 | "is-data-descriptor": { 1043 | "version": "1.0.0", 1044 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 1045 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 1046 | "dev": true, 1047 | "requires": { 1048 | "kind-of": "^6.0.0" 1049 | } 1050 | }, 1051 | "is-descriptor": { 1052 | "version": "1.0.2", 1053 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 1054 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 1055 | "dev": true, 1056 | "requires": { 1057 | "is-accessor-descriptor": "^1.0.0", 1058 | "is-data-descriptor": "^1.0.0", 1059 | "kind-of": "^6.0.2" 1060 | } 1061 | } 1062 | } 1063 | }, 1064 | "bcrypt-pbkdf": { 1065 | "version": "1.0.2", 1066 | "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", 1067 | "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", 1068 | "dev": true, 1069 | "requires": { 1070 | "tweetnacl": "^0.14.3" 1071 | } 1072 | }, 1073 | "brace-expansion": { 1074 | "version": "1.1.11", 1075 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 1076 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 1077 | "dev": true, 1078 | "requires": { 1079 | "balanced-match": "^1.0.0", 1080 | "concat-map": "0.0.1" 1081 | } 1082 | }, 1083 | "braces": { 1084 | "version": "3.0.2", 1085 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 1086 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 1087 | "dev": true, 1088 | "requires": { 1089 | "fill-range": "^7.0.1" 1090 | } 1091 | }, 1092 | "browser-process-hrtime": { 1093 | "version": "1.0.0", 1094 | "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", 1095 | "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", 1096 | "dev": true 1097 | }, 1098 | "bs-logger": { 1099 | "version": "0.2.6", 1100 | "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", 1101 | "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", 1102 | "dev": true, 1103 | "requires": { 1104 | "fast-json-stable-stringify": "2.x" 1105 | } 1106 | }, 1107 | "bser": { 1108 | "version": "2.1.1", 1109 | "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", 1110 | "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", 1111 | "dev": true, 1112 | "requires": { 1113 | "node-int64": "^0.4.0" 1114 | } 1115 | }, 1116 | "buffer-from": { 1117 | "version": "1.1.1", 1118 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 1119 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", 1120 | "dev": true 1121 | }, 1122 | "cache-base": { 1123 | "version": "1.0.1", 1124 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", 1125 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", 1126 | "dev": true, 1127 | "requires": { 1128 | "collection-visit": "^1.0.0", 1129 | "component-emitter": "^1.2.1", 1130 | "get-value": "^2.0.6", 1131 | "has-value": "^1.0.0", 1132 | "isobject": "^3.0.1", 1133 | "set-value": "^2.0.0", 1134 | "to-object-path": "^0.3.0", 1135 | "union-value": "^1.0.0", 1136 | "unset-value": "^1.0.0" 1137 | } 1138 | }, 1139 | "callsites": { 1140 | "version": "3.1.0", 1141 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 1142 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 1143 | "dev": true 1144 | }, 1145 | "camelcase": { 1146 | "version": "5.3.1", 1147 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", 1148 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", 1149 | "dev": true 1150 | }, 1151 | "capture-exit": { 1152 | "version": "2.0.0", 1153 | "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", 1154 | "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", 1155 | "dev": true, 1156 | "requires": { 1157 | "rsvp": "^4.8.4" 1158 | } 1159 | }, 1160 | "caseless": { 1161 | "version": "0.12.0", 1162 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", 1163 | "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", 1164 | "dev": true 1165 | }, 1166 | "chalk": { 1167 | "version": "4.1.0", 1168 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", 1169 | "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", 1170 | "dev": true, 1171 | "requires": { 1172 | "ansi-styles": "^4.1.0", 1173 | "supports-color": "^7.1.0" 1174 | } 1175 | }, 1176 | "char-regex": { 1177 | "version": "1.0.2", 1178 | "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", 1179 | "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", 1180 | "dev": true 1181 | }, 1182 | "ci-info": { 1183 | "version": "2.0.0", 1184 | "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", 1185 | "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", 1186 | "dev": true 1187 | }, 1188 | "cjs-module-lexer": { 1189 | "version": "0.6.0", 1190 | "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz", 1191 | "integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==", 1192 | "dev": true 1193 | }, 1194 | "class-utils": { 1195 | "version": "0.3.6", 1196 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 1197 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", 1198 | "dev": true, 1199 | "requires": { 1200 | "arr-union": "^3.1.0", 1201 | "define-property": "^0.2.5", 1202 | "isobject": "^3.0.0", 1203 | "static-extend": "^0.1.1" 1204 | }, 1205 | "dependencies": { 1206 | "define-property": { 1207 | "version": "0.2.5", 1208 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 1209 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 1210 | "dev": true, 1211 | "requires": { 1212 | "is-descriptor": "^0.1.0" 1213 | } 1214 | } 1215 | } 1216 | }, 1217 | "cliui": { 1218 | "version": "6.0.0", 1219 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", 1220 | "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", 1221 | "dev": true, 1222 | "requires": { 1223 | "string-width": "^4.2.0", 1224 | "strip-ansi": "^6.0.0", 1225 | "wrap-ansi": "^6.2.0" 1226 | } 1227 | }, 1228 | "co": { 1229 | "version": "4.6.0", 1230 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 1231 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", 1232 | "dev": true 1233 | }, 1234 | "collect-v8-coverage": { 1235 | "version": "1.0.1", 1236 | "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", 1237 | "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", 1238 | "dev": true 1239 | }, 1240 | "collection-visit": { 1241 | "version": "1.0.0", 1242 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", 1243 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", 1244 | "dev": true, 1245 | "requires": { 1246 | "map-visit": "^1.0.0", 1247 | "object-visit": "^1.0.0" 1248 | } 1249 | }, 1250 | "color-convert": { 1251 | "version": "2.0.1", 1252 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 1253 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 1254 | "dev": true, 1255 | "requires": { 1256 | "color-name": "~1.1.4" 1257 | } 1258 | }, 1259 | "color-name": { 1260 | "version": "1.1.4", 1261 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 1262 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 1263 | "dev": true 1264 | }, 1265 | "combined-stream": { 1266 | "version": "1.0.8", 1267 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 1268 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 1269 | "dev": true, 1270 | "requires": { 1271 | "delayed-stream": "~1.0.0" 1272 | } 1273 | }, 1274 | "component-emitter": { 1275 | "version": "1.3.0", 1276 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", 1277 | "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", 1278 | "dev": true 1279 | }, 1280 | "concat-map": { 1281 | "version": "0.0.1", 1282 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1283 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 1284 | "dev": true 1285 | }, 1286 | "convert-source-map": { 1287 | "version": "1.7.0", 1288 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", 1289 | "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", 1290 | "dev": true, 1291 | "requires": { 1292 | "safe-buffer": "~5.1.1" 1293 | } 1294 | }, 1295 | "copy-descriptor": { 1296 | "version": "0.1.1", 1297 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", 1298 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", 1299 | "dev": true 1300 | }, 1301 | "core-util-is": { 1302 | "version": "1.0.2", 1303 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1304 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 1305 | "dev": true 1306 | }, 1307 | "cross-spawn": { 1308 | "version": "6.0.5", 1309 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", 1310 | "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", 1311 | "dev": true, 1312 | "requires": { 1313 | "nice-try": "^1.0.4", 1314 | "path-key": "^2.0.1", 1315 | "semver": "^5.5.0", 1316 | "shebang-command": "^1.2.0", 1317 | "which": "^1.2.9" 1318 | } 1319 | }, 1320 | "cssom": { 1321 | "version": "0.4.4", 1322 | "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", 1323 | "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", 1324 | "dev": true 1325 | }, 1326 | "cssstyle": { 1327 | "version": "2.3.0", 1328 | "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", 1329 | "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", 1330 | "dev": true, 1331 | "requires": { 1332 | "cssom": "~0.3.6" 1333 | }, 1334 | "dependencies": { 1335 | "cssom": { 1336 | "version": "0.3.8", 1337 | "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", 1338 | "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", 1339 | "dev": true 1340 | } 1341 | } 1342 | }, 1343 | "dashdash": { 1344 | "version": "1.14.1", 1345 | "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", 1346 | "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", 1347 | "dev": true, 1348 | "requires": { 1349 | "assert-plus": "^1.0.0" 1350 | } 1351 | }, 1352 | "data-urls": { 1353 | "version": "2.0.0", 1354 | "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", 1355 | "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", 1356 | "dev": true, 1357 | "requires": { 1358 | "abab": "^2.0.3", 1359 | "whatwg-mimetype": "^2.3.0", 1360 | "whatwg-url": "^8.0.0" 1361 | } 1362 | }, 1363 | "debug": { 1364 | "version": "4.3.1", 1365 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", 1366 | "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", 1367 | "dev": true, 1368 | "requires": { 1369 | "ms": "2.1.2" 1370 | } 1371 | }, 1372 | "decamelize": { 1373 | "version": "1.2.0", 1374 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 1375 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 1376 | "dev": true 1377 | }, 1378 | "decimal.js": { 1379 | "version": "10.2.1", 1380 | "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.1.tgz", 1381 | "integrity": "sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw==", 1382 | "dev": true 1383 | }, 1384 | "decode-uri-component": { 1385 | "version": "0.2.0", 1386 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 1387 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", 1388 | "dev": true 1389 | }, 1390 | "deep-is": { 1391 | "version": "0.1.3", 1392 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 1393 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 1394 | "dev": true 1395 | }, 1396 | "deepmerge": { 1397 | "version": "4.2.2", 1398 | "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", 1399 | "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", 1400 | "dev": true 1401 | }, 1402 | "define-property": { 1403 | "version": "2.0.2", 1404 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", 1405 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", 1406 | "dev": true, 1407 | "requires": { 1408 | "is-descriptor": "^1.0.2", 1409 | "isobject": "^3.0.1" 1410 | }, 1411 | "dependencies": { 1412 | "is-accessor-descriptor": { 1413 | "version": "1.0.0", 1414 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 1415 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 1416 | "dev": true, 1417 | "requires": { 1418 | "kind-of": "^6.0.0" 1419 | } 1420 | }, 1421 | "is-data-descriptor": { 1422 | "version": "1.0.0", 1423 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 1424 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 1425 | "dev": true, 1426 | "requires": { 1427 | "kind-of": "^6.0.0" 1428 | } 1429 | }, 1430 | "is-descriptor": { 1431 | "version": "1.0.2", 1432 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 1433 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 1434 | "dev": true, 1435 | "requires": { 1436 | "is-accessor-descriptor": "^1.0.0", 1437 | "is-data-descriptor": "^1.0.0", 1438 | "kind-of": "^6.0.2" 1439 | } 1440 | } 1441 | } 1442 | }, 1443 | "delayed-stream": { 1444 | "version": "1.0.0", 1445 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 1446 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", 1447 | "dev": true 1448 | }, 1449 | "detect-newline": { 1450 | "version": "3.1.0", 1451 | "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", 1452 | "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", 1453 | "dev": true 1454 | }, 1455 | "diff-sequences": { 1456 | "version": "26.6.2", 1457 | "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", 1458 | "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", 1459 | "dev": true 1460 | }, 1461 | "domexception": { 1462 | "version": "2.0.1", 1463 | "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", 1464 | "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", 1465 | "dev": true, 1466 | "requires": { 1467 | "webidl-conversions": "^5.0.0" 1468 | }, 1469 | "dependencies": { 1470 | "webidl-conversions": { 1471 | "version": "5.0.0", 1472 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", 1473 | "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", 1474 | "dev": true 1475 | } 1476 | } 1477 | }, 1478 | "ecc-jsbn": { 1479 | "version": "0.1.2", 1480 | "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", 1481 | "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", 1482 | "dev": true, 1483 | "requires": { 1484 | "jsbn": "~0.1.0", 1485 | "safer-buffer": "^2.1.0" 1486 | } 1487 | }, 1488 | "emittery": { 1489 | "version": "0.7.2", 1490 | "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", 1491 | "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", 1492 | "dev": true 1493 | }, 1494 | "emoji-regex": { 1495 | "version": "8.0.0", 1496 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 1497 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 1498 | "dev": true 1499 | }, 1500 | "end-of-stream": { 1501 | "version": "1.4.4", 1502 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", 1503 | "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", 1504 | "dev": true, 1505 | "requires": { 1506 | "once": "^1.4.0" 1507 | } 1508 | }, 1509 | "error-ex": { 1510 | "version": "1.3.2", 1511 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 1512 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 1513 | "dev": true, 1514 | "requires": { 1515 | "is-arrayish": "^0.2.1" 1516 | } 1517 | }, 1518 | "escape-string-regexp": { 1519 | "version": "1.0.5", 1520 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1521 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 1522 | "dev": true 1523 | }, 1524 | "escodegen": { 1525 | "version": "1.14.3", 1526 | "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", 1527 | "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", 1528 | "dev": true, 1529 | "requires": { 1530 | "esprima": "^4.0.1", 1531 | "estraverse": "^4.2.0", 1532 | "esutils": "^2.0.2", 1533 | "optionator": "^0.8.1", 1534 | "source-map": "~0.6.1" 1535 | } 1536 | }, 1537 | "esprima": { 1538 | "version": "4.0.1", 1539 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 1540 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 1541 | "dev": true 1542 | }, 1543 | "estraverse": { 1544 | "version": "4.3.0", 1545 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", 1546 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", 1547 | "dev": true 1548 | }, 1549 | "esutils": { 1550 | "version": "2.0.3", 1551 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 1552 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 1553 | "dev": true 1554 | }, 1555 | "exec-sh": { 1556 | "version": "0.3.4", 1557 | "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", 1558 | "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", 1559 | "dev": true 1560 | }, 1561 | "execa": { 1562 | "version": "1.0.0", 1563 | "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", 1564 | "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", 1565 | "dev": true, 1566 | "requires": { 1567 | "cross-spawn": "^6.0.0", 1568 | "get-stream": "^4.0.0", 1569 | "is-stream": "^1.1.0", 1570 | "npm-run-path": "^2.0.0", 1571 | "p-finally": "^1.0.0", 1572 | "signal-exit": "^3.0.0", 1573 | "strip-eof": "^1.0.0" 1574 | } 1575 | }, 1576 | "exit": { 1577 | "version": "0.1.2", 1578 | "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", 1579 | "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", 1580 | "dev": true 1581 | }, 1582 | "expand-brackets": { 1583 | "version": "2.1.4", 1584 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 1585 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 1586 | "dev": true, 1587 | "requires": { 1588 | "debug": "^2.3.3", 1589 | "define-property": "^0.2.5", 1590 | "extend-shallow": "^2.0.1", 1591 | "posix-character-classes": "^0.1.0", 1592 | "regex-not": "^1.0.0", 1593 | "snapdragon": "^0.8.1", 1594 | "to-regex": "^3.0.1" 1595 | }, 1596 | "dependencies": { 1597 | "debug": { 1598 | "version": "2.6.9", 1599 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1600 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1601 | "dev": true, 1602 | "requires": { 1603 | "ms": "2.0.0" 1604 | } 1605 | }, 1606 | "define-property": { 1607 | "version": "0.2.5", 1608 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 1609 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 1610 | "dev": true, 1611 | "requires": { 1612 | "is-descriptor": "^0.1.0" 1613 | } 1614 | }, 1615 | "extend-shallow": { 1616 | "version": "2.0.1", 1617 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 1618 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 1619 | "dev": true, 1620 | "requires": { 1621 | "is-extendable": "^0.1.0" 1622 | } 1623 | }, 1624 | "ms": { 1625 | "version": "2.0.0", 1626 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1627 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 1628 | "dev": true 1629 | } 1630 | } 1631 | }, 1632 | "expect": { 1633 | "version": "26.6.2", 1634 | "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", 1635 | "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", 1636 | "dev": true, 1637 | "requires": { 1638 | "@jest/types": "^26.6.2", 1639 | "ansi-styles": "^4.0.0", 1640 | "jest-get-type": "^26.3.0", 1641 | "jest-matcher-utils": "^26.6.2", 1642 | "jest-message-util": "^26.6.2", 1643 | "jest-regex-util": "^26.0.0" 1644 | } 1645 | }, 1646 | "extend": { 1647 | "version": "3.0.2", 1648 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", 1649 | "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", 1650 | "dev": true 1651 | }, 1652 | "extend-shallow": { 1653 | "version": "3.0.2", 1654 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", 1655 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", 1656 | "dev": true, 1657 | "requires": { 1658 | "assign-symbols": "^1.0.0", 1659 | "is-extendable": "^1.0.1" 1660 | }, 1661 | "dependencies": { 1662 | "is-extendable": { 1663 | "version": "1.0.1", 1664 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 1665 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 1666 | "dev": true, 1667 | "requires": { 1668 | "is-plain-object": "^2.0.4" 1669 | } 1670 | } 1671 | } 1672 | }, 1673 | "extglob": { 1674 | "version": "2.0.4", 1675 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 1676 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 1677 | "dev": true, 1678 | "requires": { 1679 | "array-unique": "^0.3.2", 1680 | "define-property": "^1.0.0", 1681 | "expand-brackets": "^2.1.4", 1682 | "extend-shallow": "^2.0.1", 1683 | "fragment-cache": "^0.2.1", 1684 | "regex-not": "^1.0.0", 1685 | "snapdragon": "^0.8.1", 1686 | "to-regex": "^3.0.1" 1687 | }, 1688 | "dependencies": { 1689 | "define-property": { 1690 | "version": "1.0.0", 1691 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 1692 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 1693 | "dev": true, 1694 | "requires": { 1695 | "is-descriptor": "^1.0.0" 1696 | } 1697 | }, 1698 | "extend-shallow": { 1699 | "version": "2.0.1", 1700 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 1701 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 1702 | "dev": true, 1703 | "requires": { 1704 | "is-extendable": "^0.1.0" 1705 | } 1706 | }, 1707 | "is-accessor-descriptor": { 1708 | "version": "1.0.0", 1709 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 1710 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 1711 | "dev": true, 1712 | "requires": { 1713 | "kind-of": "^6.0.0" 1714 | } 1715 | }, 1716 | "is-data-descriptor": { 1717 | "version": "1.0.0", 1718 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 1719 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 1720 | "dev": true, 1721 | "requires": { 1722 | "kind-of": "^6.0.0" 1723 | } 1724 | }, 1725 | "is-descriptor": { 1726 | "version": "1.0.2", 1727 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 1728 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 1729 | "dev": true, 1730 | "requires": { 1731 | "is-accessor-descriptor": "^1.0.0", 1732 | "is-data-descriptor": "^1.0.0", 1733 | "kind-of": "^6.0.2" 1734 | } 1735 | } 1736 | } 1737 | }, 1738 | "extsprintf": { 1739 | "version": "1.3.0", 1740 | "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", 1741 | "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", 1742 | "dev": true 1743 | }, 1744 | "fast-deep-equal": { 1745 | "version": "3.1.3", 1746 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 1747 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 1748 | "dev": true 1749 | }, 1750 | "fast-json-stable-stringify": { 1751 | "version": "2.1.0", 1752 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 1753 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 1754 | "dev": true 1755 | }, 1756 | "fast-levenshtein": { 1757 | "version": "2.0.6", 1758 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1759 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1760 | "dev": true 1761 | }, 1762 | "fb-watchman": { 1763 | "version": "2.0.1", 1764 | "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", 1765 | "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", 1766 | "dev": true, 1767 | "requires": { 1768 | "bser": "2.1.1" 1769 | } 1770 | }, 1771 | "fill-range": { 1772 | "version": "7.0.1", 1773 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 1774 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 1775 | "dev": true, 1776 | "requires": { 1777 | "to-regex-range": "^5.0.1" 1778 | } 1779 | }, 1780 | "find-up": { 1781 | "version": "4.1.0", 1782 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", 1783 | "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", 1784 | "dev": true, 1785 | "requires": { 1786 | "locate-path": "^5.0.0", 1787 | "path-exists": "^4.0.0" 1788 | } 1789 | }, 1790 | "for-in": { 1791 | "version": "1.0.2", 1792 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 1793 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 1794 | "dev": true 1795 | }, 1796 | "forever-agent": { 1797 | "version": "0.6.1", 1798 | "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", 1799 | "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", 1800 | "dev": true 1801 | }, 1802 | "form-data": { 1803 | "version": "2.3.3", 1804 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", 1805 | "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", 1806 | "dev": true, 1807 | "requires": { 1808 | "asynckit": "^0.4.0", 1809 | "combined-stream": "^1.0.6", 1810 | "mime-types": "^2.1.12" 1811 | } 1812 | }, 1813 | "fragment-cache": { 1814 | "version": "0.2.1", 1815 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", 1816 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", 1817 | "dev": true, 1818 | "requires": { 1819 | "map-cache": "^0.2.2" 1820 | } 1821 | }, 1822 | "fs.realpath": { 1823 | "version": "1.0.0", 1824 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1825 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1826 | "dev": true 1827 | }, 1828 | "fsevents": { 1829 | "version": "2.2.1", 1830 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.2.1.tgz", 1831 | "integrity": "sha512-bTLYHSeC0UH/EFXS9KqWnXuOl/wHK5Z/d+ghd5AsFMYN7wIGkUCOJyzy88+wJKkZPGON8u4Z9f6U4FdgURE9qA==", 1832 | "dev": true, 1833 | "optional": true 1834 | }, 1835 | "function-bind": { 1836 | "version": "1.1.1", 1837 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1838 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 1839 | "dev": true 1840 | }, 1841 | "gensync": { 1842 | "version": "1.0.0-beta.2", 1843 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", 1844 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", 1845 | "dev": true 1846 | }, 1847 | "get-caller-file": { 1848 | "version": "2.0.5", 1849 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 1850 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", 1851 | "dev": true 1852 | }, 1853 | "get-package-type": { 1854 | "version": "0.1.0", 1855 | "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", 1856 | "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", 1857 | "dev": true 1858 | }, 1859 | "get-stream": { 1860 | "version": "4.1.0", 1861 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 1862 | "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", 1863 | "dev": true, 1864 | "requires": { 1865 | "pump": "^3.0.0" 1866 | } 1867 | }, 1868 | "get-value": { 1869 | "version": "2.0.6", 1870 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 1871 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", 1872 | "dev": true 1873 | }, 1874 | "getpass": { 1875 | "version": "0.1.7", 1876 | "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", 1877 | "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", 1878 | "dev": true, 1879 | "requires": { 1880 | "assert-plus": "^1.0.0" 1881 | } 1882 | }, 1883 | "glob": { 1884 | "version": "7.1.6", 1885 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 1886 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 1887 | "dev": true, 1888 | "requires": { 1889 | "fs.realpath": "^1.0.0", 1890 | "inflight": "^1.0.4", 1891 | "inherits": "2", 1892 | "minimatch": "^3.0.4", 1893 | "once": "^1.3.0", 1894 | "path-is-absolute": "^1.0.0" 1895 | } 1896 | }, 1897 | "globals": { 1898 | "version": "11.12.0", 1899 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 1900 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 1901 | "dev": true 1902 | }, 1903 | "graceful-fs": { 1904 | "version": "4.2.4", 1905 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 1906 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 1907 | "dev": true 1908 | }, 1909 | "growly": { 1910 | "version": "1.3.0", 1911 | "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", 1912 | "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", 1913 | "dev": true, 1914 | "optional": true 1915 | }, 1916 | "har-schema": { 1917 | "version": "2.0.0", 1918 | "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", 1919 | "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", 1920 | "dev": true 1921 | }, 1922 | "har-validator": { 1923 | "version": "5.1.5", 1924 | "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", 1925 | "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", 1926 | "dev": true, 1927 | "requires": { 1928 | "ajv": "^6.12.3", 1929 | "har-schema": "^2.0.0" 1930 | } 1931 | }, 1932 | "has": { 1933 | "version": "1.0.3", 1934 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1935 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1936 | "dev": true, 1937 | "requires": { 1938 | "function-bind": "^1.1.1" 1939 | } 1940 | }, 1941 | "has-flag": { 1942 | "version": "4.0.0", 1943 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 1944 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 1945 | "dev": true 1946 | }, 1947 | "has-value": { 1948 | "version": "1.0.0", 1949 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", 1950 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", 1951 | "dev": true, 1952 | "requires": { 1953 | "get-value": "^2.0.6", 1954 | "has-values": "^1.0.0", 1955 | "isobject": "^3.0.0" 1956 | } 1957 | }, 1958 | "has-values": { 1959 | "version": "1.0.0", 1960 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", 1961 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", 1962 | "dev": true, 1963 | "requires": { 1964 | "is-number": "^3.0.0", 1965 | "kind-of": "^4.0.0" 1966 | }, 1967 | "dependencies": { 1968 | "is-number": { 1969 | "version": "3.0.0", 1970 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 1971 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 1972 | "dev": true, 1973 | "requires": { 1974 | "kind-of": "^3.0.2" 1975 | }, 1976 | "dependencies": { 1977 | "kind-of": { 1978 | "version": "3.2.2", 1979 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1980 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1981 | "dev": true, 1982 | "requires": { 1983 | "is-buffer": "^1.1.5" 1984 | } 1985 | } 1986 | } 1987 | }, 1988 | "kind-of": { 1989 | "version": "4.0.0", 1990 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 1991 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 1992 | "dev": true, 1993 | "requires": { 1994 | "is-buffer": "^1.1.5" 1995 | } 1996 | } 1997 | } 1998 | }, 1999 | "hosted-git-info": { 2000 | "version": "2.8.8", 2001 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", 2002 | "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", 2003 | "dev": true 2004 | }, 2005 | "html-encoding-sniffer": { 2006 | "version": "2.0.1", 2007 | "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", 2008 | "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", 2009 | "dev": true, 2010 | "requires": { 2011 | "whatwg-encoding": "^1.0.5" 2012 | } 2013 | }, 2014 | "html-escaper": { 2015 | "version": "2.0.2", 2016 | "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", 2017 | "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", 2018 | "dev": true 2019 | }, 2020 | "http-signature": { 2021 | "version": "1.2.0", 2022 | "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", 2023 | "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", 2024 | "dev": true, 2025 | "requires": { 2026 | "assert-plus": "^1.0.0", 2027 | "jsprim": "^1.2.2", 2028 | "sshpk": "^1.7.0" 2029 | } 2030 | }, 2031 | "human-signals": { 2032 | "version": "1.1.1", 2033 | "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", 2034 | "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", 2035 | "dev": true 2036 | }, 2037 | "iconv-lite": { 2038 | "version": "0.4.24", 2039 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 2040 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 2041 | "dev": true, 2042 | "requires": { 2043 | "safer-buffer": ">= 2.1.2 < 3" 2044 | } 2045 | }, 2046 | "import-local": { 2047 | "version": "3.0.2", 2048 | "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", 2049 | "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", 2050 | "dev": true, 2051 | "requires": { 2052 | "pkg-dir": "^4.2.0", 2053 | "resolve-cwd": "^3.0.0" 2054 | } 2055 | }, 2056 | "imurmurhash": { 2057 | "version": "0.1.4", 2058 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 2059 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 2060 | "dev": true 2061 | }, 2062 | "inflight": { 2063 | "version": "1.0.6", 2064 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 2065 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 2066 | "dev": true, 2067 | "requires": { 2068 | "once": "^1.3.0", 2069 | "wrappy": "1" 2070 | } 2071 | }, 2072 | "inherits": { 2073 | "version": "2.0.4", 2074 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 2075 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 2076 | "dev": true 2077 | }, 2078 | "ip-regex": { 2079 | "version": "2.1.0", 2080 | "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", 2081 | "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", 2082 | "dev": true 2083 | }, 2084 | "is-accessor-descriptor": { 2085 | "version": "0.1.6", 2086 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 2087 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 2088 | "dev": true, 2089 | "requires": { 2090 | "kind-of": "^3.0.2" 2091 | }, 2092 | "dependencies": { 2093 | "kind-of": { 2094 | "version": "3.2.2", 2095 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2096 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2097 | "dev": true, 2098 | "requires": { 2099 | "is-buffer": "^1.1.5" 2100 | } 2101 | } 2102 | } 2103 | }, 2104 | "is-arrayish": { 2105 | "version": "0.2.1", 2106 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 2107 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 2108 | "dev": true 2109 | }, 2110 | "is-buffer": { 2111 | "version": "1.1.6", 2112 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 2113 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", 2114 | "dev": true 2115 | }, 2116 | "is-ci": { 2117 | "version": "2.0.0", 2118 | "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", 2119 | "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", 2120 | "dev": true, 2121 | "requires": { 2122 | "ci-info": "^2.0.0" 2123 | } 2124 | }, 2125 | "is-core-module": { 2126 | "version": "2.2.0", 2127 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", 2128 | "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", 2129 | "dev": true, 2130 | "requires": { 2131 | "has": "^1.0.3" 2132 | } 2133 | }, 2134 | "is-data-descriptor": { 2135 | "version": "0.1.4", 2136 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 2137 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 2138 | "dev": true, 2139 | "requires": { 2140 | "kind-of": "^3.0.2" 2141 | }, 2142 | "dependencies": { 2143 | "kind-of": { 2144 | "version": "3.2.2", 2145 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2146 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2147 | "dev": true, 2148 | "requires": { 2149 | "is-buffer": "^1.1.5" 2150 | } 2151 | } 2152 | } 2153 | }, 2154 | "is-descriptor": { 2155 | "version": "0.1.6", 2156 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 2157 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 2158 | "dev": true, 2159 | "requires": { 2160 | "is-accessor-descriptor": "^0.1.6", 2161 | "is-data-descriptor": "^0.1.4", 2162 | "kind-of": "^5.0.0" 2163 | }, 2164 | "dependencies": { 2165 | "kind-of": { 2166 | "version": "5.1.0", 2167 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 2168 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 2169 | "dev": true 2170 | } 2171 | } 2172 | }, 2173 | "is-docker": { 2174 | "version": "2.1.1", 2175 | "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", 2176 | "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", 2177 | "dev": true, 2178 | "optional": true 2179 | }, 2180 | "is-extendable": { 2181 | "version": "0.1.1", 2182 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 2183 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 2184 | "dev": true 2185 | }, 2186 | "is-fullwidth-code-point": { 2187 | "version": "3.0.0", 2188 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 2189 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 2190 | "dev": true 2191 | }, 2192 | "is-generator-fn": { 2193 | "version": "2.1.0", 2194 | "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", 2195 | "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", 2196 | "dev": true 2197 | }, 2198 | "is-number": { 2199 | "version": "7.0.0", 2200 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 2201 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 2202 | "dev": true 2203 | }, 2204 | "is-plain-object": { 2205 | "version": "2.0.4", 2206 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", 2207 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", 2208 | "dev": true, 2209 | "requires": { 2210 | "isobject": "^3.0.1" 2211 | } 2212 | }, 2213 | "is-potential-custom-element-name": { 2214 | "version": "1.0.0", 2215 | "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz", 2216 | "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", 2217 | "dev": true 2218 | }, 2219 | "is-stream": { 2220 | "version": "1.1.0", 2221 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 2222 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 2223 | "dev": true 2224 | }, 2225 | "is-typedarray": { 2226 | "version": "1.0.0", 2227 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", 2228 | "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", 2229 | "dev": true 2230 | }, 2231 | "is-windows": { 2232 | "version": "1.0.2", 2233 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 2234 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", 2235 | "dev": true 2236 | }, 2237 | "is-wsl": { 2238 | "version": "2.2.0", 2239 | "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", 2240 | "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", 2241 | "dev": true, 2242 | "optional": true, 2243 | "requires": { 2244 | "is-docker": "^2.0.0" 2245 | } 2246 | }, 2247 | "isarray": { 2248 | "version": "1.0.0", 2249 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 2250 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 2251 | "dev": true 2252 | }, 2253 | "isexe": { 2254 | "version": "2.0.0", 2255 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 2256 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 2257 | "dev": true 2258 | }, 2259 | "isobject": { 2260 | "version": "3.0.1", 2261 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2262 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2263 | "dev": true 2264 | }, 2265 | "isstream": { 2266 | "version": "0.1.2", 2267 | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", 2268 | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", 2269 | "dev": true 2270 | }, 2271 | "istanbul-lib-coverage": { 2272 | "version": "3.0.0", 2273 | "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", 2274 | "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", 2275 | "dev": true 2276 | }, 2277 | "istanbul-lib-instrument": { 2278 | "version": "4.0.3", 2279 | "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", 2280 | "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", 2281 | "dev": true, 2282 | "requires": { 2283 | "@babel/core": "^7.7.5", 2284 | "@istanbuljs/schema": "^0.1.2", 2285 | "istanbul-lib-coverage": "^3.0.0", 2286 | "semver": "^6.3.0" 2287 | }, 2288 | "dependencies": { 2289 | "semver": { 2290 | "version": "6.3.0", 2291 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 2292 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 2293 | "dev": true 2294 | } 2295 | } 2296 | }, 2297 | "istanbul-lib-report": { 2298 | "version": "3.0.0", 2299 | "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", 2300 | "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", 2301 | "dev": true, 2302 | "requires": { 2303 | "istanbul-lib-coverage": "^3.0.0", 2304 | "make-dir": "^3.0.0", 2305 | "supports-color": "^7.1.0" 2306 | } 2307 | }, 2308 | "istanbul-lib-source-maps": { 2309 | "version": "4.0.0", 2310 | "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", 2311 | "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", 2312 | "dev": true, 2313 | "requires": { 2314 | "debug": "^4.1.1", 2315 | "istanbul-lib-coverage": "^3.0.0", 2316 | "source-map": "^0.6.1" 2317 | } 2318 | }, 2319 | "istanbul-reports": { 2320 | "version": "3.0.2", 2321 | "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", 2322 | "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", 2323 | "dev": true, 2324 | "requires": { 2325 | "html-escaper": "^2.0.0", 2326 | "istanbul-lib-report": "^3.0.0" 2327 | } 2328 | }, 2329 | "jest": { 2330 | "version": "26.6.3", 2331 | "resolved": "https://registry.npmjs.org/jest/-/jest-26.6.3.tgz", 2332 | "integrity": "sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q==", 2333 | "dev": true, 2334 | "requires": { 2335 | "@jest/core": "^26.6.3", 2336 | "import-local": "^3.0.2", 2337 | "jest-cli": "^26.6.3" 2338 | }, 2339 | "dependencies": { 2340 | "jest-cli": { 2341 | "version": "26.6.3", 2342 | "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz", 2343 | "integrity": "sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg==", 2344 | "dev": true, 2345 | "requires": { 2346 | "@jest/core": "^26.6.3", 2347 | "@jest/test-result": "^26.6.2", 2348 | "@jest/types": "^26.6.2", 2349 | "chalk": "^4.0.0", 2350 | "exit": "^0.1.2", 2351 | "graceful-fs": "^4.2.4", 2352 | "import-local": "^3.0.2", 2353 | "is-ci": "^2.0.0", 2354 | "jest-config": "^26.6.3", 2355 | "jest-util": "^26.6.2", 2356 | "jest-validate": "^26.6.2", 2357 | "prompts": "^2.0.1", 2358 | "yargs": "^15.4.1" 2359 | } 2360 | } 2361 | } 2362 | }, 2363 | "jest-changed-files": { 2364 | "version": "26.6.2", 2365 | "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz", 2366 | "integrity": "sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ==", 2367 | "dev": true, 2368 | "requires": { 2369 | "@jest/types": "^26.6.2", 2370 | "execa": "^4.0.0", 2371 | "throat": "^5.0.0" 2372 | }, 2373 | "dependencies": { 2374 | "cross-spawn": { 2375 | "version": "7.0.3", 2376 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 2377 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 2378 | "dev": true, 2379 | "requires": { 2380 | "path-key": "^3.1.0", 2381 | "shebang-command": "^2.0.0", 2382 | "which": "^2.0.1" 2383 | } 2384 | }, 2385 | "execa": { 2386 | "version": "4.1.0", 2387 | "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", 2388 | "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", 2389 | "dev": true, 2390 | "requires": { 2391 | "cross-spawn": "^7.0.0", 2392 | "get-stream": "^5.0.0", 2393 | "human-signals": "^1.1.1", 2394 | "is-stream": "^2.0.0", 2395 | "merge-stream": "^2.0.0", 2396 | "npm-run-path": "^4.0.0", 2397 | "onetime": "^5.1.0", 2398 | "signal-exit": "^3.0.2", 2399 | "strip-final-newline": "^2.0.0" 2400 | } 2401 | }, 2402 | "get-stream": { 2403 | "version": "5.2.0", 2404 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", 2405 | "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", 2406 | "dev": true, 2407 | "requires": { 2408 | "pump": "^3.0.0" 2409 | } 2410 | }, 2411 | "is-stream": { 2412 | "version": "2.0.0", 2413 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", 2414 | "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", 2415 | "dev": true 2416 | }, 2417 | "npm-run-path": { 2418 | "version": "4.0.1", 2419 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", 2420 | "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", 2421 | "dev": true, 2422 | "requires": { 2423 | "path-key": "^3.0.0" 2424 | } 2425 | }, 2426 | "path-key": { 2427 | "version": "3.1.1", 2428 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 2429 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 2430 | "dev": true 2431 | }, 2432 | "shebang-command": { 2433 | "version": "2.0.0", 2434 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 2435 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 2436 | "dev": true, 2437 | "requires": { 2438 | "shebang-regex": "^3.0.0" 2439 | } 2440 | }, 2441 | "shebang-regex": { 2442 | "version": "3.0.0", 2443 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 2444 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 2445 | "dev": true 2446 | }, 2447 | "which": { 2448 | "version": "2.0.2", 2449 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 2450 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 2451 | "dev": true, 2452 | "requires": { 2453 | "isexe": "^2.0.0" 2454 | } 2455 | } 2456 | } 2457 | }, 2458 | "jest-config": { 2459 | "version": "26.6.3", 2460 | "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz", 2461 | "integrity": "sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==", 2462 | "dev": true, 2463 | "requires": { 2464 | "@babel/core": "^7.1.0", 2465 | "@jest/test-sequencer": "^26.6.3", 2466 | "@jest/types": "^26.6.2", 2467 | "babel-jest": "^26.6.3", 2468 | "chalk": "^4.0.0", 2469 | "deepmerge": "^4.2.2", 2470 | "glob": "^7.1.1", 2471 | "graceful-fs": "^4.2.4", 2472 | "jest-environment-jsdom": "^26.6.2", 2473 | "jest-environment-node": "^26.6.2", 2474 | "jest-get-type": "^26.3.0", 2475 | "jest-jasmine2": "^26.6.3", 2476 | "jest-regex-util": "^26.0.0", 2477 | "jest-resolve": "^26.6.2", 2478 | "jest-util": "^26.6.2", 2479 | "jest-validate": "^26.6.2", 2480 | "micromatch": "^4.0.2", 2481 | "pretty-format": "^26.6.2" 2482 | } 2483 | }, 2484 | "jest-diff": { 2485 | "version": "26.6.2", 2486 | "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", 2487 | "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", 2488 | "dev": true, 2489 | "requires": { 2490 | "chalk": "^4.0.0", 2491 | "diff-sequences": "^26.6.2", 2492 | "jest-get-type": "^26.3.0", 2493 | "pretty-format": "^26.6.2" 2494 | } 2495 | }, 2496 | "jest-docblock": { 2497 | "version": "26.0.0", 2498 | "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", 2499 | "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", 2500 | "dev": true, 2501 | "requires": { 2502 | "detect-newline": "^3.0.0" 2503 | } 2504 | }, 2505 | "jest-each": { 2506 | "version": "26.6.2", 2507 | "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz", 2508 | "integrity": "sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==", 2509 | "dev": true, 2510 | "requires": { 2511 | "@jest/types": "^26.6.2", 2512 | "chalk": "^4.0.0", 2513 | "jest-get-type": "^26.3.0", 2514 | "jest-util": "^26.6.2", 2515 | "pretty-format": "^26.6.2" 2516 | } 2517 | }, 2518 | "jest-environment-jsdom": { 2519 | "version": "26.6.2", 2520 | "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", 2521 | "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", 2522 | "dev": true, 2523 | "requires": { 2524 | "@jest/environment": "^26.6.2", 2525 | "@jest/fake-timers": "^26.6.2", 2526 | "@jest/types": "^26.6.2", 2527 | "@types/node": "*", 2528 | "jest-mock": "^26.6.2", 2529 | "jest-util": "^26.6.2", 2530 | "jsdom": "^16.4.0" 2531 | } 2532 | }, 2533 | "jest-environment-node": { 2534 | "version": "26.6.2", 2535 | "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", 2536 | "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", 2537 | "dev": true, 2538 | "requires": { 2539 | "@jest/environment": "^26.6.2", 2540 | "@jest/fake-timers": "^26.6.2", 2541 | "@jest/types": "^26.6.2", 2542 | "@types/node": "*", 2543 | "jest-mock": "^26.6.2", 2544 | "jest-util": "^26.6.2" 2545 | } 2546 | }, 2547 | "jest-get-type": { 2548 | "version": "26.3.0", 2549 | "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", 2550 | "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", 2551 | "dev": true 2552 | }, 2553 | "jest-haste-map": { 2554 | "version": "26.6.2", 2555 | "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", 2556 | "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", 2557 | "dev": true, 2558 | "requires": { 2559 | "@jest/types": "^26.6.2", 2560 | "@types/graceful-fs": "^4.1.2", 2561 | "@types/node": "*", 2562 | "anymatch": "^3.0.3", 2563 | "fb-watchman": "^2.0.0", 2564 | "fsevents": "^2.1.2", 2565 | "graceful-fs": "^4.2.4", 2566 | "jest-regex-util": "^26.0.0", 2567 | "jest-serializer": "^26.6.2", 2568 | "jest-util": "^26.6.2", 2569 | "jest-worker": "^26.6.2", 2570 | "micromatch": "^4.0.2", 2571 | "sane": "^4.0.3", 2572 | "walker": "^1.0.7" 2573 | } 2574 | }, 2575 | "jest-jasmine2": { 2576 | "version": "26.6.3", 2577 | "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz", 2578 | "integrity": "sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==", 2579 | "dev": true, 2580 | "requires": { 2581 | "@babel/traverse": "^7.1.0", 2582 | "@jest/environment": "^26.6.2", 2583 | "@jest/source-map": "^26.6.2", 2584 | "@jest/test-result": "^26.6.2", 2585 | "@jest/types": "^26.6.2", 2586 | "@types/node": "*", 2587 | "chalk": "^4.0.0", 2588 | "co": "^4.6.0", 2589 | "expect": "^26.6.2", 2590 | "is-generator-fn": "^2.0.0", 2591 | "jest-each": "^26.6.2", 2592 | "jest-matcher-utils": "^26.6.2", 2593 | "jest-message-util": "^26.6.2", 2594 | "jest-runtime": "^26.6.3", 2595 | "jest-snapshot": "^26.6.2", 2596 | "jest-util": "^26.6.2", 2597 | "pretty-format": "^26.6.2", 2598 | "throat": "^5.0.0" 2599 | } 2600 | }, 2601 | "jest-leak-detector": { 2602 | "version": "26.6.2", 2603 | "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz", 2604 | "integrity": "sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==", 2605 | "dev": true, 2606 | "requires": { 2607 | "jest-get-type": "^26.3.0", 2608 | "pretty-format": "^26.6.2" 2609 | } 2610 | }, 2611 | "jest-matcher-utils": { 2612 | "version": "26.6.2", 2613 | "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", 2614 | "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", 2615 | "dev": true, 2616 | "requires": { 2617 | "chalk": "^4.0.0", 2618 | "jest-diff": "^26.6.2", 2619 | "jest-get-type": "^26.3.0", 2620 | "pretty-format": "^26.6.2" 2621 | } 2622 | }, 2623 | "jest-message-util": { 2624 | "version": "26.6.2", 2625 | "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", 2626 | "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", 2627 | "dev": true, 2628 | "requires": { 2629 | "@babel/code-frame": "^7.0.0", 2630 | "@jest/types": "^26.6.2", 2631 | "@types/stack-utils": "^2.0.0", 2632 | "chalk": "^4.0.0", 2633 | "graceful-fs": "^4.2.4", 2634 | "micromatch": "^4.0.2", 2635 | "pretty-format": "^26.6.2", 2636 | "slash": "^3.0.0", 2637 | "stack-utils": "^2.0.2" 2638 | } 2639 | }, 2640 | "jest-mock": { 2641 | "version": "26.6.2", 2642 | "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", 2643 | "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", 2644 | "dev": true, 2645 | "requires": { 2646 | "@jest/types": "^26.6.2", 2647 | "@types/node": "*" 2648 | } 2649 | }, 2650 | "jest-pnp-resolver": { 2651 | "version": "1.2.2", 2652 | "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", 2653 | "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", 2654 | "dev": true 2655 | }, 2656 | "jest-regex-util": { 2657 | "version": "26.0.0", 2658 | "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", 2659 | "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", 2660 | "dev": true 2661 | }, 2662 | "jest-resolve": { 2663 | "version": "26.6.2", 2664 | "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", 2665 | "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", 2666 | "dev": true, 2667 | "requires": { 2668 | "@jest/types": "^26.6.2", 2669 | "chalk": "^4.0.0", 2670 | "graceful-fs": "^4.2.4", 2671 | "jest-pnp-resolver": "^1.2.2", 2672 | "jest-util": "^26.6.2", 2673 | "read-pkg-up": "^7.0.1", 2674 | "resolve": "^1.18.1", 2675 | "slash": "^3.0.0" 2676 | } 2677 | }, 2678 | "jest-resolve-dependencies": { 2679 | "version": "26.6.3", 2680 | "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz", 2681 | "integrity": "sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg==", 2682 | "dev": true, 2683 | "requires": { 2684 | "@jest/types": "^26.6.2", 2685 | "jest-regex-util": "^26.0.0", 2686 | "jest-snapshot": "^26.6.2" 2687 | } 2688 | }, 2689 | "jest-runner": { 2690 | "version": "26.6.3", 2691 | "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz", 2692 | "integrity": "sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==", 2693 | "dev": true, 2694 | "requires": { 2695 | "@jest/console": "^26.6.2", 2696 | "@jest/environment": "^26.6.2", 2697 | "@jest/test-result": "^26.6.2", 2698 | "@jest/types": "^26.6.2", 2699 | "@types/node": "*", 2700 | "chalk": "^4.0.0", 2701 | "emittery": "^0.7.1", 2702 | "exit": "^0.1.2", 2703 | "graceful-fs": "^4.2.4", 2704 | "jest-config": "^26.6.3", 2705 | "jest-docblock": "^26.0.0", 2706 | "jest-haste-map": "^26.6.2", 2707 | "jest-leak-detector": "^26.6.2", 2708 | "jest-message-util": "^26.6.2", 2709 | "jest-resolve": "^26.6.2", 2710 | "jest-runtime": "^26.6.3", 2711 | "jest-util": "^26.6.2", 2712 | "jest-worker": "^26.6.2", 2713 | "source-map-support": "^0.5.6", 2714 | "throat": "^5.0.0" 2715 | } 2716 | }, 2717 | "jest-runtime": { 2718 | "version": "26.6.3", 2719 | "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz", 2720 | "integrity": "sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==", 2721 | "dev": true, 2722 | "requires": { 2723 | "@jest/console": "^26.6.2", 2724 | "@jest/environment": "^26.6.2", 2725 | "@jest/fake-timers": "^26.6.2", 2726 | "@jest/globals": "^26.6.2", 2727 | "@jest/source-map": "^26.6.2", 2728 | "@jest/test-result": "^26.6.2", 2729 | "@jest/transform": "^26.6.2", 2730 | "@jest/types": "^26.6.2", 2731 | "@types/yargs": "^15.0.0", 2732 | "chalk": "^4.0.0", 2733 | "cjs-module-lexer": "^0.6.0", 2734 | "collect-v8-coverage": "^1.0.0", 2735 | "exit": "^0.1.2", 2736 | "glob": "^7.1.3", 2737 | "graceful-fs": "^4.2.4", 2738 | "jest-config": "^26.6.3", 2739 | "jest-haste-map": "^26.6.2", 2740 | "jest-message-util": "^26.6.2", 2741 | "jest-mock": "^26.6.2", 2742 | "jest-regex-util": "^26.0.0", 2743 | "jest-resolve": "^26.6.2", 2744 | "jest-snapshot": "^26.6.2", 2745 | "jest-util": "^26.6.2", 2746 | "jest-validate": "^26.6.2", 2747 | "slash": "^3.0.0", 2748 | "strip-bom": "^4.0.0", 2749 | "yargs": "^15.4.1" 2750 | } 2751 | }, 2752 | "jest-serializer": { 2753 | "version": "26.6.2", 2754 | "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", 2755 | "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", 2756 | "dev": true, 2757 | "requires": { 2758 | "@types/node": "*", 2759 | "graceful-fs": "^4.2.4" 2760 | } 2761 | }, 2762 | "jest-snapshot": { 2763 | "version": "26.6.2", 2764 | "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz", 2765 | "integrity": "sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==", 2766 | "dev": true, 2767 | "requires": { 2768 | "@babel/types": "^7.0.0", 2769 | "@jest/types": "^26.6.2", 2770 | "@types/babel__traverse": "^7.0.4", 2771 | "@types/prettier": "^2.0.0", 2772 | "chalk": "^4.0.0", 2773 | "expect": "^26.6.2", 2774 | "graceful-fs": "^4.2.4", 2775 | "jest-diff": "^26.6.2", 2776 | "jest-get-type": "^26.3.0", 2777 | "jest-haste-map": "^26.6.2", 2778 | "jest-matcher-utils": "^26.6.2", 2779 | "jest-message-util": "^26.6.2", 2780 | "jest-resolve": "^26.6.2", 2781 | "natural-compare": "^1.4.0", 2782 | "pretty-format": "^26.6.2", 2783 | "semver": "^7.3.2" 2784 | }, 2785 | "dependencies": { 2786 | "semver": { 2787 | "version": "7.3.4", 2788 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", 2789 | "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", 2790 | "dev": true, 2791 | "requires": { 2792 | "lru-cache": "^6.0.0" 2793 | } 2794 | } 2795 | } 2796 | }, 2797 | "jest-util": { 2798 | "version": "26.6.2", 2799 | "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", 2800 | "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", 2801 | "dev": true, 2802 | "requires": { 2803 | "@jest/types": "^26.6.2", 2804 | "@types/node": "*", 2805 | "chalk": "^4.0.0", 2806 | "graceful-fs": "^4.2.4", 2807 | "is-ci": "^2.0.0", 2808 | "micromatch": "^4.0.2" 2809 | } 2810 | }, 2811 | "jest-validate": { 2812 | "version": "26.6.2", 2813 | "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz", 2814 | "integrity": "sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==", 2815 | "dev": true, 2816 | "requires": { 2817 | "@jest/types": "^26.6.2", 2818 | "camelcase": "^6.0.0", 2819 | "chalk": "^4.0.0", 2820 | "jest-get-type": "^26.3.0", 2821 | "leven": "^3.1.0", 2822 | "pretty-format": "^26.6.2" 2823 | }, 2824 | "dependencies": { 2825 | "camelcase": { 2826 | "version": "6.2.0", 2827 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", 2828 | "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", 2829 | "dev": true 2830 | } 2831 | } 2832 | }, 2833 | "jest-watcher": { 2834 | "version": "26.6.2", 2835 | "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz", 2836 | "integrity": "sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ==", 2837 | "dev": true, 2838 | "requires": { 2839 | "@jest/test-result": "^26.6.2", 2840 | "@jest/types": "^26.6.2", 2841 | "@types/node": "*", 2842 | "ansi-escapes": "^4.2.1", 2843 | "chalk": "^4.0.0", 2844 | "jest-util": "^26.6.2", 2845 | "string-length": "^4.0.1" 2846 | } 2847 | }, 2848 | "jest-worker": { 2849 | "version": "26.6.2", 2850 | "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", 2851 | "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", 2852 | "dev": true, 2853 | "requires": { 2854 | "@types/node": "*", 2855 | "merge-stream": "^2.0.0", 2856 | "supports-color": "^7.0.0" 2857 | } 2858 | }, 2859 | "js-tokens": { 2860 | "version": "4.0.0", 2861 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 2862 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 2863 | "dev": true 2864 | }, 2865 | "js-yaml": { 2866 | "version": "3.14.1", 2867 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", 2868 | "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", 2869 | "dev": true, 2870 | "requires": { 2871 | "argparse": "^1.0.7", 2872 | "esprima": "^4.0.0" 2873 | } 2874 | }, 2875 | "jsbn": { 2876 | "version": "0.1.1", 2877 | "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", 2878 | "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", 2879 | "dev": true 2880 | }, 2881 | "jsdom": { 2882 | "version": "16.4.0", 2883 | "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.4.0.tgz", 2884 | "integrity": "sha512-lYMm3wYdgPhrl7pDcRmvzPhhrGVBeVhPIqeHjzeiHN3DFmD1RBpbExbi8vU7BJdH8VAZYovR8DMt0PNNDM7k8w==", 2885 | "dev": true, 2886 | "requires": { 2887 | "abab": "^2.0.3", 2888 | "acorn": "^7.1.1", 2889 | "acorn-globals": "^6.0.0", 2890 | "cssom": "^0.4.4", 2891 | "cssstyle": "^2.2.0", 2892 | "data-urls": "^2.0.0", 2893 | "decimal.js": "^10.2.0", 2894 | "domexception": "^2.0.1", 2895 | "escodegen": "^1.14.1", 2896 | "html-encoding-sniffer": "^2.0.1", 2897 | "is-potential-custom-element-name": "^1.0.0", 2898 | "nwsapi": "^2.2.0", 2899 | "parse5": "5.1.1", 2900 | "request": "^2.88.2", 2901 | "request-promise-native": "^1.0.8", 2902 | "saxes": "^5.0.0", 2903 | "symbol-tree": "^3.2.4", 2904 | "tough-cookie": "^3.0.1", 2905 | "w3c-hr-time": "^1.0.2", 2906 | "w3c-xmlserializer": "^2.0.0", 2907 | "webidl-conversions": "^6.1.0", 2908 | "whatwg-encoding": "^1.0.5", 2909 | "whatwg-mimetype": "^2.3.0", 2910 | "whatwg-url": "^8.0.0", 2911 | "ws": "^7.2.3", 2912 | "xml-name-validator": "^3.0.0" 2913 | } 2914 | }, 2915 | "jsesc": { 2916 | "version": "2.5.2", 2917 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 2918 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 2919 | "dev": true 2920 | }, 2921 | "json-parse-even-better-errors": { 2922 | "version": "2.3.1", 2923 | "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", 2924 | "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", 2925 | "dev": true 2926 | }, 2927 | "json-schema": { 2928 | "version": "0.2.3", 2929 | "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", 2930 | "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", 2931 | "dev": true 2932 | }, 2933 | "json-schema-traverse": { 2934 | "version": "0.4.1", 2935 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 2936 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 2937 | "dev": true 2938 | }, 2939 | "json-stringify-safe": { 2940 | "version": "5.0.1", 2941 | "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", 2942 | "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", 2943 | "dev": true 2944 | }, 2945 | "json5": { 2946 | "version": "2.1.3", 2947 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", 2948 | "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", 2949 | "dev": true, 2950 | "requires": { 2951 | "minimist": "^1.2.5" 2952 | } 2953 | }, 2954 | "jsprim": { 2955 | "version": "1.4.1", 2956 | "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", 2957 | "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", 2958 | "dev": true, 2959 | "requires": { 2960 | "assert-plus": "1.0.0", 2961 | "extsprintf": "1.3.0", 2962 | "json-schema": "0.2.3", 2963 | "verror": "1.10.0" 2964 | } 2965 | }, 2966 | "kind-of": { 2967 | "version": "6.0.3", 2968 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 2969 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 2970 | "dev": true 2971 | }, 2972 | "kleur": { 2973 | "version": "3.0.3", 2974 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", 2975 | "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", 2976 | "dev": true 2977 | }, 2978 | "leven": { 2979 | "version": "3.1.0", 2980 | "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", 2981 | "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", 2982 | "dev": true 2983 | }, 2984 | "levn": { 2985 | "version": "0.3.0", 2986 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 2987 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 2988 | "dev": true, 2989 | "requires": { 2990 | "prelude-ls": "~1.1.2", 2991 | "type-check": "~0.3.2" 2992 | } 2993 | }, 2994 | "lines-and-columns": { 2995 | "version": "1.1.6", 2996 | "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", 2997 | "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", 2998 | "dev": true 2999 | }, 3000 | "locate-path": { 3001 | "version": "5.0.0", 3002 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", 3003 | "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", 3004 | "dev": true, 3005 | "requires": { 3006 | "p-locate": "^4.1.0" 3007 | } 3008 | }, 3009 | "lodash": { 3010 | "version": "4.17.20", 3011 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", 3012 | "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", 3013 | "dev": true 3014 | }, 3015 | "lodash.memoize": { 3016 | "version": "4.1.2", 3017 | "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", 3018 | "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", 3019 | "dev": true 3020 | }, 3021 | "lodash.sortby": { 3022 | "version": "4.7.0", 3023 | "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", 3024 | "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", 3025 | "dev": true 3026 | }, 3027 | "lru-cache": { 3028 | "version": "6.0.0", 3029 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 3030 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 3031 | "dev": true, 3032 | "requires": { 3033 | "yallist": "^4.0.0" 3034 | } 3035 | }, 3036 | "make-dir": { 3037 | "version": "3.1.0", 3038 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", 3039 | "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", 3040 | "dev": true, 3041 | "requires": { 3042 | "semver": "^6.0.0" 3043 | }, 3044 | "dependencies": { 3045 | "semver": { 3046 | "version": "6.3.0", 3047 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3048 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 3049 | "dev": true 3050 | } 3051 | } 3052 | }, 3053 | "make-error": { 3054 | "version": "1.3.6", 3055 | "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", 3056 | "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", 3057 | "dev": true 3058 | }, 3059 | "makeerror": { 3060 | "version": "1.0.11", 3061 | "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", 3062 | "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", 3063 | "dev": true, 3064 | "requires": { 3065 | "tmpl": "1.0.x" 3066 | } 3067 | }, 3068 | "map-cache": { 3069 | "version": "0.2.2", 3070 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", 3071 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", 3072 | "dev": true 3073 | }, 3074 | "map-visit": { 3075 | "version": "1.0.0", 3076 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", 3077 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", 3078 | "dev": true, 3079 | "requires": { 3080 | "object-visit": "^1.0.0" 3081 | } 3082 | }, 3083 | "merge-stream": { 3084 | "version": "2.0.0", 3085 | "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", 3086 | "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", 3087 | "dev": true 3088 | }, 3089 | "micromatch": { 3090 | "version": "4.0.2", 3091 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", 3092 | "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", 3093 | "dev": true, 3094 | "requires": { 3095 | "braces": "^3.0.1", 3096 | "picomatch": "^2.0.5" 3097 | } 3098 | }, 3099 | "mime-db": { 3100 | "version": "1.44.0", 3101 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", 3102 | "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", 3103 | "dev": true 3104 | }, 3105 | "mime-types": { 3106 | "version": "2.1.27", 3107 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", 3108 | "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", 3109 | "dev": true, 3110 | "requires": { 3111 | "mime-db": "1.44.0" 3112 | } 3113 | }, 3114 | "mimic-fn": { 3115 | "version": "2.1.0", 3116 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", 3117 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", 3118 | "dev": true 3119 | }, 3120 | "minimatch": { 3121 | "version": "3.0.4", 3122 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 3123 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 3124 | "dev": true, 3125 | "requires": { 3126 | "brace-expansion": "^1.1.7" 3127 | } 3128 | }, 3129 | "minimist": { 3130 | "version": "1.2.5", 3131 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 3132 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", 3133 | "dev": true 3134 | }, 3135 | "mixin-deep": { 3136 | "version": "1.3.2", 3137 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", 3138 | "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", 3139 | "dev": true, 3140 | "requires": { 3141 | "for-in": "^1.0.2", 3142 | "is-extendable": "^1.0.1" 3143 | }, 3144 | "dependencies": { 3145 | "is-extendable": { 3146 | "version": "1.0.1", 3147 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 3148 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 3149 | "dev": true, 3150 | "requires": { 3151 | "is-plain-object": "^2.0.4" 3152 | } 3153 | } 3154 | } 3155 | }, 3156 | "mkdirp": { 3157 | "version": "1.0.4", 3158 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", 3159 | "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", 3160 | "dev": true 3161 | }, 3162 | "ms": { 3163 | "version": "2.1.2", 3164 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 3165 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 3166 | "dev": true 3167 | }, 3168 | "nanomatch": { 3169 | "version": "1.2.13", 3170 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", 3171 | "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", 3172 | "dev": true, 3173 | "requires": { 3174 | "arr-diff": "^4.0.0", 3175 | "array-unique": "^0.3.2", 3176 | "define-property": "^2.0.2", 3177 | "extend-shallow": "^3.0.2", 3178 | "fragment-cache": "^0.2.1", 3179 | "is-windows": "^1.0.2", 3180 | "kind-of": "^6.0.2", 3181 | "object.pick": "^1.3.0", 3182 | "regex-not": "^1.0.0", 3183 | "snapdragon": "^0.8.1", 3184 | "to-regex": "^3.0.1" 3185 | } 3186 | }, 3187 | "natural-compare": { 3188 | "version": "1.4.0", 3189 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 3190 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 3191 | "dev": true 3192 | }, 3193 | "nice-try": { 3194 | "version": "1.0.5", 3195 | "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", 3196 | "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", 3197 | "dev": true 3198 | }, 3199 | "node-int64": { 3200 | "version": "0.4.0", 3201 | "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", 3202 | "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", 3203 | "dev": true 3204 | }, 3205 | "node-modules-regexp": { 3206 | "version": "1.0.0", 3207 | "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", 3208 | "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", 3209 | "dev": true 3210 | }, 3211 | "node-notifier": { 3212 | "version": "8.0.1", 3213 | "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.1.tgz", 3214 | "integrity": "sha512-BvEXF+UmsnAfYfoapKM9nGxnP+Wn7P91YfXmrKnfcYCx6VBeoN5Ez5Ogck6I8Bi5k4RlpqRYaw75pAwzX9OphA==", 3215 | "dev": true, 3216 | "optional": true, 3217 | "requires": { 3218 | "growly": "^1.3.0", 3219 | "is-wsl": "^2.2.0", 3220 | "semver": "^7.3.2", 3221 | "shellwords": "^0.1.1", 3222 | "uuid": "^8.3.0", 3223 | "which": "^2.0.2" 3224 | }, 3225 | "dependencies": { 3226 | "semver": { 3227 | "version": "7.3.4", 3228 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", 3229 | "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", 3230 | "dev": true, 3231 | "optional": true, 3232 | "requires": { 3233 | "lru-cache": "^6.0.0" 3234 | } 3235 | }, 3236 | "which": { 3237 | "version": "2.0.2", 3238 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 3239 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 3240 | "dev": true, 3241 | "optional": true, 3242 | "requires": { 3243 | "isexe": "^2.0.0" 3244 | } 3245 | } 3246 | } 3247 | }, 3248 | "normalize-package-data": { 3249 | "version": "2.5.0", 3250 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 3251 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 3252 | "dev": true, 3253 | "requires": { 3254 | "hosted-git-info": "^2.1.4", 3255 | "resolve": "^1.10.0", 3256 | "semver": "2 || 3 || 4 || 5", 3257 | "validate-npm-package-license": "^3.0.1" 3258 | } 3259 | }, 3260 | "normalize-path": { 3261 | "version": "3.0.0", 3262 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 3263 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 3264 | "dev": true 3265 | }, 3266 | "npm-run-path": { 3267 | "version": "2.0.2", 3268 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", 3269 | "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", 3270 | "dev": true, 3271 | "requires": { 3272 | "path-key": "^2.0.0" 3273 | } 3274 | }, 3275 | "nwsapi": { 3276 | "version": "2.2.0", 3277 | "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", 3278 | "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", 3279 | "dev": true 3280 | }, 3281 | "oauth-sign": { 3282 | "version": "0.9.0", 3283 | "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", 3284 | "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", 3285 | "dev": true 3286 | }, 3287 | "object-copy": { 3288 | "version": "0.1.0", 3289 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", 3290 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", 3291 | "dev": true, 3292 | "requires": { 3293 | "copy-descriptor": "^0.1.0", 3294 | "define-property": "^0.2.5", 3295 | "kind-of": "^3.0.3" 3296 | }, 3297 | "dependencies": { 3298 | "define-property": { 3299 | "version": "0.2.5", 3300 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3301 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3302 | "dev": true, 3303 | "requires": { 3304 | "is-descriptor": "^0.1.0" 3305 | } 3306 | }, 3307 | "kind-of": { 3308 | "version": "3.2.2", 3309 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3310 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3311 | "dev": true, 3312 | "requires": { 3313 | "is-buffer": "^1.1.5" 3314 | } 3315 | } 3316 | } 3317 | }, 3318 | "object-visit": { 3319 | "version": "1.0.1", 3320 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", 3321 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", 3322 | "dev": true, 3323 | "requires": { 3324 | "isobject": "^3.0.0" 3325 | } 3326 | }, 3327 | "object.pick": { 3328 | "version": "1.3.0", 3329 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", 3330 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", 3331 | "dev": true, 3332 | "requires": { 3333 | "isobject": "^3.0.1" 3334 | } 3335 | }, 3336 | "once": { 3337 | "version": "1.4.0", 3338 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3339 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 3340 | "dev": true, 3341 | "requires": { 3342 | "wrappy": "1" 3343 | } 3344 | }, 3345 | "onetime": { 3346 | "version": "5.1.2", 3347 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", 3348 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", 3349 | "dev": true, 3350 | "requires": { 3351 | "mimic-fn": "^2.1.0" 3352 | } 3353 | }, 3354 | "optionator": { 3355 | "version": "0.8.3", 3356 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", 3357 | "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", 3358 | "dev": true, 3359 | "requires": { 3360 | "deep-is": "~0.1.3", 3361 | "fast-levenshtein": "~2.0.6", 3362 | "levn": "~0.3.0", 3363 | "prelude-ls": "~1.1.2", 3364 | "type-check": "~0.3.2", 3365 | "word-wrap": "~1.2.3" 3366 | } 3367 | }, 3368 | "p-each-series": { 3369 | "version": "2.2.0", 3370 | "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", 3371 | "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", 3372 | "dev": true 3373 | }, 3374 | "p-finally": { 3375 | "version": "1.0.0", 3376 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 3377 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", 3378 | "dev": true 3379 | }, 3380 | "p-limit": { 3381 | "version": "2.3.0", 3382 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", 3383 | "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", 3384 | "dev": true, 3385 | "requires": { 3386 | "p-try": "^2.0.0" 3387 | } 3388 | }, 3389 | "p-locate": { 3390 | "version": "4.1.0", 3391 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", 3392 | "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", 3393 | "dev": true, 3394 | "requires": { 3395 | "p-limit": "^2.2.0" 3396 | } 3397 | }, 3398 | "p-try": { 3399 | "version": "2.2.0", 3400 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", 3401 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", 3402 | "dev": true 3403 | }, 3404 | "parse-json": { 3405 | "version": "5.1.0", 3406 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", 3407 | "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", 3408 | "dev": true, 3409 | "requires": { 3410 | "@babel/code-frame": "^7.0.0", 3411 | "error-ex": "^1.3.1", 3412 | "json-parse-even-better-errors": "^2.3.0", 3413 | "lines-and-columns": "^1.1.6" 3414 | } 3415 | }, 3416 | "parse5": { 3417 | "version": "5.1.1", 3418 | "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", 3419 | "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", 3420 | "dev": true 3421 | }, 3422 | "pascalcase": { 3423 | "version": "0.1.1", 3424 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", 3425 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", 3426 | "dev": true 3427 | }, 3428 | "path-exists": { 3429 | "version": "4.0.0", 3430 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", 3431 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", 3432 | "dev": true 3433 | }, 3434 | "path-is-absolute": { 3435 | "version": "1.0.1", 3436 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3437 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 3438 | "dev": true 3439 | }, 3440 | "path-key": { 3441 | "version": "2.0.1", 3442 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", 3443 | "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", 3444 | "dev": true 3445 | }, 3446 | "path-parse": { 3447 | "version": "1.0.6", 3448 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 3449 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", 3450 | "dev": true 3451 | }, 3452 | "performance-now": { 3453 | "version": "2.1.0", 3454 | "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", 3455 | "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", 3456 | "dev": true 3457 | }, 3458 | "picomatch": { 3459 | "version": "2.2.2", 3460 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", 3461 | "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", 3462 | "dev": true 3463 | }, 3464 | "pirates": { 3465 | "version": "4.0.1", 3466 | "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", 3467 | "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", 3468 | "dev": true, 3469 | "requires": { 3470 | "node-modules-regexp": "^1.0.0" 3471 | } 3472 | }, 3473 | "pkg-dir": { 3474 | "version": "4.2.0", 3475 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", 3476 | "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", 3477 | "dev": true, 3478 | "requires": { 3479 | "find-up": "^4.0.0" 3480 | } 3481 | }, 3482 | "posix-character-classes": { 3483 | "version": "0.1.1", 3484 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", 3485 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", 3486 | "dev": true 3487 | }, 3488 | "prelude-ls": { 3489 | "version": "1.1.2", 3490 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 3491 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 3492 | "dev": true 3493 | }, 3494 | "pretty-format": { 3495 | "version": "26.6.2", 3496 | "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", 3497 | "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", 3498 | "dev": true, 3499 | "requires": { 3500 | "@jest/types": "^26.6.2", 3501 | "ansi-regex": "^5.0.0", 3502 | "ansi-styles": "^4.0.0", 3503 | "react-is": "^17.0.1" 3504 | } 3505 | }, 3506 | "prompts": { 3507 | "version": "2.4.0", 3508 | "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", 3509 | "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", 3510 | "dev": true, 3511 | "requires": { 3512 | "kleur": "^3.0.3", 3513 | "sisteransi": "^1.0.5" 3514 | } 3515 | }, 3516 | "psl": { 3517 | "version": "1.8.0", 3518 | "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", 3519 | "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", 3520 | "dev": true 3521 | }, 3522 | "pump": { 3523 | "version": "3.0.0", 3524 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 3525 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 3526 | "dev": true, 3527 | "requires": { 3528 | "end-of-stream": "^1.1.0", 3529 | "once": "^1.3.1" 3530 | } 3531 | }, 3532 | "punycode": { 3533 | "version": "2.1.1", 3534 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 3535 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 3536 | "dev": true 3537 | }, 3538 | "qs": { 3539 | "version": "6.5.2", 3540 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", 3541 | "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", 3542 | "dev": true 3543 | }, 3544 | "react-is": { 3545 | "version": "17.0.1", 3546 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.1.tgz", 3547 | "integrity": "sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==", 3548 | "dev": true 3549 | }, 3550 | "read-pkg": { 3551 | "version": "5.2.0", 3552 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", 3553 | "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", 3554 | "dev": true, 3555 | "requires": { 3556 | "@types/normalize-package-data": "^2.4.0", 3557 | "normalize-package-data": "^2.5.0", 3558 | "parse-json": "^5.0.0", 3559 | "type-fest": "^0.6.0" 3560 | }, 3561 | "dependencies": { 3562 | "type-fest": { 3563 | "version": "0.6.0", 3564 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", 3565 | "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", 3566 | "dev": true 3567 | } 3568 | } 3569 | }, 3570 | "read-pkg-up": { 3571 | "version": "7.0.1", 3572 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", 3573 | "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", 3574 | "dev": true, 3575 | "requires": { 3576 | "find-up": "^4.1.0", 3577 | "read-pkg": "^5.2.0", 3578 | "type-fest": "^0.8.1" 3579 | } 3580 | }, 3581 | "regex-not": { 3582 | "version": "1.0.2", 3583 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", 3584 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", 3585 | "dev": true, 3586 | "requires": { 3587 | "extend-shallow": "^3.0.2", 3588 | "safe-regex": "^1.1.0" 3589 | } 3590 | }, 3591 | "remove-trailing-separator": { 3592 | "version": "1.1.0", 3593 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 3594 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", 3595 | "dev": true 3596 | }, 3597 | "repeat-element": { 3598 | "version": "1.1.3", 3599 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", 3600 | "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", 3601 | "dev": true 3602 | }, 3603 | "repeat-string": { 3604 | "version": "1.6.1", 3605 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 3606 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 3607 | "dev": true 3608 | }, 3609 | "request": { 3610 | "version": "2.88.2", 3611 | "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", 3612 | "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", 3613 | "dev": true, 3614 | "requires": { 3615 | "aws-sign2": "~0.7.0", 3616 | "aws4": "^1.8.0", 3617 | "caseless": "~0.12.0", 3618 | "combined-stream": "~1.0.6", 3619 | "extend": "~3.0.2", 3620 | "forever-agent": "~0.6.1", 3621 | "form-data": "~2.3.2", 3622 | "har-validator": "~5.1.3", 3623 | "http-signature": "~1.2.0", 3624 | "is-typedarray": "~1.0.0", 3625 | "isstream": "~0.1.2", 3626 | "json-stringify-safe": "~5.0.1", 3627 | "mime-types": "~2.1.19", 3628 | "oauth-sign": "~0.9.0", 3629 | "performance-now": "^2.1.0", 3630 | "qs": "~6.5.2", 3631 | "safe-buffer": "^5.1.2", 3632 | "tough-cookie": "~2.5.0", 3633 | "tunnel-agent": "^0.6.0", 3634 | "uuid": "^3.3.2" 3635 | }, 3636 | "dependencies": { 3637 | "tough-cookie": { 3638 | "version": "2.5.0", 3639 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", 3640 | "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", 3641 | "dev": true, 3642 | "requires": { 3643 | "psl": "^1.1.28", 3644 | "punycode": "^2.1.1" 3645 | } 3646 | }, 3647 | "uuid": { 3648 | "version": "3.4.0", 3649 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", 3650 | "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", 3651 | "dev": true 3652 | } 3653 | } 3654 | }, 3655 | "request-promise-core": { 3656 | "version": "1.1.4", 3657 | "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", 3658 | "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", 3659 | "dev": true, 3660 | "requires": { 3661 | "lodash": "^4.17.19" 3662 | } 3663 | }, 3664 | "request-promise-native": { 3665 | "version": "1.0.9", 3666 | "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", 3667 | "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", 3668 | "dev": true, 3669 | "requires": { 3670 | "request-promise-core": "1.1.4", 3671 | "stealthy-require": "^1.1.1", 3672 | "tough-cookie": "^2.3.3" 3673 | }, 3674 | "dependencies": { 3675 | "tough-cookie": { 3676 | "version": "2.5.0", 3677 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", 3678 | "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", 3679 | "dev": true, 3680 | "requires": { 3681 | "psl": "^1.1.28", 3682 | "punycode": "^2.1.1" 3683 | } 3684 | } 3685 | } 3686 | }, 3687 | "require-directory": { 3688 | "version": "2.1.1", 3689 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 3690 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", 3691 | "dev": true 3692 | }, 3693 | "require-main-filename": { 3694 | "version": "2.0.0", 3695 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", 3696 | "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", 3697 | "dev": true 3698 | }, 3699 | "resolve": { 3700 | "version": "1.19.0", 3701 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", 3702 | "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", 3703 | "dev": true, 3704 | "requires": { 3705 | "is-core-module": "^2.1.0", 3706 | "path-parse": "^1.0.6" 3707 | } 3708 | }, 3709 | "resolve-cwd": { 3710 | "version": "3.0.0", 3711 | "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", 3712 | "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", 3713 | "dev": true, 3714 | "requires": { 3715 | "resolve-from": "^5.0.0" 3716 | } 3717 | }, 3718 | "resolve-from": { 3719 | "version": "5.0.0", 3720 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", 3721 | "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", 3722 | "dev": true 3723 | }, 3724 | "resolve-url": { 3725 | "version": "0.2.1", 3726 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", 3727 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", 3728 | "dev": true 3729 | }, 3730 | "ret": { 3731 | "version": "0.1.15", 3732 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 3733 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 3734 | "dev": true 3735 | }, 3736 | "rimraf": { 3737 | "version": "3.0.2", 3738 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", 3739 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", 3740 | "dev": true, 3741 | "requires": { 3742 | "glob": "^7.1.3" 3743 | } 3744 | }, 3745 | "rsvp": { 3746 | "version": "4.8.5", 3747 | "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", 3748 | "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", 3749 | "dev": true 3750 | }, 3751 | "safe-buffer": { 3752 | "version": "5.1.2", 3753 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 3754 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 3755 | "dev": true 3756 | }, 3757 | "safe-regex": { 3758 | "version": "1.1.0", 3759 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 3760 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", 3761 | "dev": true, 3762 | "requires": { 3763 | "ret": "~0.1.10" 3764 | } 3765 | }, 3766 | "safer-buffer": { 3767 | "version": "2.1.2", 3768 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 3769 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 3770 | "dev": true 3771 | }, 3772 | "sane": { 3773 | "version": "4.1.0", 3774 | "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", 3775 | "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", 3776 | "dev": true, 3777 | "requires": { 3778 | "@cnakazawa/watch": "^1.0.3", 3779 | "anymatch": "^2.0.0", 3780 | "capture-exit": "^2.0.0", 3781 | "exec-sh": "^0.3.2", 3782 | "execa": "^1.0.0", 3783 | "fb-watchman": "^2.0.0", 3784 | "micromatch": "^3.1.4", 3785 | "minimist": "^1.1.1", 3786 | "walker": "~1.0.5" 3787 | }, 3788 | "dependencies": { 3789 | "anymatch": { 3790 | "version": "2.0.0", 3791 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", 3792 | "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", 3793 | "dev": true, 3794 | "requires": { 3795 | "micromatch": "^3.1.4", 3796 | "normalize-path": "^2.1.1" 3797 | } 3798 | }, 3799 | "braces": { 3800 | "version": "2.3.2", 3801 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 3802 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 3803 | "dev": true, 3804 | "requires": { 3805 | "arr-flatten": "^1.1.0", 3806 | "array-unique": "^0.3.2", 3807 | "extend-shallow": "^2.0.1", 3808 | "fill-range": "^4.0.0", 3809 | "isobject": "^3.0.1", 3810 | "repeat-element": "^1.1.2", 3811 | "snapdragon": "^0.8.1", 3812 | "snapdragon-node": "^2.0.1", 3813 | "split-string": "^3.0.2", 3814 | "to-regex": "^3.0.1" 3815 | }, 3816 | "dependencies": { 3817 | "extend-shallow": { 3818 | "version": "2.0.1", 3819 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3820 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3821 | "dev": true, 3822 | "requires": { 3823 | "is-extendable": "^0.1.0" 3824 | } 3825 | } 3826 | } 3827 | }, 3828 | "fill-range": { 3829 | "version": "4.0.0", 3830 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 3831 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 3832 | "dev": true, 3833 | "requires": { 3834 | "extend-shallow": "^2.0.1", 3835 | "is-number": "^3.0.0", 3836 | "repeat-string": "^1.6.1", 3837 | "to-regex-range": "^2.1.0" 3838 | }, 3839 | "dependencies": { 3840 | "extend-shallow": { 3841 | "version": "2.0.1", 3842 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3843 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3844 | "dev": true, 3845 | "requires": { 3846 | "is-extendable": "^0.1.0" 3847 | } 3848 | } 3849 | } 3850 | }, 3851 | "is-number": { 3852 | "version": "3.0.0", 3853 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 3854 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 3855 | "dev": true, 3856 | "requires": { 3857 | "kind-of": "^3.0.2" 3858 | }, 3859 | "dependencies": { 3860 | "kind-of": { 3861 | "version": "3.2.2", 3862 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3863 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3864 | "dev": true, 3865 | "requires": { 3866 | "is-buffer": "^1.1.5" 3867 | } 3868 | } 3869 | } 3870 | }, 3871 | "micromatch": { 3872 | "version": "3.1.10", 3873 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 3874 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 3875 | "dev": true, 3876 | "requires": { 3877 | "arr-diff": "^4.0.0", 3878 | "array-unique": "^0.3.2", 3879 | "braces": "^2.3.1", 3880 | "define-property": "^2.0.2", 3881 | "extend-shallow": "^3.0.2", 3882 | "extglob": "^2.0.4", 3883 | "fragment-cache": "^0.2.1", 3884 | "kind-of": "^6.0.2", 3885 | "nanomatch": "^1.2.9", 3886 | "object.pick": "^1.3.0", 3887 | "regex-not": "^1.0.0", 3888 | "snapdragon": "^0.8.1", 3889 | "to-regex": "^3.0.2" 3890 | } 3891 | }, 3892 | "normalize-path": { 3893 | "version": "2.1.1", 3894 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", 3895 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", 3896 | "dev": true, 3897 | "requires": { 3898 | "remove-trailing-separator": "^1.0.1" 3899 | } 3900 | }, 3901 | "to-regex-range": { 3902 | "version": "2.1.1", 3903 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 3904 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 3905 | "dev": true, 3906 | "requires": { 3907 | "is-number": "^3.0.0", 3908 | "repeat-string": "^1.6.1" 3909 | } 3910 | } 3911 | } 3912 | }, 3913 | "saxes": { 3914 | "version": "5.0.1", 3915 | "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", 3916 | "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", 3917 | "dev": true, 3918 | "requires": { 3919 | "xmlchars": "^2.2.0" 3920 | } 3921 | }, 3922 | "semver": { 3923 | "version": "5.7.1", 3924 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 3925 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 3926 | "dev": true 3927 | }, 3928 | "set-blocking": { 3929 | "version": "2.0.0", 3930 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 3931 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 3932 | "dev": true 3933 | }, 3934 | "set-value": { 3935 | "version": "2.0.1", 3936 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", 3937 | "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", 3938 | "dev": true, 3939 | "requires": { 3940 | "extend-shallow": "^2.0.1", 3941 | "is-extendable": "^0.1.1", 3942 | "is-plain-object": "^2.0.3", 3943 | "split-string": "^3.0.1" 3944 | }, 3945 | "dependencies": { 3946 | "extend-shallow": { 3947 | "version": "2.0.1", 3948 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3949 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3950 | "dev": true, 3951 | "requires": { 3952 | "is-extendable": "^0.1.0" 3953 | } 3954 | } 3955 | } 3956 | }, 3957 | "shebang-command": { 3958 | "version": "1.2.0", 3959 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 3960 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 3961 | "dev": true, 3962 | "requires": { 3963 | "shebang-regex": "^1.0.0" 3964 | } 3965 | }, 3966 | "shebang-regex": { 3967 | "version": "1.0.0", 3968 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 3969 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 3970 | "dev": true 3971 | }, 3972 | "shellwords": { 3973 | "version": "0.1.1", 3974 | "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", 3975 | "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", 3976 | "dev": true, 3977 | "optional": true 3978 | }, 3979 | "signal-exit": { 3980 | "version": "3.0.3", 3981 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", 3982 | "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", 3983 | "dev": true 3984 | }, 3985 | "sisteransi": { 3986 | "version": "1.0.5", 3987 | "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", 3988 | "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", 3989 | "dev": true 3990 | }, 3991 | "slash": { 3992 | "version": "3.0.0", 3993 | "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", 3994 | "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", 3995 | "dev": true 3996 | }, 3997 | "snapdragon": { 3998 | "version": "0.8.2", 3999 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 4000 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", 4001 | "dev": true, 4002 | "requires": { 4003 | "base": "^0.11.1", 4004 | "debug": "^2.2.0", 4005 | "define-property": "^0.2.5", 4006 | "extend-shallow": "^2.0.1", 4007 | "map-cache": "^0.2.2", 4008 | "source-map": "^0.5.6", 4009 | "source-map-resolve": "^0.5.0", 4010 | "use": "^3.1.0" 4011 | }, 4012 | "dependencies": { 4013 | "debug": { 4014 | "version": "2.6.9", 4015 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 4016 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 4017 | "dev": true, 4018 | "requires": { 4019 | "ms": "2.0.0" 4020 | } 4021 | }, 4022 | "define-property": { 4023 | "version": "0.2.5", 4024 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 4025 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 4026 | "dev": true, 4027 | "requires": { 4028 | "is-descriptor": "^0.1.0" 4029 | } 4030 | }, 4031 | "extend-shallow": { 4032 | "version": "2.0.1", 4033 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4034 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4035 | "dev": true, 4036 | "requires": { 4037 | "is-extendable": "^0.1.0" 4038 | } 4039 | }, 4040 | "ms": { 4041 | "version": "2.0.0", 4042 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 4043 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 4044 | "dev": true 4045 | }, 4046 | "source-map": { 4047 | "version": "0.5.7", 4048 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 4049 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 4050 | "dev": true 4051 | } 4052 | } 4053 | }, 4054 | "snapdragon-node": { 4055 | "version": "2.1.1", 4056 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", 4057 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", 4058 | "dev": true, 4059 | "requires": { 4060 | "define-property": "^1.0.0", 4061 | "isobject": "^3.0.0", 4062 | "snapdragon-util": "^3.0.1" 4063 | }, 4064 | "dependencies": { 4065 | "define-property": { 4066 | "version": "1.0.0", 4067 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 4068 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 4069 | "dev": true, 4070 | "requires": { 4071 | "is-descriptor": "^1.0.0" 4072 | } 4073 | }, 4074 | "is-accessor-descriptor": { 4075 | "version": "1.0.0", 4076 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 4077 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 4078 | "dev": true, 4079 | "requires": { 4080 | "kind-of": "^6.0.0" 4081 | } 4082 | }, 4083 | "is-data-descriptor": { 4084 | "version": "1.0.0", 4085 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 4086 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 4087 | "dev": true, 4088 | "requires": { 4089 | "kind-of": "^6.0.0" 4090 | } 4091 | }, 4092 | "is-descriptor": { 4093 | "version": "1.0.2", 4094 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 4095 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 4096 | "dev": true, 4097 | "requires": { 4098 | "is-accessor-descriptor": "^1.0.0", 4099 | "is-data-descriptor": "^1.0.0", 4100 | "kind-of": "^6.0.2" 4101 | } 4102 | } 4103 | } 4104 | }, 4105 | "snapdragon-util": { 4106 | "version": "3.0.1", 4107 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", 4108 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", 4109 | "dev": true, 4110 | "requires": { 4111 | "kind-of": "^3.2.0" 4112 | }, 4113 | "dependencies": { 4114 | "kind-of": { 4115 | "version": "3.2.2", 4116 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4117 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4118 | "dev": true, 4119 | "requires": { 4120 | "is-buffer": "^1.1.5" 4121 | } 4122 | } 4123 | } 4124 | }, 4125 | "source-map": { 4126 | "version": "0.6.1", 4127 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 4128 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 4129 | "dev": true 4130 | }, 4131 | "source-map-resolve": { 4132 | "version": "0.5.3", 4133 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", 4134 | "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", 4135 | "dev": true, 4136 | "requires": { 4137 | "atob": "^2.1.2", 4138 | "decode-uri-component": "^0.2.0", 4139 | "resolve-url": "^0.2.1", 4140 | "source-map-url": "^0.4.0", 4141 | "urix": "^0.1.0" 4142 | } 4143 | }, 4144 | "source-map-support": { 4145 | "version": "0.5.19", 4146 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", 4147 | "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", 4148 | "dev": true, 4149 | "requires": { 4150 | "buffer-from": "^1.0.0", 4151 | "source-map": "^0.6.0" 4152 | } 4153 | }, 4154 | "source-map-url": { 4155 | "version": "0.4.0", 4156 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", 4157 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", 4158 | "dev": true 4159 | }, 4160 | "spdx-correct": { 4161 | "version": "3.1.1", 4162 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", 4163 | "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", 4164 | "dev": true, 4165 | "requires": { 4166 | "spdx-expression-parse": "^3.0.0", 4167 | "spdx-license-ids": "^3.0.0" 4168 | } 4169 | }, 4170 | "spdx-exceptions": { 4171 | "version": "2.3.0", 4172 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", 4173 | "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", 4174 | "dev": true 4175 | }, 4176 | "spdx-expression-parse": { 4177 | "version": "3.0.1", 4178 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", 4179 | "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", 4180 | "dev": true, 4181 | "requires": { 4182 | "spdx-exceptions": "^2.1.0", 4183 | "spdx-license-ids": "^3.0.0" 4184 | } 4185 | }, 4186 | "spdx-license-ids": { 4187 | "version": "3.0.7", 4188 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", 4189 | "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", 4190 | "dev": true 4191 | }, 4192 | "split-string": { 4193 | "version": "3.1.0", 4194 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", 4195 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", 4196 | "dev": true, 4197 | "requires": { 4198 | "extend-shallow": "^3.0.0" 4199 | } 4200 | }, 4201 | "sprintf-js": { 4202 | "version": "1.0.3", 4203 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 4204 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 4205 | "dev": true 4206 | }, 4207 | "sshpk": { 4208 | "version": "1.16.1", 4209 | "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", 4210 | "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", 4211 | "dev": true, 4212 | "requires": { 4213 | "asn1": "~0.2.3", 4214 | "assert-plus": "^1.0.0", 4215 | "bcrypt-pbkdf": "^1.0.0", 4216 | "dashdash": "^1.12.0", 4217 | "ecc-jsbn": "~0.1.1", 4218 | "getpass": "^0.1.1", 4219 | "jsbn": "~0.1.0", 4220 | "safer-buffer": "^2.0.2", 4221 | "tweetnacl": "~0.14.0" 4222 | } 4223 | }, 4224 | "stack-utils": { 4225 | "version": "2.0.3", 4226 | "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", 4227 | "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", 4228 | "dev": true, 4229 | "requires": { 4230 | "escape-string-regexp": "^2.0.0" 4231 | }, 4232 | "dependencies": { 4233 | "escape-string-regexp": { 4234 | "version": "2.0.0", 4235 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", 4236 | "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", 4237 | "dev": true 4238 | } 4239 | } 4240 | }, 4241 | "static-extend": { 4242 | "version": "0.1.2", 4243 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", 4244 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", 4245 | "dev": true, 4246 | "requires": { 4247 | "define-property": "^0.2.5", 4248 | "object-copy": "^0.1.0" 4249 | }, 4250 | "dependencies": { 4251 | "define-property": { 4252 | "version": "0.2.5", 4253 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 4254 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 4255 | "dev": true, 4256 | "requires": { 4257 | "is-descriptor": "^0.1.0" 4258 | } 4259 | } 4260 | } 4261 | }, 4262 | "stealthy-require": { 4263 | "version": "1.1.1", 4264 | "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", 4265 | "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", 4266 | "dev": true 4267 | }, 4268 | "string-length": { 4269 | "version": "4.0.1", 4270 | "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.1.tgz", 4271 | "integrity": "sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw==", 4272 | "dev": true, 4273 | "requires": { 4274 | "char-regex": "^1.0.2", 4275 | "strip-ansi": "^6.0.0" 4276 | } 4277 | }, 4278 | "string-width": { 4279 | "version": "4.2.0", 4280 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", 4281 | "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", 4282 | "dev": true, 4283 | "requires": { 4284 | "emoji-regex": "^8.0.0", 4285 | "is-fullwidth-code-point": "^3.0.0", 4286 | "strip-ansi": "^6.0.0" 4287 | } 4288 | }, 4289 | "strip-ansi": { 4290 | "version": "6.0.0", 4291 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", 4292 | "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", 4293 | "dev": true, 4294 | "requires": { 4295 | "ansi-regex": "^5.0.0" 4296 | } 4297 | }, 4298 | "strip-bom": { 4299 | "version": "4.0.0", 4300 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", 4301 | "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", 4302 | "dev": true 4303 | }, 4304 | "strip-eof": { 4305 | "version": "1.0.0", 4306 | "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", 4307 | "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", 4308 | "dev": true 4309 | }, 4310 | "strip-final-newline": { 4311 | "version": "2.0.0", 4312 | "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", 4313 | "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", 4314 | "dev": true 4315 | }, 4316 | "supports-color": { 4317 | "version": "7.2.0", 4318 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 4319 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 4320 | "dev": true, 4321 | "requires": { 4322 | "has-flag": "^4.0.0" 4323 | } 4324 | }, 4325 | "supports-hyperlinks": { 4326 | "version": "2.1.0", 4327 | "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", 4328 | "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", 4329 | "dev": true, 4330 | "requires": { 4331 | "has-flag": "^4.0.0", 4332 | "supports-color": "^7.0.0" 4333 | } 4334 | }, 4335 | "symbol-tree": { 4336 | "version": "3.2.4", 4337 | "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", 4338 | "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", 4339 | "dev": true 4340 | }, 4341 | "terminal-link": { 4342 | "version": "2.1.1", 4343 | "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", 4344 | "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", 4345 | "dev": true, 4346 | "requires": { 4347 | "ansi-escapes": "^4.2.1", 4348 | "supports-hyperlinks": "^2.0.0" 4349 | } 4350 | }, 4351 | "test-exclude": { 4352 | "version": "6.0.0", 4353 | "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", 4354 | "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", 4355 | "dev": true, 4356 | "requires": { 4357 | "@istanbuljs/schema": "^0.1.2", 4358 | "glob": "^7.1.4", 4359 | "minimatch": "^3.0.4" 4360 | } 4361 | }, 4362 | "throat": { 4363 | "version": "5.0.0", 4364 | "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", 4365 | "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", 4366 | "dev": true 4367 | }, 4368 | "tmpl": { 4369 | "version": "1.0.4", 4370 | "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", 4371 | "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", 4372 | "dev": true 4373 | }, 4374 | "to-fast-properties": { 4375 | "version": "2.0.0", 4376 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 4377 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", 4378 | "dev": true 4379 | }, 4380 | "to-object-path": { 4381 | "version": "0.3.0", 4382 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", 4383 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", 4384 | "dev": true, 4385 | "requires": { 4386 | "kind-of": "^3.0.2" 4387 | }, 4388 | "dependencies": { 4389 | "kind-of": { 4390 | "version": "3.2.2", 4391 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4392 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4393 | "dev": true, 4394 | "requires": { 4395 | "is-buffer": "^1.1.5" 4396 | } 4397 | } 4398 | } 4399 | }, 4400 | "to-regex": { 4401 | "version": "3.0.2", 4402 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", 4403 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", 4404 | "dev": true, 4405 | "requires": { 4406 | "define-property": "^2.0.2", 4407 | "extend-shallow": "^3.0.2", 4408 | "regex-not": "^1.0.2", 4409 | "safe-regex": "^1.1.0" 4410 | } 4411 | }, 4412 | "to-regex-range": { 4413 | "version": "5.0.1", 4414 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 4415 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 4416 | "dev": true, 4417 | "requires": { 4418 | "is-number": "^7.0.0" 4419 | } 4420 | }, 4421 | "tough-cookie": { 4422 | "version": "3.0.1", 4423 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", 4424 | "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", 4425 | "dev": true, 4426 | "requires": { 4427 | "ip-regex": "^2.1.0", 4428 | "psl": "^1.1.28", 4429 | "punycode": "^2.1.1" 4430 | } 4431 | }, 4432 | "tr46": { 4433 | "version": "2.0.2", 4434 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.0.2.tgz", 4435 | "integrity": "sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==", 4436 | "dev": true, 4437 | "requires": { 4438 | "punycode": "^2.1.1" 4439 | } 4440 | }, 4441 | "ts-jest": { 4442 | "version": "26.4.4", 4443 | "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.4.4.tgz", 4444 | "integrity": "sha512-3lFWKbLxJm34QxyVNNCgXX1u4o/RV0myvA2y2Bxm46iGIjKlaY0own9gIckbjZJPn+WaJEnfPPJ20HHGpoq4yg==", 4445 | "dev": true, 4446 | "requires": { 4447 | "@types/jest": "26.x", 4448 | "bs-logger": "0.x", 4449 | "buffer-from": "1.x", 4450 | "fast-json-stable-stringify": "2.x", 4451 | "jest-util": "^26.1.0", 4452 | "json5": "2.x", 4453 | "lodash.memoize": "4.x", 4454 | "make-error": "1.x", 4455 | "mkdirp": "1.x", 4456 | "semver": "7.x", 4457 | "yargs-parser": "20.x" 4458 | }, 4459 | "dependencies": { 4460 | "semver": { 4461 | "version": "7.3.4", 4462 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", 4463 | "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", 4464 | "dev": true, 4465 | "requires": { 4466 | "lru-cache": "^6.0.0" 4467 | } 4468 | }, 4469 | "yargs-parser": { 4470 | "version": "20.2.4", 4471 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", 4472 | "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", 4473 | "dev": true 4474 | } 4475 | } 4476 | }, 4477 | "tunnel-agent": { 4478 | "version": "0.6.0", 4479 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", 4480 | "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", 4481 | "dev": true, 4482 | "requires": { 4483 | "safe-buffer": "^5.0.1" 4484 | } 4485 | }, 4486 | "tweetnacl": { 4487 | "version": "0.14.5", 4488 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", 4489 | "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", 4490 | "dev": true 4491 | }, 4492 | "type-check": { 4493 | "version": "0.3.2", 4494 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 4495 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 4496 | "dev": true, 4497 | "requires": { 4498 | "prelude-ls": "~1.1.2" 4499 | } 4500 | }, 4501 | "type-detect": { 4502 | "version": "4.0.8", 4503 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", 4504 | "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", 4505 | "dev": true 4506 | }, 4507 | "type-fest": { 4508 | "version": "0.8.1", 4509 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", 4510 | "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", 4511 | "dev": true 4512 | }, 4513 | "typedarray-to-buffer": { 4514 | "version": "3.1.5", 4515 | "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", 4516 | "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", 4517 | "dev": true, 4518 | "requires": { 4519 | "is-typedarray": "^1.0.0" 4520 | } 4521 | }, 4522 | "typescript": { 4523 | "version": "4.1.3", 4524 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", 4525 | "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", 4526 | "dev": true 4527 | }, 4528 | "union-value": { 4529 | "version": "1.0.1", 4530 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", 4531 | "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", 4532 | "dev": true, 4533 | "requires": { 4534 | "arr-union": "^3.1.0", 4535 | "get-value": "^2.0.6", 4536 | "is-extendable": "^0.1.1", 4537 | "set-value": "^2.0.1" 4538 | } 4539 | }, 4540 | "unset-value": { 4541 | "version": "1.0.0", 4542 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", 4543 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", 4544 | "dev": true, 4545 | "requires": { 4546 | "has-value": "^0.3.1", 4547 | "isobject": "^3.0.0" 4548 | }, 4549 | "dependencies": { 4550 | "has-value": { 4551 | "version": "0.3.1", 4552 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", 4553 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", 4554 | "dev": true, 4555 | "requires": { 4556 | "get-value": "^2.0.3", 4557 | "has-values": "^0.1.4", 4558 | "isobject": "^2.0.0" 4559 | }, 4560 | "dependencies": { 4561 | "isobject": { 4562 | "version": "2.1.0", 4563 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 4564 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 4565 | "dev": true, 4566 | "requires": { 4567 | "isarray": "1.0.0" 4568 | } 4569 | } 4570 | } 4571 | }, 4572 | "has-values": { 4573 | "version": "0.1.4", 4574 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", 4575 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", 4576 | "dev": true 4577 | } 4578 | } 4579 | }, 4580 | "uri-js": { 4581 | "version": "4.4.0", 4582 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", 4583 | "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", 4584 | "dev": true, 4585 | "requires": { 4586 | "punycode": "^2.1.0" 4587 | } 4588 | }, 4589 | "urix": { 4590 | "version": "0.1.0", 4591 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", 4592 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", 4593 | "dev": true 4594 | }, 4595 | "use": { 4596 | "version": "3.1.1", 4597 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", 4598 | "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", 4599 | "dev": true 4600 | }, 4601 | "uuid": { 4602 | "version": "8.3.2", 4603 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 4604 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", 4605 | "dev": true, 4606 | "optional": true 4607 | }, 4608 | "v8-to-istanbul": { 4609 | "version": "7.1.0", 4610 | "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.0.tgz", 4611 | "integrity": "sha512-uXUVqNUCLa0AH1vuVxzi+MI4RfxEOKt9pBgKwHbgH7st8Kv2P1m+jvWNnektzBh5QShF3ODgKmUFCf38LnVz1g==", 4612 | "dev": true, 4613 | "requires": { 4614 | "@types/istanbul-lib-coverage": "^2.0.1", 4615 | "convert-source-map": "^1.6.0", 4616 | "source-map": "^0.7.3" 4617 | }, 4618 | "dependencies": { 4619 | "source-map": { 4620 | "version": "0.7.3", 4621 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", 4622 | "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", 4623 | "dev": true 4624 | } 4625 | } 4626 | }, 4627 | "validate-npm-package-license": { 4628 | "version": "3.0.4", 4629 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 4630 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 4631 | "dev": true, 4632 | "requires": { 4633 | "spdx-correct": "^3.0.0", 4634 | "spdx-expression-parse": "^3.0.0" 4635 | } 4636 | }, 4637 | "verror": { 4638 | "version": "1.10.0", 4639 | "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", 4640 | "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", 4641 | "dev": true, 4642 | "requires": { 4643 | "assert-plus": "^1.0.0", 4644 | "core-util-is": "1.0.2", 4645 | "extsprintf": "^1.2.0" 4646 | } 4647 | }, 4648 | "w3c-hr-time": { 4649 | "version": "1.0.2", 4650 | "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", 4651 | "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", 4652 | "dev": true, 4653 | "requires": { 4654 | "browser-process-hrtime": "^1.0.0" 4655 | } 4656 | }, 4657 | "w3c-xmlserializer": { 4658 | "version": "2.0.0", 4659 | "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", 4660 | "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", 4661 | "dev": true, 4662 | "requires": { 4663 | "xml-name-validator": "^3.0.0" 4664 | } 4665 | }, 4666 | "walker": { 4667 | "version": "1.0.7", 4668 | "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", 4669 | "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", 4670 | "dev": true, 4671 | "requires": { 4672 | "makeerror": "1.0.x" 4673 | } 4674 | }, 4675 | "webidl-conversions": { 4676 | "version": "6.1.0", 4677 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", 4678 | "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", 4679 | "dev": true 4680 | }, 4681 | "whatwg-encoding": { 4682 | "version": "1.0.5", 4683 | "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", 4684 | "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", 4685 | "dev": true, 4686 | "requires": { 4687 | "iconv-lite": "0.4.24" 4688 | } 4689 | }, 4690 | "whatwg-mimetype": { 4691 | "version": "2.3.0", 4692 | "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", 4693 | "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", 4694 | "dev": true 4695 | }, 4696 | "whatwg-url": { 4697 | "version": "8.4.0", 4698 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.4.0.tgz", 4699 | "integrity": "sha512-vwTUFf6V4zhcPkWp/4CQPr1TW9Ml6SF4lVyaIMBdJw5i6qUUJ1QWM4Z6YYVkfka0OUIzVo/0aNtGVGk256IKWw==", 4700 | "dev": true, 4701 | "requires": { 4702 | "lodash.sortby": "^4.7.0", 4703 | "tr46": "^2.0.2", 4704 | "webidl-conversions": "^6.1.0" 4705 | } 4706 | }, 4707 | "which": { 4708 | "version": "1.3.1", 4709 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 4710 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", 4711 | "dev": true, 4712 | "requires": { 4713 | "isexe": "^2.0.0" 4714 | } 4715 | }, 4716 | "which-module": { 4717 | "version": "2.0.0", 4718 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 4719 | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", 4720 | "dev": true 4721 | }, 4722 | "word-wrap": { 4723 | "version": "1.2.3", 4724 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", 4725 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", 4726 | "dev": true 4727 | }, 4728 | "wrap-ansi": { 4729 | "version": "6.2.0", 4730 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", 4731 | "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", 4732 | "dev": true, 4733 | "requires": { 4734 | "ansi-styles": "^4.0.0", 4735 | "string-width": "^4.1.0", 4736 | "strip-ansi": "^6.0.0" 4737 | } 4738 | }, 4739 | "wrappy": { 4740 | "version": "1.0.2", 4741 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 4742 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 4743 | "dev": true 4744 | }, 4745 | "write-file-atomic": { 4746 | "version": "3.0.3", 4747 | "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", 4748 | "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", 4749 | "dev": true, 4750 | "requires": { 4751 | "imurmurhash": "^0.1.4", 4752 | "is-typedarray": "^1.0.0", 4753 | "signal-exit": "^3.0.2", 4754 | "typedarray-to-buffer": "^3.1.5" 4755 | } 4756 | }, 4757 | "ws": { 4758 | "version": "7.4.1", 4759 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.1.tgz", 4760 | "integrity": "sha512-pTsP8UAfhy3sk1lSk/O/s4tjD0CRwvMnzvwr4OKGX7ZvqZtUyx4KIJB5JWbkykPoc55tixMGgTNoh3k4FkNGFQ==", 4761 | "dev": true 4762 | }, 4763 | "xml-name-validator": { 4764 | "version": "3.0.0", 4765 | "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", 4766 | "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", 4767 | "dev": true 4768 | }, 4769 | "xmlchars": { 4770 | "version": "2.2.0", 4771 | "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", 4772 | "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", 4773 | "dev": true 4774 | }, 4775 | "y18n": { 4776 | "version": "4.0.1", 4777 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", 4778 | "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==", 4779 | "dev": true 4780 | }, 4781 | "yallist": { 4782 | "version": "4.0.0", 4783 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 4784 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 4785 | "dev": true 4786 | }, 4787 | "yargs": { 4788 | "version": "15.4.1", 4789 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", 4790 | "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", 4791 | "dev": true, 4792 | "requires": { 4793 | "cliui": "^6.0.0", 4794 | "decamelize": "^1.2.0", 4795 | "find-up": "^4.1.0", 4796 | "get-caller-file": "^2.0.1", 4797 | "require-directory": "^2.1.1", 4798 | "require-main-filename": "^2.0.0", 4799 | "set-blocking": "^2.0.0", 4800 | "string-width": "^4.2.0", 4801 | "which-module": "^2.0.0", 4802 | "y18n": "^4.0.0", 4803 | "yargs-parser": "^18.1.2" 4804 | } 4805 | }, 4806 | "yargs-parser": { 4807 | "version": "18.1.3", 4808 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", 4809 | "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", 4810 | "dev": true, 4811 | "requires": { 4812 | "camelcase": "^5.0.0", 4813 | "decamelize": "^1.2.0" 4814 | } 4815 | } 4816 | } 4817 | } 4818 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jest-test-matrix", 3 | "version": "1.2.0", 4 | "description": "A small utility for Jest to test all combinations of parameters for a function at once.", 5 | "keywords": [ 6 | "jest", 7 | "test", 8 | "testing", 9 | "matrix", 10 | "table", 11 | "truth table", 12 | "snapshot", 13 | "table snapshot" 14 | ], 15 | "main": "dist/index.js", 16 | "scripts": { 17 | "test": "jest", 18 | "prepare": "tsc" 19 | }, 20 | "author": "WaldoJeffers", 21 | "license": "MIT", 22 | "devDependencies": { 23 | "jest": "^26.6.3", 24 | "ts-jest": "^26.4.4", 25 | "typescript": "^4.1.3" 26 | }, 27 | "dependencies": { 28 | "ascii-table": "0.0.9" 29 | }, 30 | "files": [ 31 | "dist" 32 | ] 33 | } 34 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import prettyTable from './pretty-table'; 2 | import TEST_MATRIX_SYMBOL from './symbol' 3 | 4 | const buildTestResults = >( 5 | fn: (params: Params) => void, 6 | input: {[Key in keyof Params]: Params[Key][]}, 7 | opts?: { 8 | skip?: (params:Params) => boolean, 9 | style?: 'verbose' | 'minimalist' 10 | } 11 | ): ({input: Params, output: ReturnType})[] => { 12 | const sortedKeys: (keyof Params)[] = Object.keys(input).sort((a, b) => input[a].length - input[b].length); 13 | const isLastIteration = sortedKeys.every(key => input[key].length === 1); 14 | if (isLastIteration){ 15 | const params = sortedKeys.reduce((acc, key) => ({...acc, [key]: input[key][0]}), {}) as Params; 16 | if (opts?.skip?.(params)){ 17 | return []; 18 | } 19 | return [{input: params, output: fn(params)}] 20 | } 21 | const fixedVariable = sortedKeys.find(key => input[key].length !== 1) as keyof Params; 22 | const sortedInput = sortedKeys.reduce((acc, key) => ({...acc, [key]: input[key]}), {}) as (typeof input); 23 | return [ 24 | ...buildTestResults(fn, {...sortedInput, [fixedVariable]: input[fixedVariable].slice(0, 1)}, opts), 25 | ...buildTestResults(fn, {...sortedInput, [fixedVariable]: input[fixedVariable].slice(1)}, opts) 26 | ] 27 | }; 28 | 29 | const testMatrix = >( 30 | fn: (params: Params) => void, 31 | input: { [Key in keyof Params]: Params[Key][]}, 32 | opts?: { 33 | skip?: (params:Params) => boolean, 34 | style?: 'verbose' | 'minimalist' 35 | } 36 | ) => { 37 | const results = buildTestResults(fn, input, opts); 38 | return { 39 | results, 40 | funcName: fn.name, 41 | origin: TEST_MATRIX_SYMBOL, 42 | style: opts?.style 43 | } 44 | }; 45 | 46 | expect.addSnapshotSerializer({ 47 | test(value) { 48 | return !!value && Object.prototype.hasOwnProperty.call(value, 'origin') && value.origin === TEST_MATRIX_SYMBOL; // true 49 | }, 50 | serialize(value) { 51 | const { results, funcName, style } = value as ReturnType; 52 | const heading = [...Object.keys(results[0].input)] 53 | const table = prettyTable({results, title: funcName, heading, style }); 54 | return table; 55 | }, 56 | }); 57 | 58 | 59 | export default testMatrix; -------------------------------------------------------------------------------- /src/pretty-table.ts: -------------------------------------------------------------------------------- 1 | import AsciiTable from 'ascii-table' 2 | 3 | interface ResultRow{ 4 | input: Record; 5 | output: any; 6 | } 7 | 8 | const serialize = (value: any) => { 9 | if ([null, undefined].includes(value)){ 10 | return String(value); 11 | } 12 | if (Array.isArray(value)){ 13 | return `[${value}]` 14 | } 15 | if (value === ''){ 16 | return "\'\'" 17 | } 18 | if (Object.prototype.toString.call(value) === '[object Object]'){ 19 | const stringifiedObj:string = Object.keys(value).reduce( 20 | (acc, key) => `${acc === '' ? '' : `${acc}, `}${key}: '${serialize(value[key])}'`, 21 | ''); 22 | return `{${stringifiedObj}}`; 23 | } 24 | return value; 25 | } 26 | 27 | const formatRow = (row: ResultRow, previousRow: ResultRow | undefined, style: 'minimalist' | 'verbose') => { 28 | const {input, output} = row; 29 | const values = (style === 'minimalist' && previousRow !== undefined) 30 | ? Object.keys(input).map(key => { 31 | const value = input[key] 32 | if (value === previousRow.input[key]){ 33 | return ''; 34 | } 35 | return serialize(value); 36 | }) : Object.values(input).map(serialize); 37 | return [...values, serialize(output)]; 38 | } 39 | 40 | interface PrettyTableOpts { 41 | title: string; 42 | heading: string[]; 43 | results: ResultRow[]; 44 | style?: 'minimalist' | 'verbose'; 45 | } 46 | 47 | const prettyTable = (opts: PrettyTableOpts) => { 48 | const {title, heading, results, style = 'minimalist'} = opts; 49 | const rowMatrix = results.map((row, rowIndex) => formatRow(row, results[rowIndex - 1], style)); 50 | const table = new AsciiTable(title).setHeading(heading).addRowMatrix(rowMatrix); 51 | return table.toString() 52 | } 53 | 54 | export default prettyTable; -------------------------------------------------------------------------------- /src/symbol.ts: -------------------------------------------------------------------------------- 1 | const TEST_MATRIX_SYMBOL = Symbol('test-matrix'); 2 | 3 | export default TEST_MATRIX_SYMBOL; -------------------------------------------------------------------------------- /src/typings/ascii-table/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'ascii-table' -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */ 4 | 5 | /* Basic Options */ 6 | // "incremental": true, /* Enable incremental compilation */ 7 | "target": "es2018", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */ 8 | "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ 9 | "lib": ["es2018"], /* Specify library files to be included in the compilation. */ 10 | // "allowJs": true, /* Allow javascript files to be compiled. */ 11 | // "checkJs": true, /* Report errors in .js files. */ 12 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ 13 | "declaration": true, /* Generates corresponding '.d.ts' file. */ 14 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ 15 | // "sourceMap": true, /* Generates corresponding '.map' file. */ 16 | // "outFile": "./", /* Concatenate and emit output to single file. */ 17 | "outDir": "./dist", /* Redirect output structure to the directory. */ 18 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ 19 | // "composite": true, /* Enable project compilation */ 20 | // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ 21 | // "removeComments": true, /* Do not emit comments to output. */ 22 | // "noEmit": true, /* Do not emit outputs. */ 23 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */ 24 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ 25 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ 26 | 27 | /* Strict Type-Checking Options */ 28 | "strict": true, /* Enable all strict type-checking options. */ 29 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ 30 | // "strictNullChecks": true, /* Enable strict null checks. */ 31 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */ 32 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ 33 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ 34 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ 35 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ 36 | 37 | /* Additional Checks */ 38 | // "noUnusedLocals": true, /* Report errors on unused locals. */ 39 | // "noUnusedParameters": true, /* Report errors on unused parameters. */ 40 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ 41 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ 42 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */ 43 | 44 | /* Module Resolution Options */ 45 | // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ 46 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ 47 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ 48 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ 49 | "typeRoots": ["./src/typings","./node_modules/@types/"], /* List of folders to include type definitions from. */ 50 | // "types": [], /* Type declaration files to be included in compilation. */ 51 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ 52 | "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ 53 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ 54 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ 55 | 56 | /* Source Map Options */ 57 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ 58 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ 59 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ 60 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ 61 | 62 | /* Experimental Options */ 63 | // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ 64 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ 65 | 66 | /* Advanced Options */ 67 | "skipLibCheck": true, /* Skip type checking of declaration files. */ 68 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */ 69 | }, 70 | "include": ["./src"] 71 | } 72 | --------------------------------------------------------------------------------