Bump the npm group with 12 updates (#2003)
* Bump the npm group with 12 updates Bumps the npm group with 12 updates: | Package | From | To | | --- | --- | --- | | [@octokit/types](https://github.com/octokit/types.ts) | `12.1.1` | `12.3.0` | | [@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid) | `9.0.6` | `9.0.7` | | [@types/adm-zip](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/adm-zip) | `0.5.3` | `0.5.4` | | [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-yaml) | `4.0.8` | `4.0.9` | | [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) | `7.5.4` | `7.5.5` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `6.9.1` | `6.12.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `6.9.1` | `6.12.0` | | [eslint](https://github.com/eslint/eslint) | `8.52.0` | `8.54.0` | | [nock](https://github.com/nock/nock) | `13.3.7` | `13.3.8` | | [sinon](https://github.com/sinonjs/sinon) | `17.0.0` | `17.0.1` | | [@types/sinon](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sinon) | `10.0.20` | `17.0.1` | | [typescript](https://github.com/Microsoft/TypeScript) | `5.2.2` | `5.3.2` | Updates `@octokit/types` from 12.1.1 to 12.3.0 - [Release notes](https://github.com/octokit/types.ts/releases) - [Commits](https://github.com/octokit/types.ts/compare/v12.1.1...v12.3.0) Updates `@types/uuid` from 9.0.6 to 9.0.7 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid) Updates `@types/adm-zip` from 0.5.3 to 0.5.4 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/adm-zip) Updates `@types/js-yaml` from 4.0.8 to 4.0.9 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-yaml) Updates `@types/semver` from 7.5.4 to 7.5.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver) Updates `@typescript-eslint/eslint-plugin` from 6.9.1 to 6.12.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.12.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 6.9.1 to 6.12.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.12.0/packages/parser) Updates `eslint` from 8.52.0 to 8.54.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.52.0...v8.54.0) Updates `nock` from 13.3.7 to 13.3.8 - [Release notes](https://github.com/nock/nock/releases) - [Changelog](https://github.com/nock/nock/blob/main/CHANGELOG.md) - [Commits](https://github.com/nock/nock/compare/v13.3.7...v13.3.8) Updates `sinon` from 17.0.0 to 17.0.1 - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v17.0.0...v17.0.1) Updates `@types/sinon` from 10.0.20 to 17.0.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sinon) Updates `typescript` from 5.2.2 to 5.3.2 - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/commits) --- updated-dependencies: - dependency-name: "@octokit/types" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: npm - dependency-name: "@types/uuid" dependency-type: direct:production update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@types/adm-zip" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@types/js-yaml" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@types/semver" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: nock dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@types/sinon" dependency-type: direct:development update-type: version-update:semver-major dependency-group: npm - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm ... Signed-off-by: dependabot[bot] <support@github.com> * Update checked-in dependencies * Rebuild --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
parent
4b6aa0b07d
commit
80150c2141
672 changed files with 41661 additions and 216864 deletions
28
node_modules/eslint/lib/cli-engine/lint-result-cache.js
generated
vendored
28
node_modules/eslint/lib/cli-engine/lint-result-cache.js
generated
vendored
|
|
@ -128,16 +128,28 @@ class LintResultCache {
|
|||
return null;
|
||||
}
|
||||
|
||||
// If source is present but null, need to reread the file from the filesystem.
|
||||
if (
|
||||
fileDescriptor.meta.results &&
|
||||
fileDescriptor.meta.results.source === null
|
||||
) {
|
||||
debug(`Rereading cached result source from filesystem: ${filePath}`);
|
||||
fileDescriptor.meta.results.source = fs.readFileSync(filePath, "utf-8");
|
||||
const cachedResults = fileDescriptor.meta.results;
|
||||
|
||||
// Just in case, not sure if this can ever happen.
|
||||
if (!cachedResults) {
|
||||
return cachedResults;
|
||||
}
|
||||
|
||||
return fileDescriptor.meta.results;
|
||||
/*
|
||||
* Shallow clone the object to ensure that any properties added or modified afterwards
|
||||
* will not be accidentally stored in the cache file when `reconcile()` is called.
|
||||
* https://github.com/eslint/eslint/issues/13507
|
||||
* All intentional changes to the cache file must be done through `setCachedLintResults()`.
|
||||
*/
|
||||
const results = { ...cachedResults };
|
||||
|
||||
// If source is present but null, need to reread the file from the filesystem.
|
||||
if (results.source === null) {
|
||||
debug(`Rereading cached result source from filesystem: ${filePath}`);
|
||||
results.source = fs.readFileSync(filePath, "utf-8");
|
||||
}
|
||||
|
||||
return results;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
4
node_modules/eslint/lib/linter/linter.js
generated
vendored
4
node_modules/eslint/lib/linter/linter.js
generated
vendored
|
|
@ -1422,7 +1422,7 @@ class Linter {
|
|||
verify(textOrSourceCode, config, filenameOrOptions) {
|
||||
debug("Verify");
|
||||
|
||||
const { configType } = internalSlotsMap.get(this);
|
||||
const { configType, cwd } = internalSlotsMap.get(this);
|
||||
|
||||
const options = typeof filenameOrOptions === "string"
|
||||
? { filename: filenameOrOptions }
|
||||
|
|
@ -1441,7 +1441,7 @@ class Linter {
|
|||
let configArray = config;
|
||||
|
||||
if (!Array.isArray(config) || typeof config.getConfig !== "function") {
|
||||
configArray = new FlatConfigArray(config);
|
||||
configArray = new FlatConfigArray(config, { basePath: cwd });
|
||||
configArray.normalizeSync();
|
||||
}
|
||||
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/array-bracket-newline.js
generated
vendored
3
node_modules/eslint/lib/rules/array-bracket-newline.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce linebreaks after open and before close array brackets
|
||||
* @author Jan Peer Stöcklmair <https://github.com/JPeer264>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/array-bracket-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/array-bracket-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallows or enforces spaces inside of array brackets.
|
||||
* @author Jamund Ferguson
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/array-element-newline.js
generated
vendored
3
node_modules/eslint/lib/rules/array-element-newline.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce line breaks after each array element
|
||||
* @author Jan Peer Stöcklmair <https://github.com/JPeer264>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/arrow-parens.js
generated
vendored
3
node_modules/eslint/lib/rules/arrow-parens.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to require parens in arrow function arguments.
|
||||
* @author Jxck
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -30,6 +31,8 @@ function hasBlockBody(node) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/arrow-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/arrow-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to define spacing before/after arrow function's arrow.
|
||||
* @author Jxck
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/block-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/block-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview A rule to disallow or enforce spaces inside of single line blocks.
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const util = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/brace-style.js
generated
vendored
3
node_modules/eslint/lib/rules/brace-style.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag block statements that do not use the one true brace style
|
||||
* @author Ian Christian Myers
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/comma-dangle.js
generated
vendored
3
node_modules/eslint/lib/rules/comma-dangle.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to forbid or enforce dangling commas.
|
||||
* @author Ian Christian Myers
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -73,6 +74,8 @@ function normalizeOptions(optionValue, ecmaVersion) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/comma-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/comma-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Comma spacing - validates spacing before and after comma
|
||||
* @author Vignesh Anand aka vegetableman.
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/comma-style.js
generated
vendored
3
node_modules/eslint/lib/rules/comma-style.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Comma style - enforces comma styles of two types: last and first
|
||||
* @author Vignesh Anand aka vegetableman
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/computed-property-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/computed-property-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallows or enforces spaces inside computed properties.
|
||||
* @author Jamund Ferguson
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/dot-location.js
generated
vendored
3
node_modules/eslint/lib/rules/dot-location.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Validates newlines before and after dots
|
||||
* @author Greg Cochard
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/eol-last.js
generated
vendored
3
node_modules/eslint/lib/rules/eol-last.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Require or disallow newline at the end of files
|
||||
* @author Nodeca Team <https://github.com/nodeca>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -11,6 +12,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
39
node_modules/eslint/lib/rules/for-direction.js
generated
vendored
39
node_modules/eslint/lib/rules/for-direction.js
generated
vendored
|
|
@ -101,30 +101,37 @@ module.exports = {
|
|||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
return {
|
||||
ForStatement(node) {
|
||||
|
||||
if (node.test && node.test.type === "BinaryExpression" && node.test.left.type === "Identifier" && node.update) {
|
||||
const counter = node.test.left.name;
|
||||
const operator = node.test.operator;
|
||||
const update = node.update;
|
||||
if (node.test && node.test.type === "BinaryExpression" && node.update) {
|
||||
for (const counterPosition of ["left", "right"]) {
|
||||
if (node.test[counterPosition].type !== "Identifier") {
|
||||
continue;
|
||||
}
|
||||
|
||||
let wrongDirection;
|
||||
const counter = node.test[counterPosition].name;
|
||||
const operator = node.test.operator;
|
||||
const update = node.update;
|
||||
|
||||
if (operator === "<" || operator === "<=") {
|
||||
wrongDirection = -1;
|
||||
} else if (operator === ">" || operator === ">=") {
|
||||
wrongDirection = 1;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
let wrongDirection;
|
||||
|
||||
if (update.type === "UpdateExpression") {
|
||||
if (getUpdateDirection(update, counter) === wrongDirection) {
|
||||
if (operator === "<" || operator === "<=") {
|
||||
wrongDirection = counterPosition === "left" ? -1 : 1;
|
||||
} else if (operator === ">" || operator === ">=") {
|
||||
wrongDirection = counterPosition === "left" ? 1 : -1;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
|
||||
if (update.type === "UpdateExpression") {
|
||||
if (getUpdateDirection(update, counter) === wrongDirection) {
|
||||
report(node);
|
||||
}
|
||||
} else if (update.type === "AssignmentExpression" && getAssignmentDirection(update, counter) === wrongDirection) {
|
||||
report(node);
|
||||
}
|
||||
} else if (update.type === "AssignmentExpression" && getAssignmentDirection(update, counter) === wrongDirection) {
|
||||
report(node);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/func-call-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/func-call-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to control spacing within function calls
|
||||
* @author Matt DuVall <http://www.mattduvall.com>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/function-call-argument-newline.js
generated
vendored
3
node_modules/eslint/lib/rules/function-call-argument-newline.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce line breaks between arguments of a function call
|
||||
* @author Alexey Gonchar <https://github.com/finico>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/function-paren-newline.js
generated
vendored
3
node_modules/eslint/lib/rules/function-paren-newline.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview enforce consistent line breaks inside function parentheses
|
||||
* @author Teddy Katz
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/generator-star-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/generator-star-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check the spacing around the * in generator functions.
|
||||
* @author Jamund Ferguson
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -28,6 +29,8 @@ const OVERRIDE_SCHEMA = {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/implicit-arrow-linebreak.js
generated
vendored
3
node_modules/eslint/lib/rules/implicit-arrow-linebreak.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview enforce the location of arrow function bodies
|
||||
* @author Sharmila Jesupaul
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -12,6 +13,8 @@ const { isCommentToken, isNotOpeningParenToken } = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/indent.js
generated
vendored
3
node_modules/eslint/lib/rules/indent.js
generated
vendored
|
|
@ -4,6 +4,7 @@
|
|||
* @author Teddy Katz
|
||||
* @author Vitaly Puzrin
|
||||
* @author Gyandeep Singh
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -493,6 +494,8 @@ const ELEMENT_LIST_SCHEMA = {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/jsx-quotes.js
generated
vendored
3
node_modules/eslint/lib/rules/jsx-quotes.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview A rule to ensure consistent quotes used in jsx syntax.
|
||||
* @author Mathias Schreck <https://github.com/lo1tuma>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -39,6 +40,8 @@ const QUOTE_SETTINGS = {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/key-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/key-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to specify spacing of object literal keys and values
|
||||
* @author Brandon Mills
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -133,6 +134,8 @@ function initOptions(toOptions, fromOptions) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/keyword-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/keyword-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce spacing before and after keywords.
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -64,6 +65,8 @@ function isCloseParenOfTemplate(token) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/linebreak-style.js
generated
vendored
3
node_modules/eslint/lib/rules/linebreak-style.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce a single linebreak style.
|
||||
* @author Erik Mueller
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/lines-around-comment.js
generated
vendored
3
node_modules/eslint/lib/rules/lines-around-comment.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Enforces empty lines around comments.
|
||||
* @author Jamund Ferguson
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -52,6 +53,8 @@ function getCommentLineNums(comments) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/lines-between-class-members.js
generated
vendored
3
node_modules/eslint/lib/rules/lines-between-class-members.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check empty newline between class members
|
||||
* @author 薛定谔的猫<hh_2013@foxmail.com>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -32,6 +33,8 @@ const ClassMemberTypes = {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/max-len.js
generated
vendored
3
node_modules/eslint/lib/rules/max-len.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check for max length on a line.
|
||||
* @author Matt DuVall <http://www.mattduvall.com>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -66,6 +67,8 @@ const OPTIONS_OR_INTEGER_SCHEMA = {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/max-statements-per-line.js
generated
vendored
3
node_modules/eslint/lib/rules/max-statements-per-line.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Specify the maximum number of statements allowed per line.
|
||||
* @author Kenneth Williams
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/multiline-ternary.js
generated
vendored
3
node_modules/eslint/lib/rules/multiline-ternary.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Enforce newlines between operands of ternary expressions
|
||||
* @author Kai Cataldo
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/new-parens.js
generated
vendored
3
node_modules/eslint/lib/rules/new-parens.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag when using constructor without parentheses
|
||||
* @author Ilya Volodin
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -22,6 +23,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/newline-per-chained-call.js
generated
vendored
3
node_modules/eslint/lib/rules/newline-per-chained-call.js
generated
vendored
|
|
@ -2,6 +2,7 @@
|
|||
* @fileoverview Rule to ensure newline per method call when chaining calls
|
||||
* @author Rajendra Patil
|
||||
* @author Burak Yigit Kaya
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -15,6 +16,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
91
node_modules/eslint/lib/rules/no-array-constructor.js
generated
vendored
91
node_modules/eslint/lib/rules/no-array-constructor.js
generated
vendored
|
|
@ -5,6 +5,18 @@
|
|||
|
||||
"use strict";
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Requirements
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
const {
|
||||
getVariableByName,
|
||||
isClosingParenToken,
|
||||
isOpeningParenToken,
|
||||
isStartOfExpressionStatement,
|
||||
needsPrecedingSemicolon
|
||||
} = require("./utils/ast-utils");
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
//------------------------------------------------------------------------------
|
||||
|
|
@ -20,15 +32,45 @@ module.exports = {
|
|||
url: "https://eslint.org/docs/latest/rules/no-array-constructor"
|
||||
},
|
||||
|
||||
hasSuggestions: true,
|
||||
|
||||
schema: [],
|
||||
|
||||
messages: {
|
||||
preferLiteral: "The array literal notation [] is preferable."
|
||||
preferLiteral: "The array literal notation [] is preferable.",
|
||||
useLiteral: "Replace with an array literal.",
|
||||
useLiteralAfterSemicolon: "Replace with an array literal, add preceding semicolon."
|
||||
}
|
||||
},
|
||||
|
||||
create(context) {
|
||||
|
||||
const sourceCode = context.sourceCode;
|
||||
|
||||
/**
|
||||
* Gets the text between the calling parentheses of a CallExpression or NewExpression.
|
||||
* @param {ASTNode} node A CallExpression or NewExpression node.
|
||||
* @returns {string} The text between the calling parentheses, or an empty string if there are none.
|
||||
*/
|
||||
function getArgumentsText(node) {
|
||||
const lastToken = sourceCode.getLastToken(node);
|
||||
|
||||
if (!isClosingParenToken(lastToken)) {
|
||||
return "";
|
||||
}
|
||||
|
||||
let firstToken = node.callee;
|
||||
|
||||
do {
|
||||
firstToken = sourceCode.getTokenAfter(firstToken);
|
||||
if (!firstToken || firstToken === lastToken) {
|
||||
return "";
|
||||
}
|
||||
} while (!isOpeningParenToken(firstToken));
|
||||
|
||||
return sourceCode.text.slice(firstToken.range[1], lastToken.range[0]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Disallow construction of dense arrays using the Array constructor
|
||||
* @param {ASTNode} node node to evaluate
|
||||
|
|
@ -37,11 +79,48 @@ module.exports = {
|
|||
*/
|
||||
function check(node) {
|
||||
if (
|
||||
node.arguments.length !== 1 &&
|
||||
node.callee.type === "Identifier" &&
|
||||
node.callee.name === "Array"
|
||||
) {
|
||||
context.report({ node, messageId: "preferLiteral" });
|
||||
node.callee.type !== "Identifier" ||
|
||||
node.callee.name !== "Array" ||
|
||||
node.arguments.length === 1 &&
|
||||
node.arguments[0].type !== "SpreadElement") {
|
||||
return;
|
||||
}
|
||||
|
||||
const variable = getVariableByName(sourceCode.getScope(node), "Array");
|
||||
|
||||
/*
|
||||
* Check if `Array` is a predefined global variable: predefined globals have no declarations,
|
||||
* meaning that the `identifiers` list of the variable object is empty.
|
||||
*/
|
||||
if (variable && variable.identifiers.length === 0) {
|
||||
const argsText = getArgumentsText(node);
|
||||
let fixText;
|
||||
let messageId;
|
||||
|
||||
/*
|
||||
* Check if the suggested change should include a preceding semicolon or not.
|
||||
* Due to JavaScript's ASI rules, a missing semicolon may be inserted automatically
|
||||
* before an expression like `Array()` or `new Array()`, but not when the expression
|
||||
* is changed into an array literal like `[]`.
|
||||
*/
|
||||
if (isStartOfExpressionStatement(node) && needsPrecedingSemicolon(sourceCode, node)) {
|
||||
fixText = `;[${argsText}]`;
|
||||
messageId = "useLiteralAfterSemicolon";
|
||||
} else {
|
||||
fixText = `[${argsText}]`;
|
||||
messageId = "useLiteral";
|
||||
}
|
||||
|
||||
context.report({
|
||||
node,
|
||||
messageId: "preferLiteral",
|
||||
suggest: [
|
||||
{
|
||||
messageId,
|
||||
fix: fixer => fixer.replaceText(node, fixText)
|
||||
}
|
||||
]
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-confusing-arrow.js
generated
vendored
3
node_modules/eslint/lib/rules/no-confusing-arrow.js
generated
vendored
|
|
@ -2,6 +2,7 @@
|
|||
* @fileoverview A rule to warn against using arrow functions when they could be
|
||||
* confused with comparisons
|
||||
* @author Jxck <https://github.com/Jxck>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -28,6 +29,8 @@ function isConditional(node) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
76
node_modules/eslint/lib/rules/no-console.js
generated
vendored
76
node_modules/eslint/lib/rules/no-console.js
generated
vendored
|
|
@ -43,8 +43,11 @@ module.exports = {
|
|||
}
|
||||
],
|
||||
|
||||
hasSuggestions: true,
|
||||
|
||||
messages: {
|
||||
unexpected: "Unexpected console statement."
|
||||
unexpected: "Unexpected console statement.",
|
||||
removeConsole: "Remove the console.{{ propertyName }}()."
|
||||
}
|
||||
},
|
||||
|
||||
|
|
@ -94,6 +97,64 @@ module.exports = {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if removing the ExpressionStatement node will cause ASI to
|
||||
* break.
|
||||
* eg.
|
||||
* foo()
|
||||
* console.log();
|
||||
* [1, 2, 3].forEach(a => doSomething(a))
|
||||
*
|
||||
* Removing the console.log(); statement should leave two statements, but
|
||||
* here the two statements will become one because [ causes continuation after
|
||||
* foo().
|
||||
* @param {ASTNode} node The ExpressionStatement node to check.
|
||||
* @returns {boolean} `true` if ASI will break after removing the ExpressionStatement
|
||||
* node.
|
||||
*/
|
||||
function maybeAsiHazard(node) {
|
||||
const SAFE_TOKENS_BEFORE = /^[:;{]$/u; // One of :;{
|
||||
const UNSAFE_CHARS_AFTER = /^[-[(/+`]/u; // One of [(/+-`
|
||||
|
||||
const tokenBefore = sourceCode.getTokenBefore(node);
|
||||
const tokenAfter = sourceCode.getTokenAfter(node);
|
||||
|
||||
return (
|
||||
Boolean(tokenAfter) &&
|
||||
UNSAFE_CHARS_AFTER.test(tokenAfter.value) &&
|
||||
tokenAfter.value !== "++" &&
|
||||
tokenAfter.value !== "--" &&
|
||||
Boolean(tokenBefore) &&
|
||||
!SAFE_TOKENS_BEFORE.test(tokenBefore.value)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the MemberExpression node's parent.parent.parent is a
|
||||
* Program, BlockStatement, StaticBlock, or SwitchCase node. This check
|
||||
* is necessary to avoid providing a suggestion that might cause a syntax error.
|
||||
*
|
||||
* eg. if (a) console.log(b), removing console.log() here will lead to a
|
||||
* syntax error.
|
||||
* if (a) { console.log(b) }, removing console.log() here is acceptable.
|
||||
*
|
||||
* Additionally, it checks if the callee of the CallExpression node is
|
||||
* the node itself.
|
||||
*
|
||||
* eg. foo(console.log), cannot provide a suggestion here.
|
||||
* @param {ASTNode} node The MemberExpression node to check.
|
||||
* @returns {boolean} `true` if a suggestion can be provided for a node.
|
||||
*/
|
||||
function canProvideSuggestions(node) {
|
||||
return (
|
||||
node.parent.type === "CallExpression" &&
|
||||
node.parent.callee === node &&
|
||||
node.parent.parent.type === "ExpressionStatement" &&
|
||||
astUtils.STATEMENT_LIST_PARENTS.has(node.parent.parent.parent.type) &&
|
||||
!maybeAsiHazard(node.parent.parent)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports the given reference as a violation.
|
||||
* @param {eslint-scope.Reference} reference The reference to report.
|
||||
|
|
@ -102,10 +163,21 @@ module.exports = {
|
|||
function report(reference) {
|
||||
const node = reference.identifier.parent;
|
||||
|
||||
const propertyName = astUtils.getStaticPropertyName(node);
|
||||
|
||||
context.report({
|
||||
node,
|
||||
loc: node.loc,
|
||||
messageId: "unexpected"
|
||||
messageId: "unexpected",
|
||||
suggest: canProvideSuggestions(node)
|
||||
? [{
|
||||
messageId: "removeConsole",
|
||||
data: { propertyName },
|
||||
fix(fixer) {
|
||||
return fixer.remove(node.parent.parent);
|
||||
}
|
||||
}]
|
||||
: []
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-extra-parens.js
generated
vendored
3
node_modules/eslint/lib/rules/no-extra-parens.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallow parenthesising higher precedence subexpressions.
|
||||
* @author Michael Ficarra
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils.js");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-extra-semi.js
generated
vendored
3
node_modules/eslint/lib/rules/no-extra-semi.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag use of unnecessary semicolons
|
||||
* @author Nicholas C. Zakas
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -19,6 +20,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-floating-decimal.js
generated
vendored
3
node_modules/eslint/lib/rules/no-floating-decimal.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag use of a leading/trailing decimal point in a numeric literal
|
||||
* @author James Allardice
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-mixed-operators.js
generated
vendored
3
node_modules/eslint/lib/rules/no-mixed-operators.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to disallow mixed binary operators.
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -85,6 +86,8 @@ function getChildNode(node) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js
generated
vendored
3
node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallow mixed spaces and tabs for indentation
|
||||
* @author Jary Niebur
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -11,6 +12,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-multi-spaces.js
generated
vendored
3
node_modules/eslint/lib/rules/no-multi-spaces.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallow use of multiple spaces.
|
||||
* @author Nicholas C. Zakas
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-multiple-empty-lines.js
generated
vendored
3
node_modules/eslint/lib/rules/no-multiple-empty-lines.js
generated
vendored
|
|
@ -2,6 +2,7 @@
|
|||
* @fileoverview Disallows multiple blank lines.
|
||||
* implementation adapted from the no-trailing-spaces rule.
|
||||
* @author Greg Cochard
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
113
node_modules/eslint/lib/rules/no-object-constructor.js
generated
vendored
113
node_modules/eslint/lib/rules/no-object-constructor.js
generated
vendored
|
|
@ -9,67 +9,12 @@
|
|||
// Requirements
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
const { getVariableByName, isArrowToken, isClosingBraceToken, isClosingParenToken } = require("./utils/ast-utils");
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Helpers
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
const BREAK_OR_CONTINUE = new Set(["BreakStatement", "ContinueStatement"]);
|
||||
|
||||
// Declaration types that must contain a string Literal node at the end.
|
||||
const DECLARATIONS = new Set(["ExportAllDeclaration", "ExportNamedDeclaration", "ImportDeclaration"]);
|
||||
|
||||
const IDENTIFIER_OR_KEYWORD = new Set(["Identifier", "Keyword"]);
|
||||
|
||||
// Keywords that can immediately precede an ExpressionStatement node, mapped to the their node types.
|
||||
const NODE_TYPES_BY_KEYWORD = {
|
||||
__proto__: null,
|
||||
break: "BreakStatement",
|
||||
continue: "ContinueStatement",
|
||||
debugger: "DebuggerStatement",
|
||||
do: "DoWhileStatement",
|
||||
else: "IfStatement",
|
||||
return: "ReturnStatement",
|
||||
yield: "YieldExpression"
|
||||
};
|
||||
|
||||
/*
|
||||
* Before an opening parenthesis, `>` (for JSX), and postfix `++` and `--` always trigger ASI;
|
||||
* the tokens `:`, `;`, `{` and `=>` don't expect a semicolon, as that would count as an empty statement.
|
||||
*/
|
||||
const PUNCTUATORS = new Set([":", ";", ">", "{", "=>", "++", "--"]);
|
||||
|
||||
/*
|
||||
* Statements that can contain an `ExpressionStatement` after a closing parenthesis.
|
||||
* DoWhileStatement is an exception in that it always triggers ASI after the closing parenthesis.
|
||||
*/
|
||||
const STATEMENTS = new Set([
|
||||
"DoWhileStatement",
|
||||
"ForInStatement",
|
||||
"ForOfStatement",
|
||||
"ForStatement",
|
||||
"IfStatement",
|
||||
"WhileStatement",
|
||||
"WithStatement"
|
||||
]);
|
||||
|
||||
/**
|
||||
* Tests if a node appears at the beginning of an ancestor ExpressionStatement node.
|
||||
* @param {ASTNode} node The node to check.
|
||||
* @returns {boolean} Whether the node appears at the beginning of an ancestor ExpressionStatement node.
|
||||
*/
|
||||
function isStartOfExpressionStatement(node) {
|
||||
const start = node.range[0];
|
||||
let ancestor = node;
|
||||
|
||||
while ((ancestor = ancestor.parent) && ancestor.range[0] === start) {
|
||||
if (ancestor.type === "ExpressionStatement") {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
const {
|
||||
getVariableByName,
|
||||
isArrowToken,
|
||||
isStartOfExpressionStatement,
|
||||
needsPrecedingSemicolon
|
||||
} = require("./utils/ast-utils");
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
|
|
@ -120,50 +65,6 @@ module.exports = {
|
|||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether a parenthesized object literal that replaces a specified node needs to be preceded by a semicolon.
|
||||
* @param {ASTNode} node The node to be replaced. This node should be at the start of an `ExpressionStatement` or at the start of the body of an `ArrowFunctionExpression`.
|
||||
* @returns {boolean} Whether a semicolon is required before the parenthesized object literal.
|
||||
*/
|
||||
function needsSemicolon(node) {
|
||||
const prevToken = sourceCode.getTokenBefore(node);
|
||||
|
||||
if (!prevToken || prevToken.type === "Punctuator" && PUNCTUATORS.has(prevToken.value)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const prevNode = sourceCode.getNodeByRangeIndex(prevToken.range[0]);
|
||||
|
||||
if (isClosingParenToken(prevToken)) {
|
||||
return !STATEMENTS.has(prevNode.type);
|
||||
}
|
||||
|
||||
if (isClosingBraceToken(prevToken)) {
|
||||
return (
|
||||
prevNode.type === "BlockStatement" && prevNode.parent.type === "FunctionExpression" ||
|
||||
prevNode.type === "ClassBody" && prevNode.parent.type === "ClassExpression" ||
|
||||
prevNode.type === "ObjectExpression"
|
||||
);
|
||||
}
|
||||
|
||||
if (IDENTIFIER_OR_KEYWORD.has(prevToken.type)) {
|
||||
if (BREAK_OR_CONTINUE.has(prevNode.parent.type)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const keyword = prevToken.value;
|
||||
const nodeType = NODE_TYPES_BY_KEYWORD[keyword];
|
||||
|
||||
return prevNode.type !== nodeType;
|
||||
}
|
||||
|
||||
if (prevToken.type === "String") {
|
||||
return !DECLARATIONS.has(prevNode.parent.type);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports on nodes where the `Object` constructor is called without arguments.
|
||||
* @param {ASTNode} node The node to evaluate.
|
||||
|
|
@ -183,7 +84,7 @@ module.exports = {
|
|||
|
||||
if (needsParentheses(node)) {
|
||||
replacement = "({})";
|
||||
if (needsSemicolon(node)) {
|
||||
if (needsPrecedingSemicolon(sourceCode, node)) {
|
||||
fixText = ";({})";
|
||||
messageId = "useLiteralAfterSemicolon";
|
||||
} else {
|
||||
|
|
|
|||
92
node_modules/eslint/lib/rules/no-prototype-builtins.js
generated
vendored
92
node_modules/eslint/lib/rules/no-prototype-builtins.js
generated
vendored
|
|
@ -10,6 +10,37 @@
|
|||
|
||||
const astUtils = require("./utils/ast-utils");
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Helpers
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Returns true if the node or any of the objects
|
||||
* to the left of it in the member/call chain is optional.
|
||||
*
|
||||
* e.g. `a?.b`, `a?.b.c`, `a?.()`, `a()?.()`
|
||||
* @param {ASTNode} node The expression to check
|
||||
* @returns {boolean} `true` if there is a short-circuiting optional `?.`
|
||||
* in the same option chain to the left of this call or member expression,
|
||||
* or the node itself is an optional call or member `?.`.
|
||||
*/
|
||||
function isAfterOptional(node) {
|
||||
let leftNode;
|
||||
|
||||
if (node.type === "MemberExpression") {
|
||||
leftNode = node.object;
|
||||
} else if (node.type === "CallExpression") {
|
||||
leftNode = node.callee;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
if (node.optional) {
|
||||
return true;
|
||||
}
|
||||
return isAfterOptional(leftNode);
|
||||
}
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
//------------------------------------------------------------------------------
|
||||
|
|
@ -25,10 +56,13 @@ module.exports = {
|
|||
url: "https://eslint.org/docs/latest/rules/no-prototype-builtins"
|
||||
},
|
||||
|
||||
hasSuggestions: true,
|
||||
|
||||
schema: [],
|
||||
|
||||
messages: {
|
||||
prototypeBuildIn: "Do not access Object.prototype method '{{prop}}' from target object."
|
||||
prototypeBuildIn: "Do not access Object.prototype method '{{prop}}' from target object.",
|
||||
callObjectPrototype: "Call Object.prototype.{{prop}} explicitly."
|
||||
}
|
||||
},
|
||||
|
||||
|
|
@ -59,7 +93,61 @@ module.exports = {
|
|||
messageId: "prototypeBuildIn",
|
||||
loc: callee.property.loc,
|
||||
data: { prop: propName },
|
||||
node
|
||||
node,
|
||||
suggest: [
|
||||
{
|
||||
messageId: "callObjectPrototype",
|
||||
data: { prop: propName },
|
||||
fix(fixer) {
|
||||
const sourceCode = context.sourceCode;
|
||||
|
||||
/*
|
||||
* A call after an optional chain (e.g. a?.b.hasOwnProperty(c))
|
||||
* must be fixed manually because the call can be short-circuited
|
||||
*/
|
||||
if (isAfterOptional(node)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
/*
|
||||
* A call on a ChainExpression (e.g. (a?.hasOwnProperty)(c)) will trigger
|
||||
* no-unsafe-optional-chaining which should be fixed before this suggestion
|
||||
*/
|
||||
if (node.callee.type === "ChainExpression") {
|
||||
return null;
|
||||
}
|
||||
|
||||
const objectVariable = astUtils.getVariableByName(sourceCode.getScope(node), "Object");
|
||||
|
||||
/*
|
||||
* We can't use Object if the global Object was shadowed,
|
||||
* or Object does not exist in the global scope for some reason
|
||||
*/
|
||||
if (!objectVariable || objectVariable.scope.type !== "global" || objectVariable.defs.length > 0) {
|
||||
return null;
|
||||
}
|
||||
|
||||
let objectText = sourceCode.getText(callee.object);
|
||||
|
||||
if (astUtils.getPrecedence(callee.object) <= astUtils.getPrecedence({ type: "SequenceExpression" })) {
|
||||
objectText = `(${objectText})`;
|
||||
}
|
||||
|
||||
const openParenToken = sourceCode.getTokenAfter(
|
||||
node.callee,
|
||||
astUtils.isOpeningParenToken
|
||||
);
|
||||
const isEmptyParameters = node.arguments.length === 0;
|
||||
const delim = isEmptyParameters ? "" : ", ";
|
||||
const fixes = [
|
||||
fixer.replaceText(callee, `Object.prototype.${propName}.call`),
|
||||
fixer.insertTextAfter(openParenToken, objectText + delim)
|
||||
];
|
||||
|
||||
return fixes;
|
||||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-tabs.js
generated
vendored
3
node_modules/eslint/lib/rules/no-tabs.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check for tabs inside a file
|
||||
* @author Gyandeep Singh
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -19,6 +20,8 @@ const anyNonWhitespaceRegex = /\S/u;
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-trailing-spaces.js
generated
vendored
3
node_modules/eslint/lib/rules/no-trailing-spaces.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallow trailing spaces at the end of lines.
|
||||
* @author Nodeca Team <https://github.com/nodeca>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/no-whitespace-before-property.js
generated
vendored
3
node_modules/eslint/lib/rules/no-whitespace-before-property.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to disallow whitespace before properties
|
||||
* @author Kai Cataldo
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/nonblock-statement-body-position.js
generated
vendored
3
node_modules/eslint/lib/rules/nonblock-statement-body-position.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview enforce the location of single-line statements
|
||||
* @author Teddy Katz
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const POSITION_SCHEMA = { enum: ["beside", "below", "any"] };
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/object-curly-newline.js
generated
vendored
3
node_modules/eslint/lib/rules/object-curly-newline.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to require or disallow line breaks inside braces.
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -147,6 +148,8 @@ function areLineBreaksRequired(node, options, first, last) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/object-curly-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/object-curly-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallows or enforces spaces inside of object literals.
|
||||
* @author Jamund Ferguson
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/object-property-newline.js
generated
vendored
3
node_modules/eslint/lib/rules/object-property-newline.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce placing object properties on separate lines.
|
||||
* @author Vitor Balocco
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/one-var-declaration-per-line.js
generated
vendored
3
node_modules/eslint/lib/rules/one-var-declaration-per-line.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check multiple var declarations per line
|
||||
* @author Alberto Rodríguez
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -11,6 +12,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/operator-linebreak.js
generated
vendored
3
node_modules/eslint/lib/rules/operator-linebreak.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Operator linebreak - enforces operator linebreak style of two types: after and before
|
||||
* @author Benoît Zugmeyer
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/padded-blocks.js
generated
vendored
3
node_modules/eslint/lib/rules/padded-blocks.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview A rule to ensure blank lines within blocks.
|
||||
* @author Mathias Schreck <https://github.com/lo1tuma>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/padding-line-between-statements.js
generated
vendored
3
node_modules/eslint/lib/rules/padding-line-between-statements.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to require or disallow newlines between statements
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -383,6 +384,8 @@ const StatementTypes = {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/quote-props.js
generated
vendored
3
node_modules/eslint/lib/rules/quote-props.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag non-quoted property names in object literals.
|
||||
* @author Mathias Bynens <http://mathiasbynens.be/>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -19,6 +20,8 @@ const keywords = require("./utils/keywords");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/quotes.js
generated
vendored
3
node_modules/eslint/lib/rules/quotes.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview A rule to choose between single and double quote marks
|
||||
* @author Matt DuVall <http://www.mattduvall.com/>, Brandon Payton
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -77,6 +78,8 @@ const AVOID_ESCAPE = "avoid-escape";
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/rest-spread-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/rest-spread-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Enforce spacing between rest and spread operators and their expressions.
|
||||
* @author Kai Cataldo
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/semi-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/semi-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Validates spacing before and after semicolon
|
||||
* @author Mathias Schreck
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -14,6 +15,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/semi-style.js
generated
vendored
3
node_modules/eslint/lib/rules/semi-style.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce location of semicolons.
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -70,6 +71,8 @@ function isLastChild(node) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/semi.js
generated
vendored
3
node_modules/eslint/lib/rules/semi.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag missing semicolons.
|
||||
* @author Nicholas C. Zakas
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/space-before-blocks.js
generated
vendored
3
node_modules/eslint/lib/rules/space-before-blocks.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview A rule to ensure whitespace before blocks.
|
||||
* @author Mathias Schreck <https://github.com/lo1tuma>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -37,6 +38,8 @@ function isFunctionBody(node) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/space-before-function-paren.js
generated
vendored
3
node_modules/eslint/lib/rules/space-before-function-paren.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to validate spacing before function paren.
|
||||
* @author Mathias Schreck <https://github.com/lo1tuma>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/space-in-parens.js
generated
vendored
3
node_modules/eslint/lib/rules/space-in-parens.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Disallows or enforces spaces inside of parentheses.
|
||||
* @author Jonathan Rajavuori
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/space-infix-ops.js
generated
vendored
3
node_modules/eslint/lib/rules/space-infix-ops.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Require spaces around infix operators
|
||||
* @author Michael Ficarra
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -13,6 +14,8 @@ const { isEqToken } = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/space-unary-ops.js
generated
vendored
3
node_modules/eslint/lib/rules/space-unary-ops.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview This rule should require or disallow spaces before or after unary operations.
|
||||
* @author Marcin Kumorek
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/spaced-comment.js
generated
vendored
3
node_modules/eslint/lib/rules/spaced-comment.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Source code for spaced-comments rule
|
||||
* @author Gyandeep Singh
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
|
|
@ -149,6 +150,8 @@ function createNeverStylePattern(markers) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "suggestion",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/switch-colon-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/switch-colon-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce spacing around colons of switch statements.
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/template-curly-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/template-curly-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to enforce spacing around embedded expressions of template strings
|
||||
* @author Toru Nagashima
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -18,6 +19,8 @@ const astUtils = require("./utils/ast-utils");
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/template-tag-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/template-tag-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check spacing between template tags and their literals
|
||||
* @author Jonathan Wilsson
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
112
node_modules/eslint/lib/rules/utils/ast-utils.js
generated
vendored
112
node_modules/eslint/lib/rules/utils/ast-utils.js
generated
vendored
|
|
@ -1015,6 +1015,114 @@ function isDirective(node) {
|
|||
return node.type === "ExpressionStatement" && typeof node.directive === "string";
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests if a node appears at the beginning of an ancestor ExpressionStatement node.
|
||||
* @param {ASTNode} node The node to check.
|
||||
* @returns {boolean} Whether the node appears at the beginning of an ancestor ExpressionStatement node.
|
||||
*/
|
||||
function isStartOfExpressionStatement(node) {
|
||||
const start = node.range[0];
|
||||
let ancestor = node;
|
||||
|
||||
while ((ancestor = ancestor.parent) && ancestor.range[0] === start) {
|
||||
if (ancestor.type === "ExpressionStatement") {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether an opening parenthesis `(`, bracket `[` or backtick ``` ` ``` needs to be preceded by a semicolon.
|
||||
* This opening parenthesis or bracket should be at the start of an `ExpressionStatement` or at the start of the body of an `ArrowFunctionExpression`.
|
||||
* @type {(sourceCode: SourceCode, node: ASTNode) => boolean}
|
||||
* @param {SourceCode} sourceCode The source code object.
|
||||
* @param {ASTNode} node A node at the position where an opening parenthesis or bracket will be inserted.
|
||||
* @returns {boolean} Whether a semicolon is required before the opening parenthesis or braket.
|
||||
*/
|
||||
let needsPrecedingSemicolon;
|
||||
|
||||
{
|
||||
const BREAK_OR_CONTINUE = new Set(["BreakStatement", "ContinueStatement"]);
|
||||
|
||||
// Declaration types that must contain a string Literal node at the end.
|
||||
const DECLARATIONS = new Set(["ExportAllDeclaration", "ExportNamedDeclaration", "ImportDeclaration"]);
|
||||
|
||||
const IDENTIFIER_OR_KEYWORD = new Set(["Identifier", "Keyword"]);
|
||||
|
||||
// Keywords that can immediately precede an ExpressionStatement node, mapped to the their node types.
|
||||
const NODE_TYPES_BY_KEYWORD = {
|
||||
__proto__: null,
|
||||
break: "BreakStatement",
|
||||
continue: "ContinueStatement",
|
||||
debugger: "DebuggerStatement",
|
||||
do: "DoWhileStatement",
|
||||
else: "IfStatement",
|
||||
return: "ReturnStatement",
|
||||
yield: "YieldExpression"
|
||||
};
|
||||
|
||||
/*
|
||||
* Before an opening parenthesis, postfix `++` and `--` always trigger ASI;
|
||||
* the tokens `:`, `;`, `{` and `=>` don't expect a semicolon, as that would count as an empty statement.
|
||||
*/
|
||||
const PUNCTUATORS = new Set([":", ";", "{", "=>", "++", "--"]);
|
||||
|
||||
/*
|
||||
* Statements that can contain an `ExpressionStatement` after a closing parenthesis.
|
||||
* DoWhileStatement is an exception in that it always triggers ASI after the closing parenthesis.
|
||||
*/
|
||||
const STATEMENTS = new Set([
|
||||
"DoWhileStatement",
|
||||
"ForInStatement",
|
||||
"ForOfStatement",
|
||||
"ForStatement",
|
||||
"IfStatement",
|
||||
"WhileStatement",
|
||||
"WithStatement"
|
||||
]);
|
||||
|
||||
needsPrecedingSemicolon =
|
||||
function(sourceCode, node) {
|
||||
const prevToken = sourceCode.getTokenBefore(node);
|
||||
|
||||
if (!prevToken || prevToken.type === "Punctuator" && PUNCTUATORS.has(prevToken.value)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const prevNode = sourceCode.getNodeByRangeIndex(prevToken.range[0]);
|
||||
|
||||
if (isClosingParenToken(prevToken)) {
|
||||
return !STATEMENTS.has(prevNode.type);
|
||||
}
|
||||
|
||||
if (isClosingBraceToken(prevToken)) {
|
||||
return (
|
||||
prevNode.type === "BlockStatement" && prevNode.parent.type === "FunctionExpression" ||
|
||||
prevNode.type === "ClassBody" && prevNode.parent.type === "ClassExpression" ||
|
||||
prevNode.type === "ObjectExpression"
|
||||
);
|
||||
}
|
||||
|
||||
if (IDENTIFIER_OR_KEYWORD.has(prevToken.type)) {
|
||||
if (BREAK_OR_CONTINUE.has(prevNode.parent.type)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const keyword = prevToken.value;
|
||||
const nodeType = NODE_TYPES_BY_KEYWORD[keyword];
|
||||
|
||||
return prevNode.type !== nodeType;
|
||||
}
|
||||
|
||||
if (prevToken.type === "String") {
|
||||
return !DECLARATIONS.has(prevNode.parent.type);
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Public Interface
|
||||
//------------------------------------------------------------------------------
|
||||
|
|
@ -2168,5 +2276,7 @@ module.exports = {
|
|||
getModuleExportName,
|
||||
isConstant,
|
||||
isTopLevelExpressionStatement,
|
||||
isDirective
|
||||
isDirective,
|
||||
isStartOfExpressionStatement,
|
||||
needsPrecedingSemicolon
|
||||
};
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/wrap-iife.js
generated
vendored
3
node_modules/eslint/lib/rules/wrap-iife.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag when IIFE is not wrapped in parens
|
||||
* @author Ilya Volodin
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -40,6 +41,8 @@ function isCalleeOfNewExpression(node) {
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/wrap-regex.js
generated
vendored
3
node_modules/eslint/lib/rules/wrap-regex.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to flag when regex literals are not wrapped in parens
|
||||
* @author Matt DuVall <http://www.mattduvall.com>
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
3
node_modules/eslint/lib/rules/yield-star-spacing.js
generated
vendored
3
node_modules/eslint/lib/rules/yield-star-spacing.js
generated
vendored
|
|
@ -1,6 +1,7 @@
|
|||
/**
|
||||
* @fileoverview Rule to check the spacing around the * in yield* expressions.
|
||||
* @author Bryan Smith
|
||||
* @deprecated in ESLint v8.53.0
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
|
@ -12,6 +13,8 @@
|
|||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue