From 8bef79a1a1f8c1f4b40c930f70f0587b9a33a6b5 Mon Sep 17 00:00:00 2001 From: Sergei Panfilov Date: Wed, 22 Apr 2020 11:52:28 +0200 Subject: [PATCH] Release/2.4.0 (#103) * checkstyle * fixed version * bumped version * build * update deps * added tests * fixed export of all countries and andorra * updated readme --- README.md | 207 ++++---- index.js | 3 +- lib/amd/index.js | 3 +- lib/amd/lib/countries/andorra.js | 19 +- lib/amd/lib/countries/index.js | 4 +- lib/commonjs/index.js | 3 +- lib/commonjs/lib/countries/andorra.js | 17 +- lib/es6/index.js | 3 +- lib/es6/lib/countries/andorra.js | 1 + lib/system/index.js | 92 ---- lib/system/lib/countries/andorra.js | 5 +- lib/system/lib/countries/index.js | 7 +- lib/umd/index.js | 87 ---- lib/umd/lib/countries/andorra.js | 7 +- lib/umd/lib/countries/index.js | 4 +- package.json | 8 +- src/index.ts | 7 +- src/lib/countries/andorra.ts | 1 + src/lib/countries/index.ts | 1 + test/andorra.spec.js | 40 +- types/index.d.ts | 3 +- yarn.lock | 712 +++++++++++++++----------- 22 files changed, 581 insertions(+), 653 deletions(-) delete mode 100644 lib/system/index.js delete mode 100644 lib/umd/index.js diff --git a/README.md b/README.md index 037f051..60df919 100644 --- a/README.md +++ b/README.md @@ -9,15 +9,13 @@ [![NPM](https://nodei.co/npm/jsvat.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/jsvat/) [![Package Quality](http://npm.packagequality.com/badge/jsvat.png)](http://packagequality.com/#?package=jsvat) -jsvat -------- +## jsvat [[Demo and Examples]][2] Check the validity of the format of an EU VAT number. No dependencies. -What is it? --------- +## What is it? Small library to check validity VAT numbers (European + some others counties). ([learn more][1] about VAT) @@ -31,92 +29,99 @@ Small library to check validity VAT numbers (European + some others counties). ( - Detecting possible country before you finish; - Typescript; -Installation ----------- +## Installation Installation: - ```bash - npm i jsvat --save - ``` +```bash +npm i jsvat --save +``` (or `yarn add jsvat`) For legacy versions (below v2.0.0) also possible: Bower: `bower i jsvat --save` -Getting Started ----------- +## Getting Started + +```javascript +import { checkVAT, belgium, austria } from 'jsvat'; + +checkVAT('BE0411905847', [belgium]); // true: accept only Belgium VATs +checkVAT('BE0411905847', [belgium, austria]); // true: accept only Belgium or Austria VATs +checkVAT('BE0411905847', [austria]); // false: accept only Austria VATs +``` + +or - ```javascript - import { checkVAT, belgium, austria } from 'jsvat'; - - checkVAT('BE0411905847', [belgium]); // true: accept only Belgium VATs - checkVAT('BE0411905847', [belgium, austria]); // true: accept only Belgium or Austria VATs - checkVAT('BE0411905847', [austria]); // false: accept only Austria VATs - ``` +```javascript +import { checkVAT, countries } from 'jsvat'; +('countries'); +checkVAT('BE0411905847', countries); // check against all supported countries +``` + +to check against all supported countries + +## Return value -Return value ---------- - `checkVAT()` returns `VatCheckResult` object: ```typescript - export interface VatCheckResult { - value?: string; // 'BE0411905847': your VAT without extra characters (like '-', spaces, etc) - isValid: boolean; // The main result. Indicates if VAT is correct against provided countries or not - isValidFormat: boolean; // Indicates the validation of the format of VAT only. E.g. "BE0411905847" is a valid VAT, and "BE0897221791" is not. But they both has valid format, so "isValidFormat" will return "true" - isSupportedCountry: boolean; // Indicates if "jsvat" could recognize the VAT. Sometimes you want to understand - if it's an invalid VAT from supported country or from an unknown one - country?: { // VAT's country (null if not found). By "supported" I mean imported. - name: string; // ISO country name of VAT - isoCode: { // Country ISO codes - short: string; - long: string; - numeric: string; - }; + value?: string; // 'BE0411905847': your VAT without extra characters (like '-', spaces, etc) + isValid: boolean; // The main result. Indicates if VAT is correct against provided countries or not + isValidFormat: boolean; // Indicates the validation of the format of VAT only. E.g. "BE0411905847" is a valid VAT, and "BE0897221791" is not. But they both has valid format, so "isValidFormat" will return "true" + isSupportedCountry: boolean; // Indicates if "jsvat" could recognize the VAT. Sometimes you want to understand - if it's an invalid VAT from supported country or from an unknown one + country?: { + // VAT's country (null if not found). By "supported" I mean imported. + name: string; // ISO country name of VAT + isoCode: { + // Country ISO codes + short: string; + long: string; + numeric: string; }; + }; } ``` -List of supported Countries: ---------- - - - Austria - - Belgium - - Bulgaria - - Switzerland - - Cyprus - - Czech Republic - - Germany - - Denmark - - Greece - - Spain - - Europe - - Estonia - - Finland - - France - - United Kingdom - - Croatia - - Hungary - - Ireland - - Italy - - Latvia - - Lithuania - - Luxembourg - - Malta - - Netherlands - - Norway - - Poland - - Portugal - - Romania - - Russia Federation - - Serbia - - Slovenia - - Slovakia republic - - Sweden - -How to import all countries at once? ----------- +## List of supported Countries: + +- Andorra +- Austria +- Belgium +- Bulgaria +- Switzerland +- Cyprus +- Czech Republic +- Germany +- Denmark +- Greece +- Spain +- Europe +- Estonia +- Finland +- France +- United Kingdom +- Croatia +- Hungary +- Ireland +- Italy +- Latvia +- Lithuania +- Luxembourg +- Malta +- Netherlands +- Norway +- Poland +- Portugal +- Romania +- Russia Federation +- Serbia +- Slovenia +- Slovakia republic +- Sweden + +## How to import all countries at once? ```javascript import { checkVAT, countries } from 'jsvat'; @@ -125,23 +130,23 @@ import { checkVAT, countries } from 'jsvat'; checkVAT('WD12345678', countries); ``` -Extend countries list - add your own country: ----------- +## Extend countries list - add your own country: You can add your own country. In general `Country` should implement following structure: ```typescript interface Country { - name: string; - codes: ReadonlyArray; - calcFn: (vat: string, options?: object) => boolean; //options - isn't a mandatory param - rules: { - multipliers: {}; // you can leave it empty - regex: ReadonlyArray; - }; + name: string; + codes: ReadonlyArray; + calcFn: (vat: string, options?: object) => boolean; //options - isn't a mandatory param + rules: { + multipliers: {}; // you can leave it empty + regex: ReadonlyArray; + }; } ``` + Example: ```javascript @@ -159,33 +164,31 @@ export const wonderland = { }; checkVAT('WD12345678', [wonderland]); // true - ``` -About modules... ES6 / CommonJS / AMD / UMD / System ----------- +## About modules... ES6 / CommonJS / AMD / UMD / System -jsvat build includes `es6`, `commonjs`, `amd`, `umd` and `system` builds at the same time. +jsvat build includes `es6`, `commonjs`, `amd`, `umd` and `system` builds at the same time. By default you will stick to `es6` version for browsers and build tools (webpack, etc): -which expects you to import it as +which expects you to import it as ```javascript import { checkVAT, belgium, austria } from 'jsvat'; -```` +``` Node.js automatically will pick up `CommonJS` version by default. Means you could import it like: ```jsx harmony // Modern Frontend and Node -const { checkVAT, belgium, austria } = require('jsvat'); +const { checkVAT, belgium, austria } = require('jsvat'); - // Node.js +// Node.js const { checkVAT, belgium, austria } = require('jsvat'); // Legacy Frontend - +; ``` Alternatively you can specify which module system you do want, e.g.: @@ -198,7 +201,7 @@ const { checkVAT, belgium, austria } = require('jsvat/lib/commonjs'); import { checkVAT, belgium, austria } from 'jsvat/lib/es6'; // UMD - +; // AMD const { checkVAT, belgium, austria } = require('jsvat/lib/amd'); @@ -207,36 +210,32 @@ const { checkVAT, belgium, austria } = require('jsvat/lib/amd'); import { checkVAT, belgium, austria } from 'jsvat/lib/system'; ``` -How jsvat checks validity? ---------- +## How jsvat checks validity? There is 2-step check: 1. Compare with list of Regexps; - For example regexp for austria is `/^(AT)U(\d{8})$/`. +For example regexp for austria is `/^(AT)U(\d{8})$/`. - Looks like `ATU99999999` is valid (it's satisfy the regexp), but actually it's should be invalid. +Looks like `ATU99999999` is valid (it's satisfy the regexp), but actually it's should be invalid. 2. Some magic mathematical counting; - Here we make some mathematical calculation (different for each country). - After that we may be sure that `ATU99999999`and for example `ATV66889218` isn't valid, but `ATU12011204` is valid. +Here we make some mathematical calculation (different for each country). +After that we may be sure that `ATU99999999`and for example `ATV66889218` isn't valid, but `ATU12011204` is valid. NOTE: VAT numbers of some countries should ends up with special characters. Like '01' for Sweden or "L" for Cyprus. If 100% real VAT doesn't fit, try to add proper appendix. - -Browsers Supports ---------- +## Browsers Supports Support only of evergreen browsers. Legacy versions (below v2.0.0) supports all browsers down to IE9 (including IE9). -LICENSE -------- +## LICENSE The MIT License (MIT) @@ -260,5 +259,5 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - [1]: https://en.wikipedia.org/wiki/VAT_identification_number - [2]: https://se-panfilov.github.io/jsvat +[1]: https://en.wikipedia.org/wiki/VAT_identification_number +[2]: https://se-panfilov.github.io/jsvat diff --git a/index.js b/index.js index 93ea3e6..f59ad35 100644 --- a/index.js +++ b/index.js @@ -32,5 +32,6 @@ export { spain } from './lib/es6/lib/countries/spain'; export { sweden } from './lib/es6/lib/countries/sweden'; export { switzerland } from './lib/es6/lib/countries/switzerland'; export { unitedKingdom } from './lib/es6/lib/countries/unitedKingdom'; +export { countries } from './lib/es6'; -export { checkVAT } from './lib/es6'; \ No newline at end of file +export { checkVAT } from './lib/es6'; diff --git a/lib/amd/index.js b/lib/amd/index.js index 76391ca..a25e62f 100644 --- a/lib/amd/index.js +++ b/lib/amd/index.js @@ -1,7 +1,7 @@ define(["require", "exports", "./lib/countries", "./lib/countries", "./lib/jsvat"], function (require, exports, countries_1, countries_2, jsvat_1) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - const countries = [ + exports.countries = [ countries_1.andorra, countries_1.austria, countries_1.belgium, @@ -37,7 +37,6 @@ define(["require", "exports", "./lib/countries", "./lib/countries", "./lib/jsvat countries_1.switzerland, countries_1.unitedKingdom ]; - exports.countries = countries; exports.andorra = countries_2.andorra; exports.austria = countries_2.austria; exports.belgium = countries_2.belgium; diff --git a/lib/amd/lib/countries/andorra.js b/lib/amd/lib/countries/andorra.js index ee627a0..abaf7df 100644 --- a/lib/amd/lib/countries/andorra.js +++ b/lib/amd/lib/countries/andorra.js @@ -2,13 +2,14 @@ define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.andorra = { - name: 'Andorra', - codes: ['AD', 'AND', '020'], - calcFn: (vat) => { - return vat.length === 8; - }, - rules: { - regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] - } + name: 'Andorra', + codes: ['AD', 'AND', '020'], + calcFn: (vat) => { + return vat.length === 8; + }, + rules: { + multipliers: {}, + regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] + } }; -}); \ No newline at end of file +}); diff --git a/lib/amd/lib/countries/index.js b/lib/amd/lib/countries/index.js index 0f31350..cb5415b 100644 --- a/lib/amd/lib/countries/index.js +++ b/lib/amd/lib/countries/index.js @@ -1,7 +1,7 @@ -define(["require", "exports", "./austria", "./belgium", "./bulgaria", "./croatiat", "./cyprus", "./czechRepublic", "./denmark", "./estonia", "./europe", "./finland", "./france", "./germany", "./greece", "./hungary", "./ireland", "./italy", "./latvia", "./lithuania", "./luxembourg", "./malta", "./netherlands", "./norway", "./poland", "./portugal", "./romania", "./russia", "./serbia", "./slovakiaRepublic", "./slovenia", "./spain", "./sweden", "./switzerland", "./unitedKingdom"], function (require, exports, austria_1, belgium_1, bulgaria_1, croatiat_1, cyprus_1, czechRepublic_1, denmark_1, estonia_1, europe_1, finland_1, france_1, germany_1, greece_1, hungary_1, ireland_1, italy_1, latvia_1, lithuania_1, luxembourg_1, malta_1, netherlands_1, norway_1, poland_1, portugal_1, romania_1, russia_1, serbia_1, slovakiaRepublic_1, slovenia_1, spain_1, sweden_1, switzerland_1, unitedKingdom_1) { +define(["require", "exports", "./andorra", "./austria", "./belgium", "./bulgaria", "./croatiat", "./cyprus", "./czechRepublic", "./denmark", "./estonia", "./europe", "./finland", "./france", "./germany", "./greece", "./hungary", "./ireland", "./italy", "./latvia", "./lithuania", "./luxembourg", "./malta", "./netherlands", "./norway", "./poland", "./portugal", "./romania", "./russia", "./serbia", "./slovakiaRepublic", "./slovenia", "./spain", "./sweden", "./switzerland", "./unitedKingdom"], function (require, exports, andorra_1, austria_1, belgium_1, bulgaria_1, croatiat_1, cyprus_1, czechRepublic_1, denmark_1, estonia_1, europe_1, finland_1, france_1, germany_1, greece_1, hungary_1, ireland_1, italy_1, latvia_1, lithuania_1, luxembourg_1, malta_1, netherlands_1, norway_1, poland_1, portugal_1, romania_1, russia_1, serbia_1, slovakiaRepublic_1, slovenia_1, spain_1, sweden_1, switzerland_1, unitedKingdom_1) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.andorra = austria_1.andorra; + exports.andorra = andorra_1.andorra; exports.austria = austria_1.austria; exports.belgium = belgium_1.belgium; exports.bulgaria = bulgaria_1.bulgaria; diff --git a/lib/commonjs/index.js b/lib/commonjs/index.js index 31f7408..1062cd5 100644 --- a/lib/commonjs/index.js +++ b/lib/commonjs/index.js @@ -1,7 +1,7 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var countries_1 = require("./lib/countries"); -var countries = [ +exports.countries = [ countries_1.andorra, countries_1.austria, countries_1.belgium, @@ -37,7 +37,6 @@ var countries = [ countries_1.switzerland, countries_1.unitedKingdom ]; -exports.countries = countries; var countries_2 = require("./lib/countries"); exports.andorra = countries_2.andorra; exports.austria = countries_2.austria; diff --git a/lib/commonjs/lib/countries/andorra.js b/lib/commonjs/lib/countries/andorra.js index 4ac16f2..381516d 100644 --- a/lib/commonjs/lib/countries/andorra.js +++ b/lib/commonjs/lib/countries/andorra.js @@ -1,12 +1,13 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.andorra = { - name: 'Andorra', - codes: ['AD', 'AND', '020'], - calcFn: (vat) => { - return vat.length === 8; - }, - rules: { - regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] - } + name: 'Andorra', + codes: ['AD', 'AND', '020'], + calcFn: function (vat) { + return vat.length === 8; + }, + rules: { + multipliers: {}, + regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] + } }; diff --git a/lib/es6/index.js b/lib/es6/index.js index d572374..a6818c8 100644 --- a/lib/es6/index.js +++ b/lib/es6/index.js @@ -1,5 +1,5 @@ import { andorra, austria, belgium, bulgaria, croatia, cyprus, czechRepublic, denmark, estonia, europe, finland, france, germany, greece, hungary, ireland, italy, latvia, lithuania, luxembourg, malta, netherlands, norway, poland, portugal, romania, russia, serbia, slovakiaRepublic, slovenia, spain, sweden, switzerland, unitedKingdom } from './lib/countries'; -const countries = [ +export const countries = [ andorra, austria, belgium, @@ -35,6 +35,5 @@ const countries = [ switzerland, unitedKingdom ]; -export { countries }; export { andorra, austria, belgium, bulgaria, croatia, cyprus, czechRepublic, denmark, estonia, europe, finland, france, germany, greece, hungary, ireland, italy, latvia, lithuania, luxembourg, malta, netherlands, norway, poland, portugal, romania, russia, serbia, slovakiaRepublic, slovenia, spain, sweden, switzerland, unitedKingdom } from './lib/countries'; export { checkVAT } from './lib/jsvat'; diff --git a/lib/es6/lib/countries/andorra.js b/lib/es6/lib/countries/andorra.js index 745d2db..fccef90 100644 --- a/lib/es6/lib/countries/andorra.js +++ b/lib/es6/lib/countries/andorra.js @@ -5,6 +5,7 @@ export const andorra = { return vat.length === 8; }, rules: { + multipliers: {}, regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] } }; diff --git a/lib/system/index.js b/lib/system/index.js deleted file mode 100644 index 7d0052e..0000000 --- a/lib/system/index.js +++ /dev/null @@ -1,92 +0,0 @@ -System.register(["./lib/countries", "./lib/jsvat"], function (exports_1, context_1) { - "use strict"; - var countries_1, countries; - var __moduleName = context_1 && context_1.id; - return { - setters: [ - function (countries_1_1) { - countries_1 = countries_1_1; - exports_1({ - "andorra": countries_1_1["andorra"], - "austria": countries_1_1["austria"], - "belgium": countries_1_1["belgium"], - "bulgaria": countries_1_1["bulgaria"], - "croatia": countries_1_1["croatia"], - "cyprus": countries_1_1["cyprus"], - "czechRepublic": countries_1_1["czechRepublic"], - "denmark": countries_1_1["denmark"], - "estonia": countries_1_1["estonia"], - "europe": countries_1_1["europe"], - "finland": countries_1_1["finland"], - "france": countries_1_1["france"], - "germany": countries_1_1["germany"], - "greece": countries_1_1["greece"], - "hungary": countries_1_1["hungary"], - "ireland": countries_1_1["ireland"], - "italy": countries_1_1["italy"], - "latvia": countries_1_1["latvia"], - "lithuania": countries_1_1["lithuania"], - "luxembourg": countries_1_1["luxembourg"], - "malta": countries_1_1["malta"], - "netherlands": countries_1_1["netherlands"], - "norway": countries_1_1["norway"], - "poland": countries_1_1["poland"], - "portugal": countries_1_1["portugal"], - "romania": countries_1_1["romania"], - "russia": countries_1_1["russia"], - "serbia": countries_1_1["serbia"], - "slovakiaRepublic": countries_1_1["slovakiaRepublic"], - "slovenia": countries_1_1["slovenia"], - "spain": countries_1_1["spain"], - "sweden": countries_1_1["sweden"], - "switzerland": countries_1_1["switzerland"], - "unitedKingdom": countries_1_1["unitedKingdom"] - }); - }, - function (jsvat_1_1) { - exports_1({ - "checkVAT": jsvat_1_1["checkVAT"] - }); - } - ], - execute: function () { - countries = [ - countries_1.andorra, - countries_1.austria, - countries_1.belgium, - countries_1.bulgaria, - countries_1.croatia, - countries_1.cyprus, - countries_1.czechRepublic, - countries_1.denmark, - countries_1.estonia, - countries_1.europe, - countries_1.finland, - countries_1.france, - countries_1.germany, - countries_1.greece, - countries_1.hungary, - countries_1.ireland, - countries_1.italy, - countries_1.latvia, - countries_1.lithuania, - countries_1.luxembourg, - countries_1.malta, - countries_1.netherlands, - countries_1.norway, - countries_1.poland, - countries_1.portugal, - countries_1.romania, - countries_1.russia, - countries_1.serbia, - countries_1.slovakiaRepublic, - countries_1.slovenia, - countries_1.spain, - countries_1.sweden, - countries_1.switzerland, - countries_1.unitedKingdom - ]; - exports_1("countries", countries); - } - }; -}); diff --git a/lib/system/lib/countries/andorra.js b/lib/system/lib/countries/andorra.js index a535351..a85a2e8 100644 --- a/lib/system/lib/countries/andorra.js +++ b/lib/system/lib/countries/andorra.js @@ -9,10 +9,11 @@ System.register([], function (exports_1, context_1) { name: 'Andorra', codes: ['AD', 'AND', '020'], calcFn: (vat) => { - return vat.length === 8; + return vat.length === 8; }, rules: { - regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] + multipliers: {}, + regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] } }); } diff --git a/lib/system/lib/countries/index.js b/lib/system/lib/countries/index.js index a2a0b24..ea5fbff 100644 --- a/lib/system/lib/countries/index.js +++ b/lib/system/lib/countries/index.js @@ -1,8 +1,13 @@ -System.register(["./austria", "./belgium", "./bulgaria", "./croatiat", "./cyprus", "./czechRepublic", "./denmark", "./estonia", "./europe", "./finland", "./france", "./germany", "./greece", "./hungary", "./ireland", "./italy", "./latvia", "./lithuania", "./luxembourg", "./malta", "./netherlands", "./norway", "./poland", "./portugal", "./romania", "./russia", "./serbia", "./slovakiaRepublic", "./slovenia", "./spain", "./sweden", "./switzerland", "./unitedKingdom"], function (exports_1, context_1) { +System.register(["./andorra", "./austria", "./belgium", "./bulgaria", "./croatiat", "./cyprus", "./czechRepublic", "./denmark", "./estonia", "./europe", "./finland", "./france", "./germany", "./greece", "./hungary", "./ireland", "./italy", "./latvia", "./lithuania", "./luxembourg", "./malta", "./netherlands", "./norway", "./poland", "./portugal", "./romania", "./russia", "./serbia", "./slovakiaRepublic", "./slovenia", "./spain", "./sweden", "./switzerland", "./unitedKingdom"], function (exports_1, context_1) { "use strict"; var __moduleName = context_1 && context_1.id; return { setters: [ + function (andorra_1_1) { + exports_1({ + "andorra": andorra_1_1["andorra"] + }); + }, function (austria_1_1) { exports_1({ "austria": austria_1_1["austria"] diff --git a/lib/umd/index.js b/lib/umd/index.js deleted file mode 100644 index 452e50a..0000000 --- a/lib/umd/index.js +++ /dev/null @@ -1,87 +0,0 @@ -(function (factory) { - if (typeof module === "object" && typeof module.exports === "object") { - var v = factory(require, exports); - if (v !== undefined) module.exports = v; - } - else if (typeof define === "function" && define.amd) { - define(["require", "exports", "./lib/countries", "./lib/countries", "./lib/jsvat"], factory); - } -})(function (require, exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - const countries_1 = require("./lib/countries"); - const countries = [ - countries_1.andorra, - countries_1.austria, - countries_1.belgium, - countries_1.bulgaria, - countries_1.croatia, - countries_1.cyprus, - countries_1.czechRepublic, - countries_1.denmark, - countries_1.estonia, - countries_1.europe, - countries_1.finland, - countries_1.france, - countries_1.germany, - countries_1.greece, - countries_1.hungary, - countries_1.ireland, - countries_1.italy, - countries_1.latvia, - countries_1.lithuania, - countries_1.luxembourg, - countries_1.malta, - countries_1.netherlands, - countries_1.norway, - countries_1.poland, - countries_1.portugal, - countries_1.romania, - countries_1.russia, - countries_1.serbia, - countries_1.slovakiaRepublic, - countries_1.slovenia, - countries_1.spain, - countries_1.sweden, - countries_1.switzerland, - countries_1.unitedKingdom - ]; - exports.countries = countries; - var countries_2 = require("./lib/countries"); - exports.andorra = countries_2.andorra; - exports.austria = countries_2.austria; - exports.belgium = countries_2.belgium; - exports.bulgaria = countries_2.bulgaria; - exports.croatia = countries_2.croatia; - exports.cyprus = countries_2.cyprus; - exports.czechRepublic = countries_2.czechRepublic; - exports.denmark = countries_2.denmark; - exports.estonia = countries_2.estonia; - exports.europe = countries_2.europe; - exports.finland = countries_2.finland; - exports.france = countries_2.france; - exports.germany = countries_2.germany; - exports.greece = countries_2.greece; - exports.hungary = countries_2.hungary; - exports.ireland = countries_2.ireland; - exports.italy = countries_2.italy; - exports.latvia = countries_2.latvia; - exports.lithuania = countries_2.lithuania; - exports.luxembourg = countries_2.luxembourg; - exports.malta = countries_2.malta; - exports.netherlands = countries_2.netherlands; - exports.norway = countries_2.norway; - exports.poland = countries_2.poland; - exports.portugal = countries_2.portugal; - exports.romania = countries_2.romania; - exports.russia = countries_2.russia; - exports.serbia = countries_2.serbia; - exports.slovakiaRepublic = countries_2.slovakiaRepublic; - exports.slovenia = countries_2.slovenia; - exports.spain = countries_2.spain; - exports.sweden = countries_2.sweden; - exports.switzerland = countries_2.switzerland; - exports.unitedKingdom = countries_2.unitedKingdom; - var jsvat_1 = require("./lib/jsvat"); - exports.checkVAT = jsvat_1.checkVAT; -}); diff --git a/lib/umd/lib/countries/andorra.js b/lib/umd/lib/countries/andorra.js index 09a6aa8..55d2f35 100644 --- a/lib/umd/lib/countries/andorra.js +++ b/lib/umd/lib/countries/andorra.js @@ -9,14 +9,15 @@ })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.austria = { + exports.andorra = { name: 'Andorra', codes: ['AD', 'AND', '020'], calcFn: (vat) => { - return vat.length === 8; + return vat.length === 8; }, rules: { - regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] + multipliers: {}, + regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] } }; }); diff --git a/lib/umd/lib/countries/index.js b/lib/umd/lib/countries/index.js index 2e9c1a8..3957c32 100644 --- a/lib/umd/lib/countries/index.js +++ b/lib/umd/lib/countries/index.js @@ -4,11 +4,13 @@ if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { - define(["require", "exports", "./austria", "./belgium", "./bulgaria", "./croatiat", "./cyprus", "./czechRepublic", "./denmark", "./estonia", "./europe", "./finland", "./france", "./germany", "./greece", "./hungary", "./ireland", "./italy", "./latvia", "./lithuania", "./luxembourg", "./malta", "./netherlands", "./norway", "./poland", "./portugal", "./romania", "./russia", "./serbia", "./slovakiaRepublic", "./slovenia", "./spain", "./sweden", "./switzerland", "./unitedKingdom"], factory); + define(["require", "exports", "./andorra", "./austria", "./belgium", "./bulgaria", "./croatiat", "./cyprus", "./czechRepublic", "./denmark", "./estonia", "./europe", "./finland", "./france", "./germany", "./greece", "./hungary", "./ireland", "./italy", "./latvia", "./lithuania", "./luxembourg", "./malta", "./netherlands", "./norway", "./poland", "./portugal", "./romania", "./russia", "./serbia", "./slovakiaRepublic", "./slovenia", "./spain", "./sweden", "./switzerland", "./unitedKingdom"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); + var andorra_1 = require("./andorra"); + exports.andorra = andorra_1.andorra; var austria_1 = require("./austria"); exports.austria = austria_1.austria; var belgium_1 = require("./belgium"); diff --git a/package.json b/package.json index eed3250..f718161 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jsvat", - "version": "2.3.1", + "version": "2.4.0", "description": "Check the validity of the format of an EU VAT number", "main": "./lib/commonjs/index.js", "module": "./lib/es6/index.js", @@ -58,11 +58,11 @@ "babel": "6.23.0", "babel-plugin-transform-es2015-modules-commonjs": "6.26.2", "husky": "4.2.5", - "jest": "25.3.0", - "prettier": "2.0.4", + "jest": "25.4.0", + "prettier": "2.0.5", "pretty-quick": "2.0.1", "rimraf": "3.0.2", - "ts-loader": "7.0.0", + "ts-loader": "7.0.1", "tslint": "6.1.1", "tslint-config-prettier": "1.18.0", "tslint-immutable": "6.0.1", diff --git a/src/index.ts b/src/index.ts index 1cc16a4..fd618bc 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,4 +1,5 @@ import { + andorra, austria, belgium, bulgaria, @@ -35,7 +36,8 @@ import { } from './lib/countries'; import { Country } from './lib/jsvat'; -const countries: ReadonlyArray = [ +export const countries: ReadonlyArray = [ + andorra, austria, belgium, bulgaria, @@ -71,9 +73,8 @@ const countries: ReadonlyArray = [ unitedKingdom ]; -export { countries }; - export { + andorra, austria, belgium, bulgaria, diff --git a/src/lib/countries/andorra.ts b/src/lib/countries/andorra.ts index ac3c33f..3b49d62 100644 --- a/src/lib/countries/andorra.ts +++ b/src/lib/countries/andorra.ts @@ -7,6 +7,7 @@ export const andorra: Country = { return vat.length === 8; }, rules: { + multipliers: {}, regex: [/^(AD)([fealecdgopuFEALECDGOPU]{1}\d{6}[fealecdgopuFEALECDGOPU]{1})$/] } }; diff --git a/src/lib/countries/index.ts b/src/lib/countries/index.ts index 0d13902..68dd5fe 100644 --- a/src/lib/countries/index.ts +++ b/src/lib/countries/index.ts @@ -1,3 +1,4 @@ +export { andorra } from './andorra'; export { austria } from './austria'; export { belgium } from './belgium'; export { bulgaria } from './bulgaria'; diff --git a/test/andorra.spec.js b/test/andorra.spec.js index c932ced..57e32b9 100644 --- a/test/andorra.spec.js +++ b/test/andorra.spec.js @@ -1,27 +1,25 @@ -import { andorra } from '../index' -import { codes, invalid, name, valid } from './countries_vat_lists/andorra.vat' -import { addCharsToString, checkInvalidVat, checkValidVat } from './utils' +import { andorra } from '../index'; +import { codes, invalid, name, valid } from './countries_vat_lists/andorra.vat'; +import { addCharsToString, checkInvalidVat, checkOnlyValidFormatVat, checkValidVat } from './utils'; describe('Andorra', () => { + it('should return "true" result for valid VATs', () => { + valid.forEach((vat) => checkValidVat(vat, [andorra], codes, name)); + }); - it('should return true result for valid VATs', () => { - valid.forEach(vat => checkValidVat(vat, [andorra], codes, name)) - }) + it('should return "true" for "isSupportedCountry" and "isValidFormat" fields, but "false" for "isValid" for VATs that match format but still invalid', () => { + validOnlyByFormat.forEach((vat) => checkOnlyValidFormatVat(vat, [andorra], codes, name)); + }); - it('should return true result for valid VATs with extra dash characters', () => { - valid - .map(vat => addCharsToString(vat, '-')) - .forEach(vat => checkValidVat(vat, [andorra], codes, name)) - }) + it('should return "true" result for valid VATs with extra dash characters', () => { + valid.map((vat) => addCharsToString(vat, '-')).forEach((vat) => checkValidVat(vat, [andorra], codes, name)); + }); - it('should return true result for valid VATs with extra space characters', () => { - valid - .map(vat => addCharsToString(vat, ' ')) - .forEach(vat => checkValidVat(vat, [andorra], codes, name)) - }) + it('should return "true" result for valid VATs with extra space characters', () => { + valid.map((vat) => addCharsToString(vat, ' ')).forEach((vat) => checkValidVat(vat, [andorra], codes, name)); + }); - it('should return false result for invalid VATs', () => { - invalid.forEach(vat => checkInvalidVat(vat, [andorra])) - }) - -}) + it('should return "false" result for invalid VATs', () => { + invalid.forEach((vat) => checkInvalidVat(vat, [andorra])); + }); +}); diff --git a/types/index.d.ts b/types/index.d.ts index cc6f00e..70b649d 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -1,5 +1,4 @@ import { Country } from './lib/jsvat'; -declare const countries: ReadonlyArray; -export { countries }; +export declare const countries: ReadonlyArray; export { andorra, austria, belgium, bulgaria, croatia, cyprus, czechRepublic, denmark, estonia, europe, finland, france, germany, greece, hungary, ireland, italy, latvia, lithuania, luxembourg, malta, netherlands, norway, poland, portugal, romania, russia, serbia, slovakiaRepublic, slovenia, spain, sweden, switzerland, unitedKingdom } from './lib/countries'; export { checkVAT, Rules, Country, Multipliers, VatCheckResult } from './lib/jsvat'; diff --git a/yarn.lock b/yarn.lock index d0b4681..feaa595 100644 --- a/yarn.lock +++ b/yarn.lock @@ -900,43 +900,44 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-25.3.0.tgz#33b56b81238427bf3ebe3f7b3378d2f79cdbd409" - integrity sha512-LvSDNqpmZIZyweFaEQ6wKY7CbexPitlsLHGJtcooNECo0An/w49rFhjCJzu6efeb6+a3ee946xss1Jcd9r03UQ== +"@jest/console@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-25.4.0.tgz#e2760b532701137801ba824dcff6bc822c961bac" + integrity sha512-CfE0erx4hdJ6t7RzAcE1wLG6ZzsHSmybvIBQDoCkDM1QaSeWL9wJMzID/2BbHHa7ll9SsbbK43HjbERbBaFX2A== dependencies: - "@jest/source-map" "^25.2.6" + "@jest/types" "^25.4.0" chalk "^3.0.0" - jest-util "^25.3.0" + jest-message-util "^25.4.0" + jest-util "^25.4.0" slash "^3.0.0" -"@jest/core@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-25.3.0.tgz#80f97a7a8b59dde741a24f30871cc26d0197d426" - integrity sha512-+D5a/tFf6pA/Gqft2DLBp/yeSRgXhlJ+Wpst0X/ZkfTRP54qDR3C61VfHwaex+GzZBiTcE9vQeoZ2v5T10+Mqw== - dependencies: - "@jest/console" "^25.3.0" - "@jest/reporters" "^25.3.0" - "@jest/test-result" "^25.3.0" - "@jest/transform" "^25.3.0" - "@jest/types" "^25.3.0" +"@jest/core@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-25.4.0.tgz#cc1fe078df69b8f0fbb023bb0bcee23ef3b89411" + integrity sha512-h1x9WSVV0+TKVtATGjyQIMJENs8aF6eUjnCoi4jyRemYZmekLr8EJOGQqTWEX8W6SbZ6Skesy9pGXrKeAolUJw== + dependencies: + "@jest/console" "^25.4.0" + "@jest/reporters" "^25.4.0" + "@jest/test-result" "^25.4.0" + "@jest/transform" "^25.4.0" + "@jest/types" "^25.4.0" ansi-escapes "^4.2.1" chalk "^3.0.0" exit "^0.1.2" graceful-fs "^4.2.3" - jest-changed-files "^25.3.0" - jest-config "^25.3.0" - jest-haste-map "^25.3.0" - jest-message-util "^25.3.0" + jest-changed-files "^25.4.0" + jest-config "^25.4.0" + jest-haste-map "^25.4.0" + jest-message-util "^25.4.0" jest-regex-util "^25.2.6" - jest-resolve "^25.3.0" - jest-resolve-dependencies "^25.3.0" - jest-runner "^25.3.0" - jest-runtime "^25.3.0" - jest-snapshot "^25.3.0" - jest-util "^25.3.0" - jest-validate "^25.3.0" - jest-watcher "^25.3.0" + jest-resolve "^25.4.0" + jest-resolve-dependencies "^25.4.0" + jest-runner "^25.4.0" + jest-runtime "^25.4.0" + jest-snapshot "^25.4.0" + jest-util "^25.4.0" + jest-validate "^25.4.0" + jest-watcher "^25.4.0" micromatch "^4.0.2" p-each-series "^2.1.0" realpath-native "^2.0.0" @@ -944,36 +945,36 @@ slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-25.3.0.tgz#587f28ddb4b0dfe97404d3d4a4c9dbfa0245fb2e" - integrity sha512-vgooqwJTHLLak4fE+TaCGeYP7Tz1Y3CKOsNxR1sE0V3nx3KRUHn3NUnt+wbcfd5yQWKZQKAfW6wqbuwQLrXo3g== +"@jest/environment@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-25.4.0.tgz#45071f525f0d8c5a51ed2b04fd42b55a8f0c7cb3" + integrity sha512-KDctiak4mu7b4J6BIoN/+LUL3pscBzoUCP+EtSPd2tK9fqyDY5OF+CmkBywkFWezS9tyH5ACOQNtpjtueEDH6Q== dependencies: - "@jest/fake-timers" "^25.3.0" - "@jest/types" "^25.3.0" - jest-mock "^25.3.0" + "@jest/fake-timers" "^25.4.0" + "@jest/types" "^25.4.0" + jest-mock "^25.4.0" -"@jest/fake-timers@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-25.3.0.tgz#995aad36d5c8984165ca5db12e740ab8dbf7042a" - integrity sha512-NHAj7WbsyR3qBJPpBwSwqaq2WluIvUQsyzpJTN7XDVk7VnlC/y1BAnaYZL3vbPIP8Nhm0Ae5DJe0KExr/SdMJQ== +"@jest/fake-timers@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-25.4.0.tgz#3a9a4289ba836abd084953dca406389a57e00fbd" + integrity sha512-lI9z+VOmVX4dPPFzyj0vm+UtaB8dCJJ852lcDnY0uCPRvZAaVGnMwBBc1wxtf+h7Vz6KszoOvKAt4QijDnHDkg== dependencies: - "@jest/types" "^25.3.0" - jest-message-util "^25.3.0" - jest-mock "^25.3.0" - jest-util "^25.3.0" + "@jest/types" "^25.4.0" + jest-message-util "^25.4.0" + jest-mock "^25.4.0" + jest-util "^25.4.0" lolex "^5.0.0" -"@jest/reporters@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-25.3.0.tgz#7f39f0e6911561cc5112a1b54656de18faee269b" - integrity sha512-1u0ZBygs0C9DhdYgLCrRfZfNKQa+9+J7Uo+Z9z0RWLHzgsxhoG32lrmMOtUw48yR6bLNELdvzormwUqSk4H4Vg== +"@jest/reporters@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-25.4.0.tgz#836093433b32ce4e866298af2d6fcf6ed351b0b0" + integrity sha512-bhx/buYbZgLZm4JWLcRJ/q9Gvmd3oUh7k2V7gA4ZYBx6J28pIuykIouclRdiAC6eGVX1uRZT+GK4CQJLd/PwPg== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^25.3.0" - "@jest/test-result" "^25.3.0" - "@jest/transform" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/console" "^25.4.0" + "@jest/test-result" "^25.4.0" + "@jest/transform" "^25.4.0" + "@jest/types" "^25.4.0" chalk "^3.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" @@ -983,15 +984,15 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^25.3.0" - jest-resolve "^25.3.0" - jest-util "^25.3.0" - jest-worker "^25.2.6" + jest-haste-map "^25.4.0" + jest-resolve "^25.4.0" + jest-util "^25.4.0" + jest-worker "^25.4.0" slash "^3.0.0" source-map "^0.6.0" string-length "^3.1.0" terminal-link "^2.0.0" - v8-to-istanbul "^4.0.1" + v8-to-istanbul "^4.1.3" optionalDependencies: node-notifier "^6.0.0" @@ -1004,41 +1005,41 @@ graceful-fs "^4.2.3" source-map "^0.6.0" -"@jest/test-result@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-25.3.0.tgz#137fab5e5c6fed36e5d40735d1eb029325e3bf06" - integrity sha512-mqrGuiiPXl1ap09Mydg4O782F3ouDQfsKqtQzIjitpwv3t1cHDwCto21jThw6WRRE+dKcWQvLG70GpyLJICfGw== +"@jest/test-result@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-25.4.0.tgz#6f2ec2c8da9981ef013ad8651c1c6f0cb20c6324" + integrity sha512-8BAKPaMCHlL941eyfqhWbmp3MebtzywlxzV+qtngQ3FH+RBqnoSAhNEPj4MG7d2NVUrMOVfrwuzGpVIK+QnMAA== dependencies: - "@jest/console" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/console" "^25.4.0" + "@jest/types" "^25.4.0" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-25.3.0.tgz#271ad5f2b8f8137d092ccedc87e16a50f8676209" - integrity sha512-Xvns3xbji7JCvVcDGvqJ/pf4IpmohPODumoPEZJ0/VgC5gI4XaNVIBET2Dq5Czu6Gk3xFcmhtthh/MBOTljdNg== +"@jest/test-sequencer@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-25.4.0.tgz#2b96f9d37f18dc3336b28e3c8070f97f9f55f43b" + integrity sha512-240cI+nsM3attx2bMp9uGjjHrwrpvxxrZi8Tyqp/cfOzl98oZXVakXBgxODGyBYAy/UGXPKXLvNc2GaqItrsJg== dependencies: - "@jest/test-result" "^25.3.0" - jest-haste-map "^25.3.0" - jest-runner "^25.3.0" - jest-runtime "^25.3.0" + "@jest/test-result" "^25.4.0" + jest-haste-map "^25.4.0" + jest-runner "^25.4.0" + jest-runtime "^25.4.0" -"@jest/transform@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-25.3.0.tgz#083c5447d5307d9b9494d6968115b647460e71f1" - integrity sha512-W01p8kTDvvEX6kd0tJc7Y5VdYyFaKwNWy1HQz6Jqlhu48z/8Gxp+yFCDVj+H8Rc7ezl3Mg0hDaGuFVkmHOqirg== +"@jest/transform@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-25.4.0.tgz#eef36f0367d639e2fd93dccd758550377fbb9962" + integrity sha512-t1w2S6V1sk++1HHsxboWxPEuSpN8pxEvNrZN+Ud/knkROWtf8LeUmz73A4ezE8476a5AM00IZr9a8FO9x1+j3g== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" babel-plugin-istanbul "^6.0.0" chalk "^3.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.3" - jest-haste-map "^25.3.0" + jest-haste-map "^25.4.0" jest-regex-util "^25.2.6" - jest-util "^25.3.0" + jest-util "^25.4.0" micromatch "^4.0.2" pirates "^4.0.1" realpath-native "^2.0.0" @@ -1046,10 +1047,10 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/types@^25.3.0": - version "25.3.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.3.0.tgz#88f94b277a1d028fd7117bc1f74451e0fc2131e7" - integrity sha512-UkaDNewdqXAmCDbN2GlUM6amDKS78eCqiw/UmF5nE0mmLTd6moJkiZJML/X52Ke3LH7Swhw883IRXq8o9nWjVw== +"@jest/types@^25.4.0": + version "25.4.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.4.0.tgz#5afeb8f7e1cba153a28e5ac3c9fe3eede7206d59" + integrity sha512-XBeaWNzw2PPnGW5aXvZt3+VO60M+34RY3XDsCK5tW7kyj3RK0XClRutCfjqcBuaR2aBQTbluEDME9b5MB9UAPw== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^1.1.1" @@ -1120,6 +1121,11 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== +"@types/normalize-package-data@^2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" + integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== + "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" @@ -1316,16 +1322,16 @@ babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-jest@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-25.3.0.tgz#999d0c19e8427f66b796bf9ea233eedf087b957c" - integrity sha512-qiXeX1Cmw4JZ5yQ4H57WpkO0MZ61Qj+YnsVUwAMnDV5ls+yHon11XjarDdgP7H8lTmiEi6biiZA8y3Tmvx6pCg== +babel-jest@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-25.4.0.tgz#409eb3e2ddc2ad9a92afdbb00991f1633f8018d0" + integrity sha512-p+epx4K0ypmHuCnd8BapfyOwWwosNCYhedetQey1awddtfmEX0MmdxctGl956uwUmjwXR5VSS5xJcGX9DvdIog== dependencies: - "@jest/transform" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/transform" "^25.4.0" + "@jest/types" "^25.4.0" "@types/babel__core" "^7.1.7" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^25.3.0" + babel-preset-jest "^25.4.0" chalk "^3.0.0" slash "^3.0.0" @@ -1353,10 +1359,10 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^4.0.0" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^25.2.6: - version "25.2.6" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.2.6.tgz#2af07632b8ac7aad7d414c1e58425d5fc8e84909" - integrity sha512-qE2xjMathybYxjiGFJg0mLFrz0qNp83aNZycWDY/SuHiZNq+vQfRQtuINqyXyue1ELd8Rd+1OhFSLjms8msMbw== +babel-plugin-jest-hoist@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.4.0.tgz#0c122c1b93fb76f52d2465be2e8069e798e9d442" + integrity sha512-M3a10JCtTyKevb0MjuH6tU+cP/NVQZ82QPADqI1RQYY1OphztsCeIeQmTsHmF/NS6m0E51Zl4QNsI3odXSQF5w== dependencies: "@types/babel__traverse" "^7.0.6" @@ -1392,12 +1398,12 @@ babel-preset-current-node-syntax@^0.1.2: "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -babel-preset-jest@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-25.3.0.tgz#9ab40aee52a19bdc52b8b1ec2403d5914ac3d86b" - integrity sha512-tjdvLKNMwDI9r+QWz9sZUQGTq1dpoxjUqFUpEasAc7MOtHg9XuLT2fx0udFG+k1nvMV0WvHHVAN7VmCZ+1Zxbw== +babel-preset-jest@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-25.4.0.tgz#10037cc32b751b994b260964629e49dc479abf4c" + integrity sha512-PwFiEWflHdu3JCeTr0Pb9NcHHE34qWFnPQRVPvqQITx4CsDCzs6o05923I10XvLvn9nNsRHuiVgB72wG/90ZHQ== dependencies: - babel-plugin-jest-hoist "^25.2.6" + babel-plugin-jest-hoist "^25.4.0" babel-preset-current-node-syntax "^0.1.2" babel-runtime@^6.22.0, babel-runtime@^6.26.0: @@ -2003,16 +2009,16 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expect@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-25.3.0.tgz#5fd36e51befd05afb7184bc954f8a4792d184c71" - integrity sha512-buboTXML2h/L0Kh44Ys2Cx49mX20ISc5KDirkxIs3Q9AJv0kazweUAbukegr+nHDOvFRKmxdojjIHCjqAceYfg== +expect@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-25.4.0.tgz#0b16c17401906d1679d173e59f0d4580b22f8dc8" + integrity sha512-7BDIX99BTi12/sNGJXA9KMRcby4iAmu1xccBOhyKCyEhjcVKS3hPmHdA/4nSI9QGIOkUropKqr3vv7WMDM5lvQ== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" ansi-styles "^4.0.0" jest-get-type "^25.2.6" - jest-matcher-utils "^25.3.0" - jest-message-util "^25.3.0" + jest-matcher-utils "^25.4.0" + jest-message-util "^25.4.0" jest-regex-util "^25.2.6" extend-shallow@^2.0.1: @@ -2278,6 +2284,11 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" +hosted-git-info@^2.1.4: + version "2.8.8" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" + integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== + html-encoding-sniffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" @@ -2550,67 +2561,67 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jest-changed-files@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-25.3.0.tgz#85d8de6f4bd13dafda9d7f1e3f2565fc0e183c78" - integrity sha512-eqd5hyLbUjIVvLlJ3vQ/MoPxsxfESVXG9gvU19XXjKzxr+dXmZIqCXiY0OiYaibwlHZBJl2Vebkc0ADEMzCXew== +jest-changed-files@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-25.4.0.tgz#e573db32c2fd47d2b90357ea2eda0622c5c5cbd6" + integrity sha512-VR/rfJsEs4BVMkwOTuStRyS630fidFVekdw/lBaBQjx9KK3VZFOZ2c0fsom2fRp8pMCrCTP6LGna00o/DXGlqA== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" execa "^3.2.0" throat "^5.0.0" -jest-cli@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-25.3.0.tgz#d9e11f5700cc5946583cf0d01a9bdebceed448d2" - integrity sha512-XpNQPlW1tzpP7RGG8dxpkRegYDuLjzSiENu92+CYM87nEbmEPb3b4+yo8xcsHOnj0AG7DUt9b3uG8LuHI3MDzw== +jest-cli@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-25.4.0.tgz#5dac8be0fece6ce39f0d671395a61d1357322bab" + integrity sha512-usyrj1lzCJZMRN1r3QEdnn8e6E6yCx/QN7+B1sLoA68V7f3WlsxSSQfy0+BAwRiF4Hz2eHauf11GZG3PIfWTXQ== dependencies: - "@jest/core" "^25.3.0" - "@jest/test-result" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/core" "^25.4.0" + "@jest/test-result" "^25.4.0" + "@jest/types" "^25.4.0" chalk "^3.0.0" exit "^0.1.2" import-local "^3.0.2" is-ci "^2.0.0" - jest-config "^25.3.0" - jest-util "^25.3.0" - jest-validate "^25.3.0" + jest-config "^25.4.0" + jest-util "^25.4.0" + jest-validate "^25.4.0" prompts "^2.0.1" realpath-native "^2.0.0" yargs "^15.3.1" -jest-config@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-25.3.0.tgz#112b5e2f2e57dec4501dd2fe979044c06fb1317e" - integrity sha512-CmF1JnNWFmoCSPC4tnU52wnVBpuxHjilA40qH/03IHxIevkjUInSMwaDeE6ACfxMPTLidBGBCO3EbxvzPbo8wA== +jest-config@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-25.4.0.tgz#56e5df3679a96ff132114b44fb147389c8c0a774" + integrity sha512-egT9aKYxMyMSQV1aqTgam0SkI5/I2P9qrKexN5r2uuM2+68ypnc+zPGmfUxK7p1UhE7dYH9SLBS7yb+TtmT1AA== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^25.3.0" - "@jest/types" "^25.3.0" - babel-jest "^25.3.0" + "@jest/test-sequencer" "^25.4.0" + "@jest/types" "^25.4.0" + babel-jest "^25.4.0" chalk "^3.0.0" deepmerge "^4.2.2" glob "^7.1.1" - jest-environment-jsdom "^25.3.0" - jest-environment-node "^25.3.0" + jest-environment-jsdom "^25.4.0" + jest-environment-node "^25.4.0" jest-get-type "^25.2.6" - jest-jasmine2 "^25.3.0" + jest-jasmine2 "^25.4.0" jest-regex-util "^25.2.6" - jest-resolve "^25.3.0" - jest-util "^25.3.0" - jest-validate "^25.3.0" + jest-resolve "^25.4.0" + jest-util "^25.4.0" + jest-validate "^25.4.0" micromatch "^4.0.2" - pretty-format "^25.3.0" + pretty-format "^25.4.0" realpath-native "^2.0.0" -jest-diff@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.3.0.tgz#0d7d6f5d6171e5dacde9e05be47b3615e147c26f" - integrity sha512-vyvs6RPoVdiwARwY4kqFWd4PirPLm2dmmkNzKqo38uZOzJvLee87yzDjIZLmY1SjM3XR5DwsUH+cdQ12vgqi1w== +jest-diff@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.4.0.tgz#260b70f19a46c283adcad7f081cae71eb784a634" + integrity sha512-kklLbJVXW0y8UKOWOdYhI6TH5MG6QAxrWiBMgQaPIuhj3dNFGirKCd+/xfplBXICQ7fI+3QcqHm9p9lWu1N6ug== dependencies: chalk "^3.0.0" diff-sequences "^25.2.6" jest-get-type "^25.2.6" - pretty-format "^25.3.0" + pretty-format "^25.4.0" jest-docblock@^25.3.0: version "25.3.0" @@ -2619,39 +2630,39 @@ jest-docblock@^25.3.0: dependencies: detect-newline "^3.0.0" -jest-each@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-25.3.0.tgz#a319eecf1f6076164ab86f99ca166a55b96c0bd4" - integrity sha512-aBfS4VOf/Qs95yUlX6d6WBv0szvOcTkTTyCIaLuQGj4bSHsT+Wd9dDngVHrCe5uytxpN8VM+NAloI6nbPjXfXw== +jest-each@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-25.4.0.tgz#ad4e46164764e8e77058f169a0076a7f86f6b7d4" + integrity sha512-lwRIJ8/vQU/6vq3nnSSUw1Y3nz5tkYSFIywGCZpUBd6WcRgpn8NmJoQICojbpZmsJOJNHm0BKdyuJ6Xdx+eDQQ== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" chalk "^3.0.0" jest-get-type "^25.2.6" - jest-util "^25.3.0" - pretty-format "^25.3.0" - -jest-environment-jsdom@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-25.3.0.tgz#c493ab8c41f28001520c70ef67dd88b88be6af05" - integrity sha512-jdE4bQN+k2QEZ9sWOxsqDJvMzbdFSCN/4tw8X0TQaCqyzKz58PyEf41oIr4WO7ERdp7WaJGBSUKF7imR3UW1lg== - dependencies: - "@jest/environment" "^25.3.0" - "@jest/fake-timers" "^25.3.0" - "@jest/types" "^25.3.0" - jest-mock "^25.3.0" - jest-util "^25.3.0" + jest-util "^25.4.0" + pretty-format "^25.4.0" + +jest-environment-jsdom@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-25.4.0.tgz#bbfc7f85bb6ade99089062a830c79cb454565cf0" + integrity sha512-KTitVGMDrn2+pt7aZ8/yUTuS333w3pWt1Mf88vMntw7ZSBNDkRS6/4XLbFpWXYfWfp1FjcjQTOKzbK20oIehWQ== + dependencies: + "@jest/environment" "^25.4.0" + "@jest/fake-timers" "^25.4.0" + "@jest/types" "^25.4.0" + jest-mock "^25.4.0" + jest-util "^25.4.0" jsdom "^15.2.1" -jest-environment-node@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-25.3.0.tgz#9845f0e63991e8498448cb0ae804935689533db9" - integrity sha512-XO09S29Nx1NU7TiMPHMoDIkxoGBuKSTbE+sHp0gXbeLDXhIdhysUI25kOqFFSD9AuDgvPvxWCXrvNqiFsOH33g== - dependencies: - "@jest/environment" "^25.3.0" - "@jest/fake-timers" "^25.3.0" - "@jest/types" "^25.3.0" - jest-mock "^25.3.0" - jest-util "^25.3.0" +jest-environment-node@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-25.4.0.tgz#188aef01ae6418e001c03fdd1c299961e1439082" + integrity sha512-wryZ18vsxEAKFH7Z74zi/y/SyI1j6UkVZ6QsllBuT/bWlahNfQjLNwFsgh/5u7O957dYFoXj4yfma4n4X6kU9A== + dependencies: + "@jest/environment" "^25.4.0" + "@jest/fake-timers" "^25.4.0" + "@jest/types" "^25.4.0" + jest-mock "^25.4.0" + jest-util "^25.4.0" semver "^6.3.0" jest-get-type@^25.2.6: @@ -2659,18 +2670,18 @@ jest-get-type@^25.2.6: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== -jest-haste-map@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-25.3.0.tgz#b7683031c9c9ddc0521d311564108b244b11e4c6" - integrity sha512-LjXaRa+F8wwtSxo9G+hHD/Cp63PPQzvaBL9XCVoJD2rrcJO0Zr2+YYzAFWWYJ5GlPUkoaJFJtOuk0sL6MJY80A== +jest-haste-map@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-25.4.0.tgz#da7c309dd7071e0a80c953ba10a0ec397efb1ae2" + integrity sha512-5EoCe1gXfGC7jmXbKzqxESrgRcaO3SzWXGCnvp9BcT0CFMyrB1Q6LIsjl9RmvmJGQgW297TCfrdgiy574Rl9HQ== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.3" jest-serializer "^25.2.6" - jest-util "^25.3.0" - jest-worker "^25.2.6" + jest-util "^25.4.0" + jest-worker "^25.4.0" micromatch "^4.0.2" sane "^4.0.3" walker "^1.0.7" @@ -2678,66 +2689,66 @@ jest-haste-map@^25.3.0: optionalDependencies: fsevents "^2.1.2" -jest-jasmine2@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-25.3.0.tgz#16ae4f68adef65fb45001b26c864bcbcbf972830" - integrity sha512-NCYOGE6+HNzYFSui52SefgpsnIzvxjn6KAgqw66BdRp37xpMD/4kujDHLNW5bS5i53os5TcMn6jYrzQRO8VPrQ== +jest-jasmine2@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-25.4.0.tgz#3d3d19514022e2326e836c2b66d68b4cb63c5861" + integrity sha512-QccxnozujVKYNEhMQ1vREiz859fPN/XklOzfQjm2j9IGytAkUbSwjFRBtQbHaNZ88cItMpw02JnHGsIdfdpwxQ== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^25.3.0" + "@jest/environment" "^25.4.0" "@jest/source-map" "^25.2.6" - "@jest/test-result" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/test-result" "^25.4.0" + "@jest/types" "^25.4.0" chalk "^3.0.0" co "^4.6.0" - expect "^25.3.0" + expect "^25.4.0" is-generator-fn "^2.0.0" - jest-each "^25.3.0" - jest-matcher-utils "^25.3.0" - jest-message-util "^25.3.0" - jest-runtime "^25.3.0" - jest-snapshot "^25.3.0" - jest-util "^25.3.0" - pretty-format "^25.3.0" + jest-each "^25.4.0" + jest-matcher-utils "^25.4.0" + jest-message-util "^25.4.0" + jest-runtime "^25.4.0" + jest-snapshot "^25.4.0" + jest-util "^25.4.0" + pretty-format "^25.4.0" throat "^5.0.0" -jest-leak-detector@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-25.3.0.tgz#5b6bf04903b35be56038915a55f47291771f769f" - integrity sha512-jk7k24dMIfk8LUSQQGN8PyOy9+J0NAfHZWiDmUDYVMctY8FLJQ1eQ8+PjMoN8PgwhLIggUqgYJnyRFvUz3jLRw== +jest-leak-detector@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-25.4.0.tgz#cf94a160c78e53d810e7b2f40b5fd7ee263375b3" + integrity sha512-7Y6Bqfv2xWsB+7w44dvZuLs5SQ//fzhETgOGG7Gq3TTGFdYvAgXGwV8z159RFZ6fXiCPm/szQ90CyfVos9JIFQ== dependencies: jest-get-type "^25.2.6" - pretty-format "^25.3.0" + pretty-format "^25.4.0" -jest-matcher-utils@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-25.3.0.tgz#76765788a26edaa8bc5f0100aea52ae383559648" - integrity sha512-ZBUJ2fchNIZt+fyzkuCFBb8SKaU//Rln45augfUtbHaGyVxCO++ANARdBK9oPGXU3hEDgyy7UHnOP/qNOJXFUg== +jest-matcher-utils@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-25.4.0.tgz#dc3e7aec402a1e567ed80b572b9ad285878895e6" + integrity sha512-yPMdtj7YDgXhnGbc66bowk8AkQ0YwClbbwk3Kzhn5GVDrciiCr27U4NJRbrqXbTdtxjImONITg2LiRIw650k5A== dependencies: chalk "^3.0.0" - jest-diff "^25.3.0" + jest-diff "^25.4.0" jest-get-type "^25.2.6" - pretty-format "^25.3.0" + pretty-format "^25.4.0" -jest-message-util@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-25.3.0.tgz#e3836826fe5ca538a337b87d9bd2648190867f85" - integrity sha512-5QNy9Id4WxJbRITEbA1T1kem9bk7y2fD0updZMSTNHtbEDnYOGLDPAuFBhFgVmOZpv0n6OMdVkK+WhyXEPCcOw== +jest-message-util@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-25.4.0.tgz#2899e8bc43f5317acf8dfdfe89ea237d354fcdab" + integrity sha512-LYY9hRcVGgMeMwmdfh9tTjeux1OjZHMusq/E5f3tJN+dAoVVkJtq5ZUEPIcB7bpxDUt2zjUsrwg0EGgPQ+OhXQ== dependencies: "@babel/code-frame" "^7.0.0" - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" "@types/stack-utils" "^1.0.1" chalk "^3.0.0" micromatch "^4.0.2" slash "^3.0.0" stack-utils "^1.0.1" -jest-mock@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-25.3.0.tgz#d72644509e40987a732a9a2534a1054f4649402c" - integrity sha512-yRn6GbuqB4j3aYu+Z1ezwRiZfp0o9om5uOcBovVtkcRLeBCNP5mT0ysdenUsxAHnQUgGwPOE1wwhtQYe6NKirQ== +jest-mock@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-25.4.0.tgz#ded7d64b5328d81d78d2138c825d3a45e30ec8ca" + integrity sha512-MdazSfcYAUjJjuVTTnusLPzE0pE4VXpOUzWdj8sbM+q6abUjm3bATVPXFqTXrxSieR8ocpvQ9v/QaQCftioQFg== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" jest-pnp-resolver@^1.2.1: version "1.2.1" @@ -2748,78 +2759,80 @@ jest-regex-util@^25.2.6: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-25.2.6.tgz#d847d38ba15d2118d3b06390056028d0f2fd3964" integrity sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw== -jest-resolve-dependencies@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-25.3.0.tgz#b0e4ae053dd44ddacc18c6ee12b5b7c28e445a90" - integrity sha512-bDUlLYmHW+f7J7KgcY2lkq8EMRqKonRl0XoD4Wp5SJkgAxKJnsaIOlrrVNTfXYf+YOu3VCjm/Ac2hPF2nfsCIA== +jest-resolve-dependencies@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-25.4.0.tgz#783937544cfc40afcc7c569aa54748c4b3f83f5a" + integrity sha512-A0eoZXx6kLiuG1Ui7wITQPl04HwjLErKIJTt8GR3c7UoDAtzW84JtCrgrJ6Tkw6c6MwHEyAaLk7dEPml5pf48A== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" jest-regex-util "^25.2.6" - jest-snapshot "^25.3.0" + jest-snapshot "^25.4.0" -jest-resolve@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-25.3.0.tgz#cb90a5bbea54a02eccdbbf4126a819595dcf91d6" - integrity sha512-IHoQAAybulsJ+ZgWis+ekYKDAoFkVH5Nx/znpb41zRtpxj4fr2WNV9iDqavdSm8GIpMlsfZxbC/fV9DhW0q9VQ== +jest-resolve@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-25.4.0.tgz#6f4540ce0d419c4c720e791e871da32ba4da7a60" + integrity sha512-wOsKqVDFWUiv8BtLMCC6uAJ/pHZkfFgoBTgPtmYlsprAjkxrr2U++ZnB3l5ykBMd2O24lXvf30SMAjJIW6k2aA== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" browser-resolve "^1.11.3" chalk "^3.0.0" jest-pnp-resolver "^1.2.1" + read-pkg-up "^7.0.1" realpath-native "^2.0.0" resolve "^1.15.1" + slash "^3.0.0" -jest-runner@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-25.3.0.tgz#673ef2ac79d2810eb6b2c1a3f82398375a3d1174" - integrity sha512-csDqSC9qGHYWDrzrElzEgFbteztFeZJmKhSgY5jlCIcN0+PhActzRNku0DA1Xa1HxGOb0/AfbP1EGJlP4fGPtA== +jest-runner@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-25.4.0.tgz#6ca4a3d52e692bbc081228fa68f750012f1f29e5" + integrity sha512-wWQSbVgj2e/1chFdMRKZdvlmA6p1IPujhpLT7TKNtCSl1B0PGBGvJjCaiBal/twaU2yfk8VKezHWexM8IliBfA== dependencies: - "@jest/console" "^25.3.0" - "@jest/environment" "^25.3.0" - "@jest/test-result" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/console" "^25.4.0" + "@jest/environment" "^25.4.0" + "@jest/test-result" "^25.4.0" + "@jest/types" "^25.4.0" chalk "^3.0.0" exit "^0.1.2" graceful-fs "^4.2.3" - jest-config "^25.3.0" + jest-config "^25.4.0" jest-docblock "^25.3.0" - jest-haste-map "^25.3.0" - jest-jasmine2 "^25.3.0" - jest-leak-detector "^25.3.0" - jest-message-util "^25.3.0" - jest-resolve "^25.3.0" - jest-runtime "^25.3.0" - jest-util "^25.3.0" - jest-worker "^25.2.6" + jest-haste-map "^25.4.0" + jest-jasmine2 "^25.4.0" + jest-leak-detector "^25.4.0" + jest-message-util "^25.4.0" + jest-resolve "^25.4.0" + jest-runtime "^25.4.0" + jest-util "^25.4.0" + jest-worker "^25.4.0" source-map-support "^0.5.6" throat "^5.0.0" -jest-runtime@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-25.3.0.tgz#af4d40dbcc590fa5de9910cb6a120a13d131050b" - integrity sha512-gn5KYB1wxXRM3nfw8fVpthFu60vxQUCr+ShGq41+ZBFF3DRHZRKj3HDWVAVB4iTNBj2y04QeAo5cZ/boYaPg0w== +jest-runtime@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-25.4.0.tgz#1e5227a9e2159d26ae27dcd426ca6bc041983439" + integrity sha512-lgNJlCDULtXu9FumnwCyWlOub8iytijwsPNa30BKrSNtgoT6NUMXOPrZvsH06U6v0wgD/Igwz13nKA2wEKU2VA== dependencies: - "@jest/console" "^25.3.0" - "@jest/environment" "^25.3.0" + "@jest/console" "^25.4.0" + "@jest/environment" "^25.4.0" "@jest/source-map" "^25.2.6" - "@jest/test-result" "^25.3.0" - "@jest/transform" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/test-result" "^25.4.0" + "@jest/transform" "^25.4.0" + "@jest/types" "^25.4.0" "@types/yargs" "^15.0.0" chalk "^3.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.3" - jest-config "^25.3.0" - jest-haste-map "^25.3.0" - jest-message-util "^25.3.0" - jest-mock "^25.3.0" + jest-config "^25.4.0" + jest-haste-map "^25.4.0" + jest-message-util "^25.4.0" + jest-mock "^25.4.0" jest-regex-util "^25.2.6" - jest-resolve "^25.3.0" - jest-snapshot "^25.3.0" - jest-util "^25.3.0" - jest-validate "^25.3.0" + jest-resolve "^25.4.0" + jest-snapshot "^25.4.0" + jest-util "^25.4.0" + jest-validate "^25.4.0" realpath-native "^2.0.0" slash "^3.0.0" strip-bom "^4.0.0" @@ -2830,76 +2843,76 @@ jest-serializer@^25.2.6: resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-25.2.6.tgz#3bb4cc14fe0d8358489dbbefbb8a4e708ce039b7" integrity sha512-RMVCfZsezQS2Ww4kB5HJTMaMJ0asmC0BHlnobQC6yEtxiFKIxohFA4QSXSabKwSggaNkqxn6Z2VwdFCjhUWuiQ== -jest-snapshot@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-25.3.0.tgz#d4feb457494f4aaedcc83fbbf1ca21808fc3df71" - integrity sha512-GGpR6Oro2htJPKh5RX4PR1xwo5jCEjtvSPLW1IS7N85y+2bWKbiknHpJJRKSdGXghElb5hWaeQASJI4IiRayGg== +jest-snapshot@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-25.4.0.tgz#e0b26375e2101413fd2ccb4278a5711b1922545c" + integrity sha512-J4CJ0X2SaGheYRZdLz9CRHn9jUknVmlks4UBeu270hPAvdsauFXOhx9SQP2JtRzhnR3cvro/9N9KP83/uvFfRg== dependencies: "@babel/types" "^7.0.0" - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" "@types/prettier" "^1.19.0" chalk "^3.0.0" - expect "^25.3.0" - jest-diff "^25.3.0" + expect "^25.4.0" + jest-diff "^25.4.0" jest-get-type "^25.2.6" - jest-matcher-utils "^25.3.0" - jest-message-util "^25.3.0" - jest-resolve "^25.3.0" + jest-matcher-utils "^25.4.0" + jest-message-util "^25.4.0" + jest-resolve "^25.4.0" make-dir "^3.0.0" natural-compare "^1.4.0" - pretty-format "^25.3.0" + pretty-format "^25.4.0" semver "^6.3.0" -jest-util@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-25.3.0.tgz#e3b0064165818f10d78514696fd25efba82cf049" - integrity sha512-dc625P/KS/CpWTJJJxKc4bA3A6c+PJGBAqS8JTJqx4HqPoKNqXg/Ec8biL2Z1TabwK7E7Ilf0/ukSEXM1VwzNA== +jest-util@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-25.4.0.tgz#6a093d09d86d2b41ef583e5fe7dd3976346e1acd" + integrity sha512-WSZD59sBtAUjLv1hMeKbNZXmMcrLRWcYqpO8Dz8b4CeCTZpfNQw2q9uwrYAD+BbJoLJlu4ezVPwtAmM/9/SlZA== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" chalk "^3.0.0" is-ci "^2.0.0" make-dir "^3.0.0" -jest-validate@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-25.3.0.tgz#eb95fdee0039647bcd5d4be641b21e4a142a880c" - integrity sha512-3WuXgIZ4HXUvW6gk9twFFkT9j6zUorKnF2oEY8VEsHb7x5LGvVlN3WUsbqazVKuyXwvikO2zFJ/YTySMsMje2w== +jest-validate@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-25.4.0.tgz#2e177a93b716a137110eaf2768f3d9095abd3f38" + integrity sha512-hvjmes/EFVJSoeP1yOl8qR8mAtMR3ToBkZeXrD/ZS9VxRyWDqQ/E1C5ucMTeSmEOGLipvdlyipiGbHJ+R1MQ0g== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" camelcase "^5.3.1" chalk "^3.0.0" jest-get-type "^25.2.6" leven "^3.1.0" - pretty-format "^25.3.0" + pretty-format "^25.4.0" -jest-watcher@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-25.3.0.tgz#fd03fd5ca52f02bd3161ab177466bf1bfdd34e5c" - integrity sha512-dtFkfidFCS9Ucv8azOg2hkiY3sgJEHeTLtGFHS+jfBEE7eRtrO6+2r1BokyDkaG2FOD7485r/SgpC1MFAENfeA== +jest-watcher@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-25.4.0.tgz#63ec0cd5c83bb9c9d1ac95be7558dd61c995ff05" + integrity sha512-36IUfOSRELsKLB7k25j/wutx0aVuHFN6wO94gPNjQtQqFPa2rkOymmx9rM5EzbF3XBZZ2oqD9xbRVoYa2w86gw== dependencies: - "@jest/test-result" "^25.3.0" - "@jest/types" "^25.3.0" + "@jest/test-result" "^25.4.0" + "@jest/types" "^25.4.0" ansi-escapes "^4.2.1" chalk "^3.0.0" - jest-util "^25.3.0" + jest-util "^25.4.0" string-length "^3.1.0" -jest-worker@^25.2.6: - version "25.2.6" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.2.6.tgz#d1292625326794ce187c38f51109faced3846c58" - integrity sha512-FJn9XDUSxcOR4cwDzRfL1z56rUofNTFs539FGASpd50RHdb6EVkhxQqktodW2mI49l+W3H+tFJDotCHUQF6dmA== +jest-worker@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.4.0.tgz#ee0e2ceee5a36ecddf5172d6d7e0ab00df157384" + integrity sha512-ghAs/1FtfYpMmYQ0AHqxV62XPvKdUDIBBApMZfly+E9JEmYh2K45G0R5dWxx986RN12pRCxsViwQVtGl+N4whw== dependencies: merge-stream "^2.0.0" supports-color "^7.0.0" -jest@25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-25.3.0.tgz#7a5e59741d94b8662664c77a9f346246d6bf228b" - integrity sha512-iKd5ShQSHzFT5IL/6h5RZJhApgqXSoPxhp5HEi94v6OAw9QkF8T7X+liEU2eEHJ1eMFYTHmeWLrpBWulsDpaUg== +jest@25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-25.4.0.tgz#fb96892c5c4e4a6b9bcb12068849cddf4c5f8cc7" + integrity sha512-XWipOheGB4wai5JfCYXd6vwsWNwM/dirjRoZgAa7H2wd8ODWbli2AiKjqG8AYhyx+8+5FBEdpO92VhGlBydzbw== dependencies: - "@jest/core" "^25.3.0" + "@jest/core" "^25.4.0" import-local "^3.0.2" - jest-cli "^25.3.0" + jest-cli "^25.4.0" "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" @@ -3285,6 +3298,16 @@ node-releases@^1.1.53: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.53.tgz#2d821bfa499ed7c5dffc5e2f28c88e78a08ee3f4" integrity sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ== +normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -3548,17 +3571,17 @@ prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" -prettier@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.4.tgz#2d1bae173e355996ee355ec9830a7a1ee05457ef" - integrity sha512-SVJIQ51spzFDvh4fIbCLvciiDMCrRhlN3mbZvv/+ycjvmF5E73bKdGfU8QDLNmjYJf+lsGnDBC4UUnvTe5OO0w== +prettier@2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4" + integrity sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg== -pretty-format@^25.3.0: - version "25.3.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.3.0.tgz#d0a4f988ff4a6cd350342fdabbb809aeb4d49ad5" - integrity sha512-wToHwF8bkQknIcFkBqNfKu4+UZqnrLn/Vr+wwKQwwvPzkBfDDKp/qIabFqdgtoi5PEnM8LFByVsOrHoa3SpTVA== +pretty-format@^25.4.0: + version "25.4.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.4.0.tgz#c58801bb5c4926ff4a677fe43f9b8b99812c7830" + integrity sha512-PI/2dpGjXK5HyXexLPZU/jw5T9Q6S1YVXxxVxco+LIqzUFHXIbKZKdUVt7GcX7QUCr31+3fzhi4gN4/wUYPVxQ== dependencies: - "@jest/types" "^25.3.0" + "@jest/types" "^25.4.0" ansi-regex "^5.0.0" ansi-styles "^4.0.0" react-is "^16.12.0" @@ -3619,6 +3642,25 @@ react-is@^16.12.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + readable-stream@^2.0.1: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" @@ -3782,6 +3824,13 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" +resolve@^1.10.0: + version "1.16.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.16.1.tgz#49fac5d8bacf1fd53f200fa51247ae736175832c" + integrity sha512-rmAglCSqWWMrrBv/XM6sW0NuRFiKViw/W4d9EbC4pt+49H8JwHy+mcGmALTEg504AUDcLTvb1T2q3E9AnmY+ig== + dependencies: + path-parse "^1.0.6" + resolve@^1.15.1: version "1.15.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" @@ -3855,6 +3904,11 @@ semver-regex@^2.0.0: resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338" integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw== +"semver@2 || 3 || 4 || 5": + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + semver@7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" @@ -3995,6 +4049,32 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== +spdx-correct@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" + integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" + integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.5" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" + integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== + split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" @@ -4211,10 +4291,10 @@ trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -ts-loader@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-7.0.0.tgz#7c74dfa8956e3e33b91d98d4ed7b6f7575c35c25" - integrity sha512-qq9iPK235Xf/uPS1I72CIwB8qpbW0rys3entnXO+rIo2km50lMmeHKCNn1m047W6Sk4kceF6n5NWEnq/V8xdYQ== +ts-loader@7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-7.0.1.tgz#ac9ae9eb8f5ebd0aa7b78b44db20691b6e31251b" + integrity sha512-wdGs9xO8UnwASwbluehzXciBtc9HfGlYA8Aiv856etLmdv8mJfAxCkt3YpS4g7G1IsGxaCVKQ102Qh0zycpeZQ== dependencies: chalk "^2.3.0" enhanced-resolve "^4.0.0" @@ -4299,6 +4379,16 @@ type-fest@^0.11.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + typedarray-to-buffer@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" @@ -4369,7 +4459,7 @@ uuid@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" -v8-to-istanbul@^4.0.1: +v8-to-istanbul@^4.1.3: version "4.1.3" resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.3.tgz#22fe35709a64955f49a08a7c7c959f6520ad6f20" integrity sha512-sAjOC+Kki6aJVbUOXJbcR0MnbfjvBzwKZazEJymA2IX49uoOdEdk+4fBq5cXgYgiyKtAyrrJNtBZdOeDIF+Fng== @@ -4378,6 +4468,14 @@ v8-to-istanbul@^4.0.1: convert-source-map "^1.6.0" source-map "^0.7.3" +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"