From 0e41f7c7cb0b400a12d9cac63597585e8d488e71 Mon Sep 17 00:00:00 2001 From: wessberg Date: Mon, 27 Jul 2020 16:06:34 +0200 Subject: [PATCH] fix: declarations are sometimes empty. Closes #105 --- README.md | 4 - package.json | 28 +- pnpm-lock.yaml | 952 +++++++++--------- rollup.config.js | 10 +- src/plugin/i-typescript-plugin-options.ts | 6 +- src/plugin/typescript-plugin.ts | 2 + src/service/compiler-host/compiler-host.ts | 33 +- .../emit/declaration/emit-declarations.ts | 4 + .../get-parsed-command-line.ts | 10 + src/util/is-debug/should-debug.ts | 13 + src/util/logging/log-tsconfig.ts | 9 + src/util/logging/log-virtual-files.ts | 8 + src/util/plugin-options/get-plugin-options.ts | 4 +- test/rebuild.test.ts | 150 +++ test/setup/setup-rollup.ts | 11 +- test/util/test-runner.ts | 60 +- 16 files changed, 768 insertions(+), 536 deletions(-) create mode 100644 src/util/logging/log-tsconfig.ts create mode 100644 src/util/logging/log-virtual-files.ts create mode 100644 test/rebuild.test.ts diff --git a/README.md b/README.md index d1d5ed04..cdc3fa9e 100644 --- a/README.md +++ b/README.md @@ -687,10 +687,6 @@ Babel will then be used for all other syntax transformation from then on, depend [See this explainer](./documentation/explainer/why_is_babel-plugin-transform-runtime_and_tslib_included_by_default.md). -#### My declaration files are always empty. - -If `rollup-plugin-ts` generates empty declaration files and it shouldn't, this is most likely because your `tsconfig` file doesn't have a `include` property matchign your source directory or `exclude` property matching your destination directory, and so TypeScript will consider all files inside the project root and potentially produce an invalid internal folder structure when the entry file(s) to Rollup comes from a subdirectory (such as `src/`). For example, you may have all of your files inside of a `src` folder, and you may use `dist` as your output folder. If that folder isn't already empty, for example from a previous build, and that folder isn't excluded from TypeScript, you may end up in this situation. To resolve it, make sure to either clean up your destination directory for every build, or make sure to exclude it from TypeScript in your config file. - ## Starter templates The following is an evolving list of starter templates for new projects using Rollup, TypeScript, and `@wessberg/rollup-plugin-ts` that you can take a look at and draw inspiration from. diff --git a/package.json b/package.json index dad9f70a..dc2a9250 100644 --- a/package.json +++ b/package.json @@ -48,31 +48,31 @@ "license": "MIT", "devDependencies": { "@rollup/plugin-alias": "^3.1.1", - "@rollup/plugin-commonjs": "^13.0.0", + "@rollup/plugin-commonjs": "^14.0.0", "@rollup/plugin-json": "^4.1.0", - "@types/node": "^14.0.20", + "@types/node": "^14.0.26", "@types/prettier": "^2.0.2", "@types/semver": "^7.3.1", - "@typescript-eslint/eslint-plugin": "^3.6.0", - "@typescript-eslint/parser": "^3.6.0", - "@wessberg/rollup-plugin-ts": "^1.2.27", + "@typescript-eslint/eslint-plugin": "^3.7.0", + "@typescript-eslint/parser": "^3.7.0", + "@wessberg/rollup-plugin-ts": "^1.2.28", "@wessberg/scaffold": "^1.0.30", "@wessberg/ts-config": "^1.0.16", - "ava": "3.10.1", + "ava": "3.11.0", "babel-preset-minify": "^0.5.1", "core-js": "^3.6.5", - "eslint": "^7.4.0", + "eslint": "^7.5.0", "eslint-config-prettier": "^6.11.0", "eslint-plugin-import": "^2.22.0", - "eslint-plugin-jsdoc": "^29.1.3", + "eslint-plugin-jsdoc": "^30.0.3", "fast-glob": "^3.2.4", "husky": "^4.2.5", "np": "5.2.1", - "pnpm": "^5.3.0", + "pnpm": "^5.4.6", "prettier": "^2.0.5", "pretty-quick": "^2.0.1", "rimraf": "^3.0.2", - "rollup": "^2.21.0", + "rollup": "^2.23.0", "semver": "7.3.2", "standard-changelog": "^2.0.24", "ts-node": "8.10.2", @@ -87,16 +87,16 @@ "typescript-3-9-2": "npm:typescript@3.9.2" }, "dependencies": { - "@babel/core": "^7.10.4", - "@babel/plugin-proposal-async-generator-functions": "^7.10.4", + "@babel/core": "^7.10.5", + "@babel/plugin-proposal-async-generator-functions": "^7.10.5", "@babel/plugin-proposal-json-strings": "^7.10.4", "@babel/plugin-proposal-object-rest-spread": "^7.10.4", "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-runtime": "^7.10.4", + "@babel/plugin-transform-runtime": "^7.10.5", "@babel/preset-env": "^7.10.4", - "@babel/runtime": "^7.10.4", + "@babel/runtime": "^7.10.5", "@rollup/pluginutils": "^3.1.0", "@types/babel__core": "^7.1.9", "@wessberg/browserslist-generator": "^1.0.37", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5388512a..7df99b6e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,15 +1,15 @@ dependencies: - "@babel/core": 7.10.4 - "@babel/plugin-proposal-async-generator-functions": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-json-strings": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-object-rest-spread": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-optional-catch-binding": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-transform-runtime": 7.10.4_@babel+core@7.10.4 - "@babel/preset-env": 7.10.4_@babel+core@7.10.4 - "@babel/runtime": 7.10.4 - "@rollup/pluginutils": 3.1.0_rollup@2.21.0 + "@babel/core": 7.10.5 + "@babel/plugin-proposal-async-generator-functions": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-proposal-json-strings": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-object-rest-spread": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-optional-catch-binding": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-transform-runtime": 7.10.5_@babel+core@7.10.5 + "@babel/preset-env": 7.10.4_@babel+core@7.10.5 + "@babel/runtime": 7.10.5 + "@rollup/pluginutils": 3.1.0_rollup@2.23.0 "@types/babel__core": 7.1.9 "@wessberg/browserslist-generator": 1.0.37 "@wessberg/stringutil": 1.0.19 @@ -20,32 +20,32 @@ dependencies: slash: 3.0.0 tslib: 2.0.0 devDependencies: - "@rollup/plugin-alias": 3.1.1_rollup@2.21.0 - "@rollup/plugin-commonjs": 13.0.0_rollup@2.21.0 - "@rollup/plugin-json": 4.1.0_rollup@2.21.0 - "@types/node": 14.0.20 + "@rollup/plugin-alias": 3.1.1_rollup@2.23.0 + "@rollup/plugin-commonjs": 14.0.0_rollup@2.23.0 + "@rollup/plugin-json": 4.1.0_rollup@2.23.0 + "@types/node": 14.0.26 "@types/prettier": 2.0.2 "@types/semver": 7.3.1 - "@typescript-eslint/eslint-plugin": 3.6.0_aedb3f9e1d4dfcda8b639d7482e99f08 - "@typescript-eslint/parser": 3.6.0_62343eaaca78e477c9aaca98a34e92bd - "@wessberg/rollup-plugin-ts": 1.2.27_7766e18e03c290c7857de2f0ba1e031a + "@typescript-eslint/eslint-plugin": 3.7.0_f582fae95195e940afede40c08f7976f + "@typescript-eslint/parser": 3.7.0_3d38e31617677cc95fc3eb1c56fe7093 + "@wessberg/rollup-plugin-ts": 1.2.28_bfac4d36f26f0e501ef558a19ca55c40 "@wessberg/scaffold": 1.0.30 "@wessberg/ts-config": 1.0.16 - ava: 3.10.1 + ava: 3.11.0 babel-preset-minify: 0.5.1 core-js: 3.6.5 - eslint: 7.4.0 - eslint-config-prettier: 6.11.0_eslint@7.4.0 - eslint-plugin-import: 2.22.0_eslint@7.4.0 - eslint-plugin-jsdoc: 29.1.3_eslint@7.4.0 + eslint: 7.5.0 + eslint-config-prettier: 6.11.0_eslint@7.5.0 + eslint-plugin-import: 2.22.0_eslint@7.5.0 + eslint-plugin-jsdoc: 30.0.3_eslint@7.5.0 fast-glob: 3.2.4 husky: 4.2.5 np: 5.2.1 - pnpm: 5.3.0 + pnpm: 5.4.6 prettier: 2.0.5 pretty-quick: 2.0.1_prettier@2.0.5 rimraf: 3.0.2 - rollup: 2.21.0 + rollup: 2.23.0 semver: 7.3.2 standard-changelog: 2.0.24 ts-node: 8.10.2_typescript@4.0.0-beta @@ -65,23 +65,23 @@ packages: "@babel/highlight": 7.10.4 resolution: integrity: sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== - /@babel/compat-data/7.10.4: + /@babel/compat-data/7.10.5: dependencies: browserslist: 4.13.0 invariant: 2.2.4 semver: 5.7.1 resolution: - integrity: sha512-t+rjExOrSVvjQQXNp5zAIYDp00KjdvGl/TpDX5REPr0S9IAIPQMTilcfG6q8c0QFmj9lSTVySV2VTsyggvtNIw== - /@babel/core/7.10.4: + integrity: sha512-mPVoWNzIpYJHbWje0if7Ck36bpbtTvIxOi9+6WSK9wjGEXearAqlwBoTQvVjsAY2VIwgcs8V940geY3okzRCEw== + /@babel/core/7.10.5: dependencies: "@babel/code-frame": 7.10.4 - "@babel/generator": 7.10.4 - "@babel/helper-module-transforms": 7.10.4 + "@babel/generator": 7.10.5 + "@babel/helper-module-transforms": 7.10.5 "@babel/helpers": 7.10.4 - "@babel/parser": 7.10.4 + "@babel/parser": 7.10.5 "@babel/template": 7.10.4 - "@babel/traverse": 7.10.4 - "@babel/types": 7.10.4 + "@babel/traverse": 7.10.5 + "@babel/types": 7.10.5 convert-source-map: 1.7.0 debug: 4.1.1 gensync: 1.0.0-beta.1 @@ -93,30 +93,29 @@ packages: engines: node: ">=6.9.0" resolution: - integrity: sha512-3A0tS0HWpy4XujGc7QtOIHTeNwUgWaZc/WuS5YQrfhU67jnVmsD6OGPc1AKHH0LJHQICGncy3+YUjIhVlfDdcA== - /@babel/generator/7.10.4: + integrity: sha512-O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w== + /@babel/generator/7.10.5: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 jsesc: 2.5.2 - lodash: 4.17.19 source-map: 0.5.7 resolution: - integrity: sha512-toLIHUIAgcQygFZRAQcsLQV3CBuX6yOIru1kJk/qqqvcRmZrYe6WavZTSG+bB8MxhnL9YPf+pKQfuiP161q7ng== + integrity: sha512-3vXxr3FEW7E7lJZiWQ3bM4+v/Vyr9C+hpolQ8BGFr9Y8Ri2tFLWTixmwKBafDujO1WVah4fhZBeU1bieKdghig== /@babel/helper-annotate-as-pure/7.10.4: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA== /@babel/helper-builder-binary-assignment-operator-visitor/7.10.4: dependencies: "@babel/helper-explode-assignable-expression": 7.10.4 - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg== - /@babel/helper-compilation-targets/7.10.4_@babel+core@7.10.4: + /@babel/helper-compilation-targets/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/compat-data": 7.10.4 - "@babel/core": 7.10.4 + "@babel/compat-data": 7.10.5 + "@babel/core": 7.10.5 browserslist: 4.13.0 invariant: 2.2.4 levenary: 1.1.1 @@ -125,11 +124,11 @@ packages: "@babel/core": ^7.0.0 resolution: integrity: sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ== - /@babel/helper-create-class-features-plugin/7.10.4_@babel+core@7.10.4: + /@babel/helper-create-class-features-plugin/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-function-name": 7.10.4 - "@babel/helper-member-expression-to-functions": 7.10.4 + "@babel/helper-member-expression-to-functions": 7.10.5 "@babel/helper-optimise-call-expression": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 "@babel/helper-replace-supers": 7.10.4 @@ -137,107 +136,107 @@ packages: peerDependencies: "@babel/core": ^7.0.0 resolution: - integrity: sha512-9raUiOsXPxzzLjCXeosApJItoMnX3uyT4QdM2UldffuGApNrF8e938MwNpDCK9CPoyxrEoCgT+hObJc3mZa6lQ== - /@babel/helper-create-regexp-features-plugin/7.10.4_@babel+core@7.10.4: + integrity: sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A== + /@babel/helper-create-regexp-features-plugin/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-annotate-as-pure": 7.10.4 - "@babel/helper-regex": 7.10.4 + "@babel/helper-regex": 7.10.5 regexpu-core: 4.7.0 peerDependencies: "@babel/core": ^7.0.0 resolution: integrity: sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g== - /@babel/helper-define-map/7.10.4: + /@babel/helper-define-map/7.10.5: dependencies: "@babel/helper-function-name": 7.10.4 - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 lodash: 4.17.19 resolution: - integrity: sha512-nIij0oKErfCnLUCWaCaHW0Bmtl2RO9cN7+u2QT8yqTywgALKlyUVOvHDElh+b5DwVC6YB1FOYFOTWcN/+41EDA== + integrity: sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ== /@babel/helper-explode-assignable-expression/7.10.4: dependencies: - "@babel/traverse": 7.10.4 - "@babel/types": 7.10.4 + "@babel/traverse": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A== /@babel/helper-function-name/7.10.4: dependencies: "@babel/helper-get-function-arity": 7.10.4 "@babel/template": 7.10.4 - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ== /@babel/helper-get-function-arity/7.10.4: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A== /@babel/helper-hoist-variables/7.10.4: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA== - /@babel/helper-member-expression-to-functions/7.10.4: + /@babel/helper-member-expression-to-functions/7.10.5: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: - integrity: sha512-m5j85pK/KZhuSdM/8cHUABQTAslV47OjfIB9Cc7P+PvlAoBzdb79BGNfw8RhT5Mq3p+xGd0ZfAKixbrUZx0C7A== + integrity: sha512-HiqJpYD5+WopCXIAbQDG0zye5XYVvcO9w/DHp5GsaGkRUaamLj2bEtu6i8rnGGprAhHM3qidCMgp71HF4endhA== /@babel/helper-module-imports/7.10.4: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw== - /@babel/helper-module-transforms/7.10.4: + /@babel/helper-module-transforms/7.10.5: dependencies: "@babel/helper-module-imports": 7.10.4 "@babel/helper-replace-supers": 7.10.4 "@babel/helper-simple-access": 7.10.4 "@babel/helper-split-export-declaration": 7.10.4 "@babel/template": 7.10.4 - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 lodash: 4.17.19 resolution: - integrity: sha512-Er2FQX0oa3nV7eM1o0tNCTx7izmQtwAQsIiaLRWtavAAEcskb0XJ5OjJbVrYXWOTr8om921Scabn4/tzlx7j1Q== + integrity: sha512-4P+CWMJ6/j1W915ITJaUkadLObmCRRSC234uctJfn/vHrsLNxsR8dwlcXv9ZhJWzl77awf+mWXSZEKt5t0OnlA== /@babel/helper-optimise-call-expression/7.10.4: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg== /@babel/helper-plugin-utils/7.10.4: resolution: integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== - /@babel/helper-regex/7.10.4: + /@babel/helper-regex/7.10.5: dependencies: lodash: 4.17.19 resolution: - integrity: sha512-inWpnHGgtg5NOF0eyHlC0/74/VkdRITY9dtTpB2PrxKKn+AkVMRiZz/Adrx+Ssg+MLDesi2zohBW6MVq6b4pOQ== + integrity: sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg== /@babel/helper-remap-async-to-generator/7.10.4: dependencies: "@babel/helper-annotate-as-pure": 7.10.4 "@babel/helper-wrap-function": 7.10.4 "@babel/template": 7.10.4 - "@babel/traverse": 7.10.4 - "@babel/types": 7.10.4 + "@babel/traverse": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg== /@babel/helper-replace-supers/7.10.4: dependencies: - "@babel/helper-member-expression-to-functions": 7.10.4 + "@babel/helper-member-expression-to-functions": 7.10.5 "@babel/helper-optimise-call-expression": 7.10.4 - "@babel/traverse": 7.10.4 - "@babel/types": 7.10.4 + "@babel/traverse": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A== /@babel/helper-simple-access/7.10.4: dependencies: "@babel/template": 7.10.4 - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw== /@babel/helper-split-export-declaration/7.10.4: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg== /@babel/helper-validator-identifier/7.10.4: @@ -247,15 +246,15 @@ packages: dependencies: "@babel/helper-function-name": 7.10.4 "@babel/template": 7.10.4 - "@babel/traverse": 7.10.4 - "@babel/types": 7.10.4 + "@babel/traverse": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug== /@babel/helpers/7.10.4: dependencies: "@babel/template": 7.10.4 - "@babel/traverse": 7.10.4 - "@babel/types": 7.10.4 + "@babel/traverse": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA== /@babel/highlight/7.10.4: @@ -265,108 +264,108 @@ packages: js-tokens: 4.0.0 resolution: integrity: sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== - /@babel/parser/7.10.4: + /@babel/parser/7.10.5: engines: node: ">=6.0.0" hasBin: true resolution: - integrity: sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA== - /@babel/plugin-proposal-async-generator-functions/7.10.4_@babel+core@7.10.4: + integrity: sha512-wfryxy4bE1UivvQKSQDU4/X6dr+i8bctjUjj8Zyt3DQy7NtPizJXT8M52nqpNKL+nq2PW8lxk4ZqLj0fD4B4hQ== + /@babel/plugin-proposal-async-generator-functions/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 "@babel/helper-remap-async-to-generator": 7.10.4 - "@babel/plugin-syntax-async-generators": 7.8.4_@babel+core@7.10.4 + "@babel/plugin-syntax-async-generators": 7.8.4_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-MJbxGSmejEFVOANAezdO39SObkURO5o/8b6fSH6D1pi9RZQt+ldppKPXfqgUWpSQ9asM6xaSaSJIaeWMDRP0Zg== - /@babel/plugin-proposal-class-properties/7.10.4_@babel+core@7.10.4: + integrity: sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg== + /@babel/plugin-proposal-class-properties/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-create-class-features-plugin": 7.10.4_@babel+core@7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-create-class-features-plugin": 7.10.5_@babel+core@7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg== - /@babel/plugin-proposal-dynamic-import/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-dynamic-import/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.4 + "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ== - /@babel/plugin-proposal-json-strings/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-json-strings/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-json-strings": 7.8.3_@babel+core@7.10.4 + "@babel/plugin-syntax-json-strings": 7.8.3_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw== - /@babel/plugin-proposal-nullish-coalescing-operator/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-nullish-coalescing-operator/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3_@babel+core@7.10.4 + "@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw== - /@babel/plugin-proposal-numeric-separator/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-numeric-separator/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-numeric-separator": 7.10.4_@babel+core@7.10.4 + "@babel/plugin-syntax-numeric-separator": 7.10.4_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA== - /@babel/plugin-proposal-object-rest-spread/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-object-rest-spread/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-object-rest-spread": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-transform-parameters": 7.10.4_@babel+core@7.10.4 + "@babel/plugin-syntax-object-rest-spread": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-transform-parameters": 7.10.5_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-6vh4SqRuLLarjgeOf4EaROJAHjvu9Gl+/346PbDH9yWbJyfnJ/ah3jmYKYtswEyCoWZiidvVHjHshd4WgjB9BA== - /@babel/plugin-proposal-optional-catch-binding/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-optional-catch-binding/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-optional-catch-binding": 7.8.3_@babel+core@7.10.4 + "@babel/plugin-syntax-optional-catch-binding": 7.8.3_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g== - /@babel/plugin-proposal-optional-chaining/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-optional-chaining/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-syntax-optional-chaining": 7.8.3_@babel+core@7.10.4 + "@babel/plugin-syntax-optional-chaining": 7.8.3_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-ZIhQIEeavTgouyMSdZRap4VPPHqJJ3NEs2cuHs5p0erH+iz6khB0qfgU8g7UuJkG88+fBMy23ZiU+nuHvekJeQ== - /@babel/plugin-proposal-private-methods/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-private-methods/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-create-class-features-plugin": 7.10.4_@babel+core@7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-create-class-features-plugin": 7.10.5_@babel+core@7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw== - /@babel/plugin-proposal-unicode-property-regex/7.10.4_@babel+core@7.10.4: + /@babel/plugin-proposal-unicode-property-regex/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.5 "@babel/helper-plugin-utils": 7.10.4 engines: node: ">=4" @@ -374,97 +373,97 @@ packages: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA== - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.10.4: + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - /@babel/plugin-syntax-class-properties/7.10.4_@babel+core@7.10.4: + /@babel/plugin-syntax-class-properties/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA== - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.10.4: + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.10.4: + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.10.4: + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.10.4: + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.10.4: + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.10.4: + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.10.4: + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - /@babel/plugin-syntax-top-level-await/7.10.4_@babel+core@7.10.4: + /@babel/plugin-syntax-top-level-await/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ== - /@babel/plugin-transform-arrow-functions/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-arrow-functions/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA== - /@babel/plugin-transform-async-to-generator/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-async-to-generator/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-module-imports": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 "@babel/helper-remap-async-to-generator": 7.10.4 @@ -472,28 +471,27 @@ packages: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ== - /@babel/plugin-transform-block-scoped-functions/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-block-scoped-functions/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA== - /@babel/plugin-transform-block-scoping/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-block-scoping/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - lodash: 4.17.19 peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-J3b5CluMg3hPUii2onJDRiaVbPtKFPLEaV5dOPY5OeAbDi1iU/UbbFFTgwb7WnanaDy7bjU35kc26W3eM5Qa0A== - /@babel/plugin-transform-classes/7.10.4_@babel+core@7.10.4: + integrity: sha512-6Ycw3hjpQti0qssQcA6AMSFDHeNJ++R6dIMnpRqUjFeBBTmTDPa8zgF90OVfTvAo11mXZTlVUViY1g8ffrURLg== + /@babel/plugin-transform-classes/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-annotate-as-pure": 7.10.4 - "@babel/helper-define-map": 7.10.4 + "@babel/helper-define-map": 7.10.5 "@babel/helper-function-name": 7.10.4 "@babel/helper-optimise-call-expression": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 @@ -504,95 +502,95 @@ packages: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA== - /@babel/plugin-transform-computed-properties/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-computed-properties/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw== - /@babel/plugin-transform-destructuring/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-destructuring/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA== - /@babel/plugin-transform-dotall-regex/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-dotall-regex/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA== - /@babel/plugin-transform-duplicate-keys/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-duplicate-keys/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA== - /@babel/plugin-transform-exponentiation-operator/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-exponentiation-operator/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-builder-binary-assignment-operator-visitor": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw== - /@babel/plugin-transform-for-of/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-for-of/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ== - /@babel/plugin-transform-function-name/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-function-name/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-function-name": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg== - /@babel/plugin-transform-literals/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-literals/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ== - /@babel/plugin-transform-member-expression-literals/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-member-expression-literals/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw== - /@babel/plugin-transform-modules-amd/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-modules-amd/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-module-transforms": 7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-module-transforms": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 babel-plugin-dynamic-import-node: 2.3.3 peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-3Fw+H3WLUrTlzi3zMiZWp3AR4xadAEMv6XRCYnd5jAlLM61Rn+CRJaZMaNvIpcJpQ3vs1kyifYvEVPFfoSkKOA== - /@babel/plugin-transform-modules-commonjs/7.10.4_@babel+core@7.10.4: + integrity: sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw== + /@babel/plugin-transform-modules-commonjs/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-module-transforms": 7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-module-transforms": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 "@babel/helper-simple-access": 7.10.4 babel-plugin-dynamic-import-node: 2.3.3 @@ -600,87 +598,87 @@ packages: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w== - /@babel/plugin-transform-modules-systemjs/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-modules-systemjs/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-hoist-variables": 7.10.4 - "@babel/helper-module-transforms": 7.10.4 + "@babel/helper-module-transforms": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 babel-plugin-dynamic-import-node: 2.3.3 peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-Tb28LlfxrTiOTGtZFsvkjpyjCl9IoaRI52AEU/VIwOwvDQWtbNJsAqTXzh+5R7i74e/OZHH2c2w2fsOqAfnQYQ== - /@babel/plugin-transform-modules-umd/7.10.4_@babel+core@7.10.4: + integrity: sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw== + /@babel/plugin-transform-modules-umd/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-module-transforms": 7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-module-transforms": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA== - /@babel/plugin-transform-named-capturing-groups-regex/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-named-capturing-groups-regex/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.5 peerDependencies: "@babel/core": ^7.0.0 resolution: integrity: sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA== - /@babel/plugin-transform-new-target/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-new-target/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw== - /@babel/plugin-transform-object-super/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-object-super/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 "@babel/helper-replace-supers": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ== - /@babel/plugin-transform-parameters/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-parameters/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-get-function-arity": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-RurVtZ/D5nYfEg0iVERXYKEgDFeesHrHfx8RT05Sq57ucj2eOYAP6eu5fynL4Adju4I/mP/I6SO0DqNWAXjfLQ== - /@babel/plugin-transform-property-literals/7.10.4_@babel+core@7.10.4: + integrity: sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw== + /@babel/plugin-transform-property-literals/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g== - /@babel/plugin-transform-regenerator/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-regenerator/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 regenerator-transform: 0.14.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw== - /@babel/plugin-transform-reserved-words/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-reserved-words/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ== - /@babel/plugin-transform-runtime/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-runtime/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-module-imports": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 resolve: 1.17.0 @@ -688,128 +686,128 @@ packages: peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-8ULlGv8p+Vuxu+kz2Y1dk6MYS2b/Dki+NO6/0ZlfSj5tMalfDL7jI/o/2a+rrWLqSXvnadEqc2WguB4gdQIxZw== - /@babel/plugin-transform-shorthand-properties/7.10.4_@babel+core@7.10.4: + integrity: sha512-tV4V/FjElJ9lQtyjr5xD2IFFbgY46r7EeVu5a8CpEKT5laheHKSlFeHjpkPppW3PqzGLAuv5k2qZX5LgVZIX5w== + /@babel/plugin-transform-shorthand-properties/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q== - /@babel/plugin-transform-spread/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-spread/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-1e/51G/Ni+7uH5gktbWv+eCED9pP8ZpRhZB3jOaI3mmzfvJTWHkuyYTv0Z5PYtyM+Tr2Ccr9kUdQxn60fI5WuQ== - /@babel/plugin-transform-sticky-regex/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-sticky-regex/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/helper-regex": 7.10.4 + "@babel/helper-regex": 7.10.5 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ== - /@babel/plugin-transform-template-literals/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-template-literals/7.10.5_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-annotate-as-pure": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: - integrity: sha512-4NErciJkAYe+xI5cqfS8pV/0ntlY5N5Ske/4ImxAVX7mk9Rxt2bwDTGv1Msc2BRJvWQcmYEC+yoMLdX22aE4VQ== - /@babel/plugin-transform-typeof-symbol/7.10.4_@babel+core@7.10.4: + integrity: sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw== + /@babel/plugin-transform-typeof-symbol/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA== - /@babel/plugin-transform-unicode-escapes/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-unicode-escapes/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg== - /@babel/plugin-transform-unicode-regex/7.10.4_@babel+core@7.10.4: + /@babel/plugin-transform-unicode-regex/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 - "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.4 + "@babel/core": 7.10.5 + "@babel/helper-create-regexp-features-plugin": 7.10.4_@babel+core@7.10.5 "@babel/helper-plugin-utils": 7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A== - /@babel/preset-env/7.10.4_@babel+core@7.10.4: + /@babel/preset-env/7.10.4_@babel+core@7.10.5: dependencies: - "@babel/compat-data": 7.10.4 - "@babel/core": 7.10.4 - "@babel/helper-compilation-targets": 7.10.4_@babel+core@7.10.4 + "@babel/compat-data": 7.10.5 + "@babel/core": 7.10.5 + "@babel/helper-compilation-targets": 7.10.4_@babel+core@7.10.5 "@babel/helper-module-imports": 7.10.4 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-proposal-async-generator-functions": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-class-properties": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-dynamic-import": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-json-strings": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-nullish-coalescing-operator": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-numeric-separator": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-object-rest-spread": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-optional-catch-binding": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-optional-chaining": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-private-methods": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-syntax-async-generators": 7.8.4_@babel+core@7.10.4 - "@babel/plugin-syntax-class-properties": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-syntax-json-strings": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-syntax-numeric-separator": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-syntax-object-rest-spread": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-syntax-optional-catch-binding": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-syntax-optional-chaining": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-syntax-top-level-await": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-arrow-functions": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-async-to-generator": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-block-scoped-functions": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-block-scoping": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-classes": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-computed-properties": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-destructuring": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-dotall-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-duplicate-keys": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-exponentiation-operator": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-for-of": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-function-name": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-literals": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-member-expression-literals": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-modules-amd": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-modules-commonjs": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-modules-systemjs": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-modules-umd": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-named-capturing-groups-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-new-target": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-object-super": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-parameters": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-property-literals": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-regenerator": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-reserved-words": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-shorthand-properties": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-spread": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-sticky-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-template-literals": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-typeof-symbol": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-unicode-escapes": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-unicode-regex": 7.10.4_@babel+core@7.10.4 - "@babel/preset-modules": 0.1.3_@babel+core@7.10.4 - "@babel/types": 7.10.4 + "@babel/plugin-proposal-async-generator-functions": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-proposal-class-properties": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-dynamic-import": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-json-strings": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-nullish-coalescing-operator": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-numeric-separator": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-object-rest-spread": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-optional-catch-binding": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-optional-chaining": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-private-methods": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-syntax-async-generators": 7.8.4_@babel+core@7.10.5 + "@babel/plugin-syntax-class-properties": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-syntax-json-strings": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-syntax-numeric-separator": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-syntax-object-rest-spread": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-syntax-optional-catch-binding": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-syntax-optional-chaining": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-syntax-top-level-await": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-arrow-functions": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-async-to-generator": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-block-scoped-functions": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-block-scoping": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-transform-classes": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-computed-properties": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-destructuring": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-dotall-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-duplicate-keys": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-exponentiation-operator": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-for-of": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-function-name": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-literals": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-member-expression-literals": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-modules-amd": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-transform-modules-commonjs": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-modules-systemjs": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-transform-modules-umd": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-named-capturing-groups-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-new-target": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-object-super": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-parameters": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-transform-property-literals": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-regenerator": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-reserved-words": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-shorthand-properties": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-spread": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-sticky-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-template-literals": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-transform-typeof-symbol": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-unicode-escapes": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-unicode-regex": 7.10.4_@babel+core@7.10.5 + "@babel/preset-modules": 0.1.3_@babel+core@7.10.5 + "@babel/types": 7.10.5 browserslist: 4.13.0 core-js-compat: 3.6.5 invariant: 2.2.4 @@ -819,57 +817,50 @@ packages: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-tcmuQ6vupfMZPrLrc38d0sF2OjLT3/bZ0dry5HchNCQbrokoQi4reXqclvkkAT5b+gWc23meVWpve5P/7+w/zw== - /@babel/preset-modules/0.1.3_@babel+core@7.10.4: + /@babel/preset-modules/0.1.3_@babel+core@7.10.5: dependencies: - "@babel/core": 7.10.4 + "@babel/core": 7.10.5 "@babel/helper-plugin-utils": 7.10.4 - "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-transform-dotall-regex": 7.10.4_@babel+core@7.10.4 - "@babel/types": 7.10.4 + "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-transform-dotall-regex": 7.10.4_@babel+core@7.10.5 + "@babel/types": 7.10.5 esutils: 2.0.3 peerDependencies: "@babel/core": ^7.0.0-0 resolution: integrity: sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg== - /@babel/runtime-corejs3/7.10.4: - dependencies: - core-js-pure: 3.6.5 - regenerator-runtime: 0.13.5 - dev: true - resolution: - integrity: sha512-BFlgP2SoLO9HJX9WBwN67gHWMBhDX/eDz64Jajd6mR/UAUzqrNMm99d4qHnVaKscAElZoFiPv+JpR/Siud5lXw== - /@babel/runtime/7.10.4: + /@babel/runtime/7.10.5: dependencies: - regenerator-runtime: 0.13.5 + regenerator-runtime: 0.13.7 resolution: - integrity: sha512-UpTN5yUJr9b4EX2CnGNWIvER7Ab83ibv0pcvvHc4UOdrBI5jb8bj+32cCwPX6xu0mt2daFNjYhoi+X7beH0RSw== + integrity: sha512-otddXKhdNn7d0ptoFRHtMLa8LqDxLYwTjB4nYgM1yy5N6gU/MUf8zqyyLltCH3yAVitBzmwK4us+DD0l/MauAg== /@babel/template/7.10.4: dependencies: "@babel/code-frame": 7.10.4 - "@babel/parser": 7.10.4 - "@babel/types": 7.10.4 + "@babel/parser": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA== - /@babel/traverse/7.10.4: + /@babel/traverse/7.10.5: dependencies: "@babel/code-frame": 7.10.4 - "@babel/generator": 7.10.4 + "@babel/generator": 7.10.5 "@babel/helper-function-name": 7.10.4 "@babel/helper-split-export-declaration": 7.10.4 - "@babel/parser": 7.10.4 - "@babel/types": 7.10.4 + "@babel/parser": 7.10.5 + "@babel/types": 7.10.5 debug: 4.1.1 globals: 11.12.0 lodash: 4.17.19 resolution: - integrity: sha512-aSy7p5THgSYm4YyxNGz6jZpXf+Ok40QF3aA2LyIONkDHpAcJzDUqlCKXv6peqYUs2gmic849C/t2HKw2a2K20Q== - /@babel/types/7.10.4: + integrity: sha512-yc/fyv2gUjPqzTz0WHeRJH2pv7jA9kA7mBX2tXl/x5iOE81uaVPuGPtaYk7wmkx4b67mQ7NqI8rmT2pF47KYKQ== + /@babel/types/7.10.5: dependencies: "@babel/helper-validator-identifier": 7.10.4 lodash: 4.17.19 to-fast-properties: 2.0.0 resolution: - integrity: sha512-UTCFOxC3FsFHb7lkRMVvgLzaRVamXuAs2Tz4wajva4WxtVY82eZeaUBtC2Zt95FU9TiznuC0Zk35tsim8jeVpg== + integrity: sha512-ixV66KWfCI6GKoA/2H9v6bQdbfXEwwpOdQ8cRvb4F+eyvhlaHxWFMQB4+3d9QFJXZsiiiqVrewNV0DFEQpyT4Q== /@concordance/react/2.0.0: dependencies: arrify: 1.0.1 @@ -902,9 +893,9 @@ packages: node: ">= 8" resolution: integrity: sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== - /@rollup/plugin-alias/3.1.1_rollup@2.21.0: + /@rollup/plugin-alias/3.1.1_rollup@2.23.0: dependencies: - rollup: 2.21.0 + rollup: 2.23.0 slash: 3.0.0 dev: true engines: @@ -913,38 +904,38 @@ packages: rollup: ^1.20.0||^2.0.0 resolution: integrity: sha512-hNcQY4bpBUIvxekd26DBPgF7BT4mKVNDF5tBG4Zi+3IgwLxGYRY0itHs9D0oLVwXM5pvJDWJlBQro+au8WaUWw== - /@rollup/plugin-commonjs/13.0.0_rollup@2.21.0: + /@rollup/plugin-commonjs/14.0.0_rollup@2.23.0: dependencies: - "@rollup/pluginutils": 3.1.0_rollup@2.21.0 + "@rollup/pluginutils": 3.1.0_rollup@2.23.0 commondir: 1.0.1 estree-walker: 1.0.1 glob: 7.1.6 is-reference: 1.2.1 magic-string: 0.25.7 resolve: 1.17.0 - rollup: 2.21.0 + rollup: 2.23.0 dev: true engines: node: ">= 8.0.0" peerDependencies: rollup: ^2.3.4 resolution: - integrity: sha512-Anxc3qgkAi7peAyesTqGYidG5GRim9jtg8xhmykNaZkImtvjA7Wsqep08D2mYsqw1IF7rA3lYfciLgzUSgRoqw== - /@rollup/plugin-json/4.1.0_rollup@2.21.0: + integrity: sha512-+PSmD9ePwTAeU106i9FRdc+Zb3XUWyW26mo5Atr2mk82hor8+nPwkztEjFo8/B1fJKfaQDg9aM2bzQkjhi7zOw== + /@rollup/plugin-json/4.1.0_rollup@2.23.0: dependencies: - "@rollup/pluginutils": 3.1.0_rollup@2.21.0 - rollup: 2.21.0 + "@rollup/pluginutils": 3.1.0_rollup@2.23.0 + rollup: 2.23.0 dev: true peerDependencies: rollup: ^1.20.0 || ^2.0.0 resolution: integrity: sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw== - /@rollup/pluginutils/3.1.0_rollup@2.21.0: + /@rollup/pluginutils/3.1.0_rollup@2.23.0: dependencies: "@types/estree": 0.0.39 estree-walker: 1.0.1 picomatch: 2.2.2 - rollup: 2.21.0 + rollup: 2.23.0 engines: node: ">= 8.0.0" peerDependencies: @@ -975,8 +966,8 @@ packages: integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== /@types/babel__core/7.1.9: dependencies: - "@babel/parser": 7.10.4 - "@babel/types": 7.10.4 + "@babel/parser": 7.10.5 + "@babel/types": 7.10.5 "@types/babel__generator": 7.6.1 "@types/babel__template": 7.0.2 "@types/babel__traverse": 7.0.13 @@ -984,18 +975,18 @@ packages: integrity: sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== /@types/babel__generator/7.6.1: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== /@types/babel__template/7.0.2: dependencies: - "@babel/parser": 7.10.4 - "@babel/types": 7.10.4 + "@babel/parser": 7.10.5 + "@babel/types": 7.10.5 resolution: integrity: sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== /@types/babel__traverse/7.0.13: dependencies: - "@babel/types": 7.10.4 + "@babel/types": 7.10.5 resolution: integrity: sha512-i+zS7t6/s9cdQvbqKDARrcbrPvtJGlbYsMkazo03nTAK3RX9FNrLllXys22uiTGJapPOTZTQ35nHh4ISph4SLQ== /@types/color-name/1.1.1: @@ -1015,7 +1006,7 @@ packages: /@types/glob/7.1.3: dependencies: "@types/minimatch": 3.0.3 - "@types/node": 14.0.20 + "@types/node": 14.0.26 dev: true resolution: integrity: sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w== @@ -1035,9 +1026,9 @@ packages: dev: true resolution: integrity: sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY= - /@types/node/14.0.20: + /@types/node/14.0.26: resolution: - integrity: sha512-MRn/NP3dee8yL5QhbSA6riuwkS+UOcsPUMOIOG3KMUQpuor/2TopdRBu8QaaB4fGU+gz/bzyDWt0FtUbeJ8H1A== + integrity: sha512-W+fpe5s91FBGE0pEa0lnqGLL4USgpLgs4nokw16SrBBco/gQxuua7KnArSEOd5iaMqbbSHV10vUDkJYJJqpXKA== /@types/normalize-package-data/2.4.0: dev: true resolution: @@ -1055,18 +1046,18 @@ packages: integrity: sha512-IkVfat549ggtkZUthUzEX49562eGikhSYeVGX97SkMFn+sTZrgRewXjQ4tPKFPCykZHkX1Zfd9OoELGqKU2jJA== /@types/semver/7.3.1: dependencies: - "@types/node": 14.0.20 + "@types/node": 14.0.26 resolution: integrity: sha512-ooD/FJ8EuwlDKOI6D9HWxgIgJjMg2cuziXm/42npDC8y4NjxplBUn9loewZiBNCt44450lHAU0OSb51/UqXeag== /@types/ua-parser-js/0.7.33: resolution: integrity: sha512-ngUKcHnytUodUCL7C6EZ+lVXUjTMQb+9p/e1JjV5tN9TVzS98lHozWEFRPY1QcCdwFeMsmVWfZ3DPPT/udCyIw== - /@typescript-eslint/eslint-plugin/3.6.0_aedb3f9e1d4dfcda8b639d7482e99f08: + /@typescript-eslint/eslint-plugin/3.7.0_f582fae95195e940afede40c08f7976f: dependencies: - "@typescript-eslint/experimental-utils": 3.6.0_62343eaaca78e477c9aaca98a34e92bd - "@typescript-eslint/parser": 3.6.0_62343eaaca78e477c9aaca98a34e92bd + "@typescript-eslint/experimental-utils": 3.7.0_3d38e31617677cc95fc3eb1c56fe7093 + "@typescript-eslint/parser": 3.7.0_3d38e31617677cc95fc3eb1c56fe7093 debug: 4.1.1 - eslint: 7.4.0 + eslint: 7.5.0 functional-red-black-tree: 1.0.1 regexpp: 3.1.0 semver: 7.3.2 @@ -1083,13 +1074,13 @@ packages: typescript: optional: true resolution: - integrity: sha512-ubHlHVt1lsPQB/CZdEov9XuOFhNG9YRC//kuiS1cMQI6Bs1SsqKrEmZnpgRwthGR09/kEDtr9MywlqXyyYd8GA== - /@typescript-eslint/experimental-utils/3.6.0_62343eaaca78e477c9aaca98a34e92bd: + integrity: sha512-4OEcPON3QIx0ntsuiuFP/TkldmBGXf0uKxPQlGtS/W2F3ndYm8Vgdpj/woPJkzUc65gd3iR+qi3K8SDQP/obFg== + /@typescript-eslint/experimental-utils/3.7.0_3d38e31617677cc95fc3eb1c56fe7093: dependencies: "@types/json-schema": 7.0.5 - "@typescript-eslint/types": 3.6.0 - "@typescript-eslint/typescript-estree": 3.6.0_typescript@4.0.0-beta - eslint: 7.4.0 + "@typescript-eslint/types": 3.7.0 + "@typescript-eslint/typescript-estree": 3.7.0_typescript@4.0.0-beta + eslint: 7.5.0 eslint-scope: 5.1.0 eslint-utils: 2.1.0 dev: true @@ -1099,14 +1090,14 @@ packages: eslint: "*" typescript: "*" resolution: - integrity: sha512-4Vdf2hvYMUnTdkCNZu+yYlFtL2v+N2R7JOynIOkFbPjf9o9wQvRwRkzUdWlFd2YiiUwJLbuuLnl5civNg5ykOQ== - /@typescript-eslint/parser/3.6.0_62343eaaca78e477c9aaca98a34e92bd: + integrity: sha512-xpfXXAfZqhhqs5RPQBfAFrWDHoNxD5+sVB5A46TF58Bq1hRfVROrWHcQHHUM9aCBdy9+cwATcvCbRg8aIRbaHQ== + /@typescript-eslint/parser/3.7.0_3d38e31617677cc95fc3eb1c56fe7093: dependencies: "@types/eslint-visitor-keys": 1.0.0 - "@typescript-eslint/experimental-utils": 3.6.0_62343eaaca78e477c9aaca98a34e92bd - "@typescript-eslint/types": 3.6.0 - "@typescript-eslint/typescript-estree": 3.6.0_typescript@4.0.0-beta - eslint: 7.4.0 + "@typescript-eslint/experimental-utils": 3.7.0_3d38e31617677cc95fc3eb1c56fe7093 + "@typescript-eslint/types": 3.7.0 + "@typescript-eslint/typescript-estree": 3.7.0_typescript@4.0.0-beta + eslint: 7.5.0 eslint-visitor-keys: 1.3.0 typescript: 4.0.0-beta dev: true @@ -1119,17 +1110,17 @@ packages: typescript: optional: true resolution: - integrity: sha512-taghDxuLhbDAD1U5Fk8vF+MnR0yiFE9Z3v2/bYScFb0N1I9SK8eKHkdJl1DAD48OGFDMFTeOTX0z7g0W6SYUXw== - /@typescript-eslint/types/3.6.0: + integrity: sha512-2LZauVUt7jAWkcIW7djUc3kyW+fSarNEuM3RF2JdLHR9BfX/nDEnyA4/uWz0wseoWVZbDXDF7iF9Jc342flNqQ== + /@typescript-eslint/types/3.7.0: dev: true engines: node: ^8.10.0 || ^10.13.0 || >=11.10.1 resolution: - integrity: sha512-JwVj74ohUSt0ZPG+LZ7hb95fW8DFOqBuR6gE7qzq55KDI3BepqsCtHfBIoa0+Xi1AI7fq5nCu2VQL8z4eYftqg== - /@typescript-eslint/typescript-estree/3.6.0_typescript@4.0.0-beta: + integrity: sha512-reCaK+hyKkKF+itoylAnLzFeNYAEktB0XVfSQvf0gcVgpz1l49Lt6Vo9x4MVCCxiDydA0iLAjTF/ODH0pbfnpg== + /@typescript-eslint/typescript-estree/3.7.0_typescript@4.0.0-beta: dependencies: - "@typescript-eslint/types": 3.6.0 - "@typescript-eslint/visitor-keys": 3.6.0 + "@typescript-eslint/types": 3.7.0 + "@typescript-eslint/visitor-keys": 3.7.0 debug: 4.1.1 glob: 7.1.6 is-glob: 4.0.1 @@ -1146,22 +1137,22 @@ packages: typescript: optional: true resolution: - integrity: sha512-G57NDSABHjvob7zVV09ehWyD1K6/YUKjz5+AufObFyjNO4DVmKejj47MHjVHHlZZKgmpJD2yyH9lfCXHrPITFg== - /@typescript-eslint/visitor-keys/3.6.0: + integrity: sha512-xr5oobkYRebejlACGr1TJ0Z/r0a2/HUf0SXqPvlgUMwiMqOCu/J+/Dr9U3T0IxpE5oLFSkqMx1FE/dKaZ8KsOQ== + /@typescript-eslint/visitor-keys/3.7.0: dependencies: eslint-visitor-keys: 1.3.0 dev: true engines: node: ^8.10.0 || ^10.13.0 || >=11.10.1 resolution: - integrity: sha512-p1izllL2Ubwunite0ITjubuMQRBGgjdVYwyG7lXPX8GbrA6qF0uwSRz9MnXZaHMxID4948gX0Ez8v9tUDi/KfQ== + integrity: sha512-k5PiZdB4vklUpUX4NBncn5RBKty8G3ihTY+hqJsCdMuD0v4jofI5xuqwnVcWxfv6iTm2P/dfEa2wMUnsUY8ODw== /@wessberg/browserslist-generator/1.0.37: dependencies: "@types/object-path": 0.11.0 "@types/semver": 7.3.1 "@types/ua-parser-js": 0.7.33 browserslist: 4.12.0 - caniuse-lite: 1.0.30001096 + caniuse-lite: 1.0.30001107 mdn-browser-compat-data: 1.0.26 object-path: 0.11.4 semver: 7.3.2 @@ -1170,19 +1161,19 @@ packages: node: ">=8.0.0" resolution: integrity: sha512-GQnyma+YJGOpl0Euopv0HDcVLdIXRwb6Slb7RDtnXVAx1MklvT3Rg7JOhD0fqMQuvqQ50wRBRNFUwn9j2bqY1w== - /@wessberg/rollup-plugin-ts/1.2.27_7766e18e03c290c7857de2f0ba1e031a: - dependencies: - "@babel/core": 7.10.4 - "@babel/plugin-proposal-async-generator-functions": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-json-strings": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-object-rest-spread": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-optional-catch-binding": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.4 - "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.4 - "@babel/plugin-transform-runtime": 7.10.4_@babel+core@7.10.4 - "@babel/preset-env": 7.10.4_@babel+core@7.10.4 - "@babel/runtime": 7.10.4 - "@rollup/pluginutils": 3.1.0_rollup@2.21.0 + /@wessberg/rollup-plugin-ts/1.2.28_bfac4d36f26f0e501ef558a19ca55c40: + dependencies: + "@babel/core": 7.10.5 + "@babel/plugin-proposal-async-generator-functions": 7.10.5_@babel+core@7.10.5 + "@babel/plugin-proposal-json-strings": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-object-rest-spread": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-optional-catch-binding": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-proposal-unicode-property-regex": 7.10.4_@babel+core@7.10.5 + "@babel/plugin-syntax-dynamic-import": 7.8.3_@babel+core@7.10.5 + "@babel/plugin-transform-runtime": 7.10.5_@babel+core@7.10.5 + "@babel/preset-env": 7.10.4_@babel+core@7.10.5 + "@babel/runtime": 7.10.5 + "@rollup/pluginutils": 3.1.0_rollup@2.23.0 "@types/babel__core": 7.1.9 "@wessberg/browserslist-generator": 1.0.37 "@wessberg/stringutil": 1.0.19 @@ -1190,25 +1181,25 @@ packages: browserslist: 4.13.0 chalk: 4.1.0 magic-string: 0.25.7 - rollup: 2.21.0 + rollup: 2.23.0 slash: 3.0.0 tslib: 2.0.0 typescript: 4.0.0-beta dev: true engines: - node: ">=8.0.0" + node: ">=10.0.0" peerDependencies: - rollup: ">=2.x" - typescript: ">= 3.x" + rollup: ">=1.x" + typescript: ">=3.2.x" resolution: - integrity: sha512-EhGmDPccptAoRq3WvCWwhAm/4n5+lq8WScxwRJOW77+sOQw6S8nS2B69rFb5VE1U5iD5l0+91MrNnYg10DjgqA== + integrity: sha512-LmsXQNDe22VA0zjepadaQAJ88HT1T1cQFSP9x1g/5oqSnlcbfdFYjKkLVsFhzq/vMjGJ356UtnqnXViDSkP8pg== /@wessberg/scaffold/1.0.30: dependencies: "@types/prettier": 2.0.2 chalk: 4.1.0 commander: 5.1.0 - eslint: 7.4.0 - inquirer: 7.3.0 + eslint: 7.5.0 + inquirer: 7.3.3 json5: 2.1.3 markdown-toc: 1.2.0 prettier: 2.0.5 @@ -1511,7 +1502,7 @@ packages: dev: true resolution: integrity: sha1-BlK0kYgYefB3XazgzcoyM5QqTkc= - /ava/3.10.1: + /ava/3.11.0: dependencies: "@concordance/react": 2.0.0 acorn: 7.3.1 @@ -1521,7 +1512,7 @@ packages: arrify: 2.0.1 callsites: 3.1.0 chalk: 4.1.0 - chokidar: 3.4.0 + chokidar: 3.4.1 chunkd: 2.0.1 ci-info: 2.0.0 ci-parallel-vars: 1.0.1 @@ -1543,14 +1534,14 @@ packages: import-local: 3.0.2 indent-string: 4.0.0 is-error: 2.2.2 - is-plain-object: 3.0.1 + is-plain-object: 4.1.1 is-promise: 4.0.0 lodash: 4.17.19 matcher: 3.0.0 md5-hex: 3.0.1 mem: 6.1.0 ms: 2.1.2 - ora: 4.0.4 + ora: 4.0.5 p-map: 4.0.0 picomatch: 2.2.2 pkg-conf: 3.1.0 @@ -1567,13 +1558,13 @@ packages: trim-off-newlines: 1.0.1 update-notifier: 4.1.0 write-file-atomic: 3.0.3 - yargs: 15.4.0 + yargs: 15.4.1 dev: true engines: node: ">=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0" hasBin: true resolution: - integrity: sha512-+w86ZHyFHIGCABi7NUrn/WJMyC+fDj0BSIlFNVS45WDKAD5vxbIiDWeclctxOOc2KDPfQD7tFOURSBz0FBLD0A== + integrity: sha512-y5U8BGeSRjs/OypsC4CJxr+L1KtLKU5kUyHr5hcghXn7HNr2f4LE/4gvl0Q5lNkLX1obdRW1oODphNdU/glwmA== /babel-helper-evaluate-path/0.5.0: dev: true resolution: @@ -1758,10 +1749,10 @@ packages: node: ">=8" resolution: integrity: sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== - /blueimp-md5/2.16.0: + /blueimp-md5/2.17.0: dev: true resolution: - integrity: sha512-j4nzWIqEFpLSbdhUApHRGDwfXbV8ALhqOn+FY5L6XBdKPAXU9BpGgFSbDsgqogfqPPR9R2WooseWCsfhfEC6uQ== + integrity: sha512-x5PKJHY5rHQYaADj6NwPUR2QRCUVSggPzrUKkeENpj871o9l9IefJbO2jkT5UvYykeOK9dx0VmkIo6dZ+vThYw== /boxen/3.2.0: dependencies: ansi-align: 3.0.0 @@ -1809,19 +1800,19 @@ packages: integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== /browserslist/4.12.0: dependencies: - caniuse-lite: 1.0.30001096 - electron-to-chromium: 1.3.494 - node-releases: 1.1.59 + caniuse-lite: 1.0.30001107 + electron-to-chromium: 1.3.509 + node-releases: 1.1.60 pkg-up: 2.0.0 hasBin: true resolution: integrity: sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg== /browserslist/4.13.0: dependencies: - caniuse-lite: 1.0.30001096 - electron-to-chromium: 1.3.494 - escalade: 3.0.1 - node-releases: 1.1.59 + caniuse-lite: 1.0.30001107 + electron-to-chromium: 1.3.509 + escalade: 3.0.2 + node-releases: 1.1.60 engines: node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 hasBin: true @@ -1930,9 +1921,9 @@ packages: node: ">=10" resolution: integrity: sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== - /caniuse-lite/1.0.30001096: + /caniuse-lite/1.0.30001107: resolution: - integrity: sha512-PFTw9UyVfbkcMEFs82q8XVlRayj7HKvnhu5BLcmjGpv+SNyiWasCcWXPGJuO0rK0dhLRDJmtZcJ+LHUfypbw1w== + integrity: sha512-86rCH+G8onCmdN4VZzJet5uPELII59cUzDphko3thQFgAQG1RNa+sVLDoALIhRYmflo5iSIzWY3vu1XTWtNMQQ== /chalk/1.1.3: dependencies: ansi-styles: 2.2.1 @@ -1975,7 +1966,7 @@ packages: dev: true resolution: integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - /chokidar/3.4.0: + /chokidar/3.4.1: dependencies: anymatch: 3.1.1 braces: 3.0.2 @@ -1990,7 +1981,7 @@ packages: optionalDependencies: fsevents: 2.1.3 resolution: - integrity: sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ== + integrity: sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g== /chunkd/2.0.1: dev: true resolution: @@ -2037,12 +2028,12 @@ packages: node: ">=8" resolution: integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - /cli-spinners/2.3.0: + /cli-spinners/2.4.0: dev: true engines: node: ">=6" resolution: - integrity: sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w== + integrity: sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA== /cli-truncate/0.2.1: dependencies: slice-ansi: 0.0.4 @@ -2320,11 +2311,6 @@ packages: semver: 7.0.0 resolution: integrity: sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng== - /core-js-pure/3.6.5: - dev: true - requiresBuild: true - resolution: - integrity: sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA== /core-js/3.6.5: dev: true requiresBuild: true @@ -2349,7 +2335,7 @@ packages: dependencies: "@types/parse-json": 4.0.0 import-fresh: 3.2.1 - parse-json: 5.0.0 + parse-json: 5.0.1 path-type: 4.0.0 yaml: 1.10.0 dev: true @@ -2445,14 +2431,6 @@ packages: node: ">=0.10.0" resolution: integrity: sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - /decamelize/3.2.0: - dependencies: - xregexp: 4.3.0 - dev: true - engines: - node: ">=6" - resolution: - integrity: sha512-4TgkVUsmmu7oCSyGBm5FvfMoACuoh9EOidm7V5/J2X2djAwwt57qb3F2KMP2ITqODTCSwb+YRV+0Zqrv18k/hw== /decompress-response/3.3.0: dependencies: mimic-response: 1.0.1 @@ -2582,9 +2560,9 @@ packages: dev: true resolution: integrity: sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= - /electron-to-chromium/1.3.494: + /electron-to-chromium/1.3.509: resolution: - integrity: sha512-EOZuaDT3L1sCIMAVN5J0nGuGWVq5dThrdl0d8XeDYf4MOzbXqZ19OLKesN8TZj0RxtpYjqHpiw/fR6BKWdMwYA== + integrity: sha512-cN4lkjNRuTG8rtAqTOVgwpecEC2kbKA04PG6YijcKGHK/kD0xLjiqExcAOmLUwtXZRF8cBeam2I0VZcih919Ug== /elegant-spinner/1.0.1: dev: true engines: @@ -2659,11 +2637,11 @@ packages: node: ">= 0.4" resolution: integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - /escalade/3.0.1: + /escalade/3.0.2: engines: node: ">=6" resolution: - integrity: sha512-DR6NO3h9niOT+MZs7bjxlj2a1k+POu5RN8CLTPX2+i78bRi9eLe7+0zXgUHMnGXWybYcL61E9hGhPKqedy8tQA== + integrity: sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ== /escape-goat/2.1.1: dev: true engines: @@ -2687,9 +2665,9 @@ packages: node: ">=10" resolution: integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - /eslint-config-prettier/6.11.0_eslint@7.4.0: + /eslint-config-prettier/6.11.0_eslint@7.5.0: dependencies: - eslint: 7.4.0 + eslint: 7.5.0 get-stdin: 6.0.0 dev: true hasBin: true @@ -2713,14 +2691,14 @@ packages: node: ">=4" resolution: integrity: sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== - /eslint-plugin-import/2.22.0_eslint@7.4.0: + /eslint-plugin-import/2.22.0_eslint@7.5.0: dependencies: array-includes: 3.1.1 array.prototype.flat: 1.2.3 contains-path: 0.1.0 debug: 2.6.9 doctrine: 1.5.0 - eslint: 7.4.0 + eslint: 7.5.0 eslint-import-resolver-node: 0.3.4 eslint-module-utils: 2.6.0 has: 1.0.3 @@ -2736,11 +2714,11 @@ packages: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 resolution: integrity: sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg== - /eslint-plugin-jsdoc/29.1.3_eslint@7.4.0: + /eslint-plugin-jsdoc/30.0.3_eslint@7.5.0: dependencies: comment-parser: 0.7.5 debug: 4.1.1 - eslint: 7.4.0 + eslint: 7.5.0 jsdoctypeparser: 8.0.0 lodash: 4.17.19 regextras: 0.7.1 @@ -2752,7 +2730,7 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 resolution: - integrity: sha512-HEB8jPsWBGu++LffL4K8VZ7VXz0HELI1I3Qkv/+5oSekgrAo6I0AVgl5abecLbTQQZo0OaEcmTptiIspwDOu1w== + integrity: sha512-EviSu0Hgc9Bhz00WhA6829KYC9BaP6JWoycOTA1xFxjQ/2XguRlB3r6nGNA/jkmMDQp5dTQ22s1kAJIaC+dE8Q== /eslint-scope/5.1.0: dependencies: esrecurse: 4.2.1 @@ -2776,7 +2754,7 @@ packages: node: ">=4" resolution: integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - /eslint/7.4.0: + /eslint/7.5.0: dependencies: "@babel/code-frame": 7.10.4 ajv: 6.12.3 @@ -2788,7 +2766,7 @@ packages: eslint-scope: 5.1.0 eslint-utils: 2.1.0 eslint-visitor-keys: 1.3.0 - espree: 7.1.0 + espree: 7.2.0 esquery: 1.3.1 esutils: 2.0.3 file-entry-cache: 5.0.1 @@ -2810,7 +2788,7 @@ packages: regexpp: 3.1.0 semver: 7.3.2 strip-ansi: 6.0.0 - strip-json-comments: 3.1.0 + strip-json-comments: 3.1.1 table: 5.4.6 text-table: 0.2.0 v8-compile-cache: 2.1.1 @@ -2819,8 +2797,8 @@ packages: node: ^10.12.0 || >=12.0.0 hasBin: true resolution: - integrity: sha512-gU+lxhlPHu45H3JkEGgYhWhkR9wLHHEXC9FbWFnTlEkbKyZKWgWRLgf61E8zWmBuI6g5xKBph9ltg3NtZMVF8g== - /espree/7.1.0: + integrity: sha512-vlUP10xse9sWt9SGRtcr1LAC67BENcQMFeV+w5EvLEoFe3xJ8cF1Skd0msziRx/VMC+72B4DxreCE+OR12OA6Q== + /espree/7.2.0: dependencies: acorn: 7.3.1 acorn-jsx: 5.2.0_acorn@7.3.1 @@ -2829,7 +2807,7 @@ packages: engines: node: ^10.12.0 || >=12.0.0 resolution: - integrity: sha512-dcorZSyfmm4WTuTnE5Y7MEN1DyoPYy1ZR783QW1FJoenn7RailyWFsq/UL6ZAAA7uXurN9FIpYyUs3OfiIW+Qw== + integrity: sha512-H+cQ3+3JYRMEIOl87e7QdHX70ocly5iW4+dttuR8iYSPr/hXKFb+7dBsZ7+u1adC4VrnPlTkv0+OwuPnDop19g== /esprima/4.0.1: dev: true engines: @@ -3415,12 +3393,14 @@ packages: dev: true resolution: integrity: sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== - /hosted-git-info/3.0.4: + /hosted-git-info/3.0.5: dependencies: - lru-cache: 5.1.1 + lru-cache: 6.0.0 dev: true + engines: + node: ">=10" resolution: - integrity: sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ== + integrity: sha512-i4dpK6xj9BIpVOTboXIlKG9+8HMKggcrMX7WA24xZtKwX0TPelq/rbaS5rCKeNX8sJXZJGdSxpnEGtta+wismQ== /http-cache-semantics/4.1.0: dev: true resolution: @@ -3579,7 +3559,7 @@ packages: node: ">=6.0.0" resolution: integrity: sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== - /inquirer/7.3.0: + /inquirer/7.3.3: dependencies: ansi-escapes: 4.3.1 chalk: 4.1.0 @@ -3598,7 +3578,7 @@ packages: engines: node: ">=8.0.0" resolution: - integrity: sha512-K+LZp6L/6eE5swqIcVXrxl21aGDU4S50gKH0/d96OMQnSBCyGyZl/oZhbkVmdp5sBoINHd4xZvFSARh2dk6DWA== + integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== /interpret/1.4.0: dev: true engines: @@ -3853,12 +3833,12 @@ packages: node: ">=0.10.0" resolution: integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - /is-plain-object/3.0.1: + /is-plain-object/4.1.1: dev: true engines: node: ">=0.10.0" resolution: - integrity: sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g== + integrity: sha512-5Aw8LLVsDlZsETVMhoMXzqsXwQqr/0vlnBYzIXJbYo2F4yYlhLHs+Ez7Bod7IIQKWkJbJfxrWD7pA1Dw1TKrwA== /is-promise/2.2.2: dev: true resolution: @@ -4128,7 +4108,7 @@ packages: integrity: sha1-DGXQDih8tmPMs8s4Sad+iewmilY= /listr-input/0.2.1: dependencies: - inquirer: 7.3.0 + inquirer: 7.3.3 inquirer-autosubmit-prompt: 0.2.0 rxjs: 6.6.0 through: 2.3.8 @@ -4349,12 +4329,14 @@ packages: dev: true resolution: integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - /lru-cache/5.1.1: + /lru-cache/6.0.0: dependencies: - yallist: 3.1.1 + yallist: 4.0.0 dev: true + engines: + node: ">=10" resolution: - integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== /magic-string/0.25.7: dependencies: sourcemap-codec: 1.4.8 @@ -4446,7 +4428,7 @@ packages: integrity: sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== /md5-hex/3.0.1: dependencies: - blueimp-md5: 2.16.0 + blueimp-md5: 2.17.0 dev: true engines: node: ">=8" @@ -4472,7 +4454,7 @@ packages: /mem/6.1.0: dependencies: map-age-cleaner: 0.1.3 - mimic-fn: 3.0.0 + mimic-fn: 3.1.0 dev: true engines: node: ">=8" @@ -4578,12 +4560,12 @@ packages: node: ">=6" resolution: integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - /mimic-fn/3.0.0: + /mimic-fn/3.1.0: dev: true engines: node: ">=8" resolution: - integrity: sha512-PiVO95TKvhiwgSwg1IdLYlCTdul38yZxZMIcnDSFIBUm4BNZha2qpQ4GpJ++15bHoKDtrW2D69lMfFwdFYtNZQ== + integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== /mimic-response/1.0.1: dev: true engines: @@ -4646,12 +4628,12 @@ packages: node: ">=0.10.0" resolution: integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== - /mri/1.1.5: + /mri/1.1.6: dev: true engines: node: ">=4" resolution: - integrity: sha512-d2RKzMD4JNyHMbnbWnznPaa8vbdlq/4pNZ3IgdaGrVbBhebBsGUUE/6qorTMYNS6TwuH3ilfOlD2bf4Igh8CKg== + integrity: sha512-oi1b3MfbyGa7FJMP9GmLTttni5JoICpYBRlq+x5V16fZbLsnL9N3wFqqIm/nIG43FjUFkFh9Epzp/kzUGUnJxQ== /ms/2.0.0: dev: true resolution: @@ -4687,9 +4669,9 @@ packages: dev: true resolution: integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== - /node-releases/1.1.59: + /node-releases/1.1.60: resolution: - integrity: sha512-H3JrdUczbdiwxN5FuJPyCHnGHIFqQ0wWxo+9j1kAXAzqNMAHlo+4I/sYYxpyK0irQ73HgdiyzD32oqQDcU2Osw== + integrity: sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA== /normalize-package-data/2.5.0: dependencies: hosted-git-info: 2.8.8 @@ -4723,8 +4705,8 @@ packages: execa: 3.4.0 github-url-from-git: 1.5.0 has-yarn: 2.1.0 - hosted-git-info: 3.0.4 - inquirer: 7.3.0 + hosted-git-info: 3.0.5 + inquirer: 7.3.3 is-installed-globally: 0.3.2 is-scoped: 2.1.0 issue-regex: 2.0.0 @@ -4734,7 +4716,7 @@ packages: meow: 5.0.0 npm-name: 5.5.0 onetime: 5.1.0 - open: 7.0.4 + open: 7.1.0 ow: 0.15.1 p-memoize: 3.1.0 p-timeout: 3.2.0 @@ -4761,7 +4743,7 @@ packages: is-scoped: 2.1.0 is-url-superb: 3.0.0 lodash.zip: 4.2.0 - registry-auth-token: 4.1.1 + registry-auth-token: 4.2.0 registry-url: 5.1.0 validate-npm-package-name: 3.0.0 dev: true @@ -4876,7 +4858,7 @@ packages: node: ">=6" resolution: integrity: sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - /open/7.0.4: + /open/7.1.0: dependencies: is-docker: 2.0.0 is-wsl: 2.2.0 @@ -4884,7 +4866,7 @@ packages: engines: node: ">=8" resolution: - integrity: sha512-brSA+/yq+b08Hsr4c8fsEW2CRzk1BmfN3SAK/5VCHQ9bdoZJ4qa/+AfR0xHjlbbZUyPkUHs1b8x1RqdyZdkVqQ== + integrity: sha512-lLPI5KgOwEYCDKXf4np7y1PBEkj7HYIyP2DY8mVDRnx0VIIu6bNrRB0R66TuO7Mack6EnTNLm4uvcl1UoklTpA== /opencollective-postinstall/2.0.3: dev: true hasBin: true @@ -4903,11 +4885,11 @@ packages: node: ">= 0.8.0" resolution: integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - /ora/4.0.4: + /ora/4.0.5: dependencies: chalk: 3.0.0 cli-cursor: 3.1.0 - cli-spinners: 2.3.0 + cli-spinners: 2.4.0 is-interactive: 1.0.0 log-symbols: 3.0.0 mute-stream: 0.0.8 @@ -4917,7 +4899,7 @@ packages: engines: node: ">=8" resolution: - integrity: sha512-77iGeVU1cIdRhgFzCK8aw1fbtT1B/iZAvWjS+l/o1x0RShMgxHUZaD2yDpWsNCPwXg9z1ZA78Kbdvr8kBmG/Ww== + integrity: sha512-jCDgm9DqvRcNIAEv2wZPrh7E5PcQiDUnbnWbAfu4NGAE2ZNqPFbDixmWldy1YG2QfLeQhuiu6/h5VRrk6cG50w== /os-tmpdir/1.0.2: dev: true engines: @@ -5053,7 +5035,7 @@ packages: /package-json/6.5.0: dependencies: got: 9.6.0 - registry-auth-token: 4.1.1 + registry-auth-token: 4.2.0 registry-url: 5.1.0 semver: 6.3.0 dev: true @@ -5090,7 +5072,7 @@ packages: node: ">=4" resolution: integrity: sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - /parse-json/5.0.0: + /parse-json/5.0.1: dependencies: "@babel/code-frame": 7.10.4 error-ex: 1.3.2 @@ -5100,7 +5082,7 @@ packages: engines: node: ">=8" resolution: - integrity: sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + integrity: sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ== /parse-ms/2.1.0: dev: true engines: @@ -5266,13 +5248,13 @@ packages: node: ">=10" resolution: integrity: sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg== - /pnpm/5.3.0: + /pnpm/5.4.6: dev: true engines: node: ">=10.13" hasBin: true resolution: - integrity: sha512-CaCVRg9FkBs1n8S3LtvVbRaoJb66gnmimsRq4syuqRrsjjwN4hC1CZonL7hzr8bY/c+xkNxi58qwMwRygBpO8g== + integrity: sha512-UZXIBwIlYkT+YbW8QjobVoppYT/hVphu1eu+ed60mGf+Ulz+suAR21zunWUGoETbibvetIkj8HLebsmz5tow8A== /prelude-ls/1.2.1: dev: true engines: @@ -5306,7 +5288,7 @@ packages: execa: 2.1.0 find-up: 4.1.0 ignore: 5.1.8 - mri: 1.1.5 + mri: 1.1.6 multimatch: 4.0.0 prettier: 2.0.5 dev: true @@ -5462,7 +5444,7 @@ packages: dependencies: "@types/normalize-package-data": 2.4.0 normalize-package-data: 2.5.0 - parse-json: 5.0.0 + parse-json: 5.0.1 type-fest: 0.6.0 dev: true engines: @@ -5544,12 +5526,12 @@ packages: /regenerate/1.4.1: resolution: integrity: sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A== - /regenerator-runtime/0.13.5: + /regenerator-runtime/0.13.7: resolution: - integrity: sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== + integrity: sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== /regenerator-transform/0.14.5: dependencies: - "@babel/runtime": 7.10.4 + "@babel/runtime": 7.10.5 resolution: integrity: sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== /regexpp/3.1.0: @@ -5576,14 +5558,14 @@ packages: node: ">=0.1.14" resolution: integrity: sha512-9YXf6xtW+qzQ+hcMQXx95MOvfqXFgsKDZodX3qZB0x2n5Z94ioetIITsBtvJbiOyxa/6s9AtyweBLCdPmPko/w== - /registry-auth-token/4.1.1: + /registry-auth-token/4.2.0: dependencies: rc: 1.2.8 dev: true engines: node: ">=6.0.0" resolution: - integrity: sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA== + integrity: sha512-P+lWzPrsgfN+UEpDS3U8AQKg/UjZX6mQSJueZj3EK+vNESoqBSpBUD3gmu4sF9lOsjXWjF11dQKUqemf3veq1w== /registry-url/5.1.0: dependencies: rc: 1.2.8 @@ -5724,14 +5706,14 @@ packages: hasBin: true resolution: integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - /rollup/2.21.0: + /rollup/2.23.0: engines: node: ">=10.0.0" hasBin: true optionalDependencies: fsevents: 2.1.3 resolution: - integrity: sha512-BEGgy+wSzux7Ycq58pRiWEOBZaXRXTuvzl1gsm7gqmsAHxkWf9nyA5V2LN9fGSHhhDQd0/C13iRzSh4bbIpWZQ== + integrity: sha512-vLNmZFUGVwrnqNAJ/BvuLk1MtWzu4IuoqsH9UWK5AIdO3rt8/CSiJNvPvCIvfzrbNsqKbNzPAG1V2O4eTe2XZg== /run-async/2.4.1: dev: true engines: @@ -6152,12 +6134,12 @@ packages: node: ">=0.10.0" resolution: integrity: sha1-PFMZQukIwml8DsNEhYwobHygpgo= - /strip-json-comments/3.1.0: + /strip-json-comments/3.1.1: dev: true engines: node: ">=8" resolution: - integrity: sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== + integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== /supertap/1.0.0: dependencies: arrify: 1.0.1 @@ -6769,12 +6751,6 @@ packages: node: ">=8" resolution: integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== - /xregexp/4.3.0: - dependencies: - "@babel/runtime-corejs3": 7.10.4 - dev: true - resolution: - integrity: sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g== /xtend/4.0.2: dev: true engines: @@ -6789,10 +6765,10 @@ packages: dev: true resolution: integrity: sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - /yallist/3.1.1: + /yallist/4.0.0: dev: true resolution: - integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== /yaml/1.10.0: dev: true engines: @@ -6814,10 +6790,10 @@ packages: node: ">=6" resolution: integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== - /yargs/15.4.0: + /yargs/15.4.1: dependencies: cliui: 6.0.0 - decamelize: 3.2.0 + decamelize: 1.2.0 find-up: 4.1.0 get-caller-file: 2.0.5 require-directory: 2.1.1 @@ -6831,7 +6807,7 @@ packages: engines: node: ">=8" resolution: - integrity: sha512-D3fRFnZwLWp8jVAAhPZBsmeIHY8tTsb8ItV9KaAaopmC6wde2u6Yw29JBIZHXw14kgkRnYmDgmQU4FVMDlIsWw== + integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== /yn/3.1.1: dev: true engines: @@ -6839,50 +6815,50 @@ packages: resolution: integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== specifiers: - "@babel/core": ^7.10.4 - "@babel/plugin-proposal-async-generator-functions": ^7.10.4 + "@babel/core": ^7.10.5 + "@babel/plugin-proposal-async-generator-functions": ^7.10.5 "@babel/plugin-proposal-json-strings": ^7.10.4 "@babel/plugin-proposal-object-rest-spread": ^7.10.4 "@babel/plugin-proposal-optional-catch-binding": ^7.10.4 "@babel/plugin-proposal-unicode-property-regex": ^7.10.4 "@babel/plugin-syntax-dynamic-import": ^7.8.3 - "@babel/plugin-transform-runtime": ^7.10.4 + "@babel/plugin-transform-runtime": ^7.10.5 "@babel/preset-env": ^7.10.4 - "@babel/runtime": ^7.10.4 + "@babel/runtime": ^7.10.5 "@rollup/plugin-alias": ^3.1.1 - "@rollup/plugin-commonjs": ^13.0.0 + "@rollup/plugin-commonjs": ^14.0.0 "@rollup/plugin-json": ^4.1.0 "@rollup/pluginutils": ^3.1.0 "@types/babel__core": ^7.1.9 - "@types/node": ^14.0.20 + "@types/node": ^14.0.26 "@types/prettier": ^2.0.2 "@types/semver": ^7.3.1 - "@typescript-eslint/eslint-plugin": ^3.6.0 - "@typescript-eslint/parser": ^3.6.0 + "@typescript-eslint/eslint-plugin": ^3.7.0 + "@typescript-eslint/parser": ^3.7.0 "@wessberg/browserslist-generator": ^1.0.37 - "@wessberg/rollup-plugin-ts": ^1.2.27 + "@wessberg/rollup-plugin-ts": ^1.2.28 "@wessberg/scaffold": ^1.0.30 "@wessberg/stringutil": ^1.0.19 "@wessberg/ts-clone-node": ^0.3.9 "@wessberg/ts-config": ^1.0.16 - ava: 3.10.1 + ava: 3.11.0 babel-preset-minify: ^0.5.1 browserslist: ^4.13.0 chalk: ^4.1.0 core-js: ^3.6.5 - eslint: ^7.4.0 + eslint: ^7.5.0 eslint-config-prettier: ^6.11.0 eslint-plugin-import: ^2.22.0 - eslint-plugin-jsdoc: ^29.1.3 + eslint-plugin-jsdoc: ^30.0.3 fast-glob: ^3.2.4 husky: ^4.2.5 magic-string: ^0.25.7 np: 5.2.1 - pnpm: ^5.3.0 + pnpm: ^5.4.6 prettier: ^2.0.5 pretty-quick: ^2.0.1 rimraf: ^3.0.2 - rollup: ^2.21.0 + rollup: ^2.23.0 semver: 7.3.2 slash: ^3.0.0 standard-changelog: ^2.0.24 diff --git a/rollup.config.js b/rollup.config.js index 00f2b848..e83230e6 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -12,7 +12,8 @@ export default { { file: packageJson.main, format: "cjs", - sourcemap: true + sourcemap: true, + exports: "default" }, { file: packageJson.module, @@ -25,10 +26,5 @@ export default { tsconfig: "tsconfig.build.json" }) ], - external: [ - ...builtinModules, - ...Object.keys(packageJson.dependencies), - ...Object.keys(packageJson.devDependencies), - ...Object.keys(packageJson.peerDependencies) - ] + external: [...builtinModules, ...Object.keys(packageJson.dependencies), ...Object.keys(packageJson.devDependencies), ...Object.keys(packageJson.peerDependencies)] }; diff --git a/src/plugin/i-typescript-plugin-options.ts b/src/plugin/i-typescript-plugin-options.ts index 02ba8a34..60808ea9 100644 --- a/src/plugin/i-typescript-plugin-options.ts +++ b/src/plugin/i-typescript-plugin-options.ts @@ -23,7 +23,11 @@ export interface DebugMetricsData { fileName?: string; } -export type DebugData = DebugTransformerData | DebugEmitData | DebugMetricsData; +export interface DebugTsconfigData { + kind: "tsconfig"; +} + +export type DebugData = DebugTransformerData | DebugEmitData | DebugMetricsData | DebugTsconfigData; export type DebugOptionCallback = (data: DebugData) => boolean; diff --git a/src/plugin/typescript-plugin.ts b/src/plugin/typescript-plugin.ts index ece16534..c807b00f 100644 --- a/src/plugin/typescript-plugin.ts +++ b/src/plugin/typescript-plugin.ts @@ -113,6 +113,8 @@ export default function typescriptRollupPlugin(pluginInputOptions: Partial { - program.emit( + // There is an extra, private, argument that can be given to emit internally in TypeScript + // which forces emit of declarations. Set this to true for dts emit. + (program as TS.Program & { + emit: ( + targetSourceFile?: TS.SourceFile, + writeFile?: TS.WriteFileCallback, + cancellationToken?: TS.CancellationToken, + emitOnlyDtsFiles?: boolean, + customTransformers?: TS.CustomTransformers, + forceDtsEmit?: boolean + ) => TS.EmitResult; + }).emit( sourceFile, (file, data, writeByteOrderMark) => { hasEmitted = true; @@ -95,7 +106,8 @@ export class CompilerHost extends ModuleResolutionHost implements TS.CompilerHos }, undefined, onlyDts, - customTransformers + customTransformers, + onlyDts == null || !onlyDts ? undefined : true ); }; @@ -282,7 +294,11 @@ export class CompilerHost extends ModuleResolutionHost implements TS.CompilerHos return success; } - clone(compilerOptions: TS.CompilerOptions, overrides: Partial> = {}): CompilerHost { + clone( + compilerOptions: TS.CompilerOptions, + fileNameFilter: (file: string) => boolean = () => true, + overrides: Partial> = {} + ): CompilerHost { return new CompilerHost( { ...this.options, @@ -291,6 +307,7 @@ export class CompilerHost extends ModuleResolutionHost implements TS.CompilerHos ...this.options.parsedCommandLineResult, parsedCommandLine: { ...this.getParsedCommandLine(), + fileNames: this.getParsedCommandLine().fileNames.filter(fileNameFilter), options: { ...this.getCompilationSettings(), ...compilerOptions @@ -299,11 +316,11 @@ export class CompilerHost extends ModuleResolutionHost implements TS.CompilerHos } }, this.printer, - new Map(this.sourceFiles), - new Map(this.transformerDiagnostics), - new Map(this.fileToVersionMap), - new Map(this.sourceFileToDependenciesMap), - new Map(this.files) + new Map([...this.sourceFiles.entries()].filter(([path]) => fileNameFilter(path))), + new Map([...this.transformerDiagnostics.entries()].filter(([path]) => fileNameFilter(path))), + new Map([...this.fileToVersionMap.entries()].filter(([path]) => fileNameFilter(path))), + new Map([...this.sourceFileToDependenciesMap.entries()].filter(([path]) => fileNameFilter(path))), + new Map([...this.files.entries()].filter(([path]) => fileNameFilter(path))) ); } diff --git a/src/service/emit/declaration/emit-declarations.ts b/src/service/emit/declaration/emit-declarations.ts index fc5dd131..76993564 100644 --- a/src/service/emit/declaration/emit-declarations.ts +++ b/src/service/emit/declaration/emit-declarations.ts @@ -15,6 +15,7 @@ import {mergeChunksWithAmbientDependencies} from "../../../util/chunk/merge-chun import {preparePaths} from "../../transformer/declaration-bundler/util/prepare-paths/prepare-paths"; import {logEmit} from "../../../util/logging/log-emit"; import {TS} from "../../../type/ts"; +import {createFilter} from "@rollup/pluginutils"; export interface EmitDeclarationsOptions { pluginContext: PluginContext; @@ -65,6 +66,8 @@ export function emitDeclarations(options: EmitDeclarationsOptions): void { } } + const filter = createFilter(undefined, [setExtension(virtualOutFile.relative, D_TS_EXTENSION), setExtension(virtualOutFile.relative, D_TS_MAP_EXTENSION)]); + const host = options.host.clone( { ...options.host.getCompilationSettings(), @@ -80,6 +83,7 @@ export function emitDeclarations(options: EmitDeclarationsOptions): void { incremental: false, tsBuildInfoFile: undefined }, + filter, { allowTransformingDeclarations: true } diff --git a/src/util/get-parsed-command-line/get-parsed-command-line.ts b/src/util/get-parsed-command-line/get-parsed-command-line.ts index 8a37d2bd..69df61b5 100644 --- a/src/util/get-parsed-command-line/get-parsed-command-line.ts +++ b/src/util/get-parsed-command-line/get-parsed-command-line.ts @@ -5,6 +5,8 @@ import {InputCompilerOptions, TsConfigResolver, TsConfigResolverWithFileName, Ty import {TS} from "../../type/ts"; import {finalizeParsedCommandLine} from "../finalize-parsed-command-line/finalize-parsed-command-line"; import {FileSystem} from "../file-system/file-system"; +import {shouldDebugTsconfig} from "../is-debug/should-debug"; +import {logTsconfig} from "../logging/log-tsconfig"; export interface GetParsedCommandLineOptions { cwd: string; @@ -12,6 +14,8 @@ export interface GetParsedCommandLineOptions { forcedCompilerOptions?: TS.CompilerOptions; fileSystem: FileSystem; typescript: typeof TS; + filter: (file: string) => boolean; + pluginOptions: TypescriptPluginOptions; } /** @@ -157,6 +161,12 @@ export function getParsedCommandLine(options: GetParsedCommandLineOptions): Pars // Finalize the parsed command line finalizeParsedCommandLine({...options, parsedCommandLineResult}); + // Filter out all files that is matched by the include/exclude globs provided as plugin options + parsedCommandLine.fileNames = parsedCommandLineResult.parsedCommandLine.fileNames.filter(options.filter); + + if (shouldDebugTsconfig(options.pluginOptions.debug)) { + logTsconfig(parsedCommandLine); + } return parsedCommandLineResult; } diff --git a/src/util/is-debug/should-debug.ts b/src/util/is-debug/should-debug.ts index 49aeaa4b..7b746d59 100644 --- a/src/util/is-debug/should-debug.ts +++ b/src/util/is-debug/should-debug.ts @@ -33,3 +33,16 @@ export function shouldDebugEmit(debug: TypescriptPluginOptions["debug"], fileNam }) ); } + +export function shouldDebugTsconfig(debug: TypescriptPluginOptions["debug"]): boolean { + if (typeof debug === "boolean") return debug; + return Boolean( + debug({ + kind: "tsconfig" + }) + ); +} + +export function shouldDebugVirtualFiles(debug: TypescriptPluginOptions["debug"]): boolean { + return debug != null && debug !== false; +} diff --git a/src/util/logging/log-tsconfig.ts b/src/util/logging/log-tsconfig.ts new file mode 100644 index 00000000..081729de --- /dev/null +++ b/src/util/logging/log-tsconfig.ts @@ -0,0 +1,9 @@ +import chalk from "chalk"; +import {getFormattedDateTimePrefix} from "./get-formatted-date-time-prefix"; +import {TS} from "../../type/ts"; +import {inspect} from "../inspect/inspect"; + +export function logTsconfig(config: TS.ParsedCommandLine): void { + console.log(`${getFormattedDateTimePrefix()}${chalk.red(`tsconfig`)}`); + inspect(config); +} diff --git a/src/util/logging/log-virtual-files.ts b/src/util/logging/log-virtual-files.ts new file mode 100644 index 00000000..34c6ef55 --- /dev/null +++ b/src/util/logging/log-virtual-files.ts @@ -0,0 +1,8 @@ +import chalk from "chalk"; +import {getFormattedDateTimePrefix} from "./get-formatted-date-time-prefix"; +import {inspect} from "../inspect/inspect"; + +export function logVirtualFiles(files: string[]): void { + console.log(`${getFormattedDateTimePrefix()}${chalk.gray(`Virtual Files`)}`); + inspect(files); +} diff --git a/src/util/plugin-options/get-plugin-options.ts b/src/util/plugin-options/get-plugin-options.ts index c9a0925d..ff8e1c6b 100644 --- a/src/util/plugin-options/get-plugin-options.ts +++ b/src/util/plugin-options/get-plugin-options.ts @@ -1,7 +1,7 @@ import * as TSModule from "typescript"; import {TypescriptPluginOptions} from "../../plugin/i-typescript-plugin-options"; import {getRealFileSystem} from "../file-system/file-system"; -import {normalize} from "../path/path-util"; +import {ensureAbsolute, normalize} from "../path/path-util"; /** * Gets normalized PluginOptions based on the given ones @@ -27,7 +27,7 @@ export function getPluginOptions(options: Partial): Typ const baseOptions = { typescript, browserslist, - cwd: normalize(cwd), + cwd: ensureAbsolute(process.cwd(), cwd), exclude, include, transformers, diff --git a/test/rebuild.test.ts b/test/rebuild.test.ts new file mode 100644 index 00000000..571561f1 --- /dev/null +++ b/test/rebuild.test.ts @@ -0,0 +1,150 @@ +import test from "./util/test-runner"; +import {formatCode} from "./util/format-code"; +import {generateRollupBundle} from "./setup/setup-rollup"; + +test("Won't produce empty declarations when output directory is not excluded from TypeScript. #1", async (t, {typescript}) => { + const bundle = await generateRollupBundle( + [ + { + entry: true, + fileName: "virtual-src/index.ts", + text: `\ + export interface Foo { + foo: string; + } + ` + }, + { + entry: false, + fileName: "virtual-dist/index.js", + text: `\ + console.log(true); + ` + }, + { + entry: false, + fileName: "virtual-dist/index.d.ts", + text: `\ + interface Foo { + foo: string; + } + export {Foo}; + ` + } + ], + { + typescript, + debug: false, + dir: "virtual-dist" + } + ); + const { + declarations: [file] + } = bundle; + + t.deepEqual( + formatCode(file.code), + formatCode(`\ + interface Foo { + foo: string; + } + export {Foo}; + `) + ); +}); + +test("Won't produce empty declarations when baseUrl is outside of compilation root. #1", async (t, {typescript}) => { + const bundle = await generateRollupBundle( + [ + { + entry: false, + fileName: "../../../tsconfig.json", + text: `\ + { + "compilerOptions": { + "baseUrl": "./", + "rootDir": ".", + "incremental": true, + "composite": true, + "declaration": true, + "declarationMap": true, + "paths": { + "@foo/*": ["./packages/@foo/*/source"] + }, + }, + "references": [ + { "path": "./packages/@foo/a" }, + { "path": "./packages/@foo/b" } + ] + } + ` + }, + { + entry: false, + fileName: "tsconfig.json", + text: `\ + { + "extends": "../../../tsconfig.json", + "compilerOptions": { + "outDir": "./out" + }, + "references": [{ "path": "../b" }] + } + ` + }, + { + entry: false, + fileName: "../b/tsconfig.json", + text: `\ + { + "extends": "../../../tsconfig.json", + "compilerOptions": { + "outDir": "./out" + }, + "references": [{ "path": "../a" }] + } + ` + }, + { + entry: false, + fileName: "../b/source/index.ts", + text: `\ + export interface Person { + name: string + }; + ` + }, + { + entry: true, + fileName: "source/index.ts", + text: `\ + import {Person} from "@foo/b"; + export interface Man extends Person { + } + ` + } + ], + { + typescript, + debug: false, + dir: "out", + cwd: "subproject/packages/@foo/a", + tsconfig: "tsconfig.json" + } + ); + const { + declarations: [file] + } = bundle; + + t.deepEqual( + formatCode(file.code), + formatCode(`\ + interface Person { + name: string; + } + interface Man extends Person {} + export { Man }; + //# sourceMappingURL=index.d.ts.map + `) + ); +}); diff --git a/test/setup/setup-rollup.ts b/test/setup/setup-rollup.ts index 5e947acb..6b211360 100644 --- a/test/setup/setup-rollup.ts +++ b/test/setup/setup-rollup.ts @@ -9,7 +9,9 @@ import {HookRecord, InputCompilerOptions, TypescriptPluginBabelOptions, Typescri import {D_TS_EXTENSION, D_TS_MAP_EXTENSION, TSBUILDINFO_EXTENSION} from "../../src/constant/constant"; import {getRealFileSystem} from "../../src/util/file-system/file-system"; import {TS} from "../../src/type/ts"; -import {isAbsolute, nativeDirname, nativeJoin, nativeNormalize, parse, relative} from "../../src/util/path/path-util"; +import {ensureAbsolute, isAbsolute, nativeDirname, nativeJoin, nativeNormalize, parse, relative} from "../../src/util/path/path-util"; +import {logVirtualFiles} from "../../src/util/logging/log-virtual-files"; +import {shouldDebugVirtualFiles} from "../../src/util/is-debug/should-debug"; export interface ITestFile { fileName: string; @@ -81,6 +83,7 @@ export async function generateRollupBundle( hook = {outputPath: path => path} }: Partial = {} ): Promise { + cwd = ensureAbsolute(process.cwd(), cwd); const files: ITestFile[] = (Array.isArray(inputFiles) ? inputFiles : [inputFiles]) .map(file => typeof file === "string" @@ -100,6 +103,11 @@ export async function generateRollupBundle( throw new ReferenceError(`No entry could be found`); } + // Print the virtual file names + if (shouldDebugVirtualFiles(debug)) { + logVirtualFiles(files.map(file => nativeNormalize(file.fileName))); + } + const resolveId = (fileName: string, parent: string | undefined): string | undefined => { const absolute = isAbsolute(fileName) ? fileName : nativeJoin(parent == null ? "" : nativeDirname(parent), fileName); const filenames = [nativeNormalize(absolute), nativeJoin(absolute, "/index")]; @@ -203,6 +211,7 @@ export async function generateRollupBundle( readFile: fileName => { const normalized = nativeNormalize(fileName); const absoluteFileName = isAbsolute(normalized) ? normalized : nativeJoin(cwd, normalized); + const file = files.find(currentFile => currentFile.fileName === absoluteFileName); if (file != null) return file.text; return typescript.sys.readFile(absoluteFileName); diff --git a/test/util/test-runner.ts b/test/util/test-runner.ts index b17c4f04..86d1a1e1 100644 --- a/test/util/test-runner.ts +++ b/test/util/test-runner.ts @@ -15,20 +15,58 @@ export interface ExtendedImplementationArgumentOptions { typescriptModuleSpecifier: string; } +function getTsVersionFromEnv(): [typeof TS, string][] | undefined { + if (process.env.TS_VERSION == null) return undefined; + switch (process.env.TS_VERSION.toUpperCase()) { + case "3.2.1": + case "3.2": + return [[(TS321 as unknown) as typeof TS, "typescript-3-2-1"]]; + case "3.3.1": + case "3.3": + return [[(TS321 as unknown) as typeof TS, "typescript-3-3-1"]]; + case "3.4.1": + case "3.4": + return [[(TS341 as unknown) as typeof TS, "typescript-3-4-1"]]; + case "3.5.1": + case "3.5": + return [[(TS351 as unknown) as typeof TS, "typescript-3-5-1"]]; + case "3.6.2": + case "3.6": + return [[(TS362 as unknown) as typeof TS, "typescript-3-6-2"]]; + case "3.7.2": + case "3.7": + return [[(TS372 as unknown) as typeof TS, "typescript-3-7-2"]]; + case "3.8.3": + case "3.8": + return [[(TS383 as unknown) as typeof TS, "typescript-3-8-3"]]; + case "3.9.2": + case "3.9": + return [[(TS392 as unknown) as typeof TS, "typescript-3-9-2"]]; + case "4.0.0": + case "4.0": + case "4": + case "CURRENT": + return [[(TSCurrent as unknown) as typeof TS, "typescript"]]; + } +} + export type ExtendedImplementation = (t: ExecutionContext, options: ExtendedImplementationArgumentOptions) => ImplementationResult; function sharedTest(title: string, implementation: ExtendedImplementation, subMethod?: "skip" | "only"): void { - for (const [typescript, typescriptModuleSpecifier] of [ - [TS321, "typescript-3-2-1"], - [TS331, "typescript-3-3-1"], - [TS341, "typescript-3-4-1"], - [TS351, "typescript-3-5-1"], - [TS362, "typescript-3-6-2"], - [TS372, "typescript-3-7-2"], - [TS383, "typescript-3-8-3"], - [TS392, "typescript-3-9-2"], - [TSCurrent, "typescript"] - ] as [typeof TS, string][]) { + if (process.env.TS_VERSION != null) { + } + for (const [typescript, typescriptModuleSpecifier] of getTsVersionFromEnv() ?? + ([ + [TS321, "typescript-3-2-1"], + [TS331, "typescript-3-3-1"], + [TS341, "typescript-3-4-1"], + [TS351, "typescript-3-5-1"], + [TS362, "typescript-3-6-2"], + [TS372, "typescript-3-7-2"], + [TS383, "typescript-3-8-3"], + [TS392, "typescript-3-9-2"], + [TSCurrent, "typescript"] + ] as [typeof TS, string][])) { const func = subMethod != null ? avaTest[subMethod] : avaTest.serial; func(`${title} (TypeScript v${typescript.version})`, ctx => implementation(ctx as ExecutionContext, {typescript, typescriptModuleSpecifier})); }