diff --git a/.eslintignore b/.eslintignore
index 62feb1dc3273..b48d56cf8be3 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -1,7 +1,6 @@
node_modules
dist
jest.config.js
-commitlint.config.js
fixtures
shared-fixtures
coverage
diff --git a/.github/ISSUE_TEMPLATE/1-bug-report-plugin.yaml b/.github/ISSUE_TEMPLATE/1-bug-report-plugin.yaml
index 21bdef80920a..8f6865a3c414 100644
--- a/.github/ISSUE_TEMPLATE/1-bug-report-plugin.yaml
+++ b/.github/ISSUE_TEMPLATE/1-bug-report-plugin.yaml
@@ -32,6 +32,7 @@ body:
***Please do not use this template.*** Instead, select the
["Report a complex bug you encountered by providing an isolated reproduction repository" template](https://github.com/typescript-eslint/typescript-eslint/issues/new?template=7-bug-report-complex.yaml).
+ ***Help us to help you!***
placeholder: https://typescript-eslint.io/play/...
validations:
required: true
@@ -47,7 +48,11 @@ body:
id: eslint-config
attributes:
label: ESLint Config
- description: A ***minimal*** ESLint config for reproducing the issue
+ description: |
+ A ***minimal*** ESLint config for reproducing the issue.
+ Please do not just paste your entire ESLint config - it just makes it harder for us to investigate.
+ If this is more than around 30 lines and/or contains lint rule settings unrelated to your bug report, you probably haven't isolated the repro.
+ ***Help us to help you!***
render: javascript
value: |
module.exports = {
@@ -90,7 +95,9 @@ body:
id: additional
attributes:
label: Additional Info
- description: Any additional info you'd like to provide. If ESLint threw an exception, please run your lint again with the `--debug` flag, and dump the output below. e.g. `eslint --ext ".ts,.js" src --debug`
+ description: |
+ Any additional info you'd like to provide.
+ If ESLint threw an exception, please run your lint again with the `--debug` flag, and dump the output below. e.g. `eslint path/to/broken/file.ts --debug`
- type: textarea
id: versions
attributes:
diff --git a/.github/ISSUE_TEMPLATE/6-bug-report-other.yaml b/.github/ISSUE_TEMPLATE/6-bug-report-other.yaml
index 5f3e16c61517..e4175930289e 100644
--- a/.github/ISSUE_TEMPLATE/6-bug-report-other.yaml
+++ b/.github/ISSUE_TEMPLATE/6-bug-report-other.yaml
@@ -26,6 +26,7 @@ body:
### Note For Complex Issues
If your issue requires some complex reproduction - such as multiple files or a specific folder structure - please do not use this template.
Instead, select the ["Report a Complex Bug With a Reproduction Repository" template](https://github.com/typescript-eslint/typescript-eslint/issues/new?template=7-bug-report-complex.yaml).
+ ***Help us to help you!***
- type: dropdown
id: package
attributes:
@@ -59,7 +60,11 @@ body:
id: eslint-config
attributes:
label: ESLint Config
- description: (Optional) A ***minimal*** ESLint config for reproducing the issue
+ description: |
+ (Optional) A ***minimal*** ESLint config for reproducing the issue.
+ Please do not just paste your entire ESLint config - it just makes it harder for us to investigate.
+ If this is more than around 30 lines - you probably haven't isolated the repro.
+ ***Help us to help you!***
render: javascript
value: |
module.exports = {
@@ -100,7 +105,9 @@ body:
id: additional
attributes:
label: Additional Info
- description: Any additional info you'd like to provide. If ESLint threw an exception, please run your lint again with the `--debug` flag, and dump the output below. i.e. `eslint --ext ".ts,.js" src --debug`
+ description: |
+ Any additional info you'd like to provide.
+ If ESLint threw an exception, please run your lint again with the `--debug` flag, and dump the output below. e.g. `eslint path/to/broken/file.ts --debug`
- type: textarea
id: versions
attributes:
diff --git a/.husky/commit-msg b/.husky/commit-msg
index d71a03b9f3e0..6700f5128210 100755
--- a/.husky/commit-msg
+++ b/.husky/commit-msg
@@ -1,4 +1,2 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
-
-yarn commitlint --edit $1
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ca7f055a3475..d8d52c1f202a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,19 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+
+### Bug Fixes
+
+* **eslint-plugin:** [space-infix-ops] correct PropertyDefinition with typeAnnotation ([#5113](https://github.com/typescript-eslint/typescript-eslint/issues/5113)) ([d320174](https://github.com/typescript-eslint/typescript-eslint/commit/d320174f40a74b34e6b6e4c88128ef6e736311d8))
+* **eslint-plugin:** [space-infix-ops] regression fix for conditional types ([#5135](https://github.com/typescript-eslint/typescript-eslint/issues/5135)) ([e5238c8](https://github.com/typescript-eslint/typescript-eslint/commit/e5238c84e56e7c34174b2c6f1e3ea59456797c2f))
+* **eslint-plugin:** [space-infix-ops] regression fix for type aliases ([#5138](https://github.com/typescript-eslint/typescript-eslint/issues/5138)) ([4e13deb](https://github.com/typescript-eslint/typescript-eslint/commit/4e13deb05fbd8724996156b15b65f6a66794a7cc))
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index d3b378e4a96e..668996493295 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -23,11 +23,11 @@ Thanks goes to these wonderful people:
Nicholas C. Zakas
Jed Fox
YeonJuan
+ Joshua Chen
Rafael Santana
- Ben Lichtman
- Joshua Chen
+ Ben Lichtman
Taeheon Kim
Nikita
Scott O'Hara
@@ -87,19 +87,6 @@ Thanks goes to these wonderful people:
Jonathan Delgado
Philipp A.
Pig Fang
- Tadhg McDonald-Jensen
-
-
- Thomas den Hollander
- Tim Kraut
- Yasar Siddiqui
- Yusuke Tanaka
- Bence DΓ‘nyi
-
-
- Eric Wang
- Juan GarcΓa
- Soobin Bak
diff --git a/README.md b/README.md
index 21b397408082..3c9cbc2a68d5 100644
--- a/README.md
+++ b/README.md
@@ -51,7 +51,7 @@ The latest version under the `canary` tag **(latest commit to `main`)** is:
### Supported TypeScript Version
-**The version range of TypeScript currently supported by this parser is `>=3.3.1 <4.7.0`.**
+**The version range of TypeScript currently supported by this parser is `>=3.3.1 <4.8.0`.**
These versions are what we test against.
diff --git a/commitlint.config.js b/commitlint.config.js
deleted file mode 100644
index e03e6410a01e..000000000000
--- a/commitlint.config.js
+++ /dev/null
@@ -1,17 +0,0 @@
-const workspace = require('./workspace.json');
-
-const packages = Object.keys(workspace.projects).map(name =>
- name.charAt(0) === '@' ? name.split('/')[1] : name,
-);
-
-module.exports = {
- extends: ['@commitlint/config-conventional'],
- rules: {
- 'body-max-length': [0],
- 'body-max-line-length': [0],
- 'footer-max-length': [0],
- 'footer-max-line-length': [0],
- 'header-max-length': [0],
- 'scope-enum': [2, 'always', packages],
- },
-};
diff --git a/lerna.json b/lerna.json
index 1698ca617214..ff883e18240b 100644
--- a/lerna.json
+++ b/lerna.json
@@ -1,5 +1,5 @@
{
- "version": "5.27.0",
+ "version": "5.27.1",
"npmClient": "yarn",
"useWorkspaces": true,
"stream": true
diff --git a/package.json b/package.json
index 1e28e5f8d3a6..264427094dd1 100644
--- a/package.json
+++ b/package.json
@@ -29,7 +29,6 @@
"check-format": "prettier --list-different \"./**/*.{md,mdx,ts,mts,cts,js,cjs,mjs,tsx,jsx}\"",
"check-spelling": "cspell --config=.cspell.json \"**/*.{md,mdx,ts,mts,cts,js,cjs,mjs,tsx,jsx}\"",
"clean": "lerna clean && lerna run clean",
- "cz": "git-cz",
"format": "prettier --write \"./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}\"",
"generate-contributors": "yarn ts-node --transpile-only ./tools/generate-contributors.ts",
"generate-sponsors": "yarn ts-node --transpile-only ./tools/generate-sponsors.ts",
@@ -46,11 +45,6 @@
"test-integration": "yarn jest -c ./tests/integration/jest.config.js",
"typecheck": "nx run-many --target=typecheck --all --parallel"
},
- "config": {
- "commitizen": {
- "path": "./node_modules/cz-conventional-changelog"
- }
- },
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
@@ -59,8 +53,6 @@
"@babel/eslint-parser": "^7.18.2",
"@babel/parser": "^7.18.0",
"@babel/types": "^7.18.2",
- "@commitlint/cli": "^16.2.4",
- "@commitlint/config-conventional": "^16.2.4",
"@nrwl/cli": "14.1.4",
"@nrwl/nx-cloud": "14.0.3",
"@nrwl/tao": "14.1.4",
@@ -85,7 +77,6 @@
"cross-env": "^7.0.3",
"cross-fetch": "^3.1.5",
"cspell": "^5.20.0",
- "cz-conventional-changelog": "^3.3.0",
"downlevel-dts": "^0.9.0",
"enhanced-resolve": "^5.9.3",
"eslint": "^8.15.0",
diff --git a/packages/ast-spec/CHANGELOG.md b/packages/ast-spec/CHANGELOG.md
index a56f85403e2c..28fdf351c002 100644
--- a/packages/ast-spec/CHANGELOG.md
+++ b/packages/ast-spec/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/ast-spec
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/ast-spec/package.json b/packages/ast-spec/package.json
index 23ea47e00c2c..57a9b87464cc 100644
--- a/packages/ast-spec/package.json
+++ b/packages/ast-spec/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/ast-spec",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "TypeScript-ESTree AST spec",
"private": true,
"keywords": [
diff --git a/packages/eslint-plugin-internal/CHANGELOG.md b/packages/eslint-plugin-internal/CHANGELOG.md
index 055bf2508530..ec72cec735d9 100644
--- a/packages/eslint-plugin-internal/CHANGELOG.md
+++ b/packages/eslint-plugin-internal/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/eslint-plugin-internal
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json
index 6b712f24a392..072d420171bb 100644
--- a/packages/eslint-plugin-internal/package.json
+++ b/packages/eslint-plugin-internal/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/eslint-plugin-internal",
- "version": "5.27.0",
+ "version": "5.27.1",
"private": true,
"main": "dist/index.js",
"scripts": {
@@ -14,8 +14,8 @@
},
"dependencies": {
"@types/prettier": "*",
- "@typescript-eslint/scope-manager": "5.27.0",
- "@typescript-eslint/utils": "5.27.0",
+ "@typescript-eslint/scope-manager": "5.27.1",
+ "@typescript-eslint/utils": "5.27.1",
"prettier": "*"
}
}
diff --git a/packages/eslint-plugin-tslint/CHANGELOG.md b/packages/eslint-plugin-tslint/CHANGELOG.md
index faa564020888..407e968c3686 100644
--- a/packages/eslint-plugin-tslint/CHANGELOG.md
+++ b/packages/eslint-plugin-tslint/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/eslint-plugin-tslint
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/eslint-plugin-tslint/package.json b/packages/eslint-plugin-tslint/package.json
index adbc60ef36f0..03a3cf55d8d4 100644
--- a/packages/eslint-plugin-tslint/package.json
+++ b/packages/eslint-plugin-tslint/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/eslint-plugin-tslint",
- "version": "5.27.0",
+ "version": "5.27.1",
"main": "dist/index.js",
"typings": "src/index.ts",
"description": "TSLint wrapper plugin for ESLint",
@@ -38,7 +38,7 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
- "@typescript-eslint/utils": "5.27.0",
+ "@typescript-eslint/utils": "5.27.1",
"lodash": "^4.17.21"
},
"peerDependencies": {
@@ -48,6 +48,6 @@
},
"devDependencies": {
"@types/lodash": "*",
- "@typescript-eslint/parser": "5.27.0"
+ "@typescript-eslint/parser": "5.27.1"
}
}
diff --git a/packages/eslint-plugin/CHANGELOG.md b/packages/eslint-plugin/CHANGELOG.md
index f7a4ed973db3..f0cccd0ce94d 100644
--- a/packages/eslint-plugin/CHANGELOG.md
+++ b/packages/eslint-plugin/CHANGELOG.md
@@ -3,6 +3,19 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+
+### Bug Fixes
+
+* **eslint-plugin:** [space-infix-ops] correct PropertyDefinition with typeAnnotation ([#5113](https://github.com/typescript-eslint/typescript-eslint/issues/5113)) ([d320174](https://github.com/typescript-eslint/typescript-eslint/commit/d320174f40a74b34e6b6e4c88128ef6e736311d8))
+* **eslint-plugin:** [space-infix-ops] regression fix for conditional types ([#5135](https://github.com/typescript-eslint/typescript-eslint/issues/5135)) ([e5238c8](https://github.com/typescript-eslint/typescript-eslint/commit/e5238c84e56e7c34174b2c6f1e3ea59456797c2f))
+* **eslint-plugin:** [space-infix-ops] regression fix for type aliases ([#5138](https://github.com/typescript-eslint/typescript-eslint/issues/5138)) ([4e13deb](https://github.com/typescript-eslint/typescript-eslint/commit/4e13deb05fbd8724996156b15b65f6a66794a7cc))
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/eslint-plugin/docs/rules/TEMPLATE.md b/packages/eslint-plugin/docs/rules/TEMPLATE.md
index c2c7136fe3e7..7528ad501a31 100644
--- a/packages/eslint-plugin/docs/rules/TEMPLATE.md
+++ b/packages/eslint-plugin/docs/rules/TEMPLATE.md
@@ -51,11 +51,3 @@ const defaultOptions: Options = {
To fill out: why wouldn't you want to use this rule?
For example if this rule requires a feature released in a certain TS version.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.md b/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.md
index 7acea9b8be0d..a100f905acc5 100644
--- a/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.md
+++ b/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.md
@@ -104,11 +104,3 @@ If you don't care about the general structure of the code, then you will not nee
## Related To
- TSLint: [adjacent-overload-signatures](https://palantir.github.io/tslint/rules/adjacent-overload-signatures/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/array-type.md b/packages/eslint-plugin/docs/rules/array-type.md
index 6755f3d1975a..5898344fe3e3 100644
--- a/packages/eslint-plugin/docs/rules/array-type.md
+++ b/packages/eslint-plugin/docs/rules/array-type.md
@@ -122,11 +122,3 @@ This matrix lists all possible option combinations and their expected results fo
## Related To
- TSLint: [array-type](https://palantir.github.io/tslint/rules/array-type/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/await-thenable.md b/packages/eslint-plugin/docs/rules/await-thenable.md
index f308a202e621..10e3fee45cec 100644
--- a/packages/eslint-plugin/docs/rules/await-thenable.md
+++ b/packages/eslint-plugin/docs/rules/await-thenable.md
@@ -50,11 +50,3 @@ This is generally not preferred, but can sometimes be useful for visual consiste
## Related To
- TSLint: ['await-promise'](https://palantir.github.io/tslint/rules/await-promise)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/ban-ts-comment.md b/packages/eslint-plugin/docs/rules/ban-ts-comment.md
index 4233b7807ab9..671cd754023e 100644
--- a/packages/eslint-plugin/docs/rules/ban-ts-comment.md
+++ b/packages/eslint-plugin/docs/rules/ban-ts-comment.md
@@ -142,11 +142,3 @@ If you want to use all of the TypeScript directives.
## Related To
- TSLint: [ban-ts-ignore](https://palantir.github.io/tslint/rules/ban-ts-ignore/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/ban-tslint-comment.md b/packages/eslint-plugin/docs/rules/ban-tslint-comment.md
index 88bf65ff75ba..b89e9929167a 100644
--- a/packages/eslint-plugin/docs/rules/ban-tslint-comment.md
+++ b/packages/eslint-plugin/docs/rules/ban-tslint-comment.md
@@ -46,11 +46,3 @@ This rule is not configurable.
## When Not To Use It
If you are still using TSLint.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/ban-types.md b/packages/eslint-plugin/docs/rules/ban-types.md
index 848e88a5522e..54186598faa7 100644
--- a/packages/eslint-plugin/docs/rules/ban-types.md
+++ b/packages/eslint-plugin/docs/rules/ban-types.md
@@ -201,11 +201,3 @@ const curly2: Record<'a', string> = { a: 'string' };
## Related To
- TSLint: [ban-types](https://palantir.github.io/tslint/rules/ban-types)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/brace-style.md b/packages/eslint-plugin/docs/rules/brace-style.md
index 9701ee8ce35c..a21884184608 100644
--- a/packages/eslint-plugin/docs/rules/brace-style.md
+++ b/packages/eslint-plugin/docs/rules/brace-style.md
@@ -26,11 +26,3 @@ See [`eslint/brace-style` options](https://eslint.org/docs/rules/brace-style#opt
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/brace-style.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/class-literal-property-style.md b/packages/eslint-plugin/docs/rules/class-literal-property-style.md
index 6590109837bb..afbdc96fc187 100644
--- a/packages/eslint-plugin/docs/rules/class-literal-property-style.md
+++ b/packages/eslint-plugin/docs/rules/class-literal-property-style.md
@@ -108,11 +108,3 @@ class Mx {
When you have no strong preference, or do not wish to enforce a particular style
for how literal values are exposed by your classes.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/comma-dangle.md b/packages/eslint-plugin/docs/rules/comma-dangle.md
index da0cff435505..f18992fff775 100644
--- a/packages/eslint-plugin/docs/rules/comma-dangle.md
+++ b/packages/eslint-plugin/docs/rules/comma-dangle.md
@@ -38,11 +38,3 @@ This rule has a string option and an object option.
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/comma-dangle.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/comma-spacing.md b/packages/eslint-plugin/docs/rules/comma-spacing.md
index e598c20fcf9e..7fa6056759dc 100644
--- a/packages/eslint-plugin/docs/rules/comma-spacing.md
+++ b/packages/eslint-plugin/docs/rules/comma-spacing.md
@@ -26,11 +26,3 @@ See [`eslint/comma-spacing` options](https://eslint.org/docs/rules/comma-spacing
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/comma-spacing.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/consistent-indexed-object-style.md b/packages/eslint-plugin/docs/rules/consistent-indexed-object-style.md
index b0935628db62..f61a4f68fdde 100644
--- a/packages/eslint-plugin/docs/rules/consistent-indexed-object-style.md
+++ b/packages/eslint-plugin/docs/rules/consistent-indexed-object-style.md
@@ -82,11 +82,3 @@ type Foo = {
[key: string]: unknown;
};
```
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/consistent-type-assertions.md b/packages/eslint-plugin/docs/rules/consistent-type-assertions.md
index 6cf35c5c160b..609ad5dac41f 100644
--- a/packages/eslint-plugin/docs/rules/consistent-type-assertions.md
+++ b/packages/eslint-plugin/docs/rules/consistent-type-assertions.md
@@ -116,11 +116,3 @@ If you do not want to enforce consistent type assertions.
- TSLint: [no-angle-bracket-type-assertion](https://palantir.github.io/tslint/rules/no-angle-bracket-type-assertion/)
- TSLint: [no-object-literal-type-assertion](https://palantir.github.io/tslint/rules/no-object-literal-type-assertion/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/consistent-type-definitions.md b/packages/eslint-plugin/docs/rules/consistent-type-definitions.md
index 3be2359a13c4..47d0f97e5549 100644
--- a/packages/eslint-plugin/docs/rules/consistent-type-definitions.md
+++ b/packages/eslint-plugin/docs/rules/consistent-type-definitions.md
@@ -84,11 +84,3 @@ If you specifically want to use an interface or type literal for stylistic reaso
## Related To
- TSLint: [interface-over-type-literal](https://palantir.github.io/tslint/rules/interface-over-type-literal/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/consistent-type-exports.md b/packages/eslint-plugin/docs/rules/consistent-type-exports.md
index f38230dd88e5..bd10a616261c 100644
--- a/packages/eslint-plugin/docs/rules/consistent-type-exports.md
+++ b/packages/eslint-plugin/docs/rules/consistent-type-exports.md
@@ -109,11 +109,3 @@ export { Button, type ButtonProps } from 'some-library';
- If you are using a TypeScript version less than 3.8, then you will not be able to use this rule as type exports are not supported.
- If you specifically want to use both export kinds for stylistic reasons, you can disable this rule.
- If you use `--isolatedModules` the compiler would error if a type is not re-exported using `export type`. If you also don't wish to enforce one style over the other, you can disable this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/consistent-type-imports.md b/packages/eslint-plugin/docs/rules/consistent-type-imports.md
index f3d96bec5ceb..47022b04ec57 100644
--- a/packages/eslint-plugin/docs/rules/consistent-type-imports.md
+++ b/packages/eslint-plugin/docs/rules/consistent-type-imports.md
@@ -64,11 +64,3 @@ const x: import('Bar') = 1;
- If you are not using TypeScript 3.8 (or greater), then you will not be able to use this rule, as type-only imports are not allowed.
- If you specifically want to use both import kinds for stylistic reasons, you can disable this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/default-param-last.md b/packages/eslint-plugin/docs/rules/default-param-last.md
index 5d28232c5ebb..5db33411d1d5 100644
--- a/packages/eslint-plugin/docs/rules/default-param-last.md
+++ b/packages/eslint-plugin/docs/rules/default-param-last.md
@@ -62,11 +62,3 @@ See [`eslint/default-param-last` options](https://eslint.org/docs/rules/default-
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/default-param-last.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/dot-notation.md b/packages/eslint-plugin/docs/rules/dot-notation.md
index 01331873e47d..414170416846 100644
--- a/packages/eslint-plugin/docs/rules/dot-notation.md
+++ b/packages/eslint-plugin/docs/rules/dot-notation.md
@@ -87,11 +87,3 @@ If the TypeScript compiler option `noPropertyAccessFromIndexSignature` is set to
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/dot-notation.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/explicit-function-return-type.md b/packages/eslint-plugin/docs/rules/explicit-function-return-type.md
index a8845d5b1586..9e3ff78a3665 100644
--- a/packages/eslint-plugin/docs/rules/explicit-function-return-type.md
+++ b/packages/eslint-plugin/docs/rules/explicit-function-return-type.md
@@ -290,11 +290,3 @@ you will not need this rule.
## Further Reading
- TypeScript [Functions](https://www.typescriptlang.org/docs/handbook/functions.html#function-types)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md b/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md
index 70100a9bf832..c09c46800989 100644
--- a/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md
+++ b/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md
@@ -348,11 +348,3 @@ If you think defaulting to public is a good default, then you should consider us
## Related To
- TSLint: [member-access](http://palantir.github.io/tslint/rules/member-access/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.md b/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.md
index 19956f0cfe8a..2b5aa6243542 100644
--- a/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.md
+++ b/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.md
@@ -285,11 +285,3 @@ If you wish to make sure all functions have explicit return types, as opposed to
## Further Reading
- TypeScript [Functions](https://www.typescriptlang.org/docs/handbook/functions.html#function-types)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/func-call-spacing.md b/packages/eslint-plugin/docs/rules/func-call-spacing.md
index cd411013659b..88b73e2eda25 100644
--- a/packages/eslint-plugin/docs/rules/func-call-spacing.md
+++ b/packages/eslint-plugin/docs/rules/func-call-spacing.md
@@ -26,11 +26,3 @@ See [`eslint/func-call-spacing` options](https://eslint.org/docs/rules/func-call
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/func-call-spacing.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/indent.md b/packages/eslint-plugin/docs/rules/indent.md
index d093ea00f5e4..5d732a305bf4 100644
--- a/packages/eslint-plugin/docs/rules/indent.md
+++ b/packages/eslint-plugin/docs/rules/indent.md
@@ -30,11 +30,3 @@ See [`eslint/indent` options](https://eslint.org/docs/rules/indent#options).
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/indent.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/init-declarations.md b/packages/eslint-plugin/docs/rules/init-declarations.md
index c64c009ba9cd..6a4ce4786512 100644
--- a/packages/eslint-plugin/docs/rules/init-declarations.md
+++ b/packages/eslint-plugin/docs/rules/init-declarations.md
@@ -26,11 +26,3 @@ See [`eslint/init-declarations` options](https://eslint.org/docs/rules/init-decl
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/init-declarations.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/keyword-spacing.md b/packages/eslint-plugin/docs/rules/keyword-spacing.md
index b0565acbe600..4b9b386b940f 100644
--- a/packages/eslint-plugin/docs/rules/keyword-spacing.md
+++ b/packages/eslint-plugin/docs/rules/keyword-spacing.md
@@ -26,11 +26,3 @@ See [`eslint/keyword-spacing` options](https://eslint.org/docs/rules/keyword-spa
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/keyword-spacing.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/lines-between-class-members.md b/packages/eslint-plugin/docs/rules/lines-between-class-members.md
index 8581584a0a4d..8a68abe9cda1 100644
--- a/packages/eslint-plugin/docs/rules/lines-between-class-members.md
+++ b/packages/eslint-plugin/docs/rules/lines-between-class-members.md
@@ -77,11 +77,3 @@ class foo {
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/lines-between-class-members.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/member-delimiter-style.md b/packages/eslint-plugin/docs/rules/member-delimiter-style.md
index 644886146c13..858d3777d069 100644
--- a/packages/eslint-plugin/docs/rules/member-delimiter-style.md
+++ b/packages/eslint-plugin/docs/rules/member-delimiter-style.md
@@ -208,11 +208,3 @@ type FooBar = { name: string; greet(): string }
## When Not To Use It
If you don't care about enforcing a consistent member delimiter in interfaces and type literals, then you will not need this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/member-ordering.md b/packages/eslint-plugin/docs/rules/member-ordering.md
index 19f5792dfe3a..3f1b0536c975 100644
--- a/packages/eslint-plugin/docs/rules/member-ordering.md
+++ b/packages/eslint-plugin/docs/rules/member-ordering.md
@@ -1163,11 +1163,3 @@ If you don't care about the general order of your members, then you will not nee
## Related To
- TSLint: [member-ordering](https://palantir.github.io/tslint/rules/member-ordering/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/method-signature-style.md b/packages/eslint-plugin/docs/rules/method-signature-style.md
index 1c3a8a0cbcde..53a6d3e17a02 100644
--- a/packages/eslint-plugin/docs/rules/method-signature-style.md
+++ b/packages/eslint-plugin/docs/rules/method-signature-style.md
@@ -104,11 +104,3 @@ type T2 = {
## When Not To Use It
If you don't want to enforce a particular style for object/interface function types, and/or if you don't use `strictFunctionTypes`, then you don't need this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/naming-convention.md b/packages/eslint-plugin/docs/rules/naming-convention.md
index 7fc4729b966e..9032119ca40d 100644
--- a/packages/eslint-plugin/docs/rules/naming-convention.md
+++ b/packages/eslint-plugin/docs/rules/naming-convention.md
@@ -700,11 +700,3 @@ You can use the `destructured` modifier to match these names, and explicitly set
## When Not To Use It
If you do not want to enforce naming conventions for anything.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-array-constructor.md b/packages/eslint-plugin/docs/rules/no-array-constructor.md
index 72ad9f760b86..01fd843caf16 100644
--- a/packages/eslint-plugin/docs/rules/no-array-constructor.md
+++ b/packages/eslint-plugin/docs/rules/no-array-constructor.md
@@ -49,11 +49,3 @@ See [`eslint/no-array-constructor` options](https://eslint.org/docs/rules/no-arr
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-array-constructor.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-base-to-string.md b/packages/eslint-plugin/docs/rules/no-base-to-string.md
index e8e0cf85384b..1e5cd41c94aa 100644
--- a/packages/eslint-plugin/docs/rules/no-base-to-string.md
+++ b/packages/eslint-plugin/docs/rules/no-base-to-string.md
@@ -89,11 +89,3 @@ let text = `${value}`;
If you don't mind `"[object Object]"` in your strings, then you will not need this rule.
- [`Object.prototype.toString()` MDN documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md b/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md
index 53b1617a0a85..77d11f68d211 100644
--- a/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md
+++ b/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md
@@ -61,11 +61,3 @@ If you don't care about this confusion, then you will not need this rule.
## Further Reading
- [`Issue: Easy misunderstanding: "! ==="`](https://github.com/microsoft/TypeScript/issues/37837) in [TypeScript repo](https://github.com/microsoft/TypeScript)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-confusing-void-expression.md b/packages/eslint-plugin/docs/rules/no-confusing-void-expression.md
index 88c295ae3bbf..fa6685aae33c 100644
--- a/packages/eslint-plugin/docs/rules/no-confusing-void-expression.md
+++ b/packages/eslint-plugin/docs/rules/no-confusing-void-expression.md
@@ -151,11 +151,3 @@ Also, if you prefer concise coding style then also don't use it.
## Related To
- TSLint: ['no-void-expression'](https://palantir.github.io/tslint/rules/no-void-expression/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-dupe-class-members.md b/packages/eslint-plugin/docs/rules/no-dupe-class-members.md
index 3d9c774cd12d..e31b8548c660 100644
--- a/packages/eslint-plugin/docs/rules/no-dupe-class-members.md
+++ b/packages/eslint-plugin/docs/rules/no-dupe-class-members.md
@@ -26,11 +26,3 @@ See [`eslint/no-dupe-class-members` options](https://eslint.org/docs/rules/no-du
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-dupe-class-members.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.md b/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.md
index 41fa24f4f541..6b69d540c55f 100644
--- a/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.md
+++ b/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.md
@@ -54,11 +54,3 @@ enum E {
```
This rule is not configurable.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-duplicate-imports.md b/packages/eslint-plugin/docs/rules/no-duplicate-imports.md
index 74f1ebb98073..90ab3da41235 100644
--- a/packages/eslint-plugin/docs/rules/no-duplicate-imports.md
+++ b/packages/eslint-plugin/docs/rules/no-duplicate-imports.md
@@ -30,11 +30,3 @@ See [`eslint/no-duplicate-imports` options](https://eslint.org/docs/rules/no-dup
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-duplicate-imports.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-dynamic-delete.md b/packages/eslint-plugin/docs/rules/no-dynamic-delete.md
index 2b5174e21baf..7face38474dd 100644
--- a/packages/eslint-plugin/docs/rules/no-dynamic-delete.md
+++ b/packages/eslint-plugin/docs/rules/no-dynamic-delete.md
@@ -64,11 +64,3 @@ Even repeated minor performance slowdowns likely do not significantly affect you
## Related To
- TSLint: [no-dynamic-delete](https://palantir.github.io/tslint/rules/no-dynamic-delete)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-empty-function.md b/packages/eslint-plugin/docs/rules/no-empty-function.md
index 4cf87c54fb35..e23cc10bdd43 100644
--- a/packages/eslint-plugin/docs/rules/no-empty-function.md
+++ b/packages/eslint-plugin/docs/rules/no-empty-function.md
@@ -109,11 +109,3 @@ class Foo extends Base {
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-empty-function.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-empty-interface.md b/packages/eslint-plugin/docs/rules/no-empty-interface.md
index 1b3bdd6bcf59..8785b13a5798 100644
--- a/packages/eslint-plugin/docs/rules/no-empty-interface.md
+++ b/packages/eslint-plugin/docs/rules/no-empty-interface.md
@@ -68,11 +68,3 @@ If you don't care about having empty/meaningless interfaces, then you will not n
## Related To
- TSLint: [no-empty-interface](https://palantir.github.io/tslint/rules/no-empty-interface/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-explicit-any.md b/packages/eslint-plugin/docs/rules/no-explicit-any.md
index b1f2cbcffc28..a9ba5619d90f 100644
--- a/packages/eslint-plugin/docs/rules/no-explicit-any.md
+++ b/packages/eslint-plugin/docs/rules/no-explicit-any.md
@@ -183,11 +183,3 @@ and you want to be able to specify `any`.
## Related To
- TSLint: [no-any](https://palantir.github.io/tslint/rules/no-any/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.md b/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.md
index aa5567602b06..43cfacf756ff 100644
--- a/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.md
+++ b/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.md
@@ -58,11 +58,3 @@ function foo(bar?: { n: number }) {
```
This rule is not configurable.
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-extra-parens.md b/packages/eslint-plugin/docs/rules/no-extra-parens.md
index d2e120376419..f123b70d1417 100644
--- a/packages/eslint-plugin/docs/rules/no-extra-parens.md
+++ b/packages/eslint-plugin/docs/rules/no-extra-parens.md
@@ -26,11 +26,3 @@ See [`eslint/no-extra-parens` options](https://eslint.org/docs/rules/no-extra-pa
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-extra-parens.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-extra-semi.md b/packages/eslint-plugin/docs/rules/no-extra-semi.md
index b2bc866d6129..b0649081b5c3 100644
--- a/packages/eslint-plugin/docs/rules/no-extra-semi.md
+++ b/packages/eslint-plugin/docs/rules/no-extra-semi.md
@@ -26,11 +26,3 @@ See [`eslint/no-extra-semi` options](https://eslint.org/docs/rules/no-extra-semi
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-extra-semi.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-extraneous-class.md b/packages/eslint-plugin/docs/rules/no-extraneous-class.md
index 121305b16f3f..aa221ce17fa0 100644
--- a/packages/eslint-plugin/docs/rules/no-extraneous-class.md
+++ b/packages/eslint-plugin/docs/rules/no-extraneous-class.md
@@ -2,14 +2,21 @@
Disallows classes used as namespaces.
-This rule warns when a class is accidentally used as a namespace.
+This rule warns when a class has no non-static members, such as for a class used exclusively as a static namespace.
## Rule Details
-From TSLintβs docs:
+Users who come from a [OOP](https://en.wikipedia.org/wiki/Object-oriented_programming) paradigm may wrap their utility functions in an extra class, instead of putting them at the top level of an ECMAScript module.
+Doing so is generally unnecessary in JavaScript and TypeScript projects.
-> Users who come from a Java-style OO language may wrap their utility functions in an extra class,
-> instead of putting them at the top level.
+- Wrapper classes add extra cognitive complexity to code without adding any structural improvements
+ - Whatever would be put on them, such as utility functions, are already organized by virtue of being in a module.
+ - As an alternative, you can always `import * as ...` the module to get all of them in a single object.
+- IDEs can't provide as good suggestions for static class or namespace imported properties when you start typing property names
+- It's more difficult to statically analyze code for unused variables, etc. when they're all on the class (see: [Finding dead code (and dead types) in TypeScript](https://effectivetypescript.com/2020/10/20/tsprune)).
+
+This rule also flags classes that have only a constructor and no fields.
+Those classes can generally be replaced with a standalone function.
Examples of code for this rule:
@@ -18,18 +25,16 @@ Examples of code for this rule:
### β Incorrect
```ts
-class EmptyClass {}
+class StaticConstants {
+ static readonly version = 42;
-class ConstructorOnly {
- constructor() {
- foo();
+ static isProduction() {
+ return process.env.NODE_ENV === 'production';
}
}
-// Use an object instead:
-class StaticOnly {
- static version = 42;
- static hello() {
+class HelloWorldLogger {
+ constructor() {
console.log('Hello, world!');
}
}
@@ -38,18 +43,151 @@ class StaticOnly {
### β
Correct
```ts
-class EmptyClass extends SuperClass {}
+export const version = 42;
+
+export function isProduction() {
+ return process.env.NODE_ENV === 'production';
+}
+
+function logHelloWorld() {
+ console.log('Hello, world!');
+}
+```
+
+## Alternatives
+
+### Individual Exports (Recommended)
+
+Instead of using a static utility class we recommend you individually export the utilities from your module.
+
+
+
+#### β Incorrect
+
+```ts
+export class Utilities {
+ static util1() {
+ return Utilities.util3();
+ }
+
+ static util2() {
+ /* ... */
+ }
+
+ static util3() {
+ /* ... */
+ }
+}
+```
+
+#### β
Correct
+
+```ts
+export function util1() {
+ return util3();
+}
-class ParameterProperties {
- constructor(public name: string) {}
+export function util2() {
+ /* ... */
}
-const StaticOnly = {
- version: 42,
- hello() {
+export function util3() {
+ /* ... */
+}
+```
+
+### Namespace Imports (Not Recommended)
+
+If you strongly prefer to have all constructs from a module available as properties of a single object, you can `import * as` the module.
+This is known as a "namespace import".
+Namespace imports are sometimes preferable because they keep all properties nested and don't need to be changed as you start or stop using various properties from the module.
+
+However, namespace imports are impacted by these downsides:
+
+- They also don't play as well with tree shaking in modern bundlers
+- They require a name prefix before each property's usage
+
+
+
+#### β Incorrect
+
+```ts
+// utilities.ts
+export class Utilities {
+ static sayHello() {
console.log('Hello, world!');
- },
-};
+ }
+}
+
+// consumers.ts
+import { Utilities } from './utilities';
+
+Utilities.sayHello();
+```
+
+#### β οΈ Namespace Imports
+
+```ts
+// utilities.ts
+export function sayHello() {
+ console.log('Hello, world!');
+}
+
+// consumers.ts
+import * as utilities from './utilities';
+
+utilities.sayHello();
+```
+
+#### β
Standalone Imports
+
+```ts
+// utilities.ts
+export function sayHello() {
+ console.log('Hello, world!');
+}
+
+// consumers.ts
+import { sayHello } from './utilities';
+
+sayHello();
+```
+
+### Notes on Mutating Variables
+
+One case you need to be careful of is exporting mutable variables.
+While class properties can be mutated externally, exported variables are always constant.
+This means that importers can only ever read the first value they are assigned and cannot write to the variables.
+
+Needing to write to an exported variable is very rare and is generally considered a code smell.
+If you do need it you can accomplish it using getter and setter functions:
+
+
+
+#### β Incorrect
+
+```ts
+export class Utilities {
+ static mutableCount = 1;
+
+ static incrementCount() {
+ Utilities.mutableCount += 1;
+ }
+}
+```
+
+#### β
Correct
+
+```ts
+let mutableCount = 1;
+
+export function getMutableCount() {
+ return mutableField;
+}
+
+export function incrementCount() {
+ mutableField += 1;
+}
```
## Options
@@ -76,19 +214,105 @@ const defaultOptions: Options = {
};
```
+This rule normally bans classes that are empty (have no constructor or fields).
+The rule's options each add an exemption for a specific type of class.
+
+### `allowConstructorOnly`
+
+`allowConstructorOnly` adds an exemption for classes that have only a constructor and no fields.
+
+
+
+#### β Incorrect
+
+```ts
+class NoFields {}
+```
+
+#### β
Correct
+
+```ts
+class NoFields {
+ constructor() {
+ console.log('Hello, world!');
+ }
+}
+```
+
+### `allowEmpty`
+
+The `allowEmpty` option adds an exemption for classes that are entirely empty.
+
+
+
+#### β Incorrect
+
+```ts
+class NoFields {
+ constructor() {
+ console.log('Hello, world!');
+ }
+}
+```
+
+#### β
Correct
+
+```ts
+class NoFields {}
+```
+
+### `allowStaticOnly`
+
+The `allowStaticOnly` option adds an exemption for classes that only contain static members.
+
+:::caution
+We strongly recommend against the `allowStaticOnly` exemption.
+It works against this rule's primary purpose of discouraging classes used only for static members.
+:::
+
+
+
+#### β Incorrect
+
+```ts
+class EmptyClass {}
+```
+
+#### β
Correct
+
+```ts
+class NotEmptyClass {
+ static version = 42;
+}
+```
+
+### `allowWithDecorator`
+
+The `allowWithDecorator` option adds an exemption for classes that contain a member decorated with a `@` decorator.
+
+
+
+#### β Incorrect
+
+```ts
+class Constants {
+ static readonly version = 42;
+}
+```
+
+#### β
Correct
+
+```ts
+class Constants {
+ @logOnRead()
+ static readonly version = 42;
+}
+```
+
## When Not To Use It
-You can disable this rule if you donβt have anyone who would make these kinds of mistakes on your
-team or if you use classes as namespaces.
+You can disable this rule if you are unable -or unwilling- to switch off using classes as namespaces.
## Related To
[`no-unnecessary-class`](https://palantir.github.io/tslint/rules/no-unnecessary-class/) from TSLint
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-floating-promises.md b/packages/eslint-plugin/docs/rules/no-floating-promises.md
index 72ce6e2a5061..1f365ab59a62 100644
--- a/packages/eslint-plugin/docs/rules/no-floating-promises.md
+++ b/packages/eslint-plugin/docs/rules/no-floating-promises.md
@@ -119,11 +119,3 @@ If you do not use Promise-like values in your codebase, or want to allow them to
- [`no-misused-promises`](./no-misused-promises.md)
- TSLint: ['no-floating-promises'](https://palantir.github.io/tslint/rules/no-floating-promises/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-for-in-array.md b/packages/eslint-plugin/docs/rules/no-for-in-array.md
index 4429248845c8..e087ddf83e21 100644
--- a/packages/eslint-plugin/docs/rules/no-for-in-array.md
+++ b/packages/eslint-plugin/docs/rules/no-for-in-array.md
@@ -61,11 +61,3 @@ If you want to iterate through a loop using the indices in an array as strings,
## Related To
- TSLint: ['no-for-in-array'](https://palantir.github.io/tslint/rules/no-for-in-array/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md b/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md
index 4bd9c2c1b5f2..40530896835c 100644
--- a/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md
+++ b/packages/eslint-plugin/docs/rules/no-implicit-any-catch.md
@@ -82,11 +82,3 @@ If you are not using TypeScript 4.0 (or greater), then you will not be able to u
## Further Reading
- [TypeScript 4.0 Release Notes](https://devblogs.microsoft.com/typescript/announcing-typescript-4-0/#unknown-on-catch)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-implied-eval.md b/packages/eslint-plugin/docs/rules/no-implied-eval.md
index 74a1c3bbcabb..d39a6f70609f 100644
--- a/packages/eslint-plugin/docs/rules/no-implied-eval.md
+++ b/packages/eslint-plugin/docs/rules/no-implied-eval.md
@@ -113,11 +113,3 @@ If you want to allow `new Function()` or `setTimeout()`, `setInterval()`, `setIm
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-implied-eval.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-inferrable-types.md b/packages/eslint-plugin/docs/rules/no-inferrable-types.md
index 67fd3e2f696b..d27c04821309 100644
--- a/packages/eslint-plugin/docs/rules/no-inferrable-types.md
+++ b/packages/eslint-plugin/docs/rules/no-inferrable-types.md
@@ -152,11 +152,3 @@ TypeScript [Inference](https://www.typescriptlang.org/docs/handbook/type-inferen
## Related To
TSLint: [no-inferrable-types](https://palantir.github.io/tslint/rules/no-inferrable-types/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-invalid-this.md b/packages/eslint-plugin/docs/rules/no-invalid-this.md
index 18b191f022d4..5061e60559d1 100644
--- a/packages/eslint-plugin/docs/rules/no-invalid-this.md
+++ b/packages/eslint-plugin/docs/rules/no-invalid-this.md
@@ -30,11 +30,3 @@ When you are indifferent as to how your variables are initialized.
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-invalid-this.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-invalid-void-type.md b/packages/eslint-plugin/docs/rules/no-invalid-void-type.md
index 545d49a297a4..c3d3c3d40f99 100644
--- a/packages/eslint-plugin/docs/rules/no-invalid-void-type.md
+++ b/packages/eslint-plugin/docs/rules/no-invalid-void-type.md
@@ -130,11 +130,3 @@ or in invalid places, then you don't need this rule.
## Related To
- TSLint: [invalid-void](https://palantir.github.io/tslint/rules/invalid-void/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-loop-func.md b/packages/eslint-plugin/docs/rules/no-loop-func.md
index 49a88add985a..890bd80ecc06 100644
--- a/packages/eslint-plugin/docs/rules/no-loop-func.md
+++ b/packages/eslint-plugin/docs/rules/no-loop-func.md
@@ -26,11 +26,3 @@ See [`eslint/no-loop-func` options](https://eslint.org/docs/rules/no-loop-func#o
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-loop-func.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-loss-of-precision.md b/packages/eslint-plugin/docs/rules/no-loss-of-precision.md
index 9ef84df7e5f9..a27701afdfba 100644
--- a/packages/eslint-plugin/docs/rules/no-loss-of-precision.md
+++ b/packages/eslint-plugin/docs/rules/no-loss-of-precision.md
@@ -23,11 +23,3 @@ Note that this rule requires ESLint v7.
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-loss-of-precision.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-magic-numbers.md b/packages/eslint-plugin/docs/rules/no-magic-numbers.md
index 5d1bcaf39872..e5edc2e280d0 100644
--- a/packages/eslint-plugin/docs/rules/no-magic-numbers.md
+++ b/packages/eslint-plugin/docs/rules/no-magic-numbers.md
@@ -147,11 +147,3 @@ type Baz = Parameters[2];
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-magic-numbers.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.md b/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.md
index 13997125a85b..fa348f30808d 100644
--- a/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.md
+++ b/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.md
@@ -54,11 +54,3 @@ This rule accepts a single object option with the following default configuratio
```
- `checkNever: true` will suggest removing `void` when the argument has type `never`.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-misused-new.md b/packages/eslint-plugin/docs/rules/no-misused-new.md
index f1a35f97171a..80534080d1be 100644
--- a/packages/eslint-plugin/docs/rules/no-misused-new.md
+++ b/packages/eslint-plugin/docs/rules/no-misused-new.md
@@ -50,11 +50,3 @@ This rule is not configurable.
## Related To
- TSLint: [no-misused-new](https://palantir.github.io/tslint/rules/no-misused-new/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-misused-promises.md b/packages/eslint-plugin/docs/rules/no-misused-promises.md
index 4ae371869cd3..f3e67234c6fe 100644
--- a/packages/eslint-plugin/docs/rules/no-misused-promises.md
+++ b/packages/eslint-plugin/docs/rules/no-misused-promises.md
@@ -277,11 +277,3 @@ misuses of them outside of what the TypeScript compiler will check.
## Related To
- [`no-floating-promises`](./no-floating-promises.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-namespace.md b/packages/eslint-plugin/docs/rules/no-namespace.md
index 989bda216a49..0b2c9aa292a9 100644
--- a/packages/eslint-plugin/docs/rules/no-namespace.md
+++ b/packages/eslint-plugin/docs/rules/no-namespace.md
@@ -135,11 +135,3 @@ If you are using the ES2015 module syntax, then you will not need this rule.
## Related To
- TSLint: [no-namespace](https://palantir.github.io/tslint/rules/no-namespace/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md b/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md
index 333d31f7e4da..29eac71f2f4e 100644
--- a/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md
+++ b/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md
@@ -66,11 +66,3 @@ If you are not using TypeScript 3.7 (or greater), then you will not need to use
- [TypeScript 3.7 Release Notes](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html)
- [Nullish Coalescing Proposal](https://github.com/tc39/proposal-nullish-coalescing)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md b/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md
index e9f3a7502770..0913824ef8b7 100644
--- a/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md
+++ b/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md
@@ -65,11 +65,3 @@ If you are not using TypeScript 3.7 (or greater), then you will not need to use
- [TypeScript 3.7 Release Notes](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html)
- [Optional Chaining Proposal](https://github.com/tc39/proposal-optional-chaining/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-non-null-assertion.md b/packages/eslint-plugin/docs/rules/no-non-null-assertion.md
index 9f84436d61ca..9f2368a9522c 100644
--- a/packages/eslint-plugin/docs/rules/no-non-null-assertion.md
+++ b/packages/eslint-plugin/docs/rules/no-non-null-assertion.md
@@ -52,11 +52,3 @@ If you don't care about strict null-checking, then you will not need this rule.
## Further Reading
- [`no-non-null-assertion`](https://palantir.github.io/tslint/rules/no-non-null-assertion/) in [TSLint](https://palantir.github.io/tslint/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-parameter-properties.md b/packages/eslint-plugin/docs/rules/no-parameter-properties.md
index dd6fbe005178..8683a94c5c12 100644
--- a/packages/eslint-plugin/docs/rules/no-parameter-properties.md
+++ b/packages/eslint-plugin/docs/rules/no-parameter-properties.md
@@ -399,11 +399,3 @@ If you don't care about the using parameter properties in constructors, then you
## Related To
- TSLint: [no-parameter-properties](https://palantir.github.io/tslint/rules/no-parameter-properties/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-redeclare.md b/packages/eslint-plugin/docs/rules/no-redeclare.md
index 9a8691a7af58..6ddb0d6d7302 100644
--- a/packages/eslint-plugin/docs/rules/no-redeclare.md
+++ b/packages/eslint-plugin/docs/rules/no-redeclare.md
@@ -84,11 +84,3 @@ const something = 2;
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-redeclare.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-redundant-type-constituents.md b/packages/eslint-plugin/docs/rules/no-redundant-type-constituents.md
index 9f15f757dfb6..fc393d5c0d44 100644
--- a/packages/eslint-plugin/docs/rules/no-redundant-type-constituents.md
+++ b/packages/eslint-plugin/docs/rules/no-redundant-type-constituents.md
@@ -90,11 +90,3 @@ It also does not provide an auto-fixer just yet.
- [Intersection Types](https://www.typescriptlang.org/docs/handbook/2/objects.html#intersection-types)
- [Bottom Types](https://en.wikipedia.org/wiki/Bottom_type)
- [Top Types](https://en.wikipedia.org/wiki/Top_type)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-require-imports.md b/packages/eslint-plugin/docs/rules/no-require-imports.md
index 8344ec726c42..0d7e68bf1af8 100644
--- a/packages/eslint-plugin/docs/rules/no-require-imports.md
+++ b/packages/eslint-plugin/docs/rules/no-require-imports.md
@@ -51,11 +51,3 @@ If you don't care about TypeScript module syntax, then you will not need this ru
## Related To
- TSLint: [no-require-imports](https://palantir.github.io/tslint/rules/no-require-imports/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-restricted-imports.md b/packages/eslint-plugin/docs/rules/no-restricted-imports.md
index 683bbb78595a..2e741490d098 100644
--- a/packages/eslint-plugin/docs/rules/no-restricted-imports.md
+++ b/packages/eslint-plugin/docs/rules/no-restricted-imports.md
@@ -68,11 +68,3 @@ export type { Foo } from 'import-foo';
import type baz from 'import-baz';
export type { Baz } from 'import-baz';
```
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-shadow.md b/packages/eslint-plugin/docs/rules/no-shadow.md
index bd8500e00457..4ed7f199c2ca 100644
--- a/packages/eslint-plugin/docs/rules/no-shadow.md
+++ b/packages/eslint-plugin/docs/rules/no-shadow.md
@@ -91,11 +91,3 @@ type Func = (test: string) => typeof test;
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-shadow.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-this-alias.md b/packages/eslint-plugin/docs/rules/no-this-alias.md
index a49b165a57ac..10366b9923d5 100644
--- a/packages/eslint-plugin/docs/rules/no-this-alias.md
+++ b/packages/eslint-plugin/docs/rules/no-this-alias.md
@@ -60,11 +60,3 @@ If you need to assign `this` to variables, you shouldnβt use this rule.
## Related To
- TSLint: [`no-this-assignment`](https://palantir.github.io/tslint/rules/no-this-assignment/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-throw-literal.md b/packages/eslint-plugin/docs/rules/no-throw-literal.md
index f5c5e5bf355d..4bb8bbcc58c9 100644
--- a/packages/eslint-plugin/docs/rules/no-throw-literal.md
+++ b/packages/eslint-plugin/docs/rules/no-throw-literal.md
@@ -116,11 +116,3 @@ throw new CustomError();
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-throw-literal.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-type-alias.md b/packages/eslint-plugin/docs/rules/no-type-alias.md
index d219efd69155..650c83b44f6d 100644
--- a/packages/eslint-plugin/docs/rules/no-type-alias.md
+++ b/packages/eslint-plugin/docs/rules/no-type-alias.md
@@ -612,11 +612,3 @@ callback, etc. that would cause the code to be unreadable or impractical.
## Related To
- TSLint: [interface-over-type-literal](https://palantir.github.io/tslint/rules/interface-over-type-literal/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md b/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md
index b689f9746add..5ff5cdb13921 100644
--- a/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md
+++ b/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md
@@ -150,11 +150,3 @@ if (!(someNullCondition ?? true)) {
## Related To
- TSLint: [no-boolean-literal-compare](https://palantir.github.io/tslint/rules/no-boolean-literal-compare)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unnecessary-condition.md b/packages/eslint-plugin/docs/rules/no-unnecessary-condition.md
index 56cc1d6b47da..3c03a5655217 100644
--- a/packages/eslint-plugin/docs/rules/no-unnecessary-condition.md
+++ b/packages/eslint-plugin/docs/rules/no-unnecessary-condition.md
@@ -112,11 +112,3 @@ The main downside to using this rule is the need for type information.
- ESLint: [no-constant-condition](https://eslint.org/docs/rules/no-constant-condition) - `no-unnecessary-condition` is essentially a stronger version of `no-constant-condition`, but requires type information.
- [strict-boolean-expressions](./strict-boolean-expressions.md) - a more opinionated version of `no-unnecessary-condition`. `strict-boolean-expressions` enforces a specific code style, while `no-unnecessary-condition` is about correctness.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md b/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md
index 23576641f118..4da055e94d75 100644
--- a/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md
+++ b/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md
@@ -96,11 +96,3 @@ If you don't care about having unneeded namespace or enum qualifiers, then you d
## Related To
- TSLint: [no-unnecessary-qualifier](https://palantir.github.io/tslint/rules/no-unnecessary-qualifier/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md b/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md
index a9383d2ef704..65e4ca863711 100644
--- a/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md
+++ b/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md
@@ -70,11 +70,3 @@ This rule is not configurable.
## Related To
- TSLint: [use-default-type-parameter](https://palantir.github.io/tslint/rules/use-default-type-parameter)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md b/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md
index ddd5bf265277..6e0383656a0a 100644
--- a/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md
+++ b/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md
@@ -77,11 +77,3 @@ If you don't care about having no-op type assertions in your code, then you can
## Related To
- TSLint: [`no-unnecessary-type-assertion`](https://palantir.github.io/tslint/rules/no-unnecessary-type-assertion/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md b/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md
index e54af4015d18..b2fb9c6b2b95 100644
--- a/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md
+++ b/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md
@@ -72,11 +72,3 @@ This rule is not configurable.
## When Not To Use It
If you don't care about the specific styles of your type constraints, or never use them in the first place, then you will not need this rule.
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unsafe-argument.md b/packages/eslint-plugin/docs/rules/no-unsafe-argument.md
index 1d52e4034ef1..2e1693430c54 100644
--- a/packages/eslint-plugin/docs/rules/no-unsafe-argument.md
+++ b/packages/eslint-plugin/docs/rules/no-unsafe-argument.md
@@ -88,11 +88,3 @@ This rule is not configurable.
- [`no-explicit-any`](./no-explicit-any.md)
- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unsafe-assignment.md b/packages/eslint-plugin/docs/rules/no-unsafe-assignment.md
index 692287e9c048..b3b310d7553a 100644
--- a/packages/eslint-plugin/docs/rules/no-unsafe-assignment.md
+++ b/packages/eslint-plugin/docs/rules/no-unsafe-assignment.md
@@ -91,11 +91,3 @@ This rule is not configurable.
- [`no-explicit-any`](./no-explicit-any.md)
- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unsafe-call.md b/packages/eslint-plugin/docs/rules/no-unsafe-call.md
index 61ecadc1f10b..fbd26fa558ed 100644
--- a/packages/eslint-plugin/docs/rules/no-unsafe-call.md
+++ b/packages/eslint-plugin/docs/rules/no-unsafe-call.md
@@ -65,11 +65,3 @@ This rule is not configurable.
- [`no-explicit-any`](./no-explicit-any.md)
- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unsafe-member-access.md b/packages/eslint-plugin/docs/rules/no-unsafe-member-access.md
index 30eacf7339b2..9b19a77e5665 100644
--- a/packages/eslint-plugin/docs/rules/no-unsafe-member-access.md
+++ b/packages/eslint-plugin/docs/rules/no-unsafe-member-access.md
@@ -71,11 +71,3 @@ This rule is not configurable.
- [`no-explicit-any`](./no-explicit-any.md)
- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unsafe-return.md b/packages/eslint-plugin/docs/rules/no-unsafe-return.md
index 2ba4b7ed319f..8780f1043a95 100644
--- a/packages/eslint-plugin/docs/rules/no-unsafe-return.md
+++ b/packages/eslint-plugin/docs/rules/no-unsafe-return.md
@@ -108,11 +108,3 @@ This rule is not configurable.
- [`no-explicit-any`](./no-explicit-any.md)
- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unused-expressions.md b/packages/eslint-plugin/docs/rules/no-unused-expressions.md
index 694c685a85fc..f89aa6349e7d 100644
--- a/packages/eslint-plugin/docs/rules/no-unused-expressions.md
+++ b/packages/eslint-plugin/docs/rules/no-unused-expressions.md
@@ -26,11 +26,3 @@ See [`eslint/no-unused-expressions` options](https://eslint.org/docs/rules/no-un
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-unused-expressions.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-unused-vars.md b/packages/eslint-plugin/docs/rules/no-unused-vars.md
index 091614902bab..7b46ad3f59cf 100644
--- a/packages/eslint-plugin/docs/rules/no-unused-vars.md
+++ b/packages/eslint-plugin/docs/rules/no-unused-vars.md
@@ -26,11 +26,3 @@ See [`eslint/no-unused-vars` options](https://eslint.org/docs/rules/no-unused-va
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-unused-vars.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-use-before-define.md b/packages/eslint-plugin/docs/rules/no-use-before-define.md
index 6643cc758ae5..ec29f33c821d 100644
--- a/packages/eslint-plugin/docs/rules/no-use-before-define.md
+++ b/packages/eslint-plugin/docs/rules/no-use-before-define.md
@@ -112,11 +112,3 @@ See [`eslint/no-use-before-define` options](https://eslint.org/docs/rules/no-use
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/no-use-before-define.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-useless-constructor.md b/packages/eslint-plugin/docs/rules/no-useless-constructor.md
index 5a0297204d2b..221a0aaad202 100644
--- a/packages/eslint-plugin/docs/rules/no-useless-constructor.md
+++ b/packages/eslint-plugin/docs/rules/no-useless-constructor.md
@@ -35,11 +35,3 @@ Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/
This lint rule will report on constructors whose sole purpose is to change visibility of a parent constructor.
See [discussion on this rule's lack of type information](https://github.com/typescript-eslint/typescript-eslint/issues/3820#issuecomment-917821240) for context.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-useless-empty-export.md b/packages/eslint-plugin/docs/rules/no-useless-empty-export.md
index f38d516de3b5..94d8dc8a08c8 100644
--- a/packages/eslint-plugin/docs/rules/no-useless-empty-export.md
+++ b/packages/eslint-plugin/docs/rules/no-useless-empty-export.md
@@ -50,11 +50,3 @@ import 'some-other-module';
```
This rule is not configurable.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/no-var-requires.md b/packages/eslint-plugin/docs/rules/no-var-requires.md
index d8b663059597..b81ea919eb68 100644
--- a/packages/eslint-plugin/docs/rules/no-var-requires.md
+++ b/packages/eslint-plugin/docs/rules/no-var-requires.md
@@ -46,11 +46,3 @@ If you don't care about TypeScript module syntax, then you will not need this ru
## Related To
- TSLint: [no-var-requires](https://palantir.github.io/tslint/rules/no-var-requires/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md b/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md
index 41ce2e4905a3..ffb0d7b4e704 100644
--- a/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md
+++ b/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md
@@ -44,11 +44,3 @@ This rule is not configurable.
## When Not To Use It
If you don't mind having unnecessarily verbose type casts, you can avoid this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/object-curly-spacing.md b/packages/eslint-plugin/docs/rules/object-curly-spacing.md
index 9e9abc177e67..4789df3e14e4 100644
--- a/packages/eslint-plugin/docs/rules/object-curly-spacing.md
+++ b/packages/eslint-plugin/docs/rules/object-curly-spacing.md
@@ -26,11 +26,3 @@ See [`eslint/object-curly-spacing` options](https://eslint.org/docs/rules/object
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/object-curly-spacing.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/padding-line-between-statements.md b/packages/eslint-plugin/docs/rules/padding-line-between-statements.md
index 902a04fd097f..82f98043d4b7 100644
--- a/packages/eslint-plugin/docs/rules/padding-line-between-statements.md
+++ b/packages/eslint-plugin/docs/rules/padding-line-between-statements.md
@@ -54,11 +54,3 @@ In addition to options provided by ESLint, `interface` and `type` can be used as
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/padding-line-between-statements.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/parameter-properties.md b/packages/eslint-plugin/docs/rules/parameter-properties.md
index c36954a829cb..214753ba756b 100644
--- a/packages/eslint-plugin/docs/rules/parameter-properties.md
+++ b/packages/eslint-plugin/docs/rules/parameter-properties.md
@@ -486,11 +486,3 @@ If you don't care about the using parameter properties in constructors, then you
## Related To
- TSLint: [no-parameter-properties](https://palantir.github.io/tslint/rules/no-parameter-properties/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-as-const.md b/packages/eslint-plugin/docs/rules/prefer-as-const.md
index 0ce7b4320132..76d3dede5472 100644
--- a/packages/eslint-plugin/docs/rules/prefer-as-const.md
+++ b/packages/eslint-plugin/docs/rules/prefer-as-const.md
@@ -47,11 +47,3 @@ This rule is not configurable.
## When Not To Use It
If you are using TypeScript < 3.4
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-enum-initializers.md b/packages/eslint-plugin/docs/rules/prefer-enum-initializers.md
index 6d18d33a823c..fb3a24494d46 100644
--- a/packages/eslint-plugin/docs/rules/prefer-enum-initializers.md
+++ b/packages/eslint-plugin/docs/rules/prefer-enum-initializers.md
@@ -87,11 +87,3 @@ This rule is not configurable.
## When Not To Use It
If you don't care about `enum`s having implicit values you can safely disable this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-for-of.md b/packages/eslint-plugin/docs/rules/prefer-for-of.md
index 52b1bbd944ec..6cd8ce5a52ac 100644
--- a/packages/eslint-plugin/docs/rules/prefer-for-of.md
+++ b/packages/eslint-plugin/docs/rules/prefer-for-of.md
@@ -58,11 +58,3 @@ If you transpile for browsers that do not support for-of loops, you may wish to
## Related To
- TSLint: ['prefer-for-of'](https://palantir.github.io/tslint/rules/prefer-for-of/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-function-type.md b/packages/eslint-plugin/docs/rules/prefer-function-type.md
index 1025833031ff..11096a44a119 100644
--- a/packages/eslint-plugin/docs/rules/prefer-function-type.md
+++ b/packages/eslint-plugin/docs/rules/prefer-function-type.md
@@ -98,11 +98,3 @@ If you specifically want to use an interface or type literal with a single call
## Further Reading
- TSLint: [`callable-types`](https://palantir.github.io/tslint/rules/callable-types/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-includes.md b/packages/eslint-plugin/docs/rules/prefer-includes.md
index d9e355ddb632..448d6bef4a31 100644
--- a/packages/eslint-plugin/docs/rules/prefer-includes.md
+++ b/packages/eslint-plugin/docs/rules/prefer-includes.md
@@ -86,11 +86,3 @@ This rule is not configurable.
## When Not To Use It
If you don't want to suggest `includes`, you can safely turn this rule off.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-literal-enum-member.md b/packages/eslint-plugin/docs/rules/prefer-literal-enum-member.md
index cec4e1f301e4..4f4db49cb625 100644
--- a/packages/eslint-plugin/docs/rules/prefer-literal-enum-member.md
+++ b/packages/eslint-plugin/docs/rules/prefer-literal-enum-member.md
@@ -96,11 +96,3 @@ enum Foo {
## When Not To Use It
If you want use anything other than simple literals as an enum value.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-namespace-keyword.md b/packages/eslint-plugin/docs/rules/prefer-namespace-keyword.md
index a801d1f6ba32..ab66de0884f9 100644
--- a/packages/eslint-plugin/docs/rules/prefer-namespace-keyword.md
+++ b/packages/eslint-plugin/docs/rules/prefer-namespace-keyword.md
@@ -35,11 +35,3 @@ This rule is not configurable.
## Related To
- TSLint: [no-internal-module](https://palantir.github.io/tslint/rules/no-internal-module/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md b/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md
index 4f9bf819ec6b..9b1dfe988209 100644
--- a/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md
+++ b/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md
@@ -141,11 +141,3 @@ If you are not using TypeScript 3.7 (or greater), then you will not be able to u
- [TypeScript 3.7 Release Notes](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html)
- [Nullish Coalescing Operator Proposal](https://github.com/tc39/proposal-nullish-coalescing/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-optional-chain.md b/packages/eslint-plugin/docs/rules/prefer-optional-chain.md
index 9b6d3db57dc4..ce48aa9ceee6 100644
--- a/packages/eslint-plugin/docs/rules/prefer-optional-chain.md
+++ b/packages/eslint-plugin/docs/rules/prefer-optional-chain.md
@@ -106,11 +106,3 @@ If you are not using TypeScript 3.7 (or greater), then you will not be able to u
- [TypeScript 3.7 Release Notes](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html)
- [Optional Chaining Proposal](https://github.com/tc39/proposal-optional-chaining/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md b/packages/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md
index 1500a084818e..5ac98d6f043f 100644
--- a/packages/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md
+++ b/packages/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md
@@ -277,11 +277,3 @@ type MyType = {
};
function foo(arg: MyType) {}
```
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-readonly.md b/packages/eslint-plugin/docs/rules/prefer-readonly.md
index b5b7b006f4ba..22d7721cc8e7 100644
--- a/packages/eslint-plugin/docs/rules/prefer-readonly.md
+++ b/packages/eslint-plugin/docs/rules/prefer-readonly.md
@@ -89,11 +89,3 @@ class Container {
## Related To
- TSLint: ['prefer-readonly'](https://palantir.github.io/tslint/rules/prefer-readonly)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md b/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md
index af69b9eaf224..16a1046a24da 100644
--- a/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md
+++ b/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md
@@ -67,11 +67,3 @@ This rule is not configurable.
## When Not To Use It
If you don't want to use typechecking in your linting, you can't use this rule.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-regexp-exec.md b/packages/eslint-plugin/docs/rules/prefer-regexp-exec.md
index 40a31bd877de..7c7756646b91 100644
--- a/packages/eslint-plugin/docs/rules/prefer-regexp-exec.md
+++ b/packages/eslint-plugin/docs/rules/prefer-regexp-exec.md
@@ -58,11 +58,3 @@ This rule is not configurable.
## When Not To Use It
If you prefer consistent use of `String#match` for both, with `g` flag and without it, you can turn this rule off.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-return-this-type.md b/packages/eslint-plugin/docs/rules/prefer-return-this-type.md
index 590034b3e8ba..2ec748340126 100644
--- a/packages/eslint-plugin/docs/rules/prefer-return-this-type.md
+++ b/packages/eslint-plugin/docs/rules/prefer-return-this-type.md
@@ -109,11 +109,3 @@ This rule is not configurable.
## When Not To Use It
If you don't use method chaining or explicit return values, you can safely turn this rule off.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md b/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md
index 83b56e031877..c103769e1ef1 100644
--- a/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md
+++ b/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md
@@ -61,11 +61,3 @@ This rule is not configurable.
## When Not To Use It
If you don't mind that style, you can turn this rule off safely.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/prefer-ts-expect-error.md b/packages/eslint-plugin/docs/rules/prefer-ts-expect-error.md
index b226e13833ad..bf96eb8fa9a6 100644
--- a/packages/eslint-plugin/docs/rules/prefer-ts-expect-error.md
+++ b/packages/eslint-plugin/docs/rules/prefer-ts-expect-error.md
@@ -82,11 +82,3 @@ If you are **NOT** using TypeScript 3.9 (or greater), then you will not be able
## Further Reading
- [Original Implementing PR](https://github.com/microsoft/TypeScript/pull/36014)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/promise-function-async.md b/packages/eslint-plugin/docs/rules/promise-function-async.md
index 236d5a59a6d7..8506b9f4e19d 100644
--- a/packages/eslint-plugin/docs/rules/promise-function-async.md
+++ b/packages/eslint-plugin/docs/rules/promise-function-async.md
@@ -69,11 +69,3 @@ In addition, each of the following properties may be provided, and default to `t
## Related To
- TSLint: [promise-function-async](https://palantir.github.io/tslint/rules/promise-function-async)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/quotes.md b/packages/eslint-plugin/docs/rules/quotes.md
index 44dd33b752e1..1e3f6d32363d 100644
--- a/packages/eslint-plugin/docs/rules/quotes.md
+++ b/packages/eslint-plugin/docs/rules/quotes.md
@@ -26,11 +26,3 @@ See [`eslint/quotes` options](https://eslint.org/docs/rules/quotes#options).
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/quotes.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/require-array-sort-compare.md b/packages/eslint-plugin/docs/rules/require-array-sort-compare.md
index 74d1a8dc4fbf..23694f06d6ae 100644
--- a/packages/eslint-plugin/docs/rules/require-array-sort-compare.md
+++ b/packages/eslint-plugin/docs/rules/require-array-sort-compare.md
@@ -97,11 +97,3 @@ const three = '3';
## When Not To Use It
If you understand the language specification enough, you can turn this rule off safely.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/require-await.md b/packages/eslint-plugin/docs/rules/require-await.md
index c9c29c31668f..f4ac8cf56766 100644
--- a/packages/eslint-plugin/docs/rules/require-await.md
+++ b/packages/eslint-plugin/docs/rules/require-await.md
@@ -36,11 +36,3 @@ See [`eslint/require-await` options](https://eslint.org/docs/rules/require-await
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/require-await.md)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/restrict-plus-operands.md b/packages/eslint-plugin/docs/rules/restrict-plus-operands.md
index 24b2a9ccd1cd..79e10f912c30 100644
--- a/packages/eslint-plugin/docs/rules/restrict-plus-operands.md
+++ b/packages/eslint-plugin/docs/rules/restrict-plus-operands.md
@@ -104,11 +104,3 @@ var fn = (a: any, b: number) => a + b;
## Related To
- TSLint: [restrict-plus-operands](https://palantir.github.io/tslint/rules/restrict-plus-operands/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/restrict-template-expressions.md b/packages/eslint-plugin/docs/rules/restrict-template-expressions.md
index 0675452fce72..59c507f167e2 100644
--- a/packages/eslint-plugin/docs/rules/restrict-template-expressions.md
+++ b/packages/eslint-plugin/docs/rules/restrict-template-expressions.md
@@ -108,11 +108,3 @@ const msg1 = `arg = ${arg}`;
const arg = /foo/;
const msg1 = `arg = ${arg}`;
```
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/return-await.md b/packages/eslint-plugin/docs/rules/return-await.md
index 8d4e97298da5..20e99158dffa 100644
--- a/packages/eslint-plugin/docs/rules/return-await.md
+++ b/packages/eslint-plugin/docs/rules/return-await.md
@@ -220,11 +220,3 @@ async function validNever3() {
return 'value';
}
```
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/semi.md b/packages/eslint-plugin/docs/rules/semi.md
index 1dd1306626c1..307637c7168e 100644
--- a/packages/eslint-plugin/docs/rules/semi.md
+++ b/packages/eslint-plugin/docs/rules/semi.md
@@ -30,11 +30,3 @@ See [`eslint/semi` options](https://eslint.org/docs/rules/semi#options).
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/semi.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/sort-type-union-intersection-members.md b/packages/eslint-plugin/docs/rules/sort-type-union-intersection-members.md
index 848aa71d18bc..a7444659ee34 100644
--- a/packages/eslint-plugin/docs/rules/sort-type-union-intersection-members.md
+++ b/packages/eslint-plugin/docs/rules/sort-type-union-intersection-members.md
@@ -151,11 +151,3 @@ The ordering of groups is determined by this option.
- `tuple` - Tuple types (`[A, B, C]`)
- `union` - Union types (`A | B`)
- `nullish` - `null` and `undefined`
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/space-before-blocks.md b/packages/eslint-plugin/docs/rules/space-before-blocks.md
index dce543bbf212..5ff10537795f 100644
--- a/packages/eslint-plugin/docs/rules/space-before-blocks.md
+++ b/packages/eslint-plugin/docs/rules/space-before-blocks.md
@@ -52,11 +52,3 @@ See [`eslint/space-before-blocks` options](https://eslint.org/docs/rules/space-b
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/space-before-blocks.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/space-before-function-paren.md b/packages/eslint-plugin/docs/rules/space-before-function-paren.md
index 88f6d5d4c998..4664dd4c6a51 100644
--- a/packages/eslint-plugin/docs/rules/space-before-function-paren.md
+++ b/packages/eslint-plugin/docs/rules/space-before-function-paren.md
@@ -26,11 +26,3 @@ See [`eslint/space-before-function-paren` options](https://eslint.org/docs/rules
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/space-before-function-paren.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/space-infix-ops.md b/packages/eslint-plugin/docs/rules/space-infix-ops.md
index 96d2a111eb5b..afcb5de8e788 100644
--- a/packages/eslint-plugin/docs/rules/space-infix-ops.md
+++ b/packages/eslint-plugin/docs/rules/space-infix-ops.md
@@ -30,11 +30,3 @@ See [`eslint/space-infix-ops` options](https://eslint.org/docs/rules/space-infix
Taken with β€οΈ [from ESLint core](https://github.com/eslint/eslint/blob/main/docs/rules/space-infix-ops.md)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/strict-boolean-expressions.md b/packages/eslint-plugin/docs/rules/strict-boolean-expressions.md
index 357c2360a1fc..ef00a3a9eb60 100644
--- a/packages/eslint-plugin/docs/rules/strict-boolean-expressions.md
+++ b/packages/eslint-plugin/docs/rules/strict-boolean-expressions.md
@@ -197,11 +197,3 @@ This rule provides following fixes and suggestions for particular types in boole
- TSLint: [strict-boolean-expressions](https://palantir.github.io/tslint/rules/strict-boolean-expressions)
- [no-unnecessary-condition](./no-unnecessary-condition.md) - Similar rule which reports always-truthy and always-falsy values in conditions
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.md b/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.md
index ac9d11f659b9..7e6126830d4c 100644
--- a/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.md
+++ b/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.md
@@ -122,11 +122,3 @@ This rule is not configurable.
## When Not To Use It
If program doesn't have union types with many parts. Downside of this rule is the need for type information, so it's slower than regular rules.
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/triple-slash-reference.md b/packages/eslint-plugin/docs/rules/triple-slash-reference.md
index 4f6ef5509ef4..c94f0a56451a 100644
--- a/packages/eslint-plugin/docs/rules/triple-slash-reference.md
+++ b/packages/eslint-plugin/docs/rules/triple-slash-reference.md
@@ -72,11 +72,3 @@ If you want to use all flavors of triple slash reference directives.
- TSLint: [no-reference](http://palantir.github.io/tslint/rules/no-reference/)
- TSLint: [no-reference-import](https://palantir.github.io/tslint/rules/no-reference-import/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/type-annotation-spacing.md b/packages/eslint-plugin/docs/rules/type-annotation-spacing.md
index f7df7ee15160..3509b8884194 100644
--- a/packages/eslint-plugin/docs/rules/type-annotation-spacing.md
+++ b/packages/eslint-plugin/docs/rules/type-annotation-spacing.md
@@ -311,11 +311,3 @@ If you don't want to enforce spacing for your type annotations, you can safely t
## Related To
- TSLint: [`typedef-whitespace`](https://palantir.github.io/tslint/rules/typedef-whitespace/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [x] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/typedef.md b/packages/eslint-plugin/docs/rules/typedef.md
index 9bc92f02770b..01ae691437df 100644
--- a/packages/eslint-plugin/docs/rules/typedef.md
+++ b/packages/eslint-plugin/docs/rules/typedef.md
@@ -340,11 +340,3 @@ In general, if you do not consider the cost of writing unnecessary type annotati
## Related To
- TSLint: [`typedef`](https://palantir.github.io/tslint/rules/typedef)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [ ] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/unbound-method.md b/packages/eslint-plugin/docs/rules/unbound-method.md
index cef79e426017..58a98c79051c 100644
--- a/packages/eslint-plugin/docs/rules/unbound-method.md
+++ b/packages/eslint-plugin/docs/rules/unbound-method.md
@@ -118,11 +118,3 @@ If you're wanting to use `toBeCalled` and similar matches in `jest` tests, you c
## Related To
- TSLint: [no-unbound-method](https://palantir.github.io/tslint/rules/no-unbound-method/)
-
-## Attributes
-
-- Configs:
- - [x] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [x] π Requires type information
diff --git a/packages/eslint-plugin/docs/rules/unified-signatures.md b/packages/eslint-plugin/docs/rules/unified-signatures.md
index 6818b686f8b4..0f385d9fe617 100644
--- a/packages/eslint-plugin/docs/rules/unified-signatures.md
+++ b/packages/eslint-plugin/docs/rules/unified-signatures.md
@@ -79,11 +79,3 @@ function f(...a: string[]): void;
## Related To
- TSLint: [`unified-signatures`](https://palantir.github.io/tslint/rules/unified-signatures/)
-
-## Attributes
-
-- Configs:
- - [ ] β
Recommended
- - [x] π Strict
-- [ ] π§ Fixable
-- [ ] π Requires type information
diff --git a/packages/eslint-plugin/package.json b/packages/eslint-plugin/package.json
index e06188317de7..c833b4926627 100644
--- a/packages/eslint-plugin/package.json
+++ b/packages/eslint-plugin/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/eslint-plugin",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "TypeScript plugin for ESLint",
"keywords": [
"eslint",
@@ -44,9 +44,9 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
- "@typescript-eslint/scope-manager": "5.27.0",
- "@typescript-eslint/type-utils": "5.27.0",
- "@typescript-eslint/utils": "5.27.0",
+ "@typescript-eslint/scope-manager": "5.27.1",
+ "@typescript-eslint/type-utils": "5.27.1",
+ "@typescript-eslint/utils": "5.27.1",
"debug": "^4.3.4",
"functional-red-black-tree": "^1.0.1",
"ignore": "^5.2.0",
diff --git a/packages/eslint-plugin/src/rules/space-infix-ops.ts b/packages/eslint-plugin/src/rules/space-infix-ops.ts
index cd2be0409bc5..a43ba5c30ab3 100644
--- a/packages/eslint-plugin/src/rules/space-infix-ops.ts
+++ b/packages/eslint-plugin/src/rules/space-infix-ops.ts
@@ -124,8 +124,8 @@ export default util.createRule({
function checkForPropertyDefinitionAssignmentSpace(
node: TSESTree.PropertyDefinition,
): void {
- const leftNode = sourceCode.getTokenByRangeStart(
- node.typeAnnotation?.range[0] ?? node.range[0],
+ const leftNode = sourceCode.getLastToken(
+ node.typeAnnotation ?? node.key,
)!;
const rightNode = node.value
? sourceCode.getTokenByRangeStart(node.value.range[0])
@@ -174,27 +174,20 @@ export default util.createRule({
function checkForTypeAliasAssignment(
node: TSESTree.TSTypeAliasDeclaration,
): void {
- const leftNode = sourceCode.getTokenByRangeStart(node.id.range[0])!;
- const rightNode = sourceCode.getTokenByRangeStart(
- node.typeAnnotation.range[0],
- );
+ const leftNode = sourceCode.getLastToken(node.typeParameters ?? node.id)!;
+ const rightNode = sourceCode.getFirstToken(node.typeAnnotation);
checkAndReportAssignmentSpace(node, leftNode, rightNode);
}
function checkForTypeConditional(node: TSESTree.TSConditionalType): void {
- const extendsTypeNode = sourceCode.getTokenByRangeStart(
- node.extendsType.range[0],
- )!;
- const trueTypeNode = sourceCode.getTokenByRangeStart(
- node.trueType.range[0],
- )!;
- const falseTypeNode = sourceCode.getTokenByRangeStart(
- node.falseType.range[0],
- );
+ const extendsLastToken = sourceCode.getLastToken(node.extendsType)!;
+ const trueFirstToken = sourceCode.getFirstToken(node.trueType)!;
+ const trueLastToken = sourceCode.getLastToken(node.trueType)!;
+ const falseFirstToken = sourceCode.getFirstToken(node.falseType)!;
- checkAndReportAssignmentSpace(node, extendsTypeNode, trueTypeNode);
- checkAndReportAssignmentSpace(node, trueTypeNode, falseTypeNode);
+ checkAndReportAssignmentSpace(node, extendsLastToken, trueFirstToken);
+ checkAndReportAssignmentSpace(node, trueLastToken, falseFirstToken);
}
return {
diff --git a/packages/eslint-plugin/tests/docs.test.ts b/packages/eslint-plugin/tests/docs.test.ts
index c3564a566743..efb5edd4f2bf 100644
--- a/packages/eslint-plugin/tests/docs.test.ts
+++ b/packages/eslint-plugin/tests/docs.test.ts
@@ -1,4 +1,3 @@
-import { TSESLint } from '@typescript-eslint/utils';
import fs from 'fs';
import { JSONSchema4 } from 'json-schema';
import path from 'path';
@@ -174,38 +173,6 @@ describe('Validating rule docs', () => {
text: 'This rule is not configurable.',
});
});
-
- it(`Attributes in ${ruleName}.md must match the metadata`, () => {
- const tokens = parseMarkdownFile(filePath);
-
- // Verify attributes header exists
- const attributesHeaderIndex = tokens.findIndex(
- token => tokenIs(token, 'heading') && token.text === 'Attributes',
- );
- expect(attributesHeaderIndex).toBeGreaterThan(-1);
-
- // Verify attributes content...
- const attributesList = tokenAs(
- tokens[attributesHeaderIndex + 1],
- 'list',
- );
- // ...starting with configs
- const configs = attributesList.items[0];
- expect(configs.text).toMatch(/Configs:\n/);
- const configsList = tokenAs(configs.tokens[1], 'list');
- const recommended = configsList.items[0];
- expect(shouldBeRecommended(rule.meta.docs)).toBe(recommended.checked);
- const strict = configsList.items[1];
- expect(shouldBeStrict(rule.meta.docs)).toBe(strict.checked);
-
- // Verify other attributes
- const fixable = attributesList.items[1];
- expect(rule.meta.fixable !== undefined).toBe(fixable.checked);
- const requiresTypeChecking = attributesList.items[2];
- expect(rule.meta.docs?.requiresTypeChecking === true).toBe(
- requiresTypeChecking.checked,
- );
- });
});
}
});
@@ -324,13 +291,3 @@ describe.each([
});
}
});
-
-function shouldBeRecommended(
- docs: TSESLint.RuleMetaDataDocs | undefined,
-): boolean {
- return docs?.recommended !== false && docs?.recommended !== 'strict';
-}
-
-function shouldBeStrict(docs: TSESLint.RuleMetaDataDocs | undefined): boolean {
- return docs?.recommended !== false;
-}
diff --git a/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts b/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts
index 26e623231671..e8b5fa2bc930 100644
--- a/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts
+++ b/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts
@@ -151,6 +151,20 @@ ruleTester.run('space-infix-ops', rule, {
}
`,
},
+ {
+ code: `
+ class Test {
+ value: { prop: string }[] = [];
+ }
+ `,
+ },
+ {
+ code: `
+ class Test {
+ value:{prop:string}[] = [];
+ }
+ `,
+ },
{
code: `
type Test =
@@ -221,6 +235,18 @@ ruleTester.run('space-infix-ops', rule, {
& (((() => void)));
`,
},
+ {
+ code: 'type Baz = T extends (bar: string) => void ? string : number',
+ },
+ {
+ code: 'type Foo = T extends { bar: string } ? string : number',
+ },
+ {
+ code: 'type Baz = T extends (bar: string) => void ? { x: string } : { y: string }',
+ },
+ {
+ code: 'type Foo any> = T;',
+ },
{
code: `
interface Test {
@@ -473,6 +499,44 @@ ruleTester.run('space-infix-ops', rule, {
},
],
},
+ {
+ code: `
+ class Test {
+ value: { prop: string }[]= [];
+ }
+ `,
+ output: `
+ class Test {
+ value: { prop: string }[] = [];
+ }
+ `,
+ errors: [
+ {
+ messageId: 'missingSpace',
+ column: 36,
+ line: 3,
+ },
+ ],
+ },
+ {
+ code: `
+ class Test {
+ value: { prop: string }[] =[];
+ }
+ `,
+ output: `
+ class Test {
+ value: { prop: string }[] = [];
+ }
+ `,
+ errors: [
+ {
+ messageId: 'missingSpace',
+ column: 37,
+ line: 3,
+ },
+ ],
+ },
{
code: `
type Test= string | number;
diff --git a/packages/experimental-utils/CHANGELOG.md b/packages/experimental-utils/CHANGELOG.md
index c5fa159a2269..b3d9d9d767e7 100644
--- a/packages/experimental-utils/CHANGELOG.md
+++ b/packages/experimental-utils/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/experimental-utils
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/experimental-utils/package.json b/packages/experimental-utils/package.json
index db82d23cc893..e37d30782a5d 100644
--- a/packages/experimental-utils/package.json
+++ b/packages/experimental-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/experimental-utils",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "(Experimental) Utilities for working with TypeScript + ESLint together",
"keywords": [
"eslint",
@@ -38,7 +38,7 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
- "@typescript-eslint/utils": "5.27.0"
+ "@typescript-eslint/utils": "5.27.1"
},
"peerDependencies": {
"eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
diff --git a/packages/parser/CHANGELOG.md b/packages/parser/CHANGELOG.md
index ef72bc8b89c4..4785b23ee9d0 100644
--- a/packages/parser/CHANGELOG.md
+++ b/packages/parser/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/parser
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/parser/package.json b/packages/parser/package.json
index 7d9e0297c1cf..acf1c65fe71d 100644
--- a/packages/parser/package.json
+++ b/packages/parser/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/parser",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "An ESLint custom parser which leverages TypeScript ESTree",
"main": "dist/index.js",
"types": "dist/index.d.ts",
@@ -44,9 +44,9 @@
"eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
},
"dependencies": {
- "@typescript-eslint/scope-manager": "5.27.0",
- "@typescript-eslint/types": "5.27.0",
- "@typescript-eslint/typescript-estree": "5.27.0",
+ "@typescript-eslint/scope-manager": "5.27.1",
+ "@typescript-eslint/types": "5.27.1",
+ "@typescript-eslint/typescript-estree": "5.27.1",
"debug": "^4.3.4"
},
"devDependencies": {
diff --git a/packages/scope-manager/CHANGELOG.md b/packages/scope-manager/CHANGELOG.md
index 06dddef47f6c..51a94bcea8ac 100644
--- a/packages/scope-manager/CHANGELOG.md
+++ b/packages/scope-manager/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/scope-manager
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/scope-manager/package.json b/packages/scope-manager/package.json
index 4475a4c9c121..7326b5d8dfe0 100644
--- a/packages/scope-manager/package.json
+++ b/packages/scope-manager/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/scope-manager",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "TypeScript scope analyser for ESLint",
"keywords": [
"eslint",
@@ -38,12 +38,12 @@
"typecheck": "cd ../../ && nx typecheck @typescript-eslint/scope-manager"
},
"dependencies": {
- "@typescript-eslint/types": "5.27.0",
- "@typescript-eslint/visitor-keys": "5.27.0"
+ "@typescript-eslint/types": "5.27.1",
+ "@typescript-eslint/visitor-keys": "5.27.1"
},
"devDependencies": {
"@types/glob": "*",
- "@typescript-eslint/typescript-estree": "5.27.0",
+ "@typescript-eslint/typescript-estree": "5.27.1",
"glob": "*",
"jest-specific-snapshot": "*",
"make-dir": "*",
diff --git a/packages/shared-fixtures/CHANGELOG.md b/packages/shared-fixtures/CHANGELOG.md
index a34869891da5..469780eb7d87 100644
--- a/packages/shared-fixtures/CHANGELOG.md
+++ b/packages/shared-fixtures/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/shared-fixtures
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/shared-fixtures/package.json b/packages/shared-fixtures/package.json
index 909d39033a40..4e466a4fc88f 100644
--- a/packages/shared-fixtures/package.json
+++ b/packages/shared-fixtures/package.json
@@ -1,5 +1,5 @@
{
"name": "@typescript-eslint/shared-fixtures",
- "version": "5.27.0",
+ "version": "5.27.1",
"private": true
}
diff --git a/packages/type-utils/CHANGELOG.md b/packages/type-utils/CHANGELOG.md
index e9238660efe5..def402e214b4 100644
--- a/packages/type-utils/CHANGELOG.md
+++ b/packages/type-utils/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/type-utils
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/type-utils/package.json b/packages/type-utils/package.json
index a2854d3d34fe..bba58e43f79e 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/type-utils",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "Type utilities for working with TypeScript + ESLint together",
"keywords": [
"eslint",
@@ -39,12 +39,12 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
- "@typescript-eslint/utils": "5.27.0",
+ "@typescript-eslint/utils": "5.27.1",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
},
"devDependencies": {
- "@typescript-eslint/parser": "5.27.0",
+ "@typescript-eslint/parser": "5.27.1",
"typescript": "*"
},
"peerDependencies": {
diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md
index 73678dd49599..aed8d0b7864e 100644
--- a/packages/types/CHANGELOG.md
+++ b/packages/types/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/types
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/types/package.json b/packages/types/package.json
index ca8fb4099b4f..f48b090e6d1d 100644
--- a/packages/types/package.json
+++ b/packages/types/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/types",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "Types for the TypeScript-ESTree AST spec",
"keywords": [
"eslint",
diff --git a/packages/typescript-estree/CHANGELOG.md b/packages/typescript-estree/CHANGELOG.md
index 13bc5a35f5c7..0375965a65ca 100644
--- a/packages/typescript-estree/CHANGELOG.md
+++ b/packages/typescript-estree/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/typescript-estree
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/typescript-estree/package.json b/packages/typescript-estree/package.json
index 8c8fc42c13f0..15bccb08d032 100644
--- a/packages/typescript-estree/package.json
+++ b/packages/typescript-estree/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/typescript-estree",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "A parser that converts TypeScript source code into an ESTree compatible form",
"main": "dist/index.js",
"types": "dist/index.d.ts",
@@ -41,8 +41,8 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
- "@typescript-eslint/types": "5.27.0",
- "@typescript-eslint/visitor-keys": "5.27.0",
+ "@typescript-eslint/types": "5.27.1",
+ "@typescript-eslint/visitor-keys": "5.27.1",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -58,7 +58,7 @@
"@types/is-glob": "*",
"@types/semver": "*",
"@types/tmp": "*",
- "@typescript-eslint/shared-fixtures": "5.27.0",
+ "@typescript-eslint/shared-fixtures": "5.27.1",
"glob": "*",
"jest-specific-snapshot": "*",
"make-dir": "*",
diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md
index ad1722e1ce38..e91009644499 100644
--- a/packages/utils/CHANGELOG.md
+++ b/packages/utils/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/utils
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/utils/package.json b/packages/utils/package.json
index 2446bcf7dbd3..b3b099ae1abc 100644
--- a/packages/utils/package.json
+++ b/packages/utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/utils",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "Utilities for working with TypeScript + ESLint together",
"keywords": [
"eslint",
@@ -40,9 +40,9 @@
},
"dependencies": {
"@types/json-schema": "^7.0.9",
- "@typescript-eslint/scope-manager": "5.27.0",
- "@typescript-eslint/types": "5.27.0",
- "@typescript-eslint/typescript-estree": "5.27.0",
+ "@typescript-eslint/scope-manager": "5.27.1",
+ "@typescript-eslint/types": "5.27.1",
+ "@typescript-eslint/typescript-estree": "5.27.1",
"eslint-scope": "^5.1.1",
"eslint-utils": "^3.0.0"
},
diff --git a/packages/visitor-keys/CHANGELOG.md b/packages/visitor-keys/CHANGELOG.md
index 26187611be11..3d024f5700be 100644
--- a/packages/visitor-keys/CHANGELOG.md
+++ b/packages/visitor-keys/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/visitor-keys
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/visitor-keys/package.json b/packages/visitor-keys/package.json
index fa44802f4d47..241e81c52e90 100644
--- a/packages/visitor-keys/package.json
+++ b/packages/visitor-keys/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/visitor-keys",
- "version": "5.27.0",
+ "version": "5.27.1",
"description": "Visitor keys used to help traverse the TypeScript-ESTree AST",
"keywords": [
"eslint",
@@ -38,7 +38,7 @@
"typecheck": "tsc -p tsconfig.json --noEmit"
},
"dependencies": {
- "@typescript-eslint/types": "5.27.0",
+ "@typescript-eslint/types": "5.27.1",
"eslint-visitor-keys": "^3.3.0"
},
"devDependencies": {
diff --git a/packages/website-eslint/CHANGELOG.md b/packages/website-eslint/CHANGELOG.md
index 44bb0b1b9178..6d1f412f6258 100644
--- a/packages/website-eslint/CHANGELOG.md
+++ b/packages/website-eslint/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package @typescript-eslint/website-eslint
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/website-eslint/package.json b/packages/website-eslint/package.json
index eedef41c64b9..0dfb42cabfd5 100644
--- a/packages/website-eslint/package.json
+++ b/packages/website-eslint/package.json
@@ -1,6 +1,6 @@
{
"name": "@typescript-eslint/website-eslint",
- "version": "5.27.0",
+ "version": "5.27.1",
"private": true,
"description": "ESLint which works in browsers.",
"engines": {
@@ -16,21 +16,22 @@
"format": "prettier --write \"./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}\" --ignore-path ../../.prettierignore"
},
"dependencies": {
- "@typescript-eslint/types": "5.27.0",
- "@typescript-eslint/utils": "5.27.0"
+ "@typescript-eslint/types": "5.27.1",
+ "@typescript-eslint/utils": "5.27.1"
},
"devDependencies": {
"@rollup/plugin-commonjs": "^22.0.0",
"@rollup/plugin-json": "^4.1.0",
"@rollup/plugin-node-resolve": "^13.3.0",
"@rollup/pluginutils": "^4.2.1",
- "@typescript-eslint/eslint-plugin": "5.27.0",
- "@typescript-eslint/parser": "5.27.0",
- "@typescript-eslint/scope-manager": "5.27.0",
- "@typescript-eslint/typescript-estree": "5.27.0",
- "@typescript-eslint/visitor-keys": "5.27.0",
+ "@typescript-eslint/eslint-plugin": "5.27.1",
+ "@typescript-eslint/parser": "5.27.1",
+ "@typescript-eslint/scope-manager": "5.27.1",
+ "@typescript-eslint/typescript-estree": "5.27.1",
+ "@typescript-eslint/visitor-keys": "5.27.1",
"eslint": "*",
- "rollup": "^2.72.1",
+ "rollup": "^2.75.4",
+ "rollup-plugin-terser": "^7.0.2",
"semver": "^7.3.7"
}
}
diff --git a/packages/website-eslint/rollup.config.js b/packages/website-eslint/rollup.config.js
index 2941ec568f68..4175b1e754e7 100644
--- a/packages/website-eslint/rollup.config.js
+++ b/packages/website-eslint/rollup.config.js
@@ -1,6 +1,8 @@
import commonjs from '@rollup/plugin-commonjs';
import json from '@rollup/plugin-json';
import resolve from '@rollup/plugin-node-resolve';
+import { terser } from 'rollup-plugin-terser';
+
const replace = require('./rollup-plugin/replace');
module.exports = {
@@ -9,10 +11,14 @@ module.exports = {
format: 'amd',
interop: 'auto',
freeze: false,
+ sourcemap: true,
file: 'dist/index.js',
},
external: ['vs/language/typescript/tsWorker'],
plugins: [
+ terser({
+ keep_classnames: true,
+ }),
replace({
// verbose: true,
alias: [
diff --git a/packages/website/CHANGELOG.md b/packages/website/CHANGELOG.md
index 54b171d6bae6..2f7b8097edc2 100644
--- a/packages/website/CHANGELOG.md
+++ b/packages/website/CHANGELOG.md
@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [5.27.1](https://github.com/typescript-eslint/typescript-eslint/compare/v5.27.0...v5.27.1) (2022-06-06)
+
+**Note:** Version bump only for package website
+
+
+
+
+
# [5.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v5.26.0...v5.27.0) (2022-05-30)
diff --git a/packages/website/data/sponsors.json b/packages/website/data/sponsors.json
index d9675b816b97..ff4ea8fa6853 100644
--- a/packages/website/data/sponsors.json
+++ b/packages/website/data/sponsors.json
@@ -4,7 +4,7 @@
"image": "https://images.opencollective.com/nx/0efbe42/logo.png",
"name": "Nx (by Nrwl)",
"tier": "sponsor",
- "totalDonations": 400000,
+ "totalDonations": 425000,
"website": "https://nx.dev"
},
{
@@ -12,31 +12,31 @@
"image": "https://images.opencollective.com/eslint/96b09dc/logo.png",
"name": "ESLint",
"tier": "sponsor",
- "totalDonations": 125000,
+ "totalDonations": 140000,
"website": "https://eslint.org/"
},
- {
- "id": "Airbnb",
- "image": "https://images.opencollective.com/airbnb/d327d66/logo.png",
- "name": "Airbnb",
- "tier": "sponsor",
- "totalDonations": 110800,
- "website": "https://www.airbnb.com/"
- },
{
"id": "Coinbase",
"image": "https://images.opencollective.com/coinbase/a202856/logo.png",
"name": "Coinbase",
"tier": "sponsor",
- "totalDonations": 110000,
+ "totalDonations": 120000,
"website": "https://blog.coinbase.com/engineering-and-security/home"
},
+ {
+ "id": "Airbnb",
+ "image": "https://images.opencollective.com/airbnb/d327d66/logo.png",
+ "name": "Airbnb",
+ "tier": "sponsor",
+ "totalDonations": 115800,
+ "website": "https://www.airbnb.com/"
+ },
{
"id": "n8n.io - n8n GmbH",
"image": "https://images.opencollective.com/n8n/dca2f0c/logo.png",
"name": "n8n.io - n8n GmbH",
"tier": "sponsor",
- "totalDonations": 85000,
+ "totalDonations": 90000,
"website": "https://n8n.io"
},
{
@@ -47,6 +47,14 @@
"totalDonations": 80400,
"website": "https://doberman.co"
},
+ {
+ "id": "GitBook",
+ "image": "https://images.opencollective.com/gitbook/d35a8e7/logo.png",
+ "name": "GitBook",
+ "tier": "sponsor",
+ "totalDonations": 60000,
+ "website": "https://www.gitbook.com"
+ },
{
"id": "Future Processing",
"image": "https://images.opencollective.com/future-processing/1410d26/logo.png",
@@ -64,12 +72,12 @@
"website": "https://sentry.io/welcome/"
},
{
- "id": "GitBook",
- "image": "https://images.opencollective.com/gitbook/d35a8e7/logo.png",
- "name": "GitBook",
+ "id": "Codecademy",
+ "image": "https://images.opencollective.com/codecademy/d56a48d/logo.png",
+ "name": "Codecademy",
"tier": "sponsor",
"totalDonations": 50000,
- "website": "https://www.gitbook.com"
+ "website": "https://codecademy.com"
},
{
"id": "Whitebox",
@@ -79,14 +87,6 @@
"totalDonations": 40000,
"website": "https://whitebox.com"
},
- {
- "id": "Codecademy",
- "image": "https://images.opencollective.com/codecademy/d56a48d/logo.png",
- "name": "Codecademy",
- "tier": "sponsor",
- "totalDonations": 40000,
- "website": "https://codecademy.com"
- },
{
"id": "Monito",
"image": "https://images.opencollective.com/monito/50fc878/logo.png",
@@ -116,7 +116,7 @@
"image": "https://images.opencollective.com/storis/dfb0e13/logo.png",
"name": "STORIS",
"tier": "supporter",
- "totalDonations": 18000,
+ "totalDonations": 19500,
"website": "https://www.storis.com/"
},
{
@@ -124,7 +124,7 @@
"image": "https://images.opencollective.com/michael-ranciglio/avatar.png",
"name": "Michael Ranciglio",
"tier": "supporter",
- "totalDonations": 15500
+ "totalDonations": 16000
},
{
"id": "Joe Alden",
@@ -139,7 +139,7 @@
"image": "https://images.opencollective.com/blacksheepcode/976d69a/avatar.png",
"name": "David Johnston",
"tier": "contributor",
- "totalDonations": 12000,
+ "totalDonations": 12500,
"website": "https://blacksheepcode.com"
},
{
@@ -163,7 +163,7 @@
"image": "https://images.opencollective.com/tripwire/7599e30/logo.png",
"name": "Tripwire, Inc.",
"tier": "contributor",
- "totalDonations": 7500,
+ "totalDonations": 8000,
"website": "https://tripwire.com"
},
{
@@ -171,7 +171,7 @@
"image": "https://images.opencollective.com/evilmartians/707ab4d/logo.png",
"name": "Evil Martians",
"tier": "contributor",
- "totalDonations": 7000,
+ "totalDonations": 7500,
"website": "https://evilmartians.com/"
},
{
@@ -179,7 +179,7 @@
"image": "https://images.opencollective.com/balsa/77de498/logo.png",
"name": "Balsa",
"tier": "contributor",
- "totalDonations": 7000,
+ "totalDonations": 7500,
"website": "https://balsa.com"
},
{
@@ -187,7 +187,7 @@
"image": "https://images.opencollective.com/jeffrey-rennie/avatar.png",
"name": "Jeffrey Rennie",
"tier": "contributor",
- "totalDonations": 6500
+ "totalDonations": 7000
},
{
"id": "Pete Gonzalez",
@@ -218,15 +218,15 @@
"image": "https://images.opencollective.com/corellium/aa8c228/logo.png",
"name": "Corellium",
"tier": "contributor",
- "totalDonations": 3600,
+ "totalDonations": 4200,
"website": "https://www.corellium.com"
},
{
- "id": "MySportsInjury",
- "image": "https://images.opencollective.com/my-sports-injury-ltd/518c583/logo.png",
- "name": "MySportsInjury",
+ "id": "Alexey Berezin",
+ "image": "https://images.opencollective.com/beraliv/034d971/avatar.png",
+ "name": "Alexey Berezin",
"tier": "contributor",
- "totalDonations": 1500,
- "website": "https://www.mysportsinjury.co.uk"
+ "totalDonations": 1000,
+ "website": "https://beraliv.dev"
}
]
diff --git a/packages/website/docusaurus.config.js b/packages/website/docusaurus.config.js
index a06a8e0367dc..e2d6411e7931 100644
--- a/packages/website/docusaurus.config.js
+++ b/packages/website/docusaurus.config.js
@@ -1,193 +1,10 @@
-// @ts-check
-// Note: type annotations allow type checking and IDEs autocompletion
+'use strict';
-const remarkPlugins = [
- [require('@docusaurus/remark-plugin-npm2yarn'), { sync: true }],
-];
+require('ts-node').register({
+ scope: true,
+ scopeDir: __dirname,
+ swc: true,
+ transpileOnly: true,
+});
-const beforeDefaultRemarkPlugins = [[require('remark-docusaurus-tabs'), {}]];
-
-const githubUrl = 'https://github.com/typescript-eslint/typescript-eslint';
-
-/** @type {import('@docusaurus/types').Config} */
-const config = {
- title: 'TypeScript ESLint',
- tagline: 'Tooling which enables ESLint to support TypeScript',
- url: 'https://typescript-eslint.io',
- baseUrl: '/',
- onBrokenLinks: 'throw',
- onBrokenMarkdownLinks: 'warn', // If Markdown link resolution fails, it will result in a broken link anyways
- favicon: 'img/favicon.ico',
- organizationName: 'typescript-eslint',
- projectName: 'typescript-eslint',
- clientModules: [require.resolve('./src/clientModules.js')],
- presets: [
- [
- 'classic',
- /** @type {import('@docusaurus/preset-classic').Options} */
- ({
- docs: {
- id: 'rules-docs',
- path: '../eslint-plugin/docs/rules',
- sidebarPath: require.resolve('./sidebars/sidebar.rules.js'),
- routeBasePath: 'rules',
- editUrl: `${githubUrl}/edit/main/packages/website/`,
- beforeDefaultRemarkPlugins,
- remarkPlugins,
- exclude: ['TEMPLATE.md'],
- breadcrumbs: false,
- },
- // TODO enable this
- blog: false,
- pages: {
- beforeDefaultRemarkPlugins,
- remarkPlugins,
- },
- theme: {
- customCss: require.resolve('./src/css/custom.css'),
- },
- }),
- ],
- ],
- plugins: [
- require.resolve('./webpack.plugin'),
- [
- '@docusaurus/plugin-content-docs',
- /** @type {import('@docusaurus/plugin-content-docs').Options} */
- ({
- id: 'base-docs',
- path: '../../docs',
- routeBasePath: 'docs',
- sidebarPath: require.resolve('./sidebars/sidebar.base.js'),
- editUrl: `${githubUrl}/edit/main/packages/website/`,
- beforeDefaultRemarkPlugins,
- remarkPlugins,
- breadcrumbs: false,
- }),
- ],
- ],
- themeConfig:
- /** @type {import('@docusaurus/theme-common').UserThemeConfig} */
- ({
- algolia: {
- appId: 'BH4D9OD16A',
- apiKey: '1ad6b47d4e742c4c0653877b5511c602',
- indexName: 'typescript-eslint',
- },
- metadata: [
- { name: 'msapplication-TileColor', content: '#443fd4' },
- { name: 'theme-color', content: '#443fd4' },
- ],
- navbar: {
- title: 'TypeScript ESLint',
- // hideOnScroll: true,
- logo: {
- alt: 'TypeScript ESLint logo',
- height: '32px',
- src: 'img/logo.svg',
- width: '32px',
- },
- // style: 'primary',
- items: [
- {
- to: 'docs/',
- activeBasePath: 'docs',
- label: 'Getting started',
- position: 'left',
- },
- {
- to: 'rules/',
- activeBasePath: 'rules',
- label: 'Rules',
- position: 'left',
- },
- {
- to: 'play',
- activeBasePath: 'play',
- position: 'right',
- label: 'Playground',
- },
- {
- href: githubUrl,
- position: 'right',
- className: 'header-github-link',
- 'aria-label': 'GitHub repository',
- },
- ],
- },
- footer: {
- logo: {
- alt: 'Deploys by Netlify',
- src: 'https://www.netlify.com/img/global/badges/netlify-dark.svg',
- href: 'https://www.netlify.com',
- },
- links: [
- {
- title: 'Community',
- items: [
- {
- label: 'Stack Overflow',
- href: 'https://stackoverflow.com/questions/tagged/typescript-eslint',
- },
- {
- label: 'Twitter',
- href: 'https://twitter.com/tseslint',
- },
- ],
- },
- {
- title: 'More',
- items: [
- {
- label: 'GitHub',
- href: 'https://github.com/typescript-eslint/typescript-eslint',
- },
- {
- label: 'Report issue',
- href: 'https://github.com/typescript-eslint/typescript-eslint/issues/new/choose',
- },
- ],
- },
- ],
- // style: 'primary',
- copyright: `Copyright Β© ${new Date().getFullYear()} TypeScript ESLint, Inc. Built with Docusaurus.`,
- },
- prism: {
- theme: {
- plain: {},
- styles: [],
- },
- additionalLanguages: ['ignore'],
- },
- tableOfContents: {
- maxHeadingLevel: 4,
- minHeadingLevel: 2,
- },
- }),
- // Misleading API name, but these are just tags
- stylesheets: [
- {
- rel: 'apple-touch-icon',
- sizes: '180x180',
- href: '/img/favicon/apple-touch-icon.png',
- },
- {
- rel: 'icon',
- type: 'image/png',
- sizes: '32x32',
- href: '/img/favicon/favicon-32x32.png',
- },
- {
- rel: 'icon',
- type: 'image/png',
- sizes: '16x16',
- href: '/img/favicon/favicon-16x16.png',
- },
- {
- rel: 'manifest',
- href: '/img/favicon/site.webmanifest',
- },
- ],
-};
-
-module.exports = config;
+module.exports = require('./docusaurusConfig');
diff --git a/packages/website/docusaurusConfig.ts b/packages/website/docusaurusConfig.ts
new file mode 100644
index 000000000000..eab99e5d2eb3
--- /dev/null
+++ b/packages/website/docusaurusConfig.ts
@@ -0,0 +1,192 @@
+import type { MDXPlugin } from '@docusaurus/mdx-loader';
+import type { Options as PluginContentDocsOptions } from '@docusaurus/plugin-content-docs';
+import type { Options as PresetClassicOptions } from '@docusaurus/preset-classic';
+import type { UserThemeConfig as ThemeCommonConfig } from '@docusaurus/theme-common';
+import type { UserThemeConfig as AlgoliaThemeConfig } from '@docusaurus/theme-search-algolia';
+import type { Config } from '@docusaurus/types';
+
+import npm2yarnPlugin from '@docusaurus/remark-plugin-npm2yarn';
+import tabsPlugin from 'remark-docusaurus-tabs';
+import { addRuleAttributesList } from './plugins/add-rule-attributes-list';
+
+const remarkPlugins: MDXPlugin[] = [[npm2yarnPlugin, { sync: true }]];
+
+const beforeDefaultRemarkPlugins: MDXPlugin[] = [[tabsPlugin, {}]];
+
+const githubUrl = 'https://github.com/typescript-eslint/typescript-eslint';
+
+const presetClassicOptions: PresetClassicOptions = {
+ docs: {
+ id: 'rules-docs',
+ path: '../eslint-plugin/docs/rules',
+ sidebarPath: require.resolve('./sidebars/sidebar.rules.js'),
+ routeBasePath: 'rules',
+ editUrl: `${githubUrl}/edit/main/packages/website/`,
+ beforeDefaultRemarkPlugins,
+ remarkPlugins: [...remarkPlugins, [addRuleAttributesList, {}]],
+ exclude: ['TEMPLATE.md'],
+ breadcrumbs: false,
+ },
+ // TODO enable this
+ blog: false,
+ pages: {
+ beforeDefaultRemarkPlugins,
+ remarkPlugins,
+ },
+ theme: {
+ customCss: require.resolve('./src/css/custom.css'),
+ },
+};
+
+const pluginContentDocsOptions: PluginContentDocsOptions = {
+ id: 'base-docs',
+ path: '../../docs',
+ routeBasePath: 'docs',
+ sidebarPath: require.resolve('./sidebars/sidebar.base.js'),
+ editUrl: `${githubUrl}/edit/main/packages/website/`,
+ beforeDefaultRemarkPlugins,
+ remarkPlugins,
+ breadcrumbs: false,
+};
+
+const themeConfig: ThemeCommonConfig & AlgoliaThemeConfig = {
+ algolia: {
+ appId: 'BH4D9OD16A',
+ apiKey: '1ad6b47d4e742c4c0653877b5511c602',
+ indexName: 'typescript-eslint',
+ },
+ metadata: [
+ { name: 'msapplication-TileColor', content: '#443fd4' },
+ { name: 'theme-color', content: '#443fd4' },
+ ],
+ navbar: {
+ title: 'TypeScript ESLint',
+ // hideOnScroll: true,
+ logo: {
+ alt: 'TypeScript ESLint logo',
+ height: '32px',
+ src: 'img/logo.svg',
+ width: '32px',
+ },
+ // style: 'primary',
+ items: [
+ {
+ to: 'docs/',
+ activeBasePath: 'docs',
+ label: 'Getting started',
+ position: 'left',
+ },
+ {
+ to: 'rules/',
+ activeBasePath: 'rules',
+ label: 'Rules',
+ position: 'left',
+ },
+ {
+ to: 'play',
+ activeBasePath: 'play',
+ position: 'right',
+ label: 'Playground',
+ },
+ {
+ href: githubUrl,
+ position: 'right',
+ className: 'header-github-link',
+ 'aria-label': 'GitHub repository',
+ },
+ ],
+ },
+ footer: {
+ logo: {
+ alt: 'Deploys by Netlify',
+ src: 'https://www.netlify.com/img/global/badges/netlify-dark.svg',
+ href: 'https://www.netlify.com',
+ },
+ links: [
+ {
+ title: 'Community',
+ items: [
+ {
+ label: 'Stack Overflow',
+ href: 'https://stackoverflow.com/questions/tagged/typescript-eslint',
+ },
+ {
+ label: 'Twitter',
+ href: 'https://twitter.com/tseslint',
+ },
+ ],
+ },
+ {
+ title: 'More',
+ items: [
+ {
+ label: 'GitHub',
+ href: 'https://github.com/typescript-eslint/typescript-eslint',
+ },
+ {
+ label: 'Report issue',
+ href: 'https://github.com/typescript-eslint/typescript-eslint/issues/new/choose',
+ },
+ ],
+ },
+ ],
+ // style: 'primary',
+ copyright: `Copyright Β© ${new Date().getFullYear()} TypeScript ESLint, Inc. Built with Docusaurus.`,
+ },
+ prism: {
+ theme: {
+ plain: {},
+ styles: [],
+ },
+ additionalLanguages: ['ignore'],
+ },
+ tableOfContents: {
+ maxHeadingLevel: 4,
+ minHeadingLevel: 2,
+ },
+};
+
+const config: Config = {
+ title: 'TypeScript ESLint',
+ tagline: 'Tooling which enables ESLint to support TypeScript',
+ url: 'https://typescript-eslint.io',
+ baseUrl: '/',
+ onBrokenLinks: 'throw',
+ onBrokenMarkdownLinks: 'warn', // If Markdown link resolution fails, it will result in a broken link anyways
+ favicon: 'img/favicon.ico',
+ organizationName: 'typescript-eslint',
+ projectName: 'typescript-eslint',
+ clientModules: [require.resolve('./src/clientModules.js')],
+ presets: [['classic', presetClassicOptions]],
+ plugins: [
+ require.resolve('./webpack.plugin'),
+ ['@docusaurus/plugin-content-docs', pluginContentDocsOptions],
+ ],
+ themeConfig,
+ // Misleading API name, but these are just tags
+ stylesheets: [
+ {
+ rel: 'apple-touch-icon',
+ sizes: '180x180',
+ href: '/img/favicon/apple-touch-icon.png',
+ },
+ {
+ rel: 'icon',
+ type: 'image/png',
+ sizes: '32x32',
+ href: '/img/favicon/favicon-32x32.png',
+ },
+ {
+ rel: 'icon',
+ type: 'image/png',
+ sizes: '16x16',
+ href: '/img/favicon/favicon-16x16.png',
+ },
+ {
+ rel: 'manifest',
+ href: '/img/favicon/site.webmanifest',
+ },
+ ],
+};
+
+export = config;
diff --git a/packages/website/package.json b/packages/website/package.json
index 6c2be083e120..ffa80744244b 100644
--- a/packages/website/package.json
+++ b/packages/website/package.json
@@ -1,6 +1,6 @@
{
"name": "website",
- "version": "5.27.0",
+ "version": "5.27.1",
"private": true,
"scripts": {
"build": "docusaurus build",
@@ -20,7 +20,7 @@
"@docusaurus/remark-plugin-npm2yarn": "2.0.0-beta.21",
"@docusaurus/theme-common": "2.0.0-beta.21",
"@mdx-js/react": "1.6.22",
- "@typescript-eslint/website-eslint": "5.27.0",
+ "@typescript-eslint/website-eslint": "5.27.1",
"clsx": "^1.1.1",
"eslint": "*",
"json5": "^2.2.1",
@@ -36,6 +36,7 @@
"@types/react": "^18.0.9",
"@types/react-helmet": "^6.1.5",
"@types/react-router-dom": "^5.3.3",
+ "@typescript-eslint/eslint-plugin": "5.27.1",
"copy-webpack-plugin": "^11.0.0",
"cypress": "8.3.0",
"cypress-axe": "^0.14.0",
diff --git a/packages/website/plugins/add-rule-attributes-list.ts b/packages/website/plugins/add-rule-attributes-list.ts
new file mode 100644
index 000000000000..381ca2638a6b
--- /dev/null
+++ b/packages/website/plugins/add-rule-attributes-list.ts
@@ -0,0 +1,203 @@
+import type * as mdast from 'mdast';
+import type { Plugin } from 'unified';
+
+import * as eslintPlugin from '@typescript-eslint/eslint-plugin';
+
+const addRuleAttributesList: Plugin = () => {
+ return (root, file) => {
+ if (file.stem == null) {
+ return;
+ }
+
+ const rule = eslintPlugin.rules[file.stem];
+ if (rule == null) {
+ return;
+ }
+ const config = ((): 'recommended' | 'strict' | null => {
+ switch (rule.meta.docs?.recommended) {
+ case 'error':
+ case 'warn':
+ return 'recommended';
+
+ case 'strict':
+ return 'strict';
+
+ default:
+ return null;
+ }
+ })();
+ const autoFixable = rule.meta.fixable != null;
+ const suggestionFixable = rule.meta.hasSuggestions === true;
+ const requiresTypeInfo = rule.meta.docs?.requiresTypeChecking === true;
+
+ const parent = root as mdast.Parent;
+ /*
+ This just outputs a list with a heading like:
+
+## Attributes
+
+- [ ] Config
+ - [ ] β
Recommended
+ - [ ] π Strict
+- [ ] Fixable
+ - [ ] π§ Automated Fixer (`--fix`)
+ - [ ] π Suggestion Fixer
+- [ ] π Requires type information
+ */
+ const heading = Heading({
+ depth: 2,
+ text: 'Attributes',
+ });
+ const ruleAttributes = List({
+ children: [
+ NestedList({
+ checked: config != null,
+ children: [
+ ListItem({
+ checked: config === 'recommended',
+ text: 'β
Recommended',
+ }),
+ ListItem({
+ checked: config === 'strict' || config === 'recommended',
+ text: 'π Strict',
+ }),
+ ],
+ text: 'Included in configs',
+ }),
+ NestedList({
+ checked: autoFixable || suggestionFixable,
+ children: [
+ ListItem({
+ checked: autoFixable,
+ text: 'π§ Automated Fixer',
+ }),
+ ListItem({
+ checked: suggestionFixable,
+ text: 'π Suggestion Fixer',
+ }),
+ ],
+ text: 'Fixable',
+ }),
+ ListItem({
+ checked: requiresTypeInfo,
+ text: 'π Requires type information',
+ }),
+ ],
+ });
+
+ const h2Idx = parent.children.findIndex(
+ child => child.type === 'heading' && child.depth === 2,
+ );
+ if (h2Idx != null) {
+ // insert it just before the first h2 in the doc
+ // this should be just after the rule's description
+ parent.children.splice(h2Idx, 0, heading, ruleAttributes);
+ } else {
+ // failing that, add it to the end
+ parent.children.push(heading, ruleAttributes);
+ }
+ };
+};
+
+function Heading({
+ depth,
+ text,
+ id = text.toLowerCase(),
+}: {
+ depth: mdast.Heading['depth'];
+ id?: string;
+ text: string;
+}): mdast.Heading {
+ return {
+ type: 'heading',
+ depth,
+ children: [
+ {
+ type: 'text',
+ value: text,
+ },
+ ],
+ data: {
+ hProperties: {
+ id,
+ },
+ id,
+ },
+ };
+}
+
+function Paragraph({ text }: { text: string }): mdast.Paragraph {
+ return {
+ type: 'paragraph',
+ children: [
+ {
+ type: 'text',
+ value: text,
+ },
+ ],
+ };
+}
+
+function ListItem({
+ checked,
+ text,
+}: {
+ checked: boolean;
+ text: string;
+}): mdast.ListItem {
+ return {
+ type: 'listItem',
+ spread: false,
+ checked: checked,
+ children: [
+ {
+ type: 'paragraph',
+ children: [
+ {
+ type: 'text',
+ value: text,
+ },
+ ],
+ },
+ ],
+ };
+}
+
+function NestedList({
+ children,
+ checked,
+ text,
+}: {
+ children: mdast.ListItem[];
+ checked: boolean;
+ text: string;
+}): mdast.ListItem {
+ return {
+ type: 'listItem',
+ spread: false,
+ checked: checked,
+ children: [
+ Paragraph({
+ text,
+ }),
+ List({
+ children,
+ }),
+ ],
+ data: {
+ className: 'test',
+ },
+ };
+}
+
+function List({ children }: { children: mdast.ListItem[] }): mdast.List {
+ return {
+ type: 'list',
+ ordered: false,
+ start: null,
+ spread: false,
+ children,
+ };
+}
+
+export { addRuleAttributesList };
diff --git a/packages/website/src/components/OptionsSelector.tsx b/packages/website/src/components/OptionsSelector.tsx
index f3a579df30b4..f57f2600f49c 100644
--- a/packages/website/src/components/OptionsSelector.tsx
+++ b/packages/website/src/components/OptionsSelector.tsx
@@ -1,6 +1,11 @@
/* eslint-disable jsx-a11y/label-has-associated-control */
import React, { useCallback } from 'react';
+import {
+ NavbarSecondaryMenuFiller,
+ useWindowSize,
+} from '@docusaurus/theme-common';
+
import Expander from './layout/Expander';
import Dropdown from './inputs/Dropdown';
import Checkbox from './inputs/Checkbox';
@@ -29,7 +34,7 @@ const ASTOptions = [
{ value: 'scope', label: 'Scope' },
] as const;
-function OptionsSelector({
+function OptionsSelectorContent({
state,
setState,
tsVersions,
@@ -154,4 +159,17 @@ function OptionsSelector({
);
}
+function OptionsSelector(props: OptionsSelectorParams): JSX.Element {
+ const windowSize = useWindowSize();
+ if (windowSize === 'mobile') {
+ return (
+
+ );
+ }
+ return ;
+}
+
export default OptionsSelector;
diff --git a/packages/website/src/components/Playground.module.css b/packages/website/src/components/Playground.module.css
index b6c4e1904c03..771da57e32d7 100644
--- a/packages/website/src/components/Playground.module.css
+++ b/packages/website/src/components/Playground.module.css
@@ -88,7 +88,7 @@
}
.options {
- width: 100%;
+ display: none;
}
.tabCode {
diff --git a/packages/website/src/components/editor/LoadedEditor.tsx b/packages/website/src/components/editor/LoadedEditor.tsx
index 4ef26784f9da..0269c62e7f5f 100644
--- a/packages/website/src/components/editor/LoadedEditor.tsx
+++ b/packages/website/src/components/editor/LoadedEditor.tsx
@@ -86,6 +86,21 @@ export const LoadedEditor: React.FC = ({
onMarkersChange(parseMarkers(markers, codeActions, model));
}, []);
+ useEffect(() => {
+ const newPath = jsx ? '/input.tsx' : '/input.ts';
+ if (tabs.code.uri.path !== newPath) {
+ const newModel = sandboxInstance.monaco.editor.createModel(
+ tabs.code.getValue(),
+ 'typescript',
+ sandboxInstance.monaco.Uri.file(newPath),
+ );
+ newModel.updateOptions({ tabSize: 2, insertSpaces: true });
+ sandboxInstance.editor.setModel(newModel);
+ tabs.code.dispose();
+ tabs.code = newModel;
+ }
+ }, [jsx]);
+
useEffect(() => {
const config = createCompilerOptions(jsx, parseTSConfig(tsconfig));
webLinter.updateCompilerOptions(config);
diff --git a/packages/website/src/components/layout/Expander.module.css b/packages/website/src/components/layout/Expander.module.css
index bd7df1af6644..28640f9c69ff 100644
--- a/packages/website/src/components/layout/Expander.module.css
+++ b/packages/website/src/components/layout/Expander.module.css
@@ -39,14 +39,14 @@
.arrow {
margin: 0 0.5rem 0 0;
- transform: rotateZ(-90deg);
+ transform: rotateZ(0deg);
transition: transform 250ms ease-in-out;
width: 1rem;
height: 1rem;
}
-.expandedArrow {
- transform: rotateZ(0deg);
+.arrow.expandedArrow {
+ transform: rotateZ(90deg);
}
.children {
diff --git a/packages/website/src/components/layout/Expander.tsx b/packages/website/src/components/layout/Expander.tsx
index 23d632be3b33..247b972d0df2 100644
--- a/packages/website/src/components/layout/Expander.tsx
+++ b/packages/website/src/components/layout/Expander.tsx
@@ -1,4 +1,6 @@
-import React, { useState } from 'react';
+import React from 'react';
+import clsx from 'clsx';
+import { useCollapsible, Collapsible } from '@docusaurus/theme-common';
import styles from './Expander.module.css';
import ArrowIcon from '@site/src/icons/arrow.svg';
@@ -10,23 +12,21 @@ export interface ExpanderProps {
}
function Expander(props: ExpanderProps): JSX.Element {
- const [isExpanded, setIsExpanded] = useState(true);
-
- const handleToggle = (): void => {
- setIsExpanded(!isExpanded);
- };
+ const { collapsed, toggleCollapsed } = useCollapsible({
+ initialState: false,
+ });
return (
-
-
+
+
{props.label}
- {isExpanded &&
{props.children}
}
+
+ {props.children}
+
);
}
diff --git a/packages/website/src/components/lib/markdown.ts b/packages/website/src/components/lib/markdown.ts
index 2d9c206ab121..ab9175dc2f09 100644
--- a/packages/website/src/components/lib/markdown.ts
+++ b/packages/website/src/components/lib/markdown.ts
@@ -50,6 +50,7 @@ export function createMarkdown(state: ConfigModel): string {
export function createMarkdownParams(state: ConfigModel): string {
const params = {
+ labels: 'bug,package: eslint-plugin,triage',
template: '1-bug-report-plugin.yaml',
title: 'Bug: [rule name here] ',
'playground-link': document.location.toString(),
diff --git a/packages/website/src/css/custom.css b/packages/website/src/css/custom.css
index b1e23a6dcd33..2324486fc7e5 100644
--- a/packages/website/src/css/custom.css
+++ b/packages/website/src/css/custom.css
@@ -108,3 +108,8 @@ h6 {
.myLineDecoration {
background-color: var(--code-line-decoration);
}
+
+/* indent the nested checklist for the rule doc attributes */
+ul.contains-task-list > li > ul.contains-task-list {
+ padding-left: 24px;
+}
diff --git a/packages/website/tsconfig.json b/packages/website/tsconfig.json
index 3488d04f2e95..2dd71ec3f252 100644
--- a/packages/website/tsconfig.json
+++ b/packages/website/tsconfig.json
@@ -16,5 +16,5 @@
},
"types": ["@docusaurus/module-type-aliases", "@docusaurus/theme-classic"]
},
- "include": ["src/"]
+ "include": ["src/", "plugins/", "typings", "./docusaurusConfig.ts"]
}
diff --git a/packages/website/typings/remark-docusaurus-tabs.d.ts b/packages/website/typings/remark-docusaurus-tabs.d.ts
new file mode 100644
index 000000000000..9dab9651dd63
--- /dev/null
+++ b/packages/website/typings/remark-docusaurus-tabs.d.ts
@@ -0,0 +1,5 @@
+declare module 'remark-docusaurus-tabs' {
+ import type { Plugin } from 'unified';
+ const plugin: Plugin;
+ export = plugin;
+}
diff --git a/packages/website/webpack.plugin.js b/packages/website/webpack.plugin.js
index da4a32c2f949..fff4c85008be 100644
--- a/packages/website/webpack.plugin.js
+++ b/packages/website/webpack.plugin.js
@@ -1,4 +1,5 @@
const webpack = require('webpack');
+const path = require('path');
const CopyPlugin = require('copy-webpack-plugin');
module.exports = function (/*context, options*/) {
@@ -24,8 +25,10 @@ module.exports = function (/*context, options*/) {
new CopyPlugin({
patterns: [
{
- from: require.resolve('@typescript-eslint/website-eslint'),
- to: './sandbox/index.js',
+ from: path.dirname(
+ require.resolve('@typescript-eslint/website-eslint'),
+ ),
+ to: './sandbox/',
},
],
}),
diff --git a/yarn.lock b/yarn.lock
index fed21c26d41d..c0cbb5684a92 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1196,158 +1196,6 @@
resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9"
integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==
-"@commitlint/cli@^16.2.4":
- version "16.2.4"
- resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-16.2.4.tgz#f22707918d08c27a19779798788a7c793f1d38e6"
- integrity sha512-rbvqvz9JI+uiKxV2nH65BtSU01fsADd3bxe9fWtO3rM0c+CI/H9FfzKkDLvSRmXjvk1G2/wXlCGeqO9IBT4X9g==
- dependencies:
- "@commitlint/format" "^16.2.1"
- "@commitlint/lint" "^16.2.4"
- "@commitlint/load" "^16.2.4"
- "@commitlint/read" "^16.2.1"
- "@commitlint/types" "^16.2.1"
- lodash "^4.17.19"
- resolve-from "5.0.0"
- resolve-global "1.0.0"
- yargs "^17.0.0"
-
-"@commitlint/config-conventional@^16.2.4":
- version "16.2.4"
- resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-16.2.4.tgz#56647108c89ed06fc5271242787550331988c0fb"
- integrity sha512-av2UQJa3CuE5P0dzxj/o/B9XVALqYzEViHrMXtDrW9iuflrqCStWBAioijppj9URyz6ONpohJKAtSdgAOE0gkA==
- dependencies:
- conventional-changelog-conventionalcommits "^4.3.1"
-
-"@commitlint/config-validator@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-16.2.1.tgz#794e769afd4756e4cf1bfd823b6612932e39c56d"
- integrity sha512-hogSe0WGg7CKmp4IfNbdNES3Rq3UEI4XRPB8JL4EPgo/ORq5nrGTVzxJh78omibNuB8Ho4501Czb1Er1MoDWpw==
- dependencies:
- "@commitlint/types" "^16.2.1"
- ajv "^6.12.6"
-
-"@commitlint/ensure@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-16.2.1.tgz#0fc538173f95c1eb2694eeedb79cab478347f16f"
- integrity sha512-/h+lBTgf1r5fhbDNHOViLuej38i3rZqTQnBTk+xEg+ehOwQDXUuissQ5GsYXXqI5uGy+261ew++sT4EA3uBJ+A==
- dependencies:
- "@commitlint/types" "^16.2.1"
- lodash "^4.17.19"
-
-"@commitlint/execute-rule@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-16.2.1.tgz#60be73be4b9af97a41546e7ce59fdd33787c65f8"
- integrity sha512-oSls82fmUTLM6cl5V3epdVo4gHhbmBFvCvQGHBRdQ50H/690Uq1Dyd7hXMuKITCIdcnr9umyDkr8r5C6HZDF3g==
-
-"@commitlint/format@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-16.2.1.tgz#6e673f710c799be78e68b2682323e04f75080d07"
- integrity sha512-Yyio9bdHWmNDRlEJrxHKglamIk3d6hC0NkEUW6Ti6ipEh2g0BAhy8Od6t4vLhdZRa1I2n+gY13foy+tUgk0i1Q==
- dependencies:
- "@commitlint/types" "^16.2.1"
- chalk "^4.0.0"
-
-"@commitlint/is-ignored@^16.2.4":
- version "16.2.4"
- resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-16.2.4.tgz#369e40a240ad5451bf2b57a80829253129d7f19b"
- integrity sha512-Lxdq9aOAYCOOOjKi58ulbwK/oBiiKz+7Sq0+/SpFIEFwhHkIVugvDvWjh2VRBXmRC/x5lNcjDcYEwS/uYUvlYQ==
- dependencies:
- "@commitlint/types" "^16.2.1"
- semver "7.3.7"
-
-"@commitlint/lint@^16.2.4":
- version "16.2.4"
- resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-16.2.4.tgz#575f5a9d227dddfca8386253d9aff27be5b94788"
- integrity sha512-AUDuwOxb2eGqsXbTMON3imUGkc1jRdtXrbbohiLSCSk3jFVXgJLTMaEcr39pR00N8nE9uZ+V2sYaiILByZVmxQ==
- dependencies:
- "@commitlint/is-ignored" "^16.2.4"
- "@commitlint/parse" "^16.2.1"
- "@commitlint/rules" "^16.2.4"
- "@commitlint/types" "^16.2.1"
-
-"@commitlint/load@>6.1.1", "@commitlint/load@^16.2.4":
- version "16.2.4"
- resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-16.2.4.tgz#32c9f4c6538b21cf48cf40266312bb1adb65f435"
- integrity sha512-HjANm3/29ROV+zt4yfaY/K6gpr9Dbzgtlp0kSwZGW0poDXlD/yqVYgPQ6JolJzZii5FUz5R4yVLC15hVL/w60w==
- dependencies:
- "@commitlint/config-validator" "^16.2.1"
- "@commitlint/execute-rule" "^16.2.1"
- "@commitlint/resolve-extends" "^16.2.1"
- "@commitlint/types" "^16.2.1"
- "@types/node" ">=12"
- chalk "^4.0.0"
- cosmiconfig "^7.0.0"
- cosmiconfig-typescript-loader "^1.0.0"
- lodash "^4.17.19"
- resolve-from "^5.0.0"
- typescript "^4.4.3"
-
-"@commitlint/message@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-16.2.1.tgz#bc6a0fa446a746ac2ca78cf372e4cec48daf620d"
- integrity sha512-2eWX/47rftViYg7a3axYDdrgwKv32mxbycBJT6OQY/MJM7SUfYNYYvbMFOQFaA4xIVZt7t2Alyqslbl6blVwWw==
-
-"@commitlint/parse@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-16.2.1.tgz#50b359cb711ec566d2ee236a8e4c6baca07b77c0"
- integrity sha512-2NP2dDQNL378VZYioLrgGVZhWdnJO4nAxQl5LXwYb08nEcN+cgxHN1dJV8OLJ5uxlGJtDeR8UZZ1mnQ1gSAD/g==
- dependencies:
- "@commitlint/types" "^16.2.1"
- conventional-changelog-angular "^5.0.11"
- conventional-commits-parser "^3.2.2"
-
-"@commitlint/read@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-16.2.1.tgz#e0539205d77cdb6879b560f95e5fb251e0c6f562"
- integrity sha512-tViXGuaxLTrw2r7PiYMQOFA2fueZxnnt0lkOWqKyxT+n2XdEMGYcI9ID5ndJKXnfPGPppD0w/IItKsIXlZ+alw==
- dependencies:
- "@commitlint/top-level" "^16.2.1"
- "@commitlint/types" "^16.2.1"
- fs-extra "^10.0.0"
- git-raw-commits "^2.0.0"
-
-"@commitlint/resolve-extends@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-16.2.1.tgz#2f7833a5a3a7aa79f508e59fcb0f1d33c45ed360"
- integrity sha512-NbbCMPKTFf2J805kwfP9EO+vV+XvnaHRcBy6ud5dF35dxMsvdJqke54W3XazXF1ZAxC4a3LBy4i/GNVBAthsEg==
- dependencies:
- "@commitlint/config-validator" "^16.2.1"
- "@commitlint/types" "^16.2.1"
- import-fresh "^3.0.0"
- lodash "^4.17.19"
- resolve-from "^5.0.0"
- resolve-global "^1.0.0"
-
-"@commitlint/rules@^16.2.4":
- version "16.2.4"
- resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-16.2.4.tgz#c2fbbf20d9d0e8fcf25690c88a27750d4a3e867b"
- integrity sha512-rK5rNBIN2ZQNQK+I6trRPK3dWa0MtaTN4xnwOma1qxa4d5wQMQJtScwTZjTJeallFxhOgbNOgr48AMHkdounVg==
- dependencies:
- "@commitlint/ensure" "^16.2.1"
- "@commitlint/message" "^16.2.1"
- "@commitlint/to-lines" "^16.2.1"
- "@commitlint/types" "^16.2.1"
- execa "^5.0.0"
-
-"@commitlint/to-lines@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-16.2.1.tgz#42d000f34dc0406f514991e86237fdab5e8affd0"
- integrity sha512-9/VjpYj5j1QeY3eiog1zQWY6axsdWAc0AonUUfyZ7B0MVcRI0R56YsHAfzF6uK/g/WwPZaoe4Lb1QCyDVnpVaQ==
-
-"@commitlint/top-level@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-16.2.1.tgz#bdaa53ab3d8970e0288879f1a342a8c2dfe01583"
- integrity sha512-lS6GSieHW9y6ePL73ied71Z9bOKyK+Ib9hTkRsB8oZFAyQZcyRwq2w6nIa6Fngir1QW51oKzzaXfJL94qwImyw==
- dependencies:
- find-up "^5.0.0"
-
-"@commitlint/types@^16.2.1":
- version "16.2.1"
- resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-16.2.1.tgz#f25d373b88b01e51fc3fa44488101361945a61bd"
- integrity sha512-7/z7pA7BM0i8XvMSBynO7xsB3mVQPUZbVn6zMIlp/a091XJ3qAXRXc+HwLYhiIdzzS5fuxxNIHZMGHVD4HJxdA==
- dependencies:
- chalk "^4.0.0"
-
"@cspell/cspell-bundled-dicts@^5.20.0":
version "5.20.0"
resolved "https://registry.yarnpkg.com/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-5.20.0.tgz#294106a2660baf825494535019a0d2230c3cc0c1"
@@ -2338,6 +2186,14 @@
resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea"
integrity sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==
+"@jridgewell/source-map@^0.3.2":
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb"
+ integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==
+ dependencies:
+ "@jridgewell/gen-mapping" "^0.3.0"
+ "@jridgewell/trace-mapping" "^0.3.9"
+
"@jridgewell/sourcemap-codec@^1.4.10":
version "1.4.11"
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec"
@@ -3083,9 +2939,9 @@
"@rushstack/node-core-library" "3.45.5"
"@microsoft/api-extractor@^7.23.2":
- version "7.24.1"
- resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.24.1.tgz#cbbe32a5f4f32717b60f593cdc172b99e5c76fae"
- integrity sha512-RjcKRvKRAtTK4z8UdC2qYsvgTYHEYvdsqF4QGoX4mNAVo7s6Jj4zcHtSrMEQMTUHujZbSd5+ihI5ktISp338mQ==
+ version "7.24.2"
+ resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.24.2.tgz#4abb24319fa77884dab6d807388056e9cd85488e"
+ integrity sha512-QWZh9aQZvBAdRVK+Go8NiW8YNMN//OGiNqgA3iZ2sEy8imUqkRBCybXgmw2HkEYyPnn55CFoMKvnAHvV9+4B/A==
dependencies:
"@microsoft/api-extractor-model" "7.17.3"
"@microsoft/tsdoc" "0.14.1"
@@ -4170,7 +4026,7 @@
dependencies:
"@types/node" "*"
-"@types/node@*", "@types/node@12.20.24", "@types/node@>=12", "@types/node@^14.14.31", "@types/node@^17.0.31", "@types/node@^17.0.5":
+"@types/node@*", "@types/node@12.20.24", "@types/node@^14.14.31", "@types/node@^17.0.31", "@types/node@^17.0.5":
version "17.0.31"
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d"
integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==
@@ -4587,7 +4443,7 @@ ajv-keywords@^5.0.0:
dependencies:
fast-deep-equal "^3.1.3"
-ajv@^6.10.0, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.12.6, ajv@~6.12.6:
+ajv@^6.10.0, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@~6.12.6:
version "6.12.6"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
@@ -4646,11 +4502,6 @@ ansi-colors@^4.1.1:
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==
-ansi-escapes@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
- integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==
-
ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
version "4.3.2"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
@@ -4668,16 +4519,6 @@ ansi-regex@^2.0.0:
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
-ansi-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
- integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
-
-ansi-regex@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997"
- integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==
-
ansi-regex@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
@@ -5350,11 +5191,6 @@ cacheable-request@^6.0.0:
normalize-url "^4.1.0"
responselike "^1.0.2"
-cachedir@2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.2.0.tgz#19afa4305e05d79e417566882e0c8f960f62ff0e"
- integrity sha512-VvxA0xhNqIIfg0V9AmJkDg91DaJwryutH5rVEZAhcNi4iJFj9f+QxmAjgK1LT9I8OgToX27fypX6/MeCXVbBjQ==
-
cachedir@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.3.0.tgz#0c75892a052198f0b21c7c1804d8331edfcae0e8"
@@ -5446,7 +5282,7 @@ chalk@4.1.0:
ansi-styles "^4.1.0"
supports-color "^7.1.0"
-chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2:
+chalk@^2.0.0, chalk@^2.3.0:
version "2.4.2"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@@ -5615,13 +5451,6 @@ cli-cursor@3.1.0, cli-cursor@^3.1.0:
dependencies:
restore-cursor "^3.1.0"
-cli-cursor@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
- integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=
- dependencies:
- restore-cursor "^2.0.0"
-
cli-spinners@2.6.1:
version "2.6.1"
resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d"
@@ -5652,11 +5481,6 @@ cli-truncate@^3.1.0:
slice-ansi "^5.0.0"
string-width "^5.0.0"
-cli-width@^2.0.0:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
- integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
-
cli-width@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6"
@@ -5820,10 +5644,10 @@ commander@^8.3.0:
resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66"
integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==
-commander@^9.2.0:
- version "9.2.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9"
- integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==
+commander@^9.2.0, commander@^9.3.0:
+ version "9.3.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-9.3.0.tgz#f619114a5a2d2054e0d9ff1b31d5ccf89255e26b"
+ integrity sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw==
commander@~9.0.0:
version "9.0.0"
@@ -5841,26 +5665,6 @@ comment-json@^4.2.2:
has-own-prop "^2.0.0"
repeat-string "^1.6.1"
-commitizen@^4.0.3:
- version "4.2.4"
- resolved "https://registry.yarnpkg.com/commitizen/-/commitizen-4.2.4.tgz#a3e5b36bd7575f6bf6e7aa19dbbf06b0d8f37165"
- integrity sha512-LlZChbDzg3Ir3O2S7jSo/cgWp5/QwylQVr59K4xayVq8S4/RdKzSyJkghAiZZHfhh5t4pxunUoyeg0ml1q/7aw==
- dependencies:
- cachedir "2.2.0"
- cz-conventional-changelog "3.2.0"
- dedent "0.7.0"
- detect-indent "6.0.0"
- find-node-modules "^2.1.2"
- find-root "1.1.0"
- fs-extra "8.1.0"
- glob "7.1.4"
- inquirer "6.5.2"
- is-utf8 "^0.2.1"
- lodash "^4.17.20"
- minimist "1.2.5"
- strip-bom "4.0.0"
- strip-json-comments "3.0.1"
-
common-ancestor-path@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz#4f7d2d1394d91b7abdf51871c62f71eadb0182a7"
@@ -5971,7 +5775,7 @@ content-type@~1.0.4:
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==
-conventional-changelog-angular@^5.0.11, conventional-changelog-angular@^5.0.12:
+conventional-changelog-angular@^5.0.12:
version "5.0.13"
resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c"
integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==
@@ -5979,15 +5783,6 @@ conventional-changelog-angular@^5.0.11, conventional-changelog-angular@^5.0.12:
compare-func "^2.0.0"
q "^1.5.1"
-conventional-changelog-conventionalcommits@^4.3.1:
- version "4.6.1"
- resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.1.tgz#f4c0921937050674e578dc7875f908351ccf4014"
- integrity sha512-lzWJpPZhbM1R0PIzkwzGBCnAkH5RKJzJfFQZcl/D+2lsJxAwGnDKBqn/F4C1RD31GJNn8NuKWQzAZDAVXPp2Mw==
- dependencies:
- compare-func "^2.0.0"
- lodash "^4.17.15"
- q "^1.5.1"
-
conventional-changelog-core@^4.2.2:
version "4.2.4"
resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f"
@@ -6028,11 +5823,6 @@ conventional-changelog-writer@^5.0.0:
split "^1.0.0"
through2 "^4.0.0"
-conventional-commit-types@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/conventional-commit-types/-/conventional-commit-types-3.0.0.tgz#7c9214e58eae93e85dd66dbfbafe7e4fffa2365b"
- integrity sha512-SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==
-
conventional-commits-filter@^2.0.7:
version "2.0.7"
resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3"
@@ -6041,7 +5831,7 @@ conventional-commits-filter@^2.0.7:
lodash.ismatch "^4.4.0"
modify-values "^1.0.0"
-conventional-commits-parser@^3.2.0, conventional-commits-parser@^3.2.2:
+conventional-commits-parser@^3.2.0:
version "3.2.3"
resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.3.tgz#fc43704698239451e3ef35fd1d8ed644f46bd86e"
integrity sha512-YyRDR7On9H07ICFpRm/igcdjIqebXbvf4Cff+Pf0BrBys1i1EOzx9iFXNlAbdrLAR8jf7bkUYkDAr8pEy0q4Pw==
@@ -6129,14 +5919,6 @@ core-util-is@^1.0.3, core-util-is@~1.0.0:
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
-cosmiconfig-typescript-loader@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-1.0.3.tgz#528f2bb3e6b6705020dc42df659f24837e75b611"
- integrity sha512-ARo21VjxdacJUcHxgVMEYNIoVPYiuKOEwWBIYej4M22+pEbe3LzKgmht2UPM+0u7/T/KnZf2r/5IzHv2Nwz+/w==
- dependencies:
- cosmiconfig "^7"
- ts-node "^10.4.0"
-
cosmiconfig@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982"
@@ -6148,7 +5930,7 @@ cosmiconfig@^6.0.0:
path-type "^4.0.0"
yaml "^1.7.2"
-cosmiconfig@^7, cosmiconfig@^7.0.0, cosmiconfig@^7.0.1:
+cosmiconfig@^7.0.0, cosmiconfig@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d"
integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==
@@ -6483,34 +6265,6 @@ cypress@8.3.0:
url "^0.11.0"
yauzl "^2.10.0"
-cz-conventional-changelog@3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.2.0.tgz#6aef1f892d64113343d7e455529089ac9f20e477"
- integrity sha512-yAYxeGpVi27hqIilG1nh4A9Bnx4J3Ov+eXy4koL3drrR+IO9GaWPsKjik20ht608Asqi8TQPf0mczhEeyAtMzg==
- dependencies:
- chalk "^2.4.1"
- commitizen "^4.0.3"
- conventional-commit-types "^3.0.0"
- lodash.map "^4.5.1"
- longest "^2.0.1"
- word-wrap "^1.0.3"
- optionalDependencies:
- "@commitlint/load" ">6.1.1"
-
-cz-conventional-changelog@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.3.0.tgz#9246947c90404149b3fe2cf7ee91acad3b7d22d2"
- integrity sha512-U466fIzU5U22eES5lTNiNbZ+d8dfcHcssH4o7QsdWaCcRs/feIPCxKYSWkYBNs5mny7MvEfwpTLWjvbm94hecw==
- dependencies:
- chalk "^2.4.1"
- commitizen "^4.0.3"
- conventional-commit-types "^3.0.0"
- lodash.map "^4.5.1"
- longest "^2.0.1"
- word-wrap "^1.0.3"
- optionalDependencies:
- "@commitlint/load" ">6.1.1"
-
damerau-levenshtein@^1.0.7:
version "1.0.7"
resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz#64368003512a1a6992593741a09a9d31a836f55d"
@@ -6589,7 +6343,7 @@ decompress-response@^3.3.0:
dependencies:
mimic-response "^1.0.0"
-dedent@0.7.0, dedent@^0.7.0:
+dedent@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=
@@ -6692,16 +6446,6 @@ detab@2.0.4:
dependencies:
repeat-string "^1.5.4"
-detect-file@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
- integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
-
-detect-indent@6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd"
- integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA==
-
detect-indent@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d"
@@ -7470,13 +7214,6 @@ exit@^0.1.2:
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
-expand-tilde@^2.0.0, expand-tilde@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502"
- integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=
- dependencies:
- homedir-polyfill "^1.0.1"
-
expect@^28.1.0:
version "28.1.0"
resolved "https://registry.yarnpkg.com/expect/-/expect-28.1.0.tgz#10e8da64c0850eb8c39a480199f14537f46e8360"
@@ -7683,13 +7420,6 @@ figures@3.2.0, figures@^3.0.0, figures@^3.2.0:
dependencies:
escape-string-regexp "^1.0.5"
-figures@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
- integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=
- dependencies:
- escape-string-regexp "^1.0.5"
-
file-entry-cache@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
@@ -7751,19 +7481,6 @@ find-cache-dir@^3.3.1:
make-dir "^3.0.2"
pkg-dir "^4.1.0"
-find-node-modules@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/find-node-modules/-/find-node-modules-2.1.2.tgz#57565a3455baf671b835bc6b2134a9b938b9c53c"
- integrity sha512-x+3P4mbtRPlSiVE1Qco0Z4YLU8WFiFcuWTf3m75OV9Uzcfs2Bg+O9N+r/K0AnmINBW06KpfqKwYJbFlFq4qNug==
- dependencies:
- findup-sync "^4.0.0"
- merge "^2.1.0"
-
-find-root@1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4"
- integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==
-
find-up@^2.0.0, find-up@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
@@ -7794,16 +7511,6 @@ find-up@^5.0.0:
locate-path "^6.0.0"
path-exists "^4.0.0"
-findup-sync@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-4.0.0.tgz#956c9cdde804052b881b428512905c4a5f2cdef0"
- integrity sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==
- dependencies:
- detect-file "^1.0.0"
- is-glob "^4.0.0"
- micromatch "^4.0.2"
- resolve-dir "^1.0.1"
-
flat-cache@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
@@ -7888,16 +7595,7 @@ fs-constants@^1.0.0:
resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
-fs-extra@8.1.0:
- version "8.1.0"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
- integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
- dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^4.0.0"
- universalify "^0.1.0"
-
-fs-extra@^10.0.0, fs-extra@^10.1.0:
+fs-extra@^10.1.0:
version "10.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
@@ -8100,7 +7798,7 @@ getpass@^0.1.1:
dependencies:
assert-plus "^1.0.0"
-git-raw-commits@^2.0.0, git-raw-commits@^2.0.8:
+git-raw-commits@^2.0.8:
version "2.0.10"
resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1"
integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ==
@@ -8222,15 +7920,6 @@ global-dirs@^3.0.0:
dependencies:
ini "2.0.0"
-global-modules@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea"
- integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==
- dependencies:
- global-prefix "^1.0.1"
- is-windows "^1.0.1"
- resolve-dir "^1.0.0"
-
global-modules@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780"
@@ -8238,17 +7927,6 @@ global-modules@^2.0.0:
dependencies:
global-prefix "^3.0.0"
-global-prefix@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe"
- integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=
- dependencies:
- expand-tilde "^2.0.2"
- homedir-polyfill "^1.0.1"
- ini "^1.3.4"
- is-windows "^1.0.1"
- which "^1.2.14"
-
global-prefix@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97"
@@ -8528,13 +8206,6 @@ hoist-non-react-statics@^3.1.0:
dependencies:
react-is "^16.7.0"
-homedir-polyfill@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8"
- integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==
- dependencies:
- parse-passwd "^1.0.0"
-
hosted-git-info@^2.1.4:
version "2.8.9"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
@@ -8907,25 +8578,6 @@ inline-style-parser@0.1.1:
resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1"
integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==
-inquirer@6.5.2:
- version "6.5.2"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca"
- integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==
- dependencies:
- ansi-escapes "^3.2.0"
- chalk "^2.4.2"
- cli-cursor "^2.1.0"
- cli-width "^2.0.0"
- external-editor "^3.0.3"
- figures "^2.0.0"
- lodash "^4.17.12"
- mute-stream "0.0.7"
- run-async "^2.2.0"
- rxjs "^6.4.0"
- string-width "^2.1.0"
- strip-ansi "^5.1.0"
- through "^2.3.6"
-
inquirer@^7.3.3:
version "7.3.3"
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003"
@@ -9093,11 +8745,6 @@ is-fullwidth-code-point@^1.0.0:
dependencies:
number-is-nan "^1.0.0"
-is-fullwidth-code-point@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
- integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
-
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
@@ -9287,11 +8934,6 @@ is-unicode-supported@^0.1.0:
resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7"
integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==
-is-utf8@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
- integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
-
is-weakref@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
@@ -9304,11 +8946,6 @@ is-whitespace-character@^1.0.0:
resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7"
integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==
-is-windows@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
- integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
-
is-word-character@^1.0.0:
version "1.0.4"
resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230"
@@ -9749,6 +9386,15 @@ jest-watcher@^28.1.0:
jest-util "^28.1.0"
string-length "^4.0.1"
+jest-worker@^26.2.1:
+ version "26.6.2"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed"
+ integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==
+ dependencies:
+ "@types/node" "*"
+ merge-stream "^2.0.0"
+ supports-color "^7.0.0"
+
jest-worker@^27.4.5, jest-worker@^27.5.1:
version "27.5.1"
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0"
@@ -10055,10 +9701,10 @@ libnpmpublish@^4.0.0:
semver "^7.1.3"
ssri "^8.0.1"
-lilconfig@2.0.4, lilconfig@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082"
- integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==
+lilconfig@2.0.5, lilconfig@^2.0.3:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25"
+ integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==
lines-and-columns@^1.1.6:
version "1.1.6"
@@ -10073,23 +9719,23 @@ linkify-it@^3.0.1:
uc.micro "^1.0.1"
lint-staged@^12.4.1:
- version "12.4.1"
- resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.4.1.tgz#63fa27bfc8a33515f6902f63f6670864f1fb233c"
- integrity sha512-PTXgzpflrQ+pODQTG116QNB+Q6uUTDg5B5HqGvNhoQSGt8Qy+MA/6zSnR8n38+sxP5TapzeQGTvoKni0KRS8Vg==
+ version "12.4.3"
+ resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.4.3.tgz#914fa468458364e14cc952145db552d87c8847b6"
+ integrity sha512-eH6SKOmdm/ZwCRMTZAmM3q3dPkpq6vco/BfrOw8iGun4Xs/thYegPD/MLIwKO+iPkzibkLJuQcRhRLXKvaKreg==
dependencies:
cli-truncate "^3.1.0"
colorette "^2.0.16"
- commander "^8.3.0"
- debug "^4.3.3"
+ commander "^9.3.0"
+ debug "^4.3.4"
execa "^5.1.1"
- lilconfig "2.0.4"
- listr2 "^4.0.1"
- micromatch "^4.0.4"
+ lilconfig "2.0.5"
+ listr2 "^4.0.5"
+ micromatch "^4.0.5"
normalize-path "^3.0.0"
- object-inspect "^1.12.0"
+ object-inspect "^1.12.2"
pidtree "^0.5.0"
string-argv "^0.3.1"
- supports-color "^9.2.1"
+ supports-color "^9.2.2"
yaml "^1.10.2"
listr2@^3.8.3:
@@ -10106,17 +9752,17 @@ listr2@^3.8.3:
through "^2.3.8"
wrap-ansi "^7.0.0"
-listr2@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.1.tgz#e050c1fd390276e191f582603d6e3531cd6fd2b3"
- integrity sha512-D65Nl+zyYHL2jQBGmxtH/pU8koPZo5C8iCNE8EoB04RwPgQG1wuaKwVbeZv9LJpiH4Nxs0FCp+nNcG8OqpniiA==
+listr2@^4.0.5:
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.5.tgz#9dcc50221583e8b4c71c43f9c7dfd0ef546b75d5"
+ integrity sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==
dependencies:
cli-truncate "^2.1.0"
colorette "^2.0.16"
log-update "^4.0.0"
p-map "^4.0.0"
rfdc "^1.3.0"
- rxjs "^7.5.2"
+ rxjs "^7.5.5"
through "^2.3.8"
wrap-ansi "^7.0.0"
@@ -10254,7 +9900,7 @@ lodash.ismatch@^4.4.0:
resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37"
integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc=
-lodash.map@^4.4.0, lodash.map@^4.5.1:
+lodash.map@^4.4.0:
version "4.6.0"
resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3"
integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=
@@ -10314,7 +9960,7 @@ lodash.uniq@4.5.0, lodash.uniq@^4.5.0:
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
-lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0, lodash@~4.17.15:
+lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0, lodash@~4.17.15:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -10337,11 +9983,6 @@ log-update@^4.0.0:
slice-ansi "^4.0.0"
wrap-ansi "^6.2.0"
-longest@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/longest/-/longest-2.0.1.tgz#781e183296aa94f6d4d916dc335d0d17aefa23f8"
- integrity sha1-eB4YMpaqlPbU2RbcM10NF676I/g=
-
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
@@ -10630,11 +10271,6 @@ merge2@^1.3.0, merge2@^1.4.1:
resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
-merge@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/merge/-/merge-2.1.1.tgz#59ef4bf7e0b3e879186436e8481c06a6c162ca98"
- integrity sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==
-
methods@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
@@ -10682,11 +10318,6 @@ mime@^2.3.1:
resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
-mimic-fn@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
- integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
-
mimic-fn@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
@@ -10759,11 +10390,6 @@ minimist-options@4.1.0:
is-plain-obj "^1.1.0"
kind-of "^6.0.3"
-minimist@1.2.5:
- version "1.2.5"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
- integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
-
minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6:
version "1.2.6"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
@@ -10907,11 +10533,6 @@ multimatch@^5.0.0:
arrify "^2.0.1"
minimatch "^3.0.4"
-mute-stream@0.0.7:
- version "0.0.7"
- resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
- integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
-
mute-stream@0.0.8, mute-stream@~0.0.4:
version "0.0.8"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d"
@@ -11273,10 +10894,10 @@ object-assign@^4.1.0, object-assign@^4.1.1:
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
-object-inspect@^1.12.0, object-inspect@^1.9.0:
- version "1.12.0"
- resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
- integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
+object-inspect@^1.12.0, object-inspect@^1.12.2, object-inspect@^1.9.0:
+ version "1.12.2"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea"
+ integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==
object-keys@^1.1.1:
version "1.1.1"
@@ -11352,13 +10973,6 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0:
dependencies:
wrappy "1"
-onetime@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
- integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=
- dependencies:
- mimic-fn "^1.0.0"
-
onetime@^5.1.0, onetime@^5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
@@ -11626,11 +11240,6 @@ parse-numeric-range@^1.3.0:
resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz#7c63b61190d61e4d53a1197f0c83c47bb670ffa3"
integrity sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==
-parse-passwd@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
- integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
-
parse-path@^4.0.0:
version "4.0.3"
resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf"
@@ -12899,25 +12508,17 @@ resolve-cwd@^3.0.0:
dependencies:
resolve-from "^5.0.0"
-resolve-dir@^1.0.0, resolve-dir@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
- integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=
- dependencies:
- expand-tilde "^2.0.0"
- global-modules "^1.0.0"
-
-resolve-from@5.0.0, resolve-from@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
- integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
-
resolve-from@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
-resolve-global@1.0.0, resolve-global@^1.0.0:
+resolve-from@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
+ integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
+
+resolve-global@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/resolve-global/-/resolve-global-1.0.0.tgz#a2a79df4af2ca3f49bf77ef9ddacd322dad19255"
integrity sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==
@@ -12973,14 +12574,6 @@ responselike@^1.0.2:
dependencies:
lowercase-keys "^1.0.0"
-restore-cursor@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
- integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368=
- dependencies:
- onetime "^2.0.0"
- signal-exit "^3.0.2"
-
restore-cursor@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
@@ -13016,10 +12609,20 @@ rimraf@*, rimraf@^3.0.0, rimraf@^3.0.2:
dependencies:
glob "^7.1.3"
-rollup@^2.72.1:
- version "2.74.1"
- resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.74.1.tgz#4fba0ff1c312cc4ee82691b154eee69a0d01929f"
- integrity sha512-K2zW7kV8Voua5eGkbnBtWYfMIhYhT9Pel2uhBk2WO5eMee161nPze/XRfvEQPFYz7KgrCCnmh2Wy0AMFLGGmMA==
+rollup-plugin-terser@^7.0.2:
+ version "7.0.2"
+ resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d"
+ integrity sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==
+ dependencies:
+ "@babel/code-frame" "^7.10.4"
+ jest-worker "^26.2.1"
+ serialize-javascript "^4.0.0"
+ terser "^5.0.0"
+
+rollup@^2.75.4:
+ version "2.75.4"
+ resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.75.4.tgz#c3518c326c98e508b628a93015a03a276c331f22"
+ integrity sha512-JgZiJMJkKImMZJ8ZY1zU80Z2bA/TvrL/7D9qcBCrfl2bP+HUaIw0QHUroB4E3gBpFl6CRFM1YxGbuYGtdAswbQ==
optionalDependencies:
fsevents "~2.3.2"
@@ -13038,7 +12641,7 @@ rtlcss@^3.5.0:
postcss "^8.3.11"
strip-json-comments "^3.1.1"
-run-async@^2.2.0, run-async@^2.4.0:
+run-async@^2.4.0:
version "2.4.1"
resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455"
integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==
@@ -13065,14 +12668,14 @@ rxjs-for-await@0.0.2:
resolved "https://registry.yarnpkg.com/rxjs-for-await/-/rxjs-for-await-0.0.2.tgz#26598a1d6167147cc192172970e7eed4e620384b"
integrity sha512-IJ8R/ZCFMHOcDIqoABs82jal00VrZx8Xkgfe7TOKoaRPAW5nH/VFlG23bXpeGdrmtqI9UobFPgUKgCuFc7Lncw==
-rxjs@^6.4.0, rxjs@^6.5.4, rxjs@^6.6.0:
+rxjs@^6.5.4, rxjs@^6.6.0:
version "6.6.7"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
dependencies:
tslib "^1.9.0"
-rxjs@^7.4.0, rxjs@^7.5.2, rxjs@^7.5.4:
+rxjs@^7.4.0, rxjs@^7.5.4, rxjs@^7.5.5:
version "7.5.5"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f"
integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==
@@ -13187,18 +12790,18 @@ semver@7.3.4:
dependencies:
lru-cache "^6.0.0"
-semver@7.3.7, semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@~7.3.0:
+semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0:
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
+ integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
+
+semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@~7.3.0:
version "7.3.7"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f"
integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==
dependencies:
lru-cache "^6.0.0"
-semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0:
- version "6.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
- integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
-
send@0.18.0:
version "0.18.0"
resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
@@ -13218,6 +12821,13 @@ send@0.18.0:
range-parser "~1.2.1"
statuses "2.0.1"
+serialize-javascript@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa"
+ integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==
+ dependencies:
+ randombytes "^2.1.0"
+
serialize-javascript@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"
@@ -13489,11 +13099,6 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1:
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-source-map@~0.7.2:
- version "0.7.3"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
- integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
-
sourcemap-codec@^1.4.4:
version "1.4.8"
resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
@@ -13674,14 +13279,6 @@ string-width@^1.0.1:
is-fullwidth-code-point "^3.0.0"
strip-ansi "^6.0.1"
-string-width@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
- integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
- dependencies:
- is-fullwidth-code-point "^2.0.0"
- strip-ansi "^4.0.0"
-
string-width@^5.0.0, string-width@^5.0.1:
version "5.1.2"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
@@ -13753,20 +13350,6 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1:
dependencies:
ansi-regex "^2.0.0"
-strip-ansi@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
- integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
- dependencies:
- ansi-regex "^3.0.0"
-
-strip-ansi@^5.1.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae"
- integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==
- dependencies:
- ansi-regex "^4.1.0"
-
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
@@ -13786,16 +13369,16 @@ strip-bom-string@^1.0.0:
resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92"
integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=
-strip-bom@4.0.0, strip-bom@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
- integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
-
strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
+strip-bom@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
+ integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
+
strip-final-newline@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
@@ -13808,11 +13391,6 @@ strip-indent@^3.0.0:
dependencies:
min-indent "^1.0.0"
-strip-json-comments@3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7"
- integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==
-
strip-json-comments@^3.1.0, strip-json-comments@^3.1.1, strip-json-comments@~3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
@@ -13868,10 +13446,10 @@ supports-color@^8.0.0, supports-color@^8.1.1:
dependencies:
has-flag "^4.0.0"
-supports-color@^9.2.1:
- version "9.2.1"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.1.tgz#599dc9d45acf74c6176e0d880bab1d7d718fe891"
- integrity sha512-Obv7ycoCTG51N7y175StI9BlAXrmgZrFhZOb0/PyjHBher/NmsdBgbbQ1Inhq+gIhz6+7Gb+jWF2Vqi7Mf1xnQ==
+supports-color@^9.2.2:
+ version "9.2.2"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.2.tgz#502acaf82f2b7ee78eb7c83dcac0f89694e5a7bb"
+ integrity sha512-XC6g/Kgux+rJXmwokjm9ECpD6k/smUoS5LKlUCcsYr4IY3rW0XyAympon2RmxGrlnZURMpg5T18gWDP9CsHXFA==
supports-hyperlinks@^2.0.0:
version "2.2.0"
@@ -13961,14 +13539,14 @@ terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.3.1:
source-map "^0.6.1"
terser "^5.7.2"
-terser@^5.10.0, terser@^5.7.2:
- version "5.12.1"
- resolved "https://registry.yarnpkg.com/terser/-/terser-5.12.1.tgz#4cf2ebed1f5bceef5c83b9f60104ac4a78b49e9c"
- integrity sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==
+terser@^5.0.0, terser@^5.10.0, terser@^5.7.2:
+ version "5.14.0"
+ resolved "https://registry.yarnpkg.com/terser/-/terser-5.14.0.tgz#eefeec9af5153f55798180ee2617f390bdd285e2"
+ integrity sha512-JC6qfIEkPBd9j1SMO3Pfn+A6w2kQV54tv+ABQLgZr7dA3k/DL/OBoYSWxzVpZev3J+bUHXfr55L8Mox7AaNo6g==
dependencies:
+ "@jridgewell/source-map" "^0.3.2"
acorn "^8.5.0"
commander "^2.20.0"
- source-map "~0.7.2"
source-map-support "~0.5.20"
test-exclude@^6.0.0:
@@ -14143,7 +13721,7 @@ ts-essentials@^2.0.3:
resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-2.0.12.tgz#c9303f3d74f75fa7528c3d49b80e089ab09d8745"
integrity sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w==
-ts-node@^10.4.0, ts-node@^10.7.0:
+ts-node@^10.7.0:
version "10.7.0"
resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.7.0.tgz#35d503d0fab3e2baa672a0e94f4b40653c2463f5"
integrity sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==
@@ -14294,7 +13872,7 @@ typedarray@^0.0.6:
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
-typescript@*, typescript@4.7.2, "typescript@>=3.3.1 <4.8.0", typescript@^4.4.3, typescript@^4.5.3, typescript@^4.5.5, typescript@~4.6.3:
+typescript@*, typescript@4.7.2, "typescript@>=3.3.1 <4.8.0", typescript@^4.5.3, typescript@^4.5.5, typescript@~4.6.3:
version "4.7.2"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.2.tgz#1f9aa2ceb9af87cca227813b4310fff0b51593c4"
integrity sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A==
@@ -14908,7 +14486,7 @@ which-boxed-primitive@^1.0.2:
is-string "^1.0.5"
is-symbol "^1.0.3"
-which@^1.2.14, which@^1.3.1:
+which@^1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
@@ -14948,7 +14526,7 @@ wildcard@^2.0.0:
resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec"
integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==
-word-wrap@^1.0.3, word-wrap@^1.2.3:
+word-wrap@^1.2.3:
version "1.2.3"
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
@@ -15120,7 +14698,7 @@ yargs@^16.2.0:
y18n "^5.0.5"
yargs-parser "^20.2.2"
-yargs@^17.0.0, yargs@^17.3.1, yargs@^17.4.0:
+yargs@^17.3.1, yargs@^17.4.0:
version "17.4.1"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.4.1.tgz#ebe23284207bb75cee7c408c33e722bfb27b5284"
integrity sha512-WSZD9jgobAg3ZKuCQZSa3g9QOJeCCqLoLAykiWgmXnDo9EPnn4RPf5qVTtzgOx66o6/oqhcA5tHtJXpG8pMt3g==