From 547b137a52277d029e7b4c022311faf79161fccf Mon Sep 17 00:00:00 2001 From: Michael Flynn Date: Fri, 23 Jul 2021 22:37:27 -0400 Subject: [PATCH 1/7] feat: adding support for formdata --- lib/index.js | 19 ++++++++++ test/index.spec.js | 7 ++++ test/resources/input/v2/FormData.json | 42 +++++++++++++++++++++ test/resources/input/v21/FormData.json | 52 ++++++++++++++++++++++++++ test/resources/output/FormData.yml | 36 ++++++++++++++++++ 5 files changed, 156 insertions(+) create mode 100644 test/resources/input/v2/FormData.json create mode 100644 test/resources/input/v21/FormData.json create mode 100644 test/resources/output/FormData.yml diff --git a/lib/index.js b/lib/index.js index f2cf934..a8aeebe 100644 --- a/lib/index.js +++ b/lib/index.js @@ -166,6 +166,25 @@ function parseBody (body = {}, method) { 'text/plain': {} } break + case "formdata": + content = { + "multipart/form-data": { + schema: { + type: "object", + properties: body.formdata.reduce((acc, v) => { + acc[v.key] = { type: v.type === 'text' ? 'string' : v.type }; + if (v.hasOwnProperty("description")) { + acc[v.key].description = v.description == '' ? 'Description' : v.description; + } + if (v.hasOwnProperty("value") && v.value !== '') { + acc[v.key].example = v.value; + }; + return acc; + }, {}) + } + } + }; + break; } return { requestBody: { content } } } diff --git a/test/index.spec.js b/test/index.spec.js index 381bb1e..9e3c5fb 100644 --- a/test/index.spec.js +++ b/test/index.spec.js @@ -48,6 +48,7 @@ const EXPECTED_RESPONSES = readFileSync('./test/resources/output/Responses.yml', const EXPECTED_RESPONSES_MULTI_LANG = readFileSync('./test/resources/output/ResponsesMultiLang.yml', 'utf8') const EXPECTED_AUTH_REQUEST = readFileSync('./test/resources/output/AuthRequest.yml', 'utf8') const EXPECTED_RESPONSES_NO_HEADERS = readFileSync('./test/resources/output/ResponsesNoHeaders.yml', 'utf8') +const EXPECTED_FORM_DATA = readFileSync('./test/resources/output/FormData.yml', 'utf8') const AUTH_DEFINITIONS = { myCustomAuth: { @@ -102,6 +103,7 @@ describe('Library specs', function () { const COLLECTION_RESPONSES = `./test/resources/input/${version}/Responses.json` const COLLECTION_RESPONSES_MULTI_LANG = `./test/resources/input/${version}/ResponsesMultiLang.json` const COLLECTION_AUTH_REQUEST = `./test/resources/input/${version}/AuthRequest.json` + const COLLECTION_FORM_DATA = `./test/resources/input/${version}/FormData.json` it('should work with a basic transform', async function () { const result = await postmanToOpenApi(COLLECTION_BASIC, OUTPUT_PATH, {}) @@ -395,6 +397,11 @@ describe('Library specs', function () { const result = await postmanToOpenApi(COLLECTION_RESPONSES, OUTPUT_PATH, { pathDepth: 2, responseHeaders: false }) equal(result, EXPECTED_RESPONSES_NO_HEADERS) }) + + // it('should parse POST methods with form data', async function () { + // const result = await postmanToOpenApi(COLLECTION_FORM_DATA, OUTPUT_PATH, { pathDepth: 2, responseHeaders: false }) + // equal(result, COLLECTION_FORM_DATA) + // }) }) }) diff --git a/test/resources/input/v2/FormData.json b/test/resources/input/v2/FormData.json new file mode 100644 index 0000000..bd8b67f --- /dev/null +++ b/test/resources/input/v2/FormData.json @@ -0,0 +1,42 @@ +{ + "info": { + "_postman_id": "1eaa74c4-2d76-45f0-bd34-bff5d96f0ba8", + "name": "Form Data", + "description": "Just a collection with a form data post for test", + "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json" + }, + "item": [ + { + "name": "Register New User", + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "formdata", + "formdata": [ + { + "key": "name", + "value": "New User", + "description": "full name of the user (accepts spaces)", + "type": "text" + }, + { + "key": "email", + "value": "newuser@example.com", + "description": "email of the user (for notifications and login)", + "type": "text" + }, + { + "key": "password", + "value": "pasword123", + "description": "password (to be used for logging in)", + "type": "text" + } + ] + }, + "url": "https://api.io/register" + }, + "response": [] + } + ] +} diff --git a/test/resources/input/v21/FormData.json b/test/resources/input/v21/FormData.json new file mode 100644 index 0000000..f572d16 --- /dev/null +++ b/test/resources/input/v21/FormData.json @@ -0,0 +1,52 @@ +{ + "info": { + "_postman_id": "1eaa74c4-2d76-45f0-bd34-bff5d96f0ba8", + "name": "Form Data", + "description": "Just a collection with a form data post for test", + "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" + }, + "item": [ + { + "name": "Register New User", + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "formdata", + "formdata": [ + { + "key": "name", + "value": "New User", + "description": "full name of the user (accepts spaces)", + "type": "text" + }, + { + "key": "email", + "value": "newuser@example.com", + "description": "email of the user (for notifications and login)", + "type": "text" + }, + { + "key": "password", + "value": "pasword123", + "description": "password (to be used for logging in)", + "type": "text" + } + ] + }, + "url": { + "raw": "https://api.io/register", + "protocol": "https", + "host": [ + "api", + "io" + ], + "path": [ + "register" + ] + } + }, + "response": [] + } + ] +} diff --git a/test/resources/output/FormData.yml b/test/resources/output/FormData.yml new file mode 100644 index 0000000..229ee62 --- /dev/null +++ b/test/resources/output/FormData.yml @@ -0,0 +1,36 @@ +openapi: 3.0.0 +info: + title: Form Data + description: Just a collection with a form data post for test + version: 1.0.0 +servers: + - url: https://api.io +paths: + /register: + post: + tags: + - default + summary: Register New User + requestBody: + content: + multipart/form-data: + schema: + type: object + properties: + name: + type: string + description: full name of the user (accepts spaces) + example: New User + email: + type: string + description: email of the user (for notifications and login) + example: newuser@example.com + password: + type: string + description: password (to be used for logging in) + example: pasword123 + responses: + '200': + description: Successful response + content: + application/json: {} From 8a26c691cadd36db46151a35f15517bdc57129db Mon Sep 17 00:00:00 2001 From: Michael Flynn Date: Fri, 23 Jul 2021 23:00:38 -0400 Subject: [PATCH 2/7] test: form data testing Fixing my test so it actually works. Not sure what is needed for the Uncovered Line #s 175-179 --- test/index.spec.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/index.spec.js b/test/index.spec.js index 9e3c5fb..e14fc31 100644 --- a/test/index.spec.js +++ b/test/index.spec.js @@ -398,10 +398,10 @@ describe('Library specs', function () { equal(result, EXPECTED_RESPONSES_NO_HEADERS) }) - // it('should parse POST methods with form data', async function () { - // const result = await postmanToOpenApi(COLLECTION_FORM_DATA, OUTPUT_PATH, { pathDepth: 2, responseHeaders: false }) - // equal(result, COLLECTION_FORM_DATA) - // }) + it('should parse POST methods with form data', async function () { + const result = await postmanToOpenApi(COLLECTION_FORM_DATA, OUTPUT_PATH, {}) + equal(result, EXPECTED_FORM_DATA) + }) }) }) From 91ce1a92c4994237236a1af9f99471bf07c54c99 Mon Sep 17 00:00:00 2001 From: Jorge Date: Sat, 24 Jul 2021 10:55:23 +0200 Subject: [PATCH 3/7] fix: fix lint problems --- .vscode/settings.json | 3 ++- lib/index.js | 34 +++++++++++++++++----------------- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index e7ddcac..4ad7355 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,6 @@ { "cSpell.words": [ - "execa" + "execa", + "formdata" ] } \ No newline at end of file diff --git a/lib/index.js b/lib/index.js index a8aeebe..c0734e3 100644 --- a/lib/index.js +++ b/lib/index.js @@ -166,25 +166,25 @@ function parseBody (body = {}, method) { 'text/plain': {} } break - case "formdata": + case 'formdata': content = { - "multipart/form-data": { - schema: { - type: "object", - properties: body.formdata.reduce((acc, v) => { - acc[v.key] = { type: v.type === 'text' ? 'string' : v.type }; - if (v.hasOwnProperty("description")) { - acc[v.key].description = v.description == '' ? 'Description' : v.description; - } - if (v.hasOwnProperty("value") && v.value !== '') { - acc[v.key].example = v.value; - }; - return acc; - }, {}) - } + 'multipart/form-data': { + schema: { + type: 'object', + properties: body.formdata.reduce((acc, v) => { + acc[v.key] = { type: v.type === 'text' ? 'string' : v.type } + if (Object.prototype.hasOwnProperty.call(v, 'description')) { + acc[v.key].description = v.description === '' ? 'Description' : v.description + } + if (Object.prototype.hasOwnProperty.call(v, 'value') && v.value !== '') { + acc[v.key].example = v.value + }; + return acc + }, {}) } - }; - break; + } + } + break } return { requestBody: { content } } } From b569785acde50530cc5a7ca9135143380b3b1371 Mon Sep 17 00:00:00 2001 From: Jorge Date: Sat, 24 Jul 2021 11:23:17 +0200 Subject: [PATCH 4/7] refactor: little refactor to follow our code style and 100% coverage. Support for file types --- lib/index.js | 15 +++++++-------- test/resources/input/v2/FormData.json | 13 +++++++++---- test/resources/input/v21/FormData.json | 13 +++++++++---- test/resources/output/FormData.yml | 5 ++++- 4 files changed, 29 insertions(+), 17 deletions(-) diff --git a/lib/index.js b/lib/index.js index c0734e3..6185e9a 100644 --- a/lib/index.js +++ b/lib/index.js @@ -171,15 +171,14 @@ function parseBody (body = {}, method) { 'multipart/form-data': { schema: { type: 'object', - properties: body.formdata.reduce((acc, v) => { - acc[v.key] = { type: v.type === 'text' ? 'string' : v.type } - if (Object.prototype.hasOwnProperty.call(v, 'description')) { - acc[v.key].description = v.description === '' ? 'Description' : v.description + properties: body.formdata.reduce((obj, { key, type, description, value }) => { + obj[key] = { + type: 'string', + ...(description ? { description } : {}), + ...(value ? { example: value } : {}), + ...(type === 'file' ? { format: 'binary' } : {}) } - if (Object.prototype.hasOwnProperty.call(v, 'value') && v.value !== '') { - acc[v.key].example = v.value - }; - return acc + return obj }, {}) } } diff --git a/test/resources/input/v2/FormData.json b/test/resources/input/v2/FormData.json index bd8b67f..586a94a 100644 --- a/test/resources/input/v2/FormData.json +++ b/test/resources/input/v2/FormData.json @@ -1,8 +1,8 @@ { "info": { - "_postman_id": "1eaa74c4-2d76-45f0-bd34-bff5d96f0ba8", + "_postman_id": "66fd929e-c84f-4bc5-970a-60231fe16f5b", "name": "Form Data", - "description": "Just a collection with a form data post for test", + "description": "Just a collection with a form data post for test", "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json" }, "item": [ @@ -29,8 +29,13 @@ { "key": "password", "value": "pasword123", - "description": "password (to be used for logging in)", "type": "text" + }, + { + "key": "profileImage", + "description": "User avatar", + "type": "file", + "src": [] } ] }, @@ -39,4 +44,4 @@ "response": [] } ] -} +} \ No newline at end of file diff --git a/test/resources/input/v21/FormData.json b/test/resources/input/v21/FormData.json index f572d16..247c2a6 100644 --- a/test/resources/input/v21/FormData.json +++ b/test/resources/input/v21/FormData.json @@ -1,8 +1,8 @@ { "info": { - "_postman_id": "1eaa74c4-2d76-45f0-bd34-bff5d96f0ba8", + "_postman_id": "66fd929e-c84f-4bc5-970a-60231fe16f5b", "name": "Form Data", - "description": "Just a collection with a form data post for test", + "description": "Just a collection with a form data post for test", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" }, "item": [ @@ -29,8 +29,13 @@ { "key": "password", "value": "pasword123", - "description": "password (to be used for logging in)", "type": "text" + }, + { + "key": "profileImage", + "description": "User avatar", + "type": "file", + "src": [] } ] }, @@ -49,4 +54,4 @@ "response": [] } ] -} +} \ No newline at end of file diff --git a/test/resources/output/FormData.yml b/test/resources/output/FormData.yml index 229ee62..69f576c 100644 --- a/test/resources/output/FormData.yml +++ b/test/resources/output/FormData.yml @@ -27,8 +27,11 @@ paths: example: newuser@example.com password: type: string - description: password (to be used for logging in) example: pasword123 + profileImage: + type: string + description: User avatar + format: binary responses: '200': description: Successful response From 4699d5007c214c2a6347faee9b0a2a91eb1fcee9 Mon Sep 17 00:00:00 2001 From: Jorge Date: Sat, 24 Jul 2021 11:41:56 +0200 Subject: [PATCH 5/7] docs: update new feature for parse "form-data" --- docs/assets/img/formDataOptions.png | Bin 0 -> 143716 bytes docs/index.md | 12 ++++++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 docs/assets/img/formDataOptions.png diff --git a/docs/assets/img/formDataOptions.png b/docs/assets/img/formDataOptions.png new file mode 100644 index 0000000000000000000000000000000000000000..6cd53ebf44f3ec78bfb1411bcbc6bb3fd534a42c GIT binary patch literal 143716 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
From 2855f1086e113685f1d0d0034eee14e24cd12cf1 Mon Sep 17 00:00:00 2001 From: Jorge Date: Sat, 24 Jul 2021 12:00:40 +0200 Subject: [PATCH 6/7] build: update version --- package-lock.json | 820 ++++++++++++++++++++++++---------------------- package.json | 8 +- 2 files changed, 425 insertions(+), 403 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8299591..c8eb017 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { "name": "postman-to-openapi", - "version": "1.13.0", + "version": "1.14.0", "lockfileVersion": 2, "requires": true, "packages": { "": { - "version": "1.13.0", + "version": "1.14.0", "license": "MIT", "dependencies": { "commander": "^7.2.0", @@ -16,8 +16,8 @@ "p2o": "bin/cli.js" }, "devDependencies": { - "@commitlint/cli": "^12.1.4", - "@commitlint/config-conventional": "^12.1.4", + "@commitlint/cli": "^13.1.0", + "@commitlint/config-conventional": "^13.1.0", "eslint": "^7.28.0", "eslint-config-standard": "^16.0.3", "eslint-plugin-import": "^2.23.4", @@ -25,7 +25,7 @@ "eslint-plugin-promise": "^5.1.0", "execa": "^5.1.1", "husky": "^6.0.0", - "mocha": "^8.4.0", + "mocha": "^9.0.2", "nyc": "^15.1.0", "typescript": "^4.3.2" }, @@ -52,20 +52,20 @@ } }, "node_modules/@babel/core": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.6.tgz", - "integrity": "sha512-gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", + "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", "dev": true, "dependencies": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.5", + "@babel/generator": "^7.14.8", "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helpers": "^7.14.6", - "@babel/parser": "^7.14.6", + "@babel/helper-module-transforms": "^7.14.8", + "@babel/helpers": "^7.14.8", + "@babel/parser": "^7.14.8", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -103,12 +103,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.5.tgz", - "integrity": "sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", + "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", "dev": true, "dependencies": { - "@babel/types": "^7.14.5", + "@babel/types": "^7.14.8", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -206,19 +206,19 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz", - "integrity": "sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz", + "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==", "dev": true, "dependencies": { "@babel/helper-module-imports": "^7.14.5", "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-simple-access": "^7.14.5", + "@babel/helper-simple-access": "^7.14.8", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" }, "engines": { "node": ">=6.9.0" @@ -252,12 +252,12 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz", - "integrity": "sha512-nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", + "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==", "dev": true, "dependencies": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.14.8" }, "engines": { "node": ">=6.9.0" @@ -276,9 +276,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz", + "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==", "dev": true, "engines": { "node": ">=6.9.0" @@ -294,14 +294,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.6.tgz", - "integrity": "sha512-yesp1ENQBiLI+iYHSJdoZKUtRpfTlL1grDIX9NRlAVppljLw/4tTyYupIB7uIYmC3stW/imAv8EqaKaS/ibmeA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz", + "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==", "dev": true, "dependencies": { "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" }, "engines": { "node": ">=6.9.0" @@ -393,9 +393,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.7.tgz", - "integrity": "sha512-X67Z5y+VBJuHB/RjwECp8kSl5uYi0BvRbNeWqkaJCVh+LiTPl19WBUfG627psSgp9rSf6ojuXghQM3ha6qHHdA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz", + "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -431,18 +431,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.7.tgz", - "integrity": "sha512-9vDr5NzHu27wgwejuKL7kIOm4bwEtaPQ4Z6cpCmjSuaRqpH/7xc4qcGEscwMqlkwgcXl6MvqoAjZkQ24uSdIZQ==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz", + "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.5", + "@babel/generator": "^7.14.8", "@babel/helper-function-name": "^7.14.5", "@babel/helper-hoist-variables": "^7.14.5", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.7", - "@babel/types": "^7.14.5", + "@babel/parser": "^7.14.8", + "@babel/types": "^7.14.8", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -472,12 +472,12 @@ } }, "node_modules/@babel/types": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.5.tgz", - "integrity": "sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz", + "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", "to-fast-properties": "^2.0.0" }, "engines": { @@ -485,163 +485,181 @@ } }, "node_modules/@commitlint/cli": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-12.1.4.tgz", - "integrity": "sha512-ZR1WjXLvqEffYyBPT0XdnSxtt3Ty1TMoujEtseW5o3vPnkA1UNashAMjQVg/oELqfaiAMnDw8SERPMN0e/0kLg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-13.1.0.tgz", + "integrity": "sha512-xN/uNYWtGTva5OMSd+xA6e6/c2jk8av7MUbdd6w2cw89u6z3fAWoyiH87X0ewdSMNYmW/6B3L/2dIVGHRDID5w==", "dev": true, "dependencies": { - "@commitlint/format": "^12.1.4", - "@commitlint/lint": "^12.1.4", - "@commitlint/load": "^12.1.4", - "@commitlint/read": "^12.1.4", - "@commitlint/types": "^12.1.4", + "@commitlint/format": "^13.1.0", + "@commitlint/lint": "^13.1.0", + "@commitlint/load": "^13.1.0", + "@commitlint/read": "^13.1.0", + "@commitlint/types": "^13.1.0", "lodash": "^4.17.19", "resolve-from": "5.0.0", "resolve-global": "1.0.0", - "yargs": "^16.2.0" + "yargs": "^17.0.0" }, "bin": { "commitlint": "cli.js" }, "engines": { - "node": ">=v10" + "node": ">=v12" + } + }, + "node_modules/@commitlint/cli/node_modules/yargs": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.0.1.tgz", + "integrity": "sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=12" } }, "node_modules/@commitlint/config-conventional": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.1.4.tgz", - "integrity": "sha512-ZIdzmdy4o4WyqywMEpprRCrehjCSQrHkaRTVZV411GyLigFQHlEBSJITAihLAWe88Qy/8SyoIe5uKvAsV5vRqQ==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-13.1.0.tgz", + "integrity": "sha512-zukJXqdr6jtMiVRy3tTHmwgKcUMGfqKDEskRigc5W3k2aYF4gBAtCEjMAJGZgSQE4DMcHeok0pEV2ANmTpb0cw==", "dev": true, "dependencies": { "conventional-changelog-conventionalcommits": "^4.3.1" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/ensure": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.1.4.tgz", - "integrity": "sha512-MxHIBuAG9M4xl33qUfIeMSasbv3ktK0W+iygldBxZOL4QSYC2Gn66pZAQMnV9o3V+sVFHoAK2XUKqBAYrgbEqw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-13.1.0.tgz", + "integrity": "sha512-NRGyjOdZQnlYwm9it//BZJ2Vm+4x7G9rEnHpLCvNKYY0c6RA8Qf7hamLAB8dWO12RLuFt06JaOpHZoTt/gHutA==", "dev": true, "dependencies": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "lodash": "^4.17.19" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/execute-rule": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.1.4.tgz", - "integrity": "sha512-h2S1j8SXyNeABb27q2Ok2vD1WfxJiXvOttKuRA9Or7LN6OQoC/KtT3844CIhhWNteNMu/wE0gkTqGxDVAnJiHg==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-13.0.0.tgz", + "integrity": "sha512-lBz2bJhNAgkkU/rFMAw3XBNujbxhxlaFHY3lfKB/MxpAa+pIfmWB3ig9i1VKe0wCvujk02O0WiMleNaRn2KJqw==", "dev": true, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/format": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-12.1.4.tgz", - "integrity": "sha512-h28ucMaoRjVvvgS6Bdf85fa/+ZZ/iu1aeWGCpURnQV7/rrVjkhNSjZwGlCOUd5kDV1EnZ5XdI7L18SUpRjs26g==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-13.1.0.tgz", + "integrity": "sha512-n46rYvzf+6Sm99TJjTLjJBkjm6JVcklt31lDO5Q+pCIV0NnJ4qIUcwa6wIL9a9Vqb1XzlMgtp27E0zyYArkvSg==", "dev": true, "dependencies": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "chalk": "^4.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/is-ignored": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.1.4.tgz", - "integrity": "sha512-uTu2jQU2SKvtIRVLOzMQo3KxDtO+iJ1p0olmncwrqy4AfPLgwoyCP2CiULq5M7xpR3+dE3hBlZXbZTQbD7ycIw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-13.1.0.tgz", + "integrity": "sha512-P6zenLE5Tn3FTNjRzmL9+/KooTXEI0khA2TmUbuei9KiycemeO4q7Xk7w7aXwFPNAbN0O9oI7z3z7cFpzKJWmQ==", "dev": true, "dependencies": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "semver": "7.3.5" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/lint": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-12.1.4.tgz", - "integrity": "sha512-1kZ8YDp4to47oIPFELUFGLiLumtPNKJigPFDuHt2+f3Q3IKdQ0uk53n3CPl4uoyso/Og/EZvb1mXjFR/Yce4cA==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-13.1.0.tgz", + "integrity": "sha512-qH9AYSQDDTaSWSdtOvB3G1RdPpcYSgddAdFYqpFewlKQ1GJj/L+sM7vwqCG7/ip6AiM04Sry1sgmFzaEoFREUA==", "dev": true, "dependencies": { - "@commitlint/is-ignored": "^12.1.4", - "@commitlint/parse": "^12.1.4", - "@commitlint/rules": "^12.1.4", - "@commitlint/types": "^12.1.4" + "@commitlint/is-ignored": "^13.1.0", + "@commitlint/parse": "^13.1.0", + "@commitlint/rules": "^13.1.0", + "@commitlint/types": "^13.1.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/load": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-12.1.4.tgz", - "integrity": "sha512-Keszi0IOjRzKfxT+qES/n+KZyLrxy79RQz8wWgssCboYjKEp+wC+fLCgbiMCYjI5k31CIzIOq/16J7Ycr0C0EA==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-13.1.0.tgz", + "integrity": "sha512-zlZbjJCWnWmBOSwTXis8H7I6pYk6JbDwOCuARA6B9Y/qt2PD+NCo0E/7EuaaFoxjHl+o56QR5QttuMBrf+BJzg==", "dev": true, "dependencies": { - "@commitlint/execute-rule": "^12.1.4", - "@commitlint/resolve-extends": "^12.1.4", - "@commitlint/types": "^12.1.4", + "@commitlint/execute-rule": "^13.0.0", + "@commitlint/resolve-extends": "^13.0.0", + "@commitlint/types": "^13.1.0", "chalk": "^4.0.0", "cosmiconfig": "^7.0.0", "lodash": "^4.17.19", "resolve-from": "^5.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/message": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-12.1.4.tgz", - "integrity": "sha512-6QhalEKsKQ/Y16/cTk5NH4iByz26fqws2ub+AinHPtM7Io0jy4e3rym9iE+TkEqiqWZlUigZnTwbPvRJeSUBaA==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-13.0.0.tgz", + "integrity": "sha512-W/pxhesVEk8747BEWJ+VGQ9ILHmCV27/pEwJ0hGny1wqVquUR8SxvScRCbUjHCB1YtWX4dEnOPXOS9CLH/CX7A==", "dev": true, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/parse": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-12.1.4.tgz", - "integrity": "sha512-yqKSAsK2V4X/HaLb/yYdrzs6oD/G48Ilt0EJ2Mp6RJeWYxG14w/Out6JrneWnr/cpzemyN5hExOg6+TB19H/Lw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-13.1.0.tgz", + "integrity": "sha512-xFybZcqBiKVjt6vTStvQkySWEUYPI0AcO4QQELyy29o8EzYZqWkhUfrb7K61fWiHsplWL1iL6F3qCLoxSgTcrg==", "dev": true, "dependencies": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "conventional-changelog-angular": "^5.0.11", "conventional-commits-parser": "^3.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/read": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-12.1.4.tgz", - "integrity": "sha512-TnPQSJgD8Aod5Xeo9W4SaYKRZmIahukjcCWJ2s5zb3ZYSmj6C85YD9cR5vlRyrZjj78ItLUV/X4FMWWVIS38Jg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-13.1.0.tgz", + "integrity": "sha512-NrVe23GMKyL6i1yDJD8IpqCBzhzoS3wtLfDj8QBzc01Ov1cYBmDojzvBklypGb+MLJM1NbzmRM4PR5pNX0U/NQ==", "dev": true, "dependencies": { - "@commitlint/top-level": "^12.1.4", - "@commitlint/types": "^12.1.4", - "fs-extra": "^9.0.0", + "@commitlint/top-level": "^13.0.0", + "@commitlint/types": "^13.1.0", + "fs-extra": "^10.0.0", "git-raw-commits": "^2.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/resolve-extends": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.1.4.tgz", - "integrity": "sha512-R9CoUtsXLd6KSCfsZly04grsH6JVnWFmVtWgWs1KdDpdV+G3TSs37tColMFqglpkx3dsWu8dsPD56+D9YnJfqg==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-13.0.0.tgz", + "integrity": "sha512-1SyaE+UOsYTkQlTPUOoj4NwxQhGFtYildVS/d0TJuK8a9uAJLw7bhCLH2PEeH5cC2D1do4Eqhx/3bLDrSLH3hg==", "dev": true, "dependencies": { "import-fresh": "^3.0.0", @@ -650,61 +668,62 @@ "resolve-global": "^1.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/rules": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-12.1.4.tgz", - "integrity": "sha512-W8m6ZSjg7RuIsIfzQiFHa48X5mcPXeKT9yjBxVmjHvYfS2FDBf1VxCQ7vO0JTVIdV4ohjZ0eKg/wxxUuZHJAZg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-13.1.0.tgz", + "integrity": "sha512-b6F+vBqEXsHVghrhomG0Y6YJimHZqkzZ0n5QEpk03dpBXH2OnsezpTw5e+GvbyYCc7PutGbYVQkytuv+7xCxYA==", "dev": true, "dependencies": { - "@commitlint/ensure": "^12.1.4", - "@commitlint/message": "^12.1.4", - "@commitlint/to-lines": "^12.1.4", - "@commitlint/types": "^12.1.4" + "@commitlint/ensure": "^13.1.0", + "@commitlint/message": "^13.0.0", + "@commitlint/to-lines": "^13.0.0", + "@commitlint/types": "^13.1.0", + "execa": "^5.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/to-lines": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.1.4.tgz", - "integrity": "sha512-TParumvbi8bdx3EdLXz2MaX+e15ZgoCqNUgqHsRLwyqLUTRbqCVkzrfadG1UcMQk8/d5aMbb327ZKG3Q4BRorw==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-13.0.0.tgz", + "integrity": "sha512-mzxWwCio1M4/kG9/69TTYqrraQ66LmtJCYTzAZdZ2eJX3I5w52pSjyP/DJzAUVmmJCYf2Kw3s+RtNVShtnZ+Rw==", "dev": true, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/top-level": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.1.4.tgz", - "integrity": "sha512-d4lTJrOT/dXlpY+NIt4CUl77ciEzYeNVc0VFgUQ6VA+b1rqYD2/VWFjBlWVOrklxtSDeKyuEhs36RGrppEFAvg==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-13.0.0.tgz", + "integrity": "sha512-baBy3MZBF28sR93yFezd4a5TdHsbXaakeladfHK9dOcGdXo9oQe3GS5hP3BmlN680D6AiQSN7QPgEJgrNUWUCg==", "dev": true, "dependencies": { "find-up": "^5.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@commitlint/types": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-12.1.4.tgz", - "integrity": "sha512-KRIjdnWNUx6ywz+SJvjmNCbQKcKP6KArhjZhY2l+CWKxak0d77SOjggkMwFTiSgLODOwmuLTbarR2ZfWPiPMlw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-13.1.0.tgz", + "integrity": "sha512-zcVjuT+OfKt8h91vhBxt05RMcTGEx6DM7Q9QZeuMbXFk6xgbsSEDMMapbJPA1bCZ81fa/1OQBijSYPrKvtt06g==", "dev": true, "dependencies": { "chalk": "^4.0.0" }, "engines": { - "node": ">=v10" + "node": ">=v12" } }, "node_modules/@eslint/eslintrc": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -1065,15 +1084,6 @@ "node": ">=8" } }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -1204,9 +1214,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001245", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz", - "integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==", + "version": "1.0.30001247", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001247.tgz", + "integrity": "sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==", "dev": true, "funding": { "type": "opencollective", @@ -1230,24 +1240,24 @@ } }, "node_modules/chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", "dev": true, "dependencies": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "glob-parent": "~5.1.0", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" + "readdirp": "~3.6.0" }, "engines": { "node": ">= 8.10.0" }, "optionalDependencies": { - "fsevents": "~2.3.1" + "fsevents": "~2.3.2" } }, "node_modules/clean-stack": { @@ -1532,9 +1542,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.3.778", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.778.tgz", - "integrity": "sha512-Lw04qJaPtWdq0d7qKHJTgkam+FhFi3hm/scf1EyqJWdjO3ZIGUJhNmZJRXWb7yb/bRYXQyVGSpa9RqVpjjWMQw==", + "version": "1.3.786", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.786.tgz", + "integrity": "sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==", "dev": true }, "node_modules/emoji-regex": { @@ -1639,13 +1649,13 @@ } }, "node_modules/eslint": { - "version": "7.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.30.0.tgz", - "integrity": "sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==", + "version": "7.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz", + "integrity": "sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==", "dev": true, "dependencies": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.2", + "@eslint/eslintrc": "^0.4.3", "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -2348,18 +2358,17 @@ ] }, "node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", + "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", "dev": true, "dependencies": { - "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/fs.realpath": { @@ -2467,9 +2476,9 @@ } }, "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -2967,6 +2976,18 @@ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -3311,15 +3332,19 @@ "dev": true }, "node_modules/log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "dependencies": { - "chalk": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lru-cache": { @@ -3604,33 +3629,33 @@ } }, "node_modules/mocha": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", - "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.0.2.tgz", + "integrity": "sha512-FpspiWU+UT9Sixx/wKimvnpkeW0mh6ROAKkIaPokj3xZgxeRhcna/k5X57jJghEr8X+Cgu/Vegf8zCX5ugSuTA==", "dev": true, "dependencies": { "@ungap/promise-all-settled": "1.1.2", "ansi-colors": "4.1.1", "browser-stdout": "1.3.1", - "chokidar": "3.5.1", + "chokidar": "3.5.2", "debug": "4.3.1", "diff": "5.0.0", "escape-string-regexp": "4.0.0", "find-up": "5.0.0", - "glob": "7.1.6", + "glob": "7.1.7", "growl": "1.10.5", "he": "1.2.0", - "js-yaml": "4.0.0", - "log-symbols": "4.0.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", "minimatch": "3.0.4", "ms": "2.1.3", - "nanoid": "3.1.20", - "serialize-javascript": "5.0.1", + "nanoid": "3.1.23", + "serialize-javascript": "6.0.0", "strip-json-comments": "3.1.1", "supports-color": "8.1.1", "which": "2.0.2", "wide-align": "1.1.3", - "workerpool": "6.1.0", + "workerpool": "6.1.5", "yargs": "16.2.0", "yargs-parser": "20.2.4", "yargs-unparser": "2.0.0" @@ -3640,7 +3665,7 @@ "mocha": "bin/mocha" }, "engines": { - "node": ">= 10.12.0" + "node": ">= 12.0.0" }, "funding": { "type": "opencollective", @@ -3670,18 +3695,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/mocha/node_modules/js-yaml": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", - "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, "node_modules/mocha/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -3719,9 +3732,9 @@ "dev": true }, "node_modules/nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" @@ -4575,9 +4588,9 @@ } }, "node_modules/readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "dependencies": { "picomatch": "^2.2.1" @@ -4718,9 +4731,9 @@ } }, "node_modules/serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", "dev": true, "dependencies": { "randombytes": "^2.1.0" @@ -5336,9 +5349,9 @@ } }, "node_modules/workerpool": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", - "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", + "integrity": "sha512-XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==", "dev": true }, "node_modules/wrap-ansi": { @@ -5505,20 +5518,20 @@ "dev": true }, "@babel/core": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.6.tgz", - "integrity": "sha512-gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", + "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.5", + "@babel/generator": "^7.14.8", "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helpers": "^7.14.6", - "@babel/parser": "^7.14.6", + "@babel/helper-module-transforms": "^7.14.8", + "@babel/helpers": "^7.14.8", + "@babel/parser": "^7.14.8", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -5545,12 +5558,12 @@ } }, "@babel/generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.5.tgz", - "integrity": "sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", + "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", "dev": true, "requires": { - "@babel/types": "^7.14.5", + "@babel/types": "^7.14.8", "jsesc": "^2.5.1", "source-map": "^0.5.0" } @@ -5623,19 +5636,19 @@ } }, "@babel/helper-module-transforms": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz", - "integrity": "sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz", + "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.14.5", "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-simple-access": "^7.14.5", + "@babel/helper-simple-access": "^7.14.8", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" } }, "@babel/helper-optimise-call-expression": { @@ -5660,12 +5673,12 @@ } }, "@babel/helper-simple-access": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz", - "integrity": "sha512-nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", + "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.14.8" } }, "@babel/helper-split-export-declaration": { @@ -5678,9 +5691,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz", + "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==", "dev": true }, "@babel/helper-validator-option": { @@ -5690,14 +5703,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.6.tgz", - "integrity": "sha512-yesp1ENQBiLI+iYHSJdoZKUtRpfTlL1grDIX9NRlAVppljLw/4tTyYupIB7uIYmC3stW/imAv8EqaKaS/ibmeA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz", + "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==", "dev": true, "requires": { "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" } }, "@babel/highlight": { @@ -5770,9 +5783,9 @@ } }, "@babel/parser": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.7.tgz", - "integrity": "sha512-X67Z5y+VBJuHB/RjwECp8kSl5uYi0BvRbNeWqkaJCVh+LiTPl19WBUfG627psSgp9rSf6ojuXghQM3ha6qHHdA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz", + "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==", "dev": true }, "@babel/template": { @@ -5798,18 +5811,18 @@ } }, "@babel/traverse": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.7.tgz", - "integrity": "sha512-9vDr5NzHu27wgwejuKL7kIOm4bwEtaPQ4Z6cpCmjSuaRqpH/7xc4qcGEscwMqlkwgcXl6MvqoAjZkQ24uSdIZQ==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz", + "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.5", + "@babel/generator": "^7.14.8", "@babel/helper-function-name": "^7.14.5", "@babel/helper-hoist-variables": "^7.14.5", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.7", - "@babel/types": "^7.14.5", + "@babel/parser": "^7.14.8", + "@babel/types": "^7.14.8", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -5832,98 +5845,115 @@ } }, "@babel/types": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.5.tgz", - "integrity": "sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz", + "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", "to-fast-properties": "^2.0.0" } }, "@commitlint/cli": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-12.1.4.tgz", - "integrity": "sha512-ZR1WjXLvqEffYyBPT0XdnSxtt3Ty1TMoujEtseW5o3vPnkA1UNashAMjQVg/oELqfaiAMnDw8SERPMN0e/0kLg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-13.1.0.tgz", + "integrity": "sha512-xN/uNYWtGTva5OMSd+xA6e6/c2jk8av7MUbdd6w2cw89u6z3fAWoyiH87X0ewdSMNYmW/6B3L/2dIVGHRDID5w==", "dev": true, "requires": { - "@commitlint/format": "^12.1.4", - "@commitlint/lint": "^12.1.4", - "@commitlint/load": "^12.1.4", - "@commitlint/read": "^12.1.4", - "@commitlint/types": "^12.1.4", + "@commitlint/format": "^13.1.0", + "@commitlint/lint": "^13.1.0", + "@commitlint/load": "^13.1.0", + "@commitlint/read": "^13.1.0", + "@commitlint/types": "^13.1.0", "lodash": "^4.17.19", "resolve-from": "5.0.0", "resolve-global": "1.0.0", - "yargs": "^16.2.0" + "yargs": "^17.0.0" + }, + "dependencies": { + "yargs": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.0.1.tgz", + "integrity": "sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + } } }, "@commitlint/config-conventional": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.1.4.tgz", - "integrity": "sha512-ZIdzmdy4o4WyqywMEpprRCrehjCSQrHkaRTVZV411GyLigFQHlEBSJITAihLAWe88Qy/8SyoIe5uKvAsV5vRqQ==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-13.1.0.tgz", + "integrity": "sha512-zukJXqdr6jtMiVRy3tTHmwgKcUMGfqKDEskRigc5W3k2aYF4gBAtCEjMAJGZgSQE4DMcHeok0pEV2ANmTpb0cw==", "dev": true, "requires": { "conventional-changelog-conventionalcommits": "^4.3.1" } }, "@commitlint/ensure": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.1.4.tgz", - "integrity": "sha512-MxHIBuAG9M4xl33qUfIeMSasbv3ktK0W+iygldBxZOL4QSYC2Gn66pZAQMnV9o3V+sVFHoAK2XUKqBAYrgbEqw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-13.1.0.tgz", + "integrity": "sha512-NRGyjOdZQnlYwm9it//BZJ2Vm+4x7G9rEnHpLCvNKYY0c6RA8Qf7hamLAB8dWO12RLuFt06JaOpHZoTt/gHutA==", "dev": true, "requires": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "lodash": "^4.17.19" } }, "@commitlint/execute-rule": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.1.4.tgz", - "integrity": "sha512-h2S1j8SXyNeABb27q2Ok2vD1WfxJiXvOttKuRA9Or7LN6OQoC/KtT3844CIhhWNteNMu/wE0gkTqGxDVAnJiHg==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-13.0.0.tgz", + "integrity": "sha512-lBz2bJhNAgkkU/rFMAw3XBNujbxhxlaFHY3lfKB/MxpAa+pIfmWB3ig9i1VKe0wCvujk02O0WiMleNaRn2KJqw==", "dev": true }, "@commitlint/format": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-12.1.4.tgz", - "integrity": "sha512-h28ucMaoRjVvvgS6Bdf85fa/+ZZ/iu1aeWGCpURnQV7/rrVjkhNSjZwGlCOUd5kDV1EnZ5XdI7L18SUpRjs26g==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-13.1.0.tgz", + "integrity": "sha512-n46rYvzf+6Sm99TJjTLjJBkjm6JVcklt31lDO5Q+pCIV0NnJ4qIUcwa6wIL9a9Vqb1XzlMgtp27E0zyYArkvSg==", "dev": true, "requires": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "chalk": "^4.0.0" } }, "@commitlint/is-ignored": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.1.4.tgz", - "integrity": "sha512-uTu2jQU2SKvtIRVLOzMQo3KxDtO+iJ1p0olmncwrqy4AfPLgwoyCP2CiULq5M7xpR3+dE3hBlZXbZTQbD7ycIw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-13.1.0.tgz", + "integrity": "sha512-P6zenLE5Tn3FTNjRzmL9+/KooTXEI0khA2TmUbuei9KiycemeO4q7Xk7w7aXwFPNAbN0O9oI7z3z7cFpzKJWmQ==", "dev": true, "requires": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "semver": "7.3.5" } }, "@commitlint/lint": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-12.1.4.tgz", - "integrity": "sha512-1kZ8YDp4to47oIPFELUFGLiLumtPNKJigPFDuHt2+f3Q3IKdQ0uk53n3CPl4uoyso/Og/EZvb1mXjFR/Yce4cA==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-13.1.0.tgz", + "integrity": "sha512-qH9AYSQDDTaSWSdtOvB3G1RdPpcYSgddAdFYqpFewlKQ1GJj/L+sM7vwqCG7/ip6AiM04Sry1sgmFzaEoFREUA==", "dev": true, "requires": { - "@commitlint/is-ignored": "^12.1.4", - "@commitlint/parse": "^12.1.4", - "@commitlint/rules": "^12.1.4", - "@commitlint/types": "^12.1.4" + "@commitlint/is-ignored": "^13.1.0", + "@commitlint/parse": "^13.1.0", + "@commitlint/rules": "^13.1.0", + "@commitlint/types": "^13.1.0" } }, "@commitlint/load": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-12.1.4.tgz", - "integrity": "sha512-Keszi0IOjRzKfxT+qES/n+KZyLrxy79RQz8wWgssCboYjKEp+wC+fLCgbiMCYjI5k31CIzIOq/16J7Ycr0C0EA==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-13.1.0.tgz", + "integrity": "sha512-zlZbjJCWnWmBOSwTXis8H7I6pYk6JbDwOCuARA6B9Y/qt2PD+NCo0E/7EuaaFoxjHl+o56QR5QttuMBrf+BJzg==", "dev": true, "requires": { - "@commitlint/execute-rule": "^12.1.4", - "@commitlint/resolve-extends": "^12.1.4", - "@commitlint/types": "^12.1.4", + "@commitlint/execute-rule": "^13.0.0", + "@commitlint/resolve-extends": "^13.0.0", + "@commitlint/types": "^13.1.0", "chalk": "^4.0.0", "cosmiconfig": "^7.0.0", "lodash": "^4.17.19", @@ -5931,38 +5961,38 @@ } }, "@commitlint/message": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-12.1.4.tgz", - "integrity": "sha512-6QhalEKsKQ/Y16/cTk5NH4iByz26fqws2ub+AinHPtM7Io0jy4e3rym9iE+TkEqiqWZlUigZnTwbPvRJeSUBaA==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-13.0.0.tgz", + "integrity": "sha512-W/pxhesVEk8747BEWJ+VGQ9ILHmCV27/pEwJ0hGny1wqVquUR8SxvScRCbUjHCB1YtWX4dEnOPXOS9CLH/CX7A==", "dev": true }, "@commitlint/parse": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-12.1.4.tgz", - "integrity": "sha512-yqKSAsK2V4X/HaLb/yYdrzs6oD/G48Ilt0EJ2Mp6RJeWYxG14w/Out6JrneWnr/cpzemyN5hExOg6+TB19H/Lw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-13.1.0.tgz", + "integrity": "sha512-xFybZcqBiKVjt6vTStvQkySWEUYPI0AcO4QQELyy29o8EzYZqWkhUfrb7K61fWiHsplWL1iL6F3qCLoxSgTcrg==", "dev": true, "requires": { - "@commitlint/types": "^12.1.4", + "@commitlint/types": "^13.1.0", "conventional-changelog-angular": "^5.0.11", "conventional-commits-parser": "^3.0.0" } }, "@commitlint/read": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-12.1.4.tgz", - "integrity": "sha512-TnPQSJgD8Aod5Xeo9W4SaYKRZmIahukjcCWJ2s5zb3ZYSmj6C85YD9cR5vlRyrZjj78ItLUV/X4FMWWVIS38Jg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-13.1.0.tgz", + "integrity": "sha512-NrVe23GMKyL6i1yDJD8IpqCBzhzoS3wtLfDj8QBzc01Ov1cYBmDojzvBklypGb+MLJM1NbzmRM4PR5pNX0U/NQ==", "dev": true, "requires": { - "@commitlint/top-level": "^12.1.4", - "@commitlint/types": "^12.1.4", - "fs-extra": "^9.0.0", + "@commitlint/top-level": "^13.0.0", + "@commitlint/types": "^13.1.0", + "fs-extra": "^10.0.0", "git-raw-commits": "^2.0.0" } }, "@commitlint/resolve-extends": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.1.4.tgz", - "integrity": "sha512-R9CoUtsXLd6KSCfsZly04grsH6JVnWFmVtWgWs1KdDpdV+G3TSs37tColMFqglpkx3dsWu8dsPD56+D9YnJfqg==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-13.0.0.tgz", + "integrity": "sha512-1SyaE+UOsYTkQlTPUOoj4NwxQhGFtYildVS/d0TJuK8a9uAJLw7bhCLH2PEeH5cC2D1do4Eqhx/3bLDrSLH3hg==", "dev": true, "requires": { "import-fresh": "^3.0.0", @@ -5972,45 +6002,46 @@ } }, "@commitlint/rules": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-12.1.4.tgz", - "integrity": "sha512-W8m6ZSjg7RuIsIfzQiFHa48X5mcPXeKT9yjBxVmjHvYfS2FDBf1VxCQ7vO0JTVIdV4ohjZ0eKg/wxxUuZHJAZg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-13.1.0.tgz", + "integrity": "sha512-b6F+vBqEXsHVghrhomG0Y6YJimHZqkzZ0n5QEpk03dpBXH2OnsezpTw5e+GvbyYCc7PutGbYVQkytuv+7xCxYA==", "dev": true, "requires": { - "@commitlint/ensure": "^12.1.4", - "@commitlint/message": "^12.1.4", - "@commitlint/to-lines": "^12.1.4", - "@commitlint/types": "^12.1.4" + "@commitlint/ensure": "^13.1.0", + "@commitlint/message": "^13.0.0", + "@commitlint/to-lines": "^13.0.0", + "@commitlint/types": "^13.1.0", + "execa": "^5.0.0" } }, "@commitlint/to-lines": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.1.4.tgz", - "integrity": "sha512-TParumvbi8bdx3EdLXz2MaX+e15ZgoCqNUgqHsRLwyqLUTRbqCVkzrfadG1UcMQk8/d5aMbb327ZKG3Q4BRorw==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-13.0.0.tgz", + "integrity": "sha512-mzxWwCio1M4/kG9/69TTYqrraQ66LmtJCYTzAZdZ2eJX3I5w52pSjyP/DJzAUVmmJCYf2Kw3s+RtNVShtnZ+Rw==", "dev": true }, "@commitlint/top-level": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.1.4.tgz", - "integrity": "sha512-d4lTJrOT/dXlpY+NIt4CUl77ciEzYeNVc0VFgUQ6VA+b1rqYD2/VWFjBlWVOrklxtSDeKyuEhs36RGrppEFAvg==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-13.0.0.tgz", + "integrity": "sha512-baBy3MZBF28sR93yFezd4a5TdHsbXaakeladfHK9dOcGdXo9oQe3GS5hP3BmlN680D6AiQSN7QPgEJgrNUWUCg==", "dev": true, "requires": { "find-up": "^5.0.0" } }, "@commitlint/types": { - "version": "12.1.4", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-12.1.4.tgz", - "integrity": "sha512-KRIjdnWNUx6ywz+SJvjmNCbQKcKP6KArhjZhY2l+CWKxak0d77SOjggkMwFTiSgLODOwmuLTbarR2ZfWPiPMlw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-13.1.0.tgz", + "integrity": "sha512-zcVjuT+OfKt8h91vhBxt05RMcTGEx6DM7Q9QZeuMbXFk6xgbsSEDMMapbJPA1bCZ81fa/1OQBijSYPrKvtt06g==", "dev": true, "requires": { "chalk": "^4.0.0" } }, "@eslint/eslintrc": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -6291,12 +6322,6 @@ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, - "at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true - }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -6393,9 +6418,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001245", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz", - "integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==", + "version": "1.0.30001247", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001247.tgz", + "integrity": "sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==", "dev": true }, "chalk": { @@ -6409,19 +6434,19 @@ } }, "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", "dev": true, "requires": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" + "readdirp": "~3.6.0" } }, "clean-stack": { @@ -6646,9 +6671,9 @@ } }, "electron-to-chromium": { - "version": "1.3.778", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.778.tgz", - "integrity": "sha512-Lw04qJaPtWdq0d7qKHJTgkam+FhFi3hm/scf1EyqJWdjO3ZIGUJhNmZJRXWb7yb/bRYXQyVGSpa9RqVpjjWMQw==", + "version": "1.3.786", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.786.tgz", + "integrity": "sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==", "dev": true }, "emoji-regex": { @@ -6729,13 +6754,13 @@ "dev": true }, "eslint": { - "version": "7.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.30.0.tgz", - "integrity": "sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==", + "version": "7.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz", + "integrity": "sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.2", + "@eslint/eslintrc": "^0.4.3", "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -7260,12 +7285,11 @@ "dev": true }, "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", + "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", "dev": true, "requires": { - "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" @@ -7345,9 +7369,9 @@ } }, "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -7687,6 +7711,12 @@ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -7960,12 +7990,13 @@ "dev": true }, "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "requires": { - "chalk": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" } }, "lru-cache": { @@ -8177,33 +8208,33 @@ } }, "mocha": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", - "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.0.2.tgz", + "integrity": "sha512-FpspiWU+UT9Sixx/wKimvnpkeW0mh6ROAKkIaPokj3xZgxeRhcna/k5X57jJghEr8X+Cgu/Vegf8zCX5ugSuTA==", "dev": true, "requires": { "@ungap/promise-all-settled": "1.1.2", "ansi-colors": "4.1.1", "browser-stdout": "1.3.1", - "chokidar": "3.5.1", + "chokidar": "3.5.2", "debug": "4.3.1", "diff": "5.0.0", "escape-string-regexp": "4.0.0", "find-up": "5.0.0", - "glob": "7.1.6", + "glob": "7.1.7", "growl": "1.10.5", "he": "1.2.0", - "js-yaml": "4.0.0", - "log-symbols": "4.0.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", "minimatch": "3.0.4", "ms": "2.1.3", - "nanoid": "3.1.20", - "serialize-javascript": "5.0.1", + "nanoid": "3.1.23", + "serialize-javascript": "6.0.0", "strip-json-comments": "3.1.1", "supports-color": "8.1.1", "which": "2.0.2", "wide-align": "1.1.3", - "workerpool": "6.1.0", + "workerpool": "6.1.5", "yargs": "16.2.0", "yargs-parser": "20.2.4", "yargs-unparser": "2.0.0" @@ -8226,15 +8257,6 @@ } } }, - "js-yaml": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", - "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, "ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -8265,9 +8287,9 @@ "dev": true }, "nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", "dev": true }, "natural-compare": { @@ -8911,9 +8933,9 @@ } }, "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { "picomatch": "^2.2.1" @@ -9012,9 +9034,9 @@ } }, "serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -9498,9 +9520,9 @@ "dev": true }, "workerpool": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", - "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", + "integrity": "sha512-XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==", "dev": true }, "wrap-ansi": { diff --git a/package.json b/package.json index 6a9c727..996fcf6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "postman-to-openapi", - "version": "1.13.0", + "version": "1.14.0", "description": "Convert postman collection to OpenAPI spec", "main": "lib/index.js", "types": "types/index.d.ts", @@ -45,8 +45,8 @@ }, "homepage": "https://github.com/joolfe/postman-to-openapi#readme", "devDependencies": { - "@commitlint/cli": "^12.1.4", - "@commitlint/config-conventional": "^12.1.4", + "@commitlint/cli": "^13.1.0", + "@commitlint/config-conventional": "^13.1.0", "eslint": "^7.28.0", "eslint-config-standard": "^16.0.3", "eslint-plugin-import": "^2.23.4", @@ -54,7 +54,7 @@ "eslint-plugin-promise": "^5.1.0", "execa": "^5.1.1", "husky": "^6.0.0", - "mocha": "^8.4.0", + "mocha": "^9.0.2", "nyc": "^15.1.0", "typescript": "^4.3.2" }, From e8283c18fbad1c9c120965062d10f31bc752d254 Mon Sep 17 00:00:00 2001 From: Jorge Date: Sat, 24 Jul 2021 12:01:30 +0200 Subject: [PATCH 7/7] docs: update changelog --- CHANGELOG.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index af9848f..9dbac63 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,35 @@ +## [1.14.0](https://github.com/joolfe/postman-to-openapi/compare/1.13.0...1.14.0) (2021-07-24) + + +### Features + +* adding support for formdata ([547b137](https://github.com/joolfe/postman-to-openapi/commit/547b137a52277d029e7b4c022311faf79161fccf)) + + +### Bug Fixes + +* fix lint problems ([91ce1a9](https://github.com/joolfe/postman-to-openapi/commit/91ce1a92c4994237236a1af9f99471bf07c54c99)) + + +### Tests + +* form data testing ([8a26c69](https://github.com/joolfe/postman-to-openapi/commit/8a26c691cadd36db46151a35f15517bdc57129db)) + + +### Code Refactoring + +* little refactor to follow our code style and 100% coverage. Support for file types ([b569785](https://github.com/joolfe/postman-to-openapi/commit/b569785acde50530cc5a7ca9135143380b3b1371)) + + +### Documentation + +* update new feature for parse "form-data" ([4699d50](https://github.com/joolfe/postman-to-openapi/commit/4699d5007c214c2a6347faee9b0a2a91eb1fcee9)) + + +### Build System + +* update version ([2855f10](https://github.com/joolfe/postman-to-openapi/commit/2855f1086e113685f1d0d0034eee14e24cd12cf1)) + ## [1.13.0](https://github.com/joolfe/postman-to-openapi/compare/1.12.1...1.13.0) (2021-07-16)

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 literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index c450b72..0af88f5 100644 --- a/docs/index.md +++ b/docs/index.md @@ -25,7 +25,7 @@ * Transform query, headers and path parameters (description, required...). * Postman variables as Path parameters. * Automatic infer types from query and headers parameters. -* Support Json and Text body formats. +* Support postman "raw" body for `Json` and `Text` formats and also postman body "form-data". * Postman Authorization parse or by configuration (Basic and Bearer). * Contact and License from variables or by configuration. * Provide meta-information as a markdown table. @@ -320,7 +320,7 @@ The default value is `true`, so headers are by default added to the response def ## Basic conversion -This library support the transformation from Postman collection to all the basic HTTP method as GET, POST, PUT... and also parse the body request of type raw `Json` or `Text` type. [Query parameters](#parameters-parsing) are also supported. +This library support the transformation from Postman collection to all the basic HTTP method as GET, POST, PUT... parse the body request of type "raw" (`Json` and `Text`) and "form-data" (see ["form-data" body](#form-data-body) section for more info about this mode). [Query parameters](#parameters-parsing) are also supported. Have a look to the [PostmantoOpenAPI collection](https://github.com/joolfe/postman-to-openapi/blob/master/test/resources/input/v21/PostmantoOpenAPI.json) file for an example of how to use this feature. @@ -439,6 +439,14 @@ Take into account that this feature has priority over the [Response status code If there are more than one example at request level the used headers will be the ones that appear in the last example in the postman collection. +## "form-data" Body + +Library `postman-to-openapi` is able to parse the Postman collection body request of type "form-data", as Postman only support the parameter types `Text` and `File` (as you can see in next image) this are the only supported types for the Library. + +![form-data options](assets/img/formDataOptions.png) + +A "form-data" request body will be describe as a `multipart/form-data` content with schema of type `object`. For `Text` parameter `postman-to-openapi` will parse just as a `type: string` parameter and for type `File` following OpenAPI specs is parsed as `type: string, format: binary` +